From 1f9d3b8b9ce7d5e05f7af88c7ab0fd094609d9e5 Mon Sep 17 00:00:00 2001 From: Bergmann89 Date: Sun, 21 Dec 2014 19:58:52 +0100 Subject: [PATCH] * added documentation (in-code and pasdoc generated) * added some small examples --- doc/AllClasses.html | 107 + doc/AllConstants.html | 27 + doc/AllFunctions.html | 132 + doc/AllIdentifiers.html | 267 + doc/AllTypes.html | 67 + doc/AllUnits.html | 31 + doc/AllVariables.html | 17 + doc/ClassHierarchy.html | 35 + doc/PasDocSettings.pds | 71 + doc/automated.gif | Bin 0 -> 141 bytes doc/glBitmap.EglBitmap.html | 29 + doc/glBitmap.EglBitmapNonPowerOfTwo.html | 30 + doc/glBitmap.EglBitmapNotSupported.html | 29 + doc/glBitmap.EglBitmapSizeToLarge.html | 30 + doc/glBitmap.EglBitmapUnsupportedFormat.html | 60 + doc/glBitmap.TglBitmap.html | 2061 ++ doc/glBitmap.TglBitmap1D.html | 146 + doc/glBitmap.TglBitmap2D.html | 279 + doc/glBitmap.TglBitmapCubeMap.html | 133 + doc/glBitmap.TglBitmapFormatDescriptor.html | 743 + doc/glBitmap.TglBitmapFunctionRec.html | 105 + doc/glBitmap.TglBitmapNormalMap.html | 73 + doc/glBitmap.TglBitmapPixelData.html | 69 + doc/glBitmap.TglBitmapRec4ub.html | 83 + doc/glBitmap.TglBitmapRec4ui.html | 83 + doc/glBitmap.TglBitmapRec4ul.html | 83 + doc/glBitmap.TglBitmapSize.html | 61 + doc/glBitmap.html | 602 + doc/index.html | 31 + doc/legend.html | 53 + doc/pasdoc.css | 171 + doc/private.gif | Bin 0 -> 141 bytes doc/protected.gif | Bin 0 -> 141 bytes doc/public.gif | Bin 0 -> 141 bytes doc/published.gif | Bin 0 -> 141 bytes examples/GrabScreen/GrabScreen.lpi | 82 + examples/GrabScreen/GrabScreen.lpr | 58 + examples/GrabScreen/GrabScreen.lps | 77 + examples/Helper.pas | 91 + examples/SimpleLoadFromFile/SimpleLoadFromFile.lpi | 81 + examples/SimpleLoadFromFile/SimpleLoadFromFile.lpr | 56 + examples/SimpleLoadFromFile/SimpleLoadFromFile.lps | 34 + .../TextureFromFunction/TextureFromFunction.lpi | 82 + .../TextureFromFunction/TextureFromFunction.lpr | 95 + .../TextureFromFunction/TextureFromFunction.lps | 86 + examples/dglOpenGL.pas | 20081 +++++++++++++++++++ examples/textures/BMP_24_RGB8.bmp | Bin 0 -> 3145784 bytes glBitmap.pas | 1437 +- readme.txt | 229 + 49 files changed, 27616 insertions(+), 581 deletions(-) create mode 100644 doc/AllClasses.html create mode 100644 doc/AllConstants.html create mode 100644 doc/AllFunctions.html create mode 100644 doc/AllIdentifiers.html create mode 100644 doc/AllTypes.html create mode 100644 doc/AllUnits.html create mode 100644 doc/AllVariables.html create mode 100644 doc/ClassHierarchy.html create mode 100644 doc/PasDocSettings.pds create mode 100644 doc/automated.gif create mode 100644 doc/glBitmap.EglBitmap.html create mode 100644 doc/glBitmap.EglBitmapNonPowerOfTwo.html create mode 100644 doc/glBitmap.EglBitmapNotSupported.html create mode 100644 doc/glBitmap.EglBitmapSizeToLarge.html create mode 100644 doc/glBitmap.EglBitmapUnsupportedFormat.html create mode 100644 doc/glBitmap.TglBitmap.html create mode 100644 doc/glBitmap.TglBitmap1D.html create mode 100644 doc/glBitmap.TglBitmap2D.html create mode 100644 doc/glBitmap.TglBitmapCubeMap.html create mode 100644 doc/glBitmap.TglBitmapFormatDescriptor.html create mode 100644 doc/glBitmap.TglBitmapFunctionRec.html create mode 100644 doc/glBitmap.TglBitmapNormalMap.html create mode 100644 doc/glBitmap.TglBitmapPixelData.html create mode 100644 doc/glBitmap.TglBitmapRec4ub.html create mode 100644 doc/glBitmap.TglBitmapRec4ui.html create mode 100644 doc/glBitmap.TglBitmapRec4ul.html create mode 100644 doc/glBitmap.TglBitmapSize.html create mode 100644 doc/glBitmap.html create mode 100644 doc/index.html create mode 100644 doc/legend.html create mode 100644 doc/pasdoc.css create mode 100644 doc/private.gif create mode 100644 doc/protected.gif create mode 100644 doc/public.gif create mode 100644 doc/published.gif create mode 100644 examples/GrabScreen/GrabScreen.lpi create mode 100644 examples/GrabScreen/GrabScreen.lpr create mode 100644 examples/GrabScreen/GrabScreen.lps create mode 100644 examples/Helper.pas create mode 100644 examples/SimpleLoadFromFile/SimpleLoadFromFile.lpi create mode 100644 examples/SimpleLoadFromFile/SimpleLoadFromFile.lpr create mode 100644 examples/SimpleLoadFromFile/SimpleLoadFromFile.lps create mode 100644 examples/TextureFromFunction/TextureFromFunction.lpi create mode 100644 examples/TextureFromFunction/TextureFromFunction.lpr create mode 100644 examples/TextureFromFunction/TextureFromFunction.lps create mode 100644 examples/dglOpenGL.pas create mode 100644 examples/textures/BMP_24_RGB8.bmp create mode 100644 readme.txt diff --git a/doc/AllClasses.html b/doc/AllClasses.html new file mode 100644 index 0000000..15013b0 --- /dev/null +++ b/doc/AllClasses.html @@ -0,0 +1,107 @@ + + + +All Classes, Interfaces, Objects and Records + + + + + +
+

All Classes, Interfaces, Objects and Records

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameUnitDescription
EglBitmapglBitmap

glBitmap exception

EglBitmapNonPowerOfTwoglBitmap

exception for non power of two textures

EglBitmapNotSupportedglBitmap

exception for not supported functions

EglBitmapSizeToLargeglBitmap

exception for to large textures

EglBitmapUnsupportedFormatglBitmap

exception for unsupporetd formats

TglBitmapglBitmap

base class for all glBitmap classes. used to manage OpenGL texture objects and to load, save and manipulate texture data

TglBitmap1DglBitmap

wrapper class for 1-dimensional textures (OpenGL target = GL_TEXTURE_1D

TglBitmap2DglBitmap

wrapper class for 2-dimensional textures (OpenGL target = GL_TEXTURE_2D)

TglBitmapCubeMapglBitmap

wrapper class for cube maps (OpenGL target = GL_TEXTURE_CUBE_MAP)

TglBitmapFormatDescriptorglBitmap

describes the properties of a given texture data format

TglBitmapFunctionRecglBitmap

structure to store data for converting in

TglBitmapNormalMapglBitmap

wrapper class for cube normal maps

TglBitmapPixelDataglBitmap

structure to store pixel data in

TglBitmapRec4ubglBitmap

record that stores 4 unsigned byte values

TglBitmapRec4uiglBitmap

record that stores 4 unsigned integer values

TglBitmapRec4ulglBitmap

record that stores 4 unsigned long integer values

TglBitmapSizeglBitmap

 

+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/AllConstants.html b/doc/AllConstants.html new file mode 100644 index 0000000..c24a437 --- /dev/null +++ b/doc/AllConstants.html @@ -0,0 +1,27 @@ + + + +All Constants + + + + + +
+

All Constants

+ + + + + + + + + + + +
NameUnitDescription
NULL_SIZEglBitmap

 

+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/AllFunctions.html b/doc/AllFunctions.html new file mode 100644 index 0000000..a2448be --- /dev/null +++ b/doc/AllFunctions.html @@ -0,0 +1,132 @@ + + + +All Functions and Procedures + + + + + +
+

All Functions and Procedures

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameUnitDescription
glBitmapCreateTestTextureglBitmap

 

glBitmapGetDefaultDeleteTextureOnFreeglBitmap

 

glBitmapGetDefaultFilterglBitmap

 

glBitmapGetDefaultFormatglBitmap

 

glBitmapGetDefaultFreeDataAfterGenTextureglBitmap

 

glBitmapGetDefaultMipmapglBitmap

 

glBitmapGetDefaultSwizzleglBitmap

 

glBitmapGetDefaultTextureWrapglBitmap

 

glBitmapPositionglBitmap

 

glBitmapRec4ubglBitmap

 

glBitmapRec4ubCompareglBitmap

 

glBitmapRec4uiglBitmap

 

glBitmapRec4uiCompareglBitmap

 

glBitmapRec4ulglBitmap

 

glBitmapSetDefaultDeleteTextureOnFreeglBitmap

 

glBitmapSetDefaultFilterglBitmap

 

glBitmapSetDefaultFormatglBitmap

 

glBitmapSetDefaultFreeDataAfterGenTextureglBitmap

 

glBitmapSetDefaultMipmapglBitmap

 

glBitmapSetDefaultSwizzleglBitmap

 

glBitmapSetDefaultWrapglBitmap

 

glBitmapSizeglBitmap

 

+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/AllIdentifiers.html b/doc/AllIdentifiers.html new file mode 100644 index 0000000..a60ffbe --- /dev/null +++ b/doc/AllIdentifiers.html @@ -0,0 +1,267 @@ + + + +All Identifiers + + + + + +
+

All Identifiers

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameUnitDescription
EglBitmapglBitmap

glBitmap exception

EglBitmapNonPowerOfTwoglBitmap

exception for non power of two textures

EglBitmapNotSupportedglBitmap

exception for not supported functions

EglBitmapSizeToLargeglBitmap

exception for to large textures

EglBitmapUnsupportedFormatglBitmap

exception for unsupporetd formats

glBitmapCreateTestTextureglBitmap

 

glBitmapGetDefaultDeleteTextureOnFreeglBitmap

 

glBitmapGetDefaultFilterglBitmap

 

glBitmapGetDefaultFormatglBitmap

 

glBitmapGetDefaultFreeDataAfterGenTextureglBitmap

 

glBitmapGetDefaultMipmapglBitmap

 

glBitmapGetDefaultSwizzleglBitmap

 

glBitmapGetDefaultTextureWrapglBitmap

 

glBitmapPositionglBitmap

 

glBitmapRec4ubglBitmap

 

glBitmapRec4ubCompareglBitmap

 

glBitmapRec4uiglBitmap

 

glBitmapRec4uiCompareglBitmap

 

glBitmapRec4ulglBitmap

 

glBitmapSetDefaultDeleteTextureOnFreeglBitmap

 

glBitmapSetDefaultFilterglBitmap

 

glBitmapSetDefaultFormatglBitmap

 

glBitmapSetDefaultFreeDataAfterGenTextureglBitmap

 

glBitmapSetDefaultMipmapglBitmap

 

glBitmapSetDefaultSwizzleglBitmap

 

glBitmapSetDefaultWrapglBitmap

 

glBitmapSizeglBitmap

 

NULL_SIZEglBitmap

 

PglBitmapPixelDataglBitmap

 

TglBitmapglBitmap

base class for all glBitmap classes. used to manage OpenGL texture objects and to load, save and manipulate texture data

TglBitmap1DglBitmap

wrapper class for 1-dimensional textures (OpenGL target = GL_TEXTURE_1D

TglBitmap2DglBitmap

wrapper class for 2-dimensional textures (OpenGL target = GL_TEXTURE_2D)

TglBitmapCubeMapglBitmap

wrapper class for cube maps (OpenGL target = GL_TEXTURE_CUBE_MAP)

TglBitmapFileTypeglBitmap

Portable Network Graphic file (PNG)

TglBitmapFileTypesglBitmap

 

TglBitmapFormatglBitmap

type that describes the format of the data stored in a texture. the name of formats is composed of the following constituents: - multiple channels: - channel (e.g. R, G, B, A or Alpha, Luminance or X (reserved)) - width of the chanel in bit (4, 8, 16, ...) - data type (e.g. ub, us, ui) - number of elements of data types

TglBitmapFormatDescriptorglBitmap

describes the properties of a given texture data format

TglBitmapFunctionglBitmap

callback to use for converting texture data

TglBitmapFunctionRecglBitmap

structure to store data for converting in

TglBitmapMipMapglBitmap

possible mipmap types

TglBitmapNormalMapglBitmap

wrapper class for cube normal maps

TglBitmapNormalMapFuncglBitmap

possible normal map functions

TglBitmapPixelDataglBitmap

structure to store pixel data in

TglBitmapPixelPositionglBitmap

 

TglBitmapRec4ubglBitmap

record that stores 4 unsigned byte values

TglBitmapRec4uiglBitmap

record that stores 4 unsigned integer values

TglBitmapRec4ulglBitmap

record that stores 4 unsigned long integer values

TglBitmapSizeglBitmap

 

TglBitmapSizeFieldsglBitmap

 

+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/AllTypes.html b/doc/AllTypes.html new file mode 100644 index 0000000..1bd8543 --- /dev/null +++ b/doc/AllTypes.html @@ -0,0 +1,67 @@ + + + +All Types + + + + + +
+

All Types

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameUnitDescription
PglBitmapPixelDataglBitmap

 

TglBitmapFileTypeglBitmap

Portable Network Graphic file (PNG)

TglBitmapFileTypesglBitmap

 

TglBitmapFormatglBitmap

type that describes the format of the data stored in a texture. the name of formats is composed of the following constituents: - multiple channels: - channel (e.g. R, G, B, A or Alpha, Luminance or X (reserved)) - width of the chanel in bit (4, 8, 16, ...) - data type (e.g. ub, us, ui) - number of elements of data types

TglBitmapFunctionglBitmap

callback to use for converting texture data

TglBitmapMipMapglBitmap

possible mipmap types

TglBitmapNormalMapFuncglBitmap

possible normal map functions

TglBitmapPixelPositionglBitmap

 

TglBitmapSizeFieldsglBitmap

 

+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/AllUnits.html b/doc/AllUnits.html new file mode 100644 index 0000000..d165995 --- /dev/null +++ b/doc/AllUnits.html @@ -0,0 +1,31 @@ + + + +All Units + + + + + +
+

All Units

+ + + + + + + + + +
NameDescription
glBitmap

glBitmap by Steffen Xonna aka Lossy eX (2003-2008) http://www.opengl24.de/index.php?cat=header&file=glbitmap + +

modified by Delphi OpenGL Community (http://delphigl.com/) (2013) + +

The contents of this file are used with permission, subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/MPL-1.1.html + +

The glBitmap is a Delphi/FPC unit that contains several wrapper classes to manage OpenGL texture objects. Below you can find a list of the main functionality of this classes: - load texture data from file (e.g. BMP, TGA, DDS, PNG, JPEG, ...) - load texture data from several other image objects (e.g. TBitmap, TLazIntfImage, SDL Surface) - save texture data to file (e.g. BMP, TGA, DDS, PNG, JPEG, ...) - save texture data to several other image objects (e.g. TBitmap, TLazIntfImage, SDL Surface) - support for many texture formats (e.g. RGB8, BGR8, RGBA8, BGRA8, ...) - manage texture properties (e.g. Filter, Clamp, Mipmap, ...) - upload texture data to video card - download texture data from video card - manipulate texture data (e.g. add alpha, remove alpha, convert to other format, switch RGB, ...)

+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/AllVariables.html b/doc/AllVariables.html new file mode 100644 index 0000000..e8f9961 --- /dev/null +++ b/doc/AllVariables.html @@ -0,0 +1,17 @@ + + + +All Variables + + + + + +
+

All Variables

+

+The units do not contain any variables.

+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/ClassHierarchy.html b/doc/ClassHierarchy.html new file mode 100644 index 0000000..68a0311 --- /dev/null +++ b/doc/ClassHierarchy.html @@ -0,0 +1,35 @@ + + + +Class Hierarchy + + + + + +
+

Class Hierarchy

+ +
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/PasDocSettings.pds b/doc/PasDocSettings.pds new file mode 100644 index 0000000..6d28be1 --- /dev/null +++ b/doc/PasDocSettings.pds @@ -0,0 +1,71 @@ +[Main] +StoreRelativePaths=1 +Language=en +OutputDir=..\doc +GenerateFormat=0 +ProjectName= +Verbosity=2 +ClassMembers_0=1 +ClassMembers_1=1 +ClassMembers_2=1 +ClassMembers_3=1 +ClassMembers_4=1 +ClassMembers_5=1 +ClassMembers_6=1 +ClassMembers_7=1 +ImplicitVisibility=0 +Sorting_0=0 +Sorting_1=0 +Sorting_2=0 +Sorting_3=0 +Sorting_4=0 +Sorting_5=0 +Sorting_6=0 +Sorting_7=0 +Sorting_8=0 +Sorting_9=0 +CssFileName= +IntroductionFileName= +ConclusionFileName= +WriteUsesList=0 +AutoAbstract=0 +AutoLink=0 +HandleMacros=1 +UseTipueSearch=0 +LineBreakQuality=0 +SpecialMarkerTreatment=1 +Title= +VizGraphClasses=0 +VizGraphUses=0 +CheckSpelling=0 +LatexGraphicsPackage=0 + +[Defines] +Count=4 +Item_0=FPC +Item_1=MSWINDOWS +Item_2=WIN32 +Item_3=CPU386 + +[Header] +Count=0 + +[Footer] +Count=0 + +[IncludeDirectories] +Count=1 +Item_0=..\..\glBitmap + +[Files] +Count=1 +Item_0=..\glBitmap.pas + +[HyphenatedWords] +Count=0 + +[SpecialMarkers] +Count=0 + +[IgnoreWords] +Count=0 diff --git a/doc/automated.gif b/doc/automated.gif new file mode 100644 index 0000000000000000000000000000000000000000..7c271d8f5afab8ace82db792952eeee12c6254de GIT binary patch literal 141 zcmZ?wbhEHbRgnXSdyBeP@Y+mp%9Xh zs^ISF8^E9gk_BmGU~*;Q5KwSvU{Lj%q7kTYq=i%1jb(*F;-MBMMKzxp21*XCoWg1% g9ELyphyo#z#^AUAyy`^b`b_^0C_wkqW}N^ literal 0 HcmV?d00001 diff --git a/doc/glBitmap.EglBitmap.html b/doc/glBitmap.EglBitmap.html new file mode 100644 index 0000000..15d12eb --- /dev/null +++ b/doc/glBitmap.EglBitmap.html @@ -0,0 +1,29 @@ + + + +glBitmap: Class EglBitmap + + + + + +
+

Class EglBitmap

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type EglBitmap = class(Exception)

+

Description

+

+glBitmap exception

+

Hierarchy

+
  • Exception
  • +
  • EglBitmap

Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.EglBitmapNonPowerOfTwo.html b/doc/glBitmap.EglBitmapNonPowerOfTwo.html new file mode 100644 index 0000000..339a4bb --- /dev/null +++ b/doc/glBitmap.EglBitmapNonPowerOfTwo.html @@ -0,0 +1,30 @@ + + + +glBitmap: Class EglBitmapNonPowerOfTwo + + + + + +
+

Class EglBitmapNonPowerOfTwo

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type EglBitmapNonPowerOfTwo = class(EglBitmap)

+

Description

+

+exception for non power of two textures

+

Hierarchy

+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.EglBitmapNotSupported.html b/doc/glBitmap.EglBitmapNotSupported.html new file mode 100644 index 0000000..fc8e97c --- /dev/null +++ b/doc/glBitmap.EglBitmapNotSupported.html @@ -0,0 +1,29 @@ + + + +glBitmap: Class EglBitmapNotSupported + + + + + +
+

Class EglBitmapNotSupported

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type EglBitmapNotSupported = class(Exception)

+

Description

+

+exception for not supported functions

+

Hierarchy

+
  • Exception
  • +
  • EglBitmapNotSupported

Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.EglBitmapSizeToLarge.html b/doc/glBitmap.EglBitmapSizeToLarge.html new file mode 100644 index 0000000..f3bd141 --- /dev/null +++ b/doc/glBitmap.EglBitmapSizeToLarge.html @@ -0,0 +1,30 @@ + + + +glBitmap: Class EglBitmapSizeToLarge + + + + + +
+

Class EglBitmapSizeToLarge

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type EglBitmapSizeToLarge = class(EglBitmap)

+

Description

+

+exception for to large textures

+

Hierarchy

+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.EglBitmapUnsupportedFormat.html b/doc/glBitmap.EglBitmapUnsupportedFormat.html new file mode 100644 index 0000000..fe2bf30 --- /dev/null +++ b/doc/glBitmap.EglBitmapUnsupportedFormat.html @@ -0,0 +1,60 @@ + + + +glBitmap: Class EglBitmapUnsupportedFormat + + + + + +
+

Class EglBitmapUnsupportedFormat

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type EglBitmapUnsupportedFormat = class(EglBitmap)

+

Description

+

+exception for unsupporetd formats

+

Hierarchy

+
  • Exception
  • +
  • EglBitmap
  • +
  • EglBitmapUnsupportedFormat

Overview

+

Methods

+ + + + + + + + + +
Publicconstructor Create(const aFormat: TglBitmapFormat); overload;
Publicconstructor Create(const aMsg: String; const aFormat: TglBitmapFormat); overload;
+

Description

+

Methods

+ + + + + + +
Publicconstructor Create(const aFormat: TglBitmapFormat); overload;
+ + + + + + +
Publicconstructor Create(const aMsg: String; const aFormat: TglBitmapFormat); overload;
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmap.html b/doc/glBitmap.TglBitmap.html new file mode 100644 index 0000000..7f53bf5 --- /dev/null +++ b/doc/glBitmap.TglBitmap.html @@ -0,0 +1,2061 @@ + + + +glBitmap: Class TglBitmap + + + + + +
+

Class TglBitmap

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmap = class(TObject)

+

Description

+

+base class for all glBitmap classes. used to manage OpenGL texture objects and to load, save and manipulate texture data

+

Hierarchy

+
  • TObject
  • +
  • TglBitmap

Overview

+

Fields

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ProtectedfID: GLuint;
ProtectedfTarget: GLuint;
ProtectedfAnisotropic: Integer;
ProtectedfDeleteTextureOnFree: Boolean;
ProtectedfFreeDataOnDestroy: Boolean;
ProtectedfFreeDataAfterGenTexture: Boolean;
ProtectedfData: PByte;
ProtectedfBorderColor: array[0..3] of Single;
ProtectedfDimension: TglBitmapSize;
ProtectedfMipMap: TglBitmapMipMap;
ProtectedfFormat: TglBitmapFormat;
ProtectedfPixelSize: Integer;
ProtectedfRowSize: Integer;
ProtectedfFilterMin: GLenum;
ProtectedfFilterMag: GLenum;
ProtectedfWrapS: GLenum;
ProtectedfWrapT: GLenum;
ProtectedfWrapR: GLenum;
ProtectedfSwizzle: array[0..3] of GLenum;
ProtectedfFilename: String;
ProtectedfCustomName: String;
ProtectedfCustomNameW: WideString;
ProtectedfCustomData: Pointer;
+

Methods

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Privatefunction GetFormatDesc: TglBitmapFormatDescriptor;
Protectedfunction GetWidth: Integer; virtual;
Protectedfunction GetHeight: Integer; virtual;
Protectedfunction GetFileWidth: Integer; virtual;
Protectedfunction GetFileHeight: Integer; virtual;
Protectedprocedure SetCustomData(const aValue: Pointer);
Protectedprocedure SetCustomName(const aValue: String);
Protectedprocedure SetCustomNameW(const aValue: WideString);
Protectedprocedure SetFreeDataOnDestroy(const aValue: Boolean);
Protectedprocedure SetDeleteTextureOnFree(const aValue: Boolean);
Protectedprocedure SetFormat(const aValue: TglBitmapFormat);
Protectedprocedure SetFreeDataAfterGenTexture(const aValue: Boolean);
Protectedprocedure SetID(const aValue: Cardinal);
Protectedprocedure SetMipMap(const aValue: TglBitmapMipMap);
Protectedprocedure SetTarget(const aValue: Cardinal);
Protectedprocedure SetAnisotropic(const aValue: Integer);
Protectedprocedure CreateID;
Protectedprocedure SetupParameters();
Protectedprocedure SetDataPointer(var aData: PByte; const aFormat: TglBitmapFormat; const aWidth: Integer = -1; const aHeight: Integer = -1); virtual;
Protectedprocedure GenTexture(const aTestTextureSize: Boolean = true); virtual; abstract;
Protectedfunction FlipHorz: Boolean; virtual;
Protectedfunction FlipVert: Boolean; virtual;
Publicprocedure AfterConstruction; override;
Publicprocedure BeforeDestruction; override;
Publicprocedure PrepareResType(var aResource: String; var aResType: PChar);
Publicprocedure LoadFromFile(const aFilename: String);
Publicprocedure LoadFromStream(const aStream: TStream); virtual;
Publicprocedure LoadFromFunc(const aSize: TglBitmapSize; const aFunc: TglBitmapFunction; const aFormat: TglBitmapFormat; const aArgs: Pointer = nil);
Publicprocedure LoadFromResource(const aInstance: Cardinal; aResource: String; aResType: PChar = nil);
Publicprocedure LoadFromResourceID(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar);
Publicprocedure SaveToFile(const aFilename: String; const aFileType: TglBitmapFileType);
Publicprocedure SaveToStream(const aStream: TStream; const aFileType: TglBitmapFileType); virtual;
Publicfunction Convert(const aFunc: TglBitmapFunction; const aCreateTemp: Boolean; const aArgs: Pointer = nil): Boolean; overload;
Publicfunction Convert(const aSource: TglBitmap; const aFunc: TglBitmapFunction; aCreateTemp: Boolean; const aFormat: TglBitmapFormat; const aArgs: Pointer = nil): Boolean; overload;
Publicfunction ConvertTo(const aFormat: TglBitmapFormat): Boolean; virtual;
Publicfunction AddAlphaFromResource(const aInstance: Cardinal; aResource: String; aResType: PChar = nil; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean;
Publicfunction AddAlphaFromResourceID(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean;
Publicfunction AddAlphaFromFunc(const aFunc: TglBitmapFunction; const aArgs: Pointer = nil): Boolean; virtual;
Publicfunction AddAlphaFromFile(const aFileName: String; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean;
Publicfunction AddAlphaFromStream(const aStream: TStream; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean;
Publicfunction AddAlphaFromGlBitmap(const aBitmap: TglBitmap; aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean;
Publicfunction AddAlphaFromColorKey(const aRed, aGreen, aBlue: Byte; const aDeviation: Byte = 0): Boolean;
Publicfunction AddAlphaFromColorKeyRange(const aRed, aGreen, aBlue: Cardinal; const aDeviation: Cardinal = 0): Boolean;
Publicfunction AddAlphaFromColorKeyFloat(const aRed, aGreen, aBlue: Single; const aDeviation: Single = 0): Boolean;
Publicfunction AddAlphaFromValue(const aAlpha: Byte): Boolean;
Publicfunction AddAlphaFromValueRange(const aAlpha: Cardinal): Boolean;
Publicfunction AddAlphaFromValueFloat(const aAlpha: Single): Boolean;
Publicfunction RemoveAlpha: Boolean; virtual;
Publicfunction Clone: TglBitmap;
Publicprocedure Invert(const aUseRGB: Boolean = true; const aUseAlpha: Boolean = false);
Publicprocedure FreeData;
Publicprocedure FillWithColor(const aRed, aGreen, aBlue: Byte; const aAlpha: Byte = 255);
Publicprocedure FillWithColorRange(const aRed, aGreen, aBlue: Cardinal; const aAlpha: Cardinal = $FFFFFFFF);
Publicprocedure FillWithColorFloat(const aRed, aGreen, aBlue: Single; const aAlpha: Single = 1.0);
Publicprocedure SetFilter(const aMin, aMag: GLenum);
Publicprocedure SetWrap( const S: GLenum = GL_CLAMP_TO_EDGE; const T: GLenum = GL_CLAMP_TO_EDGE; const R: GLenum = GL_CLAMP_TO_EDGE);
Publicprocedure SetSwizzle(const r, g, b, a: GLenum);
Publicprocedure Bind(const aEnableTextureUnit: Boolean = true); virtual;
Publicprocedure Unbind(const aDisableTextureUnit: Boolean = true); virtual;
Publicconstructor Create; overload;
Publicconstructor Create(const aFileName: String); overload;
Publicconstructor Create(const aStream: TStream); overload;
Publicconstructor Create(const aSize: TglBitmapSize; const aFormat: TglBitmapFormat; aData: PByte = nil); overload;
Publicconstructor Create(const aSize: TglBitmapSize; const aFormat: TglBitmapFormat; const aFunc: TglBitmapFunction; const aArgs: Pointer = nil); overload;
Publicconstructor Create(const aInstance: Cardinal; const aResource: String; const aResType: PChar = nil); overload;
Publicconstructor Create(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar); overload;
Privatefunction LoadRAW(const aStream: TStream): Boolean;
Privateprocedure SaveRAW(const aStream: TStream);
Privatefunction LoadBMP(const aStream: TStream): Boolean;
Privateprocedure SaveBMP(const aStream: TStream);
Privatefunction LoadTGA(const aStream: TStream): Boolean;
Privateprocedure SaveTGA(const aStream: TStream);
Privatefunction LoadDDS(const aStream: TStream): Boolean;
Privateprocedure SaveDDS(const aStream: TStream);
+

Properties

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Protectedproperty Width: Integer read GetWidth;
Protectedproperty Height: Integer read GetHeight;
Protectedproperty FileWidth: Integer read GetFileWidth;
Protectedproperty FileHeight: Integer read GetFileHeight;
Publicproperty ID: Cardinal read fID write SetID;
Publicproperty Target: Cardinal read fTarget write SetTarget;
Publicproperty Format: TglBitmapFormat read fFormat write SetFormat;
Publicproperty MipMap: TglBitmapMipMap read fMipMap write SetMipMap;
Publicproperty Anisotropic: Integer read fAnisotropic write SetAnisotropic;
Publicproperty FormatDesc: TglBitmapFormatDescriptor read GetFormatDesc;
Publicproperty Filename: String read fFilename;
Publicproperty CustomName: String read fCustomName write SetCustomName;
Publicproperty CustomNameW: WideString read fCustomNameW write SetCustomNameW;
Publicproperty CustomData: Pointer read fCustomData write SetCustomData;
Publicproperty DeleteTextureOnFree: Boolean read fDeleteTextureOnFree write SetDeleteTextureOnFree;
Publicproperty FreeDataOnDestroy: Boolean read fFreeDataOnDestroy write SetFreeDataOnDestroy;
Publicproperty FreeDataAfterGenTexture: Boolean read fFreeDataAfterGenTexture write SetFreeDataAfterGenTexture;
Publicproperty Dimension: TglBitmapSize read fDimension;
Publicproperty Data: PByte read fData;
+

Description

+

Fields

+ + + + + + +
ProtectedfID: GLuint;
+

+name of the OpenGL texture object

+
+ + + + + + +
ProtectedfTarget: GLuint;
+

+texture target (e.g. GL_TEXTURE_2D)

+
+ + + + + + +
ProtectedfAnisotropic: Integer;
+

+anisotropic level

+
+ + + + + + +
ProtectedfDeleteTextureOnFree: Boolean;
+

+delete OpenGL texture object when this object is destroyed

+
+ + + + + + +
ProtectedfFreeDataOnDestroy: Boolean;
+

+free stored data when this object is destroyed

+
+ + + + + + +
ProtectedfFreeDataAfterGenTexture: Boolean;
+

+free stored data after data was uploaded to video card

+
+ + + + + + +
ProtectedfData: PByte;
+

+data of this texture

+
+ + + + + + +
ProtectedfBorderColor: array[0..3] of Single;
+

+color of the texture border

+
+ + + + + + +
ProtectedfDimension: TglBitmapSize;
+

+size of this texture

+
+ + + + + + +
ProtectedfMipMap: TglBitmapMipMap;
+

+mipmap type

+
+ + + + + + +
ProtectedfFormat: TglBitmapFormat;
+

+format the texture data is stored in

+
+ + + + + + +
ProtectedfPixelSize: Integer;
+

+size of one pixel (in byte)

+
+ + + + + + +
ProtectedfRowSize: Integer;
+

+size of one pixel row (in byte)

+
+ + + + + + +
ProtectedfFilterMin: GLenum;
+

+min filter to apply to the texture

+
+ + + + + + +
ProtectedfFilterMag: GLenum;
+

+mag filter to apply to the texture

+
+ + + + + + +
ProtectedfWrapS: GLenum;
+

+texture wrapping for x axis

+
+ + + + + + +
ProtectedfWrapT: GLenum;
+

+texture wrapping for y axis

+
+ + + + + + +
ProtectedfWrapR: GLenum;
+

+texture wrapping for z axis

+
+ + + + + + +
ProtectedfSwizzle: array[0..3] of GLenum;
+

+color channel swizzle

+
+ + + + + + +
ProtectedfFilename: String;
+

+filename the texture was load from

+
+ + + + + + +
ProtectedfCustomName: String;
+

+user defined name

+
+ + + + + + +
ProtectedfCustomNameW: WideString;
+

+user defined name

+
+ + + + + + +
ProtectedfCustomData: Pointer;
+

+user defined data

+
+

Methods

+ + + + + + +
Privatefunction GetFormatDesc: TglBitmapFormatDescriptor;
Returns
+

format descriptor that describes the format of the stored data

+ + + + + + +
Protectedfunction GetWidth: Integer; virtual;
Returns
+

the actual width of the texture

+ + + + + + +
Protectedfunction GetHeight: Integer; virtual;
Returns
+

the actual height of the texture

+ + + + + + +
Protectedfunction GetFileWidth: Integer; virtual;
Returns
+

the width of the texture or 1 if the width is zero

+ + + + + + +
Protectedfunction GetFileHeight: Integer; virtual;
Returns
+

the height of the texture or 1 if the height is zero

+ + + + + + +
Protectedprocedure SetCustomData(const aValue: Pointer);
+

+set a new value for fCustomData

+
+ + + + + + +
Protectedprocedure SetCustomName(const aValue: String);
+

+set a new value for fCustomName

+
+ + + + + + +
Protectedprocedure SetCustomNameW(const aValue: WideString);
+

+set a new value for fCustomNameW

+
+ + + + + + +
Protectedprocedure SetFreeDataOnDestroy(const aValue: Boolean);
+

+set new value for fFreeDataOnDestroy

+
+ + + + + + +
Protectedprocedure SetDeleteTextureOnFree(const aValue: Boolean);
+

+set new value for fDeleteTextureOnFree

+
+ + + + + + +
Protectedprocedure SetFormat(const aValue: TglBitmapFormat);
+

+set new value for the data format. only possible if new format has the same pixel size. if you want to convert the texture data, see ConvertTo function

+
+ + + + + + +
Protectedprocedure SetFreeDataAfterGenTexture(const aValue: Boolean);
+

+set new value for fFreeDataAfterGenTexture

+
+ + + + + + +
Protectedprocedure SetID(const aValue: Cardinal);
+

+set name of OpenGL texture object

+
+ + + + + + +
Protectedprocedure SetMipMap(const aValue: TglBitmapMipMap);
+

+set new value for fMipMap

+
+ + + + + + +
Protectedprocedure SetTarget(const aValue: Cardinal);
+

+set new value for target

+
+ + + + + + +
Protectedprocedure SetAnisotropic(const aValue: Integer);
+

+set new value for fAnisotrophic

+
+ + + + + + +
Protectedprocedure CreateID;
+

+create OpenGL texture object (delete exisiting object if exists)

+
+ + + + + + +
Protectedprocedure SetupParameters();
+

+setup texture parameters

+
+ + + + + + +
Protectedprocedure SetDataPointer(var aData: PByte; const aFormat: TglBitmapFormat; const aWidth: Integer = -1; const aHeight: Integer = -1); virtual;
+

+set data pointer of texture data

+
Parameters
+
+
aData
+
pointer to new texture data (be carefull, aData could be freed by this function)
+
aFormat
+
format of the data stored at aData
+
aWidth
+
width of the texture data
+
aHeight
+
height of the texture data
+
+
+ + + + + + +
Protectedprocedure GenTexture(const aTestTextureSize: Boolean = true); virtual; abstract;
+

+generate texture (upload texture data to video card)

+
Parameters
+
+
aTestTextureSize
+
test texture size before uploading and raise exception if something is wrong
+
+
+ + + + + + +
Protectedfunction FlipHorz: Boolean; virtual;
+

+flip texture horizontal

+
Returns
+

True in success, False otherwise

+ + + + + + +
Protectedfunction FlipVert: Boolean; virtual;
+

+flip texture vertical

+
Returns
+

True in success, False otherwise

+ + + + + + +
Publicprocedure AfterConstruction; override;
+

+this method is called after the constructor and sets the default values of this object

+
+ + + + + + +
Publicprocedure BeforeDestruction; override;
+

+this method is called before the destructor and does some cleanup

+
+ + + + + + +
Publicprocedure PrepareResType(var aResource: String; var aResType: PChar);
+

+splits a resource identifier into the resource and it's type

+
Parameters
+
+
aResource
+
resource identifier to split and store name in
+
aResType
+
type of the resource
+
+
+ + + + + + +
Publicprocedure LoadFromFile(const aFilename: String);
+

+load a texture from a file

+
Parameters
+
+
aFilename
+
file to load texuture from
+
+
+ + + + + + +
Publicprocedure LoadFromStream(const aStream: TStream); virtual;
+

+load a texture from a stream

+
Parameters
+
+
aStream
+
stream to load texture from
+
+
+ + + + + + +
Publicprocedure LoadFromFunc(const aSize: TglBitmapSize; const aFunc: TglBitmapFunction; const aFormat: TglBitmapFormat; const aArgs: Pointer = nil);
+

+use a function to generate texture data

+
Parameters
+
+
aSize
+
size of the texture
+
aFunc
+
callback to use for generation
+
aFormat
+
format of the texture data
+
aArgs
+
user defined paramaters (use at will)
+
+
+ + + + + + +
Publicprocedure LoadFromResource(const aInstance: Cardinal; aResource: String; aResType: PChar = nil);
+

+load a texture from a resource

+
Parameters
+
+
aInstance
+
resource handle
+
aResource
+
resource indentifier
+
aResType
+
resource type (if known)
+
+
+ + + + + + +
Publicprocedure LoadFromResourceID(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar);
+

+load a texture from a resource id

+
Parameters
+
+
aInstance
+
resource handle
+
aResource
+
resource ID
+
aResType
+
resource type
+
+
+ + + + + + +
Publicprocedure SaveToFile(const aFilename: String; const aFileType: TglBitmapFileType);
+

+save texture data to a file

+
Parameters
+
+
aFilename
+
filename to store texture in
+
aFileType
+
file type to store data into
+
+
+ + + + + + +
Publicprocedure SaveToStream(const aStream: TStream; const aFileType: TglBitmapFileType); virtual;
+

+save texture data to a stream

+
Parameters
+
+
aFilename
+
filename to store texture in
+
aFileType
+
file type to store data into
+
+
+ + + + + + +
Publicfunction Convert(const aFunc: TglBitmapFunction; const aCreateTemp: Boolean; const aArgs: Pointer = nil): Boolean; overload;
+

+convert texture data using a user defined callback

+
Parameters
+
+
aFunc
+
callback to use for converting
+
aCreateTemp
+
create a temporary buffer to use for converting
+
aArgs
+
user defined paramters (use at will)
+
+
Returns
+

True if converting was successful, False otherwise

+ + + + + + +
Publicfunction Convert(const aSource: TglBitmap; const aFunc: TglBitmapFunction; aCreateTemp: Boolean; const aFormat: TglBitmapFormat; const aArgs: Pointer = nil): Boolean; overload;
+

+convert texture data using a user defined callback

+
Parameters
+
+
aSource
+
glBitmap to read data from
+
aFunc
+
callback to use for converting
+
aCreateTemp
+
create a temporary buffer to use for converting
+
aFormat
+
format of the new data
+
aArgs
+
user defined paramters (use at will)
+
+
Returns
+

True if converting was successful, False otherwise

+ + + + + + +
Publicfunction ConvertTo(const aFormat: TglBitmapFormat): Boolean; virtual;
+

+convert texture data using a specific format

+
Parameters
+
+
aFormat
+
new format of texture data
+
+
Returns
+

True if converting was successful, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromResource(const aInstance: Cardinal; aResource: String; aResType: PChar = nil; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean;
+

+load alpha channel data from resource

+
Parameters
+
+
aInstance
+
resource handle
+
aResource
+
resource ID
+
aResType
+
resource type
+
aFunc
+
callback to use for converting
+
aArgs
+
user defined parameters (use at will)
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromResourceID(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean;
+

+load alpha channel data from resource ID

+
Parameters
+
+
aInstance
+
resource handle
+
aResourceID
+
resource ID
+
aResType
+
resource type
+
aFunc
+
callback to use for converting
+
aArgs
+
user defined parameters (use at will)
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromFunc(const aFunc: TglBitmapFunction; const aArgs: Pointer = nil): Boolean; virtual;
+

+add alpha channel data from function

+
Parameters
+
+
aFunc
+
callback to get data from
+
aArgs
+
user defined parameters (use at will)
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromFile(const aFileName: String; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean;
+

+add alpha channel data from file (macro for: new glBitmap, LoadFromFile, AddAlphaFromGlBitmap)

+
Parameters
+
+
aFilename
+
file to load alpha channel data from
+
aFunc
+
callback to use for converting
+
aArgs
+
user defined parameters (use at will)
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromStream(const aStream: TStream; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean;
+

+add alpha channel data from stream (macro for: new glBitmap, LoadFromStream, AddAlphaFromGlBitmap)

+
Parameters
+
+
aStream
+
stream to load alpha channel data from
+
aFunc
+
callback to use for converting
+
aArgs
+
user defined parameters (use at will)
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromGlBitmap(const aBitmap: TglBitmap; aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean;
+

+add alpha channel data from existing glBitmap object

+
Parameters
+
+
aBitmap
+
TglBitmap to copy alpha channel data from
+
aFunc
+
callback to use for converting
+
aArgs
+
user defined parameters (use at will)
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromColorKey(const aRed, aGreen, aBlue: Byte; const aDeviation: Byte = 0): Boolean;
+

+add alpha to pixel if the pixels color is greter than the given color value

+
Parameters
+
+
aRed
+
red threshold (0-255)
+
aGreen
+
green threshold (0-255)
+
aBlue
+
blue threshold (0-255)
+
aDeviatation
+
accepted deviatation (0-255)
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromColorKeyRange(const aRed, aGreen, aBlue: Cardinal; const aDeviation: Cardinal = 0): Boolean;
+

+add alpha to pixel if the pixels color is greter than the given color value

+
Parameters
+
+
aRed
+
red threshold (0-Range.r)
+
aGreen
+
green threshold (0-Range.g)
+
aBlue
+
blue threshold (0-Range.b)
+
aDeviatation
+
accepted deviatation (0-max(Range.rgb))
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromColorKeyFloat(const aRed, aGreen, aBlue: Single; const aDeviation: Single = 0): Boolean;
+

+add alpha to pixel if the pixels color is greter than the given color value

+
Parameters
+
+
aRed
+
red threshold (0.0-1.0)
+
aGreen
+
green threshold (0.0-1.0)
+
aBlue
+
blue threshold (0.0-1.0)
+
aDeviatation
+
accepted deviatation (0.0-1.0)
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromValue(const aAlpha: Byte): Boolean;
+

+add a constand alpha value to all pixels

+
Parameters
+
+
aAlpha
+
alpha value to add (0-255)
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromValueRange(const aAlpha: Cardinal): Boolean;
+

+add a constand alpha value to all pixels

+
Parameters
+
+
aAlpha
+
alpha value to add (0-max(Range.rgb))
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction AddAlphaFromValueFloat(const aAlpha: Single): Boolean;
+

+add a constand alpha value to all pixels

+
Parameters
+
+
aAlpha
+
alpha value to add (0.0-1.0)
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction RemoveAlpha: Boolean; virtual;
+

+remove alpha channel

+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction Clone: TglBitmap;
+

+create a clone of the current object

+
Returns
+

clone of this object

+ + + + + + +
Publicprocedure Invert(const aUseRGB: Boolean = true; const aUseAlpha: Boolean = false);
+

+invert color data (xor)

+
Parameters
+
+
aUseRGB
+
xor each color channel
+
aUseAlpha
+
xor alpha channel
+
+
+ + + + + + +
Publicprocedure FreeData;
+

+free texture stored data

+
+ + + + + + +
Publicprocedure FillWithColor(const aRed, aGreen, aBlue: Byte; const aAlpha: Byte = 255);
+

+fill complete texture with one color

+
Parameters
+
+
aRed
+
red color for border (0-255)
+
aGreen
+
green color for border (0-255)
+
aBlue
+
blue color for border (0-255)
+
aAlpha
+
alpha color for border (0-255)
+
+
+ + + + + + +
Publicprocedure FillWithColorRange(const aRed, aGreen, aBlue: Cardinal; const aAlpha: Cardinal = $FFFFFFFF);
+

+fill complete texture with one color

+
Parameters
+
+
aRed
+
red color for border (0-Range.r)
+
aGreen
+
green color for border (0-Range.g)
+
aBlue
+
blue color for border (0-Range.b)
+
aAlpha
+
alpha color for border (0-Range.a)
+
+
+ + + + + + +
Publicprocedure FillWithColorFloat(const aRed, aGreen, aBlue: Single; const aAlpha: Single = 1.0);
+

+fill complete texture with one color

+
Parameters
+
+
aRed
+
red color for border (0.0-1.0)
+
aGreen
+
green color for border (0.0-1.0)
+
aBlue
+
blue color for border (0.0-1.0)
+
aAlpha
+
alpha color for border (0.0-1.0)
+
+
+ + + + + + +
Publicprocedure SetFilter(const aMin, aMag: GLenum);
+

+set new texture filer

+
Parameters
+
+
aMin
+
min filter
+
aMag
+
mag filter
+
+
+ + + + + + +
Publicprocedure SetWrap( const S: GLenum = GL_CLAMP_TO_EDGE; const T: GLenum = GL_CLAMP_TO_EDGE; const R: GLenum = GL_CLAMP_TO_EDGE);
+

+set new texture wrapping

+
Parameters
+
+
S
+
texture wrapping for x axis
+
T
+
texture wrapping for y axis
+
R
+
texture wrapping for z axis
+
+
+ + + + + + +
Publicprocedure SetSwizzle(const r, g, b, a: GLenum);
+

+set new swizzle

+
Parameters
+
+
r
+
swizzle for red channel
+
g
+
swizzle for green channel
+
b
+
swizzle for blue channel
+
a
+
swizzle for alpha channel
+
+
+ + + + + + +
Publicprocedure Bind(const aEnableTextureUnit: Boolean = true); virtual;
+

+bind texture

+
Parameters
+
+
aEnableTextureUnit
+
enable texture unit for this texture (e.g. glEnable(GL_TEXTURE_2D))
+
+
+ + + + + + +
Publicprocedure Unbind(const aDisableTextureUnit: Boolean = true); virtual;
+

+bind texture

+
Parameters
+
+
aDisableTextureUnit
+
disable texture unit for this texture (e.g. glEnable(GL_TEXTURE_2D))
+
+
+ + + + + + +
Publicconstructor Create; overload;
+

+constructor - created an empty texture

+
+ + + + + + +
Publicconstructor Create(const aFileName: String); overload;
+

+constructor - creates a texture and load it from a file

+
Parameters
+
+
aFilename
+
file to load texture from
+
+
+ + + + + + +
Publicconstructor Create(const aStream: TStream); overload;
+

+constructor - creates a texture and load it from a stream

+
Parameters
+
+
aStream
+
stream to load texture from
+
+
+ + + + + + +
Publicconstructor Create(const aSize: TglBitmapSize; const aFormat: TglBitmapFormat; aData: PByte = nil); overload;
+

+constructor - creates a texture with the given size, format and data you can control this by setting DeleteTextureOnFree, FreeDataOnDestroy and FreeDataAfterGenTexture

+
Parameters
+
+
aSize
+
size of the texture
+
aFormat
+
format of the given data
+
aData
+
texture data - be carefull: the data will now be managed by the glBitmap object,
+
+
+ + + + + + +
Publicconstructor Create(const aSize: TglBitmapSize; const aFormat: TglBitmapFormat; const aFunc: TglBitmapFunction; const aArgs: Pointer = nil); overload;
+

+constructor - creates a texture with the given size and format and uses the given callback to create the data

+
Parameters
+
+
aSize
+
size of the texture
+
aFormat
+
format of the given data
+
aFunc
+
callback to use for generating the data
+
aArgs
+
user defined parameters (use at will)
+
+
+ + + + + + +
Publicconstructor Create(const aInstance: Cardinal; const aResource: String; const aResType: PChar = nil); overload;
+

+constructor - creates a texture and loads it from a resource

+
Parameters
+
+
aInstance
+
resource handle
+
aResource
+
resource indentifier
+
aResType
+
resource type (if known)
+
+
+ + + + + + +
Publicconstructor Create(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar); overload;
+

+constructor - creates a texture and loads it from a resource

+
Parameters
+
+
aInstance
+
resource handle
+
aResourceID
+
resource ID
+
aResType
+
resource type (if known)
+
+
+ + + + + + +
Privatefunction LoadRAW(const aStream: TStream): Boolean;
+

+try to load a RAW image from a stream

+
Parameters
+
+
aStream
+
stream to load RAW image from
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Privateprocedure SaveRAW(const aStream: TStream);
+

+save texture data as RAW image to stream

+
Parameters
+
+
aStream
+
stream to save data to
+
+
+ + + + + + +
Privatefunction LoadBMP(const aStream: TStream): Boolean;
+

+try to load a BMP from a stream

+
Parameters
+
+
aStream
+
stream to load BMP from
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Privateprocedure SaveBMP(const aStream: TStream);
+

+save texture data as BMP to stream

+
Parameters
+
+
aStream
+
stream to save data to
+
+
+ + + + + + +
Privatefunction LoadTGA(const aStream: TStream): Boolean;
+

+try to load a TGA from a stream

+
Parameters
+
+
aStream
+
stream to load TGA from
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Privateprocedure SaveTGA(const aStream: TStream);
+

+save texture data as TGA to stream

+
Parameters
+
+
aStream
+
stream to save data to
+
+
+ + + + + + +
Privatefunction LoadDDS(const aStream: TStream): Boolean;
+

+try to load a DDS from a stream

+
Parameters
+
+
aStream
+
stream to load DDS from
+
+
Returns
+

True on success, False otherwise

+ + + + + + +
Privateprocedure SaveDDS(const aStream: TStream);
+

+save texture data as DDS to stream

+
Parameters
+
+
aStream
+
stream to save data to
+
+
+

Properties

+ + + + + + +
Protectedproperty Width: Integer read GetWidth;
+

+the actual width of the texture

+
+ + + + + + +
Protectedproperty Height: Integer read GetHeight;
+

+the actual height of the texture

+
+ + + + + + +
Protectedproperty FileWidth: Integer read GetFileWidth;
+

+the width of the texture or 1 if the width is zero

+
+ + + + + + +
Protectedproperty FileHeight: Integer read GetFileHeight;
+

+the height of the texture or 1 if the height is zero

+
+ + + + + + +
Publicproperty ID: Cardinal read fID write SetID;
+

+name of the OpenGL texture object

+
+ + + + + + +
Publicproperty Target: Cardinal read fTarget write SetTarget;
+

+texture target (e.g. GL_TEXTURE_2D)

+
+ + + + + + +
Publicproperty Format: TglBitmapFormat read fFormat write SetFormat;
+

+format the texture data is stored in

+
+ + + + + + +
Publicproperty MipMap: TglBitmapMipMap read fMipMap write SetMipMap;
+

+mipmap type

+
+ + + + + + +
Publicproperty Anisotropic: Integer read fAnisotropic write SetAnisotropic;
+

+anisotropic level

+
+ + + + + + +
Publicproperty FormatDesc: TglBitmapFormatDescriptor read GetFormatDesc;
+

+format descriptor that describes the format of the stored data

+
+ + + + + + +
Publicproperty Filename: String read fFilename;
+

+filename the texture was load from

+
+ + + + + + +
Publicproperty CustomName: String read fCustomName write SetCustomName;
+

+user defined name (use at will)

+
+ + + + + + +
Publicproperty CustomNameW: WideString read fCustomNameW write SetCustomNameW;
+

+user defined name (as WideString; use at will)

+
+ + + + + + +
Publicproperty CustomData: Pointer read fCustomData write SetCustomData;
+

+user defined data (use at will)

+
+ + + + + + +
Publicproperty DeleteTextureOnFree: Boolean read fDeleteTextureOnFree write SetDeleteTextureOnFree;
+

+delete texture object when this object is destroyed

+
+ + + + + + +
Publicproperty FreeDataOnDestroy: Boolean read fFreeDataOnDestroy write SetFreeDataOnDestroy;
+

+free stored data when this object is destroyed

+
+ + + + + + +
Publicproperty FreeDataAfterGenTexture: Boolean read fFreeDataAfterGenTexture write SetFreeDataAfterGenTexture;
+

+free stored data after it is uplaoded to video card

+
+ + + + + + +
Publicproperty Dimension: TglBitmapSize read fDimension;
+

+size of the texture

+
+ + + + + + +
Publicproperty Data: PByte read fData;
+

+texture data (or Nil if unset)

+
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmap1D.html b/doc/glBitmap.TglBitmap1D.html new file mode 100644 index 0000000..d41d806 --- /dev/null +++ b/doc/glBitmap.TglBitmap1D.html @@ -0,0 +1,146 @@ + + + +glBitmap: Class TglBitmap1D + + + + + +
+

Class TglBitmap1D

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmap1D = class(TglBitmap)

+

Description

+

+wrapper class for 1-dimensional textures (OpenGL target = GL_TEXTURE_1D

+

Hierarchy

+

Overview

+

Methods

+ + + + + + + + + + + + + + + + + + + + + +
Protectedprocedure SetDataPointer(var aData: PByte; const aFormat: TglBitmapFormat; const aWidth: Integer = - 1; const aHeight: Integer = - 1); override;
Protectedprocedure UploadData(const aBuildWithGlu: Boolean);
Publicprocedure AfterConstruction; override;
Publicfunction FlipHorz: Boolean; override;
Publicprocedure GenTexture(const aTestTextureSize: Boolean = true); override;
+

Properties

+ + + + + +
Publicproperty Width;
+

Description

+

Methods

+ + + + + + +
Protectedprocedure SetDataPointer(var aData: PByte; const aFormat: TglBitmapFormat; const aWidth: Integer = - 1; const aHeight: Integer = - 1); override;
+

+set data pointer of texture data

+
Parameters
+
+
aData
+
pointer to new texture data (be carefull, aData could be freed by this function)
+
aFormat
+
format of the data stored at aData
+
aWidth
+
width of the texture data
+
aHeight
+
height of the texture data
+
+
+ + + + + + +
Protectedprocedure UploadData(const aBuildWithGlu: Boolean);
+

+upload the texture data to video card

+
Parameters
+
+
aBuildWithGlu
+
use glu functions to build mipmaps
+
+
+ + + + + + +
Publicprocedure AfterConstruction; override;
+

+this method is called after constructor and initializes the object

+
+ + + + + + +
Publicfunction FlipHorz: Boolean; override;
+

+flip texture horizontally

+
Returns
+

True on success, @fals otherwise

+ + + + + + +
Publicprocedure GenTexture(const aTestTextureSize: Boolean = true); override;
+

+generate texture (create texture object if not exist, set texture parameters and upload data

+
Parameters
+
+
aTestTextureSize
+
check the size of the texture and throw exception if something is wrong
+
+
+

Properties

+ + + + + + +
Publicproperty Width;
+

+actual with of the texture

+
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmap2D.html b/doc/glBitmap.TglBitmap2D.html new file mode 100644 index 0000000..ce0232a --- /dev/null +++ b/doc/glBitmap.TglBitmap2D.html @@ -0,0 +1,279 @@ + + + +glBitmap: Class TglBitmap2D + + + + + +
+

Class TglBitmap2D

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmap2D = class(TglBitmap)

+

Description

+

+wrapper class for 2-dimensional textures (OpenGL target = GL_TEXTURE_2D)

+

Hierarchy

+

Overview

+

Fields

+ + + + + +
ProtectedfLines: array of PByte;
+

Methods

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Protectedfunction GetScanline(const aIndex: Integer): Pointer;
Protectedprocedure SetDataPointer(var aData: PByte; const aFormat: TglBitmapFormat; const aWidth: Integer = - 1; const aHeight: Integer = - 1); override;
Protectedprocedure UploadData(const aTarget: GLenum);
Publicprocedure AfterConstruction; override;
Publicprocedure GrabScreen(const aTop, aLeft, aRight, aBottom: Integer; const aFormat: TglBitmapFormat);
Publicprocedure GenTexture(const aTestTextureSize: Boolean = true); override;
Publicfunction FlipHorz: Boolean; override;
Publicfunction FlipVert: Boolean; override;
Publicprocedure GenerateNormalMap(const aFunc: TglBitmapNormalMapFunc = nm3x3; const aScale: Single = 2; const aUseAlpha: Boolean = false);
+

Properties

+ + + + + + + + + + + + + +
Publicproperty Width;
Publicproperty Height;
Publicproperty Scanline[constaIndex:Integer]: Pointer read GetScanline;
+

Description

+

Fields

+ + + + + + +
ProtectedfLines: array of PByte;
+

+array to store scanline entry points in

+
+

Methods

+ + + + + + +
Protectedfunction GetScanline(const aIndex: Integer): Pointer;
+

+get a specific scanline

+
Parameters
+
+
aIndex
+
index of the scanline to return
+
+
Returns
+

scanline at position aIndex or Nil

+ + + + + + +
Protectedprocedure SetDataPointer(var aData: PByte; const aFormat: TglBitmapFormat; const aWidth: Integer = - 1; const aHeight: Integer = - 1); override;
+

+set data pointer of texture data

+
Parameters
+
+
aData
+
pointer to new texture data (be carefull, aData could be freed by this function)
+
aFormat
+
format of the data stored at aData
+
aWidth
+
width of the texture data
+
aHeight
+
height of the texture data
+
+
+ + + + + + +
Protectedprocedure UploadData(const aTarget: GLenum);
+

+upload the texture data to video card

+
Parameters
+
+
aTarget
+
target o upload data to (e.g. GL_TEXTURE_2D)
+
aBuildWithGlu
+
use glu functions to build mipmaps
+
+
+ + + + + + +
Publicprocedure AfterConstruction; override;
+

+this method is called after constructor and initializes the object

+
+ + + + + + +
Publicprocedure GrabScreen(const aTop, aLeft, aRight, aBottom: Integer; const aFormat: TglBitmapFormat);
+

+copy a part of the frame buffer top the texture

+
Parameters
+
+
aTop
+
topmost pixel to copy
+
aLeft
+
leftmost pixel to copy
+
aRight
+
rightmost pixel to copy
+
aBottom
+
bottommost pixel to copy
+
aFormat
+
format to store data in
+
+
+ + + + + + +
Publicprocedure GenTexture(const aTestTextureSize: Boolean = true); override;
+

+generate texture (create texture object if not exist, set texture parameters and upload data)

+
Parameters
+
+
aTestTextureSize
+
check the size of the texture and throw exception if something is wrong
+
+
+ + + + + + +
Publicfunction FlipHorz: Boolean; override;
+

+flip texture horizontally

+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicfunction FlipVert: Boolean; override;
+

+flip texture vertically

+
Returns
+

True on success, False otherwise

+ + + + + + +
Publicprocedure GenerateNormalMap(const aFunc: TglBitmapNormalMapFunc = nm3x3; const aScale: Single = 2; const aUseAlpha: Boolean = false);
+

+create normal map from texture data

+
Parameters
+
+
aFunc
+
normal map function to generate normalmap with
+
aScale
+
scale of the normale stored in the normal map
+
aUseAlpha
+
generate normalmap from alpha channel data (if present)
+
+
+

Properties

+ + + + + + +
Publicproperty Width;
+

+actual width of the texture

+
+ + + + + + +
Publicproperty Height;
+

+actual height of the texture

+
+ + + + + + +
Publicproperty Scanline[constaIndex:Integer]: Pointer read GetScanline;
+

+scanline to access texture data directly

+
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmapCubeMap.html b/doc/glBitmap.TglBitmapCubeMap.html new file mode 100644 index 0000000..e3bd45b --- /dev/null +++ b/doc/glBitmap.TglBitmapCubeMap.html @@ -0,0 +1,133 @@ + + + +glBitmap: Class TglBitmapCubeMap + + + + + +
+

Class TglBitmapCubeMap

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmapCubeMap = class(TglBitmap2D)

+

Description

+

+wrapper class for cube maps (OpenGL target = GL_TEXTURE_CUBE_MAP)

+

Hierarchy

+

Overview

+

Methods

+ + + + + + + + + + + + + + + + + + + + + +
Protectedprocedure GenTexture(const aTestTextureSize: Boolean = true); reintroduce;
Publicprocedure AfterConstruction; override;
Publicprocedure GenerateCubeMap(const aCubeTarget: Cardinal; const aTestTextureSize: Boolean = true);
Publicprocedure Bind( const aEnableTextureUnit: Boolean = true); reintroduce; virtual;
Publicprocedure Unbind( const aDisableTextureUnit: Boolean = true); reintroduce; virtual;
+

Description

+

Methods

+ + + + + + +
Protectedprocedure GenTexture(const aTestTextureSize: Boolean = true); reintroduce;
+

+generate texture (create texture object if not exist, set texture parameters and upload data do not call directly for cubemaps, use GenerateCubeMap instead

+
Parameters
+
+
aTestTextureSize
+
check the size of the texture and throw exception if something is wrong
+
+
+ + + + + + +
Publicprocedure AfterConstruction; override;
+

+this method is called after constructor and initializes the object

+
+ + + + + + +
Publicprocedure GenerateCubeMap(const aCubeTarget: Cardinal; const aTestTextureSize: Boolean = true);
+

+generate texture (create texture object if not exist, set texture parameters and upload data

+
Parameters
+
+
aCubeTarget
+
cube map target to upload data to (e.g. GL_TEXTURE_CUBE_MAP_POSITIVE_X)
+
aTestTextureSize
+
check the size of the texture and throw exception if something is wrong
+
+
+ + + + + + +
Publicprocedure Bind( const aEnableTextureUnit: Boolean = true); reintroduce; virtual;
+

+bind texture

+
Parameters
+
+
aEnableTexCoordsGen
+
enable cube map generator
+
aEnableTextureUnit
+
enable texture unit
+
+
+ + + + + + +
Publicprocedure Unbind( const aDisableTextureUnit: Boolean = true); reintroduce; virtual;
+

+unbind texture

+
Parameters
+
+
aDisableTexCoordsGen
+
disable cube map generator
+
aDisableTextureUnit
+
disable texture unit
+
+
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmapFormatDescriptor.html b/doc/glBitmap.TglBitmapFormatDescriptor.html new file mode 100644 index 0000000..c903418 --- /dev/null +++ b/doc/glBitmap.TglBitmapFormatDescriptor.html @@ -0,0 +1,743 @@ + + + +glBitmap: Class TglBitmapFormatDescriptor + + + + + +
+

Class TglBitmapFormatDescriptor

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmapFormatDescriptor = class(TObject)

+

Description

+

+describes the properties of a given texture data format

+

Hierarchy

+
  • TObject
  • +
  • TglBitmapFormatDescriptor

Overview

+

Fields

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrivatefBytesPerPixel: Single;
PrivatefChannelCount: Integer;
PrivatefMask: TglBitmapRec4ul;
PrivatefRange: TglBitmapRec4ui;
ProtectedfFormat: TglBitmapFormat;
ProtectedfWithAlpha: TglBitmapFormat;
ProtectedfWithoutAlpha: TglBitmapFormat;
ProtectedfOpenGLFormat: TglBitmapFormat;
ProtectedfRGBInverted: TglBitmapFormat;
ProtectedfUncompressed: TglBitmapFormat;
ProtectedfBitsPerPixel: Integer;
ProtectedfIsCompressed: Boolean;
ProtectedfPrecision: TglBitmapRec4ub;
ProtectedfShift: TglBitmapRec4ub;
ProtectedfglFormat: GLenum;
ProtectedfglInternalFormat: GLenum;
ProtectedfglDataFormat: GLenum;
+

Methods

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Privatefunction GetHasRed: Boolean;
Privatefunction GetHasGreen: Boolean;
Privatefunction GetHasBlue: Boolean;
Privatefunction GetHasAlpha: Boolean;
Privatefunction GetHasColor: Boolean;
Privatefunction GetIsGrayscale: Boolean;
Protectedprocedure SetValues; virtual;
Protectedprocedure CalcValues;
Publicconstructor Create;
Publicclass function GetByFormat(const aInternalFormat: GLenum): TglBitmapFormatDescriptor;
+

Properties

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Publicproperty Format: TglBitmapFormat read fFormat;
Publicproperty ChannelCount: Integer read fChannelCount;
Publicproperty IsCompressed: Boolean read fIsCompressed;
Publicproperty BitsPerPixel: Integer read fBitsPerPixel;
Publicproperty BytesPerPixel: Single read fBytesPerPixel;
Publicproperty Precision: TglBitmapRec4ub read fPrecision;
Publicproperty Shift: TglBitmapRec4ub read fShift;
Publicproperty Range: TglBitmapRec4ui read fRange;
Publicproperty Mask: TglBitmapRec4ul read fMask;
Publicproperty RGBInverted: TglBitmapFormat read fRGBInverted;
Publicproperty WithAlpha: TglBitmapFormat read fWithAlpha;
Publicproperty WithoutAlpha: TglBitmapFormat read fWithAlpha;
Publicproperty OpenGLFormat: TglBitmapFormat read fOpenGLFormat;
Publicproperty Uncompressed: TglBitmapFormat read fUncompressed;
Publicproperty glFormat: GLenum read fglFormat;
Publicproperty glInternalFormat: GLenum read fglInternalFormat;
Publicproperty glDataFormat: GLenum read fglDataFormat;
Publicproperty HasRed: Boolean read GetHasRed;
Publicproperty HasGreen: Boolean read GetHasGreen;
Publicproperty HasBlue: Boolean read GetHasBlue;
Publicproperty HasAlpha: Boolean read GetHasAlpha;
Publicproperty HasColor: Boolean read GetHasColor;
Publicproperty IsGrayscale: Boolean read GetIsGrayscale;
+

Description

+

Fields

+ + + + + + +
PrivatefBytesPerPixel: Single;
+

+number of bytes for each pixel

+
+ + + + + + +
PrivatefChannelCount: Integer;
+

+number of color channels

+
+ + + + + + +
PrivatefMask: TglBitmapRec4ul;
+

+bitmask for each color channel

+
+ + + + + + +
PrivatefRange: TglBitmapRec4ui;
+

+maximal value of each color channel

+
+ + + + + + +
ProtectedfFormat: TglBitmapFormat;
+

+format this descriptor belongs to

+
+ + + + + + +
ProtectedfWithAlpha: TglBitmapFormat;
+

+suitable format with alpha channel

+
+ + + + + + +
ProtectedfWithoutAlpha: TglBitmapFormat;
+

+suitable format without alpha channel

+
+ + + + + + +
ProtectedfOpenGLFormat: TglBitmapFormat;
+

+suitable format that is supported by OpenGL

+
+ + + + + + +
ProtectedfRGBInverted: TglBitmapFormat;
+

+suitable format with inverted RGB channels

+
+ + + + + + +
ProtectedfUncompressed: TglBitmapFormat;
+

+suitable format with uncompressed data

+
+ + + + + + +
ProtectedfBitsPerPixel: Integer;
+

+number of bits per pixel

+
+ + + + + + +
ProtectedfIsCompressed: Boolean;
+

+True if the format is compressed, False otherwise

+
+ + + + + + +
ProtectedfPrecision: TglBitmapRec4ub;
+

+number of bits for each color channel

+
+ + + + + + +
ProtectedfShift: TglBitmapRec4ub;
+

+bit offset for each color channel

+
+ + + + + + +
ProtectedfglFormat: GLenum;
+

+OpenGL format enum (e.g. GL_RGB)

+
+ + + + + + +
ProtectedfglInternalFormat: GLenum;
+

+OpenGL internal format enum (e.g. GL_RGB8)

+
+ + + + + + +
ProtectedfglDataFormat: GLenum;
+

+OpenGL data format enum (e.g. GL_UNSIGNED_BYTE)

+
+

Methods

+ + + + + + +
Privatefunction GetHasRed: Boolean;
Returns
+

True if the format has a red color channel, False otherwise

+ + + + + + +
Privatefunction GetHasGreen: Boolean;
Returns
+

True if the format has a green color channel, False otherwise

+ + + + + + +
Privatefunction GetHasBlue: Boolean;
Returns
+

True if the format has a blue color channel, False otherwise

+ + + + + + +
Privatefunction GetHasAlpha: Boolean;
Returns
+

True if the format has a alpha color channel, False otherwise

+ + + + + + +
Privatefunction GetHasColor: Boolean;
Returns
+

True if the format has any color color channel, False otherwise

+ + + + + + +
Privatefunction GetIsGrayscale: Boolean;
Returns
+

True if the format is a grayscale format, False otherwise

+ + + + + + +
Protectedprocedure SetValues; virtual;
+

+set values for this format descriptor

+
+ + + + + + +
Protectedprocedure CalcValues;
+

+calculate cached values

+
+ + + + + + +
Publicconstructor Create;
+

+constructor

+
+ + + + + + +
Publicclass function GetByFormat(const aInternalFormat: GLenum): TglBitmapFormatDescriptor;
+

+get the format descriptor by a given OpenGL internal format

+
Parameters
+
+
aInternalFormat
+
OpenGL internal format to get format descriptor for
+
+
Returns
+

suitable format descriptor or tfEmpty-Descriptor

+

Properties

+ + + + + + +
Publicproperty Format: TglBitmapFormat read fFormat;
+

+format this descriptor belongs to

+
+ + + + + + +
Publicproperty ChannelCount: Integer read fChannelCount;
+

+number of color channels

+
+ + + + + + +
Publicproperty IsCompressed: Boolean read fIsCompressed;
+

+True if the format is compressed, False otherwise

+
+ + + + + + +
Publicproperty BitsPerPixel: Integer read fBitsPerPixel;
+

+number of bytes per pixel

+
+ + + + + + +
Publicproperty BytesPerPixel: Single read fBytesPerPixel;
+

+number of bits per pixel

+
+ + + + + + +
Publicproperty Precision: TglBitmapRec4ub read fPrecision;
+

+number of bits for each color channel

+
+ + + + + + +
Publicproperty Shift: TglBitmapRec4ub read fShift;
+

+bit offset for each color channel

+
+ + + + + + +
Publicproperty Range: TglBitmapRec4ui read fRange;
+

+maximal value of each color channel

+
+ + + + + + +
Publicproperty Mask: TglBitmapRec4ul read fMask;
+

+bitmask for each color channel

+
+ + + + + + +
Publicproperty RGBInverted: TglBitmapFormat read fRGBInverted;
+

+suitable format with inverted RGB channels

+
+ + + + + + +
Publicproperty WithAlpha: TglBitmapFormat read fWithAlpha;
+

+suitable format with alpha channel

+
+ + + + + + +
Publicproperty WithoutAlpha: TglBitmapFormat read fWithAlpha;
+

+suitable format without alpha channel

+
+ + + + + + +
Publicproperty OpenGLFormat: TglBitmapFormat read fOpenGLFormat;
+

+suitable format that is supported by OpenGL

+
+ + + + + + +
Publicproperty Uncompressed: TglBitmapFormat read fUncompressed;
+

+suitable format with uncompressed data

+
+ + + + + + +
Publicproperty glFormat: GLenum read fglFormat;
+

+OpenGL format enum (e.g. GL_RGB)

+
+ + + + + + +
Publicproperty glInternalFormat: GLenum read fglInternalFormat;
+

+OpenGL internal format enum (e.g. GL_RGB8)

+
+ + + + + + +
Publicproperty glDataFormat: GLenum read fglDataFormat;
+

+OpenGL data format enum (e.g. GL_UNSIGNED_BYTE)

+
+ + + + + + +
Publicproperty HasRed: Boolean read GetHasRed;
+

+True if the format has a red color channel, False otherwise

+
+ + + + + + +
Publicproperty HasGreen: Boolean read GetHasGreen;
+

+True if the format has a green color channel, False otherwise

+
+ + + + + + +
Publicproperty HasBlue: Boolean read GetHasBlue;
+

+True if the format has a blue color channel, False otherwise

+
+ + + + + + +
Publicproperty HasAlpha: Boolean read GetHasAlpha;
+

+True if the format has a alpha color channel, False otherwise

+
+ + + + + + +
Publicproperty HasColor: Boolean read GetHasColor;
+

+True if the format has any color color channel, False otherwise

+
+ + + + + + +
Publicproperty IsGrayscale: Boolean read GetIsGrayscale;
+

+True if the format is a grayscale format, False otherwise

+
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmapFunctionRec.html b/doc/glBitmap.TglBitmapFunctionRec.html new file mode 100644 index 0000000..23f734f --- /dev/null +++ b/doc/glBitmap.TglBitmapFunctionRec.html @@ -0,0 +1,105 @@ + + + +glBitmap: record TglBitmapFunctionRec + + + + + +
+

record TglBitmapFunctionRec

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmapFunctionRec = record

+

Description

+

+structure to store data for converting in

+

Overview

+

Fields

+ + + + + + + + + + + + + + + + + + + +
Sender: TglBitmap;
Size: TglBitmapSize;
Position: TglBitmapPixelPosition;
Source: TglBitmapPixelData;
Dest: TglBitmapPixelData;
Args: Pointer;
+

Description

+

Fields

+ + + + + +
Sender: TglBitmap;
+

+texture object that stores the data to convert

+
+ + + + + +
Size: TglBitmapSize;
+

+size of the texture

+
+ + + + + +
Position: TglBitmapPixelPosition;
+

+position of the currently pixel

+
+ + + + + +
Source: TglBitmapPixelData;
+

+pixel data of the current pixel

+
+ + + + + +
Dest: TglBitmapPixelData;
+

+new data of the pixel (must be filled in)

+
+ + + + + +
Args: Pointer;
+

+user defined args that was passed to the convert function

+
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmapNormalMap.html b/doc/glBitmap.TglBitmapNormalMap.html new file mode 100644 index 0000000..b58e758 --- /dev/null +++ b/doc/glBitmap.TglBitmapNormalMap.html @@ -0,0 +1,73 @@ + + + +glBitmap: Class TglBitmapNormalMap + + + + + +
+

Class TglBitmapNormalMap

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmapNormalMap = class(TglBitmapCubeMap)

+

Description

+

+wrapper class for cube normal maps

+

Hierarchy

+

Overview

+

Methods

+ + + + + + + + + +
Publicprocedure AfterConstruction; override;
Publicprocedure GenerateNormalMap(const aSize: Integer = 32; const aTestTextureSize: Boolean = true);
+

Description

+

Methods

+ + + + + + +
Publicprocedure AfterConstruction; override;
+

+this method is called after constructor and initializes the object

+
+ + + + + + +
Publicprocedure GenerateNormalMap(const aSize: Integer = 32; const aTestTextureSize: Boolean = true);
+

+create cube normal map from texture data and upload it to video card

+
Parameters
+
+
aSize
+
size of each cube map texture
+
aTestTextureSize
+
check texture size when uploading and throw exception if something is wrong
+
+
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmapPixelData.html b/doc/glBitmap.TglBitmapPixelData.html new file mode 100644 index 0000000..9144e65 --- /dev/null +++ b/doc/glBitmap.TglBitmapPixelData.html @@ -0,0 +1,69 @@ + + + +glBitmap: packed record TglBitmapPixelData + + + + + +
+

packed record TglBitmapPixelData

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmapPixelData = packed record

+

Description

+

+structure to store pixel data in

+

Overview

+

Fields

+ + + + + + + + + + +
Data: TglBitmapRec4ui;
Range: TglBitmapRec4ui;
Format: TglBitmapFormat;
+

Description

+

Fields

+ + + + + +
Data: TglBitmapRec4ui;
+

+color data for each color channel

+
+ + + + + +
Range: TglBitmapRec4ui;
+

+maximal color value for each channel

+
+ + + + + +
Format: TglBitmapFormat;
+

+format of the pixel

+
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmapRec4ub.html b/doc/glBitmap.TglBitmapRec4ub.html new file mode 100644 index 0000000..7f5f880 --- /dev/null +++ b/doc/glBitmap.TglBitmapRec4ub.html @@ -0,0 +1,83 @@ + + + +glBitmap: packed record TglBitmapRec4ub + + + + + +
+

packed record TglBitmapRec4ub

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmapRec4ub = packed record

+

Description

+

+record that stores 4 unsigned byte values

+

Overview

+

Fields

+ + + + + + + + + + + + + + + + +
r: Byte
g: Byte
b: Byte
a: Byte
arr: array[0..3] of Byte
+

Description

+

Fields

+ + + + + +
r: Byte
+ + + + + +
g: Byte
+ + + + + +
b: Byte
+ + + + + +
a: Byte
+ + + + + +
arr: array[0..3] of Byte
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmapRec4ui.html b/doc/glBitmap.TglBitmapRec4ui.html new file mode 100644 index 0000000..36e5ce5 --- /dev/null +++ b/doc/glBitmap.TglBitmapRec4ui.html @@ -0,0 +1,83 @@ + + + +glBitmap: packed record TglBitmapRec4ui + + + + + +
+

packed record TglBitmapRec4ui

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmapRec4ui = packed record

+

Description

+

+record that stores 4 unsigned integer values

+

Overview

+

Fields

+ + + + + + + + + + + + + + + + +
r: Cardinal
g: Cardinal
b: Cardinal
a: Cardinal
arr: array[0..3] of Cardinal
+

Description

+

Fields

+ + + + + +
r: Cardinal
+ + + + + +
g: Cardinal
+ + + + + +
b: Cardinal
+ + + + + +
a: Cardinal
+ + + + + +
arr: array[0..3] of Cardinal
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmapRec4ul.html b/doc/glBitmap.TglBitmapRec4ul.html new file mode 100644 index 0000000..f9e9b67 --- /dev/null +++ b/doc/glBitmap.TglBitmapRec4ul.html @@ -0,0 +1,83 @@ + + + +glBitmap: packed record TglBitmapRec4ul + + + + + +
+

packed record TglBitmapRec4ul

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmapRec4ul = packed record

+

Description

+

+record that stores 4 unsigned long integer values

+

Overview

+

Fields

+ + + + + + + + + + + + + + + + +
r: QWord
g: QWord
b: QWord
a: QWord
arr: array[0..3] of QWord
+

Description

+

Fields

+ + + + + +
r: QWord
+ + + + + +
g: QWord
+ + + + + +
b: QWord
+ + + + + +
a: QWord
+ + + + + +
arr: array[0..3] of QWord
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.TglBitmapSize.html b/doc/glBitmap.TglBitmapSize.html new file mode 100644 index 0000000..67b9ace --- /dev/null +++ b/doc/glBitmap.TglBitmapSize.html @@ -0,0 +1,61 @@ + + + +glBitmap: packed record TglBitmapSize + + + + + +
+

packed record TglBitmapSize

+ + +
DescriptionHierarchyFieldsMethodsProperties
+

Unit

+ +

Declaration

+

+type TglBitmapSize = packed record

+

Description

Overview

+

Fields

+ + + + + + + + + + +
Fields: TglBitmapSizeFields;
X: Word;
Y: Word;
+

Description

+

Fields

+ + + + + +
Fields: TglBitmapSizeFields;
+ + + + + +
X: Word;
+ + + + + +
Y: Word;
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/glBitmap.html b/doc/glBitmap.html new file mode 100644 index 0000000..839c453 --- /dev/null +++ b/doc/glBitmap.html @@ -0,0 +1,602 @@ + + + +glBitmap + + + + + +
+

Unit glBitmap

+ + +
DescriptionUsesClasses, Interfaces, Objects and RecordsFunctions and ProceduresTypesConstantsVariables
+

Description

+

+glBitmap by Steffen Xonna aka Lossy eX (2003-2008) http://www.opengl24.de/index.php?cat=header&file=glbitmap + +

modified by Delphi OpenGL Community (http://delphigl.com/) (2013) + +

The contents of this file are used with permission, subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/MPL-1.1.html + +

The glBitmap is a Delphi/FPC unit that contains several wrapper classes to manage OpenGL texture objects. Below you can find a list of the main functionality of this classes: - load texture data from file (e.g. BMP, TGA, DDS, PNG, JPEG, ...) - load texture data from several other image objects (e.g. TBitmap, TLazIntfImage, SDL Surface) - save texture data to file (e.g. BMP, TGA, DDS, PNG, JPEG, ...) - save texture data to several other image objects (e.g. TBitmap, TLazIntfImage, SDL Surface) - support for many texture formats (e.g. RGB8, BGR8, RGBA8, BGRA8, ...) - manage texture properties (e.g. Filter, Clamp, Mipmap, ...) - upload texture data to video card - download texture data from video card - manipulate texture data (e.g. add alpha, remove alpha, convert to other format, switch RGB, ...)

+

Overview

+

Classes, Interfaces, Objects and Records

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescription
Class EglBitmap 
Class EglBitmapNotSupported 
Class EglBitmapSizeToLarge 
Class EglBitmapNonPowerOfTwo 
Class EglBitmapUnsupportedFormat 
packed record TglBitmapRec4ui 
packed record TglBitmapRec4ub 
packed record TglBitmapRec4ul 
Class TglBitmapFormatDescriptor 
packed record TglBitmapPixelData 
packed record TglBitmapSize 
record TglBitmapFunctionRec 
Class TglBitmap 
Class TglBitmap1D 
Class TglBitmap2D 
Class TglBitmapCubeMap 
Class TglBitmapNormalMap 
+

Functions and Procedures

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
procedure glBitmapSetDefaultDeleteTextureOnFree(const aDeleteTextureOnFree: Boolean);
procedure glBitmapSetDefaultFreeDataAfterGenTexture(const aFreeData: Boolean);
procedure glBitmapSetDefaultMipmap(const aValue: TglBitmapMipMap);
procedure glBitmapSetDefaultFormat(const aFormat: TglBitmapFormat);
procedure glBitmapSetDefaultFilter(const aMin, aMag: Integer);
procedure glBitmapSetDefaultWrap( const S: Cardinal = GL_CLAMP_TO_EDGE; const T: Cardinal = GL_CLAMP_TO_EDGE; const R: Cardinal = GL_CLAMP_TO_EDGE);
procedure glBitmapSetDefaultSwizzle(const r: GLenum = GL_RED; g: GLenum = GL_GREEN; b: GLenum = GL_BLUE; a: GLenum = GL_ALPHA);
function glBitmapGetDefaultDeleteTextureOnFree: Boolean;
function glBitmapGetDefaultFreeDataAfterGenTexture: Boolean;
function glBitmapGetDefaultMipmap: TglBitmapMipMap;
function glBitmapGetDefaultFormat: TglBitmapFormat;
procedure glBitmapGetDefaultFilter(var aMin, aMag: Cardinal);
procedure glBitmapGetDefaultTextureWrap(var S, T, R: Cardinal);
procedure glBitmapGetDefaultSwizzle(var r, g, b, a: GLenum);
function glBitmapSize(X: Integer = -1; Y: Integer = -1): TglBitmapSize;
function glBitmapPosition(X: Integer = -1; Y: Integer = -1): TglBitmapPixelPosition;
function glBitmapRec4ub(const r, g, b, a: Byte): TglBitmapRec4ub;
function glBitmapRec4ui(const r, g, b, a: Cardinal): TglBitmapRec4ui;
function glBitmapRec4ul(const r, g, b, a: QWord): TglBitmapRec4ul;
function glBitmapRec4ubCompare(const r1, r2: TglBitmapRec4ub): Boolean;
function glBitmapRec4uiCompare(const r1, r2: TglBitmapRec4ui): Boolean;
function glBitmapCreateTestTexture(const aFormat: TglBitmapFormat): TglBitmap2D;
+

Types

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TglBitmapFormat = (...);
TglBitmapFileType = (...);
TglBitmapFileTypes = set of TglBitmapFileType;
TglBitmapMipMap = (...);
TglBitmapNormalMapFunc = (...);
PglBitmapPixelData = ˆTglBitmapPixelData;
TglBitmapSizeFields = set of (ffX, ffY);
TglBitmapPixelPosition = TglBitmapSize;
TglBitmapFunction = procedure(var FuncRec: TglBitmapFunctionRec);
+

Constants

+ + + + +
NULL_SIZE: TglBitmapSize = (Fields: []; X: 0; Y: 0);
+

Description

+

Functions and Procedures

+ + + + + +
procedure glBitmapSetDefaultDeleteTextureOnFree(const aDeleteTextureOnFree: Boolean);
+ + + + + +
procedure glBitmapSetDefaultFreeDataAfterGenTexture(const aFreeData: Boolean);
+ + + + + +
procedure glBitmapSetDefaultMipmap(const aValue: TglBitmapMipMap);
+ + + + + +
procedure glBitmapSetDefaultFormat(const aFormat: TglBitmapFormat);
+ + + + + +
procedure glBitmapSetDefaultFilter(const aMin, aMag: Integer);
+ + + + + +
procedure glBitmapSetDefaultWrap( const S: Cardinal = GL_CLAMP_TO_EDGE; const T: Cardinal = GL_CLAMP_TO_EDGE; const R: Cardinal = GL_CLAMP_TO_EDGE);
+ + + + + +
procedure glBitmapSetDefaultSwizzle(const r: GLenum = GL_RED; g: GLenum = GL_GREEN; b: GLenum = GL_BLUE; a: GLenum = GL_ALPHA);
+ + + + + +
function glBitmapGetDefaultDeleteTextureOnFree: Boolean;
+ + + + + +
function glBitmapGetDefaultFreeDataAfterGenTexture: Boolean;
+ + + + + +
function glBitmapGetDefaultMipmap: TglBitmapMipMap;
+ + + + + +
function glBitmapGetDefaultFormat: TglBitmapFormat;
+ + + + + +
procedure glBitmapGetDefaultFilter(var aMin, aMag: Cardinal);
+ + + + + +
procedure glBitmapGetDefaultTextureWrap(var S, T, R: Cardinal);
+ + + + + +
procedure glBitmapGetDefaultSwizzle(var r, g, b, a: GLenum);
+ + + + + +
function glBitmapSize(X: Integer = -1; Y: Integer = -1): TglBitmapSize;
+ + + + + +
function glBitmapPosition(X: Integer = -1; Y: Integer = -1): TglBitmapPixelPosition;
+ + + + + +
function glBitmapRec4ub(const r, g, b, a: Byte): TglBitmapRec4ub;
+ + + + + +
function glBitmapRec4ui(const r, g, b, a: Cardinal): TglBitmapRec4ui;
+ + + + + +
function glBitmapRec4ul(const r, g, b, a: QWord): TglBitmapRec4ul;
+ + + + + +
function glBitmapRec4ubCompare(const r1, r2: TglBitmapRec4ub): Boolean;
+ + + + + +
function glBitmapRec4uiCompare(const r1, r2: TglBitmapRec4ui): Boolean;
+ + + + + +
function glBitmapCreateTestTexture(const aFormat: TglBitmapFormat): TglBitmap2D;
+

Types

+ + + + + +
TglBitmapFormat = (...);
+

+type that describes the format of the data stored in a texture. the name of formats is composed of the following constituents: - multiple channels: - channel (e.g. R, G, B, A or Alpha, Luminance or X (reserved)) - width of the chanel in bit (4, 8, 16, ...) - data type (e.g. ub, us, ui) - number of elements of data types

+
Values
+
    +
  • +tfEmpty = 0:  
  • +
  • +tfAlpha4ub1: 1 x unsigned byte
  • +
  • +tfAlpha8ub1: 1 x unsigned byte
  • +
  • +tfAlpha16us1: 1 x unsigned short
  • +
  • +tfLuminance4ub1: 1 x unsigned byte
  • +
  • +tfLuminance8ub1: 1 x unsigned byte
  • +
  • +tfLuminance16us1: 1 x unsigned short
  • +
  • +tfLuminance4Alpha4ub2: 1 x unsigned byte (lum), 1 x unsigned byte (alpha)
  • +
  • +tfLuminance6Alpha2ub2: 1 x unsigned byte (lum), 1 x unsigned byte (alpha)
  • +
  • +tfLuminance8Alpha8ub2: 1 x unsigned byte (lum), 1 x unsigned byte (alpha)
  • +
  • +tfLuminance12Alpha4us2: 1 x unsigned short (lum), 1 x unsigned short (alpha)
  • +
  • +tfLuminance16Alpha16us2: 1 x unsigned short (lum), 1 x unsigned short (alpha)
  • +
  • +tfR3G3B2ub1: 1 x unsigned byte (3bit red, 3bit green, 2bit blue)
  • +
  • +tfRGBX4us1: 1 x unsigned short (4bit red, 4bit green, 4bit blue, 4bit reserverd)
  • +
  • +tfXRGB4us1: 1 x unsigned short (4bit reserved, 4bit red, 4bit green, 4bit blue)
  • +
  • +tfR5G6B5us1: 1 x unsigned short (5bit red, 6bit green, 5bit blue)
  • +
  • +tfRGB5X1us1: 1 x unsigned short (5bit red, 5bit green, 5bit blue, 1bit reserved)
  • +
  • +tfX1RGB5us1: 1 x unsigned short (1bit reserved, 5bit red, 5bit green, 5bit blue)
  • +
  • +tfRGB8ub3: 1 x unsigned byte (red), 1 x unsigned byte (green), 1 x unsigned byte (blue)
  • +
  • +tfRGBX8ui1: 1 x unsigned int (8bit red, 8bit green, 8bit blue, 8bit reserved)
  • +
  • +tfXRGB8ui1: 1 x unsigned int (8bit reserved, 8bit red, 8bit green, 8bit blue)
  • +
  • +tfRGB10X2ui1: 1 x unsigned int (10bit red, 10bit green, 10bit blue, 2bit reserved)
  • +
  • +tfX2RGB10ui1: 1 x unsigned int (2bit reserved, 10bit red, 10bit green, 10bit blue)
  • +
  • +tfRGB16us3: 1 x unsigned short (red), 1 x unsigned short (green), 1 x unsigned short (blue)
  • +
  • +tfRGBA4us1: 1 x unsigned short (4bit red, 4bit green, 4bit blue, 4bit alpha)
  • +
  • +tfARGB4us1: 1 x unsigned short (4bit alpha, 4bit red, 4bit green, 4bit blue)
  • +
  • +tfRGB5A1us1: 1 x unsigned short (5bit red, 5bit green, 5bit blue, 1bit alpha)
  • +
  • +tfA1RGB5us1: 1 x unsigned short (1bit alpha, 5bit red, 5bit green, 5bit blue)
  • +
  • +tfRGBA8ui1: 1 x unsigned int (8bit red, 8bit green, 8bit blue, 8 bit alpha)
  • +
  • +tfARGB8ui1: 1 x unsigned int (8 bit alpha, 8bit red, 8bit green, 8bit blue)
  • +
  • +tfRGBA8ub4: 1 x unsigned byte (red), 1 x unsigned byte (green), 1 x unsigned byte (blue), 1 x unsigned byte (alpha)
  • +
  • +tfRGB10A2ui1: 1 x unsigned int (10bit red, 10bit green, 10bit blue, 2bit alpha)
  • +
  • +tfA2RGB10ui1: 1 x unsigned int (2bit alpha, 10bit red, 10bit green, 10bit blue)
  • +
  • +tfRGBA16us4: 1 x unsigned short (red), 1 x unsigned short (green), 1 x unsigned short (blue), 1 x unsigned short (alpha)
  • +
  • +tfBGRX4us1: 1 x unsigned short (4bit blue, 4bit green, 4bit red, 4bit reserved)
  • +
  • +tfXBGR4us1: 1 x unsigned short (4bit reserved, 4bit blue, 4bit green, 4bit red)
  • +
  • +tfB5G6R5us1: 1 x unsigned short (5bit blue, 6bit green, 5bit red)
  • +
  • +tfBGR5X1us1: 1 x unsigned short (5bit blue, 5bit green, 5bit red, 1bit reserved)
  • +
  • +tfX1BGR5us1: 1 x unsigned short (1bit reserved, 5bit blue, 5bit green, 5bit red)
  • +
  • +tfBGR8ub3: 1 x unsigned byte (blue), 1 x unsigned byte (green), 1 x unsigned byte (red)
  • +
  • +tfBGRX8ui1: 1 x unsigned int (8bit blue, 8bit green, 8bit red, 8bit reserved)
  • +
  • +tfXBGR8ui1: 1 x unsigned int (8bit reserved, 8bit blue, 8bit green, 8bit red)
  • +
  • +tfBGR10X2ui1: 1 x unsigned int (10bit blue, 10bit green, 10bit red, 2bit reserved)
  • +
  • +tfX2BGR10ui1: 1 x unsigned int (2bit reserved, 10bit blue, 10bit green, 10bit red)
  • +
  • +tfBGR16us3: 1 x unsigned short (blue), 1 x unsigned short (green), 1 x unsigned short (red)
  • +
  • +tfBGRA4us1: 1 x unsigned short (4bit blue, 4bit green, 4bit red, 4bit alpha)
  • +
  • +tfABGR4us1: 1 x unsigned short (4bit alpha, 4bit blue, 4bit green, 4bit red)
  • +
  • +tfBGR5A1us1: 1 x unsigned short (5bit blue, 5bit green, 5bit red, 1bit alpha)
  • +
  • +tfA1BGR5us1: 1 x unsigned short (1bit alpha, 5bit blue, 5bit green, 5bit red)
  • +
  • +tfBGRA8ui1: 1 x unsigned int (8bit blue, 8bit green, 8bit red, 8bit alpha)
  • +
  • +tfABGR8ui1: 1 x unsigned int (8bit alpha, 8bit blue, 8bit green, 8bit red)
  • +
  • +tfBGRA8ub4: 1 x unsigned byte (blue), 1 x unsigned byte (green), 1 x unsigned byte (red), 1 x unsigned byte (alpha)
  • +
  • +tfBGR10A2ui1: 1 x unsigned int (10bit blue, 10bit green, 10bit red, 2bit alpha)
  • +
  • +tfA2BGR10ui1: 1 x unsigned int (2bit alpha, 10bit blue, 10bit green, 10bit red)
  • +
  • +tfBGRA16us4: 1 x unsigned short (blue), 1 x unsigned short (green), 1 x unsigned short (red), 1 x unsigned short (alpha)
  • +
  • +tfDepth16us1: 1 x unsigned short (depth)
  • +
  • +tfDepth24ui1: 1 x unsigned int (depth)
  • +
  • +tfDepth32ui1: 1 x unsigned int (depth)
  • +
  • +tfS3tcDtx1RGBA:  
  • +
  • +tfS3tcDtx3RGBA:  
  • +
  • +tfS3tcDtx5RGBA:  
  • +
+
+ + + + + +
TglBitmapFileType = (...);
+

+Portable Network Graphic file (PNG)

+
Values
+
    +
  • +ftDDS: Direct Draw Surface file (DDS)
  • +
  • +ftTGA: Targa Image File (TGA)
  • +
  • +ftBMP: Windows Bitmap File (BMP)
  • +
  • +ftRAW: glBitmap RAW file format
  • +
+
+ + + + + +
TglBitmapFileTypes = set of TglBitmapFileType;
+ + + + + +
TglBitmapMipMap = (...);
+

+possible mipmap types

+
Values
+
    +
  • +mmNone: no mipmaps
  • +
  • +mmMipmap: normal mipmaps
  • +
  • +mmMipmapGlu: mipmaps generated with glu functions
  • +
+
+ + + + + +
TglBitmapNormalMapFunc = (...);
+

+possible normal map functions

+
Values
+
    +
  • +nm4Samples:  
  • +
  • +nmSobel:  
  • +
  • +nm3x3:  
  • +
  • +nm5x5:  
  • +
+
+ + + + + +
PglBitmapPixelData = ˆTglBitmapPixelData;
+ + + + + +
TglBitmapSizeFields = set of (ffX, ffY);
+ + + + + +
TglBitmapPixelPosition = TglBitmapSize;
+ + + + + +
TglBitmapFunction = procedure(var FuncRec: TglBitmapFunctionRec);
+

+callback to use for converting texture data

+
+

Constants

+ + + + + +
NULL_SIZE: TglBitmapSize = (Fields: []; X: 0; Y: 0);
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/index.html b/doc/index.html new file mode 100644 index 0000000..d165995 --- /dev/null +++ b/doc/index.html @@ -0,0 +1,31 @@ + + + +All Units + + + + + +
+

All Units

+ + + + + + + + + +
NameDescription
glBitmap

glBitmap by Steffen Xonna aka Lossy eX (2003-2008) http://www.opengl24.de/index.php?cat=header&file=glbitmap + +

modified by Delphi OpenGL Community (http://delphigl.com/) (2013) + +

The contents of this file are used with permission, subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/MPL-1.1.html + +

The glBitmap is a Delphi/FPC unit that contains several wrapper classes to manage OpenGL texture objects. Below you can find a list of the main functionality of this classes: - load texture data from file (e.g. BMP, TGA, DDS, PNG, JPEG, ...) - load texture data from several other image objects (e.g. TBitmap, TLazIntfImage, SDL Surface) - save texture data to file (e.g. BMP, TGA, DDS, PNG, JPEG, ...) - save texture data to several other image objects (e.g. TBitmap, TLazIntfImage, SDL Surface) - support for many texture formats (e.g. RGB8, BGR8, RGBA8, BGRA8, ...) - manage texture properties (e.g. Filter, Clamp, Mipmap, ...) - upload texture data to video card - download texture data from video card - manipulate texture data (e.g. add alpha, remove alpha, convert to other format, switch RGB, ...)

+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/legend.html b/doc/legend.html new file mode 100644 index 0000000..e2df3a3 --- /dev/null +++ b/doc/legend.html @@ -0,0 +1,53 @@ + + + +Legend + + + + + +
+

Legend

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MarkerVisibility
Strict PrivateStrict Private
PrivatePrivate
Strict ProtectedStrict Protected
ProtectedProtected
PublicPublic
PublishedPublished
AutomatedAutomated
ImplicitImplicit
+
Generated by PasDoc 0.13.0 on 2014-12-21 15:05:48 + +
diff --git a/doc/pasdoc.css b/doc/pasdoc.css new file mode 100644 index 0000000..81e3138 --- /dev/null +++ b/doc/pasdoc.css @@ -0,0 +1,171 @@ +body, html, table.container { + margin: 0; + padding: 0; +} + +body { + font-family: Verdana,Arial; + color: black; + background-color: white; + font-size: 12px; +} + +table.container { + width: 100%; + border-spacing: 0; +} +table.container td { + vertical-align: top; +} + +td.navigation { + width: 200px; + color: white; + background-color: #787878; + margin: 0; + /* padding-bottom is a little larger, to make navigation column have some + nice height even when td.content column is very small. */ + padding: 1em 1em 100px 1em; +} +td.navigation p { padding: 0; } +td.navigation h2 { margin-top: 0; } + +td.content { padding: 1em; } +td.content h1 { margin-top: 0; } + +img { border:0px; } + +a:link {color:#C91E0C; text-decoration: none; } +a:visited {color:#7E5C31; text-decoration: none; } +a:hover {text-decoration: underline; } +a:active {text-decoration: underline; } + +a.navigation:link { color: white; text-decoration: none; } +a.navigation:visited { color: white; text-decoration: none; } +a.navigation:hover { color: white; font-weight: bold; text-decoration: none; } +a.navigation:active { color: white; text-decoration: none; } + +a.bold:link {color:#C91E0C; text-decoration: none; font-weight:bold; } +a.bold:visited {color:#7E5C31; text-decoration: none; font-weight:bold; } +a.bold:hover {text-decoration: underline; font-weight:bold; } +a.bold:active {text-decoration: underline; font-weight:bold; } + +a.section {color: green; text-decoration: none; font-weight: bold; } +a.section:hover {color: green; text-decoration: underline; font-weight: bold; } + +ul.useslist a:link {color:#C91E0C; text-decoration: none; font-weight:bold; } +ul.useslist a:visited {color:#7E5C31; text-decoration: none; font-weight:bold; } +ul.useslist a:hover {text-decoration: underline; font-weight:bold; } +ul.useslist a:active {text-decoration: underline; font-weight:bold; } + +ul.hierarchy { list-style-type:none; } +ul.hierarchylevel { list-style-type:none; } + +p.unitlink a:link {color:#C91E0C; text-decoration: none; font-weight:bold; } +p.unitlink a:visited {color:#7E5C31; text-decoration: none; font-weight:bold; } +p.unitlink a:hover {text-decoration: underline; font-weight:bold; } +p.unitlink a:active {text-decoration: underline; font-weight:bold; } + +tr.list { background: #FFBF44; } +tr.list2 { background: #FFC982; } +tr.listheader { background: #C91E0C; color: white; } + +table.wide_list { border-spacing:2px; width:100%; } +table.wide_list td { vertical-align:top; padding:4px; } + +table.markerlegend { width:auto; } +table.markerlegend td.legendmarker { text-align:center; } + +table.sections { background:white; } +table.sections td {background:lightgray; } + +table.summary td.itemcode { width:100%; } +table.detail td.itemcode { width:100%; } + +td.itemname {white-space:nowrap; } +td.itemunit {white-space:nowrap; } +td.itemdesc { width:100%; } + +div.nodescription { color:red; } +dl.parameters dt { color:blue; } + +/* Various browsers have various default styles for
, + sometimes ugly for our purposes, so it's best to set things + like font-size and font-weight in out pasdoc.css explicitly. */ +h6.description_section { + /* font-size 100% means that it has the same font size as the + parent element, i.e. normal description text */ + font-size: 100%; + font-weight: bold; + /* By default browsers usually have some large margin-bottom and + margin-top for tags. In our case, margin-bottom is + unnecessary, we want to visually show that description_section + is closely related to content below. In this situation + (where the font size is just as a normal text), smaller bottom + margin seems to look good. */ + margin-bottom: 0em; +} + +/* Style applied to Pascal code in documentation + (e.g. produced by @longcode tag) } */ +span.pascal_string { color: #000080; } +span.pascal_keyword { font-weight: bolder; } +span.pascal_comment { color: #000080; font-style: italic; } +span.pascal_compiler_comment { color: #008000; } +span.pascal_numeric { } +span.pascal_hex { } + +p.hint_directive { color: red; } + +input#search_text { } +input#search_submit_button { } + +acronym.mispelling { background-color: #ffa; } + +/* Actually this reduces vertical space between *every* paragraph + inside list with @itemSpacing(compact). + While we would like to reduce this space only for the + top of 1st and bottom of last paragraph within each list item. + But, well, user probably will not do any paragraph breaks + within a list with @itemSpacing(compact) anyway, so it's + acceptable solution. */ +ul.compact_spacing p { margin-top: 0em; margin-bottom: 0em; } +ol.compact_spacing p { margin-top: 0em; margin-bottom: 0em; } +dl.compact_spacing p { margin-top: 0em; margin-bottom: 0em; } + +/* Style for table created by @table tags: + just some thin border. + + This way we have some borders around the cells + (so cells are visibly separated), but the border + "blends with the background" so it doesn't look too ugly. + Hopefully it looks satisfactory in most cases and for most + people. + + We add padding for cells, otherwise they look too close. + This is normal thing to do when border-collapse is set to + collapse (because this eliminates spacing between cells). +*/ +table.table_tag { border-collapse: collapse; } +table.table_tag td { border: 1pt solid gray; padding: 0.3em; } +table.table_tag th { border: 1pt solid gray; padding: 0.3em; } + +table.detail { + border: 1pt solid gray; + margin-top: 0.3em; + margin-bottom: 0.3em; +} + +.search-form { white-space: nowrap; } +.search-input, .search-button { display: inline-block; vertical-align: middle; } + +/* Do not make extra vertical space at the beginning/end of table cells. + We need ">" selector, to not change paragraphs inside lists inside + table cells. */ +table.table_tag td > p:first-child, +table.table_tag th > p:first-child, + td.itemdesc > p:first-child { margin-top: 0em; } + +table.table_tag td > p:last-child, +table.table_tag th > p:last-child, + td.itemdesc > p:last-child { margin-bottom: 0em; } diff --git a/doc/private.gif b/doc/private.gif new file mode 100644 index 0000000000000000000000000000000000000000..dca4ce267765ccd8c5161c580651f2c5efd779bb GIT binary patch literal 141 zcmZ?wbhEHbRgnXSdyBeP@Y+mp%9Xh zs^ISF8^E9gk_BmGU~*;Q5KwSvU{Lj%q7kTYq=i%1jb(*F;-MBMMKzxp21*XCoWg1% g9ELyphyo#z#^AUAyy`^b`b_^01>Go%m4rY literal 0 HcmV?d00001 diff --git a/doc/protected.gif b/doc/protected.gif new file mode 100644 index 0000000000000000000000000000000000000000..96cc3822b7efa426b3d5c7e5dc5c2fa1d0ca51f3 GIT binary patch literal 141 zcmZ?wbhEHb!{|pQaia%L^B#{0m>RgnXSdyBeP@Y+mp%9Xh zs^ISF8^E9gk_BmGU~*;Q5KwSvU{Lj%q7kTYq=i%1jb(*F;-MBMMKzxp21*XCoWg1% g9ELyphyo#z#^AUAyy`^b`b_^03Pci=>Px# literal 0 HcmV?d00001 diff --git a/doc/published.gif b/doc/published.gif new file mode 100644 index 0000000000000000000000000000000000000000..6ed9af6cd3cd0203a73abe35d9216cd1b99531f9 GIT binary patch literal 141 zcmZ?wbhEHbRgnXSdyBeP@Y+mp%9Xh zs^ISF8^E9gk_BmGU~*;Q5KwSvU{Lj%q7kTYq=i%1jb(*F;-MBMMKzxp21*XCoWg1% g9ELyphyo#z#^AUAyy`^b`b_^048=K`Tzg` literal 0 HcmV?d00001 diff --git a/examples/GrabScreen/GrabScreen.lpi b/examples/GrabScreen/GrabScreen.lpi new file mode 100644 index 0000000..de9d899 --- /dev/null +++ b/examples/GrabScreen/GrabScreen.lpi @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + <UseAppBundle Value="False"/> + <ResourceType Value="res"/> + </General> + <i18n> + <EnableI18N LFM="False"/> + </i18n> + <VersionInfo> + <StringTable ProductVersion=""/> + </VersionInfo> + <BuildModes Count="1"> + <Item1 Name="Default" Default="True"/> + </BuildModes> + <PublishOptions> + <Version Value="2"/> + </PublishOptions> + <RunParams> + <local> + <FormatVersion Value="1"/> + </local> + </RunParams> + <Units Count="4"> + <Unit0> + <Filename Value="GrabScreen.lpr"/> + <IsPartOfProject Value="True"/> + <UnitName Value="GrabScreen"/> + </Unit0> + <Unit1> + <Filename Value="..\dglOpenGL.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="dglOpenGL"/> + </Unit1> + <Unit2> + <Filename Value="..\Helper.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="Helper"/> + </Unit2> + <Unit3> + <Filename Value="..\..\glBitmap.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="glBitmap"/> + </Unit3> + </Units> + </ProjectOptions> + <CompilerOptions> + <Version Value="11"/> + <PathDelim Value="\"/> + <Target> + <Filename Value="GrabScreen"/> + </Target> + <SearchPaths> + <IncludeFiles Value="$(ProjOutDir)"/> + <OtherUnitFiles Value="..;..\.."/> + <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/> + </SearchPaths> + </CompilerOptions> + <Debugging> + <Exceptions Count="3"> + <Item1> + <Name Value="EAbort"/> + </Item1> + <Item2> + <Name Value="ECodetoolError"/> + </Item2> + <Item3> + <Name Value="EFOpenError"/> + </Item3> + </Exceptions> + </Debugging> +</CONFIG> diff --git a/examples/GrabScreen/GrabScreen.lpr b/examples/GrabScreen/GrabScreen.lpr new file mode 100644 index 0000000..c3b7b77 --- /dev/null +++ b/examples/GrabScreen/GrabScreen.lpr @@ -0,0 +1,58 @@ +program SimpleLoadFromFile; + +{$mode objfpc}{$H+} + +uses + {$IFDEF UNIX}{$IFDEF UseCThreads} + cthreads, + {$ENDIF}{$ENDIF} + Classes, Windows, SysUtils, dglOpenGL, glBitmap, Helper; + +var + oglWindow: TOpenGLWindow; + running: Boolean = true; + +function WindowProc(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall; +var + tex: TglBitmap2D; +begin + case Msg of + WM_DESTROY: begin + running := false; + end; + + WM_KEYDOWN: begin + if wParam = VK_RETURN then begin + tex := TglBitmap2D.Create; // create empty texture + try + tex.GrabScreen(0, 0, 800, 600, tfRGB8ub3); // copy current framebuffer content to texture + tex.SaveToFile(ExtractFilePath(ApplicationName) + 'screen.bmp', ftBMP); // save texture to file + WriteLn('screen saved to screen.bmp'); + finally + FreeAndNil(tex); + end; + end; + end; + end; + result := DefWindowProc(hWnd, Msg, wParam, lParam); +end; + +procedure RenderLoop; +begin + glBegin(GL_TRIANGLES); + glColor4f(1, 0, 0, 1); glVertex2f(400, 100); + glColor4f(0, 1, 0, 1); glVertex2f(100, 500); + glColor4f(0, 0, 1, 1); glVertex2f(700, 500); + glEnd; +end; + +begin + oglWindow := CreateOpenGLWindow('GrapScreen (hit enter to grab screen)', 800, 600, @WindowProc); + while running and ProgressMesages do begin + RenderLoop; + SwapBuffers(oglWindow.DC); + end; + DestroyOpenGLWindow(oglWindow); +end. + + diff --git a/examples/GrabScreen/GrabScreen.lps b/examples/GrabScreen/GrabScreen.lps new file mode 100644 index 0000000..dd7a9c5 --- /dev/null +++ b/examples/GrabScreen/GrabScreen.lps @@ -0,0 +1,77 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CONFIG> + <ProjectSession> + <PathDelim Value="\"/> + <Version Value="9"/> + <BuildModes Active="Default"/> + <Units Count="4"> + <Unit0> + <Filename Value="GrabScreen.lpr"/> + <IsPartOfProject Value="True"/> + <UnitName Value="GrabScreen"/> + <IsVisibleTab Value="True"/> + <TopLine Value="15"/> + <CursorPos X="25" Y="30"/> + <UsageCount Value="20"/> + <Loaded Value="True"/> + </Unit0> + <Unit1> + <Filename Value="..\dglOpenGL.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="dglOpenGL"/> + <EditorIndex Value="-1"/> + <UsageCount Value="20"/> + </Unit1> + <Unit2> + <Filename Value="..\Helper.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="Helper"/> + <EditorIndex Value="1"/> + <TopLine Value="37"/> + <CursorPos X="40" Y="36"/> + <UsageCount Value="20"/> + <Loaded Value="True"/> + </Unit2> + <Unit3> + <Filename Value="..\..\glBitmap.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="glBitmap"/> + <EditorIndex Value="2"/> + <TopLine Value="8731"/> + <CursorPos X="9" Y="8903"/> + <UsageCount Value="20"/> + <Loaded Value="True"/> + </Unit3> + </Units> + <JumpHistory Count="7" HistoryIndex="6"> + <Position1> + <Filename Value="GrabScreen.lpr"/> + <Caret Line="14" Column="9"/> + </Position1> + <Position2> + <Filename Value="GrabScreen.lpr"/> + <Caret Line="16" Column="27"/> + </Position2> + <Position3> + <Filename Value="GrabScreen.lpr"/> + <Caret Line="45" Column="106" TopLine="21"/> + </Position3> + <Position4> + <Filename Value="GrabScreen.lpr"/> + <Caret Line="52" Column="18" TopLine="27"/> + </Position4> + <Position5> + <Filename Value="GrabScreen.lpr"/> + <Caret Line="55" Column="6" TopLine="26"/> + </Position5> + <Position6> + <Filename Value="GrabScreen.lpr"/> + <Caret Line="47" Column="46" TopLine="24"/> + </Position6> + <Position7> + <Filename Value="..\Helper.pas"/> + <Caret Line="39" Column="13" TopLine="17"/> + </Position7> + </JumpHistory> + </ProjectSession> +</CONFIG> diff --git a/examples/Helper.pas b/examples/Helper.pas new file mode 100644 index 0000000..5311e5c --- /dev/null +++ b/examples/Helper.pas @@ -0,0 +1,91 @@ +unit Helper; + +{$mode objfpc}{$H+} + +interface + +uses + Classes, SysUtils, Windows, dglOpenGL; + +type + TOpenGLWindow = packed record + LWndClass: TWndClass; + hMainHandle: HWND; + DC: HDC; + RC: HGLRC; + end; + +function CreateOpenGLWindow(const aCaption: String; const aWidth, aHeight: Integer; const aWndProc: WNDPROC): TOpenGLWindow; +function ProgressMesages: Boolean; +procedure DestroyOpenGLWindow(const aWindow: TOpenGLWindow); + +implementation + +function CreateOpenGLWindow(const aCaption: String; const aWidth, aHeight: Integer; const aWndProc: WNDPROC): TOpenGLWindow; +begin + //create the window + result.LWndClass.hInstance := hInstance; + with result.LWndClass do begin + lpszClassName := 'MyWinApiWnd'; + Style := CS_PARENTDC or CS_BYTEALIGNCLIENT; + hIcon := LoadIcon(hInstance,'MAINICON'); + lpfnWndProc := aWndProc; + hbrBackground := COLOR_BTNFACE+1; + hCursor := LoadCursor(0,IDC_ARROW); + end; + RegisterClass(result.LWndClass); + result.hMainHandle := CreateWindow( + result.LWndClass.lpszClassName, + PAnsiChar(aCaption), + WS_CAPTION or WS_MINIMIZEBOX or WS_SYSMENU or WS_VISIBLE, + (GetSystemMetrics(SM_CXSCREEN) - aWidth) div 2, + (GetSystemMetrics(SM_CYSCREEN) - aHeight) div 2, + aWidth, aHeight, 0, 0, hInstance, nil); + + // create and activate rendering context + result.DC := GetDC(result.hMainHandle); + if (result.DC = 0) then begin + WriteLn('unable to get DeviceContext'); + halt; + end; + result.RC := CreateRenderingContext(result.DC, [opDoubleBuffered], 32, 24, 0, 0, 0, 0); + if (result.RC = 0) then begin + WriteLn('unable to create RenderingContext'); + halt; + end; + ActivateRenderingContext(result.DC, result.RC); + + // init OpenGL + glViewport(0, 0, aWidth, aHeight); + glClearColor(0, 0, 0, 0); + glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT); + + glDisable(GL_DEPTH_TEST); + glDisable(GL_CULL_FACE); + + glMatrixMode(GL_PROJECTION); + glLoadIdentity; + glOrtho(0, aWidth, aHeight, 0, -10, 10); + glMatrixMode(GL_MODELVIEW); + glLoadIdentity; +end; + +function ProgressMesages: Boolean; +var + Msg: TMSG; +begin + result := GetMessage(Msg, 0, 0, 0); + if result then begin + TranslateMessage(Msg); + DispatchMessage(Msg); + end; +end; + +procedure DestroyOpenGLWindow(const aWindow: TOpenGLWindow); +begin + DestroyRenderingContext(aWindow.RC); + ReleaseDC(aWindow.hMainHandle, aWindow.DC); +end; + +end. + diff --git a/examples/SimpleLoadFromFile/SimpleLoadFromFile.lpi b/examples/SimpleLoadFromFile/SimpleLoadFromFile.lpi new file mode 100644 index 0000000..cc27760 --- /dev/null +++ b/examples/SimpleLoadFromFile/SimpleLoadFromFile.lpi @@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CONFIG> + <ProjectOptions> + <Version Value="9"/> + <PathDelim Value="\"/> + <General> + <Flags> + <MainUnitHasCreateFormStatements Value="False"/> + <MainUnitHasTitleStatement Value="False"/> + </Flags> + <SessionStorage Value="InProjectDir"/> + <MainUnit Value="0"/> + <Title Value="SimpleLoadFromFile"/> + <UseAppBundle Value="False"/> + <ResourceType Value="res"/> + </General> + <i18n> + <EnableI18N LFM="False"/> + </i18n> + <VersionInfo> + <StringTable ProductVersion=""/> + </VersionInfo> + <BuildModes Count="1"> + <Item1 Name="Default" Default="True"/> + </BuildModes> + <PublishOptions> + <Version Value="2"/> + </PublishOptions> + <RunParams> + <local> + <FormatVersion Value="1"/> + </local> + </RunParams> + <Units Count="4"> + <Unit0> + <Filename Value="SimpleLoadFromFile.lpr"/> + <IsPartOfProject Value="True"/> + </Unit0> + <Unit1> + <Filename Value="..\dglOpenGL.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="dglOpenGL"/> + </Unit1> + <Unit2> + <Filename Value="..\..\glBitmap.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="glBitmap"/> + </Unit2> + <Unit3> + <Filename Value="..\Helper.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="Helper"/> + </Unit3> + </Units> + </ProjectOptions> + <CompilerOptions> + <Version Value="11"/> + <PathDelim Value="\"/> + <Target> + <Filename Value="SimpleLoadFromFile"/> + </Target> + <SearchPaths> + <IncludeFiles Value="$(ProjOutDir)"/> + <OtherUnitFiles Value="..;..\.."/> + <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/> + </SearchPaths> + </CompilerOptions> + <Debugging> + <Exceptions Count="3"> + <Item1> + <Name Value="EAbort"/> + </Item1> + <Item2> + <Name Value="ECodetoolError"/> + </Item2> + <Item3> + <Name Value="EFOpenError"/> + </Item3> + </Exceptions> + </Debugging> +</CONFIG> diff --git a/examples/SimpleLoadFromFile/SimpleLoadFromFile.lpr b/examples/SimpleLoadFromFile/SimpleLoadFromFile.lpr new file mode 100644 index 0000000..cb7cc15 --- /dev/null +++ b/examples/SimpleLoadFromFile/SimpleLoadFromFile.lpr @@ -0,0 +1,56 @@ +program SimpleLoadFromFile; + +{$mode objfpc}{$H+} + +uses + {$IFDEF UNIX}{$IFDEF UseCThreads} + cthreads, + {$ENDIF}{$ENDIF} + Classes, Windows, SysUtils, dglOpenGL, glBitmap, Helper; + +var + oglWindow: TOpenGLWindow; + running: Boolean = true; + tex: TglBitmap2D; + +function WindowProc(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall; +begin + case Msg of + WM_DESTROY: begin + running := false; + end; + end; + result := DefWindowProc(hWnd, Msg, wParam, lParam); +end; + +procedure RenderLoop; +begin + tex.Bind(); + glColor4f(1, 1, 1, 1); + glBegin(GL_QUADS); + glTexCoord2f(0, 0); glVertex2f(100, 100); + glTexCoord2f(1, 0); glVertex2f(700, 100); + glTexCoord2f(1, 1); glVertex2f(700, 500); + glTexCoord2f(0, 1); glVertex2f(100, 500); + glEnd; + tex.Unbind(); +end; + +begin + oglWindow := CreateOpenGLWindow('SimpleLoadFromFile', 800, 600, @WindowProc); + try + // load texture + tex := TglBitmap2D.Create; + tex.LoadFromFile(ExtractFilePath(ApplicationName) + '../textures/BMP_24_RGB8.bmp'); + tex.GenTexture; + + while running and ProgressMesages do begin + RenderLoop; + SwapBuffers(oglWindow.DC); + end; + finally + FreeAndNil(tex); + DestroyOpenGLWindow(oglWindow); + end; +end. + diff --git a/examples/SimpleLoadFromFile/SimpleLoadFromFile.lps b/examples/SimpleLoadFromFile/SimpleLoadFromFile.lps new file mode 100644 index 0000000..84a19dc --- /dev/null +++ b/examples/SimpleLoadFromFile/SimpleLoadFromFile.lps @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CONFIG> + <ProjectSession> + <PathDelim Value="\"/> + <Version Value="9"/> + <BuildModes Active="Default"/> + <Units Count="4"> + <Unit0> + <Filename Value="SimpleLoadFromFile.lpr"/> + <IsPartOfProject Value="True"/> + <IsVisibleTab Value="True"/> + <TopLine Value="22"/> + <UsageCount Value="20"/> + <Loaded Value="True"/> + </Unit0> + <Unit1> + <Filename Value="..\dglOpenGL.pas"/> + <IsPartOfProject Value="True"/> + <UsageCount Value="20"/> + </Unit1> + <Unit2> + <Filename Value="..\..\glBitmap.pas"/> + <IsPartOfProject Value="True"/> + <UsageCount Value="20"/> + </Unit2> + <Unit3> + <Filename Value="..\Helper.pas"/> + <IsPartOfProject Value="True"/> + <UsageCount Value="20"/> + </Unit3> + </Units> + <JumpHistory HistoryIndex="-1"/> + </ProjectSession> +</CONFIG> diff --git a/examples/TextureFromFunction/TextureFromFunction.lpi b/examples/TextureFromFunction/TextureFromFunction.lpi new file mode 100644 index 0000000..3852d10 --- /dev/null +++ b/examples/TextureFromFunction/TextureFromFunction.lpi @@ -0,0 +1,82 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CONFIG> + <ProjectOptions> + <Version Value="9"/> + <PathDelim Value="\"/> + <General> + <Flags> + <MainUnitHasCreateFormStatements Value="False"/> + <MainUnitHasTitleStatement Value="False"/> + </Flags> + <SessionStorage Value="InProjectDir"/> + <MainUnit Value="0"/> + <Title Value="TextureFromFunction"/> + <UseAppBundle Value="False"/> + <ResourceType Value="res"/> + </General> + <i18n> + <EnableI18N LFM="False"/> + </i18n> + <VersionInfo> + <StringTable ProductVersion=""/> + </VersionInfo> + <BuildModes Count="1"> + <Item1 Name="Default" Default="True"/> + </BuildModes> + <PublishOptions> + <Version Value="2"/> + </PublishOptions> + <RunParams> + <local> + <FormatVersion Value="1"/> + </local> + </RunParams> + <Units Count="4"> + <Unit0> + <Filename Value="TextureFromFunction.lpr"/> + <IsPartOfProject Value="True"/> + <UnitName Value="TextureFromFunction"/> + </Unit0> + <Unit1> + <Filename Value="..\dglOpenGL.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="dglOpenGL"/> + </Unit1> + <Unit2> + <Filename Value="..\Helper.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="Helper"/> + </Unit2> + <Unit3> + <Filename Value="..\..\glBitmap.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="glBitmap"/> + </Unit3> + </Units> + </ProjectOptions> + <CompilerOptions> + <Version Value="11"/> + <PathDelim Value="\"/> + <Target> + <Filename Value="TextureFromFunction"/> + </Target> + <SearchPaths> + <IncludeFiles Value="$(ProjOutDir)"/> + <OtherUnitFiles Value="..;..\.."/> + <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/> + </SearchPaths> + </CompilerOptions> + <Debugging> + <Exceptions Count="3"> + <Item1> + <Name Value="EAbort"/> + </Item1> + <Item2> + <Name Value="ECodetoolError"/> + </Item2> + <Item3> + <Name Value="EFOpenError"/> + </Item3> + </Exceptions> + </Debugging> +</CONFIG> diff --git a/examples/TextureFromFunction/TextureFromFunction.lpr b/examples/TextureFromFunction/TextureFromFunction.lpr new file mode 100644 index 0000000..f960c25 --- /dev/null +++ b/examples/TextureFromFunction/TextureFromFunction.lpr @@ -0,0 +1,95 @@ +program SimpleLoadFromFile; + +{$mode objfpc}{$H+} + +uses + {$IFDEF UNIX}{$IFDEF UseCThreads} + cthreads, + {$ENDIF}{$ENDIF} + Classes, Windows, SysUtils, dglOpenGL, glBitmap, Helper; + +var + oglWindow: TOpenGLWindow; + running: Boolean = true; + tex: TglBitmap2D; + +function WindowProc(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall; +begin + case Msg of + WM_DESTROY: begin + running := false; + end; + end; + result := DefWindowProc(hWnd, Msg, wParam, lParam); +end; + +procedure RenderLoop; +begin + tex.Bind(); + glColor4f(1, 1, 1, 1); + glBegin(GL_QUADS); + glTexCoord2f(0, 0); glVertex2f(100, 100); + glTexCoord2f(1, 0); glVertex2f(700, 100); + glTexCoord2f(1, 1); glVertex2f(700, 500); + glTexCoord2f(0, 1); glVertex2f(100, 500); + glEnd; + tex.Unbind(); +end; + +{ function to generate texture data } +procedure GenerateTextureFunc1(var FuncRec: TglBitmapFunctionRec); +var + g1, g2, g3, g4: Single; +begin + g1 := (sin(FuncRec.Position.X / 25) + 1) / 2; // generator function 1: large sinus on x position (0.0 to 1.0) + g2 := (sin(FuncRec.Position.Y / 25) + 1) / 2; // generator function 2: large sinus on y position (0.0 to 1.0) + g3 := FuncRec.Position.X / FuncRec.Size.X; // generator function 3: linear fade on x position (0.0 to 1.0) + g4 := FuncRec.Position.Y / FuncRec.Size.Y; // generator function 4: linear fade on y position (0.0 to 1.0) + + FuncRec.Dest.Data.r := Trunc(g1 * FuncRec.Dest.Range.r); + FuncRec.Dest.Data.g := Trunc(g2 * FuncRec.Dest.Range.g); + FuncRec.Dest.Data.b := Trunc(g3 * FuncRec.Dest.Range.b); + FuncRec.Dest.Data.a := Trunc(g4 * FuncRec.Dest.Range.a); +end; + +{ function to generate texture data } +procedure GenerateTextureFunc2(var FuncRec: TglBitmapFunctionRec); +var + x, y: Single; +begin + x := FuncRec.Position.X / FuncRec.Size.X; + y := FuncRec.Position.Y / FuncRec.Size.Y; + if (x < 0.05) or (x > 0.95) or (y < 0.05) or (y > 0.95) then + begin + FuncRec.Dest.Data := FuncRec.Dest.Range; + end else if (y < 0.333) then begin + FuncRec.Dest.Data := glBitmapRec4ui(0, 0, 0, 0); + end else if (y < 0.666) then begin + FuncRec.Dest.Data := glBitmapRec4ui(FuncRec.Dest.Range.r, 0, 0, 0); + end else begin + FuncRec.Dest.Data := glBitmapRec4ui(FuncRec.Dest.Range.r, FuncRec.Dest.Range.g, 0, 0); + end; +end; + +begin + oglWindow := CreateOpenGLWindow('TextureFromFunction', 800, 600, @WindowProc); + try + // create texture use either GenerateTextureFunc1 or GenerateTextureFunc2 + tex := TglBitmap2D.Create( + glBitmapSize(512, 512), + tfRGBA8ub4, + @GenerateTextureFunc1 + //@GenerateTextureFunc2 + ); + tex.GenTexture; + + while running and ProgressMesages do begin + RenderLoop; + SwapBuffers(oglWindow.DC); + end; + finally + FreeAndNil(tex); + DestroyOpenGLWindow(oglWindow); + end; +end. + diff --git a/examples/TextureFromFunction/TextureFromFunction.lps b/examples/TextureFromFunction/TextureFromFunction.lps new file mode 100644 index 0000000..e3c3fb0 --- /dev/null +++ b/examples/TextureFromFunction/TextureFromFunction.lps @@ -0,0 +1,86 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CONFIG> + <ProjectSession> + <PathDelim Value="\"/> + <Version Value="9"/> + <BuildModes Active="Default"/> + <Units Count="5"> + <Unit0> + <Filename Value="TextureFromFunction.lpr"/> + <IsPartOfProject Value="True"/> + <UnitName Value="TextureFromFunction"/> + <IsVisibleTab Value="True"/> + <TopLine Value="59"/> + <CursorPos X="9" Y="81"/> + <UsageCount Value="20"/> + <Loaded Value="True"/> + </Unit0> + <Unit1> + <Filename Value="..\dglOpenGL.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="dglOpenGL"/> + <EditorIndex Value="2"/> + <UsageCount Value="20"/> + <Loaded Value="True"/> + </Unit1> + <Unit2> + <Filename Value="..\Helper.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="Helper"/> + <EditorIndex Value="3"/> + <UsageCount Value="20"/> + <Loaded Value="True"/> + </Unit2> + <Unit3> + <Filename Value="..\..\glBitmap.pas"/> + <IsPartOfProject Value="True"/> + <UnitName Value="glBitmap"/> + <EditorIndex Value="1"/> + <TopLine Value="852"/> + <CursorPos X="67" Y="869"/> + <UsageCount Value="20"/> + <Loaded Value="True"/> + </Unit3> + <Unit4> + <Filename Value="..\SimpleLoadFromFile\SimpleLoadFromFile.lpr"/> + <UnitName Value="SimpleLoadFromFile"/> + <EditorIndex Value="-1"/> + <TopLine Value="23"/> + <CursorPos Y="56"/> + <UsageCount Value="10"/> + </Unit4> + </Units> + <JumpHistory Count="8" HistoryIndex="6"> + <Position1> + <Filename Value="TextureFromFunction.lpr"/> + </Position1> + <Position2> + <Filename Value="..\..\glBitmap.pas"/> + </Position2> + <Position3> + <Filename Value="TextureFromFunction.lpr"/> + <Caret Line="44" Column="62" TopLine="23"/> + </Position3> + <Position4> + <Filename Value="..\..\glBitmap.pas"/> + <Caret Line="1474" Column="3" TopLine="1445"/> + </Position4> + <Position5> + <Filename Value="..\..\glBitmap.pas"/> + <Caret Line="874" Column="3" TopLine="1340"/> + </Position5> + <Position6> + <Filename Value="TextureFromFunction.lpr"/> + <Caret Line="59" TopLine="29"/> + </Position6> + <Position7> + <Filename Value="TextureFromFunction.lpr"/> + <Caret Line="62" Column="32" TopLine="46"/> + </Position7> + <Position8> + <Filename Value="TextureFromFunction.lpr"/> + <Caret Line="91" TopLine="58"/> + </Position8> + </JumpHistory> + </ProjectSession> +</CONFIG> diff --git a/examples/dglOpenGL.pas b/examples/dglOpenGL.pas new file mode 100644 index 0000000..7772eee --- /dev/null +++ b/examples/dglOpenGL.pas @@ -0,0 +1,20081 @@ +{ ============================================================================ + + OpenGL 4.4 - Headertranslation + Version 4.4 + Date : 2013/07/22 + + Supported environments and targets : + - (Win32) Delphi 4 and up + - (Win32, Win64) Delphi XE2 + - (Win32, Win64, Linux, MacOSX) FreePascal (1.9.3 and up) + +============================================================================== + + Containts the translations of glext.h, gl_1_1.h, glu.h and weglext.h. + It also contains some helperfunctions that were inspired by those + found in Mike Lischke's OpenGL12.pas. + + Copyright (C) DGL-OpenGL2-Portteam + All Rights Reserved + + Obtained through: + Delphi OpenGL Community(DGL) - www.delphigl.com + + Converted and maintained by DGL's GL2.0-Team : + - Sascha Willems - http://www.saschawillems.de + - Steffen Xonna (Lossy eX) - http://www.dev-center.de + Additional input : + - Andrey Gruzdev (Mac OS X patch for XE2 / FPC) + - Lars Middendorf + - Martin Waldegger (Mars) + - Benjamin Rosseaux (BeRo) - http://www.0ok.de + Additional thanks: + sigsegv (libdl.so) + +============================================================================== + You may retrieve the latest version of this file at the Delphi OpenGL + Community home page, located at http://www.delphigl.com/ + + The contents of this file are used with permission, subject to + the Mozilla Public License Version 1.1 (the "License"); you may + not use this file except in compliance with the License. You may + obtain a copy of the License at + http://www.mozilla.org/MPL/MPL-1.1.html + + Software distributed under the License is distributed on an + "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + implied. See the License for the specific language governing + rights and limitations under the License. + +============================================================================== + History : + Version 1.0 Initial Release + Version 1.1 Added PPointer in Tpyessection for compatiblity with Delphi + versions lower than 7 (SW) + Added a function named RaiseLastOSError including a comment + on how to make it run under Delphi versions lower than 7 (SW) + Added some data types according to the GL-Syntax (SW) + Version 1.2 Fixed some problems with getting the addresses of some + Extensions (e.g. glTexImage3D) where the EXT/ARB did work + but not the core-functions (SW) + Version 1.3 A second call to ReadimplementationProperties won't + revert to the default libs anymore (MW) + Libraries now will be released if necessary (MW) + Version 1.3a Small fixes for glSlang-functions (SW) + Version 1.3b Fixed a small bug with GL_ARB_shader_objects, that lead + lead to that extension not loaded correctly (SW) + Version 1.3c more GL 1.5 compliance by FOG_COORD_xx and + ARB less VBO and occlusion query routines (MW) + Version 1.3d Fixed linebreaks (should now be corrected under D5) (SW) + Version 1.4 Changed header to correspond to the OpenGL-Shading + Language specification 1.10 : + - Added new GL_SAMPLER_*-Constants + - Added Constant GL_SHADING_LANGUAGE_VERSION_ARB + - Added Constant GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB + - Added Constant GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB (SW) + Version 1.4a Fixed a missing stdcall for glBindAttribLocationARB (SW) + Version 1.4b Fixed declaration for glUniform*(f/i)vARB (added count) (MW) + glCompileShaderARB changed from function to procedure (MW) + Version 1.5 Added support for FreePascal (BR) + Added type TGLVectorf3/TGLVector3f (SW) + Version 1.6 Added Extension GL_EXT_framebuffer_object (SX) + Version 1.7 Added Extension GL_ARB_fragment_program_shadow (SX) + Added Extension GL_ARB_draw_buffers (SX) + Added Extension GL_ARB_texture_rectangle (SX) + Added Extension GL_ARB_color_buffer_float (SX) + Added Extension GL_ARB_half_float_pixel (SX) + Added Extension GL_ARB_texture_float (SX) + Added Extension GL_ARB_pixel_buffer_object (SX) + Added Extension GL_EXT_depth_bounds_test (SX) + Added Extension GL_EXT_texture_mirror_clamp (SX) + Added Extension GL_EXT_blend_equation_separate (SX) + Added Extension GL_EXT_pixel_buffer_object (SX) + Added Extension GL_EXT_texture_compression_dxt1 (SX) + Added Extension GL_NV_fragment_program_option (SX) + Added Extension GL_NV_fragment_program2 (SX) + Added Extension GL_NV_vertex_program2_option (SX) + Added Extension GL_NV_vertex_program3 (SX) + Version 1.8 Added explicit delegate type definitions (LM) + Added .Net 1.1 Support (LM) + Added .Net overloaded functions (LM) + Added delayed extension loading and stubs (LM) + Added automatic InitOpenGL call in CreateRenderingContext(LM) + Added extra Read_* function (LM) + Version 2.0 fixed some Problem with version string and damn drivers. + String 1.15 identified as OpenGL 1.5 not as OpenGL 1.1 (SX) + Removed unexisting extension GL_ARB_texture_mirror_repeat(SX) + Added Extension WGL_ARB_pixel_format_float (SX) + Added Extension GL_EXT_stencil_clear_tag (SX) + Added Extension GL_EXT_texture_rectangle (SX) + Added Extension GL_EXT_texture_edge_clamp (SX) + Some 1.5 Core Consts added (now completed) (SX) + gluProject need pointer for not .net (SX) + gluUnProject need pointer for not .net (SX) + wglUseFontOutlines* need pointer for not .net (SX) + wglSwapMultipleBuffers need pointer for not .net (SX) + Bug with wglGetExtensionsStringEXT removed + different type for .net (SX) + Added OpenGL 2.0 Core (SX) + Version 2.0.1 fixed some problems with glGetActiveAttrib in 2.0 Core (SX) + fixes some problems with gluProject (SX) + fixes some problems with gluUnProject (SX) + fixes some problems with gluTessVertex (SX) + fixes some problems with gluLoadSamplingMatrices (SX) + Version 2.1 Removed .NET Support (SX) + Better support for Linux (SX) + Better Codeformation (SX) + Added some more Vector/Matrix types (SX) + Added OpenGL 2.1 Core (SX) + Added Extension GL_EXT_packed_depth_stencil (SX) + Added Extension GL_EXT_texture_sRGB (SX) + Added Extension GL_EXT_framebuffer_blit (SX) + Added Extension GL_EXT_framebuffer_multisample (SX) + Added Extension GL_EXT_timer_query (SX) + Added Extension GL_EXT_gpu_program_parameters (SX) + Added Extension GL_EXT_bindable_uniform (SX) + Added Extension GL_EXT_draw_buffers2 (SX) + Added Extension GL_EXT_draw_instanced (SX) + Added Extension GL_EXT_framebuffer_sRGB (SX) + Added Extension GL_EXT_geometry_shader4 (SX) + Added Extension GL_EXT_gpu_shader4 (SX) + Added Extension GL_EXT_packed_float (SX) + Added Extension GL_EXT_texture_array (SX) + Added Extension GL_EXT_texture_buffer_object (SX) + Added Extension GL_EXT_texture_compression_latc (SX) + Added Extension GL_EXT_texture_compression_rgtc (SX) + Added Extension GL_EXT_texture_integer (SX) + Added Extension GL_EXT_texture_shared_exponent (SX) + Added Extension GL_NV_depth_buffer_float (SX) + Added Extension GL_NV_fragment_program4 (SX) + Added Extension GL_NV_framebuffer_multisample_coverage (SX) + Added Extension GL_NV_geometry_program4 (SX) + Added Extension GL_NV_gpu_program4 (SX) + Added Extension GL_NV_parameter_buffer_object (SX) + Added Extension GL_NV_transform_feedback (SX) + Added Extension GL_NV_vertex_program4 (SX) + Version 3.0 fixed some const of GL_EXT_texture_shared_exponent (SX) + possible better support for mac (SX) + Added OpenGL 3.0 Core (SX) + Added Extension GL_ARB_depth_buffer_float (SX) + Added Extension GL_ARB_draw_instanced (SX) + Added Extension GL_ARB_framebuffer_object (SX) + Added Extension GL_ARB_framebuffer_sRGB (SX) + Added Extension GL_ARB_geometry_shader4 (SX) + Added Extension GL_ARB_half_float_vertex (SX) + Added Extension GL_ARB_instanced_arrays (SX) + Added Extension GL_ARB_map_buffer_range (SX) + Added Extension GL_ARB_texture_buffer_object (SX) + Added Extension GL_ARB_texture_compression_rgtc (SX) + Added Extension GL_ARB_texture_rg (SX) + Added Extension GL_ARB_vertex_array_object (SX) + Added Extension GL_NV_conditional_render (SX) + Added Extension GL_NV_present_video (SX) + Added Extension GL_EXT_transform_feedback (SX) + Added Extension GL_EXT_direct_state_access (SX) + Added Extension GL_EXT_vertex_array_bgra (SX) + Added Extension GL_EXT_texture_swizzle (SX) + Added Extension GL_NV_explicit_multisample (SX) + Added Extension GL_NV_transform_feedback2 (SX) + Added Extension WGL_ARB_create_context (SX) + Added Extension WGL_NV_present_video (SX) + Added Extension WGL_NV_video_out (SX) + Added Extension WGL_NV_swap_group (SX) + Added Extension WGL_NV_gpu_affinity (SX) + Added define DGL_TINY_HEADER to suppress automatic + function loading (SX) + glProcedure renamed to dglGetProcAddress and now it's + visible from outside the unit to custom load functions (SX) + dglCheckExtension added to check if an extension exists (SX) + Read_GL_ARB_buffer_object renamed to + Read_GL_ARB_vertex_buffer_object (SX) + Version 3.0.1 fixed an problem with fpc (SX) + Version 3.0.2 fixed an problem with WGL_ARB_create_context (SX) + Version 3.2 Functions from GL_VERSION_3_0 where updated (SX) + Functions from GL_ARB_map_buffer_range where updated (SX) + Functions from GL_NV_present_video where added (SX) + Added consts of GL_ARB_instanced_arrays (SX) + Defines to identify Delphi was changed (prevent for + feature maintenance) (SX) + Added Extension GL_ATI_meminfo (SX) + Added Extension GL_AMD_performance_monitor (SX) + Added Extension GL_AMD_texture_texture4 (SX) + Added Extension GL_AMD_vertex_shader_tesselator (SX) + Added Extension GL_EXT_provoking_vertex (SX) + Added Extension WGL_AMD_gpu_association (SX) + Added OpenGL 3.1 Core (SX) + All deprecated stuff can be disabled if you undef the + define DGL_DEPRECATED (SX) + Added Extension GL_ARB_uniform_buffer_object (SX) + Added Extension GL_ARB_compatibility (SX) + Added Extension GL_ARB_copy_buffer (SX) + Added Extension GL_ARB_shader_texture_lod (SX) + Remove function from GL_NV_present_video (SX) + Added Extension WGL_3DL_stereo_control (SX) + Added Extension GL_EXT_texture_snorm (SX) + Added Extension GL_AMD_draw_buffers_blend (SX) + Added Extension GL_APPLE_texture_range (SX) + Added Extension GL_APPLE_float_pixels (SX) + Added Extension GL_APPLE_vertex_program_evaluators (SX) + Added Extension GL_APPLE_aux_depth_stencil (SX) + Added Extension GL_APPLE_object_purgeable (SX) + Added Extension GL_APPLE_row_bytes (SX) + Added OpenGL 3.2 Core (SX) + Added Extension GL_ARB_depth_clamp (SX) + Added Extension GL_ARB_draw_elements_base_vertex (SX) + Added Extension GL_ARB_fragment_coord_conventions (SX) + Added Extension GL_ARB_provoking_vertex (SX) + Added Extension GL_ARB_seamless_cube_map (SX) + Added Extension GL_ARB_sync (SX) + Added Extension GL_ARB_texture_multisample (SX) + Added Extension GL_ARB_vertex_array_bgra (SX) + Added Extension GL_ARB_draw_buffers_blend (SX) + Added Extension GL_ARB_sample_shading (SX) + Added Extension GL_ARB_texture_cube_map_array (SX) + Added Extension GL_ARB_texture_gather (SX) + Added Extension GL_ARB_texture_query_lod (SX) + Added Extension WGL_ARB_create_context_profile (SX) + Added GLX Core up to Version 1.4 (SX) + Added Extension GLX_ARB_multisample (SX) + Added Extension GLX_ARB_fbconfig_float (SX) + Added Extension GLX_ARB_get_proc_address (SX) + Added Extension GLX_ARB_create_context (SX) + Added Extension GLX_ARB_create_context_profile (SX) + Added Extension GLX_EXT_visual_info (SX) + Added Extension GLX_EXT_visual_rating (SX) + Added Extension GLX_EXT_import_context (SX) + Added Extension GLX_EXT_fbconfig_packed_float (SX) + Added Extension GLX_EXT_framebuffer_sRGB (SX) + Added Extension GLX_EXT_texture_from_pixmap (SX) + Version 3.2.1 Fixed some problems with Delphi < 6 (SX) + Version 3.2.2 Added Extension GL_APPLE_rgb_422 (SX) + Added Extension GL_EXT_separate_shader_objects (SX) + Added Extension GL_NV_video_capture (SX) + Added Extension GL_NV_copy_image (SX) + Added Extension GL_NV_parameter_buffer_object2 (SX) + Added Extension GL_NV_shader_buffer_load (SX) + Added Extension GL_NV_vertex_buffer_unified_memory (SX) + Added Extension GL_NV_texture_barrier (SX) + Variable GL_EXT_texture_snorm will be filled (SX) + Variable GL_APPLE_row_bytes will be filled (SX) + Added Extension WGL_NV_video_capture (SX) + Added Extension WGL_NV_copy_image (SX) + WGL_NV_video_out now named WGL_NV_video_output (SX) + Added Extension GLX_EXT_swap_control (SX) + Version 3.2.3 Fixed an Problem with glGetAttribLocation (SX) + Added const GL_UNIFORM_BUFFER_EXT (SX) + Functions of GL_NV_texture_barrier now will be loaded (SX) + Version 4.0 Changes on Extension GL_ARB_texture_gather (SX) + Changes on Extension GL_NV_shader_buffer_load (SX) + Added OpenGL 3.3 Core (SX) + Added OpenGL 4.0 Core (SX) + Added Extension GL_AMD_shader_stencil_export (SX) + Added Extension GL_AMD_seamless_cubemap_per_texture (SX) + Added Extension GL_ARB_shading_language_include (SX) + Added Extension GL_ARB_texture_compression_bptc (SX) + Added Extension GL_ARB_blend_func_extended (SX) + Added Extension GL_ARB_explicit_attrib_location (SX) + Added Extension GL_ARB_occlusion_query2 (SX) + Added Extension GL_ARB_sampler_objects (SX) + Added Extension GL_ARB_shader_bit_encoding (SX) + Added Extension GL_ARB_texture_rgb10_a2ui (SX) + Added Extension GL_ARB_texture_swizzle (SX) + Added Extension GL_ARB_timer_query (SX) + Added Extension GL_ARB_vertex_type_2_10_10_10_rev (SX) + Added Extension GL_ARB_draw_indirect (SX) + Added Extension GL_ARB_gpu_shader5 (SX) + Added Extension GL_ARB_gpu_shader_fp64 (SX) + Added Extension GL_ARB_shader_subroutine (SX) + Added Extension GL_ARB_tessellation_shader (SX) + Added Extension GL_ARB_texture_buffer_object_rgb32 (SX) + Added Extension GL_ARB_transform_feedback2 (SX) + Added Extension GL_ARB_transform_feedback3 (SX) + Version 4.1 Possible fix some strange linux behavior (SX) + All function uses GL instead of TGL types (SX) + GL_AMD_vertex_shader_tesselator will be read now (SX) + GL_AMD_draw_buffers_blend will be read now (SX) + Changes on glStencilFuncSeparate (GL_2_0) (SX) + Changes on GL_VERSION_3_2 (SX) + Changes on GL_VERSION_3_3 (SX) + Changes on GL_VERSION_4_0 (SX) + Changes on GL_ARB_sample_shading (SX) + Changes on GL_ARB_texture_cube_map_array (SX) + Changes on GL_ARB_gpu_shader5 (SX) + Changes on GL_ARB_transform_feedback3 (SX) + Changes on GL_ARB_sampler_objects (SX) + Changes on GL_ARB_gpu_shader_fp64 (SX) + Changes on GL_APPLE_element_array (SX) + Changes on GL_APPLE_vertex_array_range (SX) + Changes on GL_NV_transform_feedback (SX) + Changes on GL_NV_vertex_buffer_unified_memory (SX) + Changes on GL_EXT_multi_draw_arrays (SX) + Changes on GL_EXT_direct_state_access (SX) + Changes on GL_AMD_performance_monitor (SX) + Changes on GL_AMD_seamless_cubemap_per_texture (SX) + Changes on GL_EXT_geometry_shader4 (SX) + Added OpenGL 4.1 Core (SX) + Added Extension GL_ARB_ES2_compatibility (SX) + Added Extension GL_ARB_get_program_binary (SX) + Added Extension GL_ARB_separate_shader_objects (SX) + Added Extension GL_ARB_shader_precision (SX) + Added Extension GL_ARB_vertex_attrib_64bit (SX) + Added Extension GL_ARB_viewport_array (SX) + Added Extension GL_ARB_cl_event (SX) + Added Extension GL_ARB_debug_output (SX) + Added Extension GL_ARB_robustness (SX) + Added Extension GL_ARB_shader_stencil_export (SX) + Added Extension GL_AMD_conservative_depth (SX) + Added Extension GL_EXT_shader_image_load_store (SX) + Added Extension GL_EXT_vertex_attrib_64bit (SX) + Added Extension GL_NV_gpu_program5 (SX) + Added Extension GL_NV_gpu_shader5 (SX) + Added Extension GL_NV_shader_buffer_store (SX) + Added Extension GL_NV_tessellation_program5 (SX) + Added Extension GL_NV_vertex_attrib_integer_64bit (SX) + Added Extension GL_NV_multisample_coverage (SX) + Added Extension GL_AMD_name_gen_delete (SX) + Added Extension GL_AMD_debug_output (SX) + Added Extension GL_NV_vdpau_interop (SX) + Added Extension GL_AMD_transform_feedback3_lines_triangles (SX) + Added Extension GL_AMD_depth_clamp_separate (SX) + Added Extension GL_EXT_texture_sRGB_decode (SX) + Added Extension WGL_ARB_framebuffer_sRGB (SX) + Added Extension WGL_ARB_create_context_robustness (SX) + Added Extension WGL_EXT_create_context_es2_profile (SX) + Added Extension WGL_NV_multisample_coverage (SX) + Added Extension GLX_ARB_vertex_buffer_object (SX) + Added Extension GLX_ARB_framebuffer_sRGB (SX) + Added Extension GLX_ARB_create_context_robustness (SX) + Added Extension GLX_EXT_create_context_es2_profile (SX) + Version 4.1a Fix for dglGetProcAddress with FPC and linux (def param) (SW) + Version 4.2 Added OpenGL 4.2 Core (SW) + Added Extension GL_ARB_base_instance (SW) + Added Extension GL_ARB_shading_language_420pack (SW) + Added Extension GL_ARB_transform_feedback_instanced (SW) + Added Extension GL_ARB_compressed_texture_pixel_storage (SW) + Added Extension GL_ARB_conservative_depth (SW) + Added Extension GL_ARB_internalformat_query (SW) + Added Extension GL_ARB_map_buffer_alignment (SW) + Added Extension GL_ARB_shader_atomic_counters (SW) + Added Extension GL_ARB_shader_image_load_store (SW) + Added Extension GL_ARB_shading_language_packing (SW) + Added Extension GL_ARB_texture_storage (SW) + Added Extension WGL_NV_DX_interop (SW) + Added Define for WGL_EXT_create_context_es2_profile (SW) + Version 4.2a Added Mac OS X patch by Andrey Gruzdev (SW) + Version 4.3 Added OpenGL 4.3 Core (SW) + Added GL_ARB_arrays_of_arrays (SW) + Added GL_ARB_fragment_layer_viewport (SW) + Added GL_ARB_shader_image_size (SW) + Added GL_ARB_ES3_compatibility (SW) + Added GL_ARB_clear_buffer_object (SW) + Added GL_ARB_compute_shader (SW) + Added GL_ARB_copy_image (SW) + Added GL_KHR_debug (SW) + Added GL_ARB_explicit_uniform_location, (SW) + Added GL_ARB_framebuffer_no_attachments (SW) + Added GL_ARB_internalformat_query2 (SW) + Added GL_ARB_invalidate_subdata (SW) + Added GL_ARB_multi_draw_indirect (SW) + Added GL_ARB_program_interface_query (SW) + Added GL_ARB_robust_buffer_access_behavior (SW) + Added GL_ARB_shader_storage_buffer_object (SW) + Added GL_ARB_stencil_texturing (SW) + Added GL_ARB_texture_buffer_range (SW) + Added GL_ARB_texture_query_levels (SW) + Added GL_ARB_texture_storage_multisample (SW) + Added GL_ARB_texture_view (SW) + Added GL_ARB_vertex_attrib_binding (SW) + Added new vendor-specific extensions (SW) + Added GL_NV_path_rendering (SW) + Added GL_AMD_pinned_memory (SW) + Added GL_AMD_stencil_operation_extended (SW) + Added GL_AMD_vertex_shader_viewport_index (SW) + Added GL_AMD_vertex_shader_layer (SW) + Added GL_NV_bindless_texture (SW) + Added GL_NV_shader_atomic_float (SW) + Added GL_AMD_query_buffer_object (SW) + Added CreateRenderingContextVersion (SW) + Version 4.4 Added ARB_buffer_storage (SW) + Added ARB_clear_texture extension (SW) + Added ARB_enhanced_layouts extension (SW) + Added ARB_multi_bind extension (SW) + Added ARB_query_buffer_object extension (SW) + Added ARB_texture_mirror_clamp_to_edge extension (SW) + Added ARB_texture_stencil8 extension (SW) + Added ARB_vertex_type_10f_11f_11f_rev extension (SW) + Added MAX_VERTEX_ATTRIB_STRIDE stat (SW) + Added missing functions for GL_EXT_direct_state_access (SW) + GL3.0+ uses non-deprecated way of getting extensions + (thanks to frenK) (SW) + Added missing cdecl for TglXGetVisualFromFBConfig (SW) + + +============================================================================== + Header based on glext.h rev 87 (2012-08-06) + Header based on wglext.h rev 24 (2012/01/04) + Header based on glxext.h rev 33 (2012/02/29) (only Core/ARB/EXT) + + This is an important notice for maintaining. Dont remove it. And make sure + to keep it up to date +============================================================================== } + +{$define DGL_DEPRECATED} +{ + This define defines if the header should use deprecated ARB stuff or not. + per Default the Header use deprecated Stuff. +} + + +{.$define DGL_TINY_HEADER} +{ + If you enable the define DGL_TINY_HEADER no function automatically will be loaded if you + call ActivateRenderingContext. This may some bit faster and the smart linker can delete + all non used functions. This will reduce the filesize of your binary file. But in this + case you have to load the functions by yourself. There are two ways to do this. + + 1. You can load whole extension by calling the func Read_Extensionname. But if you do + this it's possible to load functions you dont use. So you have the same "problem" + like before. But it's only an bit smaler. + > Read_GL_ARB_multitexture; + + 2. You are able to load only the functions you exactly need. In this case you are able + to use the variables of the dglOpenGL.pas. So you only need to load the functions + and you can use the header like before. + To do this you have to created and activated an opengl context and than you can load + the needed functions. + > ActivateRenderingContext(fDC, fRC); + > glActiveTextureARB := dglGetProcAddress('glActiveTextureARB'); + > glMultiTexCoord2fARB := dglGetProcAddress('glMultiTexCoord2fARB'); + + So only the function "glActiveTextureARB" and "glMultiTexCoord2fARB" will be loaded. + + + Please notice that the extension variables won't be loaded if this define is active. But + you can call dglCheckExtension to check if any extension exists. You can assign them to + the variables of the dglOpenGL.pas so all code they use this will find them. + + > GL_ARB_shading_language_100 := dglCheckExtension('GL_ARB_shading_language_100'); +} + + +unit dglOpenGL; + +interface + +// defines to configure freepascal +{$IFDEF FPC} + {$MODE Delphi} + + {$IFNDEF WINDOWS} + {$LINKLIB c} + {$ENDIF} +{$ENDIF} + +// known delphi versions +{$IFNDEF FPC} // if freepascal isnt defined + {$IFDEF VER140} // Delphi 6 + {$DEFINE DELPHI6_AND_DOWN} + {$ENDIF} + + {$IFDEF VER130} // Delphi 5 + {$DEFINE DELPHI6_AND_DOWN} + {$ENDIF} + + {$IFDEF VER120} // Delphi 4 + {$DEFINE DELPHI6_AND_DOWN} + {$ENDIF} + + {$IFDEF VER110} // C++ Builder 3 + {$DEFINE DELPHI6_AND_DOWN} + {$ENDIF} + + {$IFDEF VER100} // Delphi 3 + {$DEFINE DELPHI6_AND_DOWN} + {$ENDIF} +{$ENDIF} + +// Options for Delphi < 5 +{$IFDEF DELPHI6_AND_DOWN} + {$A+} +{$ELSE} + {$A4} +{$ENDIF} + +// generell options +{$H+,O+,X+} + +// detecting Windows +{$IFDEF Win32} // Delphi and fpc of 32 Bit Windows + {$DEFINE DGL_WIN} +{$ENDIF} + +{$IFDEF Win64} // Delphi and fpc of 32 Bit Windows + {$DEFINE DGL_WIN} +{$ENDIF} + +// detecting Linux +{$IFDEF linux} // Linux + {$DEFINE DGL_LINUX} +{$ENDIF} + +{$IFDEF DARWIN} // Mac OS X and FPC + {$DEFINE DGL_MAC} +{$ENDIF} + +{$IFDEF DELPHI} // Mac OS X add Delphi +{$IFDEF MACOS} + {$DEFINE DGL_MAC} +{$ENDIF} +{$ENDIF} + + +// detecting 64 Bit CPU +{$IFDEF CPU64} // fpc on 64 bit cpus + {$DEFINE DGL_64BIT} // dgl define for 64 bit +{$ENDIF} + + + +uses + {$IFDEF FPC}{$IFDEF DARWIN}dynlibs,{$ENDIF}{$ENDIF} // LoadLibrary functions + SysUtils + {$IFDEF DGL_WIN}, Windows{$ENDIF} + {$IFDEF DGL_LINUX}, X, XLib, XUtil{$ENDIF} + ; + +type + // Needed for Delphi 6 and less (defined in system.pas for Delphi 7) + PPointer = ^Pointer; + PCardinal = ^Cardinal; + + GLenum = Cardinal; + GLboolean = BYTEBOOL; + GLbitfield = Cardinal; + GLbyte = Shortint; + GLshort = SmallInt; + GLint = Integer; + GLsizei = Integer; + GLubyte = Byte; + GLushort = Word; + GLuint = Cardinal; + GLfloat = Single; + GLclampf = Single; + GLdouble = Double; + GLclampd = Double; + GLvoid = Pointer; + GLint64 = Int64; + GLuint64 = {$IFDEF DELPHI6_AND_DOWN} Int64 {$ELSE} UInt64 {$ENDIF}; + + TGLenum = GLenum; + TGLboolean = GLboolean; + TGLbitfield = GLbitfield; + TGLbyte = GLbyte; + TGLshort = GLshort; + TGLint = GLint; + TGLsizei = GLsizei; + TGLubyte = GLubyte; + TGLushort = GLushort; + TGLuint = GLuint; + TGLfloat = GLfloat; + TGLclampf = GLclampf; + TGLdouble = GLdouble; + TGLclampd = GLclampd; + TGLvoid = GLvoid; + TGLint64 = GLint64; + TGLuint64 = GLuint64; + + PGLboolean = ^GLboolean; + PGLbyte = ^GLbyte; + PGLshort = ^GLshort; + PGLint = ^GLint; + PGLsizei = ^GLsizei; + PGLubyte = ^GLubyte; + PGLushort = ^GLushort; + PGLuint = ^GLuint; + PGLclampf = ^GLclampf; + PGLfloat = ^GLfloat; + PGLdouble = ^GLdouble; + PGLclampd = ^GLclampd; + PGLenum = ^GLenum; + PGLvoid = Pointer; + PPGLvoid = ^PGLvoid; + PGLint64 = ^GLint64; + PGLuint64 = ^GLuint64; + + // GL_NV_half_float + GLhalfNV = WORD; + TGLhalfNV = GLhalfNV; + PGLhalfNV = ^GLhalfNV; + + // GL_ARB_shader_objects + PGLHandleARB = ^GLHandleARB; + GLHandleARB = Integer; + GLcharARB = AnsiChar; + PGLcharARB = PAnsiChar; + PPGLcharARB = ^PGLcharARB; + + // GL_VERSION_1_5 + GLintptr = GLint; + GLsizeiptr = GLsizei; + + // GL_ARB_vertex_buffer_object + GLintptrARB = GLint; + GLsizeiptrARB = GLsizei; + + // GL_VERSION_2_0 + GLHandle = Integer; + PGLchar = PAnsiChar; + PPGLchar = ^PGLChar; + + // GL_EXT_timer_query + GLint64EXT = Int64; + TGLint64EXT = GLint64EXT; + PGLint64EXT = ^GLint64EXT; + + GLuint64EXT = GLuint64; + TGLuint64EXT = GLuint64EXT; + PGLuint64EXT = ^GLuint64EXT; + + // WGL_ARB_pbuffer + HPBUFFERARB = THandle; + + // WGL_EXT_pbuffer + HPBUFFEREXT = THandle; + + // WGL_NV_present_video + PHVIDEOOUTPUTDEVICENV = ^HVIDEOOUTPUTDEVICENV; + HVIDEOOUTPUTDEVICENV = THandle; + + // WGL_NV_video_output + PHPVIDEODEV = ^HPVIDEODEV; + HPVIDEODEV = THandle; + + // WGL_NV_gpu_affinity + PHPGPUNV = ^HPGPUNV; + PHGPUNV = ^HGPUNV; + + // WGL_NV_video_capture + HVIDEOINPUTDEVICENV = THandle; + PHVIDEOINPUTDEVICENV = ^HVIDEOINPUTDEVICENV; + + HPGPUNV = THandle; + HGPUNV = THandle; + + // GL_ARB_sync + GLsync = Pointer; + + // GL_ARB_cl_event + { These incomplete types let us declare types compatible with OpenCL's cl_context and cl_event } + _cl_context = record end; + _cl_event = record end; + p_cl_context = ^_cl_context; + p_cl_event = ^_cl_event; + + // GL_ARB_debug_output + TglDebugProcARB = procedure (source: GLenum; type_: GLenum; id: GLuint; severity: GLenum; length: GLsizei; const message_: PGLchar; userParam: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_AMD_debug_output + TglDebugProcAMD = procedure (id: GLuint; category: GLenum; severity: GLenum; length: GLsizei; const message_: PGLchar; userParam: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // (4.3) GL_KHR_debug + TglDebugProc = procedure(source : GLEnum; type_ : GLEnum; id : GLUInt; severity : GLUInt; length : GLsizei; const message_ : PGLCHar; userParam : PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_vdpau_interop + GLvdpauSurfaceNV = GLintptr; + PGLvdpauSurfaceNV = ^GLvdpauSurfaceNV; + + + // GLX + {$IFDEF DGL_LINUX} + GLXContext = Pointer; + GLXContextID = TXID; + GLXDrawable = TXID; + GLXFBConfig = Pointer; + GLXPbuffer = TXID; + GLXPixmap = TXID; + GLXWindow = TXID; + + Window = TXID; + Colormap = TXID; + Pixmap = TXID; + Font = TXID; + {$ENDIF} + + // Datatypes corresponding to GL's types TGL(name)(type)(count) + TGLVectorub2 = array[0..1] of GLubyte; + TGLVectori2 = array[0..1] of GLint; + TGLVectorf2 = array[0..1] of GLfloat; + TGLVectord2 = array[0..1] of GLdouble; + TGLVectorp2 = array[0..1] of Pointer; + + TGLVectorub3 = array[0..2] of GLubyte; + TGLVectori3 = array[0..2] of GLint; + TGLVectorf3 = array[0..2] of GLfloat; + TGLVectord3 = array[0..2] of GLdouble; + TGLVectorp3 = array[0..2] of Pointer; + + TGLVectorub4 = array[0..3] of GLubyte; + TGLVectori4 = array[0..3] of GLint; + TGLVectorf4 = array[0..3] of GLfloat; + TGLVectord4 = array[0..3] of GLdouble; + TGLVectorp4 = array[0..3] of Pointer; + + TGLArrayf4 = TGLVectorf4; + TGLArrayf3 = TGLVectorf3; + TGLArrayd3 = TGLVectord3; + TGLArrayi4 = TGLVectori4; + TGLArrayp4 = TGLVectorp4; + + TGlMatrixub3 = array[0..2, 0..2] of GLubyte; + TGlMatrixi3 = array[0..2, 0..2] of GLint; + TGLMatrixf3 = array[0..2, 0..2] of GLfloat; + TGLMatrixd3 = array[0..2, 0..2] of GLdouble; + + TGlMatrixub4 = array[0..3, 0..3] of GLubyte; + TGlMatrixi4 = array[0..3, 0..3] of GLint; + TGLMatrixf4 = array[0..3, 0..3] of GLfloat; + TGLMatrixd4 = array[0..3, 0..3] of GLdouble; + + TGLVector3f = TGLVectorf3; + + // Datatypes corresponding to OpenGL12.pas for easy porting + TVector3d = TGLVectord3; + + TVector4i = TGLVectori4; + TVector4f = TGLVectorf4; + TVector4p = TGLVectorp4; + + TMatrix4f = TGLMatrixf4; + TMatrix4d = TGLMatrixd4; + + PGLMatrixd4 = ^TGLMatrixd4; + PVector4i = ^TVector4i; + + + +{$IFDEF FPC} + TRect = packed record + Left, Top, Right, Bottom: Longint; + end; +{$ENDIF} + + + PGPU_DEVICE = ^GPU_DEVICE; + GPU_DEVICE = record + cb: DWORD; + DeviceName: array [0..31] of AnsiChar; + DeviceString: array [0..127] of AnsiChar; + Flags: DWORD; + rcVirtualScreen: TRect; + end; + + +type +{$IFDEF FPC} + {$IFDEF DGL_WIN} + PWGLSwap = ^TWGLSwap; + {$EXTERNALSYM _WGLSWAP} + _WGLSWAP = packed record + hdc: HDC; + uiFlags: UINT; + end; + + TWGLSwap = _WGLSWAP; + {$EXTERNALSYM WGLSWAP} + WGLSWAP = _WGLSWAP; + + {$ENDIF} +{$ENDIF} + + // GLU types + TGLUNurbs = record + end; + TGLUQuadric = record + end; + TGLUTesselator = record + end; + PGLUNurbs = ^TGLUNurbs; + PGLUQuadric = ^TGLUQuadric; + PGLUTesselator = ^TGLUTesselator; + // backwards compatibility + TGLUNurbsObj = TGLUNurbs; + TGLUQuadricObj = TGLUQuadric; + TGLUTesselatorObj = TGLUTesselator; + TGLUTriangulatorObj = TGLUTesselator; + PGLUNurbsObj = PGLUNurbs; + PGLUQuadricObj = PGLUQuadric; + PGLUTesselatorObj = PGLUTesselator; + PGLUTriangulatorObj = PGLUTesselator; + + // GLUQuadricCallback + TGLUQuadricErrorProc = procedure(errorCode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + // GLUTessCallback + TGLUTessBeginProc = procedure(AType: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TGLUTessEdgeFlagProc = procedure(Flag: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TGLUTessVertexProc = procedure(VertexData: Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TGLUTessEndProc = procedure; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TGLUTessErrorProc = procedure(ErrNo: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TGLUTessCombineProc = procedure(Coords: TGLArrayd3; VertexData: TGLArrayp4; Weight: TGLArrayf4; OutData: PPointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TGLUTessBeginDataProc = procedure(AType: GLenum; UserData: Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TGLUTessEdgeFlagDataProc = procedure(Flag: GLboolean; UserData: Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TGLUTessVertexDataProc = procedure(VertexData: Pointer; UserData: Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TGLUTessEndDataProc = procedure(UserData: Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TGLUTessErrorDataProc = procedure(ErrNo: GLenum; UserData: Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TGLUTessCombineDataProc = procedure(Coords: TGLArrayd3; VertexData: TGLArrayp4; Weight: TGLArrayf4; OutData: PPointer; UserData: Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + // GLUNurbsCallback + TGLUNurbsErrorProc = procedure(ErrorCode: GLEnum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + +var + GL_VERSION_1_0, + GL_VERSION_1_1, + GL_VERSION_1_2, + GL_VERSION_1_3, + GL_VERSION_1_4, + GL_VERSION_1_5, + GL_VERSION_2_0, + GL_VERSION_2_1, + GL_VERSION_3_0, + GL_VERSION_3_1, + GL_VERSION_3_2, + GL_VERSION_3_3, + GL_VERSION_4_0, + GL_VERSION_4_1, + GL_VERSION_4_2, + GL_VERSION_4_3, + GL_VERSION_4_4, + GLU_VERSION_1_1, + GLU_VERSION_1_2, + GLU_VERSION_1_3, + GL_3DFX_multisample, + GL_3DFX_tbuffer, + GL_3DFX_texture_compression_FXT1, + GL_APPLE_client_storage, + GL_APPLE_element_array, + GL_APPLE_fence, + GL_APPLE_specular_vector, + GL_APPLE_transform_hint, + GL_APPLE_vertex_array_object, + GL_APPLE_vertex_array_range, + GL_APPLE_ycbcr_422, + GL_APPLE_texture_range, + GL_APPLE_float_pixels, + GL_APPLE_vertex_program_evaluators, + GL_APPLE_aux_depth_stencil, + GL_APPLE_object_purgeable, + GL_APPLE_row_bytes, + GL_APPLE_rgb_422, + GL_ARB_depth_texture, + GL_ARB_fragment_program, + GL_ARB_imaging, + GL_ARB_matrix_palette, + GL_ARB_multisample, + GL_ARB_multitexture, + GL_ARB_point_parameters, + GL_ARB_shadow, + GL_ARB_shadow_ambient, + GL_ARB_texture_border_clamp, + GL_ARB_texture_compression, + GL_ARB_texture_cube_map, + GL_ARB_texture_env_add, + GL_ARB_texture_env_combine, + GL_ARB_texture_env_crossbar, + GL_ARB_texture_env_dot3, + GL_ARB_texture_mirrored_repeat, + GL_ARB_transpose_matrix, + GL_ARB_vertex_blend, + GL_ARB_vertex_buffer_object, + GL_ARB_vertex_program, + GL_ARB_window_pos, + GL_ARB_shader_objects, + GL_ARB_vertex_shader, + GL_ARB_fragment_shader, + GL_ARB_shading_language_100, + GL_ARB_occlusion_query, + GL_ARB_texture_non_power_of_two, + GL_ARB_point_sprite, + GL_ARB_fragment_program_shadow, + GL_ARB_draw_buffers, + GL_ARB_texture_rectangle, + GL_ARB_color_buffer_float, + GL_ARB_half_float_pixel, + GL_ARB_texture_float, + GL_ARB_pixel_buffer_object, + GL_ARB_depth_buffer_float, + GL_ARB_draw_instanced, + GL_ARB_framebuffer_object, + GL_ARB_framebuffer_sRGB, + GL_ARB_geometry_shader4, + GL_ARB_half_float_vertex, + GL_ARB_instanced_arrays, + GL_ARB_map_buffer_range, + GL_ARB_texture_buffer_object, + GL_ARB_texture_compression_rgtc, + GL_ARB_texture_rg, + GL_ARB_vertex_array_object, + GL_ARB_uniform_buffer_object, + GL_ARB_compatibility, + GL_ARB_copy_buffer, + GL_ARB_shader_texture_lod, + GL_ARB_depth_clamp, + GL_ARB_draw_elements_base_vertex, + GL_ARB_fragment_coord_conventions, + GL_ARB_provoking_vertex, + GL_ARB_seamless_cube_map, + GL_ARB_sync, + GL_ARB_texture_multisample, + GL_ARB_vertex_array_bgra, + GL_ARB_draw_buffers_blend, + GL_ARB_sample_shading, + GL_ARB_texture_cube_map_array, + GL_ARB_texture_gather, + GL_ARB_texture_query_lod, + GL_ARB_shading_language_include, + GL_ARB_texture_compression_bptc, + GL_ARB_blend_func_extended, + GL_ARB_explicit_attrib_location, + GL_ARB_occlusion_query2, + GL_ARB_sampler_objects, + GL_ARB_shader_bit_encoding, + GL_ARB_texture_rgb10_a2ui, + GL_ARB_texture_swizzle, + GL_ARB_timer_query, + GL_ARB_vertex_type_2_10_10_10_rev, + GL_ARB_draw_indirect, + GL_ARB_gpu_shader5, + GL_ARB_gpu_shader_fp64, + GL_ARB_shader_subroutine, + GL_ARB_tessellation_shader, + GL_ARB_texture_buffer_object_rgb32, + GL_ARB_transform_feedback2, + GL_ARB_transform_feedback3, + GL_ARB_ES2_compatibility, + GL_ARB_get_program_binary, + GL_ARB_separate_shader_objects, + GL_ARB_shader_precision, + GL_ARB_vertex_attrib_64bit, + GL_ARB_viewport_array, + + // GL 4.2 + GL_ARB_base_instance, + GL_ARB_shading_language_420pack, + GL_ARB_transform_feedback_instanced, + GL_ARB_compressed_texture_pixel_storage, + GL_ARB_conservative_depth, + GL_ARB_internalformat_query, + GL_ARB_map_buffer_alignment, + GL_ARB_shader_atomic_counters, + GL_ARB_shader_image_load_store, + GL_ARB_shading_language_packing, + GL_ARB_texture_storage, + // END GL 4.2 + + // GL 4.3 + GL_ARB_arrays_of_arrays, + GL_ARB_fragment_layer_viewport, + GL_ARB_shader_image_size, + GL_ARB_ES3_compatibility, + GL_ARB_clear_buffer_object, + GL_ARB_compute_shader, + GL_ARB_copy_image, + GL_KHR_debug, + GL_ARB_explicit_uniform_location, + GL_ARB_framebuffer_no_attachments, + GL_ARB_internalformat_query2, + GL_ARB_invalidate_subdata, + GL_ARB_multi_draw_indirect, + GL_ARB_program_interface_query, + GL_ARB_robust_buffer_access_behavior, + GL_ARB_shader_storage_buffer_object, + GL_ARB_stencil_texturing, + GL_ARB_texture_buffer_range, + GL_ARB_texture_query_levels, + GL_ARB_texture_storage_multisample, + GL_ARB_texture_view, + GL_ARB_vertex_attrib_binding, + GL_NV_path_rendering, + GL_AMD_pinned_memory, + GL_AMD_stencil_operation_extended, + GL_AMD_vertex_shader_viewport_index, + GL_AMD_vertex_shader_layer, + GL_NV_bindless_texture, + GL_NV_shader_atomic_float, + GL_AMD_query_buffer_object, + // END GL 4.3 + + // GL 4.4 + GL_ARB_buffer_storage, + GL_ARB_clear_texture, + GL_ARB_enhanced_layouts, + GL_ARB_multi_bind, + GL_ARB_query_buffer_object, + GL_ARB_texture_mirror_clamp_to_edge, + GL_ARB_texture_stencil8, + GL_ARB_vertex_type_10f_11f_11f_rev, + // END 4.4 + + GL_ARB_cl_event, + GL_ARB_debug_output, + GL_ARB_robustness, + GL_ARB_shader_stencil_export, + GL_ATI_draw_buffers, + GL_ATI_element_array, + GL_ATI_envmap_bumpmap, + GL_ATI_fragment_shader, + GL_ATI_map_object_buffer, + GL_ATI_pn_triangles, + GL_ATI_separate_stencil, + GL_ATI_text_fragment_shader, + GL_ATI_texture_env_combine3, + GL_ATI_texture_float, + GL_ATI_texture_mirror_once, + GL_ATI_vertex_array_object, + GL_ATI_vertex_attrib_array_object, + GL_ATI_vertex_streams, + GL_ATI_meminfo, + GL_AMD_performance_monitor, + GL_AMD_texture_texture4, + GL_AMD_vertex_shader_tesselator, + GL_AMD_draw_buffers_blend, + GL_AMD_shader_stencil_export, + GL_AMD_seamless_cubemap_per_texture, + GL_AMD_conservative_depth, + GL_AMD_name_gen_delete, + GL_AMD_debug_output, + GL_AMD_transform_feedback3_lines_triangles, + GL_AMD_depth_clamp_separate, + GL_EXT_422_pixels, + GL_EXT_abgr, + GL_EXT_bgra, + GL_EXT_blend_color, + GL_EXT_blend_func_separate, + GL_EXT_blend_logic_op, + GL_EXT_blend_minmax, + GL_EXT_blend_subtract, + GL_EXT_clip_volume_hint, + GL_EXT_cmyka, + GL_EXT_color_matrix, + GL_EXT_color_subtable, + GL_EXT_compiled_vertex_array, + GL_EXT_convolution, + GL_EXT_coordinate_frame, + GL_EXT_copy_texture, + GL_EXT_cull_vertex, + GL_EXT_draw_range_elements, + GL_EXT_fog_coord, + GL_EXT_framebuffer_object, + GL_EXT_histogram, + GL_EXT_index_array_formats, + GL_EXT_index_func, + GL_EXT_index_material, + GL_EXT_index_texture, + GL_EXT_light_texture, + GL_EXT_misc_attribute, + GL_EXT_multi_draw_arrays, + GL_EXT_multisample, + GL_EXT_packed_pixels, + GL_EXT_paletted_texture, + GL_EXT_pixel_transform, + GL_EXT_pixel_transform_color_table, + GL_EXT_point_parameters, + GL_EXT_polygon_offset, + GL_EXT_rescale_normal, + GL_EXT_secondary_color, + GL_EXT_separate_specular_color, + GL_EXT_shadow_funcs, + GL_EXT_shared_texture_palette, + GL_EXT_stencil_two_side, + GL_EXT_stencil_wrap, + GL_EXT_subtexture, + GL_EXT_texture, + GL_EXT_texture3D, + GL_EXT_texture_compression_s3tc, + GL_EXT_texture_cube_map, + GL_EXT_texture_edge_clamp, + GL_EXT_texture_env_add, + GL_EXT_texture_env_combine, + GL_EXT_texture_env_dot3, + GL_EXT_texture_filter_anisotropic, + GL_EXT_texture_lod_bias, + GL_EXT_texture_object, + GL_EXT_texture_perturb_normal, + GL_EXT_texture_rectangle, + GL_EXT_vertex_array, + GL_EXT_vertex_shader, + GL_EXT_vertex_weighting, + GL_EXT_depth_bounds_test, + GL_EXT_texture_mirror_clamp, + GL_EXT_blend_equation_separate, + GL_EXT_pixel_buffer_object, + GL_EXT_texture_compression_dxt1, + GL_EXT_stencil_clear_tag, + GL_EXT_packed_depth_stencil, + GL_EXT_texture_sRGB, + GL_EXT_framebuffer_blit, + GL_EXT_framebuffer_multisample, + GL_EXT_timer_query, + GL_EXT_gpu_program_parameters, + GL_EXT_bindable_uniform, + GL_EXT_draw_buffers2, + GL_EXT_draw_instanced, + GL_EXT_framebuffer_sRGB, + GL_EXT_geometry_shader4, + GL_EXT_gpu_shader4, + GL_EXT_packed_float, + GL_EXT_texture_array, + GL_EXT_texture_buffer_object, + GL_EXT_texture_compression_latc, + GL_EXT_texture_compression_rgtc, + GL_EXT_texture_integer, + GL_EXT_texture_shared_exponent, + GL_EXT_transform_feedback, + GL_EXT_direct_state_access, + GL_EXT_vertex_array_bgra, + GL_EXT_texture_swizzle, + GL_EXT_provoking_vertex, + GL_EXT_texture_snorm, + GL_EXT_separate_shader_objects, + GL_EXT_shader_image_load_store, + GL_EXT_vertex_attrib_64bit, + GL_EXT_texture_sRGB_decode, + GL_FfdMaskSGIX, + GL_HP_convolution_border_modes, + GL_HP_image_transform, + GL_HP_occlusion_test, + GL_HP_texture_lighting, + GL_IBM_cull_vertex, + GL_IBM_multimode_draw_arrays, + GL_IBM_rasterpos_clip, + GL_IBM_texture_mirrored_repeat, + GL_IBM_vertex_array_lists, + GL_INGR_blend_func_separate, + GL_INGR_color_clamp, + GL_INGR_interlace_read, + GL_INGR_palette_buffer, + GL_INTEL_parallel_arrays, + GL_INTEL_texture_scissor, + GL_MESA_resize_buffers, + GL_MESA_window_pos, + GL_NV_blend_square, + GL_NV_copy_depth_to_color, + GL_NV_depth_clamp, + GL_NV_evaluators, + GL_NV_fence, + GL_NV_float_buffer, + GL_NV_fog_distance, + GL_NV_fragment_program, + GL_NV_half_float, + GL_NV_light_max_exponent, + GL_NV_multisample_filter_hint, + GL_NV_occlusion_query, + GL_NV_packed_depth_stencil, + GL_NV_pixel_data_range, + GL_NV_point_sprite, + GL_NV_primitive_restart, + GL_NV_register_combiners, + GL_NV_register_combiners2, + GL_NV_texgen_emboss, + GL_NV_texgen_reflection, + GL_NV_texture_compression_vtc, + GL_NV_texture_env_combine4, + GL_NV_texture_expand_normal, + GL_NV_texture_rectangle, + GL_NV_texture_shader, + GL_NV_texture_shader2, + GL_NV_texture_shader3, + GL_NV_vertex_array_range, + GL_NV_vertex_array_range2, + GL_NV_vertex_program, + GL_NV_vertex_program1_1, + GL_NV_vertex_program2, + GL_NV_fragment_program_option, + GL_NV_fragment_program2, + GL_NV_vertex_program2_option, + GL_NV_vertex_program3, + GL_NV_depth_buffer_float, + GL_NV_fragment_program4, + GL_NV_framebuffer_multisample_coverage, + GL_NV_geometry_program4, + GL_NV_gpu_program4, + GL_NV_parameter_buffer_object, + GL_NV_transform_feedback, + GL_NV_vertex_program4, + GL_NV_conditional_render, + GL_NV_present_video, + GL_NV_explicit_multisample, + GL_NV_transform_feedback2, + GL_NV_video_capture, + GL_NV_copy_image, + GL_NV_parameter_buffer_object2, + GL_NV_shader_buffer_load, + GL_NV_vertex_buffer_unified_memory, + GL_NV_gpu_program5, + GL_NV_gpu_shader5, + GL_NV_shader_buffer_store, + GL_NV_tessellation_program5, + GL_NV_vertex_attrib_integer_64bit, + GL_NV_multisample_coverage, + GL_NV_vdpau_interop, + GL_NV_texture_barrier, + GL_OML_interlace, + GL_OML_resample, + GL_OML_subsample, + GL_PGI_misc_hints, + GL_PGI_vertex_hints, + GL_REND_screen_coordinates, + GL_S3_s3tc, + GL_SGIS_detail_texture, + GL_SGIS_fog_function, + GL_SGIS_generate_mipmap, + GL_SGIS_multisample, + GL_SGIS_pixel_texture, + GL_SGIS_point_line_texgen, + GL_SGIS_point_parameters, + GL_SGIS_sharpen_texture, + GL_SGIS_texture4D, + GL_SGIS_texture_border_clamp, + GL_SGIS_texture_color_mask, + GL_SGIS_texture_edge_clamp, + GL_SGIS_texture_filter4, + GL_SGIS_texture_lod, + GL_SGIS_texture_select, + GL_SGIX_async, + GL_SGIX_async_histogram, + GL_SGIX_async_pixel, + GL_SGIX_blend_alpha_minmax, + GL_SGIX_calligraphic_fragment, + GL_SGIX_clipmap, + GL_SGIX_convolution_accuracy, + GL_SGIX_depth_pass_instrument, + GL_SGIX_depth_texture, + GL_SGIX_flush_raster, + GL_SGIX_fog_offset, + GL_SGIX_fog_scale, + GL_SGIX_fragment_lighting, + GL_SGIX_framezoom, + GL_SGIX_igloo_interface, + GL_SGIX_impact_pixel_texture, + GL_SGIX_instruments, + GL_SGIX_interlace, + GL_SGIX_ir_instrument1, + GL_SGIX_list_priority, + GL_SGIX_pixel_texture, + GL_SGIX_pixel_tiles, + GL_SGIX_polynomial_ffd, + GL_SGIX_reference_plane, + GL_SGIX_resample, + GL_SGIX_scalebias_hint, + GL_SGIX_shadow, + GL_SGIX_shadow_ambient, + GL_SGIX_sprite, + GL_SGIX_subsample, + GL_SGIX_tag_sample_buffer, + GL_SGIX_texture_add_env, + GL_SGIX_texture_coordinate_clamp, + GL_SGIX_texture_lod_bias, + GL_SGIX_texture_multi_buffer, + GL_SGIX_texture_scale_bias, + GL_SGIX_texture_select, + GL_SGIX_vertex_preclip, + GL_SGIX_ycrcb, + GL_SGIX_ycrcb_subsample, + GL_SGIX_ycrcba, + GL_SGI_color_matrix, + GL_SGI_color_table, + GL_SGI_depth_pass_instrument, + GL_SGI_texture_color_table, + GL_SUNX_constant_data, + GL_SUN_convolution_border_modes, + GL_SUN_global_alpha, + GL_SUN_mesh_array, + GL_SUN_slice_accum, + GL_SUN_triangle_list, + GL_SUN_vertex, + + GL_WIN_phong_shading, + GL_WIN_specular_fog, + WGL_3DFX_multisample, + WGL_ARB_buffer_region, + WGL_ARB_extensions_string, + WGL_ARB_make_current_read, + WGL_ARB_multisample, + WGL_ARB_pbuffer, + WGL_ARB_pixel_format, + WGL_ARB_pixel_format_float, + WGL_ARB_render_texture, + WGL_ARB_create_context, + WGL_ARB_create_context_profile, + WGL_ARB_framebuffer_sRGB, + WGL_ARB_create_context_robustness, + WGL_ATI_pixel_format_float, + WGL_AMD_gpu_association, + WGL_EXT_depth_float, + WGL_EXT_display_color_table, + WGL_EXT_extensions_string, + WGL_EXT_make_current_read, + WGL_EXT_multisample, + WGL_EXT_pbuffer, + WGL_EXT_pixel_format, + WGL_EXT_swap_control, + WGL_EXT_create_context_es2_profile, + WGL_I3D_digital_video_control, + WGL_I3D_gamma, + WGL_I3D_genlock, + WGL_I3D_image_buffer, + WGL_I3D_swap_frame_lock, + WGL_I3D_swap_frame_usage, + WGL_NV_float_buffer, + WGL_NV_render_depth_texture, + WGL_NV_render_texture_rectangle, + WGL_NV_vertex_array_range, + WGL_NV_present_video, + WGL_NV_video_output, + WGL_NV_swap_group, + WGL_NV_gpu_affinity, + WGL_NV_video_capture, + WGL_NV_copy_image, + WGL_NV_multisample_coverage, + WGL_NV_DX_interop, + WGL_OML_sync_control, + WGL_3DL_stereo_control, + WIN_draw_range_elements, + WIN_swap_hint, + +// GLX_VERSION_1_0, + GLX_VERSION_1_3, + GLX_VERSION_1_4, + GLX_ARB_multisample, + GLX_ARB_fbconfig_float, + GLX_ARB_get_proc_address, + GLX_ARB_create_context, + GLX_ARB_create_context_profile, + GLX_ARB_vertex_buffer_object, + GLX_ARB_framebuffer_sRGB, + GLX_ARB_create_context_robustness, + GLX_EXT_visual_info, + GLX_EXT_visual_rating, + GLX_EXT_import_context, + GLX_EXT_fbconfig_packed_float, + GLX_EXT_framebuffer_sRGB, + GLX_EXT_texture_from_pixmap, + GLX_EXT_swap_control, + GLX_EXT_create_context_es2_profile : Boolean; + +const + // GL_VERSION_1_1 + { AttribMask } + GL_DEPTH_BUFFER_BIT = $00000100; + GL_STENCIL_BUFFER_BIT = $00000400; + GL_COLOR_BUFFER_BIT = $00004000; + { Boolean } + GL_TRUE = 1; + GL_FALSE = 0; + { BeginMode } + GL_POINTS = $0000; + GL_LINES = $0001; + GL_LINE_LOOP = $0002; + GL_LINE_STRIP = $0003; + GL_TRIANGLES = $0004; + GL_TRIANGLE_STRIP = $0005; + GL_TRIANGLE_FAN = $0006; + { AlphaFunction } + GL_NEVER = $0200; + GL_LESS = $0201; + GL_EQUAL = $0202; + GL_LEQUAL = $0203; + GL_GREATER = $0204; + GL_NOTEQUAL = $0205; + GL_GEQUAL = $0206; + GL_ALWAYS = $0207; + { BlendingFactorDest } + GL_ZERO = 0; + GL_ONE = 1; + GL_SRC_COLOR = $0300; + GL_ONE_MINUS_SRC_COLOR = $0301; + GL_SRC_ALPHA = $0302; + GL_ONE_MINUS_SRC_ALPHA = $0303; + GL_DST_ALPHA = $0304; + GL_ONE_MINUS_DST_ALPHA = $0305; + { BlendingFactorSrc } + GL_DST_COLOR = $0306; + GL_ONE_MINUS_DST_COLOR = $0307; + GL_SRC_ALPHA_SATURATE = $0308; + { DrawBufferMode } + GL_NONE = 0; + GL_FRONT_LEFT = $0400; + GL_FRONT_RIGHT = $0401; + GL_BACK_LEFT = $0402; + GL_BACK_RIGHT = $0403; + GL_FRONT = $0404; + GL_BACK = $0405; + GL_LEFT = $0406; + GL_RIGHT = $0407; + GL_FRONT_AND_BACK = $0408; + { ErrorCode } + GL_NO_ERROR = 0; + GL_INVALID_ENUM = $0500; + GL_INVALID_VALUE = $0501; + GL_INVALID_OPERATION = $0502; + GL_OUT_OF_MEMORY = $0505; + { FrontFaceDirection } + GL_CW = $0900; + GL_CCW = $0901; + { GetPName } + GL_POINT_SIZE = $0B11; + GL_POINT_SIZE_RANGE = $0B12; + GL_POINT_SIZE_GRANULARITY = $0B13; + GL_LINE_SMOOTH = $0B20; + GL_LINE_WIDTH = $0B21; + GL_LINE_WIDTH_RANGE = $0B22; + GL_LINE_WIDTH_GRANULARITY = $0B23; + GL_POLYGON_SMOOTH = $0B41; + GL_CULL_FACE = $0B44; + GL_CULL_FACE_MODE = $0B45; + GL_FRONT_FACE = $0B46; + GL_DEPTH_RANGE = $0B70; + GL_DEPTH_TEST = $0B71; + GL_DEPTH_WRITEMASK = $0B72; + GL_DEPTH_CLEAR_VALUE = $0B73; + GL_DEPTH_FUNC = $0B74; + GL_STENCIL_TEST = $0B90; + GL_STENCIL_CLEAR_VALUE = $0B91; + GL_STENCIL_FUNC = $0B92; + GL_STENCIL_VALUE_MASK = $0B93; + GL_STENCIL_FAIL = $0B94; + GL_STENCIL_PASS_DEPTH_FAIL = $0B95; + GL_STENCIL_PASS_DEPTH_PASS = $0B96; + GL_STENCIL_REF = $0B97; + GL_STENCIL_WRITEMASK = $0B98; + GL_VIEWPORT = $0BA2; + GL_DITHER = $0BD0; + GL_BLEND_DST = $0BE0; + GL_BLEND_SRC = $0BE1; + GL_BLEND = $0BE2; + GL_LOGIC_OP_MODE = $0BF0; + GL_COLOR_LOGIC_OP = $0BF2; + GL_DRAW_BUFFER = $0C01; + GL_READ_BUFFER = $0C02; + GL_SCISSOR_BOX = $0C10; + GL_SCISSOR_TEST = $0C11; + GL_COLOR_CLEAR_VALUE = $0C22; + GL_COLOR_WRITEMASK = $0C23; + GL_DOUBLEBUFFER = $0C32; + GL_STEREO = $0C33; + GL_LINE_SMOOTH_HINT = $0C52; + GL_POLYGON_SMOOTH_HINT = $0C53; + GL_UNPACK_SWAP_BYTES = $0CF0; + GL_UNPACK_LSB_FIRST = $0CF1; + GL_UNPACK_ROW_LENGTH = $0CF2; + GL_UNPACK_SKIP_ROWS = $0CF3; + GL_UNPACK_SKIP_PIXELS = $0CF4; + GL_UNPACK_ALIGNMENT = $0CF5; + GL_PACK_SWAP_BYTES = $0D00; + GL_PACK_LSB_FIRST = $0D01; + GL_PACK_ROW_LENGTH = $0D02; + GL_PACK_SKIP_ROWS = $0D03; + GL_PACK_SKIP_PIXELS = $0D04; + GL_PACK_ALIGNMENT = $0D05; + GL_MAX_TEXTURE_SIZE = $0D33; + GL_MAX_VIEWPORT_DIMS = $0D3A; + GL_SUBPIXEL_BITS = $0D50; + GL_TEXTURE_1D = $0DE0; + GL_TEXTURE_2D = $0DE1; + GL_POLYGON_OFFSET_UNITS = $2A00; + GL_POLYGON_OFFSET_POINT = $2A01; + GL_POLYGON_OFFSET_LINE = $2A02; + GL_POLYGON_OFFSET_FILL = $8037; + GL_POLYGON_OFFSET_FACTOR = $8038; + GL_TEXTURE_BINDING_1D = $8068; + GL_TEXTURE_BINDING_2D = $8069; + { GetTextureParameter } + GL_TEXTURE_WIDTH = $1000; + GL_TEXTURE_HEIGHT = $1001; + GL_TEXTURE_INTERNAL_FORMAT = $1003; + GL_TEXTURE_BORDER_COLOR = $1004; + GL_TEXTURE_BORDER = $1005; + GL_TEXTURE_RED_SIZE = $805C; + GL_TEXTURE_GREEN_SIZE = $805D; + GL_TEXTURE_BLUE_SIZE = $805E; + GL_TEXTURE_ALPHA_SIZE = $805F; + { HintMode } + GL_DONT_CARE = $1100; + GL_FASTEST = $1101; + GL_NICEST = $1102; + { DataType } + GL_BYTE = $1400; + GL_UNSIGNED_BYTE = $1401; + GL_SHORT = $1402; + GL_UNSIGNED_SHORT = $1403; + GL_INT = $1404; + GL_UNSIGNED_INT = $1405; + GL_FLOAT = $1406; + GL_DOUBLE = $140A; + { LogicOp } + GL_CLEAR = $1500; + GL_AND = $1501; + GL_AND_REVERSE = $1502; + GL_COPY = $1503; + GL_AND_INVERTED = $1504; + GL_NOOP = $1505; + GL_XOR = $1506; + GL_OR = $1507; + GL_NOR = $1508; + GL_EQUIV = $1509; + GL_INVERT = $150A; + GL_OR_REVERSE = $150B; + GL_COPY_INVERTED = $150C; + GL_OR_INVERTED = $150D; + GL_NAND = $150E; + GL_SET = $150F; + { MatrixMode (for gl3.h, FBO attachment type) } + GL_TEXTURE = $1702; + { PixelCopyType } + GL_COLOR = $1800; + GL_DEPTH = $1801; + GL_STENCIL = $1802; + { PixelFormat } + GL_STENCIL_INDEX = $1901; + GL_DEPTH_COMPONENT = $1902; + GL_RED = $1903; + GL_GREEN = $1904; + GL_BLUE = $1905; + GL_ALPHA = $1906; + GL_RGB = $1907; + GL_RGBA = $1908; + { PolygonMode } + GL_POINT = $1B00; + GL_LINE = $1B01; + GL_FILL = $1B02; + { StencilOp } + GL_KEEP = $1E00; + GL_REPLACE = $1E01; + GL_INCR = $1E02; + GL_DECR = $1E03; + { StringName } + GL_VENDOR = $1F00; + GL_RENDERER = $1F01; + GL_VERSION = $1F02; + GL_EXTENSIONS = $1F03; + { TextureMagFilter } + GL_NEAREST = $2600; + GL_LINEAR = $2601; + { TextureMinFilter } + GL_NEAREST_MIPMAP_NEAREST = $2700; + GL_LINEAR_MIPMAP_NEAREST = $2701; + GL_NEAREST_MIPMAP_LINEAR = $2702; + GL_LINEAR_MIPMAP_LINEAR = $2703; + { TextureParameterName } + GL_TEXTURE_MAG_FILTER = $2800; + GL_TEXTURE_MIN_FILTER = $2801; + GL_TEXTURE_WRAP_S = $2802; + GL_TEXTURE_WRAP_T = $2803; + { TextureTarget } + GL_PROXY_TEXTURE_1D = $8063; + GL_PROXY_TEXTURE_2D = $8064; + { TextureWrapMode } + GL_REPEAT = $2901; + { PixelInternalFormat } + GL_R3_G3_B2 = $2A10; + GL_RGB4 = $804F; + GL_RGB5 = $8050; + GL_RGB8 = $8051; + GL_RGB10 = $8052; + GL_RGB12 = $8053; + GL_RGB16 = $8054; + GL_RGBA2 = $8055; + GL_RGBA4 = $8056; + GL_RGB5_A1 = $8057; + GL_RGBA8 = $8058; + GL_RGB10_A2 = $8059; + GL_RGBA12 = $805A; + GL_RGBA16 = $805B; +{$ifdef DGL_DEPRECATED} + GL_ACCUM = $0100; + GL_LOAD = $0101; + GL_RETURN = $0102; + GL_MULT = $0103; + GL_ADD = $0104; + GL_CURRENT_BIT = $00000001; + GL_POINT_BIT = $00000002; + GL_LINE_BIT = $00000004; + GL_POLYGON_BIT = $00000008; + GL_POLYGON_STIPPLE_BIT = $00000010; + GL_PIXEL_MODE_BIT = $00000020; + GL_LIGHTING_BIT = $00000040; + GL_FOG_BIT = $00000080; + GL_ACCUM_BUFFER_BIT = $00000200; + GL_VIEWPORT_BIT = $00000800; + GL_TRANSFORM_BIT = $00001000; + GL_ENABLE_BIT = $00002000; + GL_HINT_BIT = $00008000; + GL_EVAL_BIT = $00010000; + GL_LIST_BIT = $00020000; + GL_TEXTURE_BIT = $00040000; + GL_SCISSOR_BIT = $00080000; + GL_ALL_ATTRIB_BITS = $000FFFFF; + GL_QUADS = $0007; + GL_QUAD_STRIP = $0008; + GL_POLYGON = $0009; + GL_CLIP_PLANE0 = $3000; + GL_CLIP_PLANE1 = $3001; + GL_CLIP_PLANE2 = $3002; + GL_CLIP_PLANE3 = $3003; + GL_CLIP_PLANE4 = $3004; + GL_CLIP_PLANE5 = $3005; + GL_2_BYTES = $1407; + GL_3_BYTES = $1408; + GL_4_BYTES = $1409; + GL_AUX0 = $0409; + GL_AUX1 = $040A; + GL_AUX2 = $040B; + GL_AUX3 = $040C; + GL_STACK_OVERFLOW = $0503; + GL_STACK_UNDERFLOW = $0504; + GL_2D = $0600; + GL_3D = $0601; + GL_3D_COLOR = $0602; + GL_3D_COLOR_TEXTURE = $0603; + GL_4D_COLOR_TEXTURE = $0604; + GL_PASS_THROUGH_TOKEN = $0700; + GL_POINT_TOKEN = $0701; + GL_LINE_TOKEN = $0702; + GL_POLYGON_TOKEN = $0703; + GL_BITMAP_TOKEN = $0704; + GL_DRAW_PIXEL_TOKEN = $0705; + GL_COPY_PIXEL_TOKEN = $0706; + GL_LINE_RESET_TOKEN = $0707; + GL_EXP = $0800; + GL_EXP2 = $0801; + GL_COEFF = $0A00; + GL_ORDER = $0A01; + GL_DOMAIN = $0A02; + GL_CURRENT_COLOR = $0B00; + GL_CURRENT_INDEX = $0B01; + GL_CURRENT_NORMAL = $0B02; + GL_CURRENT_TEXTURE_COORDS = $0B03; + GL_CURRENT_RASTER_COLOR = $0B04; + GL_CURRENT_RASTER_INDEX = $0B05; + GL_CURRENT_RASTER_TEXTURE_COORDS = $0B06; + GL_CURRENT_RASTER_POSITION = $0B07; + GL_CURRENT_RASTER_POSITION_VALID = $0B08; + GL_CURRENT_RASTER_DISTANCE = $0B09; + GL_POINT_SMOOTH = $0B10; + GL_LINE_STIPPLE = $0B24; + GL_LINE_STIPPLE_PATTERN = $0B25; + GL_LINE_STIPPLE_REPEAT = $0B26; + GL_LIST_MODE = $0B30; + GL_MAX_LIST_NESTING = $0B31; + GL_LIST_BASE = $0B32; + GL_LIST_INDEX = $0B33; + GL_POLYGON_MODE = $0B40; + GL_POLYGON_STIPPLE = $0B42; + GL_EDGE_FLAG = $0B43; + GL_LIGHTING = $0B50; + GL_LIGHT_MODEL_LOCAL_VIEWER = $0B51; + GL_LIGHT_MODEL_TWO_SIDE = $0B52; + GL_LIGHT_MODEL_AMBIENT = $0B53; + GL_SHADE_MODEL = $0B54; + GL_COLOR_MATERIAL_FACE = $0B55; + GL_COLOR_MATERIAL_PARAMETER = $0B56; + GL_COLOR_MATERIAL = $0B57; + GL_FOG = $0B60; + GL_FOG_INDEX = $0B61; + GL_FOG_DENSITY = $0B62; + GL_FOG_START = $0B63; + GL_FOG_END = $0B64; + GL_FOG_MODE = $0B65; + GL_FOG_COLOR = $0B66; + GL_ACCUM_CLEAR_VALUE = $0B80; + GL_MATRIX_MODE = $0BA0; + GL_NORMALIZE = $0BA1; + GL_MODELVIEW_STACK_DEPTH = $0BA3; + GL_PROJECTION_STACK_DEPTH = $0BA4; + GL_TEXTURE_STACK_DEPTH = $0BA5; + GL_MODELVIEW_MATRIX = $0BA6; + GL_PROJECTION_MATRIX = $0BA7; + GL_TEXTURE_MATRIX = $0BA8; + GL_ATTRIB_STACK_DEPTH = $0BB0; + GL_CLIENT_ATTRIB_STACK_DEPTH = $0BB1; + GL_ALPHA_TEST = $0BC0; + GL_ALPHA_TEST_FUNC = $0BC1; + GL_ALPHA_TEST_REF = $0BC2; + GL_INDEX_LOGIC_OP = $0BF1; + GL_AUX_BUFFERS = $0C00; + GL_INDEX_CLEAR_VALUE = $0C20; + GL_INDEX_WRITEMASK = $0C21; + GL_INDEX_MODE = $0C30; + GL_RGBA_MODE = $0C31; + GL_RENDER_MODE = $0C40; + GL_PERSPECTIVE_CORRECTION_HINT = $0C50; + GL_POINT_SMOOTH_HINT = $0C51; + GL_FOG_HINT = $0C54; + GL_TEXTURE_GEN_S = $0C60; + GL_TEXTURE_GEN_T = $0C61; + GL_TEXTURE_GEN_R = $0C62; + GL_TEXTURE_GEN_Q = $0C63; + GL_PIXEL_MAP_I_TO_I = $0C70; + GL_PIXEL_MAP_S_TO_S = $0C71; + GL_PIXEL_MAP_I_TO_R = $0C72; + GL_PIXEL_MAP_I_TO_G = $0C73; + GL_PIXEL_MAP_I_TO_B = $0C74; + GL_PIXEL_MAP_I_TO_A = $0C75; + GL_PIXEL_MAP_R_TO_R = $0C76; + GL_PIXEL_MAP_G_TO_G = $0C77; + GL_PIXEL_MAP_B_TO_B = $0C78; + GL_PIXEL_MAP_A_TO_A = $0C79; + GL_PIXEL_MAP_I_TO_I_SIZE = $0CB0; + GL_PIXEL_MAP_S_TO_S_SIZE = $0CB1; + GL_PIXEL_MAP_I_TO_R_SIZE = $0CB2; + GL_PIXEL_MAP_I_TO_G_SIZE = $0CB3; + GL_PIXEL_MAP_I_TO_B_SIZE = $0CB4; + GL_PIXEL_MAP_I_TO_A_SIZE = $0CB5; + GL_PIXEL_MAP_R_TO_R_SIZE = $0CB6; + GL_PIXEL_MAP_G_TO_G_SIZE = $0CB7; + GL_PIXEL_MAP_B_TO_B_SIZE = $0CB8; + GL_PIXEL_MAP_A_TO_A_SIZE = $0CB9; + GL_MAP_COLOR = $0D10; + GL_MAP_STENCIL = $0D11; + GL_INDEX_SHIFT = $0D12; + GL_INDEX_OFFSET = $0D13; + GL_RED_SCALE = $0D14; + GL_RED_BIAS = $0D15; + GL_ZOOM_X = $0D16; + GL_ZOOM_Y = $0D17; + GL_GREEN_SCALE = $0D18; + GL_GREEN_BIAS = $0D19; + GL_BLUE_SCALE = $0D1A; + GL_BLUE_BIAS = $0D1B; + GL_ALPHA_SCALE = $0D1C; + GL_ALPHA_BIAS = $0D1D; + GL_DEPTH_SCALE = $0D1E; + GL_DEPTH_BIAS = $0D1F; + GL_MAX_EVAL_ORDER = $0D30; + GL_MAX_LIGHTS = $0D31; + GL_MAX_CLIP_PLANES = $0D32; + GL_MAX_PIXEL_MAP_TABLE = $0D34; + GL_MAX_ATTRIB_STACK_DEPTH = $0D35; + GL_MAX_MODELVIEW_STACK_DEPTH = $0D36; + GL_MAX_NAME_STACK_DEPTH = $0D37; + GL_MAX_PROJECTION_STACK_DEPTH = $0D38; + GL_MAX_TEXTURE_STACK_DEPTH = $0D39; + GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = $0D3B; + GL_INDEX_BITS = $0D51; + GL_RED_BITS = $0D52; + GL_GREEN_BITS = $0D53; + GL_BLUE_BITS = $0D54; + GL_ALPHA_BITS = $0D55; + GL_DEPTH_BITS = $0D56; + GL_STENCIL_BITS = $0D57; + GL_ACCUM_RED_BITS = $0D58; + GL_ACCUM_GREEN_BITS = $0D59; + GL_ACCUM_BLUE_BITS = $0D5A; + GL_ACCUM_ALPHA_BITS = $0D5B; + GL_NAME_STACK_DEPTH = $0D70; + GL_AUTO_NORMAL = $0D80; + GL_MAP1_COLOR_4 = $0D90; + GL_MAP1_INDEX = $0D91; + GL_MAP1_NORMAL = $0D92; + GL_MAP1_TEXTURE_COORD_1 = $0D93; + GL_MAP1_TEXTURE_COORD_2 = $0D94; + GL_MAP1_TEXTURE_COORD_3 = $0D95; + GL_MAP1_TEXTURE_COORD_4 = $0D96; + GL_MAP1_VERTEX_3 = $0D97; + GL_MAP1_VERTEX_4 = $0D98; + GL_MAP2_COLOR_4 = $0DB0; + GL_MAP2_INDEX = $0DB1; + GL_MAP2_NORMAL = $0DB2; + GL_MAP2_TEXTURE_COORD_1 = $0DB3; + GL_MAP2_TEXTURE_COORD_2 = $0DB4; + GL_MAP2_TEXTURE_COORD_3 = $0DB5; + GL_MAP2_TEXTURE_COORD_4 = $0DB6; + GL_MAP2_VERTEX_3 = $0DB7; + GL_MAP2_VERTEX_4 = $0DB8; + GL_MAP1_GRID_DOMAIN = $0DD0; + GL_MAP1_GRID_SEGMENTS = $0DD1; + GL_MAP2_GRID_DOMAIN = $0DD2; + GL_MAP2_GRID_SEGMENTS = $0DD3; + GL_FEEDBACK_BUFFER_POINTER = $0DF0; + GL_FEEDBACK_BUFFER_SIZE = $0DF1; + GL_FEEDBACK_BUFFER_TYPE = $0DF2; + GL_SELECTION_BUFFER_POINTER = $0DF3; + GL_SELECTION_BUFFER_SIZE = $0DF4; + GL_LIGHT0 = $4000; + GL_LIGHT1 = $4001; + GL_LIGHT2 = $4002; + GL_LIGHT3 = $4003; + GL_LIGHT4 = $4004; + GL_LIGHT5 = $4005; + GL_LIGHT6 = $4006; + GL_LIGHT7 = $4007; + GL_AMBIENT = $1200; + GL_DIFFUSE = $1201; + GL_SPECULAR = $1202; + GL_POSITION = $1203; + GL_SPOT_DIRECTION = $1204; + GL_SPOT_EXPONENT = $1205; + GL_SPOT_CUTOFF = $1206; + GL_CONSTANT_ATTENUATION = $1207; + GL_LINEAR_ATTENUATION = $1208; + GL_QUADRATIC_ATTENUATION = $1209; + GL_COMPILE = $1300; + GL_COMPILE_AND_EXECUTE = $1301; + GL_EMISSION = $1600; + GL_SHININESS = $1601; + GL_AMBIENT_AND_DIFFUSE = $1602; + GL_COLOR_INDEXES = $1603; + GL_MODELVIEW = $1700; + GL_PROJECTION = $1701; + GL_COLOR_INDEX = $1900; + GL_LUMINANCE = $1909; + GL_LUMINANCE_ALPHA = $190A; + GL_BITMAP = $1A00; + GL_RENDER = $1C00; + GL_FEEDBACK = $1C01; + GL_SELECT = $1C02; + GL_FLAT = $1D00; + GL_SMOOTH = $1D01; + GL_S = $2000; + GL_T = $2001; + GL_R = $2002; + GL_Q = $2003; + GL_MODULATE = $2100; + GL_DECAL = $2101; + GL_TEXTURE_ENV_MODE = $2200; + GL_TEXTURE_ENV_COLOR = $2201; + GL_TEXTURE_ENV = $2300; + GL_EYE_LINEAR = $2400; + GL_OBJECT_LINEAR = $2401; + GL_SPHERE_MAP = $2402; + GL_TEXTURE_GEN_MODE = $2500; + GL_OBJECT_PLANE = $2501; + GL_EYE_PLANE = $2502; + GL_CLAMP = $2900; + GL_CLIENT_PIXEL_STORE_BIT = $00000001; + GL_CLIENT_VERTEX_ARRAY_BIT = $00000002; + GL_CLIENT_ALL_ATTRIB_BITS = $FFFFFFFF; + GL_ALPHA4 = $803B; + GL_ALPHA8 = $803C; + GL_ALPHA12 = $803D; + GL_ALPHA16 = $803E; + GL_LUMINANCE4 = $803F; + GL_LUMINANCE8 = $8040; + GL_LUMINANCE12 = $8041; + GL_LUMINANCE16 = $8042; + GL_LUMINANCE4_ALPHA4 = $8043; + GL_LUMINANCE6_ALPHA2 = $8044; + GL_LUMINANCE8_ALPHA8 = $8045; + GL_LUMINANCE12_ALPHA4 = $8046; + GL_LUMINANCE12_ALPHA12 = $8047; + GL_LUMINANCE16_ALPHA16 = $8048; + GL_INTENSITY = $8049; + GL_INTENSITY4 = $804A; + GL_INTENSITY8 = $804B; + GL_INTENSITY12 = $804C; + GL_INTENSITY16 = $804D; + GL_TEXTURE_LUMINANCE_SIZE = $8060; + GL_TEXTURE_INTENSITY_SIZE = $8061; + GL_TEXTURE_PRIORITY = $8066; + GL_TEXTURE_RESIDENT = $8067; + GL_VERTEX_ARRAY = $8074; + GL_NORMAL_ARRAY = $8075; + GL_COLOR_ARRAY = $8076; + GL_INDEX_ARRAY = $8077; + GL_TEXTURE_COORD_ARRAY = $8078; + GL_EDGE_FLAG_ARRAY = $8079; + GL_VERTEX_ARRAY_SIZE = $807A; + GL_VERTEX_ARRAY_TYPE = $807B; + GL_VERTEX_ARRAY_STRIDE = $807C; + GL_NORMAL_ARRAY_TYPE = $807E; + GL_NORMAL_ARRAY_STRIDE = $807F; + GL_COLOR_ARRAY_SIZE = $8081; + GL_COLOR_ARRAY_TYPE = $8082; + GL_COLOR_ARRAY_STRIDE = $8083; + GL_INDEX_ARRAY_TYPE = $8085; + GL_INDEX_ARRAY_STRIDE = $8086; + GL_TEXTURE_COORD_ARRAY_SIZE = $8088; + GL_TEXTURE_COORD_ARRAY_TYPE = $8089; + GL_TEXTURE_COORD_ARRAY_STRIDE = $808A; + GL_EDGE_FLAG_ARRAY_STRIDE = $808C; + GL_VERTEX_ARRAY_POINTER = $808E; + GL_NORMAL_ARRAY_POINTER = $808F; + GL_COLOR_ARRAY_POINTER = $8090; + GL_INDEX_ARRAY_POINTER = $8091; + GL_TEXTURE_COORD_ARRAY_POINTER = $8092; + GL_EDGE_FLAG_ARRAY_POINTER = $8093; + GL_V2F = $2A20; + GL_V3F = $2A21; + GL_C4UB_V2F = $2A22; + GL_C4UB_V3F = $2A23; + GL_C3F_V3F = $2A24; + GL_N3F_V3F = $2A25; + GL_C4F_N3F_V3F = $2A26; + GL_T2F_V3F = $2A27; + GL_T4F_V4F = $2A28; + GL_T2F_C4UB_V3F = $2A29; + GL_T2F_C3F_V3F = $2A2A; + GL_T2F_N3F_V3F = $2A2B; + GL_T2F_C4F_N3F_V3F = $2A2C; + GL_T4F_C4F_N3F_V4F = $2A2D; + GL_COLOR_TABLE_FORMAT_EXT = $80D8; + GL_COLOR_TABLE_WIDTH_EXT = $80D9; + GL_COLOR_TABLE_RED_SIZE_EXT = $80DA; + GL_COLOR_TABLE_GREEN_SIZE_EXT = $80DB; + GL_COLOR_TABLE_BLUE_SIZE_EXT = $80DC; + GL_COLOR_TABLE_ALPHA_SIZE_EXT = $80DD; + GL_COLOR_TABLE_LUMINANCE_SIZE_EXT = $80DE; + GL_COLOR_TABLE_INTENSITY_SIZE_EXT = $80DF; + GL_LOGIC_OP = GL_INDEX_LOGIC_OP; + GL_TEXTURE_COMPONENTS = GL_TEXTURE_INTERNAL_FORMAT; +{$endif} + + // GL_VERSION_1_2 + GL_UNSIGNED_BYTE_3_3_2 = $8032; + GL_UNSIGNED_SHORT_4_4_4_4 = $8033; + GL_UNSIGNED_SHORT_5_5_5_1 = $8034; + GL_UNSIGNED_INT_8_8_8_8 = $8035; + GL_UNSIGNED_INT_10_10_10_2 = $8036; + GL_TEXTURE_BINDING_3D = $806A; + GL_PACK_SKIP_IMAGES = $806B; + GL_PACK_IMAGE_HEIGHT = $806C; + GL_UNPACK_SKIP_IMAGES = $806D; + GL_UNPACK_IMAGE_HEIGHT = $806E; + GL_TEXTURE_3D = $806F; + GL_PROXY_TEXTURE_3D = $8070; + GL_TEXTURE_DEPTH = $8071; + GL_TEXTURE_WRAP_R = $8072; + GL_MAX_3D_TEXTURE_SIZE = $8073; + GL_UNSIGNED_BYTE_2_3_3_REV = $8362; + GL_UNSIGNED_SHORT_5_6_5 = $8363; + GL_UNSIGNED_SHORT_5_6_5_REV = $8364; + GL_UNSIGNED_SHORT_4_4_4_4_REV = $8365; + GL_UNSIGNED_SHORT_1_5_5_5_REV = $8366; + GL_UNSIGNED_INT_8_8_8_8_REV = $8367; + GL_UNSIGNED_INT_2_10_10_10_REV = $8368; + GL_BGR = $80E0; + GL_BGRA = $80E1; + GL_MAX_ELEMENTS_VERTICES = $80E8; + GL_MAX_ELEMENTS_INDICES = $80E9; + GL_CLAMP_TO_EDGE = $812F; + GL_TEXTURE_MIN_LOD = $813A; + GL_TEXTURE_MAX_LOD = $813B; + GL_TEXTURE_BASE_LEVEL = $813C; + GL_TEXTURE_MAX_LEVEL = $813D; + GL_SMOOTH_POINT_SIZE_RANGE = $0B12; + GL_SMOOTH_POINT_SIZE_GRANULARITY = $0B13; + GL_SMOOTH_LINE_WIDTH_RANGE = $0B22; + GL_SMOOTH_LINE_WIDTH_GRANULARITY = $0B23; + GL_ALIASED_LINE_WIDTH_RANGE = $846E; +{$ifdef DGL_DEPRECATED} + GL_RESCALE_NORMAL = $803A; + GL_LIGHT_MODEL_COLOR_CONTROL = $81F8; + GL_SINGLE_COLOR = $81F9; + GL_SEPARATE_SPECULAR_COLOR = $81FA; + GL_ALIASED_POINT_SIZE_RANGE = $846D; +{$endif} + + // GL_VERSION_1_3 + GL_TEXTURE0 = $84C0; + GL_TEXTURE1 = $84C1; + GL_TEXTURE2 = $84C2; + GL_TEXTURE3 = $84C3; + GL_TEXTURE4 = $84C4; + GL_TEXTURE5 = $84C5; + GL_TEXTURE6 = $84C6; + GL_TEXTURE7 = $84C7; + GL_TEXTURE8 = $84C8; + GL_TEXTURE9 = $84C9; + GL_TEXTURE10 = $84CA; + GL_TEXTURE11 = $84CB; + GL_TEXTURE12 = $84CC; + GL_TEXTURE13 = $84CD; + GL_TEXTURE14 = $84CE; + GL_TEXTURE15 = $84CF; + GL_TEXTURE16 = $84D0; + GL_TEXTURE17 = $84D1; + GL_TEXTURE18 = $84D2; + GL_TEXTURE19 = $84D3; + GL_TEXTURE20 = $84D4; + GL_TEXTURE21 = $84D5; + GL_TEXTURE22 = $84D6; + GL_TEXTURE23 = $84D7; + GL_TEXTURE24 = $84D8; + GL_TEXTURE25 = $84D9; + GL_TEXTURE26 = $84DA; + GL_TEXTURE27 = $84DB; + GL_TEXTURE28 = $84DC; + GL_TEXTURE29 = $84DD; + GL_TEXTURE30 = $84DE; + GL_TEXTURE31 = $84DF; + GL_ACTIVE_TEXTURE = $84E0; + GL_MULTISAMPLE = $809D; + GL_SAMPLE_ALPHA_TO_COVERAGE = $809E; + GL_SAMPLE_ALPHA_TO_ONE = $809F; + GL_SAMPLE_COVERAGE = $80A0; + GL_SAMPLE_BUFFERS = $80A8; + GL_SAMPLES = $80A9; + GL_SAMPLE_COVERAGE_VALUE = $80AA; + GL_SAMPLE_COVERAGE_INVERT = $80AB; + GL_TEXTURE_CUBE_MAP = $8513; + GL_TEXTURE_BINDING_CUBE_MAP = $8514; + GL_TEXTURE_CUBE_MAP_POSITIVE_X = $8515; + GL_TEXTURE_CUBE_MAP_NEGATIVE_X = $8516; + GL_TEXTURE_CUBE_MAP_POSITIVE_Y = $8517; + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = $8518; + GL_TEXTURE_CUBE_MAP_POSITIVE_Z = $8519; + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = $851A; + GL_PROXY_TEXTURE_CUBE_MAP = $851B; + GL_MAX_CUBE_MAP_TEXTURE_SIZE = $851C; + GL_COMPRESSED_RGB = $84ED; + GL_COMPRESSED_RGBA = $84EE; + GL_TEXTURE_COMPRESSION_HINT = $84EF; + GL_TEXTURE_COMPRESSED_IMAGE_SIZE = $86A0; + GL_TEXTURE_COMPRESSED = $86A1; + GL_NUM_COMPRESSED_TEXTURE_FORMATS = $86A2; + GL_COMPRESSED_TEXTURE_FORMATS = $86A3; + GL_CLAMP_TO_BORDER = $812D; +{$ifdef DGL_DEPRECATED} + GL_CLIENT_ACTIVE_TEXTURE = $84E1; + GL_MAX_TEXTURE_UNITS = $84E2; + GL_TRANSPOSE_MODELVIEW_MATRIX = $84E3; + GL_TRANSPOSE_PROJECTION_MATRIX = $84E4; + GL_TRANSPOSE_TEXTURE_MATRIX = $84E5; + GL_TRANSPOSE_COLOR_MATRIX = $84E6; + GL_MULTISAMPLE_BIT = $20000000; + GL_NORMAL_MAP = $8511; + GL_REFLECTION_MAP = $8512; + GL_COMPRESSED_ALPHA = $84E9; + GL_COMPRESSED_LUMINANCE = $84EA; + GL_COMPRESSED_LUMINANCE_ALPHA = $84EB; + GL_COMPRESSED_INTENSITY = $84EC; + GL_COMBINE = $8570; + GL_COMBINE_RGB = $8571; + GL_COMBINE_ALPHA = $8572; + GL_SOURCE0_RGB = $8580; + GL_SOURCE1_RGB = $8581; + GL_SOURCE2_RGB = $8582; + GL_SOURCE0_ALPHA = $8588; + GL_SOURCE1_ALPHA = $8589; + GL_SOURCE2_ALPHA = $858A; + GL_OPERAND0_RGB = $8590; + GL_OPERAND1_RGB = $8591; + GL_OPERAND2_RGB = $8592; + GL_OPERAND0_ALPHA = $8598; + GL_OPERAND1_ALPHA = $8599; + GL_OPERAND2_ALPHA = $859A; + GL_RGB_SCALE = $8573; + GL_ADD_SIGNED = $8574; + GL_INTERPOLATE = $8575; + GL_SUBTRACT = $84E7; + GL_CONSTANT = $8576; + GL_PRIMARY_COLOR = $8577; + GL_PREVIOUS = $8578; + GL_DOT3_RGB = $86AE; + GL_DOT3_RGBA = $86AF; +{$endif} + + // GL_VERSION_1_4 + GL_BLEND_DST_RGB = $80C8; + GL_BLEND_SRC_RGB = $80C9; + GL_BLEND_DST_ALPHA = $80CA; + GL_BLEND_SRC_ALPHA = $80CB; + GL_POINT_FADE_THRESHOLD_SIZE = $8128; + GL_DEPTH_COMPONENT16 = $81A5; + GL_DEPTH_COMPONENT24 = $81A6; + GL_DEPTH_COMPONENT32 = $81A7; + GL_MIRRORED_REPEAT = $8370; + GL_MAX_TEXTURE_LOD_BIAS = $84FD; + GL_TEXTURE_LOD_BIAS = $8501; + GL_INCR_WRAP = $8507; + GL_DECR_WRAP = $8508; + GL_TEXTURE_DEPTH_SIZE = $884A; + GL_TEXTURE_COMPARE_MODE = $884C; + GL_TEXTURE_COMPARE_FUNC = $884D; +{$ifdef DGL_DEPRECATED} + GL_POINT_SIZE_MIN = $8126; + GL_POINT_SIZE_MAX = $8127; + GL_POINT_DISTANCE_ATTENUATION = $8129; + GL_GENERATE_MIPMAP = $8191; + GL_GENERATE_MIPMAP_HINT = $8192; + GL_FOG_COORDINATE_SOURCE = $8450; + GL_FOG_COORDINATE = $8451; + GL_FRAGMENT_DEPTH = $8452; + GL_CURRENT_FOG_COORDINATE = $8453; + GL_FOG_COORDINATE_ARRAY_TYPE = $8454; + GL_FOG_COORDINATE_ARRAY_STRIDE = $8455; + GL_FOG_COORDINATE_ARRAY_POINTER = $8456; + GL_FOG_COORDINATE_ARRAY = $8457; + GL_COLOR_SUM = $8458; + GL_CURRENT_SECONDARY_COLOR = $8459; + GL_SECONDARY_COLOR_ARRAY_SIZE = $845A; + GL_SECONDARY_COLOR_ARRAY_TYPE = $845B; + GL_SECONDARY_COLOR_ARRAY_STRIDE = $845C; + GL_SECONDARY_COLOR_ARRAY_POINTER = $845D; + GL_SECONDARY_COLOR_ARRAY = $845E; + GL_TEXTURE_FILTER_CONTROL = $8500; + GL_DEPTH_TEXTURE_MODE = $884B; + GL_COMPARE_R_TO_TEXTURE = $884E; +{$endif} + + // GL_VERSION_1_5 + GL_BUFFER_SIZE = $8764; + GL_BUFFER_USAGE = $8765; + GL_QUERY_COUNTER_BITS = $8864; + GL_CURRENT_QUERY = $8865; + GL_QUERY_RESULT = $8866; + GL_QUERY_RESULT_AVAILABLE = $8867; + GL_ARRAY_BUFFER = $8892; + GL_ELEMENT_ARRAY_BUFFER = $8893; + GL_ARRAY_BUFFER_BINDING = $8894; + GL_ELEMENT_ARRAY_BUFFER_BINDING = $8895; + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = $889F; + GL_READ_ONLY = $88B8; + GL_WRITE_ONLY = $88B9; + GL_READ_WRITE = $88BA; + GL_BUFFER_ACCESS = $88BB; + GL_BUFFER_MAPPED = $88BC; + GL_BUFFER_MAP_POINTER = $88BD; + GL_STREAM_DRAW = $88E0; + GL_STREAM_READ = $88E1; + GL_STREAM_COPY = $88E2; + GL_STATIC_DRAW = $88E4; + GL_STATIC_READ = $88E5; + GL_STATIC_COPY = $88E6; + GL_DYNAMIC_DRAW = $88E8; + GL_DYNAMIC_READ = $88E9; + GL_DYNAMIC_COPY = $88EA; + GL_SAMPLES_PASSED = $8914; +{$ifdef DGL_DEPRECATED} + GL_VERTEX_ARRAY_BUFFER_BINDING = $8896; + GL_NORMAL_ARRAY_BUFFER_BINDING = $8897; + GL_COLOR_ARRAY_BUFFER_BINDING = $8898; + GL_INDEX_ARRAY_BUFFER_BINDING = $8899; + GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = $889A; + GL_EDGE_FLAG_ARRAY_BUFFER_BINDING = $889B; + GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING = $889C; + GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING = $889D; + GL_WEIGHT_ARRAY_BUFFER_BINDING = $889E; + GL_FOG_COORD_SRC = $8450; + GL_FOG_COORD = $8451; + GL_CURRENT_FOG_COORD = $8453; + GL_FOG_COORD_ARRAY_TYPE = $8454; + GL_FOG_COORD_ARRAY_STRIDE = $8455; + GL_FOG_COORD_ARRAY_POINTER = $8456; + GL_FOG_COORD_ARRAY = $8457; + GL_FOG_COORD_ARRAY_BUFFER_BINDING = $889D; + GL_SRC0_RGB = $8580; + GL_SRC1_RGB = $8581; + GL_SRC2_RGB = $8582; + GL_SRC0_ALPHA = $8588; + GL_SRC1_ALPHA = $8589; + GL_SRC2_ALPHA = $858A; +{$endif} + + // GL_VERSION_2_0 + GL_BLEND_EQUATION_RGB = $8009; + GL_VERTEX_ATTRIB_ARRAY_ENABLED = $8622; + GL_VERTEX_ATTRIB_ARRAY_SIZE = $8623; + GL_VERTEX_ATTRIB_ARRAY_STRIDE = $8624; + GL_VERTEX_ATTRIB_ARRAY_TYPE = $8625; + GL_CURRENT_VERTEX_ATTRIB = $8626; + GL_VERTEX_PROGRAM_POINT_SIZE = $8642; + GL_VERTEX_ATTRIB_ARRAY_POINTER = $8645; + GL_STENCIL_BACK_FUNC = $8800; + GL_STENCIL_BACK_FAIL = $8801; + GL_STENCIL_BACK_PASS_DEPTH_FAIL = $8802; + GL_STENCIL_BACK_PASS_DEPTH_PASS = $8803; + GL_MAX_DRAW_BUFFERS = $8824; + GL_DRAW_BUFFER0 = $8825; + GL_DRAW_BUFFER1 = $8826; + GL_DRAW_BUFFER2 = $8827; + GL_DRAW_BUFFER3 = $8828; + GL_DRAW_BUFFER4 = $8829; + GL_DRAW_BUFFER5 = $882A; + GL_DRAW_BUFFER6 = $882B; + GL_DRAW_BUFFER7 = $882C; + GL_DRAW_BUFFER8 = $882D; + GL_DRAW_BUFFER9 = $882E; + GL_DRAW_BUFFER10 = $882F; + GL_DRAW_BUFFER11 = $8830; + GL_DRAW_BUFFER12 = $8831; + GL_DRAW_BUFFER13 = $8832; + GL_DRAW_BUFFER14 = $8833; + GL_DRAW_BUFFER15 = $8834; + GL_BLEND_EQUATION_ALPHA = $883D; + GL_MAX_VERTEX_ATTRIBS = $8869; + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = $886A; + GL_MAX_TEXTURE_IMAGE_UNITS = $8872; + GL_FRAGMENT_SHADER = $8B30; + GL_VERTEX_SHADER = $8B31; + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = $8B49; + GL_MAX_VERTEX_UNIFORM_COMPONENTS = $8B4A; + GL_MAX_VARYING_FLOATS = $8B4B; + GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = $8B4C; + GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = $8B4D; + GL_SHADER_TYPE = $8B4F; + GL_FLOAT_VEC2 = $8B50; + GL_FLOAT_VEC3 = $8B51; + GL_FLOAT_VEC4 = $8B52; + GL_INT_VEC2 = $8B53; + GL_INT_VEC3 = $8B54; + GL_INT_VEC4 = $8B55; + GL_BOOL = $8B56; + GL_BOOL_VEC2 = $8B57; + GL_BOOL_VEC3 = $8B58; + GL_BOOL_VEC4 = $8B59; + GL_FLOAT_MAT2 = $8B5A; + GL_FLOAT_MAT3 = $8B5B; + GL_FLOAT_MAT4 = $8B5C; + GL_SAMPLER_1D = $8B5D; + GL_SAMPLER_2D = $8B5E; + GL_SAMPLER_3D = $8B5F; + GL_SAMPLER_CUBE = $8B60; + GL_SAMPLER_1D_SHADOW = $8B61; + GL_SAMPLER_2D_SHADOW = $8B62; + GL_DELETE_STATUS = $8B80; + GL_COMPILE_STATUS = $8B81; + GL_LINK_STATUS = $8B82; + GL_VALIDATE_STATUS = $8B83; + GL_INFO_LOG_LENGTH = $8B84; + GL_ATTACHED_SHADERS = $8B85; + GL_ACTIVE_UNIFORMS = $8B86; + GL_ACTIVE_UNIFORM_MAX_LENGTH = $8B87; + GL_SHADER_SOURCE_LENGTH = $8B88; + GL_ACTIVE_ATTRIBUTES = $8B89; + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = $8B8A; + GL_FRAGMENT_SHADER_DERIVATIVE_HINT = $8B8B; + GL_SHADING_LANGUAGE_VERSION = $8B8C; + GL_CURRENT_PROGRAM = $8B8D; + GL_POINT_SPRITE_COORD_ORIGIN = $8CA0; + GL_LOWER_LEFT = $8CA1; + GL_UPPER_LEFT = $8CA2; + GL_STENCIL_BACK_REF = $8CA3; + GL_STENCIL_BACK_VALUE_MASK = $8CA4; + GL_STENCIL_BACK_WRITEMASK = $8CA5; +{$ifdef DGL_DEPRECATED} + GL_VERTEX_PROGRAM_TWO_SIDE = $8643; + GL_POINT_SPRITE = $8861; + GL_COORD_REPLACE = $8862; + GL_MAX_TEXTURE_COORDS = $8871; +{$endif} + + // GL_VERSION_2_1 + GL_PIXEL_PACK_BUFFER = $88EB; + GL_PIXEL_UNPACK_BUFFER = $88EC; + GL_PIXEL_PACK_BUFFER_BINDING = $88ED; + GL_PIXEL_UNPACK_BUFFER_BINDING = $88EF; + GL_FLOAT_MAT2x3 = $8B65; + GL_FLOAT_MAT2x4 = $8B66; + GL_FLOAT_MAT3x2 = $8B67; + GL_FLOAT_MAT3x4 = $8B68; + GL_FLOAT_MAT4x2 = $8B69; + GL_FLOAT_MAT4x3 = $8B6A; + GL_SRGB = $8C40; + GL_SRGB8 = $8C41; + GL_SRGB_ALPHA = $8C42; + GL_SRGB8_ALPHA8 = $8C43; + GL_COMPRESSED_SRGB = $8C48; + GL_COMPRESSED_SRGB_ALPHA = $8C49; +{$ifdef DGL_DEPRECATED} + GL_CURRENT_RASTER_SECONDARY_COLOR = $845F; + GL_SLUMINANCE_ALPHA = $8C44; + GL_SLUMINANCE8_ALPHA8 = $8C45; + GL_SLUMINANCE = $8C46; + GL_SLUMINANCE8 = $8C47; + GL_COMPRESSED_SLUMINANCE = $8C4A; + GL_COMPRESSED_SLUMINANCE_ALPHA = $8C4B; +{$endif} + + // GL_VERSION_3_0 + GL_COMPARE_REF_TO_TEXTURE = $884E; + GL_CLIP_DISTANCE0 = $3000; + GL_CLIP_DISTANCE1 = $3001; + GL_CLIP_DISTANCE2 = $3002; + GL_CLIP_DISTANCE3 = $3003; + GL_CLIP_DISTANCE4 = $3004; + GL_CLIP_DISTANCE5 = $3005; + GL_CLIP_DISTANCE6 = $3006; + GL_CLIP_DISTANCE7 = $3007; + GL_MAX_CLIP_DISTANCES = $0D32; + GL_MAJOR_VERSION = $821B; + GL_MINOR_VERSION = $821C; + GL_NUM_EXTENSIONS = $821D; + GL_CONTEXT_FLAGS = $821E; + GL_DEPTH_BUFFER = $8223; + GL_STENCIL_BUFFER = $8224; + GL_COMPRESSED_RED = $8225; + GL_COMPRESSED_RG = $8226; + GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = $0001; + GL_RGBA32F = $8814; + GL_RGB32F = $8815; + GL_RGBA16F = $881A; + GL_RGB16F = $881B; + GL_VERTEX_ATTRIB_ARRAY_INTEGER = $88FD; + GL_MAX_ARRAY_TEXTURE_LAYERS = $88FF; + GL_MIN_PROGRAM_TEXEL_OFFSET = $8904; + GL_MAX_PROGRAM_TEXEL_OFFSET = $8905; + GL_CLAMP_READ_COLOR = $891C; + GL_FIXED_ONLY = $891D; + GL_MAX_VARYING_COMPONENTS = $8B4B; + GL_TEXTURE_1D_ARRAY = $8C18; + GL_PROXY_TEXTURE_1D_ARRAY = $8C19; + GL_TEXTURE_2D_ARRAY = $8C1A; + GL_PROXY_TEXTURE_2D_ARRAY = $8C1B; + GL_TEXTURE_BINDING_1D_ARRAY = $8C1C; + GL_TEXTURE_BINDING_2D_ARRAY = $8C1D; + GL_R11F_G11F_B10F = $8C3A; + GL_UNSIGNED_INT_10F_11F_11F_REV = $8C3B; + GL_RGB9_E5 = $8C3D; + GL_UNSIGNED_INT_5_9_9_9_REV = $8C3E; + GL_TEXTURE_SHARED_SIZE = $8C3F; + GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = $8C76; + GL_TRANSFORM_FEEDBACK_BUFFER_MODE = $8C7F; + GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = $8C80; + GL_TRANSFORM_FEEDBACK_VARYINGS = $8C83; + GL_TRANSFORM_FEEDBACK_BUFFER_START = $8C84; + GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = $8C85; + GL_PRIMITIVES_GENERATED = $8C87; + GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = $8C88; + GL_RASTERIZER_DISCARD = $8C89; + GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = $8C8A; + GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = $8C8B; + GL_INTERLEAVED_ATTRIBS = $8C8C; + GL_SEPARATE_ATTRIBS = $8C8D; + GL_TRANSFORM_FEEDBACK_BUFFER = $8C8E; + GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = $8C8F; + GL_RGBA32UI = $8D70; + GL_RGB32UI = $8D71; + GL_RGBA16UI = $8D76; + GL_RGB16UI = $8D77; + GL_RGBA8UI = $8D7C; + GL_RGB8UI = $8D7D; + GL_RGBA32I = $8D82; + GL_RGB32I = $8D83; + GL_RGBA16I = $8D88; + GL_RGB16I = $8D89; + GL_RGBA8I = $8D8E; + GL_RGB8I = $8D8F; + GL_RED_INTEGER = $8D94; + GL_GREEN_INTEGER = $8D95; + GL_BLUE_INTEGER = $8D96; + GL_RGB_INTEGER = $8D98; + GL_RGBA_INTEGER = $8D99; + GL_BGR_INTEGER = $8D9A; + GL_BGRA_INTEGER = $8D9B; + GL_SAMPLER_1D_ARRAY = $8DC0; + GL_SAMPLER_2D_ARRAY = $8DC1; + GL_SAMPLER_1D_ARRAY_SHADOW = $8DC3; + GL_SAMPLER_2D_ARRAY_SHADOW = $8DC4; + GL_SAMPLER_CUBE_SHADOW = $8DC5; + GL_UNSIGNED_INT_VEC2 = $8DC6; + GL_UNSIGNED_INT_VEC3 = $8DC7; + GL_UNSIGNED_INT_VEC4 = $8DC8; + GL_INT_SAMPLER_1D = $8DC9; + GL_INT_SAMPLER_2D = $8DCA; + GL_INT_SAMPLER_3D = $8DCB; + GL_INT_SAMPLER_CUBE = $8DCC; + GL_INT_SAMPLER_1D_ARRAY = $8DCE; + GL_INT_SAMPLER_2D_ARRAY = $8DCF; + GL_UNSIGNED_INT_SAMPLER_1D = $8DD1; + GL_UNSIGNED_INT_SAMPLER_2D = $8DD2; + GL_UNSIGNED_INT_SAMPLER_3D = $8DD3; + GL_UNSIGNED_INT_SAMPLER_CUBE = $8DD4; + GL_UNSIGNED_INT_SAMPLER_1D_ARRAY = $8DD6; + GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = $8DD7; + GL_QUERY_WAIT = $8E13; + GL_QUERY_NO_WAIT = $8E14; + GL_QUERY_BY_REGION_WAIT = $8E15; + GL_QUERY_BY_REGION_NO_WAIT = $8E16; + GL_BUFFER_ACCESS_FLAGS = $911F; + GL_BUFFER_MAP_LENGTH = $9120; + GL_BUFFER_MAP_OFFSET = $9121; + { Reuse tokens from ARB_depth_buffer_float } + { reuse GL_DEPTH_COMPONENT32F } + { reuse GL_DEPTH32F_STENCIL8 } + { reuse GL_FLOAT_32_UNSIGNED_INT_24_8_REV } + { Reuse tokens from ARB_framebuffer_object } + { reuse GL_INVALID_FRAMEBUFFER_OPERATION } + { reuse GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING } + { reuse GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE } + { reuse GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE } + { reuse GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE } + { reuse GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE } + { reuse GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE } + { reuse GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE } + { reuse GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE } + { reuse GL_FRAMEBUFFER_DEFAULT } + { reuse GL_FRAMEBUFFER_UNDEFINED } + { reuse GL_DEPTH_STENCIL_ATTACHMENT } + { reuse GL_INDEX } + { reuse GL_MAX_RENDERBUFFER_SIZE } + { reuse GL_DEPTH_STENCIL } + { reuse GL_UNSIGNED_INT_24_8 } + { reuse GL_DEPTH24_STENCIL8 } + { reuse GL_TEXTURE_STENCIL_SIZE } + { reuse GL_TEXTURE_RED_TYPE } + { reuse GL_TEXTURE_GREEN_TYPE } + { reuse GL_TEXTURE_BLUE_TYPE } + { reuse GL_TEXTURE_ALPHA_TYPE } + { reuse GL_TEXTURE_DEPTH_TYPE } + { reuse GL_UNSIGNED_NORMALIZED } + { reuse GL_FRAMEBUFFER_BINDING } + { reuse GL_DRAW_FRAMEBUFFER_BINDING } + { reuse GL_RENDERBUFFER_BINDING } + { reuse GL_READ_FRAMEBUFFER } + { reuse GL_DRAW_FRAMEBUFFER } + { reuse GL_READ_FRAMEBUFFER_BINDING } + { reuse GL_RENDERBUFFER_SAMPLES } + { reuse GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE } + { reuse GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME } + { reuse GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL } + { reuse GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE } + { reuse GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER } + { reuse GL_FRAMEBUFFER_COMPLETE } + { reuse GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT } + { reuse GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT } + { reuse GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER } + { reuse GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER } + { reuse GL_FRAMEBUFFER_UNSUPPORTED } + { reuse GL_MAX_COLOR_ATTACHMENTS } + { reuse GL_COLOR_ATTACHMENT0 } + { reuse GL_COLOR_ATTACHMENT1 } + { reuse GL_COLOR_ATTACHMENT2 } + { reuse GL_COLOR_ATTACHMENT3 } + { reuse GL_COLOR_ATTACHMENT4 } + { reuse GL_COLOR_ATTACHMENT5 } + { reuse GL_COLOR_ATTACHMENT6 } + { reuse GL_COLOR_ATTACHMENT7 } + { reuse GL_COLOR_ATTACHMENT8 } + { reuse GL_COLOR_ATTACHMENT9 } + { reuse GL_COLOR_ATTACHMENT10 } + { reuse GL_COLOR_ATTACHMENT11 } + { reuse GL_COLOR_ATTACHMENT12 } + { reuse GL_COLOR_ATTACHMENT13 } + { reuse GL_COLOR_ATTACHMENT14 } + { reuse GL_COLOR_ATTACHMENT15 } + { reuse GL_DEPTH_ATTACHMENT } + { reuse GL_STENCIL_ATTACHMENT } + { reuse GL_FRAMEBUFFER } + { reuse GL_RENDERBUFFER } + { reuse GL_RENDERBUFFER_WIDTH } + { reuse GL_RENDERBUFFER_HEIGHT } + { reuse GL_RENDERBUFFER_INTERNAL_FORMAT } + { reuse GL_STENCIL_INDEX1 } + { reuse GL_STENCIL_INDEX4 } + { reuse GL_STENCIL_INDEX8 } + { reuse GL_STENCIL_INDEX16 } + { reuse GL_RENDERBUFFER_RED_SIZE } + { reuse GL_RENDERBUFFER_GREEN_SIZE } + { reuse GL_RENDERBUFFER_BLUE_SIZE } + { reuse GL_RENDERBUFFER_ALPHA_SIZE } + { reuse GL_RENDERBUFFER_DEPTH_SIZE } + { reuse GL_RENDERBUFFER_STENCIL_SIZE } + { reuse GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE } + { reuse GL_MAX_SAMPLES } + { Reuse tokens from ARB_framebuffer_sRGB } + { reuse GL_FRAMEBUFFER_SRGB } + { Reuse tokens from ARB_half_float_vertex } + { reuse GL_HALF_FLOAT } + { Reuse tokens from ARB_map_buffer_range } + { reuse GL_MAP_READ_BIT } + { reuse GL_MAP_WRITE_BIT } + { reuse GL_MAP_INVALIDATE_RANGE_BIT } + { reuse GL_MAP_INVALIDATE_BUFFER_BIT } + { reuse GL_MAP_FLUSH_EXPLICIT_BIT } + { reuse GL_MAP_UNSYNCHRONIZED_BIT } + { Reuse tokens from ARB_texture_compression_rgtc } + { reuse GL_COMPRESSED_RED_RGTC1 } + { reuse GL_COMPRESSED_SIGNED_RED_RGTC1 } + { reuse GL_COMPRESSED_RG_RGTC2 } + { reuse GL_COMPRESSED_SIGNED_RG_RGTC2 } + { Reuse tokens from ARB_texture_rg } + { reuse GL_RG } + { reuse GL_RG_INTEGER } + { reuse GL_R8 } + { reuse GL_R16 } + { reuse GL_RG8 } + { reuse GL_RG16 } + { reuse GL_R16F } + { reuse GL_R32F } + { reuse GL_RG16F } + { reuse GL_RG32F } + { reuse GL_R8I } + { reuse GL_R8UI } + { reuse GL_R16I } + { reuse GL_R16UI } + { reuse GL_R32I } + { reuse GL_R32UI } + { reuse GL_RG8I } + { reuse GL_RG8UI } + { reuse GL_RG16I } + { reuse GL_RG16UI } + { reuse GL_RG32I } + { reuse GL_RG32UI } + { Reuse tokens from ARB_vertex_array_object } + { reuse GL_VERTEX_ARRAY_BINDING } +{$ifdef DGL_DEPRECATED} + GL_CLAMP_VERTEX_COLOR = $891A; + GL_CLAMP_FRAGMENT_COLOR = $891B; + GL_ALPHA_INTEGER = $8D97; + { Reuse tokens from ARB_framebuffer_object } + { reuse GL_TEXTURE_LUMINANCE_TYPE } + { reuse GL_TEXTURE_INTENSITY_TYPE } +{$endif} + + // GL_VERSION_3_1 + GL_SAMPLER_2D_RECT = $8B63; + GL_SAMPLER_2D_RECT_SHADOW = $8B64; + GL_SAMPLER_BUFFER = $8DC2; + GL_INT_SAMPLER_2D_RECT = $8DCD; + GL_INT_SAMPLER_BUFFER = $8DD0; + GL_UNSIGNED_INT_SAMPLER_2D_RECT = $8DD5; + GL_UNSIGNED_INT_SAMPLER_BUFFER = $8DD8; + GL_TEXTURE_BUFFER = $8C2A; + GL_MAX_TEXTURE_BUFFER_SIZE = $8C2B; + GL_TEXTURE_BINDING_BUFFER = $8C2C; + GL_TEXTURE_BUFFER_DATA_STORE_BINDING = $8C2D; + GL_TEXTURE_BUFFER_FORMAT = $8C2E; + GL_TEXTURE_RECTANGLE = $84F5; + GL_TEXTURE_BINDING_RECTANGLE = $84F6; + GL_PROXY_TEXTURE_RECTANGLE = $84F7; + GL_MAX_RECTANGLE_TEXTURE_SIZE = $84F8; + GL_RED_SNORM = $8F90; + GL_RG_SNORM = $8F91; + GL_RGB_SNORM = $8F92; + GL_RGBA_SNORM = $8F93; + GL_R8_SNORM = $8F94; + GL_RG8_SNORM = $8F95; + GL_RGB8_SNORM = $8F96; + GL_RGBA8_SNORM = $8F97; + GL_R16_SNORM = $8F98; + GL_RG16_SNORM = $8F99; + GL_RGB16_SNORM = $8F9A; + GL_RGBA16_SNORM = $8F9B; + GL_SIGNED_NORMALIZED = $8F9C; + GL_PRIMITIVE_RESTART = $8F9D; + GL_PRIMITIVE_RESTART_INDEX = $8F9E; + { Reuse tokens from ARB_copy_buffer } + { reuse GL_COPY_READ_BUFFER } + { reuse GL_COPY_WRITE_BUFFER } + { Reuse tokens from ARB_draw_instanced (none) } + { Reuse tokens from ARB_uniform_buffer_object } + { reuse GL_UNIFORM_BUFFER } + { reuse GL_UNIFORM_BUFFER_BINDING } + { reuse GL_UNIFORM_BUFFER_START } + { reuse GL_UNIFORM_BUFFER_SIZE } + { reuse GL_MAX_VERTEX_UNIFORM_BLOCKS } + { reuse GL_MAX_FRAGMENT_UNIFORM_BLOCKS } + { reuse GL_MAX_COMBINED_UNIFORM_BLOCKS } + { reuse GL_MAX_UNIFORM_BUFFER_BINDINGS } + { reuse GL_MAX_UNIFORM_BLOCK_SIZE } + { reuse GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS } + { reuse GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS } + { reuse GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT } + { reuse GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH } + { reuse GL_ACTIVE_UNIFORM_BLOCKS } + { reuse GL_UNIFORM_TYPE } + { reuse GL_UNIFORM_SIZE } + { reuse GL_UNIFORM_NAME_LENGTH } + { reuse GL_UNIFORM_BLOCK_INDEX } + { reuse GL_UNIFORM_OFFSET } + { reuse GL_UNIFORM_ARRAY_STRIDE } + { reuse GL_UNIFORM_MATRIX_STRIDE } + { reuse GL_UNIFORM_IS_ROW_MAJOR } + { reuse GL_UNIFORM_BLOCK_BINDING } + { reuse GL_UNIFORM_BLOCK_DATA_SIZE } + { reuse GL_UNIFORM_BLOCK_NAME_LENGTH } + { reuse GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS } + { reuse GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES } + { reuse GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER } + { reuse GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER } + { reuse GL_INVALID_INDEX } + + // GL_VERSION_3_2 + GL_CONTEXT_CORE_PROFILE_BIT = $00000001; + GL_CONTEXT_COMPATIBILITY_PROFILE_BIT = $00000002; + GL_LINES_ADJACENCY = $000A; + GL_LINE_STRIP_ADJACENCY = $000B; + GL_TRIANGLES_ADJACENCY = $000C; + GL_TRIANGLE_STRIP_ADJACENCY = $000D; + GL_PROGRAM_POINT_SIZE = $8642; + GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = $8C29; + GL_FRAMEBUFFER_ATTACHMENT_LAYERED = $8DA7; + GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = $8DA8; + GL_GEOMETRY_SHADER = $8DD9; + GL_GEOMETRY_VERTICES_OUT = $8916; + GL_GEOMETRY_INPUT_TYPE = $8917; + GL_GEOMETRY_OUTPUT_TYPE = $8918; + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = $8DDF; + GL_MAX_GEOMETRY_OUTPUT_VERTICES = $8DE0; + GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = $8DE1; + GL_MAX_VERTEX_OUTPUT_COMPONENTS = $9122; + GL_MAX_GEOMETRY_INPUT_COMPONENTS = $9123; + GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = $9124; + GL_MAX_FRAGMENT_INPUT_COMPONENTS = $9125; + GL_CONTEXT_PROFILE_MASK = $9126; + { reuse GL_MAX_VARYING_COMPONENTS } + { reuse GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER } + { Reuse tokens from ARB_depth_clamp } + { reuse GL_DEPTH_CLAMP } + { Reuse tokens from ARB_draw_elements_base_vertex (none) } + { Reuse tokens from ARB_fragment_coord_conventions (none) } + { Reuse tokens from ARB_provoking_vertex } + { reuse GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION } + { reuse GL_FIRST_VERTEX_CONVENTION } + { reuse GL_LAST_VERTEX_CONVENTION } + { reuse GL_PROVOKING_VERTEX } + { Reuse tokens from ARB_seamless_cube_map } + { reuse GL_TEXTURE_CUBE_MAP_SEAMLESS } + { Reuse tokens from ARB_sync } + { reuse GL_MAX_SERVER_WAIT_TIMEOUT } + { reuse GL_OBJECT_TYPE } + { reuse GL_SYNC_CONDITION } + { reuse GL_SYNC_STATUS } + { reuse GL_SYNC_FLAGS } + { reuse GL_SYNC_FENCE } + { reuse GL_SYNC_GPU_COMMANDS_COMPLETE } + { reuse GL_UNSIGNALED } + { reuse GL_SIGNALED } + { reuse GL_ALREADY_SIGNALED } + { reuse GL_TIMEOUT_EXPIRED } + { reuse GL_CONDITION_SATISFIED } + { reuse GL_WAIT_FAILED } + { reuse GL_TIMEOUT_IGNORED } + { reuse GL_SYNC_FLUSH_COMMANDS_BIT } + { reuse GL_TIMEOUT_IGNORED } + { Reuse tokens from ARB_texture_multisample } + { reuse GL_SAMPLE_POSITION } + { reuse GL_SAMPLE_MASK } + { reuse GL_SAMPLE_MASK_VALUE } + { reuse GL_MAX_SAMPLE_MASK_WORDS } + { reuse GL_TEXTURE_2D_MULTISAMPLE } + { reuse GL_PROXY_TEXTURE_2D_MULTISAMPLE } + { reuse GL_TEXTURE_2D_MULTISAMPLE_ARRAY } + { reuse GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY } + { reuse GL_TEXTURE_BINDING_2D_MULTISAMPLE } + { reuse GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY } + { reuse GL_TEXTURE_SAMPLES } + { reuse GL_TEXTURE_FIXED_SAMPLE_LOCATIONS } + { reuse GL_SAMPLER_2D_MULTISAMPLE } + { reuse GL_INT_SAMPLER_2D_MULTISAMPLE } + { reuse GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE } + { reuse GL_SAMPLER_2D_MULTISAMPLE_ARRAY } + { reuse GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY } + { reuse GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY } + { reuse GL_MAX_COLOR_TEXTURE_SAMPLES } + { reuse GL_MAX_DEPTH_TEXTURE_SAMPLES } + { reuse GL_MAX_INTEGER_SAMPLES } + { Don't need to reuse tokens from ARB_vertex_array_bgra since they're already in 1.2 core } + + // GL_VERSION_3_3 + GL_VERTEX_ATTRIB_ARRAY_DIVISOR = $88FE; + { Reuse tokens from ARB_blend_func_extended } + { reuse GL_SRC1_COLOR } + { reuse GL_ONE_MINUS_SRC1_COLOR } + { reuse GL_ONE_MINUS_SRC1_ALPHA } + { reuse GL_MAX_DUAL_SOURCE_DRAW_BUFFERS } + { Reuse tokens from ARB_explicit_attrib_location (none) } + { Reuse tokens from ARB_occlusion_query2 } + { reuse GL_ANY_SAMPLES_PASSED } + { Reuse tokens from ARB_sampler_objects } + { reuse GL_SAMPLER_BINDING } + { Reuse tokens from ARB_shader_bit_encoding (none) } + { Reuse tokens from ARB_texture_rgb10_a2ui } + { reuse GL_RGB10_A2UI } + { Reuse tokens from ARB_texture_swizzle } + { reuse GL_TEXTURE_SWIZZLE_R } + { reuse GL_TEXTURE_SWIZZLE_G } + { reuse GL_TEXTURE_SWIZZLE_B } + { reuse GL_TEXTURE_SWIZZLE_A } + { reuse GL_TEXTURE_SWIZZLE_RGBA } + { Reuse tokens from ARB_timer_query } + { reuse GL_TIME_ELAPSED } + { reuse GL_TIMESTAMP } + { Reuse tokens from ARB_vertex_type_2_10_10_10_rev } + { reuse GL_INT_2_10_10_10_REV } + + // GL_VERSION_4_0 + GL_SAMPLE_SHADING = $8C36; + GL_MIN_SAMPLE_SHADING_VALUE = $8C37; + GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = $8E5E; + GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = $8E5F; + GL_TEXTURE_CUBE_MAP_ARRAY = $9009; + GL_TEXTURE_BINDING_CUBE_MAP_ARRAY = $900A; + GL_PROXY_TEXTURE_CUBE_MAP_ARRAY = $900B; + GL_SAMPLER_CUBE_MAP_ARRAY = $900C; + GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = $900D; + GL_INT_SAMPLER_CUBE_MAP_ARRAY = $900E; + GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = $900F; + { Reuse tokens from ARB_texture_query_lod (none) } + { Reuse tokens from ARB_draw_buffers_blend (none) } + { Reuse tokens from ARB_draw_indirect } + { reuse GL_DRAW_INDIRECT_BUFFER } + { reuse GL_DRAW_INDIRECT_BUFFER_BINDING } + { Reuse tokens from ARB_gpu_shader5 } + { reuse GL_GEOMETRY_SHADER_INVOCATIONS } + { reuse GL_MAX_GEOMETRY_SHADER_INVOCATIONS } + { reuse GL_MIN_FRAGMENT_INTERPOLATION_OFFSET } + { reuse GL_MAX_FRAGMENT_INTERPOLATION_OFFSET } + { reuse GL_FRAGMENT_INTERPOLATION_OFFSET_BITS } + { reuse GL_MAX_VERTEX_STREAMS } + { Reuse tokens from ARB_gpu_shader_fp64 } + { reuse GL_DOUBLE_VEC2 } + { reuse GL_DOUBLE_VEC3 } + { reuse GL_DOUBLE_VEC4 } + { reuse GL_DOUBLE_MAT2 } + { reuse GL_DOUBLE_MAT3 } + { reuse GL_DOUBLE_MAT4 } + { reuse GL_DOUBLE_MAT2x3 } + { reuse GL_DOUBLE_MAT2x4 } + { reuse GL_DOUBLE_MAT3x2 } + { reuse GL_DOUBLE_MAT3x4 } + { reuse GL_DOUBLE_MAT4x2 } + { reuse GL_DOUBLE_MAT4x3 } + { Reuse tokens from ARB_shader_subroutine } + { reuse GL_ACTIVE_SUBROUTINES } + { reuse GL_ACTIVE_SUBROUTINE_UNIFORMS } + { reuse GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS } + { reuse GL_ACTIVE_SUBROUTINE_MAX_LENGTH } + { reuse GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH } + { reuse GL_MAX_SUBROUTINES } + { reuse GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS } + { reuse GL_NUM_COMPATIBLE_SUBROUTINES } + { reuse GL_COMPATIBLE_SUBROUTINES } + { Reuse tokens from ARB_tessellation_shader } + { reuse GL_PATCHES } + { reuse GL_PATCH_VERTICES } + { reuse GL_PATCH_DEFAULT_INNER_LEVEL } + { reuse GL_PATCH_DEFAULT_OUTER_LEVEL } + { reuse GL_TESS_CONTROL_OUTPUT_VERTICES } + { reuse GL_TESS_GEN_MODE } + { reuse GL_TESS_GEN_SPACING } + { reuse GL_TESS_GEN_VERTEX_ORDER } + { reuse GL_TESS_GEN_POINT_MODE } + { reuse GL_ISOLINES } + { reuse GL_FRACTIONAL_ODD } + { reuse GL_FRACTIONAL_EVEN } + { reuse GL_MAX_PATCH_VERTICES } + { reuse GL_MAX_TESS_GEN_LEVEL } + { reuse GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS } + { reuse GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS } + { reuse GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS } + { reuse GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS } + { reuse GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS } + { reuse GL_MAX_TESS_PATCH_COMPONENTS } + { reuse GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS } + { reuse GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS } + { reuse GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS } + { reuse GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS } + { reuse GL_MAX_TESS_CONTROL_INPUT_COMPONENTS } + { reuse GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS } + { reuse GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS } + { reuse GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS } + { reuse GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER } + { reuse GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER } + { reuse GL_TESS_EVALUATION_SHADER } + { reuse GL_TESS_CONTROL_SHADER } + { Reuse tokens from ARB_texture_buffer_object_rgb32 (none) } + { Reuse tokens from ARB_transform_feedback2 } + { reuse GL_TRANSFORM_FEEDBACK } + { reuse GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED } + { reuse GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE } + { reuse GL_TRANSFORM_FEEDBACK_BINDING } + { Reuse tokens from ARB_transform_feedback3 } + { reuse GL_MAX_TRANSFORM_FEEDBACK_BUFFERS } + { reuse GL_MAX_VERTEX_STREAMS } + + // GL_VERSION_4_1 + { Reuse tokens from ARB_ES2_compatibility } + { reuse GL_FIXED } + { reuse GL_IMPLEMENTATION_COLOR_READ_TYPE } + { reuse GL_IMPLEMENTATION_COLOR_READ_FORMAT } + { reuse GL_LOW_FLOAT } + { reuse GL_MEDIUM_FLOAT } + { reuse GL_HIGH_FLOAT } + { reuse GL_LOW_INT } + { reuse GL_MEDIUM_INT } + { reuse GL_HIGH_INT } + { reuse GL_SHADER_COMPILER } + { reuse GL_NUM_SHADER_BINARY_FORMATS } + { reuse GL_MAX_VERTEX_UNIFORM_VECTORS } + { reuse GL_MAX_VARYING_VECTORS } + { reuse GL_MAX_FRAGMENT_UNIFORM_VECTORS } + { reuse GL_RGB565 } + { Reuse tokens from ARB_get_program_binary } + { reuse GL_PROGRAM_BINARY_RETRIEVABLE_HINT } + { reuse GL_PROGRAM_BINARY_LENGTH } + { reuse GL_NUM_PROGRAM_BINARY_FORMATS } + { reuse GL_PROGRAM_BINARY_FORMATS } + { Reuse tokens from ARB_separate_shader_objects } + { reuse GL_VERTEX_SHADER_BIT } + { reuse GL_FRAGMENT_SHADER_BIT } + { reuse GL_GEOMETRY_SHADER_BIT } + { reuse GL_TESS_CONTROL_SHADER_BIT } + { reuse GL_TESS_EVALUATION_SHADER_BIT } + { reuse GL_ALL_SHADER_BITS } + { reuse GL_PROGRAM_SEPARABLE } + { reuse GL_ACTIVE_PROGRAM } + { reuse GL_PROGRAM_PIPELINE_BINDING } + { Reuse tokens from ARB_shader_precision (none) } + { Reuse tokens from ARB_vertex_attrib_64bit - all are in GL 3.0 and 4.0 already } + { Reuse tokens from ARB_viewport_array - some are in GL 1.1 and ARB_provoking_vertex already } + { reuse GL_MAX_VIEWPORTS } + { reuse GL_VIEWPORT_SUBPIXEL_BITS } + { reuse GL_VIEWPORT_BOUNDS_RANGE } + { reuse GL_LAYER_PROVOKING_VERTEX } + { reuse GL_VIEWPORT_INDEX_PROVOKING_VERTEX } + { reuse GL_UNDEFINED_VERTEX } + + // GL_VERSION_4_2 + { Reuse tokens from ARB_base_instance (none) } + { Reuse tokens from ARB_shading_language_420pack (none) } + { Reuse tokens from ARB_transform_feedback_instanced (none) } + { Reuse tokens from ARB_compressed_texture_pixel_storage } + { reuse GL_UNPACK_COMPRESSED_BLOCK_WIDTH } + { reuse GL_UNPACK_COMPRESSED_BLOCK_HEIGHT } + { reuse GL_UNPACK_COMPRESSED_BLOCK_DEPTH } + { reuse GL_UNPACK_COMPRESSED_BLOCK_SIZE } + { reuse GL_PACK_COMPRESSED_BLOCK_WIDTH } + { reuse GL_PACK_COMPRESSED_BLOCK_HEIGHT } + { reuse GL_PACK_COMPRESSED_BLOCK_DEPTH } + { reuse GL_PACK_COMPRESSED_BLOCK_SIZE } + { Reuse tokens from ARB_conservative_depth (none) } + { Reuse tokens from ARB_internalformat_query } + { reuse GL_NUM_SAMPLE_COUNTS } + { Reuse tokens from ARB_map_buffer_alignment } + { reuse GL_MIN_MAP_BUFFER_ALIGNMENT } + { Reuse tokens from ARB_shader_atomic_counters } + { reuse GL_ATOMIC_COUNTER_BUFFER } + { reuse GL_ATOMIC_COUNTER_BUFFER_BINDING } + { reuse GL_ATOMIC_COUNTER_BUFFER_START } + { reuse GL_ATOMIC_COUNTER_BUFFER_SIZE } + { reuse GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE } + { reuse GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS } + { reuse GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES } + { reuse GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER } + { reuse GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER } + { reuse GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER } + { reuse GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER } + { reuse GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER } + { reuse GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS } + { reuse GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS } + { reuse GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS } + { reuse GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS } + { reuse GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS } + { reuse GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS } + { reuse GL_MAX_VERTEX_ATOMIC_COUNTERS } + { reuse GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS } + { reuse GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS } + { reuse GL_MAX_GEOMETRY_ATOMIC_COUNTERS } + { reuse GL_MAX_FRAGMENT_ATOMIC_COUNTERS } + { reuse GL_MAX_COMBINED_ATOMIC_COUNTERS } + { reuse GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE } + { reuse GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS } + { reuse GL_ACTIVE_ATOMIC_COUNTER_BUFFERS } + { reuse GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX } + { reuse GL_UNSIGNED_INT_ATOMIC_COUNTER } + { Reuse tokens from ARB_shader_image_load_store } + { reuse GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT } + { reuse GL_ELEMENT_ARRAY_BARRIER_BIT } + { reuse GL_UNIFORM_BARRIER_BIT } + { reuse GL_TEXTURE_FETCH_BARRIER_BIT } + { reuse GL_SHADER_IMAGE_ACCESS_BARRIER_BIT } + { reuse GL_COMMAND_BARRIER_BIT } + { reuse GL_PIXEL_BUFFER_BARRIER_BIT } + { reuse GL_TEXTURE_UPDATE_BARRIER_BIT } + { reuse GL_BUFFER_UPDATE_BARRIER_BIT } + { reuse GL_FRAMEBUFFER_BARRIER_BIT } + { reuse GL_TRANSFORM_FEEDBACK_BARRIER_BIT } + { reuse GL_ATOMIC_COUNTER_BARRIER_BIT } + { reuse GL_ALL_BARRIER_BITS } + { reuse GL_MAX_IMAGE_UNITS } + { reuse GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS } + { reuse GL_IMAGE_BINDING_NAME } + { reuse GL_IMAGE_BINDING_LEVEL } + { reuse GL_IMAGE_BINDING_LAYERED } + { reuse GL_IMAGE_BINDING_LAYER } + { reuse GL_IMAGE_BINDING_ACCESS } + { reuse GL_IMAGE_1D } + { reuse GL_IMAGE_2D } + { reuse GL_IMAGE_3D } + { reuse GL_IMAGE_2D_RECT } + { reuse GL_IMAGE_CUBE } + { reuse GL_IMAGE_BUFFER } + { reuse GL_IMAGE_1D_ARRAY } + { reuse GL_IMAGE_2D_ARRAY } + { reuse GL_IMAGE_CUBE_MAP_ARRAY } + { reuse GL_IMAGE_2D_MULTISAMPLE } + { reuse GL_IMAGE_2D_MULTISAMPLE_ARRAY } + { reuse GL_INT_IMAGE_1D } + { reuse GL_INT_IMAGE_2D } + { reuse GL_INT_IMAGE_3D } + { reuse GL_INT_IMAGE_2D_RECT } + { reuse GL_INT_IMAGE_CUBE } + { reuse GL_INT_IMAGE_BUFFER } + { reuse GL_INT_IMAGE_1D_ARRAY } + { reuse GL_INT_IMAGE_2D_ARRAY } + { reuse GL_INT_IMAGE_CUBE_MAP_ARRAY } + { reuse GL_INT_IMAGE_2D_MULTISAMPLE } + { reuse GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY } + { reuse GL_UNSIGNED_INT_IMAGE_1D } + { reuse GL_UNSIGNED_INT_IMAGE_2D } + { reuse GL_UNSIGNED_INT_IMAGE_3D } + { reuse GL_UNSIGNED_INT_IMAGE_2D_RECT } + { reuse GL_UNSIGNED_INT_IMAGE_CUBE } + { reuse GL_UNSIGNED_INT_IMAGE_BUFFER } + { reuse GL_UNSIGNED_INT_IMAGE_1D_ARRAY } + { reuse GL_UNSIGNED_INT_IMAGE_2D_ARRAY } + { reuse GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY } + { reuse GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE } + { reuse GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY } + { reuse GL_MAX_IMAGE_SAMPLES } + { reuse GL_IMAGE_BINDING_FORMAT } + { reuse GL_IMAGE_FORMAT_COMPATIBILITY_TYPE } + { reuse GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE } + { reuse GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS } + { reuse GL_MAX_VERTEX_IMAGE_UNIFORMS } + { reuse GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS } + { reuse GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS } + { reuse GL_MAX_GEOMETRY_IMAGE_UNIFORMS } + { reuse GL_MAX_FRAGMENT_IMAGE_UNIFORMS } + { reuse GL_MAX_COMBINED_IMAGE_UNIFORMS } + { Reuse tokens from ARB_shading_language_packing (none) } + { Reuse tokens from ARB_texture_storage } + { reuse GL_TEXTURE_IMMUTABLE_FORMAT } + + // GL_VERSION_4_3 + GL_NUM_SHADING_LANGUAGE_VERSIONS = $82E9; + GL_VERTEX_ATTRIB_ARRAY_LONG = $874E; + { Reuse tokens from ARB_arrays_of_arrays (none, GLSL only) } + { Reuse tokens from ARB_fragment_layer_viewport (none, GLSL only) } + { Reuse tokens from ARB_shader_image_size (none, GLSL only) } + { Reuse tokens from ARB_ES3_compatibility } + { reuse GL_COMPRESSED_RGB8_ETC2 } + { reuse GL_COMPRESSED_SRGB8_ETC2 } + { reuse GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 } + { reuse GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 } + { reuse GL_COMPRESSED_RGBA8_ETC2_EAC } + { reuse GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC } + { reuse GL_COMPRESSED_R11_EAC } + { reuse GL_COMPRESSED_SIGNED_R11_EAC } + { reuse GL_COMPRESSED_RG11_EAC } + { reuse GL_COMPRESSED_SIGNED_RG11_EAC } + { reuse GL_PRIMITIVE_RESTART_FIXED_INDEX } + { reuse GL_ANY_SAMPLES_PASSED_CONSERVATIVE } + { reuse GL_MAX_ELEMENT_INDEX } + { Reuse tokens from ARB_clear_buffer_object (none) } + { Reuse tokens from ARB_compute_shader } + { reuse GL_COMPUTE_SHADER } + { reuse GL_MAX_COMPUTE_UNIFORM_BLOCKS } + { reuse GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS } + { reuse GL_MAX_COMPUTE_IMAGE_UNIFORMS } + { reuse GL_MAX_COMPUTE_SHARED_MEMORY_SIZE } + { reuse GL_MAX_COMPUTE_UNIFORM_COMPONENTS } + { reuse GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS } + { reuse GL_MAX_COMPUTE_ATOMIC_COUNTERS } + { reuse GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS } + { reuse GL_MAX_COMPUTE_LOCAL_INVOCATIONS } + { reuse GL_MAX_COMPUTE_WORK_GROUP_COUNT } + { reuse GL_MAX_COMPUTE_WORK_GROUP_SIZE } + { reuse GL_COMPUTE_LOCAL_WORK_SIZE } + { reuse GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER } + { reuse GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER } + { reuse GL_DISPATCH_INDIRECT_BUFFER } + { reuse GL_DISPATCH_INDIRECT_BUFFER_BINDING } + { Reuse tokens from ARB_copy_image (none) } + { Reuse tokens from KHR_debug } + { reuse GL_DEBUG_OUTPUT_SYNCHRONOUS } + { reuse GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH } + { reuse GL_DEBUG_CALLBACK_FUNCTION } + { reuse GL_DEBUG_CALLBACK_USER_PARAM } + { reuse GL_DEBUG_SOURCE_API } + { reuse GL_DEBUG_SOURCE_WINDOW_SYSTEM } + { reuse GL_DEBUG_SOURCE_SHADER_COMPILER } + { reuse GL_DEBUG_SOURCE_THIRD_PARTY } + { reuse GL_DEBUG_SOURCE_APPLICATION } + { reuse GL_DEBUG_SOURCE_OTHER } + { reuse GL_DEBUG_TYPE_ERROR } + { reuse GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR } + { reuse GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR } + { reuse GL_DEBUG_TYPE_PORTABILITY } + { reuse GL_DEBUG_TYPE_PERFORMANCE } + { reuse GL_DEBUG_TYPE_OTHER } + { reuse GL_MAX_DEBUG_MESSAGE_LENGTH } + { reuse GL_MAX_DEBUG_LOGGED_MESSAGES } + { reuse GL_DEBUG_LOGGED_MESSAGES } + { reuse GL_DEBUG_SEVERITY_HIGH } + { reuse GL_DEBUG_SEVERITY_MEDIUM } + { reuse GL_DEBUG_SEVERITY_LOW } + { reuse GL_DEBUG_TYPE_MARKER } + { reuse GL_DEBUG_TYPE_PUSH_GROUP } + { reuse GL_DEBUG_TYPE_POP_GROUP } + { reuse GL_DEBUG_SEVERITY_NOTIFICATION } + { reuse GL_MAX_DEBUG_GROUP_STACK_DEPTH } + { reuse GL_DEBUG_GROUP_STACK_DEPTH } + { reuse GL_BUFFER } + { reuse GL_SHADER } + { reuse GL_PROGRAM } + { reuse GL_QUERY } + { reuse GL_PROGRAM_PIPELINE } + { reuse GL_SAMPLER } + { reuse GL_DISPLAY_LIST } + { reuse GL_MAX_LABEL_LENGTH } + { reuse GL_DEBUG_OUTPUT } + { reuse GL_CONTEXT_FLAG_DEBUG_BIT } + { reuse GL_STACK_UNDERFLOW } + { reuse GL_STACK_OVERFLOW } + { Reuse tokens from ARB_explicit_uniform_location } + { reuse GL_MAX_UNIFORM_LOCATIONS } + { Reuse tokens from ARB_framebuffer_no_attachments } + { reuse GL_FRAMEBUFFER_DEFAULT_WIDTH } + { reuse GL_FRAMEBUFFER_DEFAULT_HEIGHT } + { reuse GL_FRAMEBUFFER_DEFAULT_LAYERS } + { reuse GL_FRAMEBUFFER_DEFAULT_SAMPLES } + { reuse GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS } + { reuse GL_MAX_FRAMEBUFFER_WIDTH } + { reuse GL_MAX_FRAMEBUFFER_HEIGHT } + { reuse GL_MAX_FRAMEBUFFER_LAYERS } + { reuse GL_MAX_FRAMEBUFFER_SAMPLES } + { Reuse tokens from ARB_internalformat_query2 } + { reuse GL_INTERNALFORMAT_SUPPORTED } + { reuse GL_INTERNALFORMAT_PREFERRED } + { reuse GL_INTERNALFORMAT_RED_SIZE } + { reuse GL_INTERNALFORMAT_GREEN_SIZE } + { reuse GL_INTERNALFORMAT_BLUE_SIZE } + { reuse GL_INTERNALFORMAT_ALPHA_SIZE } + { reuse GL_INTERNALFORMAT_DEPTH_SIZE } + { reuse GL_INTERNALFORMAT_STENCIL_SIZE } + { reuse GL_INTERNALFORMAT_SHARED_SIZE } + { reuse GL_INTERNALFORMAT_RED_TYPE } + { reuse GL_INTERNALFORMAT_GREEN_TYPE } + { reuse GL_INTERNALFORMAT_BLUE_TYPE } + { reuse GL_INTERNALFORMAT_ALPHA_TYPE } + { reuse GL_INTERNALFORMAT_DEPTH_TYPE } + { reuse GL_INTERNALFORMAT_STENCIL_TYPE } + { reuse GL_MAX_WIDTH } + { reuse GL_MAX_HEIGHT } + { reuse GL_MAX_DEPTH } + { reuse GL_MAX_LAYERS } + { reuse GL_MAX_COMBINED_DIMENSIONS } + { reuse GL_COLOR_COMPONENTS } + { reuse GL_DEPTH_COMPONENTS } + { reuse GL_STENCIL_COMPONENTS } + { reuse GL_COLOR_RENDERABLE } + { reuse GL_DEPTH_RENDERABLE } + { reuse GL_STENCIL_RENDERABLE } + { reuse GL_FRAMEBUFFER_RENDERABLE } + { reuse GL_FRAMEBUFFER_RENDERABLE_LAYERED } + { reuse GL_FRAMEBUFFER_BLEND } + { reuse GL_READ_PIXELS } + { reuse GL_READ_PIXELS_FORMAT } + { reuse GL_READ_PIXELS_TYPE } + { reuse GL_TEXTURE_IMAGE_FORMAT } + { reuse GL_TEXTURE_IMAGE_TYPE } + { reuse GL_GET_TEXTURE_IMAGE_FORMAT } + { reuse GL_GET_TEXTURE_IMAGE_TYPE } + { reuse GL_MIPMAP } + { reuse GL_MANUAL_GENERATE_MIPMAP } + { reuse GL_AUTO_GENERATE_MIPMAP } + { reuse GL_COLOR_ENCODING } + { reuse GL_SRGB_READ } + { reuse GL_SRGB_WRITE } + { reuse GL_FILTER } + { reuse GL_VERTEX_TEXTURE } + { reuse GL_TESS_CONTROL_TEXTURE } + { reuse GL_TESS_EVALUATION_TEXTURE } + { reuse GL_GEOMETRY_TEXTURE } + { reuse GL_FRAGMENT_TEXTURE } + { reuse GL_COMPUTE_TEXTURE } + { reuse GL_TEXTURE_SHADOW } + { reuse GL_TEXTURE_GATHER } + { reuse GL_TEXTURE_GATHER_SHADOW } + { reuse GL_SHADER_IMAGE_LOAD } + { reuse GL_SHADER_IMAGE_STORE } + { reuse GL_SHADER_IMAGE_ATOMIC } + { reuse GL_IMAGE_TEXEL_SIZE } + { reuse GL_IMAGE_COMPATIBILITY_CLASS } + { reuse GL_IMAGE_PIXEL_FORMAT } + { reuse GL_IMAGE_PIXEL_TYPE } + { reuse GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST } + { reuse GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST } + { reuse GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE } + { reuse GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE } + { reuse GL_TEXTURE_COMPRESSED_BLOCK_WIDTH } + { reuse GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT } + { reuse GL_TEXTURE_COMPRESSED_BLOCK_SIZE } + { reuse GL_CLEAR_BUFFER } + { reuse GL_TEXTURE_VIEW } + { reuse GL_VIEW_COMPATIBILITY_CLASS } + { reuse GL_FULL_SUPPORT } + { reuse GL_CAVEAT_SUPPORT } + { reuse GL_IMAGE_CLASS_4_X_32 } + { reuse GL_IMAGE_CLASS_2_X_32 } + { reuse GL_IMAGE_CLASS_1_X_32 } + { reuse GL_IMAGE_CLASS_4_X_16 } + { reuse GL_IMAGE_CLASS_2_X_16 } + { reuse GL_IMAGE_CLASS_1_X_16 } + { reuse GL_IMAGE_CLASS_4_X_8 } + { reuse GL_IMAGE_CLASS_2_X_8 } + { reuse GL_IMAGE_CLASS_1_X_8 } + { reuse GL_IMAGE_CLASS_11_11_10 } + { reuse GL_IMAGE_CLASS_10_10_10_2 } + { reuse GL_VIEW_CLASS_128_BITS } + { reuse GL_VIEW_CLASS_96_BITS } + { reuse GL_VIEW_CLASS_64_BITS } + { reuse GL_VIEW_CLASS_48_BITS } + { reuse GL_VIEW_CLASS_32_BITS } + { reuse GL_VIEW_CLASS_24_BITS } + { reuse GL_VIEW_CLASS_16_BITS } + { reuse GL_VIEW_CLASS_8_BITS } + { reuse GL_VIEW_CLASS_S3TC_DXT1_RGB } + { reuse GL_VIEW_CLASS_S3TC_DXT1_RGBA } + { reuse GL_VIEW_CLASS_S3TC_DXT3_RGBA } + { reuse GL_VIEW_CLASS_S3TC_DXT5_RGBA } + { reuse GL_VIEW_CLASS_RGTC1_RED } + { reuse GL_VIEW_CLASS_RGTC2_RG } + { reuse GL_VIEW_CLASS_BPTC_UNORM } + { reuse GL_VIEW_CLASS_BPTC_FLOAT } + { Reuse tokens from ARB_invalidate_subdata (none) } + { Reuse tokens from ARB_multi_draw_indirect (none) } + { Reuse tokens from ARB_program_interface_query } + { reuse GL_UNIFORM } + { reuse GL_UNIFORM_BLOCK } + { reuse GL_PROGRAM_INPUT } + { reuse GL_PROGRAM_OUTPUT } + { reuse GL_BUFFER_VARIABLE } + { reuse GL_SHADER_STORAGE_BLOCK } + { reuse GL_VERTEX_SUBROUTINE } + { reuse GL_TESS_CONTROL_SUBROUTINE } + { reuse GL_TESS_EVALUATION_SUBROUTINE } + { reuse GL_GEOMETRY_SUBROUTINE } + { reuse GL_FRAGMENT_SUBROUTINE } + { reuse GL_COMPUTE_SUBROUTINE } + { reuse GL_VERTEX_SUBROUTINE_UNIFORM } + { reuse GL_TESS_CONTROL_SUBROUTINE_UNIFORM } + { reuse GL_TESS_EVALUATION_SUBROUTINE_UNIFORM } + { reuse GL_GEOMETRY_SUBROUTINE_UNIFORM } + { reuse GL_FRAGMENT_SUBROUTINE_UNIFORM } + { reuse GL_COMPUTE_SUBROUTINE_UNIFORM } + { reuse GL_TRANSFORM_FEEDBACK_VARYING } + { reuse GL_ACTIVE_RESOURCES } + { reuse GL_MAX_NAME_LENGTH } + { reuse GL_MAX_NUM_ACTIVE_VARIABLES } + { reuse GL_MAX_NUM_COMPATIBLE_SUBROUTINES } + { reuse GL_NAME_LENGTH } + { reuse GL_TYPE } + { reuse GL_ARRAY_SIZE } + { reuse GL_OFFSET } + { reuse GL_BLOCK_INDEX } + { reuse GL_ARRAY_STRIDE } + { reuse GL_MATRIX_STRIDE } + { reuse GL_IS_ROW_MAJOR } + { reuse GL_ATOMIC_COUNTER_BUFFER_INDEX } + { reuse GL_BUFFER_BINDING } + { reuse GL_BUFFER_DATA_SIZE } + { reuse GL_NUM_ACTIVE_VARIABLES } + { reuse GL_ACTIVE_VARIABLES } + { reuse GL_REFERENCED_BY_VERTEX_SHADER } + { reuse GL_REFERENCED_BY_TESS_CONTROL_SHADER } + { reuse GL_REFERENCED_BY_TESS_EVALUATION_SHADER } + { reuse GL_REFERENCED_BY_GEOMETRY_SHADER } + { reuse GL_REFERENCED_BY_FRAGMENT_SHADER } + { reuse GL_REFERENCED_BY_COMPUTE_SHADER } + { reuse GL_TOP_LEVEL_ARRAY_SIZE } + { reuse GL_TOP_LEVEL_ARRAY_STRIDE } + { reuse GL_LOCATION } + { reuse GL_LOCATION_INDEX } + { reuse GL_IS_PER_PATCH } + { Reuse tokens from ARB_robust_buffer_access_behavior (none) } + { Reuse tokens from ARB_shader_storage_buffer_object } + { reuse GL_SHADER_STORAGE_BUFFER } + { reuse GL_SHADER_STORAGE_BUFFER_BINDING } + { reuse GL_SHADER_STORAGE_BUFFER_START } + { reuse GL_SHADER_STORAGE_BUFFER_SIZE } + { reuse GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS } + { reuse GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS } + { reuse GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS } + { reuse GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS } + { reuse GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS } + { reuse GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS } + { reuse GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS } + { reuse GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS } + { reuse GL_MAX_SHADER_STORAGE_BLOCK_SIZE } + { reuse GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT } + { reuse GL_SHADER_STORAGE_BARRIER_BIT } + { reuse GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES } + { Reuse tokens from ARB_stencil_texturing } + { reuse GL_DEPTH_STENCIL_TEXTURE_MODE } + { Reuse tokens from ARB_texture_buffer_range } + { reuse GL_TEXTURE_BUFFER_OFFSET } + { reuse GL_TEXTURE_BUFFER_SIZE } + { reuse GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT } + { Reuse tokens from ARB_texture_query_levels (none) } + { Reuse tokens from ARB_texture_storage_multisample (none) } + { Reuse tokens from ARB_texture_view } + { reuse GL_TEXTURE_VIEW_MIN_LEVEL } + { reuse GL_TEXTURE_VIEW_NUM_LEVELS } + { reuse GL_TEXTURE_VIEW_MIN_LAYER } + { reuse GL_TEXTURE_VIEW_NUM_LAYERS } + { reuse GL_TEXTURE_IMMUTABLE_LEVELS } + { Reuse tokens from ARB_vertex_attrib_binding } + { reuse GL_VERTEX_ATTRIB_BINDING } + { reuse GL_VERTEX_ATTRIB_RELATIVE_OFFSET } + { reuse GL_VERTEX_BINDING_DIVISOR } + { reuse GL_VERTEX_BINDING_OFFSET } + { reuse GL_VERTEX_BINDING_STRIDE } + { reuse GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET } + { reuse GL_MAX_VERTEX_ATTRIB_BINDINGS } + + + // GL_3DFX_multisample + GL_MULTISAMPLE_3DFX = $86B2; + GL_SAMPLE_BUFFERS_3DFX = $86B3; + GL_SAMPLES_3DFX = $86B4; + GL_MULTISAMPLE_BIT_3DFX = $20000000; + + // GL_3DFX_texture_compression_FXT1 + GL_COMPRESSED_RGB_FXT1_3DFX = $86B0; + GL_COMPRESSED_RGBA_FXT1_3DFX = $86B1; + + // GL_APPLE_client_storage + GL_UNPACK_CLIENT_STORAGE_APPLE = $85B2; + + // GL_APPLE_element_array + GL_ELEMENT_ARRAY_APPLE = $8A0C; + GL_ELEMENT_ARRAY_TYPE_APPLE = $8A0D; + GL_ELEMENT_ARRAY_POINTER_APPLE = $8A0E; + + // GL_APPLE_fence + GL_DRAW_PIXELS_APPLE = $8A0A; + GL_FENCE_APPLE = $8A0B; + + // GL_APPLE_specular_vector + GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE = $85B0; + + // GL_APPLE_transform_hint + GL_TRANSFORM_HINT_APPLE = $85B1; + + // GL_APPLE_vertex_array_object + GL_VERTEX_ARRAY_BINDING_APPLE = $85B5; + + // GL_APPLE_vertex_array_range + GL_VERTEX_ARRAY_RANGE_APPLE = $851D; + GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE = $851E; + GL_VERTEX_ARRAY_STORAGE_HINT_APPLE = $851F; + GL_VERTEX_ARRAY_RANGE_POINTER_APPLE = $8521; + GL_STORAGE_CLIENT_APPLE = $85B4; + GL_STORAGE_CACHED_APPLE = $85BE; + GL_STORAGE_SHARED_APPLE = $85BF; + + // GL_APPLE_ycbcr_422 + GL_YCBCR_422_APPLE = $85B9; + GL_UNSIGNED_SHORT_8_8_APPLE = $85BA; + GL_UNSIGNED_SHORT_8_8_REV_APPLE = $85BB; + + // GL_APPLE_texture_range + GL_TEXTURE_RANGE_LENGTH_APPLE = $85B7; + GL_TEXTURE_RANGE_POINTER_APPLE = $85B8; + GL_TEXTURE_STORAGE_HINT_APPLE = $85BC; + GL_STORAGE_PRIVATE_APPLE = $85BD; + { reuse GL_STORAGE_CACHED_APPLE } + { reuse GL_STORAGE_SHARED_APPLE } + + // GL_APPLE_float_pixels + GL_HALF_APPLE = $140B; + GL_RGBA_FLOAT32_APPLE = $8814; + GL_RGB_FLOAT32_APPLE = $8815; + GL_ALPHA_FLOAT32_APPLE = $8816; + GL_INTENSITY_FLOAT32_APPLE = $8817; + GL_LUMINANCE_FLOAT32_APPLE = $8818; + GL_LUMINANCE_ALPHA_FLOAT32_APPLE = $8819; + GL_RGBA_FLOAT16_APPLE = $881A; + GL_RGB_FLOAT16_APPLE = $881B; + GL_ALPHA_FLOAT16_APPLE = $881C; + GL_INTENSITY_FLOAT16_APPLE = $881D; + GL_LUMINANCE_FLOAT16_APPLE = $881E; + GL_LUMINANCE_ALPHA_FLOAT16_APPLE = $881F; + GL_COLOR_FLOAT_APPLE = $8A0F; + + // GL_APPLE_vertex_program_evaluators + GL_VERTEX_ATTRIB_MAP1_APPLE = $8A00; + GL_VERTEX_ATTRIB_MAP2_APPLE = $8A01; + GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE = $8A02; + GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE = $8A03; + GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE = $8A04; + GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE = $8A05; + GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE = $8A06; + GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE = $8A07; + GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE = $8A08; + GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE = $8A09; + + // GL_APPLE_aux_depth_stencil + GL_AUX_DEPTH_STENCIL_APPLE = $8A14; + + // GL_APPLE_object_purgeable + GL_BUFFER_OBJECT_APPLE = $85B3; + GL_RELEASED_APPLE = $8A19; + GL_VOLATILE_APPLE = $8A1A; + GL_RETAINED_APPLE = $8A1B; + GL_UNDEFINED_APPLE = $8A1C; + GL_PURGEABLE_APPLE = $8A1D; + + // GL_APPLE_row_bytes + GL_PACK_ROW_BYTES_APPLE = $8A15; + GL_UNPACK_ROW_BYTES_APPLE = $8A16; + + // GL_APPLE_rgb_422 + { reuse GL_UNSIGNED_SHORT_8_8_APPLE } + { reuse GL_UNSIGNED_SHORT_8_8_REV_APPLE } + + // GL_ARB_depth_texture + GL_DEPTH_COMPONENT16_ARB = $81A5; + GL_DEPTH_COMPONENT24_ARB = $81A6; + GL_DEPTH_COMPONENT32_ARB = $81A7; + GL_TEXTURE_DEPTH_SIZE_ARB = $884A; + GL_DEPTH_TEXTURE_MODE_ARB = $884B; + + // GL_ARB_fragment_program + GL_FRAGMENT_PROGRAM_ARB = $8804; + GL_PROGRAM_ALU_INSTRUCTIONS_ARB = $8805; + GL_PROGRAM_TEX_INSTRUCTIONS_ARB = $8806; + GL_PROGRAM_TEX_INDIRECTIONS_ARB = $8807; + GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = $8808; + GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = $8809; + GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = $880A; + GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB = $880B; + GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB = $880C; + GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB = $880D; + GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = $880E; + GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = $880F; + GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = $8810; + GL_MAX_TEXTURE_COORDS_ARB = $8871; + GL_MAX_TEXTURE_IMAGE_UNITS_ARB = $8872; + + // GL_ARB_imaging + GL_CONSTANT_COLOR_ARB = $8001; + GL_CONSTANT_COLOR = $8001; + GL_ONE_MINUS_CONSTANT_COLOR = $8002; + GL_CONSTANT_ALPHA = $8003; + GL_ONE_MINUS_CONSTANT_ALPHA = $8004; + GL_BLEND_COLOR = $8005; + GL_FUNC_ADD = $8006; + GL_MIN = $8007; + GL_MAX = $8008; + GL_BLEND_EQUATION = $8009; + GL_FUNC_SUBTRACT = $800A; + GL_FUNC_REVERSE_SUBTRACT = $800B; +{$ifdef DGL_DEPRECATED} + GL_CONVOLUTION_1D = $8010; + GL_CONVOLUTION_2D = $8011; + GL_SEPARABLE_2D = $8012; + GL_CONVOLUTION_BORDER_MODE = $8013; + GL_CONVOLUTION_FILTER_SCALE = $8014; + GL_CONVOLUTION_FILTER_BIAS = $8015; + GL_REDUCE = $8016; + GL_CONVOLUTION_FORMAT = $8017; + GL_CONVOLUTION_WIDTH = $8018; + GL_CONVOLUTION_HEIGHT = $8019; + GL_MAX_CONVOLUTION_WIDTH = $801A; + GL_MAX_CONVOLUTION_HEIGHT = $801B; + GL_POST_CONVOLUTION_RED_SCALE = $801C; + GL_POST_CONVOLUTION_GREEN_SCALE = $801D; + GL_POST_CONVOLUTION_BLUE_SCALE = $801E; + GL_POST_CONVOLUTION_ALPHA_SCALE = $801F; + GL_POST_CONVOLUTION_RED_BIAS = $8020; + GL_POST_CONVOLUTION_GREEN_BIAS = $8021; + GL_POST_CONVOLUTION_BLUE_BIAS = $8022; + GL_POST_CONVOLUTION_ALPHA_BIAS = $8023; + GL_HISTOGRAM = $8024; + GL_PROXY_HISTOGRAM = $8025; + GL_HISTOGRAM_WIDTH = $8026; + GL_HISTOGRAM_FORMAT = $8027; + GL_HISTOGRAM_RED_SIZE = $8028; + GL_HISTOGRAM_GREEN_SIZE = $8029; + GL_HISTOGRAM_BLUE_SIZE = $802A; + GL_HISTOGRAM_ALPHA_SIZE = $802B; + GL_HISTOGRAM_LUMINANCE_SIZE = $802C; + GL_HISTOGRAM_SINK = $802D; + GL_MINMAX = $802E; + GL_MINMAX_FORMAT = $802F; + GL_MINMAX_SINK = $8030; + GL_TABLE_TOO_LARGE = $8031; + GL_COLOR_MATRIX = $80B1; + GL_COLOR_MATRIX_STACK_DEPTH = $80B2; + GL_MAX_COLOR_MATRIX_STACK_DEPTH = $80B3; + GL_POST_COLOR_MATRIX_RED_SCALE = $80B4; + GL_POST_COLOR_MATRIX_GREEN_SCALE = $80B5; + GL_POST_COLOR_MATRIX_BLUE_SCALE = $80B6; + GL_POST_COLOR_MATRIX_ALPHA_SCALE = $80B7; + GL_POST_COLOR_MATRIX_RED_BIAS = $80B8; + GL_POST_COLOR_MATRIX_GREEN_BIAS = $80B9; + GL_POST_COLOR_MATRIX_BLUE_BIAS = $80BA; + GL_POST_COLOR_MATRIX_ALPHA_BIAS = $80BB; + GL_COLOR_TABLE = $80D0; + GL_POST_CONVOLUTION_COLOR_TABLE = $80D1; + GL_POST_COLOR_MATRIX_COLOR_TABLE = $80D2; + GL_PROXY_COLOR_TABLE = $80D3; + GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = $80D4; + GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = $80D5; + GL_COLOR_TABLE_SCALE = $80D6; + GL_COLOR_TABLE_BIAS = $80D7; + GL_COLOR_TABLE_FORMAT = $80D8; + GL_COLOR_TABLE_WIDTH = $80D9; + GL_COLOR_TABLE_RED_SIZE = $80DA; + GL_COLOR_TABLE_GREEN_SIZE = $80DB; + GL_COLOR_TABLE_BLUE_SIZE = $80DC; + GL_COLOR_TABLE_ALPHA_SIZE = $80DD; + GL_COLOR_TABLE_LUMINANCE_SIZE = $80DE; + GL_COLOR_TABLE_INTENSITY_SIZE = $80DF; + GL_CONSTANT_BORDER = $8151; + GL_REPLICATE_BORDER = $8153; + GL_CONVOLUTION_BORDER_COLOR = $8154; +{$endif} + + // GL_ARB_matrix_palette + GL_MATRIX_PALETTE_ARB = $8840; + GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB = $8841; + GL_MAX_PALETTE_MATRICES_ARB = $8842; + GL_CURRENT_PALETTE_MATRIX_ARB = $8843; + GL_MATRIX_INDEX_ARRAY_ARB = $8844; + GL_CURRENT_MATRIX_INDEX_ARB = $8845; + GL_MATRIX_INDEX_ARRAY_SIZE_ARB = $8846; + GL_MATRIX_INDEX_ARRAY_TYPE_ARB = $8847; + GL_MATRIX_INDEX_ARRAY_STRIDE_ARB = $8848; + GL_MATRIX_INDEX_ARRAY_POINTER_ARB = $8849; + + // GL_ARB_multisample + GL_MULTISAMPLE_ARB = $809D; + GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = $809E; + GL_SAMPLE_ALPHA_TO_ONE_ARB = $809F; + GL_SAMPLE_COVERAGE_ARB = $80A0; + GL_SAMPLE_BUFFERS_ARB = $80A8; + GL_SAMPLES_ARB = $80A9; + GL_SAMPLE_COVERAGE_VALUE_ARB = $80AA; + GL_SAMPLE_COVERAGE_INVERT_ARB = $80AB; + GL_MULTISAMPLE_BIT_ARB = $20000000; + + // GL_ARB_multitexture + GL_TEXTURE0_ARB = $84C0; + GL_TEXTURE1_ARB = $84C1; + GL_TEXTURE2_ARB = $84C2; + GL_TEXTURE3_ARB = $84C3; + GL_TEXTURE4_ARB = $84C4; + GL_TEXTURE5_ARB = $84C5; + GL_TEXTURE6_ARB = $84C6; + GL_TEXTURE7_ARB = $84C7; + GL_TEXTURE8_ARB = $84C8; + GL_TEXTURE9_ARB = $84C9; + GL_TEXTURE10_ARB = $84CA; + GL_TEXTURE11_ARB = $84CB; + GL_TEXTURE12_ARB = $84CC; + GL_TEXTURE13_ARB = $84CD; + GL_TEXTURE14_ARB = $84CE; + GL_TEXTURE15_ARB = $84CF; + GL_TEXTURE16_ARB = $84D0; + GL_TEXTURE17_ARB = $84D1; + GL_TEXTURE18_ARB = $84D2; + GL_TEXTURE19_ARB = $84D3; + GL_TEXTURE20_ARB = $84D4; + GL_TEXTURE21_ARB = $84D5; + GL_TEXTURE22_ARB = $84D6; + GL_TEXTURE23_ARB = $84D7; + GL_TEXTURE24_ARB = $84D8; + GL_TEXTURE25_ARB = $84D9; + GL_TEXTURE26_ARB = $84DA; + GL_TEXTURE27_ARB = $84DB; + GL_TEXTURE28_ARB = $84DC; + GL_TEXTURE29_ARB = $84DD; + GL_TEXTURE30_ARB = $84DE; + GL_TEXTURE31_ARB = $84DF; + GL_ACTIVE_TEXTURE_ARB = $84E0; + GL_CLIENT_ACTIVE_TEXTURE_ARB = $84E1; + GL_MAX_TEXTURE_UNITS_ARB = $84E2; + + // GL_ARB_point_parameters + GL_POINT_SIZE_MIN_ARB = $8126; + GL_POINT_SIZE_MAX_ARB = $8127; + GL_POINT_FADE_THRESHOLD_SIZE_ARB = $8128; + GL_POINT_DISTANCE_ATTENUATION_ARB = $8129; + + // GL_ARB_shadow + GL_TEXTURE_COMPARE_MODE_ARB = $884C; + GL_TEXTURE_COMPARE_FUNC_ARB = $884D; + GL_COMPARE_R_TO_TEXTURE_ARB = $884E; + + // GL_ARB_shadow_ambient + GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = $80BF; + + // GL_ARB_texture_border_clamp + GL_CLAMP_TO_BORDER_ARB = $812D; + + // GL_ARB_texture_compression + GL_COMPRESSED_ALPHA_ARB = $84E9; + GL_COMPRESSED_LUMINANCE_ARB = $84EA; + GL_COMPRESSED_LUMINANCE_ALPHA_ARB = $84EB; + GL_COMPRESSED_INTENSITY_ARB = $84EC; + GL_COMPRESSED_RGB_ARB = $84ED; + GL_COMPRESSED_RGBA_ARB = $84EE; + GL_TEXTURE_COMPRESSION_HINT_ARB = $84EF; + GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB = $86A0; + GL_TEXTURE_COMPRESSED_ARB = $86A1; + GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = $86A2; + GL_COMPRESSED_TEXTURE_FORMATS_ARB = $86A3; + + // GL_ARB_texture_cube_map + GL_NORMAL_MAP_ARB = $8511; + GL_REFLECTION_MAP_ARB = $8512; + GL_TEXTURE_CUBE_MAP_ARB = $8513; + GL_TEXTURE_BINDING_CUBE_MAP_ARB = $8514; + GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = $8515; + GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = $8516; + GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = $8517; + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = $8518; + GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = $8519; + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = $851A; + GL_PROXY_TEXTURE_CUBE_MAP_ARB = $851B; + GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB = $851C; + + // GL_ARB_texture_env_combine + GL_COMBINE_ARB = $8570; + GL_COMBINE_RGB_ARB = $8571; + GL_COMBINE_ALPHA_ARB = $8572; + GL_SOURCE0_RGB_ARB = $8580; + GL_SOURCE1_RGB_ARB = $8581; + GL_SOURCE2_RGB_ARB = $8582; + GL_SOURCE0_ALPHA_ARB = $8588; + GL_SOURCE1_ALPHA_ARB = $8589; + GL_SOURCE2_ALPHA_ARB = $858A; + GL_OPERAND0_RGB_ARB = $8590; + GL_OPERAND1_RGB_ARB = $8591; + GL_OPERAND2_RGB_ARB = $8592; + GL_OPERAND0_ALPHA_ARB = $8598; + GL_OPERAND1_ALPHA_ARB = $8599; + GL_OPERAND2_ALPHA_ARB = $859A; + GL_RGB_SCALE_ARB = $8573; + GL_ADD_SIGNED_ARB = $8574; + GL_INTERPOLATE_ARB = $8575; + GL_SUBTRACT_ARB = $84E7; + GL_CONSTANT_ARB = $8576; + GL_PRIMARY_COLOR_ARB = $8577; + GL_PREVIOUS_ARB = $8578; + + // GL_ARB_texture_env_dot3 + GL_DOT3_RGB_ARB = $86AE; + GL_DOT3_RGBA_ARB = $86AF; + + // GL_ARB_texture_mirrored_repeat + GL_MIRRORED_REPEAT_ARB = $8370; + + // GL_ARB_transpose_matrix + GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = $84E3; + GL_TRANSPOSE_PROJECTION_MATRIX_ARB = $84E4; + GL_TRANSPOSE_TEXTURE_MATRIX_ARB = $84E5; + GL_TRANSPOSE_COLOR_MATRIX_ARB = $84E6; + + // GL_ARB_vertex_blend + GL_MAX_VERTEX_UNITS_ARB = $86A4; + GL_ACTIVE_VERTEX_UNITS_ARB = $86A5; + GL_WEIGHT_SUM_UNITY_ARB = $86A6; + GL_VERTEX_BLEND_ARB = $86A7; + GL_CURRENT_WEIGHT_ARB = $86A8; + GL_WEIGHT_ARRAY_TYPE_ARB = $86A9; + GL_WEIGHT_ARRAY_STRIDE_ARB = $86AA; + GL_WEIGHT_ARRAY_SIZE_ARB = $86AB; + GL_WEIGHT_ARRAY_POINTER_ARB = $86AC; + GL_WEIGHT_ARRAY_ARB = $86AD; + GL_MODELVIEW0_ARB = $1700; + GL_MODELVIEW1_ARB = $850A; + GL_MODELVIEW2_ARB = $8722; + GL_MODELVIEW3_ARB = $8723; + GL_MODELVIEW4_ARB = $8724; + GL_MODELVIEW5_ARB = $8725; + GL_MODELVIEW6_ARB = $8726; + GL_MODELVIEW7_ARB = $8727; + GL_MODELVIEW8_ARB = $8728; + GL_MODELVIEW9_ARB = $8729; + GL_MODELVIEW10_ARB = $872A; + GL_MODELVIEW11_ARB = $872B; + GL_MODELVIEW12_ARB = $872C; + GL_MODELVIEW13_ARB = $872D; + GL_MODELVIEW14_ARB = $872E; + GL_MODELVIEW15_ARB = $872F; + GL_MODELVIEW16_ARB = $8730; + GL_MODELVIEW17_ARB = $8731; + GL_MODELVIEW18_ARB = $8732; + GL_MODELVIEW19_ARB = $8733; + GL_MODELVIEW20_ARB = $8734; + GL_MODELVIEW21_ARB = $8735; + GL_MODELVIEW22_ARB = $8736; + GL_MODELVIEW23_ARB = $8737; + GL_MODELVIEW24_ARB = $8738; + GL_MODELVIEW25_ARB = $8739; + GL_MODELVIEW26_ARB = $873A; + GL_MODELVIEW27_ARB = $873B; + GL_MODELVIEW28_ARB = $873C; + GL_MODELVIEW29_ARB = $873D; + GL_MODELVIEW30_ARB = $873E; + GL_MODELVIEW31_ARB = $873F; + + // GL_ARB_vertex_buffer_object + GL_BUFFER_SIZE_ARB = $8764; + GL_BUFFER_USAGE_ARB = $8765; + GL_ARRAY_BUFFER_ARB = $8892; + GL_ELEMENT_ARRAY_BUFFER_ARB = $8893; + GL_ARRAY_BUFFER_BINDING_ARB = $8894; + GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB = $8895; + GL_VERTEX_ARRAY_BUFFER_BINDING_ARB = $8896; + GL_NORMAL_ARRAY_BUFFER_BINDING_ARB = $8897; + GL_COLOR_ARRAY_BUFFER_BINDING_ARB = $8898; + GL_INDEX_ARRAY_BUFFER_BINDING_ARB = $8899; + GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB = $889A; + GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB = $889B; + GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB = $889C; + GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB = $889D; + GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB = $889E; + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB = $889F; + GL_READ_ONLY_ARB = $88B8; + GL_WRITE_ONLY_ARB = $88B9; + GL_READ_WRITE_ARB = $88BA; + GL_BUFFER_ACCESS_ARB = $88BB; + GL_BUFFER_MAPPED_ARB = $88BC; + GL_BUFFER_MAP_POINTER_ARB = $88BD; + GL_STREAM_DRAW_ARB = $88E0; + GL_STREAM_READ_ARB = $88E1; + GL_STREAM_COPY_ARB = $88E2; + GL_STATIC_DRAW_ARB = $88E4; + GL_STATIC_READ_ARB = $88E5; + GL_STATIC_COPY_ARB = $88E6; + GL_DYNAMIC_DRAW_ARB = $88E8; + GL_DYNAMIC_READ_ARB = $88E9; + GL_DYNAMIC_COPY_ARB = $88EA; + + // GL_ARB_vertex_program + GL_COLOR_SUM_ARB = $8458; + GL_VERTEX_PROGRAM_ARB = $8620; + GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = $8622; + GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = $8623; + GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = $8624; + GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = $8625; + GL_CURRENT_VERTEX_ATTRIB_ARB = $8626; + GL_PROGRAM_LENGTH_ARB = $8627; + GL_PROGRAM_STRING_ARB = $8628; + GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = $862E; + GL_MAX_PROGRAM_MATRICES_ARB = $862F; + GL_CURRENT_MATRIX_STACK_DEPTH_ARB = $8640; + GL_CURRENT_MATRIX_ARB = $8641; + GL_VERTEX_PROGRAM_POINT_SIZE_ARB = $8642; + GL_VERTEX_PROGRAM_TWO_SIDE_ARB = $8643; + GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = $8645; + GL_PROGRAM_ERROR_POSITION_ARB = $864B; + GL_PROGRAM_BINDING_ARB = $8677; + GL_MAX_VERTEX_ATTRIBS_ARB = $8869; + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = $886A; + GL_PROGRAM_ERROR_STRING_ARB = $8874; + GL_PROGRAM_FORMAT_ASCII_ARB = $8875; + GL_PROGRAM_FORMAT_ARB = $8876; + GL_PROGRAM_INSTRUCTIONS_ARB = $88A0; + GL_MAX_PROGRAM_INSTRUCTIONS_ARB = $88A1; + GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = $88A2; + GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = $88A3; + GL_PROGRAM_TEMPORARIES_ARB = $88A4; + GL_MAX_PROGRAM_TEMPORARIES_ARB = $88A5; + GL_PROGRAM_NATIVE_TEMPORARIES_ARB = $88A6; + GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = $88A7; + GL_PROGRAM_PARAMETERS_ARB = $88A8; + GL_MAX_PROGRAM_PARAMETERS_ARB = $88A9; + GL_PROGRAM_NATIVE_PARAMETERS_ARB = $88AA; + GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = $88AB; + GL_PROGRAM_ATTRIBS_ARB = $88AC; + GL_MAX_PROGRAM_ATTRIBS_ARB = $88AD; + GL_PROGRAM_NATIVE_ATTRIBS_ARB = $88AE; + GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = $88AF; + GL_PROGRAM_ADDRESS_REGISTERS_ARB = $88B0; + GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = $88B1; + GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = $88B2; + GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = $88B3; + GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = $88B4; + GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = $88B5; + GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = $88B6; + GL_TRANSPOSE_CURRENT_MATRIX_ARB = $88B7; + GL_MATRIX0_ARB = $88C0; + GL_MATRIX1_ARB = $88C1; + GL_MATRIX2_ARB = $88C2; + GL_MATRIX3_ARB = $88C3; + GL_MATRIX4_ARB = $88C4; + GL_MATRIX5_ARB = $88C5; + GL_MATRIX6_ARB = $88C6; + GL_MATRIX7_ARB = $88C7; + GL_MATRIX8_ARB = $88C8; + GL_MATRIX9_ARB = $88C9; + GL_MATRIX10_ARB = $88CA; + GL_MATRIX11_ARB = $88CB; + GL_MATRIX12_ARB = $88CC; + GL_MATRIX13_ARB = $88CD; + GL_MATRIX14_ARB = $88CE; + GL_MATRIX15_ARB = $88CF; + GL_MATRIX16_ARB = $88D0; + GL_MATRIX17_ARB = $88D1; + GL_MATRIX18_ARB = $88D2; + GL_MATRIX19_ARB = $88D3; + GL_MATRIX20_ARB = $88D4; + GL_MATRIX21_ARB = $88D5; + GL_MATRIX22_ARB = $88D6; + GL_MATRIX23_ARB = $88D7; + GL_MATRIX24_ARB = $88D8; + GL_MATRIX25_ARB = $88D9; + GL_MATRIX26_ARB = $88DA; + GL_MATRIX27_ARB = $88DB; + GL_MATRIX28_ARB = $88DC; + GL_MATRIX29_ARB = $88DD; + GL_MATRIX30_ARB = $88DE; + GL_MATRIX31_ARB = $88DF; + + // GL_ARB_draw_buffers + GL_MAX_DRAW_BUFFERS_ARB = $8824; + GL_DRAW_BUFFER0_ARB = $8825; + GL_DRAW_BUFFER1_ARB = $8826; + GL_DRAW_BUFFER2_ARB = $8827; + GL_DRAW_BUFFER3_ARB = $8828; + GL_DRAW_BUFFER4_ARB = $8829; + GL_DRAW_BUFFER5_ARB = $882A; + GL_DRAW_BUFFER6_ARB = $882B; + GL_DRAW_BUFFER7_ARB = $882C; + GL_DRAW_BUFFER8_ARB = $882D; + GL_DRAW_BUFFER9_ARB = $882E; + GL_DRAW_BUFFER10_ARB = $882F; + GL_DRAW_BUFFER11_ARB = $8830; + GL_DRAW_BUFFER12_ARB = $8831; + GL_DRAW_BUFFER13_ARB = $8832; + GL_DRAW_BUFFER14_ARB = $8833; + GL_DRAW_BUFFER15_ARB = $8834; + + // GL_ARB_texture_rectangle + GL_TEXTURE_RECTANGLE_ARB = $84F5; + GL_TEXTURE_BINDING_RECTANGLE_ARB = $84F6; + GL_PROXY_TEXTURE_RECTANGLE_ARB = $84F7; + GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB = $84F8; + + // GL_ARB_color_buffer_float + GL_RGBA_FLOAT_MODE_ARB = $8820; + GL_CLAMP_VERTEX_COLOR_ARB = $891A; + GL_CLAMP_FRAGMENT_COLOR_ARB = $891B; + GL_CLAMP_READ_COLOR_ARB = $891C; + GL_FIXED_ONLY_ARB = $891D; + WGL_TYPE_RGBA_FLOAT_ARB = $21A0; + GLX_RGBA_FLOAT_TYPE = $20B9; + GLX_RGBA_FLOAT_BIT = $00000004; + + // GL_ARB_half_float_pixel + GL_HALF_FLOAT_ARB = $140B; + + // GL_ARB_texture_float + GL_TEXTURE_RED_TYPE_ARB = $8C10; + GL_TEXTURE_GREEN_TYPE_ARB = $8C11; + GL_TEXTURE_BLUE_TYPE_ARB = $8C12; + GL_TEXTURE_ALPHA_TYPE_ARB = $8C13; + GL_TEXTURE_LUMINANCE_TYPE_ARB = $8C14; + GL_TEXTURE_INTENSITY_TYPE_ARB = $8C15; + GL_TEXTURE_DEPTH_TYPE_ARB = $8C16; + GL_UNSIGNED_NORMALIZED_ARB = $8C17; + GL_RGBA32F_ARB = $8814; + GL_RGB32F_ARB = $8815; + GL_ALPHA32F_ARB = $8816; + GL_INTENSITY32F_ARB = $8817; + GL_LUMINANCE32F_ARB = $8818; + GL_LUMINANCE_ALPHA32F_ARB = $8819; + GL_RGBA16F_ARB = $881A; + GL_RGB16F_ARB = $881B; + GL_ALPHA16F_ARB = $881C; + GL_INTENSITY16F_ARB = $881D; + GL_LUMINANCE16F_ARB = $881E; + GL_LUMINANCE_ALPHA16F_ARB = $881F; + + // GL_ARB_pixel_buffer_object + GL_PIXEL_PACK_BUFFER_ARB = $88EB; + GL_PIXEL_UNPACK_BUFFER_ARB = $88EC; + GL_PIXEL_PACK_BUFFER_BINDING_ARB = $88ED; + GL_PIXEL_UNPACK_BUFFER_BINDING_ARB = $88EF; + + // GL_ARB_depth_buffer_float + GL_DEPTH_COMPONENT32F = $8CAC; + GL_DEPTH32F_STENCIL8 = $8CAD; + GL_FLOAT_32_UNSIGNED_INT_24_8_REV = $8DAD; + + // GL_ARB_framebuffer_object + GL_INVALID_FRAMEBUFFER_OPERATION = $0506; + GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = $8210; + GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = $8211; + GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = $8212; + GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = $8213; + GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = $8214; + GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = $8215; + GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = $8216; + GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = $8217; + GL_FRAMEBUFFER_DEFAULT = $8218; + GL_FRAMEBUFFER_UNDEFINED = $8219; + GL_DEPTH_STENCIL_ATTACHMENT = $821A; + GL_MAX_RENDERBUFFER_SIZE = $84E8; + GL_DEPTH_STENCIL = $84F9; + GL_UNSIGNED_INT_24_8 = $84FA; + GL_DEPTH24_STENCIL8 = $88F0; + GL_TEXTURE_STENCIL_SIZE = $88F1; + GL_TEXTURE_RED_TYPE = $8C10; + GL_TEXTURE_GREEN_TYPE = $8C11; + GL_TEXTURE_BLUE_TYPE = $8C12; + GL_TEXTURE_ALPHA_TYPE = $8C13; + GL_TEXTURE_DEPTH_TYPE = $8C16; + GL_UNSIGNED_NORMALIZED = $8C17; + GL_FRAMEBUFFER_BINDING = $8CA6; + GL_DRAW_FRAMEBUFFER_BINDING = GL_FRAMEBUFFER_BINDING; + GL_RENDERBUFFER_BINDING = $8CA7; + GL_READ_FRAMEBUFFER = $8CA8; + GL_DRAW_FRAMEBUFFER = $8CA9; + GL_READ_FRAMEBUFFER_BINDING = $8CAA; + GL_RENDERBUFFER_SAMPLES = $8CAB; + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = $8CD0; + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = $8CD1; + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = $8CD2; + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = $8CD3; + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = $8CD4; + GL_FRAMEBUFFER_COMPLETE = $8CD5; + GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = $8CD6; + GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = $8CD7; + GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = $8CDB; + GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER = $8CDC; + GL_FRAMEBUFFER_UNSUPPORTED = $8CDD; + GL_MAX_COLOR_ATTACHMENTS = $8CDF; + GL_COLOR_ATTACHMENT0 = $8CE0; + GL_COLOR_ATTACHMENT1 = $8CE1; + GL_COLOR_ATTACHMENT2 = $8CE2; + GL_COLOR_ATTACHMENT3 = $8CE3; + GL_COLOR_ATTACHMENT4 = $8CE4; + GL_COLOR_ATTACHMENT5 = $8CE5; + GL_COLOR_ATTACHMENT6 = $8CE6; + GL_COLOR_ATTACHMENT7 = $8CE7; + GL_COLOR_ATTACHMENT8 = $8CE8; + GL_COLOR_ATTACHMENT9 = $8CE9; + GL_COLOR_ATTACHMENT10 = $8CEA; + GL_COLOR_ATTACHMENT11 = $8CEB; + GL_COLOR_ATTACHMENT12 = $8CEC; + GL_COLOR_ATTACHMENT13 = $8CED; + GL_COLOR_ATTACHMENT14 = $8CEE; + GL_COLOR_ATTACHMENT15 = $8CEF; + GL_DEPTH_ATTACHMENT = $8D00; + GL_STENCIL_ATTACHMENT = $8D20; + GL_FRAMEBUFFER = $8D40; + GL_RENDERBUFFER = $8D41; + GL_RENDERBUFFER_WIDTH = $8D42; + GL_RENDERBUFFER_HEIGHT = $8D43; + GL_RENDERBUFFER_INTERNAL_FORMAT = $8D44; + GL_STENCIL_INDEX1 = $8D46; + GL_STENCIL_INDEX4 = $8D47; + GL_STENCIL_INDEX8 = $8D48; + GL_STENCIL_INDEX16 = $8D49; + GL_RENDERBUFFER_RED_SIZE = $8D50; + GL_RENDERBUFFER_GREEN_SIZE = $8D51; + GL_RENDERBUFFER_BLUE_SIZE = $8D52; + GL_RENDERBUFFER_ALPHA_SIZE = $8D53; + GL_RENDERBUFFER_DEPTH_SIZE = $8D54; + GL_RENDERBUFFER_STENCIL_SIZE = $8D55; + GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = $8D56; + GL_MAX_SAMPLES = $8D57; +{$ifdef DGL_DEPRECATED} + GL_INDEX = $8222; + GL_TEXTURE_LUMINANCE_TYPE = $8C14; + GL_TEXTURE_INTENSITY_TYPE = $8C15; +{$endif} + + // GL_ARB_framebuffer_sRGB + GL_FRAMEBUFFER_SRGB = $8DB9; + + // GL_ARB_geometry_shader4 + GL_LINES_ADJACENCY_ARB = $000A; + GL_LINE_STRIP_ADJACENCY_ARB = $000B; + GL_TRIANGLES_ADJACENCY_ARB = $000C; + GL_TRIANGLE_STRIP_ADJACENCY_ARB = $000D; + GL_PROGRAM_POINT_SIZE_ARB = $8642; + GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB = $8C29; + GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB = $8DA7; + GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB = $8DA8; + GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB = $8DA9; + GL_GEOMETRY_SHADER_ARB = $8DD9; + GL_GEOMETRY_VERTICES_OUT_ARB = $8DDA; + GL_GEOMETRY_INPUT_TYPE_ARB = $8DDB; + GL_GEOMETRY_OUTPUT_TYPE_ARB = $8DDC; + GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB = $8DDD; + GL_MAX_VERTEX_VARYING_COMPONENTS_ARB = $8DDE; + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB = $8DDF; + GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB = $8DE0; + GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB = $8DE1; + { reuse GL_MAX_VARYING_COMPONENTS } + { reuse GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER } + + // GL_ARB_half_float_vertex + GL_HALF_FLOAT = $140B; + + // GL_ARB_instanced_arrays + GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB = $88FE; + + // GL_ARB_map_buffer_range + GL_MAP_READ_BIT = $0001; + GL_MAP_WRITE_BIT = $0002; + GL_MAP_INVALIDATE_RANGE_BIT = $0004; + GL_MAP_INVALIDATE_BUFFER_BIT = $0008; + GL_MAP_FLUSH_EXPLICIT_BIT = $0010; + GL_MAP_UNSYNCHRONIZED_BIT = $0020; + + // GL_ARB_texture_buffer_object + GL_TEXTURE_BUFFER_ARB = $8C2A; + GL_MAX_TEXTURE_BUFFER_SIZE_ARB = $8C2B; + GL_TEXTURE_BINDING_BUFFER_ARB = $8C2C; + GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB = $8C2D; + GL_TEXTURE_BUFFER_FORMAT_ARB = $8C2E; + + // GL_ARB_texture_compression_rgtc + GL_COMPRESSED_RED_RGTC1 = $8DBB; + GL_COMPRESSED_SIGNED_RED_RGTC1 = $8DBC; + GL_COMPRESSED_RG_RGTC2 = $8DBD; + GL_COMPRESSED_SIGNED_RG_RGTC2 = $8DBE; + + // GL_ARB_texture_rg + GL_RG = $8227; + GL_RG_INTEGER = $8228; + GL_R8 = $8229; + GL_R16 = $822A; + GL_RG8 = $822B; + GL_RG16 = $822C; + GL_R16F = $822D; + GL_R32F = $822E; + GL_RG16F = $822F; + GL_RG32F = $8230; + GL_R8I = $8231; + GL_R8UI = $8232; + GL_R16I = $8233; + GL_R16UI = $8234; + GL_R32I = $8235; + GL_R32UI = $8236; + GL_RG8I = $8237; + GL_RG8UI = $8238; + GL_RG16I = $8239; + GL_RG16UI = $823A; + GL_RG32I = $823B; + GL_RG32UI = $823C; + + // GL_ARB_vertex_array_object + GL_VERTEX_ARRAY_BINDING = $85B5; + + // GL_ARB_uniform_buffer_object + GL_UNIFORM_BUFFER = $8A11; + GL_UNIFORM_BUFFER_BINDING = $8A28; + GL_UNIFORM_BUFFER_START = $8A29; + GL_UNIFORM_BUFFER_SIZE = $8A2A; + GL_MAX_VERTEX_UNIFORM_BLOCKS = $8A2B; + GL_MAX_GEOMETRY_UNIFORM_BLOCKS = $8A2C; + GL_MAX_FRAGMENT_UNIFORM_BLOCKS = $8A2D; + GL_MAX_COMBINED_UNIFORM_BLOCKS = $8A2E; + GL_MAX_UNIFORM_BUFFER_BINDINGS = $8A2F; + GL_MAX_UNIFORM_BLOCK_SIZE = $8A30; + GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = $8A31; + GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = $8A32; + GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = $8A33; + GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = $8A34; + GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = $8A35; + GL_ACTIVE_UNIFORM_BLOCKS = $8A36; + GL_UNIFORM_TYPE = $8A37; + GL_UNIFORM_SIZE = $8A38; + GL_UNIFORM_NAME_LENGTH = $8A39; + GL_UNIFORM_BLOCK_INDEX = $8A3A; + GL_UNIFORM_OFFSET = $8A3B; + GL_UNIFORM_ARRAY_STRIDE = $8A3C; + GL_UNIFORM_MATRIX_STRIDE = $8A3D; + GL_UNIFORM_IS_ROW_MAJOR = $8A3E; + GL_UNIFORM_BLOCK_BINDING = $8A3F; + GL_UNIFORM_BLOCK_DATA_SIZE = $8A40; + GL_UNIFORM_BLOCK_NAME_LENGTH = $8A41; + GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = $8A42; + GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = $8A43; + GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = $8A44; + GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = $8A45; + GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = $8A46; + GL_INVALID_INDEX = $FFFFFFFF; + + // GL_ARB_compatibility + { ARB_compatibility just defines tokens from core 3.0 } + + // GL_ARB_copy_buffer + GL_COPY_READ_BUFFER_BINDING = $8F36; + GL_COPY_READ_BUFFER = GL_COPY_READ_BUFFER_BINDING; + GL_COPY_WRITE_BUFFER_BINDING = $8F37; + GL_COPY_WRITE_BUFFER = GL_COPY_WRITE_BUFFER_BINDING; + + // GL_ARB_depth_clamp + GL_DEPTH_CLAMP = $864F; + + // GL_ARB_provoking_vertex + GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION = $8E4C; + GL_FIRST_VERTEX_CONVENTION = $8E4D; + GL_LAST_VERTEX_CONVENTION = $8E4E; + GL_PROVOKING_VERTEX = $8E4F; + + // GL_ARB_seamless_cube_map + GL_TEXTURE_CUBE_MAP_SEAMLESS = $884F; + + // GL_ARB_sync + GL_MAX_SERVER_WAIT_TIMEOUT = $9111; + GL_OBJECT_TYPE = $9112; + GL_SYNC_CONDITION = $9113; + GL_SYNC_STATUS = $9114; + GL_SYNC_FLAGS = $9115; + GL_SYNC_FENCE = $9116; + GL_SYNC_GPU_COMMANDS_COMPLETE = $9117; + GL_UNSIGNALED = $9118; + GL_SIGNALED = $9119; + GL_ALREADY_SIGNALED = $911A; + GL_TIMEOUT_EXPIRED = $911B; + GL_CONDITION_SATISFIED = $911C; + GL_WAIT_FAILED = $911D; + GL_SYNC_FLUSH_COMMANDS_BIT = $00000001; + GL_TIMEOUT_IGNORED = $FFFFFFFFFFFFFFFF; + + // GL_ARB_texture_multisample + GL_SAMPLE_POSITION = $8E50; + GL_SAMPLE_MASK = $8E51; + GL_SAMPLE_MASK_VALUE = $8E52; + GL_MAX_SAMPLE_MASK_WORDS = $8E59; + GL_TEXTURE_2D_MULTISAMPLE = $9100; + GL_PROXY_TEXTURE_2D_MULTISAMPLE = $9101; + GL_TEXTURE_2D_MULTISAMPLE_ARRAY = $9102; + GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = $9103; + GL_TEXTURE_BINDING_2D_MULTISAMPLE = $9104; + GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = $9105; + GL_TEXTURE_SAMPLES = $9106; + GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = $9107; + GL_SAMPLER_2D_MULTISAMPLE = $9108; + GL_INT_SAMPLER_2D_MULTISAMPLE = $9109; + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = $910A; + GL_SAMPLER_2D_MULTISAMPLE_ARRAY = $910B; + GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = $910C; + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = $910D; + GL_MAX_COLOR_TEXTURE_SAMPLES = $910E; + GL_MAX_DEPTH_TEXTURE_SAMPLES = $910F; + GL_MAX_INTEGER_SAMPLES = $9110; + + // GL_ARB_vertex_array_bgra + { reuse GL_BGRA } + + // GL_ARB_sample_shading + GL_SAMPLE_SHADING_ARB = $8C36; + GL_MIN_SAMPLE_SHADING_VALUE_ARB = $8C37; + + // GL_ARB_texture_cube_map_array + GL_TEXTURE_CUBE_MAP_ARRAY_ARB = $9009; + GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB = $900A; + GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB = $900B; + GL_SAMPLER_CUBE_MAP_ARRAY_ARB = $900C; + GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB = $900D; + GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = $900E; + GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = $900F; + + // GL_ARB_texture_gather + GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = $8E5E; + GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = $8E5F; + + // GL_ARB_shading_language_include + GL_SHADER_INCLUDE_ARB = $8DAE; + GL_NAMED_STRING_LENGTH_ARB = $8DE9; + GL_NAMED_STRING_TYPE_ARB = $8DEA; + + // GL_ARB_texture_compression_bptc + GL_COMPRESSED_RGBA_BPTC_UNORM_ARB = $8E8C; + GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB = $8E8D; + GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB = $8E8E; + GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB = $8E8F; + + // GL_ARB_blend_func_extended + GL_SRC1_COLOR = $88F9; + { reuse GL_SRC1_ALPHA } + GL_ONE_MINUS_SRC1_COLOR = $88FA; + GL_ONE_MINUS_SRC1_ALPHA = $88FB; + GL_MAX_DUAL_SOURCE_DRAW_BUFFERS = $88FC; + + // GL_ARB_occlusion_query2 + GL_ANY_SAMPLES_PASSED = $8C2F; + + // GL_ARB_sampler_objects + GL_SAMPLER_BINDING = $8919; + + // GL_ARB_texture_rgb10_a2ui + GL_RGB10_A2UI = $906F; + + // GL_ARB_texture_swizzle + GL_TEXTURE_SWIZZLE_R = $8E42; + GL_TEXTURE_SWIZZLE_G = $8E43; + GL_TEXTURE_SWIZZLE_B = $8E44; + GL_TEXTURE_SWIZZLE_A = $8E45; + GL_TEXTURE_SWIZZLE_RGBA = $8E46; + + // GL_ARB_timer_query + GL_TIME_ELAPSED = $88BF; + GL_TIMESTAMP = $8E28; + + // GL_ARB_vertex_type_2_10_10_10_rev + { reuse GL_UNSIGNED_INT_2_10_10_10_REV } + GL_INT_2_10_10_10_REV = $8D9F; + + // GL_ARB_draw_indirect + GL_DRAW_INDIRECT_BUFFER = $8F3F; + GL_DRAW_INDIRECT_BUFFER_BINDING = $8F43; + + // GL_ARB_gpu_shader5 + GL_GEOMETRY_SHADER_INVOCATIONS = $887F; + GL_MAX_GEOMETRY_SHADER_INVOCATIONS = $8E5A; + GL_MIN_FRAGMENT_INTERPOLATION_OFFSET = $8E5B; + GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = $8E5C; + GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = $8E5D; + { reuse GL_MAX_VERTEX_STREAMS } + + // GL_ARB_gpu_shader_fp64 + { reuse GL_DOUBLE } + GL_DOUBLE_VEC2 = $8FFC; + GL_DOUBLE_VEC3 = $8FFD; + GL_DOUBLE_VEC4 = $8FFE; + GL_DOUBLE_MAT2 = $8F46; + GL_DOUBLE_MAT3 = $8F47; + GL_DOUBLE_MAT4 = $8F48; + GL_DOUBLE_MAT2x3 = $8F49; + GL_DOUBLE_MAT2x4 = $8F4A; + GL_DOUBLE_MAT3x2 = $8F4B; + GL_DOUBLE_MAT3x4 = $8F4C; + GL_DOUBLE_MAT4x2 = $8F4D; + GL_DOUBLE_MAT4x3 = $8F4E; + + // GL_ARB_shader_subroutine + GL_ACTIVE_SUBROUTINES = $8DE5; + GL_ACTIVE_SUBROUTINE_UNIFORMS = $8DE6; + GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS = $8E47; + GL_ACTIVE_SUBROUTINE_MAX_LENGTH = $8E48; + GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH = $8E49; + GL_MAX_SUBROUTINES = $8DE7; + GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS = $8DE8; + GL_NUM_COMPATIBLE_SUBROUTINES = $8E4A; + GL_COMPATIBLE_SUBROUTINES = $8E4B; + { reuse GL_UNIFORM_SIZE } + { reuse GL_UNIFORM_NAME_LENGTH } + + // GL_ARB_tessellation_shader + GL_PATCHES = $000E; + GL_PATCH_VERTICES = $8E72; + GL_PATCH_DEFAULT_INNER_LEVEL = $8E73; + GL_PATCH_DEFAULT_OUTER_LEVEL = $8E74; + GL_TESS_CONTROL_OUTPUT_VERTICES = $8E75; + GL_TESS_GEN_MODE = $8E76; + GL_TESS_GEN_SPACING = $8E77; + GL_TESS_GEN_VERTEX_ORDER = $8E78; + GL_TESS_GEN_POINT_MODE = $8E79; + { reuse GL_TRIANGLES } + { reuse GL_QUADS } + GL_ISOLINES = $8E7A; + { reuse GL_EQUAL } + GL_FRACTIONAL_ODD = $8E7B; + GL_FRACTIONAL_EVEN = $8E7C; + { reuse GL_CCW } + { reuse GL_CW } + GL_MAX_PATCH_VERTICES = $8E7D; + GL_MAX_TESS_GEN_LEVEL = $8E7E; + GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS = $8E7F; + GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = $8E80; + GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = $8E81; + GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = $8E82; + GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS = $8E83; + GL_MAX_TESS_PATCH_COMPONENTS = $8E84; + GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = $8E85; + GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = $8E86; + GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS = $8E89; + GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = $8E8A; + GL_MAX_TESS_CONTROL_INPUT_COMPONENTS = $886C; + GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS = $886D; + GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = $8E1E; + GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = $8E1F; + GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER = $84F0; + GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER = $84F1; + GL_TESS_EVALUATION_SHADER = $8E87; + GL_TESS_CONTROL_SHADER = $8E88; + + // GL_ARB_texture_buffer_object_rgb32 + { reuse GL_RGB32F } + { reuse GL_RGB32UI } + { reuse GL_RGB32I } + + // GL_ARB_transform_feedback2 + GL_TRANSFORM_FEEDBACK = $8E22; + GL_TRANSFORM_FEEDBACK_PAUSED = $8E23; + GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED = GL_TRANSFORM_FEEDBACK_PAUSED; + GL_TRANSFORM_FEEDBACK_ACTIVE = $8E24; + GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE = GL_TRANSFORM_FEEDBACK_ACTIVE; + GL_TRANSFORM_FEEDBACK_BINDING = $8E25; + + // GL_ARB_transform_feedback3 + GL_MAX_TRANSFORM_FEEDBACK_BUFFERS = $8E70; + GL_MAX_VERTEX_STREAMS = $8E71; + + // GL_ARB_ES2_compatibility + GL_FIXED = $140C; + GL_IMPLEMENTATION_COLOR_READ_TYPE = $8B9A; + GL_IMPLEMENTATION_COLOR_READ_FORMAT = $8B9B; + GL_LOW_FLOAT = $8DF0; + GL_MEDIUM_FLOAT = $8DF1; + GL_HIGH_FLOAT = $8DF2; + GL_LOW_INT = $8DF3; + GL_MEDIUM_INT = $8DF4; + GL_HIGH_INT = $8DF5; + GL_SHADER_COMPILER = $8DFA; + GL_NUM_SHADER_BINARY_FORMATS = $8DF9; + GL_MAX_VERTEX_UNIFORM_VECTORS = $8DFB; + GL_MAX_VARYING_VECTORS = $8DFC; + GL_MAX_FRAGMENT_UNIFORM_VECTORS = $8DFD; + GL_RGB565 = $8D62; + + // GL_ARB_get_program_binary + GL_PROGRAM_BINARY_RETRIEVABLE_HINT = $8257; + GL_PROGRAM_BINARY_LENGTH = $8741; + GL_NUM_PROGRAM_BINARY_FORMATS = $87FE; + GL_PROGRAM_BINARY_FORMATS = $87FF; + + // GL_ARB_separate_shader_objects + GL_VERTEX_SHADER_BIT = $00000001; + GL_FRAGMENT_SHADER_BIT = $00000002; + GL_GEOMETRY_SHADER_BIT = $00000004; + GL_TESS_CONTROL_SHADER_BIT = $00000008; + GL_TESS_EVALUATION_SHADER_BIT = $00000010; + GL_ALL_SHADER_BITS = $FFFFFFFF; + GL_PROGRAM_SEPARABLE = $8258; + GL_ACTIVE_PROGRAM = $8259; + GL_PROGRAM_PIPELINE_BINDING = $825A; + + // GL_ARB_vertex_attrib_64bit + { reuse GL_RGB32I } + { reuse GL_DOUBLE_VEC2 } + { reuse GL_DOUBLE_VEC3 } + { reuse GL_DOUBLE_VEC4 } + { reuse GL_DOUBLE_MAT2 } + { reuse GL_DOUBLE_MAT3 } + { reuse GL_DOUBLE_MAT4 } + { reuse GL_DOUBLE_MAT2x3 } + { reuse GL_DOUBLE_MAT2x4 } + { reuse GL_DOUBLE_MAT3x2 } + { reuse GL_DOUBLE_MAT3x4 } + { reuse GL_DOUBLE_MAT4x2 } + { reuse GL_DOUBLE_MAT4x3 } + + // GL_ARB_viewport_array + { reuse GL_SCISSOR_BOX } + { reuse GL_VIEWPORT } + { reuse GL_DEPTH_RANGE } + { reuse GL_SCISSOR_TEST } + GL_MAX_VIEWPORTS = $825B; + GL_VIEWPORT_SUBPIXEL_BITS = $825C; + GL_VIEWPORT_BOUNDS_RANGE = $825D; + GL_LAYER_PROVOKING_VERTEX = $825E; + GL_VIEWPORT_INDEX_PROVOKING_VERTEX = $825F; + GL_UNDEFINED_VERTEX = $8260; + { reuse GL_FIRST_VERTEX_CONVENTION } + { reuse GL_LAST_VERTEX_CONVENTION } + { reuse GL_PROVOKING_VERTEX } + + // GL_ARB_cl_event + GL_SYNC_CL_EVENT_ARB = $8240; + GL_SYNC_CL_EVENT_COMPLETE_ARB = $8241; + + // GL_ARB_debug_output + GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB = $8242; + GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB = $8243; + GL_DEBUG_CALLBACK_FUNCTION_ARB = $8244; + GL_DEBUG_CALLBACK_USER_PARAM_ARB = $8245; + GL_DEBUG_SOURCE_API_ARB = $8246; + GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB = $8247; + GL_DEBUG_SOURCE_SHADER_COMPILER_ARB = $8248; + GL_DEBUG_SOURCE_THIRD_PARTY_ARB = $8249; + GL_DEBUG_SOURCE_APPLICATION_ARB = $824A; + GL_DEBUG_SOURCE_OTHER_ARB = $824B; + GL_DEBUG_TYPE_ERROR_ARB = $824C; + GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB = $824D; + GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB = $824E; + GL_DEBUG_TYPE_PORTABILITY_ARB = $824F; + GL_DEBUG_TYPE_PERFORMANCE_ARB = $8250; + GL_DEBUG_TYPE_OTHER_ARB = $8251; + GL_MAX_DEBUG_MESSAGE_LENGTH_ARB = $9143; + GL_MAX_DEBUG_LOGGED_MESSAGES_ARB = $9144; + GL_DEBUG_LOGGED_MESSAGES_ARB = $9145; + GL_DEBUG_SEVERITY_HIGH_ARB = $9146; + GL_DEBUG_SEVERITY_MEDIUM_ARB = $9147; + GL_DEBUG_SEVERITY_LOW_ARB = $9148; + + // GL_ARB_robustness + { reuse GL_NO_ERROR } + GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB = $00000004; + GL_LOSE_CONTEXT_ON_RESET_ARB = $8252; + GL_GUILTY_CONTEXT_RESET_ARB = $8253; + GL_INNOCENT_CONTEXT_RESET_ARB = $8254; + GL_UNKNOWN_CONTEXT_RESET_ARB = $8255; + GL_RESET_NOTIFICATION_STRATEGY_ARB = $8256; + GL_NO_RESET_NOTIFICATION_ARB = $8261; + + // GL_ARB_compressed_texture_pixel_storage + GL_UNPACK_COMPRESSED_BLOCK_WIDTH = $09127; + GL_UNPACK_COMPRESSED_BLOCK_HEIGHT = $09128; + GL_UNPACK_COMPRESSED_BLOCK_DEPTH = $09129; + GL_UNPACK_COMPRESSED_BLOCK_SIZE = $0912A; + GL_PACK_COMPRESSED_BLOCK_WIDTH = $0912B; + GL_PACK_COMPRESSED_BLOCK_HEIGHT = $0912C; + GL_PACK_COMPRESSED_BLOCK_DEPTH = $0912D; + GL_PACK_COMPRESSED_BLOCK_SIZE = $0912E; + + // GL_ARB_internalformat_query + GL_NUM_SAMPLE_COUNTS = $09380; + + // GL_ARB_map_buffer_alignment + GL_MIN_MAP_BUFFER_ALIGNMENT = $090BC; + + // GL_ARB_shader_atomic_counters + GL_ATOMIC_COUNTER_BUFFER = $92C0; + GL_ATOMIC_COUNTER_BUFFER_BINDING = $92C1; + GL_ATOMIC_COUNTER_BUFFER_START = $92C2; + GL_ATOMIC_COUNTER_BUFFER_SIZE = $92C3; + GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE = $92C4; + GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS = $92C5; + GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES = $92C6; + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER = $92C7; + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER = $92C8; + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER = $92C9; + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER = $92CA; + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER = $92CB; + GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS = $92CC; + GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS = $92CD; + GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS = $92CE; + GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS = $92CF; + GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS = $92D0; + GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS = $92D1; + GL_MAX_VERTEX_ATOMIC_COUNTERS = $92D2; + GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS = $92D3; + GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS = $92D4; + GL_MAX_GEOMETRY_ATOMIC_COUNTERS = $92D5; + GL_MAX_FRAGMENT_ATOMIC_COUNTERS = $92D6; + GL_MAX_COMBINED_ATOMIC_COUNTERS = $92D7; + GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE = $92D8; + GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = $92DC; + GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = $92D9; + GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX = $92DA; + GL_UNSIGNED_INT_ATOMIC_COUNTER = $92DB; + + // GL_ARB_shader_image_load_store + GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT = $00000001; + GL_ELEMENT_ARRAY_BARRIER_BIT = $00000002; + GL_UNIFORM_BARRIER_BIT = $00000004; + GL_TEXTURE_FETCH_BARRIER_BIT = $00000008; + GL_SHADER_IMAGE_ACCESS_BARRIER_BIT = $00000020; + GL_COMMAND_BARRIER_BIT = $00000040; + GL_PIXEL_BUFFER_BARRIER_BIT = $00000080; + GL_TEXTURE_UPDATE_BARRIER_BIT = $00000100; + GL_BUFFER_UPDATE_BARRIER_BIT = $00000200; + GL_FRAMEBUFFER_BARRIER_BIT = $00000400; + GL_TRANSFORM_FEEDBACK_BARRIER_BIT = $00000800; + GL_ATOMIC_COUNTER_BARRIER_BIT = $00001000; + GL_ALL_BARRIER_BITS = $FFFFFFFF; + GL_MAX_IMAGE_UNITS = $8F38; + GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS = $8F39; + GL_IMAGE_BINDING_NAME = $8F3A; + GL_IMAGE_BINDING_LEVEL = $8F3B; + GL_IMAGE_BINDING_LAYERED = $8F3C; + GL_IMAGE_BINDING_LAYER = $8F3D; + GL_IMAGE_BINDING_ACCESS = $8F3E; + GL_IMAGE_1D = $904C; + GL_IMAGE_2D = $904D; + GL_IMAGE_3D = $904E; + GL_IMAGE_2D_RECT = $904F; + GL_IMAGE_CUBE = $9050; + GL_IMAGE_BUFFER = $9051; + GL_IMAGE_1D_ARRAY = $9052; + GL_IMAGE_2D_ARRAY = $9053; + GL_IMAGE_CUBE_MAP_ARRAY = $9054; + GL_IMAGE_2D_MULTISAMPLE = $9055; + GL_IMAGE_2D_MULTISAMPLE_ARRAY = $9056; + GL_INT_IMAGE_1D = $9057; + GL_INT_IMAGE_2D = $9058; + GL_INT_IMAGE_3D = $9059; + GL_INT_IMAGE_2D_RECT = $905A; + GL_INT_IMAGE_CUBE = $905B; + GL_INT_IMAGE_BUFFER = $905C; + GL_INT_IMAGE_1D_ARRAY = $905D; + GL_INT_IMAGE_2D_ARRAY = $905E; + GL_INT_IMAGE_CUBE_MAP_ARRAY = $905F; + GL_INT_IMAGE_2D_MULTISAMPLE = $9060; + GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY = $9061; + GL_UNSIGNED_INT_IMAGE_1D = $9062; + GL_UNSIGNED_INT_IMAGE_2D = $9063; + GL_UNSIGNED_INT_IMAGE_3D = $9064; + GL_UNSIGNED_INT_IMAGE_2D_RECT = $9065; + GL_UNSIGNED_INT_IMAGE_CUBE = $9066; + GL_UNSIGNED_INT_IMAGE_BUFFER = $9067; + GL_UNSIGNED_INT_IMAGE_1D_ARRAY = $9068; + GL_UNSIGNED_INT_IMAGE_2D_ARRAY = $9069; + GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = $906A; + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE = $906B; + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY = $906C; + GL_MAX_IMAGE_SAMPLES = $906D; + GL_IMAGE_BINDING_FORMAT = $906E; + GL_IMAGE_FORMAT_COMPATIBILITY_TYPE = $90C7; + GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE = $90C8; + GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS = $90C9; + GL_MAX_VERTEX_IMAGE_UNIFORMS = $90CA; + GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS = $90CB; + GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS = $90CC; + GL_MAX_GEOMETRY_IMAGE_UNIFORMS = $90CD; + GL_MAX_FRAGMENT_IMAGE_UNIFORMS = $90CE; + GL_MAX_COMBINED_IMAGE_UNIFORMS = $90CF; + + // GL_ARB_texture_storage + GL_TEXTURE_IMMUTABLE_FORMAT = $912F; + + // 4.3 + GL_COMPRESSED_RGBA_ASTC_4x4_KHR = $93B0; + GL_COMPRESSED_RGBA_ASTC_5x4_KHR = $93B1; + GL_COMPRESSED_RGBA_ASTC_5x5_KHR = $93B2; + GL_COMPRESSED_RGBA_ASTC_6x5_KHR = $93B3; + GL_COMPRESSED_RGBA_ASTC_6x6_KHR = $93B4; + GL_COMPRESSED_RGBA_ASTC_8x5_KHR = $93B5; + GL_COMPRESSED_RGBA_ASTC_8x6_KHR = $93B6; + GL_COMPRESSED_RGBA_ASTC_8x8_KHR = $93B7; + GL_COMPRESSED_RGBA_ASTC_105_KHR = $93B8; + GL_COMPRESSED_RGBA_ASTC_106_KHR = $93B9; + GL_COMPRESSED_RGBA_ASTC_108_KHR = $93BA; + GL_COMPRESSED_RGBA_ASTC_110_KHR = $93BB; + GL_COMPRESSED_RGBA_ASTC_12x10_KHR = $93BC; + GL_COMPRESSED_RGBA_ASTC_12x12_KHR = $93BD; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = $93D0; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = $93D1; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = $93D2; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = $93D3; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = $93D4; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = $93D5; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = $93D6; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = $93D7; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = $93D8; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = $93D9; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = $93DA; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = $93DB; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = $93DC; + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = $93DD; + // (4.3) GL_KHR_debug + GL_DEBUG_OUTPUT_SYNCHRONOUS = $8242; + GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = $8243; + GL_DEBUG_CALLBACK_FUNCTION = $8244; + GL_DEBUG_CALLBACK_USER_PARAM = $8245; + GL_DEBUG_SOURCE_API = $8246; + GL_DEBUG_SOURCE_WINDOW_SYSTEM = $8247; + GL_DEBUG_SOURCE_SHADER_COMPILER = $8248; + GL_DEBUG_SOURCE_THIRD_PARTY = $8249; + GL_DEBUG_SOURCE_APPLICATION = $824A; + GL_DEBUG_SOURCE_OTHER = $824B; + GL_DEBUG_TYPE_ERROR = $824C; + GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR = $824D; + GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR = $824E; + GL_DEBUG_TYPE_PORTABILITY = $824F; + GL_DEBUG_TYPE_PERFORMANCE = $8250; + GL_DEBUG_TYPE_OTHER = $8251; + GL_DEBUG_TYPE_MARKER = $8268; + GL_DEBUG_TYPE_PUSH_GROUP = $8269; + GL_DEBUG_TYPE_POP_GROUP = $826A; + GL_DEBUG_SEVERITY_NOTIFICATION = $826B; + GL_MAX_DEBUG_GROUP_STACK_DEPTH = $826C; + GL_DEBUG_GROUP_STACK_DEPTH = $826D; + GL_BUFFER = $82E0; + GL_SHADER = $82E1; + GL_PROGRAM = $82E2; + GL_QUERY = $82E3; + GL_PROGRAM_PIPELINE = $82E4; + GL_SAMPLER = $82E6; + GL_DISPLAY_LIST = $82E7; + GL_MAX_LABEL_LENGTH = $82E8; + GL_MAX_DEBUG_MESSAGE_LENGTH = $9143; + GL_MAX_DEBUG_LOGGED_MESSAGES = $9144; + GL_DEBUG_LOGGED_MESSAGES = $9145; + GL_DEBUG_SEVERITY_HIGH = $9146; + GL_DEBUG_SEVERITY_MEDIUM = $9147; + GL_DEBUG_SEVERITY_LOW = $9148; + GL_DEBUG_OUTPUT = $92E0; + GL_CONTEXT_FLAG_DEBUG_BIT = $00000002; + GL_COMPUTE_SHADER = $91B9; + GL_MAX_COMPUTE_UNIFORM_BLOCKS = $91BB; + GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS = $91BC; + GL_MAX_COMPUTE_IMAGE_UNIFORMS = $91BD; + GL_MAX_COMPUTE_SHARED_MEMORY_SIZE = $8262; + GL_MAX_COMPUTE_UNIFORM_COMPONENTS = $8263; + GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = $8264; + GL_MAX_COMPUTE_ATOMIC_COUNTERS = $8265; + GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = $8266; + GL_MAX_COMPUTE_LOCAL_INVOCATIONS = $90EB; + GL_MAX_COMPUTE_WORK_GROUP_COUNT = $91BE; + GL_MAX_COMPUTE_WORK_GROUP_SIZE = $91BF; + GL_COMPUTE_LOCAL_WORK_SIZE = $8267; + GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER = $90EC; + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER = $90ED; + GL_DISPATCH_INDIRECT_BUFFER = $90EE; + GL_DISPATCH_INDIRECT_BUFFER_BINDING = $90EF; + GL_COMPUTE_SHADER_BIT = $00000020; + GL_COMPRESSED_RGB8_ETC2 = $9274; + GL_COMPRESSED_SRGB8_ETC2 = $9275; + GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = $9276; + GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = $9277; + GL_COMPRESSED_RGBA8_ETC2_EAC = $9278; + GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = $9279; + GL_COMPRESSED_R11_EAC = $9270; + GL_COMPRESSED_SIGNED_R11_EAC = $9271; + GL_COMPRESSED_RG11_EAC = $9272; + GL_COMPRESSED_SIGNED_RG11_EAC = $9273; + GL_PRIMITIVE_RESTART_FIXED_INDEX = $8D69; + GL_ANY_SAMPLES_PASSED_CONSERVATIVE = $8D6A; + GL_MAX_ELEMENT_INDEX = $8D6B; + GL_MAX_UNIFORM_LOCATIONS = $826E; + GL_FRAMEBUFFER_DEFAULT_WIDTH = $9310; + GL_FRAMEBUFFER_DEFAULT_HEIGHT = $9311; + GL_FRAMEBUFFER_DEFAULT_LAYERS = $9312; + GL_FRAMEBUFFER_DEFAULT_SAMPLES = $9313; + GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = $9314; + GL_MAX_FRAMEBUFFER_WIDTH = $9315; + GL_MAX_FRAMEBUFFER_HEIGHT = $9316; + GL_MAX_FRAMEBUFFER_LAYERS = $9317; + GL_MAX_FRAMEBUFFER_SAMPLES = $9318; + GL_INTERNALFORMAT_SUPPORTED = $826F; + GL_INTERNALFORMAT_PREFERRED = $8270; + GL_INTERNALFORMAT_RED_SIZE = $8271; + GL_INTERNALFORMAT_GREEN_SIZE = $8272; + GL_INTERNALFORMAT_BLUE_SIZE = $8273; + GL_INTERNALFORMAT_ALPHA_SIZE = $8274; + GL_INTERNALFORMAT_DEPTH_SIZE = $8275; + GL_INTERNALFORMAT_STENCIL_SIZE = $8276; + GL_INTERNALFORMAT_SHARED_SIZE = $8277; + GL_INTERNALFORMAT_RED_TYPE = $8278; + GL_INTERNALFORMAT_GREEN_TYPE = $8279; + GL_INTERNALFORMAT_BLUE_TYPE = $827A; + GL_INTERNALFORMAT_ALPHA_TYPE = $827B; + GL_INTERNALFORMAT_DEPTH_TYPE = $827C; + GL_INTERNALFORMAT_STENCIL_TYPE = $827D; + GL_MAX_WIDTH = $827E; + GL_MAX_HEIGHT = $827F; + GL_MAX_DEPTH = $8280; + GL_MAX_LAYERS = $8281; + GL_MAX_COMBINED_DIMENSIONS = $8282; + GL_COLOR_COMPONENTS = $8283; + GL_DEPTH_COMPONENTS = $8284; + GL_STENCIL_COMPONENTS = $8285; + GL_COLOR_RENDERABLE = $8286; + GL_DEPTH_RENDERABLE = $8287; + GL_STENCIL_RENDERABLE = $8288; + GL_FRAMEBUFFER_RENDERABLE = $8289; + GL_FRAMEBUFFER_RENDERABLE_LAYERED = $828A; + GL_FRAMEBUFFER_BLEND = $828B; + GL_READ_PIXELS = $828C; + GL_READ_PIXELS_FORMAT = $828D; + GL_READ_PIXELS_TYPE = $828E; + GL_TEXTURE_IMAGE_FORMAT = $828F; + GL_TEXTURE_IMAGE_TYPE = $8290; + GL_GET_TEXTURE_IMAGE_FORMAT = $8291; + GL_GET_TEXTURE_IMAGE_TYPE = $8292; + GL_MIPMAP = $8293; + GL_MANUAL_GENERATE_MIPMAP = $8294; + GL_AUTO_GENERATE_MIPMAP = $8295; + GL_COLOR_ENCODING = $8296; + GL_SRGB_READ = $8297; + GL_SRGB_WRITE = $8298; + GL_SRGB_DECODE_ARB = $8299; + GL_FILTER = $829A; + GL_VERTEX_TEXTURE = $829B; + GL_TESS_CONTROL_TEXTURE = $829C; + GL_TESS_EVALUATION_TEXTURE = $829D; + GL_GEOMETRY_TEXTURE = $829E; + GL_FRAGMENT_TEXTURE = $829F; + GL_COMPUTE_TEXTURE = $82A0; + GL_TEXTURE_SHADOW = $82A1; + GL_TEXTURE_GATHER = $82A2; + GL_TEXTURE_GATHER_SHADOW = $82A3; + GL_SHADER_IMAGE_LOAD = $82A4; + GL_SHADER_IMAGE_STORE = $82A5; + GL_SHADER_IMAGE_ATOMIC = $82A6; + GL_IMAGE_TEXEL_SIZE = $82A7; + GL_IMAGE_COMPATIBILITY_CLASS = $82A8; + GL_IMAGE_PIXEL_FORMAT = $82A9; + GL_IMAGE_PIXEL_TYPE = $82AA; + GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST = $82AC; + GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST = $82AD; + GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE = $82AE; + GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE = $82AF; + GL_TEXTURE_COMPRESSED_BLOCK_WIDTH = $82B1; + GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT = $82B2; + GL_TEXTURE_COMPRESSED_BLOCK_SIZE = $82B3; + GL_CLEAR_BUFFER = $82B4; + GL_TEXTURE_VIEW = $82B5; + GL_VIEW_COMPATIBILITY_CLASS = $82B6; + GL_FULL_SUPPORT = $82B7; + GL_CAVEAT_SUPPORT = $82B8; + GL_IMAGE_CLASS_4_X_32 = $82B9; + GL_IMAGE_CLASS_2_X_32 = $82BA; + GL_IMAGE_CLASS_1_X_32 = $82BB; + GL_IMAGE_CLASS_4_X_16 = $82BC; + GL_IMAGE_CLASS_2_X_16 = $82BD; + GL_IMAGE_CLASS_1_X_16 = $82BE; + GL_IMAGE_CLASS_4_X_8 = $82BF; + GL_IMAGE_CLASS_2_X_8 = $82C0; + GL_IMAGE_CLASS_1_X_8 = $82C1; + GL_IMAGE_CLASS_11_11_10 = $82C2; + GL_IMAGE_CLASS_10_10_10_2 = $82C3; + GL_VIEW_CLASS_128_BITS = $82C4; + GL_VIEW_CLASS_96_BITS = $82C5; + GL_VIEW_CLASS_64_BITS = $82C6; + GL_VIEW_CLASS_48_BITS = $82C7; + GL_VIEW_CLASS_32_BITS = $82C8; + GL_VIEW_CLASS_24_BITS = $82C9; + GL_VIEW_CLASS_16_BITS = $82CA; + GL_VIEW_CLASS_8_BITS = $82CB; + GL_VIEW_CLASS_S3TC_DXT1_RGB = $82CC; + GL_VIEW_CLASS_S3TC_DXT1_RGBA = $82CD; + GL_VIEW_CLASS_S3TC_DXT3_RGBA = $82CE; + GL_VIEW_CLASS_S3TC_DXT5_RGBA = $82CF; + GL_VIEW_CLASS_RGTC1_RED = $82D0; + GL_VIEW_CLASS_RGTC2_RG = $82D1; + GL_VIEW_CLASS_BPTC_UNORM = $82D2; + GL_VIEW_CLASS_BPTC_FLOAT = $82D3; + GL_UNIFORM = $92E1; + GL_UNIFORM_BLOCK = $92E2; + GL_PROGRAM_INPUT = $92E3; + GL_PROGRAM_OUTPUT = $92E4; + GL_BUFFER_VARIABLE = $92E5; + GL_SHADER_STORAGE_BLOCK = $92E6; + GL_VERTEX_SUBROUTINE = $92E8; + GL_TESS_CONTROL_SUBROUTINE = $92E9; + GL_TESS_EVALUATION_SUBROUTINE = $92EA; + GL_GEOMETRY_SUBROUTINE = $92EB; + GL_FRAGMENT_SUBROUTINE = $92EC; + GL_COMPUTE_SUBROUTINE = $92ED; + GL_VERTEX_SUBROUTINE_UNIFORM = $92EE; + GL_TESS_CONTROL_SUBROUTINE_UNIFORM = $92EF; + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM = $92F0; + GL_GEOMETRY_SUBROUTINE_UNIFORM = $92F1; + GL_FRAGMENT_SUBROUTINE_UNIFORM = $92F2; + GL_COMPUTE_SUBROUTINE_UNIFORM = $92F3; + GL_TRANSFORM_FEEDBACK_VARYING = $92F4; + GL_ACTIVE_RESOURCES = $92F5; + GL_MAX_NAME_LENGTH = $92F6; + GL_MAX_NUM_ACTIVE_VARIABLES = $92F7; + GL_MAX_NUM_COMPATIBLE_SUBROUTINES = $92F8; + GL_NAME_LENGTH = $92F9; + GL_TYPE = $92FA; + GL_ARRAY_SIZE = $92FB; + GL_OFFSET = $92FC; + GL_BLOCK_INDEX = $92FD; + GL_ARRAY_STRIDE = $92FE; + GL_MATRIX_STRIDE = $92FF; + GL_IS_ROW_MAJOR = $9300; + GL_ATOMIC_COUNTER_BUFFER_INDEX = $9301; + GL_BUFFER_BINDING = $9302; + GL_BUFFER_DATA_SIZE = $9303; + GL_NUM_ACTIVE_VARIABLES = $9304; + GL_ACTIVE_VARIABLES = $9305; + GL_REFERENCED_BY_VERTEX_SHADER = $9306; + GL_REFERENCED_BY_TESS_CONTROL_SHADER = $9307; + GL_REFERENCED_BY_TESS_EVALUATION_SHADER = $9308; + GL_REFERENCED_BY_GEOMETRY_SHADER = $9309; + GL_REFERENCED_BY_FRAGMENT_SHADER = $930A; + GL_REFERENCED_BY_COMPUTE_SHADER = $930B; + GL_TOP_LEVEL_ARRAY_SIZE = $930C; + GL_TOP_LEVEL_ARRAY_STRIDE = $930D; + GL_LOCATION = $930E; + GL_LOCATION_INDEX = $930F; + GL_IS_PER_PATCH = $92E7; + GL_SHADER_STORAGE_BUFFER = $90D2; + GL_SHADER_STORAGE_BUFFER_BINDING = $90D3; + GL_SHADER_STORAGE_BUFFER_START = $90D4; + GL_SHADER_STORAGE_BUFFER_SIZE = $90D5; + GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS = $90D6; + GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = $90D7; + GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = $90D8; + GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = $90D9; + GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = $90DA; + GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS = $90DB; + GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS = $90DC; + GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS = $90DD; + GL_MAX_SHADER_STORAGE_BLOCK_SIZE = $90DE; + GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = $90DF; + GL_SHADER_STORAGE_BARRIER_BIT = $2000; + GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES = GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS; + GL_DEPTH_STENCIL_TEXTURE_MODE = $90EA; + GL_TEXTURE_BUFFER_OFFSET = $919D; + GL_TEXTURE_BUFFER_SIZE = $919E; + GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT = $919F; + GL_TEXTURE_VIEW_MIN_LEVEL = $82DB; + GL_TEXTURE_VIEW_NUM_LEVELS = $82DC; + GL_TEXTURE_VIEW_MIN_LAYER = $82DD; + GL_TEXTURE_VIEW_NUM_LAYERS = $82DE; + GL_TEXTURE_IMMUTABLE_LEVELS = $82DF; + GL_VERTEX_ATTRIB_BINDING = $82D4; + GL_VERTEX_ATTRIB_RELATIVE_OFFSET = $82D5; + GL_VERTEX_BINDING_DIVISOR = $82D6; + GL_VERTEX_BINDING_OFFSET = $82D7; + GL_VERTEX_BINDING_STRIDE = $82D8; + GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = $82D9; + GL_MAX_VERTEX_ATTRIB_BINDINGS = $82DA; + // END 4.3 + + // GL 4.4 + GL_MAX_VERTEX_ATTRIB_STRIDE = $82E5; + GL_MAP_PERSISTENT_BIT = $0040; + GL_MAP_COHERENT_BIT = $0080; + GL_DYNAMIC_STORAGE_BIT = $0100; + GL_CLIENT_STORAGE_BIT = $0200; + GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT = $00004000; + GL_BUFFER_IMMUTABLE_STORAGE = $821F; + GL_BUFFER_STORAGE_FLAGS = $8220; + GL_CLEAR_TEXTURE = $9365; + GL_LOCATION_COMPONENT = $934A; + GL_TRANSFORM_FEEDBACK_BUFFER_INDEX = $934B; + GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE = $934C; + GL_QUERY_BUFFER = $9192; + GL_QUERY_BUFFER_BARRIER_BIT = $00008000; + GL_QUERY_BUFFER_BINDING = $9193; + GL_QUERY_RESULT_NO_WAIT = $9194; + GL_MIRROR_CLAMP_TO_EDGE = $8743; + // END GL 4.4 + + // GL_ATI_draw_buffers + GL_MAX_DRAW_BUFFERS_ATI = $8824; + GL_DRAW_BUFFER0_ATI = $8825; + GL_DRAW_BUFFER1_ATI = $8826; + GL_DRAW_BUFFER2_ATI = $8827; + GL_DRAW_BUFFER3_ATI = $8828; + GL_DRAW_BUFFER4_ATI = $8829; + GL_DRAW_BUFFER5_ATI = $882A; + GL_DRAW_BUFFER6_ATI = $882B; + GL_DRAW_BUFFER7_ATI = $882C; + GL_DRAW_BUFFER8_ATI = $882D; + GL_DRAW_BUFFER9_ATI = $882E; + GL_DRAW_BUFFER10_ATI = $882F; + GL_DRAW_BUFFER11_ATI = $8830; + GL_DRAW_BUFFER12_ATI = $8831; + GL_DRAW_BUFFER13_ATI = $8832; + GL_DRAW_BUFFER14_ATI = $8833; + GL_DRAW_BUFFER15_ATI = $8834; + + // GL_ATI_element_array + GL_ELEMENT_ARRAY_ATI = $8768; + GL_ELEMENT_ARRAY_TYPE_ATI = $8769; + GL_ELEMENT_ARRAY_POINTER_ATI = $876A; + + // GL_ATI_envmap_bumpmap + GL_BUMP_ROT_MATRIX_ATI = $8775; + GL_BUMP_ROT_MATRIX_SIZE_ATI = $8776; + GL_BUMP_NUM_TEX_UNITS_ATI = $8777; + GL_BUMP_TEX_UNITS_ATI = $8778; + GL_DUDV_ATI = $8779; + GL_DU8DV8_ATI = $877A; + GL_BUMP_ENVMAP_ATI = $877B; + GL_BUMP_TARGET_ATI = $877C; + + // GL_ATI_fragment_shader + GL_FRAGMENT_SHADER_ATI = $8920; + GL_REG_0_ATI = $8921; + GL_REG_1_ATI = $8922; + GL_REG_2_ATI = $8923; + GL_REG_3_ATI = $8924; + GL_REG_4_ATI = $8925; + GL_REG_5_ATI = $8926; + GL_REG_6_ATI = $8927; + GL_REG_7_ATI = $8928; + GL_REG_8_ATI = $8929; + GL_REG_9_ATI = $892A; + GL_REG_10_ATI = $892B; + GL_REG_11_ATI = $892C; + GL_REG_12_ATI = $892D; + GL_REG_13_ATI = $892E; + GL_REG_14_ATI = $892F; + GL_REG_15_ATI = $8930; + GL_REG_16_ATI = $8931; + GL_REG_17_ATI = $8932; + GL_REG_18_ATI = $8933; + GL_REG_19_ATI = $8934; + GL_REG_20_ATI = $8935; + GL_REG_21_ATI = $8936; + GL_REG_22_ATI = $8937; + GL_REG_23_ATI = $8938; + GL_REG_24_ATI = $8939; + GL_REG_25_ATI = $893A; + GL_REG_26_ATI = $893B; + GL_REG_27_ATI = $893C; + GL_REG_28_ATI = $893D; + GL_REG_29_ATI = $893E; + GL_REG_30_ATI = $893F; + GL_REG_31_ATI = $8940; + GL_CON_0_ATI = $8941; + GL_CON_1_ATI = $8942; + GL_CON_2_ATI = $8943; + GL_CON_3_ATI = $8944; + GL_CON_4_ATI = $8945; + GL_CON_5_ATI = $8946; + GL_CON_6_ATI = $8947; + GL_CON_7_ATI = $8948; + GL_CON_8_ATI = $8949; + GL_CON_9_ATI = $894A; + GL_CON_10_ATI = $894B; + GL_CON_11_ATI = $894C; + GL_CON_12_ATI = $894D; + GL_CON_13_ATI = $894E; + GL_CON_14_ATI = $894F; + GL_CON_15_ATI = $8950; + GL_CON_16_ATI = $8951; + GL_CON_17_ATI = $8952; + GL_CON_18_ATI = $8953; + GL_CON_19_ATI = $8954; + GL_CON_20_ATI = $8955; + GL_CON_21_ATI = $8956; + GL_CON_22_ATI = $8957; + GL_CON_23_ATI = $8958; + GL_CON_24_ATI = $8959; + GL_CON_25_ATI = $895A; + GL_CON_26_ATI = $895B; + GL_CON_27_ATI = $895C; + GL_CON_28_ATI = $895D; + GL_CON_29_ATI = $895E; + GL_CON_30_ATI = $895F; + GL_CON_31_ATI = $8960; + GL_MOV_ATI = $8961; + GL_ADD_ATI = $8963; + GL_MUL_ATI = $8964; + GL_SUB_ATI = $8965; + GL_DOT3_ATI = $8966; + GL_DOT4_ATI = $8967; + GL_MAD_ATI = $8968; + GL_LERP_ATI = $8969; + GL_CND_ATI = $896A; + GL_CND0_ATI = $896B; + GL_DOT2_ADD_ATI = $896C; + GL_SECONDARY_INTERPOLATOR_ATI = $896D; + GL_NUM_FRAGMENT_REGISTERS_ATI = $896E; + GL_NUM_FRAGMENT_CONSTANTS_ATI = $896F; + GL_NUM_PASSES_ATI = $8970; + GL_NUM_INSTRUCTIONS_PER_PASS_ATI = $8971; + GL_NUM_INSTRUCTIONS_TOTAL_ATI = $8972; + GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI = $8973; + GL_NUM_LOOPBACK_COMPONENTS_ATI = $8974; + GL_COLOR_ALPHA_PAIRING_ATI = $8975; + GL_SWIZZLE_STR_ATI = $8976; + GL_SWIZZLE_STQ_ATI = $8977; + GL_SWIZZLE_STR_DR_ATI = $8978; + GL_SWIZZLE_STQ_DQ_ATI = $8979; + GL_SWIZZLE_STRQ_ATI = $897A; + GL_SWIZZLE_STRQ_DQ_ATI = $897B; + GL_RED_BIT_ATI = $00000001; + GL_GREEN_BIT_ATI = $00000002; + GL_BLUE_BIT_ATI = $00000004; + GL_2X_BIT_ATI = $00000001; + GL_4X_BIT_ATI = $00000002; + GL_8X_BIT_ATI = $00000004; + GL_HALF_BIT_ATI = $00000008; + GL_QUARTER_BIT_ATI = $00000010; + GL_EIGHTH_BIT_ATI = $00000020; + GL_SATURATE_BIT_ATI = $00000040; + GL_COMP_BIT_ATI = $00000002; + GL_NEGATE_BIT_ATI = $00000004; + GL_BIAS_BIT_ATI = $00000008; + + // GL_ATI_pn_triangles + GL_PN_TRIANGLES_ATI = $87F0; + GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = $87F1; + GL_PN_TRIANGLES_POINT_MODE_ATI = $87F2; + GL_PN_TRIANGLES_NORMAL_MODE_ATI = $87F3; + GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI = $87F4; + GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI = $87F5; + GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI = $87F6; + GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI = $87F7; + GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI = $87F8; + + // GL_ATI_separate_stencil + GL_STENCIL_BACK_FUNC_ATI = $8800; + GL_STENCIL_BACK_FAIL_ATI = $8801; + GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI = $8802; + GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI = $8803; + + // GL_ATI_text_fragment_shader + GL_TEXT_FRAGMENT_SHADER_ATI = $8200; + + // GL_ATI_texture_env_combine3 + GL_MODULATE_ADD_ATI = $8744; + GL_MODULATE_SIGNED_ADD_ATI = $8745; + GL_MODULATE_SUBTRACT_ATI = $8746; + + // GL_ATI_texture_float + GL_RGBA_FLOAT32_ATI = $8814; + GL_RGB_FLOAT32_ATI = $8815; + GL_ALPHA_FLOAT32_ATI = $8816; + GL_INTENSITY_FLOAT32_ATI = $8817; + GL_LUMINANCE_FLOAT32_ATI = $8818; + GL_LUMINANCE_ALPHA_FLOAT32_ATI = $8819; + GL_RGBA_FLOAT16_ATI = $881A; + GL_RGB_FLOAT16_ATI = $881B; + GL_ALPHA_FLOAT16_ATI = $881C; + GL_INTENSITY_FLOAT16_ATI = $881D; + GL_LUMINANCE_FLOAT16_ATI = $881E; + GL_LUMINANCE_ALPHA_FLOAT16_ATI = $881F; + + // GL_ATI_texture_mirror_once + GL_MIRROR_CLAMP_ATI = $8742; + GL_MIRROR_CLAMP_TO_EDGE_ATI = $8743; + + // GL_ATI_vertex_array_object + GL_STATIC_ATI = $8760; + GL_DYNAMIC_ATI = $8761; + GL_PRESERVE_ATI = $8762; + GL_DISCARD_ATI = $8763; + GL_OBJECT_BUFFER_SIZE_ATI = $8764; + GL_OBJECT_BUFFER_USAGE_ATI = $8765; + GL_ARRAY_OBJECT_BUFFER_ATI = $8766; + GL_ARRAY_OBJECT_OFFSET_ATI = $8767; + + // GL_ATI_vertex_streams + GL_MAX_VERTEX_STREAMS_ATI = $876B; + GL_VERTEX_STREAM0_ATI = $876C; + GL_VERTEX_STREAM1_ATI = $876D; + GL_VERTEX_STREAM2_ATI = $876E; + GL_VERTEX_STREAM3_ATI = $876F; + GL_VERTEX_STREAM4_ATI = $8770; + GL_VERTEX_STREAM5_ATI = $8771; + GL_VERTEX_STREAM6_ATI = $8772; + GL_VERTEX_STREAM7_ATI = $8773; + GL_VERTEX_SOURCE_ATI = $8774; + + // GL_ATI_meminfo + GL_VBO_FREE_MEMORY_ATI = $87FB; + GL_TEXTURE_FREE_MEMORY_ATI = $87FC; + GL_RENDERBUFFER_FREE_MEMORY_ATI = $87FD; + + // GL_AMD_performance_monitor + GL_COUNTER_TYPE_AMD = $8BC0; + GL_COUNTER_RANGE_AMD = $8BC1; + GL_UNSIGNED_INT64_AMD = $8BC2; + GL_PERCENTAGE_AMD = $8BC3; + GL_PERFMON_RESULT_AVAILABLE_AMD = $8BC4; + GL_PERFMON_RESULT_SIZE_AMD = $8BC5; + GL_PERFMON_RESULT_AMD = $8BC6; + + // GL_AMD_vertex_shader_tesselator + GL_SAMPLER_BUFFER_AMD = $9001; + GL_INT_SAMPLER_BUFFER_AMD = $9002; + GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD = $9003; + GL_TESSELLATION_MODE_AMD = $9004; + GL_TESSELLATION_FACTOR_AMD = $9005; + GL_DISCRETE_AMD = $9006; + GL_CONTINUOUS_AMD = $9007; + + // GL_AMD_seamless_cubemap_per_texture + { reuse GL_TEXTURE_CUBE_MAP_SEAMLESS } + + // GL_AMD_name_gen_delete + GL_DATA_BUFFER_AMD = $9151; + GL_PERFORMANCE_MONITOR_AMD = $9152; + GL_QUERY_OBJECT_AMD = $9153; + GL_VERTEX_ARRAY_OBJECT_AMD = $9154; + GL_SAMPLER_OBJECT_AMD = $9155; + + // GL_AMD_debug_output + GL_MAX_DEBUG_LOGGED_MESSAGES_AMD = $9144; + GL_DEBUG_LOGGED_MESSAGES_AMD = $9145; + GL_DEBUG_SEVERITY_HIGH_AMD = $9146; + GL_DEBUG_SEVERITY_MEDIUM_AMD = $9147; + GL_DEBUG_SEVERITY_LOW_AMD = $9148; + GL_DEBUG_CATEGORY_API_ERROR_AMD = $9149; + GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD = $914A; + GL_DEBUG_CATEGORY_DEPRECATION_AMD = $914B; + GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD = $914C; + GL_DEBUG_CATEGORY_PERFORMANCE_AMD = $914D; + GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD = $914E; + GL_DEBUG_CATEGORY_APPLICATION_AMD = $914F; + GL_DEBUG_CATEGORY_OTHER_AMD = $9150; + + // GL_AMD_depth_clamp_separate + GL_DEPTH_CLAMP_NEAR_AMD = $901E; + GL_DEPTH_CLAMP_FAR_AMD = $901F; + + // GL_EXT_422_pixels + GL_422_EXT = $80CC; + GL_422_REV_EXT = $80CD; + GL_422_AVERAGE_EXT = $80CE; + GL_422_REV_AVERAGE_EXT = $80CF; + + // GL_EXT_abgr + GL_ABGR_EXT = $8000; + + // GL_EXT_bgra + GL_BGR_EXT = $80E0; + GL_BGRA_EXT = $80E1; + + // GL_EXT_blend_color + GL_CONSTANT_COLOR_EXT = $8001; + GL_ONE_MINUS_CONSTANT_COLOR_EXT = $8002; + GL_CONSTANT_ALPHA_EXT = $8003; + GL_ONE_MINUS_CONSTANT_ALPHA_EXT = $8004; + GL_BLEND_COLOR_EXT = $8005; + + // GL_EXT_blend_func_separate + GL_BLEND_DST_RGB_EXT = $80C8; + GL_BLEND_SRC_RGB_EXT = $80C9; + GL_BLEND_DST_ALPHA_EXT = $80CA; + GL_BLEND_SRC_ALPHA_EXT = $80CB; + + // GL_EXT_blend_minmax + GL_FUNC_ADD_EXT = $8006; + GL_MIN_EXT = $8007; + GL_MAX_EXT = $8008; + GL_BLEND_EQUATION_EXT = $8009; + + // GL_EXT_blend_subtract + GL_FUNC_SUBTRACT_EXT = $800A; + GL_FUNC_REVERSE_SUBTRACT_EXT = $800B; + + // GL_EXT_clip_volume_hint + GL_CLIP_VOLUME_CLIPPING_HINT_EXT = $80F0; + + // GL_EXT_cmyka + GL_CMYK_EXT = $800C; + GL_CMYKA_EXT = $800D; + GL_PACK_CMYK_HINT_EXT = $800E; + GL_UNPACK_CMYK_HINT_EXT = $800F; + + // GL_EXT_compiled_vertex_array + GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = $81A8; + GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = $81A9; + + // GL_EXT_convolution + GL_CONVOLUTION_1D_EXT = $8010; + GL_CONVOLUTION_2D_EXT = $8011; + GL_SEPARABLE_2D_EXT = $8012; + GL_CONVOLUTION_BORDER_MODE_EXT = $8013; + GL_CONVOLUTION_FILTER_SCALE_EXT = $8014; + GL_CONVOLUTION_FILTER_BIAS_EXT = $8015; + GL_REDUCE_EXT = $8016; + GL_CONVOLUTION_FORMAT_EXT = $8017; + GL_CONVOLUTION_WIDTH_EXT = $8018; + GL_CONVOLUTION_HEIGHT_EXT = $8019; + GL_MAX_CONVOLUTION_WIDTH_EXT = $801A; + GL_MAX_CONVOLUTION_HEIGHT_EXT = $801B; + GL_POST_CONVOLUTION_RED_SCALE_EXT = $801C; + GL_POST_CONVOLUTION_GREEN_SCALE_EXT = $801D; + GL_POST_CONVOLUTION_BLUE_SCALE_EXT = $801E; + GL_POST_CONVOLUTION_ALPHA_SCALE_EXT = $801F; + GL_POST_CONVOLUTION_RED_BIAS_EXT = $8020; + GL_POST_CONVOLUTION_GREEN_BIAS_EXT = $8021; + GL_POST_CONVOLUTION_BLUE_BIAS_EXT = $8022; + GL_POST_CONVOLUTION_ALPHA_BIAS_EXT = $8023; + + // GL_EXT_coordinate_frame + GL_TANGENT_ARRAY_EXT = $8439; + GL_BINORMAL_ARRAY_EXT = $843A; + GL_CURRENT_TANGENT_EXT = $843B; + GL_CURRENT_BINORMAL_EXT = $843C; + GL_TANGENT_ARRAY_TYPE_EXT = $843E; + GL_TANGENT_ARRAY_STRIDE_EXT = $843F; + GL_BINORMAL_ARRAY_TYPE_EXT = $8440; + GL_BINORMAL_ARRAY_STRIDE_EXT = $8441; + GL_TANGENT_ARRAY_POINTER_EXT = $8442; + GL_BINORMAL_ARRAY_POINTER_EXT = $8443; + GL_MAP1_TANGENT_EXT = $8444; + GL_MAP2_TANGENT_EXT = $8445; + GL_MAP1_BINORMAL_EXT = $8446; + GL_MAP2_BINORMAL_EXT = $8447; + + // GL_EXT_cull_vertex + GL_CULL_VERTEX_EXT = $81AA; + GL_CULL_VERTEX_EYE_POSITION_EXT = $81AB; + GL_CULL_VERTEX_OBJECT_POSITION_EXT = $81AC; + + // GL_EXT_draw_range_elements + GL_MAX_ELEMENTS_VERTICES_EXT = $80E8; + GL_MAX_ELEMENTS_INDICES_EXT = $80E9; + + // GL_EXT_fog_coord + GL_FOG_COORDINATE_SOURCE_EXT = $8450; + GL_FOG_COORDINATE_EXT = $8451; + GL_FRAGMENT_DEPTH_EXT = $8452; + GL_CURRENT_FOG_COORDINATE_EXT = $8453; + GL_FOG_COORDINATE_ARRAY_TYPE_EXT = $8454; + GL_FOG_COORDINATE_ARRAY_STRIDE_EXT = $8455; + GL_FOG_COORDINATE_ARRAY_POINTER_EXT = $8456; + GL_FOG_COORDINATE_ARRAY_EXT = $8457; + + // GL_EXT_framebuffer_object + GL_FRAMEBUFFER_EXT = $8D40; + GL_RENDERBUFFER_EXT = $8D41; + GL_STENCIL_INDEX_EXT = $8D45; + GL_STENCIL_INDEX1_EXT = $8D46; + GL_STENCIL_INDEX4_EXT = $8D47; + GL_STENCIL_INDEX8_EXT = $8D48; + GL_STENCIL_INDEX16_EXT = $8D49; + GL_RENDERBUFFER_WIDTH_EXT = $8D42; + GL_RENDERBUFFER_HEIGHT_EXT = $8D43; + GL_RENDERBUFFER_INTERNAL_FORMAT_EXT = $8D44; + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT = $8CD0; + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT = $8CD1; + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT = $8CD2; + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT = $8CD3; + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT = $8CD4; + GL_COLOR_ATTACHMENT0_EXT = $8CE0; + GL_COLOR_ATTACHMENT1_EXT = $8CE1; + GL_COLOR_ATTACHMENT2_EXT = $8CE2; + GL_COLOR_ATTACHMENT3_EXT = $8CE3; + GL_COLOR_ATTACHMENT4_EXT = $8CE4; + GL_COLOR_ATTACHMENT5_EXT = $8CE5; + GL_COLOR_ATTACHMENT6_EXT = $8CE6; + GL_COLOR_ATTACHMENT7_EXT = $8CE7; + GL_COLOR_ATTACHMENT8_EXT = $8CE8; + GL_COLOR_ATTACHMENT9_EXT = $8CE9; + GL_COLOR_ATTACHMENT10_EXT = $8CEA; + GL_COLOR_ATTACHMENT11_EXT = $8CEB; + GL_COLOR_ATTACHMENT12_EXT = $8CEC; + GL_COLOR_ATTACHMENT13_EXT = $8CED; + GL_COLOR_ATTACHMENT14_EXT = $8CEE; + GL_COLOR_ATTACHMENT15_EXT = $8CEF; + GL_DEPTH_ATTACHMENT_EXT = $8D00; + GL_STENCIL_ATTACHMENT_EXT = $8D20; + GL_FRAMEBUFFER_COMPLETE_EXT = $8CD5; + GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = $8CD6; + GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT = $8CD7; + GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT = $8CD8; + GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT = $8CD9; + GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT = $8CDA; + GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT = $8CDB; + GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT = $8CDC; + GL_FRAMEBUFFER_UNSUPPORTED_EXT = $8CDD; + GL_FRAMEBUFFER_STATUS_ERROR_EXT = $8CDE; + GL_FRAMEBUFFER_BINDING_EXT = $8CA6; + GL_RENDERBUFFER_BINDING_EXT = $8CA7; + GL_MAX_COLOR_ATTACHMENTS_EXT = $8CDF; + GL_MAX_RENDERBUFFER_SIZE_EXT = $84E8; + GL_INVALID_FRAMEBUFFER_OPERATION_EXT = $0506; + + // GL_EXT_histogram + GL_HISTOGRAM_EXT = $8024; + GL_PROXY_HISTOGRAM_EXT = $8025; + GL_HISTOGRAM_WIDTH_EXT = $8026; + GL_HISTOGRAM_FORMAT_EXT = $8027; + GL_HISTOGRAM_RED_SIZE_EXT = $8028; + GL_HISTOGRAM_GREEN_SIZE_EXT = $8029; + GL_HISTOGRAM_BLUE_SIZE_EXT = $802A; + GL_HISTOGRAM_ALPHA_SIZE_EXT = $802B; + GL_HISTOGRAM_LUMINANCE_SIZE_EXT = $802C; + GL_HISTOGRAM_SINK_EXT = $802D; + GL_MINMAX_EXT = $802E; + GL_MINMAX_FORMAT_EXT = $802F; + GL_MINMAX_SINK_EXT = $8030; + GL_TABLE_TOO_LARGE_EXT = $8031; + + // GL_EXT_index_array_formats + GL_IUI_V2F_EXT = $81AD; + GL_IUI_V3F_EXT = $81AE; + GL_IUI_N3F_V2F_EXT = $81AF; + GL_IUI_N3F_V3F_EXT = $81B0; + GL_T2F_IUI_V2F_EXT = $81B1; + GL_T2F_IUI_V3F_EXT = $81B2; + GL_T2F_IUI_N3F_V2F_EXT = $81B3; + GL_T2F_IUI_N3F_V3F_EXT = $81B4; + + // GL_EXT_index_func + GL_INDEX_TEST_EXT = $81B5; + GL_INDEX_TEST_FUNC_EXT = $81B6; + GL_INDEX_TEST_REF_EXT = $81B7; + + // GL_EXT_index_material + GL_INDEX_MATERIAL_EXT = $81B8; + GL_INDEX_MATERIAL_PARAMETER_EXT = $81B9; + GL_INDEX_MATERIAL_FACE_EXT = $81BA; + + // GL_EXT_light_texture + GL_FRAGMENT_MATERIAL_EXT = $8349; + GL_FRAGMENT_NORMAL_EXT = $834A; + GL_FRAGMENT_COLOR_EXT = $834C; + GL_ATTENUATION_EXT = $834D; + GL_SHADOW_ATTENUATION_EXT = $834E; + GL_TEXTURE_APPLICATION_MODE_EXT = $834F; + GL_TEXTURE_LIGHT_EXT = $8350; + GL_TEXTURE_MATERIAL_FACE_EXT = $8351; + GL_TEXTURE_MATERIAL_PARAMETER_EXT = $8352; + + // GL_EXT_multisample + GL_MULTISAMPLE_EXT = $809D; + GL_SAMPLE_ALPHA_TO_MASK_EXT = $809E; + GL_SAMPLE_ALPHA_TO_ONE_EXT = $809F; + GL_SAMPLE_MASK_EXT = $80A0; + GL_1PASS_EXT = $80A1; + GL_2PASS_0_EXT = $80A2; + GL_2PASS_1_EXT = $80A3; + GL_4PASS_0_EXT = $80A4; + GL_4PASS_1_EXT = $80A5; + GL_4PASS_2_EXT = $80A6; + GL_4PASS_3_EXT = $80A7; + GL_SAMPLE_BUFFERS_EXT = $80A8; + GL_SAMPLES_EXT = $80A9; + GL_SAMPLE_MASK_VALUE_EXT = $80AA; + GL_SAMPLE_MASK_INVERT_EXT = $80AB; + GL_SAMPLE_PATTERN_EXT = $80AC; + GL_MULTISAMPLE_BIT_EXT = $20000000; + + // GL_EXT_packed_pixels + GL_UNSIGNED_BYTE_3_3_2_EXT = $8032; + GL_UNSIGNED_SHORT_4_4_4_4_EXT = $8033; + GL_UNSIGNED_SHORT_5_5_5_1_EXT = $8034; + GL_UNSIGNED_INT_8_8_8_8_EXT = $8035; + GL_UNSIGNED_INT_10_10_10_2_EXT = $8036; + + // GL_EXT_paletted_texture + GL_COLOR_INDEX1_EXT = $80E2; + GL_COLOR_INDEX2_EXT = $80E3; + GL_COLOR_INDEX4_EXT = $80E4; + GL_COLOR_INDEX8_EXT = $80E5; + GL_COLOR_INDEX12_EXT = $80E6; + GL_COLOR_INDEX16_EXT = $80E7; + GL_TEXTURE_INDEX_SIZE_EXT = $80ED; + + // GL_EXT_pixel_transform + GL_PIXEL_TRANSFORM_2D_EXT = $8330; + GL_PIXEL_MAG_FILTER_EXT = $8331; + GL_PIXEL_MIN_FILTER_EXT = $8332; + GL_PIXEL_CUBIC_WEIGHT_EXT = $8333; + GL_CUBIC_EXT = $8334; + GL_AVERAGE_EXT = $8335; + GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = $8336; + GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = $8337; + GL_PIXEL_TRANSFORM_2D_MATRIX_EXT = $8338; + + // GL_EXT_point_parameters + GL_POINT_SIZE_MIN_EXT = $8126; + GL_POINT_SIZE_MAX_EXT = $8127; + GL_POINT_FADE_THRESHOLD_SIZE_EXT = $8128; + GL_DISTANCE_ATTENUATION_EXT = $8129; + + // GL_EXT_polygon_offset + GL_POLYGON_OFFSET_EXT = $8037; + GL_POLYGON_OFFSET_FACTOR_EXT = $8038; + GL_POLYGON_OFFSET_BIAS_EXT = $8039; + + // GL_EXT_rescale_normal + GL_RESCALE_NORMAL_EXT = $803A; + + // GL_EXT_secondary_color + GL_COLOR_SUM_EXT = $8458; + GL_CURRENT_SECONDARY_COLOR_EXT = $8459; + GL_SECONDARY_COLOR_ARRAY_SIZE_EXT = $845A; + GL_SECONDARY_COLOR_ARRAY_TYPE_EXT = $845B; + GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT = $845C; + GL_SECONDARY_COLOR_ARRAY_POINTER_EXT = $845D; + GL_SECONDARY_COLOR_ARRAY_EXT = $845E; + + // GL_EXT_separate_specular_color + GL_LIGHT_MODEL_COLOR_CONTROL_EXT = $81F8; + GL_SINGLE_COLOR_EXT = $81F9; + GL_SEPARATE_SPECULAR_COLOR_EXT = $81FA; + + // GL_EXT_shared_texture_palette + GL_SHARED_TEXTURE_PALETTE_EXT = $81FB; + + // GL_EXT_stencil_two_side + GL_STENCIL_TEST_TWO_SIDE_EXT = $8910; + GL_ACTIVE_STENCIL_FACE_EXT = $8911; + + // GL_EXT_stencil_wrap + GL_INCR_WRAP_EXT = $8507; + GL_DECR_WRAP_EXT = $8508; + + // GL_EXT_texture + GL_ALPHA4_EXT = $803B; + GL_ALPHA8_EXT = $803C; + GL_ALPHA12_EXT = $803D; + GL_ALPHA16_EXT = $803E; + GL_LUMINANCE4_EXT = $803F; + GL_LUMINANCE8_EXT = $8040; + GL_LUMINANCE12_EXT = $8041; + GL_LUMINANCE16_EXT = $8042; + GL_LUMINANCE4_ALPHA4_EXT = $8043; + GL_LUMINANCE6_ALPHA2_EXT = $8044; + GL_LUMINANCE8_ALPHA8_EXT = $8045; + GL_LUMINANCE12_ALPHA4_EXT = $8046; + GL_LUMINANCE12_ALPHA12_EXT = $8047; + GL_LUMINANCE16_ALPHA16_EXT = $8048; + GL_INTENSITY_EXT = $8049; + GL_INTENSITY4_EXT = $804A; + GL_INTENSITY8_EXT = $804B; + GL_INTENSITY12_EXT = $804C; + GL_INTENSITY16_EXT = $804D; + GL_RGB2_EXT = $804E; + GL_RGB4_EXT = $804F; + GL_RGB5_EXT = $8050; + GL_RGB8_EXT = $8051; + GL_RGB10_EXT = $8052; + GL_RGB12_EXT = $8053; + GL_RGB16_EXT = $8054; + GL_RGBA2_EXT = $8055; + GL_RGBA4_EXT = $8056; + GL_RGB5_A1_EXT = $8057; + GL_RGBA8_EXT = $8058; + GL_RGB10_A2_EXT = $8059; + GL_RGBA12_EXT = $805A; + GL_RGBA16_EXT = $805B; + GL_TEXTURE_RED_SIZE_EXT = $805C; + GL_TEXTURE_GREEN_SIZE_EXT = $805D; + GL_TEXTURE_BLUE_SIZE_EXT = $805E; + GL_TEXTURE_ALPHA_SIZE_EXT = $805F; + GL_TEXTURE_LUMINANCE_SIZE_EXT = $8060; + GL_TEXTURE_INTENSITY_SIZE_EXT = $8061; + GL_REPLACE_EXT = $8062; + GL_PROXY_TEXTURE_1D_EXT = $8063; + GL_PROXY_TEXTURE_2D_EXT = $8064; + GL_TEXTURE_TOO_LARGE_EXT = $8065; + + // GL_EXT_texture3D + GL_PACK_SKIP_IMAGES_EXT = $806B; + GL_PACK_IMAGE_HEIGHT_EXT = $806C; + GL_UNPACK_SKIP_IMAGES_EXT = $806D; + GL_UNPACK_IMAGE_HEIGHT_EXT = $806E; + GL_TEXTURE_3D_EXT = $806F; + GL_PROXY_TEXTURE_3D_EXT = $8070; + GL_TEXTURE_DEPTH_EXT = $8071; + GL_TEXTURE_WRAP_R_EXT = $8072; + GL_MAX_3D_TEXTURE_SIZE_EXT = $8073; + + // GL_EXT_texture_compression_s3tc + GL_COMPRESSED_RGB_S3TC_DXT1_EXT = $83F0; + GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = $83F1; + GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = $83F2; + GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = $83F3; + + // GL_EXT_texture_cube_map + GL_NORMAL_MAP_EXT = $8511; + GL_REFLECTION_MAP_EXT = $8512; + GL_TEXTURE_CUBE_MAP_EXT = $8513; + GL_TEXTURE_BINDING_CUBE_MAP_EXT = $8514; + GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT = $8515; + GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT = $8516; + GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT = $8517; + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT = $8518; + GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT = $8519; + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT = $851A; + GL_PROXY_TEXTURE_CUBE_MAP_EXT = $851B; + GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT = $851C; + + // GL_EXT_texture_edge_clamp + GL_CLAMP_TO_EDGE_EXT = $812F; + + // GL_EXT_texture_env_combine + GL_COMBINE_EXT = $8570; + GL_COMBINE_RGB_EXT = $8571; + GL_COMBINE_ALPHA_EXT = $8572; + GL_RGB_SCALE_EXT = $8573; + GL_ADD_SIGNED_EXT = $8574; + GL_INTERPOLATE_EXT = $8575; + GL_CONSTANT_EXT = $8576; + GL_PRIMARY_COLOR_EXT = $8577; + GL_PREVIOUS_EXT = $8578; + GL_SOURCE0_RGB_EXT = $8580; + GL_SOURCE1_RGB_EXT = $8581; + GL_SOURCE2_RGB_EXT = $8582; + GL_SOURCE0_ALPHA_EXT = $8588; + GL_SOURCE1_ALPHA_EXT = $8589; + GL_SOURCE2_ALPHA_EXT = $858A; + GL_OPERAND0_RGB_EXT = $8590; + GL_OPERAND1_RGB_EXT = $8591; + GL_OPERAND2_RGB_EXT = $8592; + GL_OPERAND0_ALPHA_EXT = $8598; + GL_OPERAND1_ALPHA_EXT = $8599; + GL_OPERAND2_ALPHA_EXT = $859A; + + // GL_EXT_texture_env_dot3 + GL_DOT3_RGB_EXT = $8740; + GL_DOT3_RGBA_EXT = $8741; + + // GL_EXT_texture_filter_anisotropic + GL_TEXTURE_MAX_ANISOTROPY_EXT = $84FE; + GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = $84FF; + + // GL_EXT_texture_lod_bias + GL_MAX_TEXTURE_LOD_BIAS_EXT = $84FD; + GL_TEXTURE_FILTER_CONTROL_EXT = $8500; + GL_TEXTURE_LOD_BIAS_EXT = $8501; + + // GL_EXT_texture_object + GL_TEXTURE_PRIORITY_EXT = $8066; + GL_TEXTURE_RESIDENT_EXT = $8067; + GL_TEXTURE_1D_BINDING_EXT = $8068; + GL_TEXTURE_2D_BINDING_EXT = $8069; + GL_TEXTURE_3D_BINDING_EXT = $806A; + + // GL_EXT_texture_perturb_normal + GL_PERTURB_EXT = $85AE; + GL_TEXTURE_NORMAL_EXT = $85AF; + + // GL_EXT_texture_rectangle + GL_TEXTURE_RECTANGLE_EXT = $84F5; + GL_TEXTURE_BINDING_RECTANGLE_EXT = $84F6; + GL_PROXY_TEXTURE_RECTANGLE_EXT = $84F7; + GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT = $84F8; + + // GL_EXT_vertex_array + GL_VERTEX_ARRAY_EXT = $8074; + GL_NORMAL_ARRAY_EXT = $8075; + GL_COLOR_ARRAY_EXT = $8076; + GL_INDEX_ARRAY_EXT = $8077; + GL_TEXTURE_COORD_ARRAY_EXT = $8078; + GL_EDGE_FLAG_ARRAY_EXT = $8079; + GL_VERTEX_ARRAY_SIZE_EXT = $807A; + GL_VERTEX_ARRAY_TYPE_EXT = $807B; + GL_VERTEX_ARRAY_STRIDE_EXT = $807C; + GL_VERTEX_ARRAY_COUNT_EXT = $807D; + GL_NORMAL_ARRAY_TYPE_EXT = $807E; + GL_NORMAL_ARRAY_STRIDE_EXT = $807F; + GL_NORMAL_ARRAY_COUNT_EXT = $8080; + GL_COLOR_ARRAY_SIZE_EXT = $8081; + GL_COLOR_ARRAY_TYPE_EXT = $8082; + GL_COLOR_ARRAY_STRIDE_EXT = $8083; + GL_COLOR_ARRAY_COUNT_EXT = $8084; + GL_INDEX_ARRAY_TYPE_EXT = $8085; + GL_INDEX_ARRAY_STRIDE_EXT = $8086; + GL_INDEX_ARRAY_COUNT_EXT = $8087; + GL_TEXTURE_COORD_ARRAY_SIZE_EXT = $8088; + GL_TEXTURE_COORD_ARRAY_TYPE_EXT = $8089; + GL_TEXTURE_COORD_ARRAY_STRIDE_EXT = $808A; + GL_TEXTURE_COORD_ARRAY_COUNT_EXT = $808B; + GL_EDGE_FLAG_ARRAY_STRIDE_EXT = $808C; + GL_EDGE_FLAG_ARRAY_COUNT_EXT = $808D; + GL_VERTEX_ARRAY_POINTER_EXT = $808E; + GL_NORMAL_ARRAY_POINTER_EXT = $808F; + GL_COLOR_ARRAY_POINTER_EXT = $8090; + GL_INDEX_ARRAY_POINTER_EXT = $8091; + GL_TEXTURE_COORD_ARRAY_POINTER_EXT = $8092; + GL_EDGE_FLAG_ARRAY_POINTER_EXT = $8093; + + // GL_EXT_vertex_shader + GL_VERTEX_SHADER_EXT = $8780; + GL_VERTEX_SHADER_BINDING_EXT = $8781; + GL_OP_INDEX_EXT = $8782; + GL_OP_NEGATE_EXT = $8783; + GL_OP_DOT3_EXT = $8784; + GL_OP_DOT4_EXT = $8785; + GL_OP_MUL_EXT = $8786; + GL_OP_ADD_EXT = $8787; + GL_OP_MADD_EXT = $8788; + GL_OP_FRAC_EXT = $8789; + GL_OP_MAX_EXT = $878A; + GL_OP_MIN_EXT = $878B; + GL_OP_SET_GE_EXT = $878C; + GL_OP_SET_LT_EXT = $878D; + GL_OP_CLAMP_EXT = $878E; + GL_OP_FLOOR_EXT = $878F; + GL_OP_ROUND_EXT = $8790; + GL_OP_EXP_BASE_2_EXT = $8791; + GL_OP_LOG_BASE_2_EXT = $8792; + GL_OP_POWER_EXT = $8793; + GL_OP_RECIP_EXT = $8794; + GL_OP_RECIP_SQRT_EXT = $8795; + GL_OP_SUB_EXT = $8796; + GL_OP_CROSS_PRODUCT_EXT = $8797; + GL_OP_MULTIPLY_MATRIX_EXT = $8798; + GL_OP_MOV_EXT = $8799; + GL_OUTPUT_VERTEX_EXT = $879A; + GL_OUTPUT_COLOR0_EXT = $879B; + GL_OUTPUT_COLOR1_EXT = $879C; + GL_OUTPUT_TEXTURE_COORD0_EXT = $879D; + GL_OUTPUT_TEXTURE_COORD1_EXT = $879E; + GL_OUTPUT_TEXTURE_COORD2_EXT = $879F; + GL_OUTPUT_TEXTURE_COORD3_EXT = $87A0; + GL_OUTPUT_TEXTURE_COORD4_EXT = $87A1; + GL_OUTPUT_TEXTURE_COORD5_EXT = $87A2; + GL_OUTPUT_TEXTURE_COORD6_EXT = $87A3; + GL_OUTPUT_TEXTURE_COORD7_EXT = $87A4; + GL_OUTPUT_TEXTURE_COORD8_EXT = $87A5; + GL_OUTPUT_TEXTURE_COORD9_EXT = $87A6; + GL_OUTPUT_TEXTURE_COORD10_EXT = $87A7; + GL_OUTPUT_TEXTURE_COORD11_EXT = $87A8; + GL_OUTPUT_TEXTURE_COORD12_EXT = $87A9; + GL_OUTPUT_TEXTURE_COORD13_EXT = $87AA; + GL_OUTPUT_TEXTURE_COORD14_EXT = $87AB; + GL_OUTPUT_TEXTURE_COORD15_EXT = $87AC; + GL_OUTPUT_TEXTURE_COORD16_EXT = $87AD; + GL_OUTPUT_TEXTURE_COORD17_EXT = $87AE; + GL_OUTPUT_TEXTURE_COORD18_EXT = $87AF; + GL_OUTPUT_TEXTURE_COORD19_EXT = $87B0; + GL_OUTPUT_TEXTURE_COORD20_EXT = $87B1; + GL_OUTPUT_TEXTURE_COORD21_EXT = $87B2; + GL_OUTPUT_TEXTURE_COORD22_EXT = $87B3; + GL_OUTPUT_TEXTURE_COORD23_EXT = $87B4; + GL_OUTPUT_TEXTURE_COORD24_EXT = $87B5; + GL_OUTPUT_TEXTURE_COORD25_EXT = $87B6; + GL_OUTPUT_TEXTURE_COORD26_EXT = $87B7; + GL_OUTPUT_TEXTURE_COORD27_EXT = $87B8; + GL_OUTPUT_TEXTURE_COORD28_EXT = $87B9; + GL_OUTPUT_TEXTURE_COORD29_EXT = $87BA; + GL_OUTPUT_TEXTURE_COORD30_EXT = $87BB; + GL_OUTPUT_TEXTURE_COORD31_EXT = $87BC; + GL_OUTPUT_FOG_EXT = $87BD; + GL_SCALAR_EXT = $87BE; + GL_VECTOR_EXT = $87BF; + GL_MATRIX_EXT = $87C0; + GL_VARIANT_EXT = $87C1; + GL_INVARIANT_EXT = $87C2; + GL_LOCAL_CONSTANT_EXT = $87C3; + GL_LOCAL_EXT = $87C4; + GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = $87C5; + GL_MAX_VERTEX_SHADER_VARIANTS_EXT = $87C6; + GL_MAX_VERTEX_SHADER_INVARIANTS_EXT = $87C7; + GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = $87C8; + GL_MAX_VERTEX_SHADER_LOCALS_EXT = $87C9; + GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = $87CA; + GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = $87CB; + GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = $87CC; + GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = $87CD; + GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = $87CE; + GL_VERTEX_SHADER_INSTRUCTIONS_EXT = $87CF; + GL_VERTEX_SHADER_VARIANTS_EXT = $87D0; + GL_VERTEX_SHADER_INVARIANTS_EXT = $87D1; + GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = $87D2; + GL_VERTEX_SHADER_LOCALS_EXT = $87D3; + GL_VERTEX_SHADER_OPTIMIZED_EXT = $87D4; + GL_X_EXT = $87D5; + GL_Y_EXT = $87D6; + GL_Z_EXT = $87D7; + GL_W_EXT = $87D8; + GL_NEGATIVE_X_EXT = $87D9; + GL_NEGATIVE_Y_EXT = $87DA; + GL_NEGATIVE_Z_EXT = $87DB; + GL_NEGATIVE_W_EXT = $87DC; + GL_ZERO_EXT = $87DD; + GL_ONE_EXT = $87DE; + GL_NEGATIVE_ONE_EXT = $87DF; + GL_NORMALIZED_RANGE_EXT = $87E0; + GL_FULL_RANGE_EXT = $87E1; + GL_CURRENT_VERTEX_EXT = $87E2; + GL_MVP_MATRIX_EXT = $87E3; + GL_VARIANT_VALUE_EXT = $87E4; + GL_VARIANT_DATATYPE_EXT = $87E5; + GL_VARIANT_ARRAY_STRIDE_EXT = $87E6; + GL_VARIANT_ARRAY_TYPE_EXT = $87E7; + GL_VARIANT_ARRAY_EXT = $87E8; + GL_VARIANT_ARRAY_POINTER_EXT = $87E9; + GL_INVARIANT_VALUE_EXT = $87EA; + GL_INVARIANT_DATATYPE_EXT = $87EB; + GL_LOCAL_CONSTANT_VALUE_EXT = $87EC; + GL_LOCAL_CONSTANT_DATATYPE_EXT = $87ED; + + // GL_EXT_vertex_weighting + GL_MODELVIEW0_STACK_DEPTH_EXT = $0BA3; + GL_MODELVIEW1_STACK_DEPTH_EXT = $8502; + GL_MODELVIEW0_MATRIX_EXT = $0BA6; + GL_MODELVIEW1_MATRIX_EXT = $8506; + GL_VERTEX_WEIGHTING_EXT = $8509; + GL_MODELVIEW0_EXT = $1700; + GL_MODELVIEW1_EXT = $850A; + GL_CURRENT_VERTEX_WEIGHT_EXT = $850B; + GL_VERTEX_WEIGHT_ARRAY_EXT = $850C; + GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT = $850D; + GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT = $850E; + GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT = $850F; + GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT = $8510; + + // GL_EXT_depth_bounds_test + GL_DEPTH_BOUNDS_TEST_EXT = $8890; + GL_DEPTH_BOUNDS_EXT = $8891; + + // GL_EXT_texture_mirror_clamp + GL_MIRROR_CLAMP_EXT = $8742; + GL_MIRROR_CLAMP_TO_EDGE_EXT = $8743; + GL_MIRROR_CLAMP_TO_BORDER_EXT = $8912; + + // GL_EXT_blend_equation_separate + GL_BLEND_EQUATION_RGB_EXT = $8009; + GL_BLEND_EQUATION_ALPHA_EXT = $883D; + + // GL_EXT_pixel_buffer_object + GL_PIXEL_PACK_BUFFER_EXT = $88EB; + GL_PIXEL_UNPACK_BUFFER_EXT = $88EC; + GL_PIXEL_PACK_BUFFER_BINDING_EXT = $88ED; + GL_PIXEL_UNPACK_BUFFER_BINDING_EXT = $88EF; + + // GL_EXT_stencil_clear_tag + GL_STENCIL_TAG_BITS_EXT = $88F2; + GL_STENCIL_CLEAR_TAG_VALUE_EXT = $88F3; + + // GL_EXT_packed_depth_stencil + GL_DEPTH_STENCIL_EXT = $84F9; + GL_UNSIGNED_INT_24_8_EXT = $84FA; + GL_DEPTH24_STENCIL8_EXT = $88F0; + GL_TEXTURE_STENCIL_SIZE_EXT = $88F1; + + // GL_EXT_texture_sRGB + GL_SRGB_EXT = $8C40; + GL_SRGB8_EXT = $8C41; + GL_SRGB_ALPHA_EXT = $8C42; + GL_SRGB8_ALPHA8_EXT = $8C43; + GL_SLUMINANCE_ALPHA_EXT = $8C44; + GL_SLUMINANCE8_ALPHA8_EXT = $8C45; + GL_SLUMINANCE_EXT = $8C46; + GL_SLUMINANCE8_EXT = $8C47; + GL_COMPRESSED_SRGB_EXT = $8C48; + GL_COMPRESSED_SRGB_ALPHA_EXT = $8C49; + GL_COMPRESSED_SLUMINANCE_EXT = $8C4A; + GL_COMPRESSED_SLUMINANCE_ALPHA_EXT = $8C4B; + GL_COMPRESSED_SRGB_S3TC_DXT1_EXT = $8C4C; + GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = $8C4D; + GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = $8C4E; + GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = $8C4F; + + // GL_EXT_framebuffer_blit + GL_READ_FRAMEBUFFER_EXT = $8CA8; + GL_DRAW_FRAMEBUFFER_EXT = $8CA9; + GL_READ_FRAMEBUFFER_BINDING_EXT = GL_FRAMEBUFFER_BINDING_EXT; + GL_DRAW_FRAMEBUFFER_BINDING_EXT = $8CAA; + + // GL_EXT_framebuffer_multisample + GL_RENDERBUFFER_SAMPLES_EXT = $8CAB; + GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT = $8D56; + GL_MAX_SAMPLES_EXT = $8D57; + + // GL_EXT_timer_query + GL_TIME_ELAPSED_EXT = $88BF; + + // GL_EXT_bindable_uniform + GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT = $8DE2; + GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT = $8DE3; + GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT = $8DE4; + GL_MAX_BINDABLE_UNIFORM_SIZE_EXT = $8DED; + GL_UNIFORM_BUFFER_EXT = $8DEE; + GL_UNIFORM_BUFFER_BINDING_EXT = $8DEF; + + // GL_EXT_framebuffer_sRGB + GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT = $20B2; + WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT = $20A9; + GL_FRAMEBUFFER_SRGB_EXT = $8DB9; + GL_FRAMEBUFFER_SRGB_CAPABLE_EXT = $8DBA; + + // GL_EXT_geometry_shader4 + GL_GEOMETRY_SHADER_EXT = $8DD9; + GL_GEOMETRY_VERTICES_OUT_EXT = $8DDA; + GL_GEOMETRY_INPUT_TYPE_EXT = $8DDB; + GL_GEOMETRY_OUTPUT_TYPE_EXT = $8DDC; + GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT = $8C29; + GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT = $8DDD; + GL_MAX_VERTEX_VARYING_COMPONENTS_EXT = $8DDE; + GL_MAX_VARYING_COMPONENTS_EXT = $8B4B; + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT = $8DDF; + GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT = $8DE0; + GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT = $8DE1; + GL_LINES_ADJACENCY_EXT = $A; + GL_LINE_STRIP_ADJACENCY_EXT = $B; + GL_TRIANGLES_ADJACENCY_EXT = $C; + GL_TRIANGLE_STRIP_ADJACENCY_EXT = $D; + GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT = $8DA8; + GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT = $8DA9; + GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT = $8DA7; + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT = $8CD4; + GL_PROGRAM_POINT_SIZE_EXT = $8642; + + // GL_EXT_gpu_shader4 + GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT = $88FD; + GL_SAMPLER_1D_ARRAY_EXT = $8DC0; + GL_SAMPLER_2D_ARRAY_EXT = $8DC1; + GL_SAMPLER_BUFFER_EXT = $8DC2; + GL_SAMPLER_1D_ARRAY_SHADOW_EXT = $8DC3; + GL_SAMPLER_2D_ARRAY_SHADOW_EXT = $8DC4; + GL_SAMPLER_CUBE_SHADOW_EXT = $8DC5; + GL_UNSIGNED_INT_VEC2_EXT = $8DC6; + GL_UNSIGNED_INT_VEC3_EXT = $8DC7; + GL_UNSIGNED_INT_VEC4_EXT = $8DC8; + GL_INT_SAMPLER_1D_EXT = $8DC9; + GL_INT_SAMPLER_2D_EXT = $8DCA; + GL_INT_SAMPLER_3D_EXT = $8DCB; + GL_INT_SAMPLER_CUBE_EXT = $8DCC; + GL_INT_SAMPLER_2D_RECT_EXT = $8DCD; + GL_INT_SAMPLER_1D_ARRAY_EXT = $8DCE; + GL_INT_SAMPLER_2D_ARRAY_EXT = $8DCF; + GL_INT_SAMPLER_BUFFER_EXT = $8DD0; + GL_UNSIGNED_INT_SAMPLER_1D_EXT = $8DD1; + GL_UNSIGNED_INT_SAMPLER_2D_EXT = $8DD2; + GL_UNSIGNED_INT_SAMPLER_3D_EXT = $8DD3; + GL_UNSIGNED_INT_SAMPLER_CUBE_EXT = $8DD4; + GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT = $8DD5; + GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT = $8DD6; + GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT = $8DD7; + GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT = $8DD8; + GL_MIN_PROGRAM_TEXEL_OFFSET_EXT = $8904; + GL_MAX_PROGRAM_TEXEL_OFFSET_EXT = $8905; + + // GL_EXT_packed_float + GL_R11F_G11F_B10F_EXT = $8C3A; + GL_UNSIGNED_INT_10F_11F_11F_REV_EXT = $8C3B; + RGBA_SIGNED_COMPONENTS_EXT = $8C3C; + WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT = $20A8; + GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT = $20B1; + GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT = $00000008; + + // GL_EXT_texture_array + GL_TEXTURE_1D_ARRAY_EXT = $8C18; + GL_TEXTURE_2D_ARRAY_EXT = $8C1A; + GL_PROXY_TEXTURE_2D_ARRAY_EXT = $8C1B; + GL_PROXY_TEXTURE_1D_ARRAY_EXT = $8C19; + GL_TEXTURE_BINDING_1D_ARRAY_EXT = $8C1C; + GL_TEXTURE_BINDING_2D_ARRAY_EXT = $8C1D; + GL_MAX_ARRAY_TEXTURE_LAYERS_EXT = $88FF; + GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT = $884E; + + // GL_EXT_texture_buffer_object + GL_TEXTURE_BUFFER_EXT = $8C2A; + GL_MAX_TEXTURE_BUFFER_SIZE_EXT = $8C2B; + GL_TEXTURE_BINDING_BUFFER_EXT = $8C2C; + GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT = $8C2D; + GL_TEXTURE_BUFFER_FORMAT_EXT = $8C2E; + + // GL_EXT_texture_compression_latc + GL_COMPRESSED_LUMINANCE_LATC1_EXT = $8C70; + GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT = $8C71; + GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT = $8C72; + GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT = $8C73; + + // GL_EXT_texture_compression_rgtc + GL_COMPRESSED_RED_RGTC1_EXT = $8DBB; + GL_COMPRESSED_SIGNED_RED_RGTC1_EXT = $8DBC; + GL_COMPRESSED_RED_GREEN_RGTC2_EXT = $8DBD; + GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT = $8DBE; + + // GL_EXT_texture_integer + GL_RGBA_INTEGER_MODE_EXT = $8D9E; + GL_RGBA32UI_EXT = $8D70; + GL_RGB32UI_EXT = $8D71; + GL_ALPHA32UI_EXT = $8D72; + GL_INTENSITY32UI_EXT = $8D73; + GL_LUMINANCE32UI_EXT = $8D74; + GL_LUMINANCE_ALPHA32UI_EXT = $8D75; + GL_RGBA16UI_EXT = $8D76; + GL_RGB16UI_EXT = $8D77; + GL_ALPHA16UI_EXT = $8D78; + GL_INTENSITY16UI_EXT = $8D79; + GL_LUMINANCE16UI_EXT = $8D7A; + GL_LUMINANCE_ALPHA16UI_EXT = $8D7B; + GL_RGBA8UI_EXT = $8D7C; + GL_RGB8UI_EXT = $8D7D; + GL_ALPHA8UI_EXT = $8D7E; + GL_INTENSITY8UI_EXT = $8D7F; + GL_LUMINANCE8UI_EXT = $8D80; + GL_LUMINANCE_ALPHA8UI_EXT = $8D81; + GL_RGBA32I_EXT = $8D82; + GL_RGB32I_EXT = $8D83; + GL_ALPHA32I_EXT = $8D84; + GL_INTENSITY32I_EXT = $8D85; + GL_LUMINANCE32I_EXT = $8D86; + GL_LUMINANCE_ALPHA32I_EXT = $8D87; + GL_RGBA16I_EXT = $8D88; + GL_RGB16I_EXT = $8D89; + GL_ALPHA16I_EXT = $8D8A; + GL_INTENSITY16I_EXT = $8D8B; + GL_LUMINANCE16I_EXT = $8D8C; + GL_LUMINANCE_ALPHA16I_EXT = $8D8D; + GL_RGBA8I_EXT = $8D8E; + GL_RGB8I_EXT = $8D8F; + GL_ALPHA8I_EXT = $8D90; + GL_INTENSITY8I_EXT = $8D91; + GL_LUMINANCE8I_EXT = $8D92; + GL_LUMINANCE_ALPHA8I_EXT = $8D93; + GL_RED_INTEGER_EXT = $8D94; + GL_GREEN_INTEGER_EXT = $8D95; + GL_BLUE_INTEGER_EXT = $8D96; + GL_ALPHA_INTEGER_EXT = $8D97; + GL_RGB_INTEGER_EXT = $8D98; + GL_RGBA_INTEGER_EXT = $8D99; + GL_BGR_INTEGER_EXT = $8D9A; + GL_BGRA_INTEGER_EXT = $8D9B; + GL_LUMINANCE_INTEGER_EXT = $8D9C; + GL_LUMINANCE_ALPHA_INTEGER_EXT = $8D9D; + + // GL_EXT_texture_shared_exponent + GL_RGB9_E5_EXT = $8C3D; + GL_UNSIGNED_INT_5_9_9_9_REV_EXT = $8C3E; + GL_TEXTURE_SHARED_SIZE_EXT = $8C3F; + + // GL_EXT_transform_feedback + GL_TRANSFORM_FEEDBACK_BUFFER_EXT = $8C8E; + GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT = $8C84; + GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT = $8C85; + GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT = $8C8F; + GL_INTERLEAVED_ATTRIBS_EXT = $8C8C; + GL_SEPARATE_ATTRIBS_EXT = $8C8D; + GL_PRIMITIVES_GENERATED_EXT = $8C87; + GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT = $8C88; + GL_RASTERIZER_DISCARD_EXT = $8C89; + GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT = $8C8A; + GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT = $8C8B; + GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT = $8C80; + GL_TRANSFORM_FEEDBACK_VARYINGS_EXT = $8C83; + GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT = $8C7F; + GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT = $8C76; + + // GL_EXT_direct_state_access + GL_PROGRAM_MATRIX_EXT = $8E2D; + GL_TRANSPOSE_PROGRAM_MATRIX_EXT = $8E2E; + GL_PROGRAM_MATRIX_STACK_DEPTH_EXT = $8E2F; + + // GL_EXT_texture_swizzle + GL_TEXTURE_SWIZZLE_R_EXT = $8E42; + GL_TEXTURE_SWIZZLE_G_EXT = $8E43; + GL_TEXTURE_SWIZZLE_B_EXT = $8E44; + GL_TEXTURE_SWIZZLE_A_EXT = $8E45; + GL_TEXTURE_SWIZZLE_RGBA_EXT = $8E46; + + // GL_EXT_provoking_vertex + GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT = $8E4C; + GL_FIRST_VERTEX_CONVENTION_EXT = $8E4D; + GL_LAST_VERTEX_CONVENTION_EXT = $8E4E; + GL_PROVOKING_VERTEX_EXT = $8E4F; + + // GL_EXT_texture_snorm + GL_ALPHA_SNORM = $9010; + GL_LUMINANCE_SNORM = $9011; + GL_LUMINANCE_ALPHA_SNORM = $9012; + GL_INTENSITY_SNORM = $9013; + GL_ALPHA8_SNORM = $9014; + GL_LUMINANCE8_SNORM = $9015; + GL_LUMINANCE8_ALPHA8_SNORM = $9016; + GL_INTENSITY8_SNORM = $9017; + GL_ALPHA16_SNORM = $9018; + GL_LUMINANCE16_SNORM = $9019; + GL_LUMINANCE16_ALPHA16_SNORM = $901A; + GL_INTENSITY16_SNORM = $901B; + { reuse GL_RED_SNORM } + { reuse GL_RG_SNORM } + { reuse GL_RGB_SNORM } + { reuse GL_RGBA_SNORM } + { reuse GL_R8_SNORM } + { reuse GL_RG8_SNORM } + { reuse GL_RGB8_SNORM } + { reuse GL_RGBA8_SNORM } + { reuse GL_R16_SNORM } + { reuse GL_RG16_SNORM } + { reuse GL_RGB16_SNORM } + { reuse GL_RGBA16_SNORM } + { reuse GL_SIGNED_NORMALIZED } + + // GL_EXT_separate_shader_objects + GL_ACTIVE_PROGRAM_EXT = $8B8D; + + // GL_EXT_shader_image_load_store + GL_MAX_IMAGE_UNITS_EXT = $8F38; + GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT = $8F39; + GL_IMAGE_BINDING_NAME_EXT = $8F3A; + GL_IMAGE_BINDING_LEVEL_EXT = $8F3B; + GL_IMAGE_BINDING_LAYERED_EXT = $8F3C; + GL_IMAGE_BINDING_LAYER_EXT = $8F3D; + GL_IMAGE_BINDING_ACCESS_EXT = $8F3E; + GL_IMAGE_1D_EXT = $904C; + GL_IMAGE_2D_EXT = $904D; + GL_IMAGE_3D_EXT = $904E; + GL_IMAGE_2D_RECT_EXT = $904F; + GL_IMAGE_CUBE_EXT = $9050; + GL_IMAGE_BUFFER_EXT = $9051; + GL_IMAGE_1D_ARRAY_EXT = $9052; + GL_IMAGE_2D_ARRAY_EXT = $9053; + GL_IMAGE_CUBE_MAP_ARRAY_EXT = $9054; + GL_IMAGE_2D_MULTISAMPLE_EXT = $9055; + GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = $9056; + GL_INT_IMAGE_1D_EXT = $9057; + GL_INT_IMAGE_2D_EXT = $9058; + GL_INT_IMAGE_3D_EXT = $9059; + GL_INT_IMAGE_2D_RECT_EXT = $905A; + GL_INT_IMAGE_CUBE_EXT = $905B; + GL_INT_IMAGE_BUFFER_EXT = $905C; + GL_INT_IMAGE_1D_ARRAY_EXT = $905D; + GL_INT_IMAGE_2D_ARRAY_EXT = $905E; + GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT = $905F; + GL_INT_IMAGE_2D_MULTISAMPLE_EXT = $9060; + GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = $9061; + GL_UNSIGNED_INT_IMAGE_1D_EXT = $9062; + GL_UNSIGNED_INT_IMAGE_2D_EXT = $9063; + GL_UNSIGNED_INT_IMAGE_3D_EXT = $9064; + GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT = $9065; + GL_UNSIGNED_INT_IMAGE_CUBE_EXT = $9066; + GL_UNSIGNED_INT_IMAGE_BUFFER_EXT = $9067; + GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT = $9068; + GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT = $9069; + GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT = $906A; + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT = $906B; + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = $906C; + GL_MAX_IMAGE_SAMPLES_EXT = $906D; + GL_IMAGE_BINDING_FORMAT_EXT = $906E; + GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT = $00000001; + GL_ELEMENT_ARRAY_BARRIER_BIT_EXT = $00000002; + GL_UNIFORM_BARRIER_BIT_EXT = $00000004; + GL_TEXTURE_FETCH_BARRIER_BIT_EXT = $00000008; + GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT = $00000020; + GL_COMMAND_BARRIER_BIT_EXT = $00000040; + GL_PIXEL_BUFFER_BARRIER_BIT_EXT = $00000080; + GL_TEXTURE_UPDATE_BARRIER_BIT_EXT = $00000100; + GL_BUFFER_UPDATE_BARRIER_BIT_EXT = $00000200; + GL_FRAMEBUFFER_BARRIER_BIT_EXT = $00000400; + GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT = $00000800; + GL_ATOMIC_COUNTER_BARRIER_BIT_EXT = $00001000; + GL_ALL_BARRIER_BITS_EXT = $FFFFFFFF; + + // GL_EXT_vertex_attrib_64bit + { reuse GL_DOUBLE } + GL_DOUBLE_VEC2_EXT = $8FFC; + GL_DOUBLE_VEC3_EXT = $8FFD; + GL_DOUBLE_VEC4_EXT = $8FFE; + GL_DOUBLE_MAT2_EXT = $8F46; + GL_DOUBLE_MAT3_EXT = $8F47; + GL_DOUBLE_MAT4_EXT = $8F48; + GL_DOUBLE_MAT2x3_EXT = $8F49; + GL_DOUBLE_MAT2x4_EXT = $8F4A; + GL_DOUBLE_MAT3x2_EXT = $8F4B; + GL_DOUBLE_MAT3x4_EXT = $8F4C; + GL_DOUBLE_MAT4x2_EXT = $8F4D; + GL_DOUBLE_MAT4x3_EXT = $8F4E; + + // GL_EXT_texture_sRGB_decode + GL_TEXTURE_SRGB_DECODE_EXT = $8A48; + GL_DECODE_EXT = $8A49; + GL_SKIP_DECODE_EXT = $8A4A; + + // GL_NV_texture_multisample + GL_TEXTURE_COVERAGE_SAMPLES_NV = $9045; + GL_TEXTURE_COLOR_SAMPLES_NV = $9046; + + // GL_AMD_blend_minmax_factor + GL_FACTOR_MIN_AMD = $901C; + GL_FACTOR_MAX_AMD = $901D; + + // GL_AMD_sample_positions + GL_SUBSAMPLE_DISTANCE_AMD = $883F; + + // GL_EXT_x11_sync_object + GL_SYNC_X11_FENCE_EXT = $90E1; + + // GL_EXT_framebuffer_multisample_blit_scaled + GL_SCALED_RESOLVE_FASTEST_EXT = $90BA; + GL_SCALED_RESOLVE_NICEST_EXT = $90BB; + + // (4.3) GL_NV_path_rendering + GL_PATH_FORMAT_SVG_NV = $9070; + GL_PATH_FORMAT_PS_NV = $9071; + GL_STANDARD_FONT_NAME_NV = $9072; + GL_SYSTEM_FONT_NAME_NV = $9073; + GL_FILE_NAME_NV = $9074; + GL_PATH_STROKE_WIDTH_NV = $9075; + GL_PATH_END_CAPS_NV = $9076; + GL_PATH_INITIAL_END_CAP_NV = $9077; + GL_PATH_TERMINAL_END_CAP_NV = $9078; + GL_PATH_JOIN_STYLE_NV = $9079; + GL_PATH_MITER_LIMIT_NV = $907A; + GL_PATH_DASH_CAPS_NV = $907B; + GL_PATH_INITIAL_DASH_CAP_NV = $907C; + GL_PATH_TERMINAL_DASH_CAP_NV = $907D; + GL_PATH_DASH_OFFSET_NV = $907E; + GL_PATH_CLIENT_LENGTH_NV = $907F; + GL_PATH_FILL_MODE_NV = $9080; + GL_PATH_FILL_MASK_NV = $9081; + GL_PATH_FILL_COVER_MODE_NV = $9082; + GL_PATH_STROKE_COVER_MODE_NV = $9083; + GL_PATH_STROKE_MASK_NV = $9084; + GL_PATH_SAMPLE_QUALITY_NV = $9085; + GL_PATH_STROKE_BOUND_NV = $9086; + GL_PATH_STROKE_OVERSAMPLE_COUNT_NV= $9087; + GL_COUNT_UP_NV = $9088; + GL_COUNT_DOWN_NV = $9089; + GL_PATH_OBJECT_BOUNDING_BOX_NV = $908A; + GL_CONVEX_HULL_NV = $908B; + GL_MULTI_HULLS_NV = $908C; + GL_BOUNDING_BOX_NV = $908D; + GL_TRANSLATE_X_NV = $908E; + GL_TRANSLATE_Y_NV = $908F; + GL_TRANSLATE_2D_NV = $9090; + GL_TRANSLATE_3D_NV = $9091; + GL_AFFINE_2D_NV = $9092; + GL_PROJECTIVE_2D_NV = $9093; + GL_AFFINE_3D_NV = $9094; + GL_PROJECTIVE_3D_NV = $9095; + GL_TRANSPOSE_AFFINE_2D_NV = $9096; + GL_TRANSPOSE_PROJECTIVE_2D_NV = $9097; + GL_TRANSPOSE_AFFINE_3D_NV = $9098; + GL_TRANSPOSE_PROJECTIVE_3D_NV = $9099; + GL_UTF8_NV = $909A; + GL_UTF16_NV = $909B; + GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV= $909C; + GL_PATH_COMMAND_COUNT_NV = $909D; + GL_PATH_COORD_COUNT_NV = $909E; + GL_PATH_DASH_ARRAY_COUNT_NV = $909F; + GL_PATH_COMPUTED_LENGTH_NV = $90A0; + GL_PATH_FILL_BOUNDING_BOX_NV = $90A1; + GL_PATH_STROKE_BOUNDING_BOX_NV = $90A2; + GL_SQUARE_NV = $90A3; + GL_ROUND_NV = $90A4; + GL_TRIANGULAR_NV = $90A5; + GL_BEVEL_NV = $90A6; + GL_MITER_REVERT_NV = $90A7; + GL_MITER_TRUNCATE_NV = $90A8; + GL_SKIP_MISSING_GLYPH_NV = $90A9; + GL_USE_MISSING_GLYPH_NV = $90AA; + GL_PATH_ERROR_POSITION_NV = $90AB; + GL_PATH_FOG_GEN_MODE_NV = $90AC; + GL_ACCUM_ADJACENT_PAIRS_NV = $90AD; + GL_ADJACENT_PAIRS_NV = $90AE; + GL_FIRST_TO_REST_NV = $90AF; + GL_PATH_GEN_MODE_NV = $90B0; + GL_PATH_GEN_COEFF_NV = $90B1; + GL_PATH_GEN_COLOR_FORMAT_NV = $90B2; + GL_PATH_GEN_COMPONENTS_NV = $90B3; + GL_PATH_STENCIL_FUNC_NV = $90B7; + GL_PATH_STENCIL_REF_NV = $90B8; + GL_PATH_STENCIL_VALUE_MASK_NV = $90B9; + GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV= $90BD; + GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV= $90BE; + GL_PATH_COVER_DEPTH_FUNC_NV = $90BF; + GL_PATH_DASH_OFFSET_RESET_NV = $90B4; + GL_MOVE_TO_RESETS_NV = $90B5; + GL_MOVE_TO_CONTINUES_NV = $90B6; + GL_CLOSE_PATH_NV = $00; + GL_MOVE_TO_NV = $02; + GL_RELATIVE_MOVE_TO_NV = $03; + GL_LINE_TO_NV = $04; + GL_RELATIVE_LINE_TO_NV = $05; + GL_HORIZONTAL_LINE_TO_NV = $06; + GL_RELATIVE_HORIZONTAL_LINE_TO_NV= $07; + GL_VERTICAL_LINE_TO_NV = $08; + GL_RELATIVE_VERTICAL_LINE_TO_NV = $09; + GL_QUADRATIC_CURVE_TO_NV = $0A; + GL_RELATIVE_QUADRATIC_CURVE_TO_NV= $0B; + GL_CUBIC_CURVE_TO_NV = $0C; + GL_RELATIVE_CUBIC_CURVE_TO_NV = $0D; + GL_SMOOTH_QUADRATIC_CURVE_TO_NV = $0E; + GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV= $0F; + GL_SMOOTH_CUBIC_CURVE_TO_NV = $10; + GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV= $11; + GL_SMALL_CCW_ARC_TO_NV = $12; + GL_RELATIVE_SMALL_CCW_ARC_TO_NV = $13; + GL_SMALL_CW_ARC_TO_NV = $14; + GL_RELATIVE_SMALL_CW_ARC_TO_NV = $15; + GL_LARGE_CCW_ARC_TO_NV = $16; + GL_RELATIVE_LARGE_CCW_ARC_TO_NV = $17; + GL_LARGE_CW_ARC_TO_NV = $18; + GL_RELATIVE_LARGE_CW_ARC_TO_NV = $19; + GL_RESTART_PATH_NV = $F0; + GL_DUP_FIRST_CUBIC_CURVE_TO_NV = $F2; + GL_DUP_LAST_CUBIC_CURVE_TO_NV = $F4; + GL_RECT_NV = $F6; + GL_CIRCULAR_CCW_ARC_TO_NV = $F8; + GL_CIRCULAR_CW_ARC_TO_NV = $FA; + GL_CIRCULAR_TANGENT_ARC_TO_NV = $FC; + GL_ARC_TO_NV = $FE; + GL_RELATIVE_ARC_TO_NV = $FF; + GL_BOLD_BIT_NV = $01; + GL_ITALIC_BIT_NV = $02; + GL_GLYPH_WIDTH_BIT_NV = $01; + GL_GLYPH_HEIGHT_BIT_NV = $02; + GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV= $04; + GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV= $08; + GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV= $10; + GL_GLYPH_VERTICAL_BEARING_X_BIT_NV= $20; + GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV= $40; + GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV= $80; + GL_GLYPH_HAS_KERNING_NV = $100; + GL_FONT_X_MIN_BOUNDS_NV = $00010000; + GL_FONT_Y_MIN_BOUNDS_NV = $00020000; + GL_FONT_X_MAX_BOUNDS_NV = $00040000; + GL_FONT_Y_MAX_BOUNDS_NV = $00080000; + GL_FONT_UNITS_PER_EM_NV = $00100000; + GL_FONT_ASCENDER_NV = $00200000; + GL_FONT_DESCENDER_NV = $00400000; + GL_FONT_HEIGHT_NV = $00800000; + GL_FONT_MAX_ADVANCE_WIDTH_NV = $01000000; + GL_FONT_MAX_ADVANCE_HEIGHT_NV = $02000000; + GL_FONT_UNDERLINE_POSITION_NV = $04000000; + GL_FONT_UNDERLINE_THICKNESS_NV = $08000000; + GL_FONT_HAS_KERNING_NV = $10000000; + + // (4.3) GL_AMD_pinned_memory + GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD= $9160; + + // (4.3) GL_AMD_stencil_operation_extended + GL_SET_AMD = $874A; + GL_REPLACE_VALUE_AMD = $874B; + GL_STENCIL_OP_VALUE_AMD = $874C; + GL_STENCIL_BACK_OP_VALUE_AMD = $874D; + + // (4.3) GL_AMD_vertex_shader_viewport_index + + // (4.3) GL_AMD_vertex_shader_layer + + // (4.3) GL_NV_bindless_texture + + // (4.3) GL_NV_shader_atomic_float + + // (4.3) GL_AMD_query_buffer_object + GL_QUERY_BUFFER_AMD = $9192; + GL_QUERY_BUFFER_BINDING_AMD = $9193; + GL_QUERY_RESULT_NO_WAIT_AMD = $9194; + + // GL_FfdMaskSGIX + GL_TEXTURE_DEFORMATION_BIT_SGIX = $00000001; + GL_GEOMETRY_DEFORMATION_BIT_SGIX = $00000002; + + // GL_HP_convolution_border_modes + GL_IGNORE_BORDER_HP = $8150; + GL_CONSTANT_BORDER_HP = $8151; + GL_REPLICATE_BORDER_HP = $8153; + GL_CONVOLUTION_BORDER_COLOR_HP = $8154; + + // GL_HP_image_transform + GL_IMAGE_SCALE_X_HP = $8155; + GL_IMAGE_SCALE_Y_HP = $8156; + GL_IMAGE_TRANSLATE_X_HP = $8157; + GL_IMAGE_TRANSLATE_Y_HP = $8158; + GL_IMAGE_ROTATE_ANGLE_HP = $8159; + GL_IMAGE_ROTATE_ORIGIN_X_HP = $815A; + GL_IMAGE_ROTATE_ORIGIN_Y_HP = $815B; + GL_IMAGE_MAG_FILTER_HP = $815C; + GL_IMAGE_MIN_FILTER_HP = $815D; + GL_IMAGE_CUBIC_WEIGHT_HP = $815E; + GL_CUBIC_HP = $815F; + GL_AVERAGE_HP = $8160; + GL_IMAGE_TRANSFORM_2D_HP = $8161; + GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP = $8162; + GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP = $8163; + + // GL_HP_occlusion_test + GL_OCCLUSION_TEST_HP = $8165; + GL_OCCLUSION_TEST_RESULT_HP = $8166; + + // GL_HP_texture_lighting + GL_TEXTURE_LIGHTING_MODE_HP = $8167; + GL_TEXTURE_POST_SPECULAR_HP = $8168; + GL_TEXTURE_PRE_SPECULAR_HP = $8169; + + // GL_IBM_cull_vertex + GL_CULL_VERTEX_IBM = 103050; + + // GL_IBM_rasterpos_clip + GL_RASTER_POSITION_UNCLIPPED_IBM = $19262; + + // GL_IBM_texture_mirrored_repeat + GL_MIRRORED_REPEAT_IBM = $8370; + + // GL_IBM_vertex_array_lists + GL_VERTEX_ARRAY_LIST_IBM = 103070; + GL_NORMAL_ARRAY_LIST_IBM = 103071; + GL_COLOR_ARRAY_LIST_IBM = 103072; + GL_INDEX_ARRAY_LIST_IBM = 103073; + GL_TEXTURE_COORD_ARRAY_LIST_IBM = 103074; + GL_EDGE_FLAG_ARRAY_LIST_IBM = 103075; + GL_FOG_COORDINATE_ARRAY_LIST_IBM = 103076; + GL_SECONDARY_COLOR_ARRAY_LIST_IBM = 103077; + GL_VERTEX_ARRAY_LIST_STRIDE_IBM = 103080; + GL_NORMAL_ARRAY_LIST_STRIDE_IBM = 103081; + GL_COLOR_ARRAY_LIST_STRIDE_IBM = 103082; + GL_INDEX_ARRAY_LIST_STRIDE_IBM = 103083; + GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM = 103084; + GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM = 103085; + GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM = 103086; + GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM = 103087; + + // GL_INGR_color_clamp + GL_RED_MIN_CLAMP_INGR = $8560; + GL_GREEN_MIN_CLAMP_INGR = $8561; + GL_BLUE_MIN_CLAMP_INGR = $8562; + GL_ALPHA_MIN_CLAMP_INGR = $8563; + GL_RED_MAX_CLAMP_INGR = $8564; + GL_GREEN_MAX_CLAMP_INGR = $8565; + GL_BLUE_MAX_CLAMP_INGR = $8566; + GL_ALPHA_MAX_CLAMP_INGR = $8567; + + // GL_INGR_interlace_read + GL_INTERLACE_READ_INGR = $8568; + + // GL_INTEL_parallel_arrays + GL_PARALLEL_ARRAYS_INTEL = $83F4; + GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL = $83F5; + GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL = $83F6; + GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL = $83F7; + GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL = $83F8; + + // GL_NV_copy_depth_to_color + GL_DEPTH_STENCIL_TO_RGBA_NV = $886E; + GL_DEPTH_STENCIL_TO_BGRA_NV = $886F; + + // GL_NV_depth_clamp + GL_DEPTH_CLAMP_NV = $864F; + + // GL_NV_evaluators + GL_EVAL_2D_NV = $86C0; + GL_EVAL_TRIANGULAR_2D_NV = $86C1; + GL_MAP_TESSELLATION_NV = $86C2; + GL_MAP_ATTRIB_U_ORDER_NV = $86C3; + GL_MAP_ATTRIB_V_ORDER_NV = $86C4; + GL_EVAL_FRACTIONAL_TESSELLATION_NV = $86C5; + GL_EVAL_VERTEX_ATTRIB0_NV = $86C6; + GL_EVAL_VERTEX_ATTRIB1_NV = $86C7; + GL_EVAL_VERTEX_ATTRIB2_NV = $86C8; + GL_EVAL_VERTEX_ATTRIB3_NV = $86C9; + GL_EVAL_VERTEX_ATTRIB4_NV = $86CA; + GL_EVAL_VERTEX_ATTRIB5_NV = $86CB; + GL_EVAL_VERTEX_ATTRIB6_NV = $86CC; + GL_EVAL_VERTEX_ATTRIB7_NV = $86CD; + GL_EVAL_VERTEX_ATTRIB8_NV = $86CE; + GL_EVAL_VERTEX_ATTRIB9_NV = $86CF; + GL_EVAL_VERTEX_ATTRIB10_NV = $86D0; + GL_EVAL_VERTEX_ATTRIB11_NV = $86D1; + GL_EVAL_VERTEX_ATTRIB12_NV = $86D2; + GL_EVAL_VERTEX_ATTRIB13_NV = $86D3; + GL_EVAL_VERTEX_ATTRIB14_NV = $86D4; + GL_EVAL_VERTEX_ATTRIB15_NV = $86D5; + GL_MAX_MAP_TESSELLATION_NV = $86D6; + GL_MAX_RATIONAL_EVAL_ORDER_NV = $86D7; + + // GL_NV_fence + GL_ALL_COMPLETED_NV = $84F2; + GL_FENCE_STATUS_NV = $84F3; + GL_FENCE_CONDITION_NV = $84F4; + + // GL_NV_float_buffer + GL_FLOAT_R_NV = $8880; + GL_FLOAT_RG_NV = $8881; + GL_FLOAT_RGB_NV = $8882; + GL_FLOAT_RGBA_NV = $8883; + GL_FLOAT_R16_NV = $8884; + GL_FLOAT_R32_NV = $8885; + GL_FLOAT_RG16_NV = $8886; + GL_FLOAT_RG32_NV = $8887; + GL_FLOAT_RGB16_NV = $8888; + GL_FLOAT_RGB32_NV = $8889; + GL_FLOAT_RGBA16_NV = $888A; + GL_FLOAT_RGBA32_NV = $888B; + GL_TEXTURE_FLOAT_COMPONENTS_NV = $888C; + GL_FLOAT_CLEAR_COLOR_VALUE_NV = $888D; + GL_FLOAT_RGBA_MODE_NV = $888E; + + // GL_NV_fog_distance + GL_FOG_DISTANCE_MODE_NV = $855A; + GL_EYE_RADIAL_NV = $855B; + GL_EYE_PLANE_ABSOLUTE_NV = $855C; + + // GL_NV_fragment_program + GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV = $8868; + GL_FRAGMENT_PROGRAM_NV = $8870; + GL_MAX_TEXTURE_COORDS_NV = $8871; + GL_MAX_TEXTURE_IMAGE_UNITS_NV = $8872; + GL_FRAGMENT_PROGRAM_BINDING_NV = $8873; + GL_PROGRAM_ERROR_STRING_NV = $8874; + + // GL_NV_half_float + GL_HALF_FLOAT_NV = $140B; + + // GL_NV_light_max_exponent + GL_MAX_SHININESS_NV = $8504; + GL_MAX_SPOT_EXPONENT_NV = $8505; + + // GL_NV_multisample_filter_hint + GL_MULTISAMPLE_FILTER_HINT_NV = $8534; + + // GL_NV_occlusion_query + GL_PIXEL_COUNTER_BITS_NV = $8864; + GL_CURRENT_OCCLUSION_QUERY_ID_NV = $8865; + GL_PIXEL_COUNT_NV = $8866; + GL_PIXEL_COUNT_AVAILABLE_NV = $8867; + + // GL_NV_packed_depth_stencil + GL_DEPTH_STENCIL_NV = $84F9; + GL_UNSIGNED_INT_24_8_NV = $84FA; + + // GL_NV_pixel_data_range + GL_WRITE_PIXEL_DATA_RANGE_NV = $8878; + GL_READ_PIXEL_DATA_RANGE_NV = $8879; + GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV = $887A; + GL_READ_PIXEL_DATA_RANGE_LENGTH_NV = $887B; + GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV = $887C; + GL_READ_PIXEL_DATA_RANGE_POINTER_NV = $887D; + + // GL_NV_point_sprite + GL_POINT_SPRITE_NV = $8861; + GL_COORD_REPLACE_NV = $8862; + GL_POINT_SPRITE_R_MODE_NV = $8863; + + // GL_NV_primitive_restart + GL_PRIMITIVE_RESTART_NV = $8558; + GL_PRIMITIVE_RESTART_INDEX_NV = $8559; + + // GL_NV_register_combiners + GL_REGISTER_COMBINERS_NV = $8522; + GL_VARIABLE_A_NV = $8523; + GL_VARIABLE_B_NV = $8524; + GL_VARIABLE_C_NV = $8525; + GL_VARIABLE_D_NV = $8526; + GL_VARIABLE_E_NV = $8527; + GL_VARIABLE_F_NV = $8528; + GL_VARIABLE_G_NV = $8529; + GL_CONSTANT_COLOR0_NV = $852A; + GL_CONSTANT_COLOR1_NV = $852B; + GL_PRIMARY_COLOR_NV = $852C; + GL_SECONDARY_COLOR_NV = $852D; + GL_SPARE0_NV = $852E; + GL_SPARE1_NV = $852F; + GL_DISCARD_NV = $8530; + GL_E_TIMES_F_NV = $8531; + GL_SPARE0_PLUS_SECONDARY_COLOR_NV = $8532; + GL_UNSIGNED_IDENTITY_NV = $8536; + GL_UNSIGNED_INVERT_NV = $8537; + GL_EXPAND_NORMAL_NV = $8538; + GL_EXPAND_NEGATE_NV = $8539; + GL_HALF_BIAS_NORMAL_NV = $853A; + GL_HALF_BIAS_NEGATE_NV = $853B; + GL_SIGNED_IDENTITY_NV = $853C; + GL_SIGNED_NEGATE_NV = $853D; + GL_SCALE_BY_TWO_NV = $853E; + GL_SCALE_BY_FOUR_NV = $853F; + GL_SCALE_BY_ONE_HALF_NV = $8540; + GL_BIAS_BY_NEGATIVE_ONE_HALF_NV = $8541; + GL_COMBINER_INPUT_NV = $8542; + GL_COMBINER_MAPPING_NV = $8543; + GL_COMBINER_COMPONENT_USAGE_NV = $8544; + GL_COMBINER_AB_DOT_PRODUCT_NV = $8545; + GL_COMBINER_CD_DOT_PRODUCT_NV = $8546; + GL_COMBINER_MUX_SUM_NV = $8547; + GL_COMBINER_SCALE_NV = $8548; + GL_COMBINER_BIAS_NV = $8549; + GL_COMBINER_AB_OUTPUT_NV = $854A; + GL_COMBINER_CD_OUTPUT_NV = $854B; + GL_COMBINER_SUM_OUTPUT_NV = $854C; + GL_MAX_GENERAL_COMBINERS_NV = $854D; + GL_NUM_GENERAL_COMBINERS_NV = $854E; + GL_COLOR_SUM_CLAMP_NV = $854F; + GL_COMBINER0_NV = $8550; + GL_COMBINER1_NV = $8551; + GL_COMBINER2_NV = $8552; + GL_COMBINER3_NV = $8553; + GL_COMBINER4_NV = $8554; + GL_COMBINER5_NV = $8555; + GL_COMBINER6_NV = $8556; + GL_COMBINER7_NV = $8557; + + // GL_NV_register_combiners2 + GL_PER_STAGE_CONSTANTS_NV = $8535; + + // GL_NV_texgen_emboss + GL_EMBOSS_LIGHT_NV = $855D; + GL_EMBOSS_CONSTANT_NV = $855E; + GL_EMBOSS_MAP_NV = $855F; + + // GL_NV_texgen_reflection + GL_NORMAL_MAP_NV = $8511; + GL_REFLECTION_MAP_NV = $8512; + + // GL_NV_texture_env_combine4 + GL_COMBINE4_NV = $8503; + GL_SOURCE3_RGB_NV = $8583; + GL_SOURCE3_ALPHA_NV = $858B; + GL_OPERAND3_RGB_NV = $8593; + GL_OPERAND3_ALPHA_NV = $859B; + + // GL_NV_texture_expand_normal + GL_TEXTURE_UNSIGNED_REMAP_MODE_NV = $888F; + + // GL_NV_texture_rectangle + GL_TEXTURE_RECTANGLE_NV = $84F5; + GL_TEXTURE_BINDING_RECTANGLE_NV = $84F6; + GL_PROXY_TEXTURE_RECTANGLE_NV = $84F7; + GL_MAX_RECTANGLE_TEXTURE_SIZE_NV = $84F8; + + // GL_NV_texture_shader + GL_OFFSET_TEXTURE_RECTANGLE_NV = $864C; + GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV = $864D; + GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV = $864E; + GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV = $86D9; + GL_UNSIGNED_INT_S8_S8_8_8_NV = $86DA; + GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = $86DB; + GL_DSDT_MAG_INTENSITY_NV = $86DC; + GL_SHADER_CONSISTENT_NV = $86DD; + GL_TEXTURE_SHADER_NV = $86DE; + GL_SHADER_OPERATION_NV = $86DF; + GL_CULL_MODES_NV = $86E0; + GL_OFFSET_TEXTURE_MATRIX_NV = $86E1; + GL_OFFSET_TEXTURE_SCALE_NV = $86E2; + GL_OFFSET_TEXTURE_BIAS_NV = $86E3; + GL_OFFSET_TEXTURE_2D_MATRIX_NV = GL_OFFSET_TEXTURE_MATRIX_NV; + GL_OFFSET_TEXTURE_2D_SCALE_NV = GL_OFFSET_TEXTURE_SCALE_NV; + GL_OFFSET_TEXTURE_2D_BIAS_NV = GL_OFFSET_TEXTURE_BIAS_NV; + GL_PREVIOUS_TEXTURE_INPUT_NV = $86E4; + GL_CONST_EYE_NV = $86E5; + GL_PASS_THROUGH_NV = $86E6; + GL_CULL_FRAGMENT_NV = $86E7; + GL_OFFSET_TEXTURE_2D_NV = $86E8; + GL_DEPENDENT_AR_TEXTURE_2D_NV = $86E9; + GL_DEPENDENT_GB_TEXTURE_2D_NV = $86EA; + GL_DOT_PRODUCT_NV = $86EC; + GL_DOT_PRODUCT_DEPTH_REPLACE_NV = $86ED; + GL_DOT_PRODUCT_TEXTURE_2D_NV = $86EE; + GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV = $86F0; + GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV = $86F1; + GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV = $86F2; + GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV = $86F3; + GL_HILO_NV = $86F4; + GL_DSDT_NV = $86F5; + GL_DSDT_MAG_NV = $86F6; + GL_DSDT_MAG_VIB_NV = $86F7; + GL_HILO16_NV = $86F8; + GL_SIGNED_HILO_NV = $86F9; + GL_SIGNED_HILO16_NV = $86FA; + GL_SIGNED_RGBA_NV = $86FB; + GL_SIGNED_RGBA8_NV = $86FC; + GL_SIGNED_RGB_NV = $86FE; + GL_SIGNED_RGB8_NV = $86FF; + GL_SIGNED_LUMINANCE_NV = $8701; + GL_SIGNED_LUMINANCE8_NV = $8702; + GL_SIGNED_LUMINANCE_ALPHA_NV = $8703; + GL_SIGNED_LUMINANCE8_ALPHA8_NV = $8704; + GL_SIGNED_ALPHA_NV = $8705; + GL_SIGNED_ALPHA8_NV = $8706; + GL_SIGNED_INTENSITY_NV = $8707; + GL_SIGNED_INTENSITY8_NV = $8708; + GL_DSDT8_NV = $8709; + GL_DSDT8_MAG8_NV = $870A; + GL_DSDT8_MAG8_INTENSITY8_NV = $870B; + GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = $870C; + GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = $870D; + GL_HI_SCALE_NV = $870E; + GL_LO_SCALE_NV = $870F; + GL_DS_SCALE_NV = $8710; + GL_DT_SCALE_NV = $8711; + GL_MAGNITUDE_SCALE_NV = $8712; + GL_VIBRANCE_SCALE_NV = $8713; + GL_HI_BIAS_NV = $8714; + GL_LO_BIAS_NV = $8715; + GL_DS_BIAS_NV = $8716; + GL_DT_BIAS_NV = $8717; + GL_MAGNITUDE_BIAS_NV = $8718; + GL_VIBRANCE_BIAS_NV = $8719; + GL_TEXTURE_BORDER_VALUES_NV = $871A; + GL_TEXTURE_HI_SIZE_NV = $871B; + GL_TEXTURE_LO_SIZE_NV = $871C; + GL_TEXTURE_DS_SIZE_NV = $871D; + GL_TEXTURE_DT_SIZE_NV = $871E; + GL_TEXTURE_MAG_SIZE_NV = $871F; + + // GL_NV_texture_shader2 + GL_DOT_PRODUCT_TEXTURE_3D_NV = $86EF; + + // GL_NV_texture_shader3 + GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV = $8850; + GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV = $8851; + GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV = $8852; + GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV = $8853; + GL_OFFSET_HILO_TEXTURE_2D_NV = $8854; + GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV = $8855; + GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV = $8856; + GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV = $8857; + GL_DEPENDENT_HILO_TEXTURE_2D_NV = $8858; + GL_DEPENDENT_RGB_TEXTURE_3D_NV = $8859; + GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV = $885A; + GL_DOT_PRODUCT_PASS_THROUGH_NV = $885B; + GL_DOT_PRODUCT_TEXTURE_1D_NV = $885C; + GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV = $885D; + GL_HILO8_NV = $885E; + GL_SIGNED_HILO8_NV = $885F; + GL_FORCE_BLUE_TO_ONE_NV = $8860; + + // GL_NV_vertex_array_range + GL_VERTEX_ARRAY_RANGE_NV = $851D; + GL_VERTEX_ARRAY_RANGE_LENGTH_NV = $851E; + GL_VERTEX_ARRAY_RANGE_VALID_NV = $851F; + GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = $8520; + GL_VERTEX_ARRAY_RANGE_POINTER_NV = $8521; + + // GL_NV_vertex_array_range2 + GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV = $8533; + + // GL_NV_vertex_program + GL_VERTEX_PROGRAM_NV = $8620; + GL_VERTEX_STATE_PROGRAM_NV = $8621; + GL_ATTRIB_ARRAY_SIZE_NV = $8623; + GL_ATTRIB_ARRAY_STRIDE_NV = $8624; + GL_ATTRIB_ARRAY_TYPE_NV = $8625; + GL_CURRENT_ATTRIB_NV = $8626; + GL_PROGRAM_LENGTH_NV = $8627; + GL_PROGRAM_STRING_NV = $8628; + GL_MODELVIEW_PROJECTION_NV = $8629; + GL_IDENTITY_NV = $862A; + GL_INVERSE_NV = $862B; + GL_TRANSPOSE_NV = $862C; + GL_INVERSE_TRANSPOSE_NV = $862D; + GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV = $862E; + GL_MAX_TRACK_MATRICES_NV = $862F; + GL_MATRIX0_NV = $8630; + GL_MATRIX1_NV = $8631; + GL_MATRIX2_NV = $8632; + GL_MATRIX3_NV = $8633; + GL_MATRIX4_NV = $8634; + GL_MATRIX5_NV = $8635; + GL_MATRIX6_NV = $8636; + GL_MATRIX7_NV = $8637; + GL_CURRENT_MATRIX_STACK_DEPTH_NV = $8640; + GL_CURRENT_MATRIX_NV = $8641; + GL_VERTEX_PROGRAM_POINT_SIZE_NV = $8642; + GL_VERTEX_PROGRAM_TWO_SIDE_NV = $8643; + GL_PROGRAM_PARAMETER_NV = $8644; + GL_ATTRIB_ARRAY_POINTER_NV = $8645; + GL_PROGRAM_TARGET_NV = $8646; + GL_PROGRAM_RESIDENT_NV = $8647; + GL_TRACK_MATRIX_NV = $8648; + GL_TRACK_MATRIX_TRANSFORM_NV = $8649; + GL_VERTEX_PROGRAM_BINDING_NV = $864A; + GL_PROGRAM_ERROR_POSITION_NV = $864B; + GL_VERTEX_ATTRIB_ARRAY0_NV = $8650; + GL_VERTEX_ATTRIB_ARRAY1_NV = $8651; + GL_VERTEX_ATTRIB_ARRAY2_NV = $8652; + GL_VERTEX_ATTRIB_ARRAY3_NV = $8653; + GL_VERTEX_ATTRIB_ARRAY4_NV = $8654; + GL_VERTEX_ATTRIB_ARRAY5_NV = $8655; + GL_VERTEX_ATTRIB_ARRAY6_NV = $8656; + GL_VERTEX_ATTRIB_ARRAY7_NV = $8657; + GL_VERTEX_ATTRIB_ARRAY8_NV = $8658; + GL_VERTEX_ATTRIB_ARRAY9_NV = $8659; + GL_VERTEX_ATTRIB_ARRAY10_NV = $865A; + GL_VERTEX_ATTRIB_ARRAY11_NV = $865B; + GL_VERTEX_ATTRIB_ARRAY12_NV = $865C; + GL_VERTEX_ATTRIB_ARRAY13_NV = $865D; + GL_VERTEX_ATTRIB_ARRAY14_NV = $865E; + GL_VERTEX_ATTRIB_ARRAY15_NV = $865F; + GL_MAP1_VERTEX_ATTRIB0_4_NV = $8660; + GL_MAP1_VERTEX_ATTRIB1_4_NV = $8661; + GL_MAP1_VERTEX_ATTRIB2_4_NV = $8662; + GL_MAP1_VERTEX_ATTRIB3_4_NV = $8663; + GL_MAP1_VERTEX_ATTRIB4_4_NV = $8664; + GL_MAP1_VERTEX_ATTRIB5_4_NV = $8665; + GL_MAP1_VERTEX_ATTRIB6_4_NV = $8666; + GL_MAP1_VERTEX_ATTRIB7_4_NV = $8667; + GL_MAP1_VERTEX_ATTRIB8_4_NV = $8668; + GL_MAP1_VERTEX_ATTRIB9_4_NV = $8669; + GL_MAP1_VERTEX_ATTRIB10_4_NV = $866A; + GL_MAP1_VERTEX_ATTRIB11_4_NV = $866B; + GL_MAP1_VERTEX_ATTRIB12_4_NV = $866C; + GL_MAP1_VERTEX_ATTRIB13_4_NV = $866D; + GL_MAP1_VERTEX_ATTRIB14_4_NV = $866E; + GL_MAP1_VERTEX_ATTRIB15_4_NV = $866F; + GL_MAP2_VERTEX_ATTRIB0_4_NV = $8670; + GL_MAP2_VERTEX_ATTRIB1_4_NV = $8671; + GL_MAP2_VERTEX_ATTRIB2_4_NV = $8672; + GL_MAP2_VERTEX_ATTRIB3_4_NV = $8673; + GL_MAP2_VERTEX_ATTRIB4_4_NV = $8674; + GL_MAP2_VERTEX_ATTRIB5_4_NV = $8675; + GL_MAP2_VERTEX_ATTRIB6_4_NV = $8676; + GL_MAP2_VERTEX_ATTRIB7_4_NV = $8677; + GL_MAP2_VERTEX_ATTRIB8_4_NV = $8678; + GL_MAP2_VERTEX_ATTRIB9_4_NV = $8679; + GL_MAP2_VERTEX_ATTRIB10_4_NV = $867A; + GL_MAP2_VERTEX_ATTRIB11_4_NV = $867B; + GL_MAP2_VERTEX_ATTRIB12_4_NV = $867C; + GL_MAP2_VERTEX_ATTRIB13_4_NV = $867D; + GL_MAP2_VERTEX_ATTRIB14_4_NV = $867E; + GL_MAP2_VERTEX_ATTRIB15_4_NV = $867F; + + // GL_NV_fragment_program2 and GL_NV_vertex_program2_option + GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = $88F4; + GL_MAX_PROGRAM_CALL_DEPTH_NV = $88F5; + + // GL_NV_fragment_program2 + GL_MAX_PROGRAM_IF_DEPTH_NV = $88F6; + GL_MAX_PROGRAM_LOOP_DEPTH_NV = $88F7; + GL_MAX_PROGRAM_LOOP_COUNT_NV = $88F8; + + // GL_NV_vertex_program3 + MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = $8B4C; + + // GL_NV_depth_buffer_float + GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV = $8DAD; + GL_DEPTH_BUFFER_FLOAT_MODE_NV = $8DAF; + + // GL_NV_framebuffer_multisample_coverage + GL_RENDERBUFFER_COVERAGE_SAMPLES_NV = $8CAB; + GL_RENDERBUFFER_COLOR_SAMPLES_NV = $8E10; + + // GL_NV_geometry_program4 + GL_GEOMETRY_PROGRAM_NV = $8C26; + GL_MAX_PROGRAM_OUTPUT_VERTICES_NV = $8C27; + GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV = $8C28; + + // GL_NV_gpu_program4 + GL_PROGRAM_ATTRIB_COMPONENTS_NV = $8906; + GL_PROGRAM_RESULT_COMPONENTS_NV = $8907; + GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV = $8908; + GL_MAX_PROGRAM_RESULT_COMPONENTS_NV = $8909; + GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV = $8DA5; + GL_MAX_PROGRAM_GENERIC_RESULTS_NV = $8DA6; + + // GL_NV_parameter_buffer_object + GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV = $8DA0; + GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV = $8DA1; + GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV = $8DA2; + GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV = $8DA3; + GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV = $8DA4; + + // GL_NV_transform_feedback + GL_TRANSFORM_FEEDBACK_BUFFER_NV = $8C8E; + GL_TRANSFORM_FEEDBACK_BUFFER_START_NV = $8C84; + GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV = $8C85; + GL_TRANSFORM_FEEDBACK_RECORD_NV = $8C86; + GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV = $8C8F; + GL_INTERLEAVED_ATTRIBS_NV = $8C8C; + GL_SEPARATE_ATTRIBS_NV = $8C8D; + GL_PRIMITIVES_GENERATED_NV = $8C87; + GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV = $8C88; + GL_RASTERIZER_DISCARD_NV = $8C89; + GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV = $8C8A; + GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV = $8C8B; + GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV = $8C80; + GL_TRANSFORM_FEEDBACK_ATTRIBS_NV = $8C7E; + GL_ACTIVE_VARYINGS_NV = $8C81; + GL_ACTIVE_VARYING_MAX_LENGTH_NV = $8C82; + GL_TRANSFORM_FEEDBACK_VARYINGS_NV = $8C83; + GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV = $8C7F; + GL_BACK_PRIMARY_COLOR_NV = $8C77; + GL_BACK_SECONDARY_COLOR_NV = $8C78; + GL_TEXTURE_COORD_NV = $8C79; + GL_CLIP_DISTANCE_NV = $8C7A; + GL_VERTEX_ID_NV = $8C7B; + GL_PRIMITIVE_ID_NV = $8C7C; + GL_GENERIC_ATTRIB_NV = $8C7D; + GL_LAYER_NV = $8DAA; + GL_NEXT_BUFFER_NV = -2; + GL_SKIP_COMPONENTS4_NV = -3; + GL_SKIP_COMPONENTS3_NV = -4; + GL_SKIP_COMPONENTS2_NV = -5; + GL_SKIP_COMPONENTS1_NV = -6; + + // GL_NV_conditional_render + GL_QUERY_WAIT_NV = $8E13; + GL_QUERY_NO_WAIT_NV = $8E14; + GL_QUERY_BY_REGION_WAIT_NV = $8E15; + GL_QUERY_BY_REGION_NO_WAIT_NV = $8E16; + + // GL_NV_present_video + GL_FRAME_NV = $8E26; + GL_FIELDS_NV = $8E27; + GL_CURRENT_TIME_NV = $8E28; + GL_NUM_FILL_STREAMS_NV = $8E29; + GL_PRESENT_TIME_NV = $8E2A; + GL_PRESENT_DURATION_NV = $8E2B; + + // GL_NV_explicit_multisample + GL_SAMPLE_POSITION_NV = $8E50; + GL_SAMPLE_MASK_NV = $8E51; + GL_SAMPLE_MASK_VALUE_NV = $8E52; + GL_TEXTURE_BINDING_RENDERBUFFER_NV = $8E53; + GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV = $8E54; + GL_TEXTURE_RENDERBUFFER_NV = $8E55; + GL_SAMPLER_RENDERBUFFER_NV = $8E56; + GL_INT_SAMPLER_RENDERBUFFER_NV = $8E57; + GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV = $8E58; + GL_MAX_SAMPLE_MASK_WORDS_NV = $8E59; + + // GL_NV_transform_feedback2 + GL_TRANSFORM_FEEDBACK_NV = $8E22; + GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV = $8E23; + GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV = $8E24; + GL_TRANSFORM_FEEDBACK_BINDING_NV = $8E25; + + // GL_NV_video_capture + GL_VIDEO_BUFFER_NV = $9020; + GL_VIDEO_BUFFER_BINDING_NV = $9021; + GL_FIELD_UPPER_NV = $9022; + GL_FIELD_LOWER_NV = $9023; + GL_NUM_VIDEO_CAPTURE_STREAMS_NV = $9024; + GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV = $9025; + GL_VIDEO_CAPTURE_TO_422_SUPPORTED_NV = $9026; + GL_LAST_VIDEO_CAPTURE_STATUS_NV = $9027; + GL_VIDEO_BUFFER_PITCH_NV = $9028; + GL_VIDEO_COLOR_CONVERSION_MATRIX_NV = $9029; + GL_VIDEO_COLOR_CONVERSION_MAX_NV = $902A; + GL_VIDEO_COLOR_CONVERSION_MIN_NV = $902B; + GL_VIDEO_COLOR_CONVERSION_OFFSET_NV = $902C; + GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV = $902D; + GL_PARTIAL_SUCCESS_NV = $902E; + GL_SUCCESS_NV = $902F; + GL_FAILURE_NV = $9030; + GL_YCBYCR8_422_NV = $9031; + GL_YCBAYCR8A_4224_NV = $9032; + GL_Z6Y10Z6CB10Z6Y10Z6CR10_422_NV = $9033; + GL_Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV = $9034; + GL_Z4Y12Z4CB12Z4Y12Z4CR12_422_NV = $9035; + GL_Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV = $9036; + GL_Z4Y12Z4CB12Z4CR12_444_NV = $9037; + GL_VIDEO_CAPTURE_FRAME_WIDTH_NV = $9038; + GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV = $9039; + GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV = $903A; + GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV = $903B; + GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV = $903C; + + // GL_NV_shader_buffer_load + GL_BUFFER_GPU_ADDRESS_NV = $8F1D; + GL_GPU_ADDRESS_NV = $8F34; + GL_MAX_SHADER_BUFFER_ADDRESS_NV = $8F35; + + // GL_NV_vertex_buffer_unified_memory + GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV = $8F1E; + GL_ELEMENT_ARRAY_UNIFIED_NV = $8F1F; + GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV = $8F20; + GL_VERTEX_ARRAY_ADDRESS_NV = $8F21; + GL_NORMAL_ARRAY_ADDRESS_NV = $8F22; + GL_COLOR_ARRAY_ADDRESS_NV = $8F23; + GL_INDEX_ARRAY_ADDRESS_NV = $8F24; + GL_TEXTURE_COORD_ARRAY_ADDRESS_NV = $8F25; + GL_EDGE_FLAG_ARRAY_ADDRESS_NV = $8F26; + GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV = $8F27; + GL_FOG_COORD_ARRAY_ADDRESS_NV = $8F28; + GL_ELEMENT_ARRAY_ADDRESS_NV = $8F29; + GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV = $8F2A; + GL_VERTEX_ARRAY_LENGTH_NV = $8F2B; + GL_NORMAL_ARRAY_LENGTH_NV = $8F2C; + GL_COLOR_ARRAY_LENGTH_NV = $8F2D; + GL_INDEX_ARRAY_LENGTH_NV = $8F2E; + GL_TEXTURE_COORD_ARRAY_LENGTH_NV = $8F2F; + GL_EDGE_FLAG_ARRAY_LENGTH_NV = $8F30; + GL_SECONDARY_COLOR_ARRAY_LENGTH_NV = $8F31; + GL_FOG_COORD_ARRAY_LENGTH_NV = $8F32; + GL_ELEMENT_ARRAY_LENGTH_NV = $8F33; + GL_DRAW_INDIRECT_UNIFIED_NV = $8F40; + GL_DRAW_INDIRECT_ADDRESS_NV = $8F41; + GL_DRAW_INDIRECT_LENGTH_NV = $8F42; + + // GL_NV_gpu_program5 + GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV = $8E5A; + GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV = $8E5B; + GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV = $8E5C; + GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV = $8E5D; + GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV = $8E5E; + GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV = $8E5F; + GL_MAX_PROGRAM_SUBROUTINE_PARAMETERS_NV = $8F44; + GL_MAX_PROGRAM_SUBROUTINE_NUM_NV = $8F45; + + // GL_NV_gpu_shader5 + GL_INT64_NV = $140E; + GL_UNSIGNED_INT64_NV = $140F; + GL_INT8_NV = $8FE0; + GL_INT8_VEC2_NV = $8FE1; + GL_INT8_VEC3_NV = $8FE2; + GL_INT8_VEC4_NV = $8FE3; + GL_INT16_NV = $8FE4; + GL_INT16_VEC2_NV = $8FE5; + GL_INT16_VEC3_NV = $8FE6; + GL_INT16_VEC4_NV = $8FE7; + GL_INT64_VEC2_NV = $8FE9; + GL_INT64_VEC3_NV = $8FEA; + GL_INT64_VEC4_NV = $8FEB; + GL_UNSIGNED_INT8_NV = $8FEC; + GL_UNSIGNED_INT8_VEC2_NV = $8FED; + GL_UNSIGNED_INT8_VEC3_NV = $8FEE; + GL_UNSIGNED_INT8_VEC4_NV = $8FEF; + GL_UNSIGNED_INT16_NV = $8FF0; + GL_UNSIGNED_INT16_VEC2_NV = $8FF1; + GL_UNSIGNED_INT16_VEC3_NV = $8FF2; + GL_UNSIGNED_INT16_VEC4_NV = $8FF3; + GL_UNSIGNED_INT64_VEC2_NV = $8FF5; + GL_UNSIGNED_INT64_VEC3_NV = $8FF6; + GL_UNSIGNED_INT64_VEC4_NV = $8FF7; + GL_FLOAT16_NV = $8FF8; + GL_FLOAT16_VEC2_NV = $8FF9; + GL_FLOAT16_VEC3_NV = $8FFA; + GL_FLOAT16_VEC4_NV = $8FFB; + { reuse GL_PATCHES } + + // GL_NV_shader_buffer_store + GL_SHADER_GLOBAL_ACCESS_BARRIER_BIT_NV = $00000010; + { reuse GL_READ_WRITE } + { reuse GL_WRITE_ONLY } + + // GL_NV_tessellation_program5 + GL_MAX_PROGRAM_PATCH_ATTRIBS_NV = $86D8; + GL_TESS_CONTROL_PROGRAM_NV = $891E; + GL_TESS_EVALUATION_PROGRAM_NV = $891F; + GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV = $8C74; + GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV = $8C75; + + // GL_NV_vertex_attrib_integer_64bit + { reuse GL_INT64_NV } + { reuse GL_UNSIGNED_INT64_NV } + + // GL_NV_multisample_coverage + GL_COVERAGE_SAMPLES_NV = $80A9; + GL_COLOR_SAMPLES_NV = $8E20; + + // GL_NV_vdpau_interop + GL_SURFACE_STATE_NV = $86EB; + GL_SURFACE_REGISTERED_NV = $86FD; + GL_SURFACE_MAPPED_NV = $8700; + GL_WRITE_DISCARD_NV = $88BE; + + // GL_OML_interlace + GL_INTERLACE_OML = $8980; + GL_INTERLACE_READ_OML = $8981; + + // GL_OML_resample + GL_PACK_RESAMPLE_OML = $8984; + GL_UNPACK_RESAMPLE_OML = $8985; + GL_RESAMPLE_REPLICATE_OML = $8986; + GL_RESAMPLE_ZERO_FILL_OML = $8987; + GL_RESAMPLE_AVERAGE_OML = $8988; + GL_RESAMPLE_DECIMATE_OML = $8989; + + // GL_OML_subsample + GL_FORMAT_SUBSAMPLE_24_24_OML = $8982; + GL_FORMAT_SUBSAMPLE_244_244_OML = $8983; + + // GL_PGI_misc_hints + GL_PREFER_DOUBLEBUFFER_HINT_PGI = $1A1F8; + GL_CONSERVE_MEMORY_HINT_PGI = $1A1FD; + GL_RECLAIM_MEMORY_HINT_PGI = $1A1FE; + GL_NATIVE_GRAPHICS_HANDLE_PGI = $1A202; + GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI = $1A203; + GL_NATIVE_GRAPHICS_END_HINT_PGI = $1A204; + GL_ALWAYS_FAST_HINT_PGI = $1A20C; + GL_ALWAYS_SOFT_HINT_PGI = $1A20D; + GL_ALLOW_DRAW_OBJ_HINT_PGI = $1A20E; + GL_ALLOW_DRAW_WIN_HINT_PGI = $1A20F; + GL_ALLOW_DRAW_FRG_HINT_PGI = $1A210; + GL_ALLOW_DRAW_MEM_HINT_PGI = $1A211; + GL_STRICT_DEPTHFUNC_HINT_PGI = $1A216; + GL_STRICT_LIGHTING_HINT_PGI = $1A217; + GL_STRICT_SCISSOR_HINT_PGI = $1A218; + GL_FULL_STIPPLE_HINT_PGI = $1A219; + GL_CLIP_NEAR_HINT_PGI = $1A220; + GL_CLIP_FAR_HINT_PGI = $1A221; + GL_WIDE_LINE_HINT_PGI = $1A222; + GL_BACK_NORMALS_HINT_PGI = $1A223; + + // GL_PGI_vertex_hints + GL_VERTEX_DATA_HINT_PGI = $1A22A; + GL_VERTEX_CONSISTENT_HINT_PGI = $1A22B; + GL_MATERIAL_SIDE_HINT_PGI = $1A22C; + GL_MAX_VERTEX_HINT_PGI = $1A22D; + GL_COLOR3_BIT_PGI = $00010000; + GL_COLOR4_BIT_PGI = $00020000; + GL_EDGEFLAG_BIT_PGI = $00040000; + GL_INDEX_BIT_PGI = $00080000; + GL_MAT_AMBIENT_BIT_PGI = $00100000; + GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI = $00200000; + GL_MAT_DIFFUSE_BIT_PGI = $00400000; + GL_MAT_EMISSION_BIT_PGI = $00800000; + GL_MAT_COLOR_INDEXES_BIT_PGI = $01000000; + GL_MAT_SHININESS_BIT_PGI = $02000000; + GL_MAT_SPECULAR_BIT_PGI = $04000000; + GL_NORMAL_BIT_PGI = $08000000; + GL_TEXCOORD1_BIT_PGI = $10000000; + GL_TEXCOORD2_BIT_PGI = $20000000; + GL_TEXCOORD3_BIT_PGI = $40000000; + GL_TEXCOORD4_BIT_PGI = $80000000; + GL_VERTEX23_BIT_PGI = $00000004; + GL_VERTEX4_BIT_PGI = $00000008; + + // GL_REND_screen_coordinates + GL_SCREEN_COORDINATES_REND = $8490; + GL_INVERTED_SCREEN_W_REND = $8491; + + // GL_S3_s3tc + GL_RGB_S3TC = $83A0; + GL_RGB4_S3TC = $83A1; + GL_RGBA_S3TC = $83A2; + GL_RGBA4_S3TC = $83A3; + + // GL_SGIS_detail_texture + GL_DETAIL_TEXTURE_2D_SGIS = $8095; + GL_DETAIL_TEXTURE_2D_BINDING_SGIS = $8096; + GL_LINEAR_DETAIL_SGIS = $8097; + GL_LINEAR_DETAIL_ALPHA_SGIS = $8098; + GL_LINEAR_DETAIL_COLOR_SGIS = $8099; + GL_DETAIL_TEXTURE_LEVEL_SGIS = $809A; + GL_DETAIL_TEXTURE_MODE_SGIS = $809B; + GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS = $809C; + + // GL_SGIS_fog_function + GL_FOG_FUNC_SGIS = $812A; + GL_FOG_FUNC_POINTS_SGIS = $812B; + GL_MAX_FOG_FUNC_POINTS_SGIS = $812C; + + // GL_SGIS_generate_mipmap + GL_GENERATE_MIPMAP_SGIS = $8191; + GL_GENERATE_MIPMAP_HINT_SGIS = $8192; + + // GL_SGIS_multisample + GL_MULTISAMPLE_SGIS = $809D; + GL_SAMPLE_ALPHA_TO_MASK_SGIS = $809E; + GL_SAMPLE_ALPHA_TO_ONE_SGIS = $809F; + GL_SAMPLE_MASK_SGIS = $80A0; + GL_1PASS_SGIS = $80A1; + GL_2PASS_0_SGIS = $80A2; + GL_2PASS_1_SGIS = $80A3; + GL_4PASS_0_SGIS = $80A4; + GL_4PASS_1_SGIS = $80A5; + GL_4PASS_2_SGIS = $80A6; + GL_4PASS_3_SGIS = $80A7; + GL_SAMPLE_BUFFERS_SGIS = $80A8; + GL_SAMPLES_SGIS = $80A9; + GL_SAMPLE_MASK_VALUE_SGIS = $80AA; + GL_SAMPLE_MASK_INVERT_SGIS = $80AB; + GL_SAMPLE_PATTERN_SGIS = $80AC; + + // GL_SGIS_pixel_texture + GL_PIXEL_TEXTURE_SGIS = $8353; + GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS = $8354; + GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS = $8355; + GL_PIXEL_GROUP_COLOR_SGIS = $8356; + + // GL_SGIS_point_line_texgen + GL_EYE_DISTANCE_TO_POINT_SGIS = $81F0; + GL_OBJECT_DISTANCE_TO_POINT_SGIS = $81F1; + GL_EYE_DISTANCE_TO_LINE_SGIS = $81F2; + GL_OBJECT_DISTANCE_TO_LINE_SGIS = $81F3; + GL_EYE_POINT_SGIS = $81F4; + GL_OBJECT_POINT_SGIS = $81F5; + GL_EYE_LINE_SGIS = $81F6; + GL_OBJECT_LINE_SGIS = $81F7; + + // GL_SGIS_point_parameters + GL_POINT_SIZE_MIN_SGIS = $8126; + GL_POINT_SIZE_MAX_SGIS = $8127; + GL_POINT_FADE_THRESHOLD_SIZE_SGIS = $8128; + GL_DISTANCE_ATTENUATION_SGIS = $8129; + + // GL_SGIS_sharpen_texture + GL_LINEAR_SHARPEN_SGIS = $80AD; + GL_LINEAR_SHARPEN_ALPHA_SGIS = $80AE; + GL_LINEAR_SHARPEN_COLOR_SGIS = $80AF; + GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS = $80B0; + + // GL_SGIS_texture4D + GL_PACK_SKIP_VOLUMES_SGIS = $8130; + GL_PACK_IMAGE_DEPTH_SGIS = $8131; + GL_UNPACK_SKIP_VOLUMES_SGIS = $8132; + GL_UNPACK_IMAGE_DEPTH_SGIS = $8133; + GL_TEXTURE_4D_SGIS = $8134; + GL_PROXY_TEXTURE_4D_SGIS = $8135; + GL_TEXTURE_4DSIZE_SGIS = $8136; + GL_TEXTURE_WRAP_Q_SGIS = $8137; + GL_MAX_4D_TEXTURE_SIZE_SGIS = $8138; + GL_TEXTURE_4D_BINDING_SGIS = $814F; + + // GL_SGIS_texture_color_mask + GL_TEXTURE_COLOR_WRITEMASK_SGIS = $81EF; + + // GL_SGIS_texture_edge_clamp + GL_CLAMP_TO_EDGE_SGIS = $812F; + + // GL_SGIS_texture_filter4 + GL_FILTER4_SGIS = $8146; + GL_TEXTURE_FILTER4_SIZE_SGIS = $8147; + + // GL_SGIS_texture_lod + GL_TEXTURE_MIN_LOD_SGIS = $813A; + GL_TEXTURE_MAX_LOD_SGIS = $813B; + GL_TEXTURE_BASE_LEVEL_SGIS = $813C; + GL_TEXTURE_MAX_LEVEL_SGIS = $813D; + + // GL_SGIS_texture_select + GL_DUAL_ALPHA4_SGIS = $8110; + GL_DUAL_ALPHA8_SGIS = $8111; + GL_DUAL_ALPHA12_SGIS = $8112; + GL_DUAL_ALPHA16_SGIS = $8113; + GL_DUAL_LUMINANCE4_SGIS = $8114; + GL_DUAL_LUMINANCE8_SGIS = $8115; + GL_DUAL_LUMINANCE12_SGIS = $8116; + GL_DUAL_LUMINANCE16_SGIS = $8117; + GL_DUAL_INTENSITY4_SGIS = $8118; + GL_DUAL_INTENSITY8_SGIS = $8119; + GL_DUAL_INTENSITY12_SGIS = $811A; + GL_DUAL_INTENSITY16_SGIS = $811B; + GL_DUAL_LUMINANCE_ALPHA4_SGIS = $811C; + GL_DUAL_LUMINANCE_ALPHA8_SGIS = $811D; + GL_QUAD_ALPHA4_SGIS = $811E; + GL_QUAD_ALPHA8_SGIS = $811F; + GL_QUAD_LUMINANCE4_SGIS = $8120; + GL_QUAD_LUMINANCE8_SGIS = $8121; + GL_QUAD_INTENSITY4_SGIS = $8122; + GL_QUAD_INTENSITY8_SGIS = $8123; + GL_DUAL_TEXTURE_SELECT_SGIS = $8124; + GL_QUAD_TEXTURE_SELECT_SGIS = $8125; + + // GL_SGIX_async + GL_ASYNC_MARKER_SGIX = $8329; + + // GL_SGIX_async_histogram + GL_ASYNC_HISTOGRAM_SGIX = $832C; + GL_MAX_ASYNC_HISTOGRAM_SGIX = $832D; + + // GL_SGIX_async_pixel + GL_ASYNC_TEX_IMAGE_SGIX = $835C; + GL_ASYNC_DRAW_PIXELS_SGIX = $835D; + GL_ASYNC_READ_PIXELS_SGIX = $835E; + GL_MAX_ASYNC_TEX_IMAGE_SGIX = $835F; + GL_MAX_ASYNC_DRAW_PIXELS_SGIX = $8360; + GL_MAX_ASYNC_READ_PIXELS_SGIX = $8361; + + // GL_SGIX_blend_alpha_minmax + GL_ALPHA_MIN_SGIX = $8320; + GL_ALPHA_MAX_SGIX = $8321; + + // GL_SGIX_calligraphic_fragment + GL_CALLIGRAPHIC_FRAGMENT_SGIX = $8183; + + // GL_SGIX_clipmap + GL_LINEAR_CLIPMAP_LINEAR_SGIX = $8170; + GL_TEXTURE_CLIPMAP_CENTER_SGIX = $8171; + GL_TEXTURE_CLIPMAP_FRAME_SGIX = $8172; + GL_TEXTURE_CLIPMAP_OFFSET_SGIX = $8173; + GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX = $8174; + GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX = $8175; + GL_TEXTURE_CLIPMAP_DEPTH_SGIX = $8176; + GL_MAX_CLIPMAP_DEPTH_SGIX = $8177; + GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX = $8178; + GL_NEAREST_CLIPMAP_NEAREST_SGIX = $844D; + GL_NEAREST_CLIPMAP_LINEAR_SGIX = $844E; + GL_LINEAR_CLIPMAP_NEAREST_SGIX = $844F; + + // GL_SGIX_convolution_accuracy + GL_CONVOLUTION_HINT_SGIX = $8316; + + // GL_SGIX_depth_texture + GL_DEPTH_COMPONENT16_SGIX = $81A5; + GL_DEPTH_COMPONENT24_SGIX = $81A6; + GL_DEPTH_COMPONENT32_SGIX = $81A7; + + // GL_SGIX_fog_offset + GL_FOG_OFFSET_SGIX = $8198; + GL_FOG_OFFSET_VALUE_SGIX = $8199; + + // GL_SGIX_fog_scale + GL_FOG_SCALE_SGIX = $81FC; + GL_FOG_SCALE_VALUE_SGIX = $81FD; + + // GL_SGIX_fragment_lighting + GL_FRAGMENT_LIGHTING_SGIX = $8400; + GL_FRAGMENT_COLOR_MATERIAL_SGIX = $8401; + GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX = $8402; + GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX = $8403; + GL_MAX_FRAGMENT_LIGHTS_SGIX = $8404; + GL_MAX_ACTIVE_LIGHTS_SGIX = $8405; + GL_CURRENT_RASTER_NORMAL_SGIX = $8406; + GL_LIGHT_ENV_MODE_SGIX = $8407; + GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX = $8408; + GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX = $8409; + GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX = $840A; + GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX = $840B; + GL_FRAGMENT_LIGHT0_SGIX = $840C; + GL_FRAGMENT_LIGHT1_SGIX = $840D; + GL_FRAGMENT_LIGHT2_SGIX = $840E; + GL_FRAGMENT_LIGHT3_SGIX = $840F; + GL_FRAGMENT_LIGHT4_SGIX = $8410; + GL_FRAGMENT_LIGHT5_SGIX = $8411; + GL_FRAGMENT_LIGHT6_SGIX = $8412; + GL_FRAGMENT_LIGHT7_SGIX = $8413; + + // GL_SGIX_framezoom + GL_FRAMEZOOM_SGIX = $818B; + GL_FRAMEZOOM_FACTOR_SGIX = $818C; + GL_MAX_FRAMEZOOM_FACTOR_SGIX = $818D; + + // GL_SGIX_impact_pixel_texture + GL_PIXEL_TEX_GEN_Q_CEILING_SGIX = $8184; + GL_PIXEL_TEX_GEN_Q_ROUND_SGIX = $8185; + GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX = $8186; + GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX = $8187; + GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX = $8188; + GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX = $8189; + GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX = $818A; + + // GL_SGIX_instruments + GL_INSTRUMENT_BUFFER_POINTER_SGIX = $8180; + GL_INSTRUMENT_MEASUREMENTS_SGIX = $8181; + + // GL_SGIX_interlace + GL_INTERLACE_SGIX = $8094; + + // GL_SGIX_ir_instrument1 + GL_IR_INSTRUMENT1_SGIX = $817F; + + // GL_SGIX_list_priority + GL_LIST_PRIORITY_SGIX = $8182; + + // GL_SGIX_pixel_texture + GL_PIXEL_TEX_GEN_SGIX = $8139; + GL_PIXEL_TEX_GEN_MODE_SGIX = $832B; + + // GL_SGIX_pixel_tiles + GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX = $813E; + GL_PIXEL_TILE_CACHE_INCREMENT_SGIX = $813F; + GL_PIXEL_TILE_WIDTH_SGIX = $8140; + GL_PIXEL_TILE_HEIGHT_SGIX = $8141; + GL_PIXEL_TILE_GRID_WIDTH_SGIX = $8142; + GL_PIXEL_TILE_GRID_HEIGHT_SGIX = $8143; + GL_PIXEL_TILE_GRID_DEPTH_SGIX = $8144; + GL_PIXEL_TILE_CACHE_SIZE_SGIX = $8145; + + // GL_SGIX_polynomial_ffd + GL_GEOMETRY_DEFORMATION_SGIX = $8194; + GL_TEXTURE_DEFORMATION_SGIX = $8195; + GL_DEFORMATIONS_MASK_SGIX = $8196; + GL_MAX_DEFORMATION_ORDER_SGIX = $8197; + + // GL_SGIX_reference_plane + GL_REFERENCE_PLANE_SGIX = $817D; + GL_REFERENCE_PLANE_EQUATION_SGIX = $817E; + + // GL_SGIX_resample + GL_PACK_RESAMPLE_SGIX = $842C; + GL_UNPACK_RESAMPLE_SGIX = $842D; + GL_RESAMPLE_REPLICATE_SGIX = $842E; + GL_RESAMPLE_ZERO_FILL_SGIX = $842F; + GL_RESAMPLE_DECIMATE_SGIX = $8430; + + // GL_SGIX_scalebias_hint + GL_SCALEBIAS_HINT_SGIX = $8322; + + // GL_SGIX_shadow + GL_TEXTURE_COMPARE_SGIX = $819A; + GL_TEXTURE_COMPARE_OPERATOR_SGIX = $819B; + GL_TEXTURE_LEQUAL_R_SGIX = $819C; + GL_TEXTURE_GEQUAL_R_SGIX = $819D; + + // GL_SGIX_shadow_ambient + GL_SHADOW_AMBIENT_SGIX = $80BF; + + // GL_SGIX_sprite + GL_SPRITE_SGIX = $8148; + GL_SPRITE_MODE_SGIX = $8149; + GL_SPRITE_AXIS_SGIX = $814A; + GL_SPRITE_TRANSLATION_SGIX = $814B; + GL_SPRITE_AXIAL_SGIX = $814C; + GL_SPRITE_OBJECT_ALIGNED_SGIX = $814D; + GL_SPRITE_EYE_ALIGNED_SGIX = $814E; + + // GL_SGIX_subsample + GL_PACK_SUBSAMPLE_RATE_SGIX = $85A0; + GL_UNPACK_SUBSAMPLE_RATE_SGIX = $85A1; + GL_PIXEL_SUBSAMPLE_4444_SGIX = $85A2; + GL_PIXEL_SUBSAMPLE_2424_SGIX = $85A3; + GL_PIXEL_SUBSAMPLE_4242_SGIX = $85A4; + + // GL_SGIX_texture_add_env + GL_TEXTURE_ENV_BIAS_SGIX = $80BE; + + // GL_SGIX_texture_coordinate_clamp + GL_TEXTURE_MAX_CLAMP_S_SGIX = $8369; + GL_TEXTURE_MAX_CLAMP_T_SGIX = $836A; + GL_TEXTURE_MAX_CLAMP_R_SGIX = $836B; + + // GL_SGIX_texture_lod_bias + GL_TEXTURE_LOD_BIAS_S_SGIX = $818E; + GL_TEXTURE_LOD_BIAS_T_SGIX = $818F; + GL_TEXTURE_LOD_BIAS_R_SGIX = $8190; + + // GL_SGIX_texture_multi_buffer + GL_TEXTURE_MULTI_BUFFER_HINT_SGIX = $812E; + + // GL_SGIX_texture_scale_bias + GL_POST_TEXTURE_FILTER_BIAS_SGIX = $8179; + GL_POST_TEXTURE_FILTER_SCALE_SGIX = $817A; + GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX = $817B; + GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX = $817C; + + // GL_SGIX_vertex_preclip + GL_VERTEX_PRECLIP_SGIX = $83EE; + GL_VERTEX_PRECLIP_HINT_SGIX = $83EF; + + // GL_SGIX_ycrcb + GL_YCRCB_422_SGIX = $81BB; + GL_YCRCB_444_SGIX = $81BC; + + // GL_SGIX_ycrcba + GL_YCRCB_SGIX = $8318; + GL_YCRCBA_SGIX = $8319; + + // GL_SGI_color_matrix + GL_COLOR_MATRIX_SGI = $80B1; + GL_COLOR_MATRIX_STACK_DEPTH_SGI = $80B2; + GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI = $80B3; + GL_POST_COLOR_MATRIX_RED_SCALE_SGI = $80B4; + GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI = $80B5; + GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI = $80B6; + GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI = $80B7; + GL_POST_COLOR_MATRIX_RED_BIAS_SGI = $80B8; + GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI = $80B9; + GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI = $80BA; + GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI = $80BB; + + // GL_SGI_color_table + GL_COLOR_TABLE_SGI = $80D0; + GL_POST_CONVOLUTION_COLOR_TABLE_SGI = $80D1; + GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI = $80D2; + GL_PROXY_COLOR_TABLE_SGI = $80D3; + GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI = $80D4; + GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI = $80D5; + GL_COLOR_TABLE_SCALE_SGI = $80D6; + GL_COLOR_TABLE_BIAS_SGI = $80D7; + GL_COLOR_TABLE_FORMAT_SGI = $80D8; + GL_COLOR_TABLE_WIDTH_SGI = $80D9; + GL_COLOR_TABLE_RED_SIZE_SGI = $80DA; + GL_COLOR_TABLE_GREEN_SIZE_SGI = $80DB; + GL_COLOR_TABLE_BLUE_SIZE_SGI = $80DC; + GL_COLOR_TABLE_ALPHA_SIZE_SGI = $80DD; + GL_COLOR_TABLE_LUMINANCE_SIZE_SGI = $80DE; + GL_COLOR_TABLE_INTENSITY_SIZE_SGI = $80DF; + + // GL_SGI_depth_pass_instrument + GL_DEPTH_PASS_INSTRUMENT_SGIX = $8310; + GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX = $8311; + GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX = $8312; + + // GL_SGI_texture_color_table + GL_TEXTURE_COLOR_TABLE_SGI = $80BC; + GL_PROXY_TEXTURE_COLOR_TABLE_SGI = $80BD; + + // GL_SUNX_constant_data + GL_UNPACK_CONSTANT_DATA_SUNX = $81D5; + GL_TEXTURE_CONSTANT_DATA_SUNX = $81D6; + + // GL_SUN_convolution_border_modes + GL_WRAP_BORDER_SUN = $81D4; + + // GL_SUN_global_alpha + GL_GLOBAL_ALPHA_SUN = $81D9; + GL_GLOBAL_ALPHA_FACTOR_SUN = $81DA; + + // GL_SUN_mesh_array + GL_QUAD_MESH_SUN = $8614; + GL_TRIANGLE_MESH_SUN = $8615; + + // GL_SUN_slice_accum + GL_SLICE_ACCUM_SUN = $85CC; + + // GL_SUN_triangle_list + GL_RESTART_SUN = $0001; + GL_REPLACE_MIDDLE_SUN = $0002; + GL_REPLACE_OLDEST_SUN = $0003; + GL_TRIANGLE_LIST_SUN = $81D7; + GL_REPLACEMENT_CODE_SUN = $81D8; + GL_REPLACEMENT_CODE_ARRAY_SUN = $85C0; + GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN = $85C1; + GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN = $85C2; + GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN = $85C3; + GL_R1UI_V3F_SUN = $85C4; + GL_R1UI_C4UB_V3F_SUN = $85C5; + GL_R1UI_C3F_V3F_SUN = $85C6; + GL_R1UI_N3F_V3F_SUN = $85C7; + GL_R1UI_C4F_N3F_V3F_SUN = $85C8; + GL_R1UI_T2F_V3F_SUN = $85C9; + GL_R1UI_T2F_N3F_V3F_SUN = $85CA; + GL_R1UI_T2F_C4F_N3F_V3F_SUN = $85CB; + + // GL_WIN_phong_shading + GL_PHONG_WIN = $80EA; + GL_PHONG_HINT_WIN = $80EB; + + // GL_WIN_specular_fog + GL_FOG_SPECULAR_TEXTURE_WIN = $80EC; + + // GL_ARB_vertex_shader + GL_VERTEX_SHADER_ARB = $8B31; + GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB = $8B4A; + GL_MAX_VARYING_FLOATS_ARB = $8B4B; + GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = $8B4C; + GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB = $8B4D; + GL_OBJECT_ACTIVE_ATTRIBUTES_ARB = $8B89; + GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB = $8B8A; + + // GL_ARB_fragment_shader + GL_FRAGMENT_SHADER_ARB = $8B30; + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB = $8B49; // 1.4 + GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB = $8B8B; // 1.4 + + // GL_ARB_occlusion_query + GL_SAMPLES_PASSED_ARB = $8914; + GL_QUERY_COUNTER_BITS_ARB = $8864; + GL_CURRENT_QUERY_ARB = $8865; + GL_QUERY_RESULT_ARB = $8866; + GL_QUERY_RESULT_AVAILABLE_ARB = $8867; + + // GL_ARB_point_sprite + GL_POINT_SPRITE_ARB = $8861; + GL_COORD_REPLACE_ARB = $8862; + + // GL_ARB_shading_language_100 + GL_SHADING_LANGUAGE_VERSION_ARB = $8B8C; // 1.4 + + // GL_ARB_shader_objects + GL_PROGRAM_OBJECT_ARB = $8B40; + + GL_OBJECT_TYPE_ARB = $8B4E; + GL_OBJECT_SUBTYPE_ARB = $8B4F; + GL_OBJECT_DELETE_STATUS_ARB = $8B80; + GL_OBJECT_COMPILE_STATUS_ARB = $8B81; + GL_OBJECT_LINK_STATUS_ARB = $8B82; + GL_OBJECT_VALIDATE_STATUS_ARB = $8B83; + GL_OBJECT_INFO_LOG_LENGTH_ARB = $8B84; + GL_OBJECT_ATTACHED_OBJECTS_ARB = $8B85; + GL_OBJECT_ACTIVE_UNIFORMS_ARB = $8B86; + GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB = $8B87; + GL_OBJECT_SHADER_SOURCE_LENGTH_ARB = $8B88; + + GL_SHADER_OBJECT_ARB = $8B48; + + GL_FLOAT_VEC2_ARB = $8B50; + GL_FLOAT_VEC3_ARB = $8B51; + GL_FLOAT_VEC4_ARB = $8B52; + GL_INT_VEC2_ARB = $8B53; + GL_INT_VEC3_ARB = $8B54; + GL_INT_VEC4_ARB = $8B55; + GL_BOOL_ARB = $8B56; + GL_BOOL_VEC2_ARB = $8B57; + GL_BOOL_VEC3_ARB = $8B58; + GL_BOOL_VEC4_ARB = $8B59; + GL_FLOAT_MAT2_ARB = $8B5A; + GL_FLOAT_MAT3_ARB = $8B5B; + GL_FLOAT_MAT4_ARB = $8B5C; + GL_SAMPLER_1D_ARB = $8B5D; + GL_SAMPLER_2D_ARB = $8B5E; + GL_SAMPLER_3D_ARB = $8B5F; + GL_SAMPLER_CUBE_ARB = $8B60; + GL_SAMPLER_1D_SHADOW_ARB = $8B61; + GL_SAMPLER_2D_SHADOW_ARB = $8B62; + GL_SAMPLER_2D_RECT_ARB = $8B63; + GL_SAMPLER_2D_RECT_SHADOW_ARB = $8B64; + + // WGL_3DFX_multisample + WGL_SAMPLE_BUFFERS_3DFX = $2060; + WGL_SAMPLES_3DFX = $2061; + + // WGL_ARB_buffer_region + WGL_FRONT_COLOR_BUFFER_BIT_ARB = $00000001; + WGL_BACK_COLOR_BUFFER_BIT_ARB = $00000002; + WGL_DEPTH_BUFFER_BIT_ARB = $00000004; + WGL_STENCIL_BUFFER_BIT_ARB = $00000008; + + // WGL_ARB_make_current_read + ERROR_INVALID_PIXEL_TYPE_ARB = $2043; + ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB = $2054; + + // WGL_ARB_multisample + WGL_SAMPLE_BUFFERS_ARB = $2041; + WGL_SAMPLES_ARB = $2042; + + // WGL_ARB_pbuffer + WGL_DRAW_TO_PBUFFER_ARB = $202D; + WGL_MAX_PBUFFER_PIXELS_ARB = $202E; + WGL_MAX_PBUFFER_WIDTH_ARB = $202F; + WGL_MAX_PBUFFER_HEIGHT_ARB = $2030; + WGL_PBUFFER_LARGEST_ARB = $2033; + WGL_PBUFFER_WIDTH_ARB = $2034; + WGL_PBUFFER_HEIGHT_ARB = $2035; + WGL_PBUFFER_LOST_ARB = $2036; + + // WGL_ARB_pixel_format + WGL_NUMBER_PIXEL_FORMATS_ARB = $2000; + WGL_DRAW_TO_WINDOW_ARB = $2001; + WGL_DRAW_TO_BITMAP_ARB = $2002; + WGL_ACCELERATION_ARB = $2003; + WGL_NEED_PALETTE_ARB = $2004; + WGL_NEED_SYSTEM_PALETTE_ARB = $2005; + WGL_SWAP_LAYER_BUFFERS_ARB = $2006; + WGL_SWAP_METHOD_ARB = $2007; + WGL_NUMBER_OVERLAYS_ARB = $2008; + WGL_NUMBER_UNDERLAYS_ARB = $2009; + WGL_TRANSPARENT_ARB = $200A; + WGL_TRANSPARENT_RED_VALUE_ARB = $2037; + WGL_TRANSPARENT_GREEN_VALUE_ARB = $2038; + WGL_TRANSPARENT_BLUE_VALUE_ARB = $2039; + WGL_TRANSPARENT_ALPHA_VALUE_ARB = $203A; + WGL_TRANSPARENT_INDEX_VALUE_ARB = $203B; + WGL_SHARE_DEPTH_ARB = $200C; + WGL_SHARE_STENCIL_ARB = $200D; + WGL_SHARE_ACCUM_ARB = $200E; + WGL_SUPPORT_GDI_ARB = $200F; + WGL_SUPPORT_OPENGL_ARB = $2010; + WGL_DOUBLE_BUFFER_ARB = $2011; + WGL_STEREO_ARB = $2012; + WGL_PIXEL_TYPE_ARB = $2013; + WGL_COLOR_BITS_ARB = $2014; + WGL_RED_BITS_ARB = $2015; + WGL_RED_SHIFT_ARB = $2016; + WGL_GREEN_BITS_ARB = $2017; + WGL_GREEN_SHIFT_ARB = $2018; + WGL_BLUE_BITS_ARB = $2019; + WGL_BLUE_SHIFT_ARB = $201A; + WGL_ALPHA_BITS_ARB = $201B; + WGL_ALPHA_SHIFT_ARB = $201C; + WGL_ACCUM_BITS_ARB = $201D; + WGL_ACCUM_RED_BITS_ARB = $201E; + WGL_ACCUM_GREEN_BITS_ARB = $201F; + WGL_ACCUM_BLUE_BITS_ARB = $2020; + WGL_ACCUM_ALPHA_BITS_ARB = $2021; + WGL_DEPTH_BITS_ARB = $2022; + WGL_STENCIL_BITS_ARB = $2023; + WGL_AUX_BUFFERS_ARB = $2024; + WGL_NO_ACCELERATION_ARB = $2025; + WGL_GENERIC_ACCELERATION_ARB = $2026; + WGL_FULL_ACCELERATION_ARB = $2027; + WGL_SWAP_EXCHANGE_ARB = $2028; + WGL_SWAP_COPY_ARB = $2029; + WGL_SWAP_UNDEFINED_ARB = $202A; + WGL_TYPE_RGBA_ARB = $202B; + WGL_TYPE_COLORINDEX_ARB = $202C; + + // WGL_ARB_pixel_format_float + WGL_RGBA_FLOAT_MODE_ARB = $8820; + WGL_CLAMP_VERTEX_COLOR_ARB = $891A; + WGL_CLAMP_FRAGMENT_COLOR_ARB = $891B; + WGL_CLAMP_READ_COLOR_ARB = $891C; + WGL_FIXED_ONLY_ARB = $891D; + + // WGL_ARB_render_texture + WGL_BIND_TO_TEXTURE_RGB_ARB = $2070; + WGL_BIND_TO_TEXTURE_RGBA_ARB = $2071; + WGL_TEXTURE_FORMAT_ARB = $2072; + WGL_TEXTURE_TARGET_ARB = $2073; + WGL_MIPMAP_TEXTURE_ARB = $2074; + WGL_TEXTURE_RGB_ARB = $2075; + WGL_TEXTURE_RGBA_ARB = $2076; + WGL_NO_TEXTURE_ARB = $2077; + WGL_TEXTURE_CUBE_MAP_ARB = $2078; + WGL_TEXTURE_1D_ARB = $2079; + WGL_TEXTURE_2D_ARB = $207A; + WGL_MIPMAP_LEVEL_ARB = $207B; + WGL_CUBE_MAP_FACE_ARB = $207C; + WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = $207D; + WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = $207E; + WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = $207F; + WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = $2080; + WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = $2081; + WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = $2082; + WGL_FRONT_LEFT_ARB = $2083; + WGL_FRONT_RIGHT_ARB = $2084; + WGL_BACK_LEFT_ARB = $2085; + WGL_BACK_RIGHT_ARB = $2086; + WGL_AUX0_ARB = $2087; + WGL_AUX1_ARB = $2088; + WGL_AUX2_ARB = $2089; + WGL_AUX3_ARB = $208A; + WGL_AUX4_ARB = $208B; + WGL_AUX5_ARB = $208C; + WGL_AUX6_ARB = $208D; + WGL_AUX7_ARB = $208E; + WGL_AUX8_ARB = $208F; + WGL_AUX9_ARB = $2090; + + // WGL_ARB_create_context + WGL_CONTEXT_DEBUG_BIT_ARB = $00000001; + WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB = $00000002; + WGL_CONTEXT_MAJOR_VERSION_ARB = $2091; + WGL_CONTEXT_MINOR_VERSION_ARB = $2092; + WGL_CONTEXT_LAYER_PLANE_ARB = $2093; + WGL_CONTEXT_FLAGS_ARB = $2094; + ERROR_INVALID_VERSION_ARB = $2095; + + // WGL_ARB_create_context_profile + WGL_CONTEXT_PROFILE_MASK_ARB = $9126; + WGL_CONTEXT_CORE_PROFILE_BIT_ARB = $00000001; + WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB = $00000002; + ERROR_INVALID_PROFILE_ARB = $2096; + + // WGL_ARB_framebuffer_sRGB + WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB = $20A9; + + // WGL_ARB_create_context_robustness + WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB = $00000004; + WGL_LOSE_CONTEXT_ON_RESET_ARB = $8252; + WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB = $8256; + WGL_NO_RESET_NOTIFICATION_ARB = $8261; + + // WGL_ATI_pixel_format_float + WGL_TYPE_RGBA_FLOAT_ATI = $21A0; + GL_TYPE_RGBA_FLOAT_ATI = $8820; + GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI = $8835; + + // WGL_AMD_gpu_association + WGL_GPU_VENDOR_AMD = $1F00; + WGL_GPU_RENDERER_STRING_AMD = $1F01; + WGL_GPU_OPENGL_VERSION_STRING_AMD = $1F02; + WGL_GPU_FASTEST_TARGET_GPUS_AMD = $21A2; + WGL_GPU_RAM_AMD = $21A3; + WGL_GPU_CLOCK_AMD = $21A4; + WGL_GPU_NUM_PIPES_AMD = $21A5; + WGL_GPU_NUM_SIMD_AMD = $21A6; + WGL_GPU_NUM_RB_AMD = $21A7; + WGL_GPU_NUM_SPI_AMD = $21A8; + + // WGL_EXT_depth_float + WGL_DEPTH_FLOAT_EXT = $2040; + + // WGL_EXT_make_current_read + ERROR_INVALID_PIXEL_TYPE_EXT = $2043; + + // WGL_EXT_multisample + WGL_SAMPLE_BUFFERS_EXT = $2041; + WGL_SAMPLES_EXT = $2042; + + // WGL_EXT_pbuffer + WGL_DRAW_TO_PBUFFER_EXT = $202D; + WGL_MAX_PBUFFER_PIXELS_EXT = $202E; + WGL_MAX_PBUFFER_WIDTH_EXT = $202F; + WGL_MAX_PBUFFER_HEIGHT_EXT = $2030; + WGL_OPTIMAL_PBUFFER_WIDTH_EXT = $2031; + WGL_OPTIMAL_PBUFFER_HEIGHT_EXT = $2032; + WGL_PBUFFER_LARGEST_EXT = $2033; + WGL_PBUFFER_WIDTH_EXT = $2034; + WGL_PBUFFER_HEIGHT_EXT = $2035; + + // WGL_EXT_pixel_format + WGL_NUMBER_PIXEL_FORMATS_EXT = $2000; + WGL_DRAW_TO_WINDOW_EXT = $2001; + WGL_DRAW_TO_BITMAP_EXT = $2002; + WGL_ACCELERATION_EXT = $2003; + WGL_NEED_PALETTE_EXT = $2004; + WGL_NEED_SYSTEM_PALETTE_EXT = $2005; + WGL_SWAP_LAYER_BUFFERS_EXT = $2006; + WGL_SWAP_METHOD_EXT = $2007; + WGL_NUMBER_OVERLAYS_EXT = $2008; + WGL_NUMBER_UNDERLAYS_EXT = $2009; + WGL_TRANSPARENT_EXT = $200A; + WGL_TRANSPARENT_VALUE_EXT = $200B; + WGL_SHARE_DEPTH_EXT = $200C; + WGL_SHARE_STENCIL_EXT = $200D; + WGL_SHARE_ACCUM_EXT = $200E; + WGL_SUPPORT_GDI_EXT = $200F; + WGL_SUPPORT_OPENGL_EXT = $2010; + WGL_DOUBLE_BUFFER_EXT = $2011; + WGL_STEREO_EXT = $2012; + WGL_PIXEL_TYPE_EXT = $2013; + WGL_COLOR_BITS_EXT = $2014; + WGL_RED_BITS_EXT = $2015; + WGL_RED_SHIFT_EXT = $2016; + WGL_GREEN_BITS_EXT = $2017; + WGL_GREEN_SHIFT_EXT = $2018; + WGL_BLUE_BITS_EXT = $2019; + WGL_BLUE_SHIFT_EXT = $201A; + WGL_ALPHA_BITS_EXT = $201B; + WGL_ALPHA_SHIFT_EXT = $201C; + WGL_ACCUM_BITS_EXT = $201D; + WGL_ACCUM_RED_BITS_EXT = $201E; + WGL_ACCUM_GREEN_BITS_EXT = $201F; + WGL_ACCUM_BLUE_BITS_EXT = $2020; + WGL_ACCUM_ALPHA_BITS_EXT = $2021; + WGL_DEPTH_BITS_EXT = $2022; + WGL_STENCIL_BITS_EXT = $2023; + WGL_AUX_BUFFERS_EXT = $2024; + WGL_NO_ACCELERATION_EXT = $2025; + WGL_GENERIC_ACCELERATION_EXT = $2026; + WGL_FULL_ACCELERATION_EXT = $2027; + WGL_SWAP_EXCHANGE_EXT = $2028; + WGL_SWAP_COPY_EXT = $2029; + WGL_SWAP_UNDEFINED_EXT = $202A; + WGL_TYPE_RGBA_EXT = $202B; + WGL_TYPE_COLORINDEX_EXT = $202C; + + // WGL_I3D_digital_video_control + WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D = $2050; + WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D = $2051; + WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D = $2052; + WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D = $2053; + + // WGL_I3D_gamma + WGL_GAMMA_TABLE_SIZE_I3D = $204E; + WGL_GAMMA_EXCLUDE_DESKTOP_I3D = $204F; + + // WGL_I3D_genlock + WGL_GENLOCK_SOURCE_MULTIVIEW_I3D = $2044; + WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D = $2045; + WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D = $2046; + WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D = $2047; + WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D = $2048; + WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D = $2049; + WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D = $204A; + WGL_GENLOCK_SOURCE_EDGE_RISING_I3D = $204B; + WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D = $204C; + + // WGL_I3D_image_buffer + WGL_IMAGE_BUFFER_MIN_ACCESS_I3D = $00000001; + WGL_IMAGE_BUFFER_LOCK_I3D = $00000002; + + // WGL_NV_float_buffer + WGL_FLOAT_COMPONENTS_NV = $20B0; + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV = $20B1; + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV = $20B2; + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV = $20B3; + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV = $20B4; + WGL_TEXTURE_FLOAT_R_NV = $20B5; + WGL_TEXTURE_FLOAT_RG_NV = $20B6; + WGL_TEXTURE_FLOAT_RGB_NV = $20B7; + WGL_TEXTURE_FLOAT_RGBA_NV = $20B8; + + // WGL_NV_render_depth_texture + WGL_BIND_TO_TEXTURE_DEPTH_NV = $20A3; + WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV = $20A4; + WGL_DEPTH_TEXTURE_FORMAT_NV = $20A5; + WGL_TEXTURE_DEPTH_COMPONENT_NV = $20A6; + WGL_DEPTH_COMPONENT_NV = $20A7; + + // WGL_NV_render_texture_rectangle + WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV = $20A0; + WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV = $20A1; + WGL_TEXTURE_RECTANGLE_NV = $20A2; + + // WGL_NV_present_video + WGL_NUM_VIDEO_SLOTS_NV = $20F0; + + // WGL_NV_video_output + WGL_BIND_TO_VIDEO_RGB_NV = $20C0; + WGL_BIND_TO_VIDEO_RGBA_NV = $20C1; + WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV = $20C2; + WGL_VIDEO_OUT_COLOR_NV = $20C3; + WGL_VIDEO_OUT_ALPHA_NV = $20C4; + WGL_VIDEO_OUT_DEPTH_NV = $20C5; + WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV = $20C6; + WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV = $20C7; + WGL_VIDEO_OUT_FRAME = $20C8; + WGL_VIDEO_OUT_FIELD_1 = $20C9; + WGL_VIDEO_OUT_FIELD_2 = $20CA; + WGL_VIDEO_OUT_STACKED_FIELDS_1_2 = $20CB; + WGL_VIDEO_OUT_STACKED_FIELDS_2_1 = $20CC; + + // WGL_NV_gpu_affinity + WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV = $20D0; + WGL_ERROR_MISSING_AFFINITY_MASK_NV = $20D1; + + // WGL_NV_video_capture + WGL_UNIQUE_ID_NV = $20CE; + WGL_NUM_VIDEO_CAPTURE_SLOTS_NV = $20CF; + + // WGL_NV_multisample_coverage + WGL_COVERAGE_SAMPLES_NV = $2042; + WGL_COLOR_SAMPLES_NV = $20B9; + + // WGL_EXT_create_context_es2_profile + WGL_CONTEXT_ES2_PROFILE_BIT_EXT = $00000004; + + // WGL_NV_DX_interop + WGL_ACCESS_READ_ONLY_NV = $00000000; + WGL_ACCESS_READ_WRITE_NV = $00000001; + WGL_ACCESS_WRITE_DISCARD_NV = $00000002; + + // WIN_draw_range_elements + GL_MAX_ELEMENTS_VERTICES_WIN = $80E8; + GL_MAX_ELEMENTS_INDICES_WIN = $80E9; + + // GLX 1.1 and later: + GLX_VENDOR = 1; + GLX_VERSION = 2; + GLX_EXTENSIONS = 3; + + GLX_USE_GL = 1; + GLX_BUFFER_SIZE = 2; + GLX_LEVEL = 3; + GLX_RGBA = 4; + GLX_DOUBLEBUFFER = 5; + GLX_STEREO = 6; + GLX_AUX_BUFFERS = 7; + GLX_RED_SIZE = 8; + GLX_GREEN_SIZE = 9; + GLX_BLUE_SIZE = 10; + GLX_ALPHA_SIZE = 11; + GLX_DEPTH_SIZE = 12; + GLX_STENCIL_SIZE = 13; + GLX_ACCUM_RED_SIZE = 14; + GLX_ACCUM_GREEN_SIZE = 15; + GLX_ACCUM_BLUE_SIZE = 16; + GLX_ACCUM_ALPHA_SIZE = 17; + + // GLX_VERSION_1_3 + GLX_WINDOW_BIT = $00000001; + GLX_PIXMAP_BIT = $00000002; + GLX_PBUFFER_BIT = $00000004; + GLX_RGBA_BIT = $00000001; + GLX_COLOR_INDEX_BIT = $00000002; + GLX_PBUFFER_CLOBBER_MASK = $08000000; + GLX_FRONT_LEFT_BUFFER_BIT = $00000001; + GLX_FRONT_RIGHT_BUFFER_BIT = $00000002; + GLX_BACK_LEFT_BUFFER_BIT = $00000004; + GLX_BACK_RIGHT_BUFFER_BIT = $00000008; + GLX_AUX_BUFFERS_BIT = $00000010; + GLX_DEPTH_BUFFER_BIT = $00000020; + GLX_STENCIL_BUFFER_BIT = $00000040; + GLX_ACCUM_BUFFER_BIT = $00000080; + GLX_CONFIG_CAVEAT = $20; + GLX_X_VISUAL_TYPE = $22; + GLX_TRANSPARENT_TYPE = $23; + GLX_TRANSPARENT_INDEX_VALUE = $24; + GLX_TRANSPARENT_RED_VALUE = $25; + GLX_TRANSPARENT_GREEN_VALUE = $26; + GLX_TRANSPARENT_BLUE_VALUE = $27; + GLX_TRANSPARENT_ALPHA_VALUE = $28; + GLX_DONT_CARE = $FFFFFFFF; + GLX_NONE = $8000; + GLX_SLOW_CONFIG = $8001; + GLX_TRUE_COLOR = $8002; + GLX_DIRECT_COLOR = $8003; + GLX_PSEUDO_COLOR = $8004; + GLX_STATIC_COLOR = $8005; + GLX_GRAY_SCALE = $8006; + GLX_STATIC_GRAY = $8007; + GLX_TRANSPARENT_RGB = $8008; + GLX_TRANSPARENT_INDEX = $8009; + GLX_VISUAL_ID = $800B; + GLX_SCREEN = $800C; + GLX_NON_CONFORMANT_CONFIG = $800D; + GLX_DRAWABLE_TYPE = $8010; + GLX_RENDER_TYPE = $8011; + GLX_X_RENDERABLE = $8012; + GLX_FBCONFIG_ID = $8013; + GLX_RGBA_TYPE = $8014; + GLX_COLOR_INDEX_TYPE = $8015; + GLX_MAX_PBUFFER_WIDTH = $8016; + GLX_MAX_PBUFFER_HEIGHT = $8017; + GLX_MAX_PBUFFER_PIXELS = $8018; + GLX_PRESERVED_CONTENTS = $801B; + GLX_LARGEST_PBUFFER = $801C; + GLX_WIDTH = $801D; + GLX_HEIGHT = $801E; + GLX_EVENT_MASK = $801F; + GLX_DAMAGED = $8020; + GLX_SAVED = $8021; + GLX_WINDOW = $8022; + GLX_PBUFFER = $8023; + GLX_PBUFFER_HEIGHT = $8040; + GLX_PBUFFER_WIDTH = $8041; + + // GLX_VERSION_1_4 + GLX_SAMPLE_BUFFERS = 100000; + GLX_SAMPLES = 100001; + + // GLX_ARB_multisample + GLX_SAMPLE_BUFFERS_ARB = 100000; + GLX_SAMPLES_ARB = 100001; + + // GLX_ARB_fbconfig_float + GLX_RGBA_FLOAT_TYPE_ARB = $20B9; + GLX_RGBA_FLOAT_BIT_ARB = $00000004; + + // GLX_ARB_create_context + GLX_CONTEXT_DEBUG_BIT_ARB = $00000001; + GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB = $00000002; + GLX_CONTEXT_MAJOR_VERSION_ARB = $2091; + GLX_CONTEXT_MINOR_VERSION_ARB = $2092; + GLX_CONTEXT_FLAGS_ARB = $2094; + + // GLX_ARB_create_context_profile + GLX_CONTEXT_CORE_PROFILE_BIT_ARB = $00000001; + GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB = $00000002; + GLX_CONTEXT_PROFILE_MASK_ARB = $9126; + + // GLX_ARB_vertex_buffer_object + GLX_CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB = $2095; + + // GLX_ARB_framebuffer_sRGB + GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB = $20B2; + + // GLX_ARB_create_context_robustness + GLX_CONTEXT_ROBUST_ACCESS_BIT_ARB = $00000004; + GLX_LOSE_CONTEXT_ON_RESET_ARB = $8252; + GLX_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB = $8256; + GLX_NO_RESET_NOTIFICATION_ARB = $8261; + + // GLX_EXT_visual_info + GLX_X_VISUAL_TYPE_EXT = $22; + GLX_TRANSPARENT_TYPE_EXT = $23; + GLX_TRANSPARENT_INDEX_VALUE_EXT = $24; + GLX_TRANSPARENT_RED_VALUE_EXT = $25; + GLX_TRANSPARENT_GREEN_VALUE_EXT = $26; + GLX_TRANSPARENT_BLUE_VALUE_EXT = $27; + GLX_TRANSPARENT_ALPHA_VALUE_EXT = $28; + GLX_NONE_EXT = $8000; + GLX_TRUE_COLOR_EXT = $8002; + GLX_DIRECT_COLOR_EXT = $8003; + GLX_PSEUDO_COLOR_EXT = $8004; + GLX_STATIC_COLOR_EXT = $8005; + GLX_GRAY_SCALE_EXT = $8006; + GLX_STATIC_GRAY_EXT = $8007; + GLX_TRANSPARENT_RGB_EXT = $8008; + GLX_TRANSPARENT_INDEX_EXT = $8009; + + // GLX_EXT_visual_rating + GLX_VISUAL_CAVEAT_EXT = $20; + GLX_SLOW_VISUAL_EXT = $8001; + GLX_NON_CONFORMANT_VISUAL_EXT = $800D; + (* reuse GLX_NONE_EXT *) + + // GLX_EXT_import_context + GLX_SHARE_CONTEXT_EXT = $800A; + GLX_VISUAL_ID_EXT = $800B; + GLX_SCREEN_EXT = $800C; + + // GLX_EXT_fbconfig_packed_float +// GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT = $20B1; +// GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT = $00000008; + + // GLX_EXT_framebuffer_sRGB +// GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT = $20B2; + + // GLX_EXT_texture_from_pixmap + GLX_TEXTURE_1D_BIT_EXT = $00000001; + GLX_TEXTURE_2D_BIT_EXT = $00000002; + GLX_TEXTURE_RECTANGLE_BIT_EXT = $00000004; + GLX_BIND_TO_TEXTURE_RGB_EXT = $20D0; + GLX_BIND_TO_TEXTURE_RGBA_EXT = $20D1; + GLX_BIND_TO_MIPMAP_TEXTURE_EXT = $20D2; + GLX_BIND_TO_TEXTURE_TARGETS_EXT = $20D3; + GLX_Y_INVERTED_EXT = $20D4; + GLX_TEXTURE_FORMAT_EXT = $20D5; + GLX_TEXTURE_TARGET_EXT = $20D6; + GLX_MIPMAP_TEXTURE_EXT = $20D7; + GLX_TEXTURE_FORMAT_NONE_EXT = $20D8; + GLX_TEXTURE_FORMAT_RGB_EXT = $20D9; + GLX_TEXTURE_FORMAT_RGBA_EXT = $20DA; + GLX_TEXTURE_1D_EXT = $20DB; + GLX_TEXTURE_2D_EXT = $20DC; + GLX_TEXTURE_RECTANGLE_EXT = $20DD; + GLX_FRONT_LEFT_EXT = $20DE; + GLX_FRONT_RIGHT_EXT = $20DF; + GLX_BACK_LEFT_EXT = $20E0; + GLX_BACK_RIGHT_EXT = $20E1; + GLX_FRONT_EXT = GLX_FRONT_LEFT_EXT; + GLX_BACK_EXT = GLX_BACK_LEFT_EXT; + GLX_AUX0_EXT = $20E2; + GLX_AUX1_EXT = $20E3; + GLX_AUX2_EXT = $20E4; + GLX_AUX3_EXT = $20E5; + GLX_AUX4_EXT = $20E6; + GLX_AUX5_EXT = $20E7; + GLX_AUX6_EXT = $20E8; + GLX_AUX7_EXT = $20E9; + GLX_AUX8_EXT = $20EA; + GLX_AUX9_EXT = $20EB; + + // GLX_EXT_swap_control + GLX_SWAP_INTERVAL_EXT = $20F1; + GLX_MAX_SWAP_INTERVAL_EXT = $20F2; + + // GLX_EXT_create_context_es2_profile + GLX_CONTEXT_ES2_PROFILE_BIT_EXT = $00000004; + + // GL_EXT_Late_Swaps + GLX_LATE_SWAPS_TEAR_EXT = $20F3; + + // GLU + GLU_INVALID_ENUM = 100900; + GLU_INVALID_VALUE = 100901; + GLU_OUT_OF_MEMORY = 100902; + GLU_INCOMPATIBLE_GL_VERSION = 100903; + GLU_VERSION = 100800; + GLU_EXTENSIONS = 100801; + GLU_TRUE = GL_TRUE; + GLU_FALSE = GL_FALSE; + GLU_SMOOTH = 100000; + GLU_FLAT = 100001; + GLU_NONE = 100002; + GLU_POINT = 100010; + GLU_LINE = 100011; + GLU_FILL = 100012; + GLU_SILHOUETTE = 100013; + GLU_OUTSIDE = 100020; + GLU_INSIDE = 100021; + GLU_TESS_MAX_COORD = 1.0E150; + GLU_TESS_WINDING_RULE = 100140; + GLU_TESS_BOUNDARY_ONLY = 100141; + GLU_TESS_TOLERANCE = 100142; + GLU_TESS_WINDING_ODD = 100130; + GLU_TESS_WINDING_NONZERO = 100131; + GLU_TESS_WINDING_POSITIVE = 100132; + GLU_TESS_WINDING_NEGATIVE = 100133; + GLU_TESS_WINDING_ABS_GEQ_TWO = 100134; + GLU_TESS_BEGIN = 100100; // TGLUTessBeginProc + GLU_TESS_VERTEX = 100101; // TGLUTessVertexProc + GLU_TESS_END = 100102; // TGLUTessEndProc + GLU_TESS_ERROR = 100103; // TGLUTessErrorProc + GLU_TESS_EDGE_FLAG = 100104; // TGLUTessEdgeFlagProc + GLU_TESS_COMBINE = 100105; // TGLUTessCombineProc + GLU_TESS_BEGIN_DATA = 100106; // TGLUTessBeginDataProc + GLU_TESS_VERTEX_DATA = 100107; // TGLUTessVertexDataProc + GLU_TESS_END_DATA = 100108; // TGLUTessEndDataProc + GLU_TESS_ERROR_DATA = 100109; // TGLUTessErrorDataProc + GLU_TESS_EDGE_FLAG_DATA = 100110; // TGLUTessEdgeFlagDataProc + GLU_TESS_COMBINE_DATA = 100111; // TGLUTessCombineDataProc + GLU_TESS_ERROR1 = 100151; + GLU_TESS_ERROR2 = 100152; + GLU_TESS_ERROR3 = 100153; + GLU_TESS_ERROR4 = 100154; + GLU_TESS_ERROR5 = 100155; + GLU_TESS_ERROR6 = 100156; + GLU_TESS_ERROR7 = 100157; + GLU_TESS_ERROR8 = 100158; + GLU_TESS_MISSING_BEGIN_POLYGON = GLU_TESS_ERROR1; + GLU_TESS_MISSING_BEGIN_CONTOUR = GLU_TESS_ERROR2; + GLU_TESS_MISSING_END_POLYGON = GLU_TESS_ERROR3; + GLU_TESS_MISSING_END_CONTOUR = GLU_TESS_ERROR4; + GLU_TESS_COORD_TOO_LARGE = GLU_TESS_ERROR5; + GLU_TESS_NEED_COMBINE_CALLBACK = GLU_TESS_ERROR6; + GLU_AUTO_LOAD_MATRIX = 100200; + GLU_CULLING = 100201; + GLU_SAMPLING_TOLERANCE = 100203; + GLU_DISPLAY_MODE = 100204; + GLU_PARAMETRIC_TOLERANCE = 100202; + GLU_SAMPLING_METHOD = 100205; + GLU_U_STEP = 100206; + GLU_V_STEP = 100207; + GLU_PATH_LENGTH = 100215; + GLU_PARAMETRIC_ERROR = 100216; + GLU_DOMAIN_DISTANCE = 100217; + GLU_MAP1_TRIM_2 = 100210; + GLU_MAP1_TRIM_3 = 100211; + GLU_OUTLINE_POLYGON = 100240; + GLU_OUTLINE_PATCH = 100241; + GLU_NURBS_ERROR1 = 100251; + GLU_NURBS_ERROR2 = 100252; + GLU_NURBS_ERROR3 = 100253; + GLU_NURBS_ERROR4 = 100254; + GLU_NURBS_ERROR5 = 100255; + GLU_NURBS_ERROR6 = 100256; + GLU_NURBS_ERROR7 = 100257; + GLU_NURBS_ERROR8 = 100258; + GLU_NURBS_ERROR9 = 100259; + GLU_NURBS_ERROR10 = 100260; + GLU_NURBS_ERROR11 = 100261; + GLU_NURBS_ERROR12 = 100262; + GLU_NURBS_ERROR13 = 100263; + GLU_NURBS_ERROR14 = 100264; + GLU_NURBS_ERROR15 = 100265; + GLU_NURBS_ERROR16 = 100266; + GLU_NURBS_ERROR17 = 100267; + GLU_NURBS_ERROR18 = 100268; + GLU_NURBS_ERROR19 = 100269; + GLU_NURBS_ERROR20 = 100270; + GLU_NURBS_ERROR21 = 100271; + GLU_NURBS_ERROR22 = 100272; + GLU_NURBS_ERROR23 = 100273; + GLU_NURBS_ERROR24 = 100274; + GLU_NURBS_ERROR25 = 100275; + GLU_NURBS_ERROR26 = 100276; + GLU_NURBS_ERROR27 = 100277; + GLU_NURBS_ERROR28 = 100278; + GLU_NURBS_ERROR29 = 100279; + GLU_NURBS_ERROR30 = 100280; + GLU_NURBS_ERROR31 = 100281; + GLU_NURBS_ERROR32 = 100282; + GLU_NURBS_ERROR33 = 100283; + GLU_NURBS_ERROR34 = 100284; + GLU_NURBS_ERROR35 = 100285; + GLU_NURBS_ERROR36 = 100286; + GLU_NURBS_ERROR37 = 100287; + GLU_CW = 100120; + GLU_CCW = 100121; + GLU_INTERIOR = 100122; + GLU_EXTERIOR = 100123; + GLU_UNKNOWN = 100124; + GLU_BEGIN = GLU_TESS_BEGIN; + GLU_VERTEX = GLU_TESS_VERTEX; + GLU_END = GLU_TESS_END; + GLU_ERROR = GLU_TESS_ERROR; + GLU_EDGE_FLAG = GLU_TESS_EDGE_FLAG; + +type + // GL_VERSION_1_0 + TglCullFace = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFrontFace = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglHint = procedure(target: GLenum; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLineWidth = procedure(width: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPointSize = procedure(size: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPolygonMode = procedure(face: GLenum; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglScissor = procedure(x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexParameterf = procedure(target: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexParameterfv = procedure(target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexParameteri = procedure(target: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexParameteriv = procedure(target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexImage1D = procedure(target: GLenum; level: GLint; internalformat: GLint; width: GLsizei; border: GLint; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexImage2D = procedure(target: GLenum; level: GLint; internalformat: GLint; width: GLsizei; height: GLsizei; border: GLint; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawBuffer = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClear = procedure(mask: GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearColor = procedure(red: GLclampf; green: GLclampf; blue: GLclampf; alpha: GLclampf); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearStencil = procedure(s: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearDepth = procedure(depth: GLclampd); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStencilMask = procedure(mask: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorMask = procedure(red: GLboolean; green: GLboolean; blue: GLboolean; alpha: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDepthMask = procedure(flag: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDisable = procedure(cap: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEnable = procedure(cap: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFinish = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFlush = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendFunc = procedure(sfactor: GLenum; dfactor: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLogicOp = procedure(opcode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStencilFunc = procedure(func: GLenum; ref: GLint; mask: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStencilOp = procedure(fail: GLenum; zfail: GLenum; zpass: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDepthFunc = procedure(func: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelStoref = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelStorei = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReadBuffer = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReadPixels = procedure(x: GLint; y: GLint; width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetBooleanv = procedure(pname: GLenum; params: PGLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetDoublev = procedure(pname: GLenum; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetError = function(): GLenum; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFloatv = procedure(pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetIntegerv = procedure(pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetString = function(name: GLenum): PAnsiChar; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexImage = procedure(target: GLenum; level: GLint; format: GLenum; _type: GLenum; pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexParameteriv = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexParameterfv = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexLevelParameterfv = procedure(target: GLenum; level: GLint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexLevelParameteriv = procedure(target: GLenum; level: GLint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsEnabled = function(cap: GLenum): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDepthRange = procedure(zNear: GLclampd; zFar: GLclampd); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglViewport = procedure(x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_VERSION_1_1 + TglDrawArrays = procedure(mode: GLenum; first: GLint; count: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawElements = procedure(mode: GLenum; count: GLsizei; _type: GLenum; const indices: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPointerv = procedure(pname: GLenum; params: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPolygonOffset = procedure(factor: GLfloat; units: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTexImage1D = procedure(target: GLenum; level: GLint; internalFormat: GLenum; x: GLint; y: GLint; width: GLsizei; border: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTexImage2D = procedure(target: GLenum; level: GLint; internalFormat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei; border: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTexSubImage1D = procedure(target: GLenum; level: GLint; xoffset: GLint; x: GLint; y: GLint; width: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTexSubImage2D = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexSubImage1D = procedure(target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexSubImage2D = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindTexture = procedure(target: GLenum; texture: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteTextures = procedure(n: GLsizei; const textures: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenTextures = procedure(n: GLsizei; textures: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + +{$ifdef DGL_DEPRECATED} + TglAccum = procedure(op: GLenum; value: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglAlphaFunc = procedure(func: GLenum; ref: GLclampf); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglAreTexturesResident = function(n: GLsizei; const textures: PGLuint; residences: PGLboolean): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglArrayElement = procedure(i: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBegin = procedure(mode: GLenum); {$IFNDEF CLR}{$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF}{$ENDIF} + TglBitmap = procedure(width: GLsizei; height: GLsizei; xorig: GLfloat; yorig: GLfloat; xmove: GLfloat; ymove: GLfloat; const bitmap: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCallList = procedure(list: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCallLists = procedure(n: GLsizei; _type: GLenum; const lists: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearAccum = procedure(red: GLfloat; green: GLfloat; blue: GLfloat; alpha: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearIndex = procedure(c: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClipPlane = procedure(plane: GLenum; const equation: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3b = procedure(red: GLbyte; green: GLbyte; blue: GLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3bv = procedure(const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3d = procedure(red: GLdouble; green: GLdouble; blue: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3f = procedure(red: GLfloat; green: GLfloat; blue: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3i = procedure(red: GLint; green: GLint; blue: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3s = procedure(red: GLshort; green: GLshort; blue: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3ub = procedure(red: GLubyte; green: GLubyte; blue: GLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3ubv = procedure(const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3ui = procedure(red: GLuint; green: GLuint; blue: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3uiv = procedure(const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3us = procedure(red: GLushort; green: GLushort; blue: GLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3usv = procedure(const v: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4b = procedure(red: GLbyte; green: GLbyte; blue: GLbyte; alpha: GLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4bv = procedure(const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4d = procedure(red: GLdouble; green: GLdouble; blue: GLdouble; alpha: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4f = procedure(red: GLfloat; green: GLfloat; blue: GLfloat; alpha: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4i = procedure(red: GLint; green: GLint; blue: GLint; alpha: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4s = procedure(red: GLshort; green: GLshort; blue: GLshort; alpha: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4ub = procedure(red: GLubyte; green: GLubyte; blue: GLubyte; alpha: GLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4ubv = procedure(const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4ui = procedure(red: GLuint; green: GLuint; blue: GLuint; alpha: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4uiv = procedure(const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4us = procedure(red: GLushort; green: GLushort; blue: GLushort; alpha: GLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4usv = procedure(const v: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorMaterial = procedure(face: GLenum; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorPointer = procedure(size: GLint; _type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyPixels = procedure(x: GLint; y: GLint; width: GLsizei; height: GLsizei; _type: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteLists = procedure(list: GLuint; range: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDisableClientState = procedure(_array: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawPixels = procedure(width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEdgeFlag = procedure(flag: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEdgeFlagPointer = procedure(stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEdgeFlagv = procedure(const flag: PGLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEnableClientState = procedure(_array: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEnd = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndList = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalCoord1d = procedure(u: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalCoord1dv = procedure(const u: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalCoord1f = procedure(u: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalCoord1fv = procedure(const u: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalCoord2d = procedure(u: GLdouble; v: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalCoord2dv = procedure(const u: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalCoord2f = procedure(u: GLfloat; v: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalCoord2fv = procedure(const u: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalMesh1 = procedure(mode: GLenum; i1: GLint; i2: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalMesh2 = procedure(mode: GLenum; i1: GLint; i2: GLint; j1: GLint; j2: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalPoint1 = procedure(i: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalPoint2 = procedure(i: GLint; j: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFeedbackBuffer = procedure(size: GLsizei; _type: GLenum; buffer: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogf = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogfv = procedure(pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogi = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogiv = procedure(pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFrustum = procedure(left: GLdouble; right: GLdouble; bottom: GLdouble; top: GLdouble; zNear: GLdouble; zFar: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenLists = function(range: GLsizei): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetClipPlane = procedure(plane: GLenum; equation: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetLightfv = procedure(light: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetLightiv = procedure(light: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMapdv = procedure(target: GLenum; query: GLenum; v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMapfv = procedure(target: GLenum; query: GLenum; v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMapiv = procedure(target: GLenum; query: GLenum; v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMaterialfv = procedure(face: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMaterialiv = procedure(face: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPixelMapfv = procedure(map: GLenum; values: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPixelMapuiv = procedure(map: GLenum; values: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPixelMapusv = procedure(map: GLenum; values: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPolygonStipple = procedure(mask: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexEnvfv = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexEnviv = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexGendv = procedure(coord: GLenum; pname: GLenum; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexGenfv = procedure(coord: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexGeniv = procedure(coord: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexMask = procedure(mask: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexPointer = procedure(_type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexd = procedure(c: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexdv = procedure(const c: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexf = procedure(c: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexfv = procedure(const c: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexi = procedure(c: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexiv = procedure(const c: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexs = procedure(c: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexsv = procedure(const c: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexub = procedure(c: GLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexubv = procedure(const c: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglInitNames = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglInterleavedArrays = procedure(format: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsList = function(list: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsTexture = function(texture: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLightModelf = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLightModelfv = procedure(pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLightModeli = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLightModeliv = procedure(pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLightf = procedure(light: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLightfv = procedure(light: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLighti = procedure(light: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLightiv = procedure(light: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLineStipple = procedure(factor: GLint; pattern: GLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglListBase = procedure(base: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLoadIdentity = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLoadMatrixd = procedure(const m: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLoadMatrixf = procedure(const m: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLoadName = procedure(name: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMap1d = procedure(target: GLenum; u1: GLdouble; u2: GLdouble; stride: GLint; order: GLint; const points: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMap1f = procedure(target: GLenum; u1: GLfloat; u2: GLfloat; stride: GLint; order: GLint; const points: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMap2d = procedure(target: GLenum; u1: GLdouble; u2: GLdouble; ustride: GLint; uorder: GLint; v1: GLdouble; v2: GLdouble; vstride: GLint; vorder: GLint; const points: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMap2f = procedure(target: GLenum; u1: GLfloat; u2: GLfloat; ustride: GLint; uorder: GLint; v1: GLfloat; v2: GLfloat; vstride: GLint; vorder: GLint; const points: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapGrid1d = procedure(un: GLint; u1: GLdouble; u2: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapGrid1f = procedure(un: GLint; u1: GLfloat; u2: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapGrid2d = procedure(un: GLint; u1: GLdouble; u2: GLdouble; vn: GLint; v1: GLdouble; v2: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapGrid2f = procedure(un: GLint; u1: GLfloat; u2: GLfloat; vn: GLint; v1: GLfloat; v2: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMaterialf = procedure(face: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMaterialfv = procedure(face: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMateriali = procedure(face: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMaterialiv = procedure(face: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixMode = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultMatrixd = procedure(const m: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultMatrixf = procedure(const m: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNewList = procedure(list: GLuint; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3b = procedure(nx: GLbyte; ny: GLbyte; nz: GLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3bv = procedure(const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3d = procedure(nx: GLdouble; ny: GLdouble; nz: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3f = procedure(nx: GLfloat; ny: GLfloat; nz: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3i = procedure(nx: GLint; ny: GLint; nz: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3s = procedure(nx: GLshort; ny: GLshort; nz: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalPointer = procedure(_type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglOrtho = procedure(left: GLdouble; right: GLdouble; bottom: GLdouble; top: GLdouble; zNear: GLdouble; zFar: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPassThrough = procedure(token: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelMapfv = procedure(map: GLenum; mapsize: GLsizei; const values: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelMapuiv = procedure(map: GLenum; mapsize: GLsizei; const values: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelMapusv = procedure(map: GLenum; mapsize: GLsizei; const values: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelTransferf = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelTransferi = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelZoom = procedure(xfactor: GLfloat; yfactor: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPolygonStipple = procedure(const mask: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPopAttrib = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPopClientAttrib = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPopMatrix = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPopName = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPrioritizeTextures = procedure(n: GLsizei; const textures: PGLuint; const priorities: PGLclampf); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPushAttrib = procedure(mask: GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPushClientAttrib = procedure(mask: GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPushMatrix = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPushName = procedure(name: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos2d = procedure(x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos2dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos2f = procedure(x: GLfloat; y: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos2fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos2i = procedure(x: GLint; y: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos2iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos2s = procedure(x: GLshort; y: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos2sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos3d = procedure(x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos3dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos3f = procedure(x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos3fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos3i = procedure(x: GLint; y: GLint; z: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos3iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos3s = procedure(x: GLshort; y: GLshort; z: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos3sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos4d = procedure(x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos4dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos4f = procedure(x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos4fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos4i = procedure(x: GLint; y: GLint; z: GLint; w: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos4iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos4s = procedure(x: GLshort; y: GLshort; z: GLshort; w: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRasterPos4sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRectd = procedure(x1: GLdouble; y1: GLdouble; x2: GLdouble; y2: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRectdv = procedure(const v1: PGLdouble; const v2: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRectf = procedure(x1: GLfloat; y1: GLfloat; x2: GLfloat; y2: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRectfv = procedure(const v1: PGLfloat; const v2: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRecti = procedure(x1: GLint; y1: GLint; x2: GLint; y2: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRectiv = procedure(const v1: PGLint; const v2: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRects = procedure(x1: GLshort; y1: GLshort; x2: GLshort; y2: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRectsv = procedure(const v1: PGLshort; const v2: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRenderMode = function(mode: GLenum): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRotated = procedure(angle: GLdouble; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRotatef = procedure(angle: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglScaled = procedure(x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglScalef = procedure(x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSelectBuffer = procedure(size: GLsizei; buffer: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglShadeModel = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord1d = procedure(s: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord1dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord1f = procedure(s: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord1fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord1i = procedure(s: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord1iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord1s = procedure(s: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord1sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2d = procedure(s: GLdouble; t: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2f = procedure(s: GLfloat; t: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2i = procedure(s: GLint; t: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2s = procedure(s: GLshort; t: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord3d = procedure(s: GLdouble; t: GLdouble; r: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord3dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord3f = procedure(s: GLfloat; t: GLfloat; r: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord3fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord3i = procedure(s: GLint; t: GLint; r: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord3iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord3s = procedure(s: GLshort; t: GLshort; r: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord3sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4d = procedure(s: GLdouble; t: GLdouble; r: GLdouble; q: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4f = procedure(s: GLfloat; t: GLfloat; r: GLfloat; q: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4i = procedure(s: GLint; t: GLint; r: GLint; q: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4s = procedure(s: GLshort; t: GLshort; r: GLshort; q: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordPointer = procedure(size: GLint; _type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexEnvf = procedure(target: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexEnvfv = procedure(target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexEnvi = procedure(target: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexEnviv = procedure(target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexGend = procedure(coord: GLenum; pname: GLenum; param: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexGendv = procedure(coord: GLenum; pname: GLenum; const params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexGenf = procedure(coord: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexGenfv = procedure(coord: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexGeni = procedure(coord: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexGeniv = procedure(coord: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + + TglTranslated = procedure(x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTranslatef = procedure(x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex2d = procedure(x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex2dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex2f = procedure(x: GLfloat; y: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex2fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex2i = procedure(x: GLint; y: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex2iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex2s = procedure(x: GLshort; y: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex2sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex3d = procedure(x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex3dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex3f = procedure(x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex3fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex3i = procedure(x: GLint; y: GLint; z: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex3iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex3s = procedure(x: GLshort; y: GLshort; z: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex3sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex4d = procedure(x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex4dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex4f = procedure(x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex4fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex4i = procedure(x: GLint; y: GLint; z: GLint; w: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex4iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex4s = procedure(x: GLshort; y: GLshort; z: GLshort; w: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex4sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexPointer = procedure(size: GLint; _type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} +{$endif} + + // GL_VERSION_1_2 + TglBlendColor = procedure(red: GLclampf; green: GLclampf; blue: GLclampf; alpha: GLclampf); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendEquation = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawRangeElements = procedure(mode: GLenum; start: GLuint; _end: GLuint; count: GLsizei; _type: GLenum; const indices: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexImage3D = procedure(target: GLenum; level: GLint; internalformat: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexSubImage3D = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTexSubImage3D = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} +{$ifdef DGL_DEPRECATED} + TglColorTable = procedure(target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; _type: GLenum; const table: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorTableParameterfv = procedure(target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorTableParameteriv = procedure(target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyColorTable = procedure(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetColorTable = procedure(target: GLenum; format: GLenum; _type: GLenum; table: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetColorTableParameterfv = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetColorTableParameteriv = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorSubTable = procedure(target: GLenum; start: GLsizei; count: GLsizei; format: GLenum; _type: GLenum; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyColorSubTable = procedure(target: GLenum; start: GLsizei; x: GLint; y: GLint; width: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglConvolutionFilter1D = procedure(target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; _type: GLenum; const image: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglConvolutionFilter2D = procedure(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; const image: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglConvolutionParameterf = procedure(target: GLenum; pname: GLenum; params: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglConvolutionParameterfv = procedure(target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglConvolutionParameteri = procedure(target: GLenum; pname: GLenum; params: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglConvolutionParameteriv = procedure(target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyConvolutionFilter1D = procedure(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyConvolutionFilter2D = procedure(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetConvolutionFilter = procedure(target: GLenum; format: GLenum; _type: GLenum; image: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetConvolutionParameterfv = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetConvolutionParameteriv = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetSeparableFilter = procedure(target: GLenum; format: GLenum; _type: GLenum; row: PGLvoid; column: PGLvoid; span: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSeparableFilter2D = procedure(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; const row: PGLvoid; const column: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetHistogram = procedure(target: GLenum; reset: GLboolean; format: GLenum; _type: GLenum; values: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetHistogramParameterfv = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetHistogramParameteriv = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMinmax = procedure(target: GLenum; reset: GLboolean; format: GLenum; _type: GLenum; values: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMinmaxParameterfv = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMinmaxParameteriv = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglHistogram = procedure(target: GLenum; width: GLsizei; internalformat: GLenum; sink: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMinmax = procedure(target: GLenum; internalformat: GLenum; sink: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglResetHistogram = procedure(target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglResetMinmax = procedure(target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} +{$endif} + + // GL_VERSION_1_3 + TglActiveTexture = procedure(texture: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSampleCoverage = procedure(value: GLclampf; invert: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTexImage3D = procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTexImage2D = procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTexImage1D = procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTexSubImage3D = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTexSubImage2D = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTexSubImage1D = procedure(target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetCompressedTexImage = procedure(target: GLenum; level: GLint; img: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} +{$ifdef DGL_DEPRECATED} + TglClientActiveTexture = procedure(texture: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1d = procedure(target: GLenum; s: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1dv = procedure(target: GLenum; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1f = procedure(target: GLenum; s: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1fv = procedure(target: GLenum; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1i = procedure(target: GLenum; s: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1iv = procedure(target: GLenum; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1s = procedure(target: GLenum; s: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1sv = procedure(target: GLenum; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2d = procedure(target: GLenum; s: GLdouble; t: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2dv = procedure(target: GLenum; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2f = procedure(target: GLenum; s: GLfloat; t: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2fv = procedure(target: GLenum; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2i = procedure(target: GLenum; s: GLint; t: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2iv = procedure(target: GLenum; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2s = procedure(target: GLenum; s: GLshort; t: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2sv = procedure(target: GLenum; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3d = procedure(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3dv = procedure(target: GLenum; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3f = procedure(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3fv = procedure(target: GLenum; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3i = procedure(target: GLenum; s: GLint; t: GLint; r: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3iv = procedure(target: GLenum; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3s = procedure(target: GLenum; s: GLshort; t: GLshort; r: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3sv = procedure(target: GLenum; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4d = procedure(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble; q: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4dv = procedure(target: GLenum; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4f = procedure(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat; q: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4fv = procedure(target: GLenum; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4i = procedure(target: GLenum; s: GLint; t: GLint; r: GLint; q: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4iv = procedure(target: GLenum; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4s = procedure(target: GLenum; s: GLshort; t: GLshort; r: GLshort; q: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4sv = procedure(target: GLenum; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLoadTransposeMatrixf = procedure(const m: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLoadTransposeMatrixd = procedure(const m: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultTransposeMatrixf = procedure(const m: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultTransposeMatrixd = procedure(const m: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} +{$endif} + + // GL_VERSION_1_4 + TglBlendFuncSeparate = procedure(sfactorRGB: GLenum; dfactorRGB: GLenum; sfactorAlpha: GLenum; dfactorAlpha: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiDrawArrays = procedure(mode: GLenum; const first: PGLint; const count: PGLsizei; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiDrawElements = procedure(mode: GLenum; const count: PGLsizei; _type: GLenum; const indices: PGLvoid; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPointParameterf = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPointParameterfv = procedure(pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPointParameteri = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPointParameteriv = procedure(pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} +{$ifdef DGL_DEPRECATED} + TglFogCoordf = procedure(coord: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoordfv = procedure(const coord: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoordd = procedure(coord: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoorddv = procedure(const coord: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoordPointer = procedure(_type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3b = procedure(red: GLbyte; green: GLbyte; blue: GLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3bv = procedure(const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3d = procedure(red: GLdouble; green: GLdouble; blue: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3f = procedure(red: GLfloat; green: GLfloat; blue: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3i = procedure(red: GLint; green: GLint; blue: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3s = procedure(red: GLshort; green: GLshort; blue: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3ub = procedure(red: GLubyte; green: GLubyte; blue: GLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3ubv = procedure(const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3ui = procedure(red: GLuint; green: GLuint; blue: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3uiv = procedure(const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3us = procedure(red: GLushort; green: GLushort; blue: GLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3usv = procedure(const v: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColorPointer = procedure(size: GLint; _type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2d = procedure(x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2f = procedure(x: GLfloat; y: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2i = procedure(x: GLint; y: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2s = procedure(x: GLshort; y: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3d = procedure(x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3dv = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3f = procedure(x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3fv = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3i = procedure(x: GLint; y: GLint; z: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3iv = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3s = procedure(x: GLshort; y: GLshort; z: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3sv = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} +{$endif} + + // GL_VERSION_1_5 + TglGenQueries = procedure(n: GLsizei; ids: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteQueries = procedure(n: GLsizei; const ids: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsQuery = function(id: GLuint): boolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBeginQuery = procedure(target: GLenum; id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndQuery = procedure(target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetQueryiv = procedure(target, pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetQueryObjectiv = procedure(id: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetQueryObjectuiv = procedure(id: GLuint; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindBuffer = procedure(target: GLenum; buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteBuffers = procedure(n: GLsizei; const buffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenBuffers = procedure(n: GLsizei; buffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsBuffer = function(buffer: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBufferData = procedure(target: GLenum; size: GLsizeiptr; const data: PGLvoid; usage: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBufferSubData = procedure(target: GLenum; offset: GLintptr; size: GLsizeiptr; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetBufferSubData = procedure(target: GLenum; offset: GLintptr; size: GLsizeiptr; data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapBuffer = function(target: GLenum; access: GLenum): PGLvoid; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUnmapBuffer = function(target: GLenum): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetBufferParameteriv = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetBufferPointerv = procedure(target: GLenum; pname: GLenum; params: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_VERSION_2_0 + TglBlendEquationSeparate = procedure(modeRGB: GLenum; modeAlpha: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawBuffers = procedure(n: GLsizei; const bufs: PGLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStencilOpSeparate = procedure(face: GLenum; sfail: GLenum; dpfail: GLenum; dppass: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStencilFuncSeparate = procedure(face: GLenum; func: GLenum; ref: GLint; mask: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStencilMaskSeparate = procedure(face: GLenum; mask: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglAttachShader = procedure(programObj, shaderObj: GLhandle); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindAttribLocation = procedure(programObj: GLhandle; index: GLuint; name: PGLChar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompileShader = procedure(shaderObj: GLhandle); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCreateProgram = function: GLhandle; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCreateShader = function(shaderType: GLenum): GLhandle; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteProgram = procedure(programObj: GLhandle); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteShader = procedure(shaderObj: GLhandle); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDetachShader = procedure(programObj, shaderObj: GLhandle); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDisableVertexAttribArray = procedure(index: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEnableVertexAttribArray = procedure(index: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetActiveAttrib = procedure(programObj: GLhandle; index: GLuint; maxlength: GLsizei; var length: GLint; var size: GLint; var _type: GLenum; name: PGLChar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetActiveUniform = procedure(programObj: GLhandle; index: GLuint; maxLength: GLsizei; var length: GLsizei; var size: GLint; var _type: GLenum; name: PGLChar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetAttachedShaders = procedure(programObj: GLhandle; MaxCount: GLsizei; var Count: GLint; shaders: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetAttribLocation = function(programObj: GLhandle; char: PGLChar): glint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramiv = procedure(programObj: GLhandle; pname: GLenum; params: PGLInt); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramInfoLog = procedure(programObj: GLHandle; maxLength: glsizei; var length: GLint; infoLog: PGLChar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetShaderiv = procedure(shaderObj: GLhandle; pname: GLenum; params: PGLInt); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetShaderInfoLog = procedure(shaderObj: GLHandle; maxLength: glsizei; var length: glint; infoLog: PGLChar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetShaderSource = procedure(shaderObj: GLhandle; maxlength: GLsizei; var length: GLsizei; source: PGLChar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformLocation = function(programObj: GLhandle; const char: PGLChar): glint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformfv = procedure(programObj: GLhandle; location: GLint; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformiv = procedure(programObj: GLhandle; location: GLint; params: PGLInt); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribfv = procedure(index: GLuint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribiv = procedure(index: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribPointerv = procedure(index: GLuint; pname: GLenum; _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsProgram = function(programObj: GLhandle) : GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsShader = function(shaderObj: GLhandle) : GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLinkProgram = procedure(programObj: GLHandle); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglShaderSource = procedure(shaderObj: GLHandle; count: glsizei; const _string: PPGLChar; lengths: pglint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUseProgram = procedure(programObj: GLhandle); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1f = procedure(location: GLint; v0: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2f = procedure(location: GLint; v0, v1: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3f = procedure(location: GLint; v0, v1, v2: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4f = procedure(location: GLint; v0, v1, v2, v3: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1i = procedure(location: GLint; v0: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2i = procedure(location: GLint; v0, v1: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3i = procedure(location: GLint; v0, v1, v2: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4i = procedure(location: GLint; v0, v1, v2, v3: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1fv = procedure(location: GLint; count: GLsizei; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2fv = procedure(location: GLint; count: GLsizei; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3fv = procedure(location: GLint; count: GLsizei; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4fv = procedure(location: GLint; count: GLsizei; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1iv = procedure(location: GLint; count: GLsizei; value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2iv = procedure(location: GLint; count: GLsizei; value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3iv = procedure(location: GLint; count: GLsizei; value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4iv = procedure(location: GLint; count: GLsizei; value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix2fv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix3fv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix4fv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglValidateProgram = procedure(programObj: GLhandle); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1d = procedure(index: GLuint; x: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1dv = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1f = procedure(index: GLuint; x: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1fv = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1s = procedure(index: GLuint; x: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1sv = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2d = procedure(index: GLuint; x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2dv = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2f = procedure(index: GLuint; x: GLfloat; y: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2fv = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2s = procedure(index: GLuint; x: GLshort; y: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2sv = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3d = procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3dv = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3f = procedure(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3fv = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3s = procedure(index: GLuint; x: GLshort; y: GLshort; z: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3sv = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4Nbv = procedure(index: GLuint; const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4Niv = procedure(index: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4Nsv = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4Nub = procedure(index: GLuint; x: GLubyte; y: GLubyte; z: GLubyte; w: GLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4Nubv = procedure(index: GLuint; const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4Nuiv = procedure(index: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4Nusv = procedure(index: GLuint; const v: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4bv = procedure(index: GLuint; const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4d = procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4dv = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4f = procedure(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4fv = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4iv = procedure(index: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4s = procedure(index: GLuint; x: GLshort; y: GLshort; z: GLshort; w: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4sv = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4ubv = procedure(index: GLuint; const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4uiv = procedure(index: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4usv = procedure(index: GLuint; const v: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribPointer = procedure(index: GLuint; size: GLint; _type: GLenum; normalized: GLboolean; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_VERSION_2_1 + TglUniformMatrix2x3fv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix3x2fv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix2x4fv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix4x2fv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix3x4fv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix4x3fv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_VERSION_3_0 + { OpenGL 3.0 also reuses entry points from these extensions: } + { ARB_framebuffer_object } + { ARB_map_buffer_range } + { ARB_vertex_array_object } + TglColorMaski = procedure(index_: GLuint; r: GLboolean; g: GLboolean; b: GLboolean; a: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetBooleani_v = procedure(target: GLenum; index_: GLuint; data: PGLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetIntegeri_v = procedure(target: GLenum; index_: GLuint; data: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEnablei = procedure(target: GLenum; index_: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDisablei = procedure(target: GLenum; index_: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsEnabledi = function(target: GLenum; index_: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBeginTransformFeedback = procedure(primitiveMode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndTransformFeedback = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindBufferRange = procedure(target: GLenum; index_: GLuint; buffer: GLuint; offset: GLintptr; size: GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindBufferBase = procedure(target: GLenum; index_: GLuint; buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTransformFeedbackVaryings = procedure(program_: GLuint; count: GLsizei; const varyings: PPGLchar; bufferMode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTransformFeedbackVarying = procedure(program_: GLuint; index_: GLuint; bufSize: GLsizei; length: PGLsizei; size: PGLsizei; type_: PGLsizei; name: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClampColor = procedure(targe: GLenum; clamp: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBeginConditionalRender = procedure(id: GLuint; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndConditionalRender = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribIPointer = procedure(index_: GLuint; size: GLint; type_: GLenum; stride: GLsizei; const pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribIiv = procedure(index_: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribIuiv = procedure(index_: GLuint; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI1i = procedure(index_: GLuint; x: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI2i = procedure(index_: GLuint; x: GLint; y: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI3i = procedure(index_: GLuint; x: GLint; y: GLint; z: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4i = procedure(index_: GLuint; x: GLint; y: GLint; z: GLint; w: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI1ui = procedure(index_: GLuint; x: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI2ui = procedure(index_: GLuint; x: GLuint; y: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI3ui = procedure(index_: GLuint; x: GLuint; y: GLuint; z: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4ui = procedure(index_: GLuint; x: GLuint; y: GLuint; z: GLuint; w: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI1iv = procedure(index_: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI2iv = procedure(index_: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI3iv = procedure(index_: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4iv = procedure(index_: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI1uiv = procedure(index_: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI2uiv = procedure(index_: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI3uiv = procedure(index_: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4uiv = procedure(index_: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4bv = procedure(index_: GLuint; const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4sv = procedure(index_: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4ubv = procedure(index_: GLuint; const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4usv = procedure(index_: GLuint; const v: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformuiv = procedure(program_: GLuint; location: GLint; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindFragDataLocation = procedure(program_: GLuint; color: GLuint; const name: PGLChar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFragDataLocation = function(program_: GLuint; const name: PGLChar): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1ui = procedure(location: GLint; v0: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2ui = procedure(location: GLint; v0: GLuint; v1: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3ui = procedure(location: GLint; v0: GLuint; v1: GLuint; v2: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4ui = procedure(location: GLint; v0: GLuint; v1: GLuint; v2: GLuint; v3: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1uiv = procedure(location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2uiv = procedure(location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3uiv = procedure(location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4uiv = procedure(location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexParameterIiv = procedure(target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexParameterIuiv = procedure(target: GLenum; pname: GLenum; const params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexParameterIiv = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexParameterIuiv = procedure(target: GLenum; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearBufferiv = procedure(buffer: GLenum; drawbuffer: GLint; const value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearBufferuiv = procedure(buffer: GLenum; drawbuffer: GLint; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearBufferfv = procedure(buffer: GLenum; drawbuffer: GLint; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearBufferfi = procedure(buffer: GLenum; drawbuffer: GLint; depth: GLfloat; stencil: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetStringi = function(name: GLenum; index: GLuint): PGLubyte; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_VERSION_2_1 + TglEnableVertexArrayEXT = procedure(vaobj: GLuint; array_: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEnableVertexArrayAttribEXT = procedure(vaobj: GLuint; index: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexArrayVertexAttribOffsetEXT = procedure(vaobj: GLuint; buffer: GLuint; index: GLuint; size: GLint; type_: GLenum; normalized: GLboolean; stride: GLsizei; offset: GLintptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_VERSION_3_1 + { OpenGL 3.1 also reuses entry points from these extensions: } + { ARB_copy_buffer } + { ARB_uniform_buffer_object } + TglDrawArraysInstanced = procedure(mode: GLenum; first: GLint; count: GLsizei; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawElementsInstanced = procedure(mode: GLenum; count: GLsizei; type_: GLenum; const indices: PGLvoid; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexBuffer = procedure(target: GLenum; internalformat: GLenum; buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPrimitiveRestartIndex = procedure(index_: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_VERSION_3_2 + { OpenGL 3.2 also reuses entry points from these extensions: } + { ARB_draw_elements_base_vertex } + { ARB_provoking_vertex } + { ARB_sync } + { ARB_texture_multisample } + TglGetInteger64i_v = procedure(target: GLenum; index_: GLuint; data: PGLint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetBufferParameteri64v = procedure(target: GLenum; pname: GLenum; params: PGLint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTexture = procedure(target: GLenum; attachment: GLenum; texture: GLuint; level: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} +// TglFramebufferTextureFace = procedure(target: GLenum; attachment: GLenum; texture: GLuint; level: GLint; face: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_VERSION_3_3 + { OpenGL 3.3 also reuses entry points from these extensions: } + { ARB_blend_func_extended } + { ARB_sampler_objects } + { ARB_explicit_attrib_location, but it has none } + { ARB_occlusion_query2 (no entry points) } + { ARB_shader_bit_encoding (no entry points) } + { ARB_texture_rgb10_a2ui (no entry points) } + { ARB_texture_swizzle (no entry points) } + { ARB_timer_query } + { ARB_vertex_type_2_10_10_10_rev } + TglVertexAttribDivisor = procedure(index: GLuint; divisor: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_VERSION_4_0 + { OpenGL 4.0 also reuses entry points from these extensions: } + { ARB_texture_query_lod (no entry points) } + { ARB_draw_indirect } + { ARB_gpu_shader5 (no entry points) } + { ARB_gpu_shader_fp64 } + { ARB_shader_subroutine } + { ARB_tessellation_shader } + { ARB_texture_buffer_object_rgb32 (no entry points) } + { ARB_texture_cube_map_array (no entry points) } + { ARB_texture_gather (no entry points) } + { ARB_transform_feedback2 } + { ARB_transform_feedback3 } + TglMinSampleShading = procedure(value: GLclampf); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendEquationi = procedure(buf: GLuint; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendEquationSeparatei = procedure(buf: GLuint; modeRGB: GLenum; modeAlpha: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendFunci = procedure(buf: GLuint; src: GLenum; dst: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendFuncSeparatei = procedure(buf: GLuint; srcRGB: GLenum; dstRGB: GLenum; srcAlpha: GLenum; dstAlpha: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_VERSION_4_1 + { OpenGL 4.1 also reuses entry points from these extensions: } + { ARB_ES2_compatibility } + { ARB_get_program_binary } + { ARB_separate_shader_objects } + { ARB_shader_precision (no entry points) } + { ARB_vertex_attrib_64bit } + { ARB_viewport_array } + + // GL_3DFX_tbuffer + TglTbufferMask3DFX = procedure(mask: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_APPLE_element_array + TglElementPointerAPPLE = procedure(_type: GLenum; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawElementArrayAPPLE = procedure(mode: GLenum; first: GLint; count: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawRangeElementArrayAPPLE = procedure(mode: GLenum; start: GLuint; _end: GLuint; first: GLint; count: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiDrawElementArrayAPPLE = procedure(mode: GLenum; const first: PGLint; const count: PGLsizei; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiDrawRangeElementArrayAPPLE = procedure(mode: GLenum; start: GLuint; _end: GLuint; const first: PGLint; const count: PGLsizei; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_APPLE_fence + TglGenFencesAPPLE = procedure(n: GLsizei; fences: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteFencesAPPLE = procedure(n: GLsizei; const fences: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSetFenceAPPLE = procedure(fence: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsFenceAPPLE = function(fence: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTestFenceAPPLE = function(fence: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFinishFenceAPPLE = procedure(fence: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTestObjectAPPLE = function(_object: GLenum; name: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFinishObjectAPPLE = procedure(_object: GLenum; name: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_APPLE_vertex_array_object + TglBindVertexArrayAPPLE = procedure(_array: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteVertexArraysAPPLE = procedure(n: GLsizei; const arrays: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenVertexArraysAPPLE = procedure(n: GLsizei; const arrays: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsVertexArrayAPPLE = function(_array: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_APPLE_vertex_array_range + TglVertexArrayRangeAPPLE = procedure(length: GLsizei; _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFlushVertexArrayRangeAPPLE = procedure(length: GLsizei; _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexArrayParameteriAPPLE = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_APPLE_texture_range + TglTextureRangeAPPLE = procedure(target: GLenum; length: GLsizei; const Pointer_: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexParameterPointervAPPLE = procedure(target: GLenum; pname: GLenum; params: PPGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_APPLE_vertex_program_evaluators + TglEnableVertexAttribAPPLE = procedure(index_: GLuint; pname: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDisableVertexAttribAPPLE = procedure(index_: GLuint; pname: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsVertexAttribEnabledAPPLE = function(index_: GLuint; pname: GLenum): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapVertexAttrib1dAPPLE = procedure(index_: GLuint; size: GLuint; u1: GLdouble; u2: GLdouble; stride: GLint; order: GLint; const points: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapVertexAttrib1fAPPLE = procedure(index_: GLuint; size: GLuint; u1: GLfloat; u2: GLfloat; stride: GLint; order: GLint; const points: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapVertexAttrib2dAPPLE = procedure(index_: GLuint; size: GLuint; u1: GLdouble; u2: GLdouble; ustride: GLint; uorder: GLint; v1: GLdouble; v2: GLdouble; vstride: GLint; vorder: GLint; const points: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapVertexAttrib2fAPPLE = procedure(index_: GLuint; size: GLuint; u1: GLfloat; u2: GLfloat; ustride: GLint; order: GLint; v1: GLfloat; v2: GLfloat; vstride: GLint; vorder: GLint; const points: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_APPLE_object_purgeable + TglObjectPurgeableAPPLE = function(objectType: GLenum; name: GLuint; option: GLenum): GLenum; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglObjectUnpurgeableAPPLE = function(objectType: GLenum; name: GLuint; option: GLenum): GLenum; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetObjectParameterivAPPLE = procedure(objectType: GLenum; name: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_matrix_palette + TglCurrentPaletteMatrixARB = procedure(index: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixIndexubvARB = procedure(size: GLint; const indices: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixIndexusvARB = procedure(size: GLint; const indices: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixIndexuivARB = procedure(size: GLint; const indices: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixIndexPointerARB = procedure(size: GLint; _type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_multisample + TglSampleCoverageARB = procedure(value: GLclampf; invert: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_multitexture + TglActiveTextureARB = procedure(texture: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClientActiveTextureARB = procedure(texture: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1dARB = procedure(target: GLenum; s: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1dvARB = procedure(target: GLenum; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1fARB = procedure(target: GLenum; s: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1fvARB = procedure(target: GLenum; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1iARB = procedure(target: GLenum; s: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1ivARB = procedure(target: GLenum; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1sARB = procedure(target: GLenum; s: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1svARB = procedure(target: GLenum; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2dARB = procedure(target: GLenum; s: GLdouble; t: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2dvARB = procedure(target: GLenum; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2fARB = procedure(target: GLenum; s: GLfloat; t: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2fvARB = procedure(target: GLenum; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2iARB = procedure(target: GLenum; s: GLint; t: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2ivARB = procedure(target: GLenum; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2sARB = procedure(target: GLenum; s: GLshort; t: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2svARB = procedure(target: GLenum; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3dARB = procedure(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3dvARB = procedure(target: GLenum; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3fARB = procedure(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3fvARB = procedure(target: GLenum; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3iARB = procedure(target: GLenum; s: GLint; t: GLint; r: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3ivARB = procedure(target: GLenum; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3sARB = procedure(target: GLenum; s: GLshort; t: GLshort; r: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3svARB = procedure(target: GLenum; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4dARB = procedure(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble; q: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4dvARB = procedure(target: GLenum; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4fARB = procedure(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat; q: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4fvARB = procedure(target: GLenum; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4iARB = procedure(target: GLenum; s: GLint; t: GLint; r: GLint; q: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4ivARB = procedure(target: GLenum; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4sARB = procedure(target: GLenum; s: GLshort; t: GLshort; r: GLshort; q: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4svARB = procedure(target: GLenum; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_point_parameters + TglPointParameterfARB = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPointParameterfvARB = procedure(pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_texture_compression + TglCompressedTexImage3DARB = procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTexImage2DARB = procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTexImage1DARB = procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTexSubImage3DARB = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTexSubImage2DARB = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTexSubImage1DARB = procedure(target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetCompressedTexImageARB = procedure(target: GLenum; level: GLint; img: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_transpose_matrix + TglLoadTransposeMatrixfARB = procedure(const m: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLoadTransposeMatrixdARB = procedure(const m: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultTransposeMatrixfARB = procedure(const m: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultTransposeMatrixdARB = procedure(const m: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_vertex_blend + TglWeightbvARB = procedure(size: GLint; const weights: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWeightsvARB = procedure(size: GLint; const weights: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWeightivARB = procedure(size: GLint; const weights: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWeightfvARB = procedure(size: GLint; const weights: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWeightdvARB = procedure(size: GLint; const weights: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWeightubvARB = procedure(size: GLint; const weights: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWeightusvARB = procedure(size: GLint; const weights: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWeightuivARB = procedure(size: GLint; const weights: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWeightPointerARB = procedure(size: GLint; _type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexBlendARB = procedure(count: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_vertex_buffer_object + TglBindBufferARB = procedure(target: GLenum; buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteBuffersARB = procedure(n: GLsizei; const buffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenBuffersARB = procedure(n: GLsizei; buffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsBufferARB = function(buffer: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBufferDataARB = procedure(target: GLenum; size: GLsizeiptrARB; const data: PGLvoid; usage: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBufferSubDataARB = procedure(target: GLenum; offset: GLintptrARB; size: GLsizeiptrARB; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetBufferSubDataARB = procedure(target: GLenum; offset: GLintptrARB; size: GLsizeiptrARB; data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapBufferARB = function(target: GLenum; access: GLenum): PGLvoid; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUnmapBufferARB = function(target: GLenum): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetBufferParameterivARB = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetBufferPointervARB = procedure(target: GLenum; pname: GLenum; params: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_vertex_program + TglVertexAttrib1dARB = procedure(index: GLuint; x: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1dvARB = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1fARB = procedure(index: GLuint; x: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1fvARB = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1sARB = procedure(index: GLuint; x: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1svARB = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2dARB = procedure(index: GLuint; x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2dvARB = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2fARB = procedure(index: GLuint; x: GLfloat; y: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2fvARB = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2sARB = procedure(index: GLuint; x: GLshort; y: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2svARB = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3dARB = procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3dvARB = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3fARB = procedure(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3fvARB = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3sARB = procedure(index: GLuint; x: GLshort; y: GLshort; z: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3svARB = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4NbvARB = procedure(index: GLuint; const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4NivARB = procedure(index: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4NsvARB = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4NubARB = procedure(index: GLuint; x: GLubyte; y: GLubyte; z: GLubyte; w: GLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4NubvARB = procedure(index: GLuint; const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4NuivARB = procedure(index: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4NusvARB = procedure(index: GLuint; const v: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4bvARB = procedure(index: GLuint; const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4dARB = procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4dvARB = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4fARB = procedure(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4fvARB = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4ivARB = procedure(index: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4sARB = procedure(index: GLuint; x: GLshort; y: GLshort; z: GLshort; w: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4svARB = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4ubvARB = procedure(index: GLuint; const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4uivARB = procedure(index: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4usvARB = procedure(index: GLuint; const v: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribPointerARB = procedure(index: GLuint; size: GLint; _type: GLenum; normalized: GLboolean; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEnableVertexAttribArrayARB = procedure(index: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDisableVertexAttribArrayARB = procedure(index: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramStringARB = procedure(target: GLenum; format: GLenum; len: GLsizei; const _string: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindProgramARB = procedure(target: GLenum; _program: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteProgramsARB = procedure(n: GLsizei; const programs: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenProgramsARB = procedure(n: GLsizei; programs: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramEnvParameter4dARB = procedure(target: GLenum; index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramEnvParameter4dvARB = procedure(target: GLenum; index: GLuint; const params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramEnvParameter4fARB = procedure(target: GLenum; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramEnvParameter4fvARB = procedure(target: GLenum; index: GLuint; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramLocalParameter4dARB = procedure(target: GLenum; index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramLocalParameter4dvARB = procedure(target: GLenum; index: GLuint; const params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramLocalParameter4fARB = procedure(target: GLenum; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramLocalParameter4fvARB = procedure(target: GLenum; index: GLuint; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramEnvParameterdvARB = procedure(target: GLenum; index: GLuint; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramEnvParameterfvARB = procedure(target: GLenum; index: GLuint; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramLocalParameterdvARB = procedure(target: GLenum; index: GLuint; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramLocalParameterfvARB = procedure(target: GLenum; index: GLuint; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramivARB = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramStringARB = procedure(target: GLenum; pname: GLenum; _string: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribdvARB = procedure(index: GLuint; pname: GLenum; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribfvARB = procedure(index: GLuint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribivARB = procedure(index: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribPointervARB = procedure(index: GLuint; pname: GLenum; _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsProgramARB = function(_program: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_window_pos + TglWindowPos2dARB = procedure(x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2dvARB = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2fARB = procedure(x: GLfloat; y: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2fvARB = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2iARB = procedure(x: GLint; y: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2ivARB = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2sARB = procedure(x: GLshort; y: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2svARB = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3dARB = procedure(x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3dvARB = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3fARB = procedure(x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3fvARB = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3iARB = procedure(x: GLint; y: GLint; z: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3ivARB = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3sARB = procedure(x: GLshort; y: GLshort; z: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3svARB = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_draw_buffers + TglDrawBuffersARB = procedure(n: GLsizei; bufs: PGLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_color_buffer_float + TglClampColorARB = procedure(target: GLenum; clamp: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_vertex_shader + TglGetActiveAttribARB = procedure(programobj: GLhandleARB; index: GLuint; maxLength: GLsizei; var length: GLsizei; var size: GLint; var _type: GLenum; name: PGLcharARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetAttribLocationARB = function(programObj: GLhandleARB; const char: PGLcharARB): glint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindAttribLocationARB = procedure(programObj: GLhandleARB; index: GLuint; const name: PGLcharARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_shader_objects + TglDeleteObjectARB = procedure(Obj: GLHandleARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetHandleARB = function(pname: GlEnum): GLHandleARB; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDetachObjectARB = procedure(container, attached: GLHandleARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCreateShaderObjectARB = function(shaderType: glenum): GLHandleARB; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglShaderSourceARB = procedure(shaderObj: GLHandleARB; count: glsizei; const _string: PPGLCharARB; lengths: pglint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompileShaderARB = procedure(shaderObj: GLHandleARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCreateProgramObjectARB = function: GLHandleARB; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglAttachObjectARB = procedure(programObj, shaderObj: GLhandleARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLinkProgramARB = procedure(programObj: GLHandleARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUseProgramObjectARB = procedure(programObj: GLHandleARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglValidateProgramARB = procedure(programObj: GLhandleARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1fARB = procedure(location: glint; v0: glfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2fARB = procedure(location: glint; v0, v1: glfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3fARB = procedure(location: glint; v0, v1, v2: glfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4fARB = procedure(location: glint; v0, v1, v2, v3: glfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1iARB = procedure(location: glint; v0: glint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2iARB = procedure(location: glint; v0, v1: glint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3iARB = procedure(location: glint; v0, v1, v2: glint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4iARB = procedure(location: glint; v0, v1, v2, v3: glint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1fvARB = procedure(location: glint; count: GLsizei; value: pglfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2fvARB = procedure(location: glint; count: GLsizei; value: pglfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3fvARB = procedure(location: glint; count: GLsizei; value: pglfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4fvARB = procedure(location: glint; count: GLsizei; value: pglfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1ivARB = procedure(location: glint; count: GLsizei; value: pglint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2ivARB = procedure(location: glint; count: GLsizei; value: pglint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3ivARB = procedure(location: glint; count: GLsizei; value: pglint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4ivARB = procedure(location: glint; count: GLsizei; value: pglint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix2fvARB = procedure(location: glint; count: glsizei; transpose: glboolean; value: pglfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix3fvARB = procedure(location: glint; count: glsizei; transpose: glboolean; value: pglfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix4fvARB = procedure(location: glint; count: glsizei; transpose: glboolean; value: pglfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetObjectParameterfvARB = procedure(Obj: GLHandleARB; pname: GLEnum; params: PGLFloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetObjectParameterivARB = procedure(Obj: GLHandleARB; pname: GLEnum; params: PGLInt); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetInfoLogARB = procedure(shaderObj: GLHandleARB; maxLength: glsizei; var length: glint; infoLog: PGLcharARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetAttachedObjectsARB = procedure(programobj: GLhandleARB; maxCount: GLsizei; var count: GLsizei; objects: PGLhandleARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformLocationARB = function(programObj: GLhandleARB; const char: PGLcharARB): glint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetActiveUniformARB = procedure(programobj: GLhandleARB; index: GLuint; maxLength: GLsizei; var length: GLsizei; var size: GLint; var _type: GLenum; name: PGLcharARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformfvARB = procedure(programObj: GLhandleARB; location: GLint; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformivARB = procedure(programObj: GLhandleARB; location: GLint; params: PGLInt); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetShaderSourceARB = procedure(shader: GLhandleARB; maxLength: GLsizei; var length: GLsizei; source: PGLcharARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_Occlusion_Query + TglGenQueriesARB = procedure(n: GLsizei; ids: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteQueriesARB = procedure(n: GLsizei; const ids: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsQueryARB = function(id: GLuint): boolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBeginQueryARB = procedure(target: GLenum; id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndQueryARB = procedure(target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetQueryivARB = procedure(target, pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetQueryObjectivARB = procedure(id: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetQueryObjectuivARB = procedure(id: GLuint; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_draw_instanced + TglDrawArraysInstancedARB = procedure(mode: GLenum; first: GLint; count: GLsizei; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawElementsInstancedARB = procedure(mode: GLenum; count: GLsizei; type_: GLenum; const indices: PGLvoid; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_framebuffer_object + TglIsRenderbuffer = function(renderbuffer: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindRenderbuffer = procedure(target: GLenum; renderbuffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteRenderbuffers = procedure(n: GLsizei; const renderbuffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenRenderbuffers = procedure(n: GLsizei; renderbuffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRenderbufferStorage = procedure(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetRenderbufferParameteriv = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsFramebuffer = function(framebuffer: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindFramebuffer = procedure(target: GLenum; framebuffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteFramebuffers = procedure(n: GLsizei; const framebuffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenFramebuffers = procedure(n: GLsizei; framebuffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCheckFramebufferStatus = function(target: GLenum): GLenum; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTexture1D = procedure(target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTexture2D = procedure(target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTexture3D = procedure(target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint; zoffset: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferRenderbuffer = procedure(target: GLenum; attachment: GLenum; renderbuffertarget: GLenum; renderbuffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFramebufferAttachmentParameteriv = procedure(target: GLenum; attachment: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenerateMipmap = procedure(target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlitFramebuffer = procedure(srcX0: GLint; srcY0: GLint; srcX1: GLint; srcY1: GLint; dstX0: GLint; dstY0: GLint; dstX1: GLint; dstY1: GLint; mask: GLbitfield; filter: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRenderbufferStorageMultisample = procedure(target: GLenum; samples: GLsizei; internalformat: GLenum; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTextureLayer = procedure(target: GLenum; attachment: GLenum; texture: GLuint; level: GLint; layer: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_geometry_shader4 + TglProgramParameteriARB = procedure(program_: GLuint; pname: GLenum; value: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTextureARB = procedure(target: GLenum; attachment: GLenum; texture: GLuint; level: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTextureLayerARB = procedure(target: GLenum; attachment: GLenum; texture: GLuint; level: GLint; layer: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTextureFaceARB = procedure(target: GLenum; attachment: GLenum; texture: GLuint; level: GLint; face: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_instanced_arrays + TglVertexAttribDivisorARB = procedure(index_: GLuint; divisor: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_map_buffer_range + TglMapBufferRange = function(target: GLenum; offset: GLintptr; length: GLsizeiptr; access: GLbitfield): PGLvoid; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFlushMappedBufferRange = procedure(target: GLenum; offset: GLintptr; length: GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_texture_buffer_object + TglTexBufferARB = procedure(target: GLenum; internalformat: GLenum; buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_vertex_array_object + TglBindVertexArray = procedure(array_: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteVertexArrays = procedure(n: GLsizei; const arrays: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenVertexArrays = procedure(n: GLsizei; arrays: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsVertexArray = function(array_: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_uniform_buffer_object + TglGetUniformIndices = procedure(program_: GLuint; uniformCount: GLsizei; const uniformNames: PPGLchar; uniformIndices: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetActiveUniformsiv = procedure(program_: GLuint; uniformCount: GLsizei; const uniformIndices: PGLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetActiveUniformName = procedure(program_: GLuint; uniformIndex: GLuint; bufSize: GLsizei; length: PGLsizei; uniformName: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformBlockIndex = function(program_: GLuint; const uniformBlockName: PGLchar): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetActiveUniformBlockiv = procedure(program_: GLuint; uniformBlockIndex: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetActiveUniformBlockName = procedure(program_: GLuint; uniformBlockIndex: GLuint; bufSize: GLsizei; length: PGLsizei; uniformBlockName: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformBlockBinding = procedure(program_: GLuint; uniformBlockIndex: GLuint; uniformBlockBinding: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_copy_buffer + TglCopyBufferSubData = procedure(readTarget: GLenum; writeTarget: GLenum; readOffset: GLintptr; writeOffset: GLintptr; size: GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_draw_elements_base_vertex + TglDrawElementsBaseVertex = procedure(mode: GLenum; count: GLsizei; type_: GLenum; const indices: PGLvoid; basevertex: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawRangeElementsBaseVertex = procedure(mode: GLenum; start: GLuint; end_: GLuint; count: GLsizei; type_: GLenum; const indices: PGLvoid; basevertex: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawElementsInstancedBaseVertex = procedure(mode: GLenum; count: GLsizei; type_: GLenum; const indices: PGLvoid; primcount: GLsizei; basevertex: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiDrawElementsBaseVertex = procedure(mode: GLenum; const count: PGLsizei; type_: GLenum; const indices: PPGLvoid; primcount: GLsizei; const basevertex: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_provoking_vertex + TglProvokingVertex = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_sync + TglFenceSync = function(condition: GLenum; flags: GLbitfield): GLsync; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsSync = function(sync: GLsync): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteSync = procedure(sync: GLsync); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClientWaitSync = function(sync: GLsync; flags: GLbitfield; timeout: GLuint64): GLenum; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWaitSync = procedure(sync: GLsync; flags: GLbitfield; timeout: GLuint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetInteger64v = procedure(pname: GLenum; params: PGLint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetSynciv = procedure(sync: GLsync; pname: GLenum; butSize: GLsizei; length: PGLsizei; values: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_texture_multisample + TglTexImage2DMultisample = procedure(target: GLenum; samples: GLsizei; internalformat: GLint; width: GLsizei; height: GLsizei; fixedsamplelocations: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexImage3DMultisample = procedure(target: GLenum; samples: GLsizei; internalformat: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; fixedsamplelocations: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultisamplefv = procedure(pname: GLenum; index_: GLuint; val: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSampleMaski = procedure(index_: GLuint; mask: GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_draw_buffers_blend + TglBlendEquationiARB = procedure(buf: GLuint; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendEquationSeparateiARB = procedure(buf: GLuint; modeRGB: GLenum; modeAlpha: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendFunciARB = procedure(buf: GLuint; src: GLenum; dst: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendFuncSeparateiARB = procedure(buf: GLuint; srcRGB: GLenum; dstRGB: GLenum; srcAlpha: GLenum; dstAlpha: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_sample_shading + TglMinSampleShadingARB = procedure(value: GLclampf); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_shading_language_include + TglNamedStringARB = procedure(type_: GLenum; namelen: GLint; const name: PGLchar; stringlen: GLint; const string_: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteNamedStringARB = procedure(namelen: GLint; const name: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompileShaderIncludeARB = procedure (shader: GLuint; count: GLsizei; const path: PPGLchar; const length: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsNamedStringARB = function(namelen: GLint; const name: PGLchar): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedStringARB = procedure(namelen: GLint; const name: PGLchar; bufSize: GLsizei; stringlen: GLint; string_: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedStringivARB = procedure(namelen: GLint; const name: PGLchar; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_blend_func_extended + TglBindFragDataLocationIndexed = procedure(program_: GLuint; colorNumber: GLuint; index: GLuint; const name: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFragDataIndex = function(program_: GLuint; const name: PGLchar): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_sampler_objects + TglGenSamplers = procedure(count: GLsizei; samplers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteSamplers = procedure(count: GLsizei; const samplers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsSampler = function(sampler: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindSampler = procedure(unit_: GLuint; sampler: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSamplerParameteri = procedure(sampler: GLuint; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSamplerParameteriv = procedure(sampler: GLuint; pname: GLenum; const param: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSamplerParameterf = procedure(sampler: GLuint; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSamplerParameterfv = procedure(sampler: GLuint; pname: GLenum; const param: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSamplerParameterIiv = procedure(sampler: GLuint; pname: GLenum; const param: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSamplerParameterIuiv = procedure(sampler: GLuint; pname: GLenum; const param: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetSamplerParameteriv = procedure(sampler: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetSamplerParameterIiv = procedure(sampler: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetSamplerParameterfv = procedure(sampler: GLuint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetSamplerParameterIuiv = procedure(sampler: GLuint; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_timer_query + TglQueryCounter = procedure(id: GLuint; target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetQueryObjecti64v = procedure(id: GLuint; pname: GLenum; params: PGLint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetQueryObjectui64v = procedure(id: GLuint; pname: GLenum; params: PGLuint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_vertex_type_2_10_10_10_rev + TglVertexP2ui = procedure(type_: GLenum; value: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexP2uiv = procedure(type_: GLenum; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexP3ui = procedure(type_: GLenum; value: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexP3uiv = procedure(type_: GLenum; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexP4ui = procedure(type_: GLenum; value: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexP4uiv = procedure(type_: GLenum; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordP1ui = procedure(type_: GLenum; coords: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordP1uiv = procedure(type_: GLenum; const coords: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordP2ui = procedure(type_: GLenum; coords: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordP2uiv = procedure(type_: GLenum; const coords: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordP3ui = procedure(type_: GLenum; coords: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordP3uiv = procedure(type_: GLenum; const coords: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordP4ui = procedure(type_: GLenum; coords: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordP4uiv = procedure(type_: GLenum; const coords: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoordP1ui = procedure(texture: GLenum; type_: GLenum; coords: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoordP1uiv = procedure(texture: GLenum; type_: GLenum; const coords: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoordP2ui = procedure(texture: GLenum; type_: GLenum; coords: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoordP2uiv = procedure(texture: GLenum; type_: GLenum; const coords: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoordP3ui = procedure(texture: GLenum; type_: GLenum; coords: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoordP3uiv = procedure(texture: GLenum; type_: GLenum; const coords: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoordP4ui = procedure(texture: GLenum; type_: GLenum; coords: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoordP4uiv = procedure(texture: GLenum; type_: GLenum; const coords: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalP3ui = procedure(type_: GLenum; coords: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalP3uiv = procedure(type_: GLenum; const coords: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorP3ui = procedure(type_: GLenum; color: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorP3uiv = procedure(type_: GLenum; const color: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorP4ui = procedure(type_: GLenum; color: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorP4uiv = procedure(type_: GLenum; const color: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColorP3ui = procedure(type_: GLenum; color: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColorP3uiv = procedure(type_: GLenum; const color: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribP1ui = procedure(index: GLuint; type_: GLenum; normalized: GLboolean; value: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribP1uiv = procedure(index: GLuint; type_: GLenum; normalized: GLboolean; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribP2ui = procedure(index: GLuint; type_: GLenum; normalized: GLboolean; value: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribP2uiv = procedure(index: GLuint; type_: GLenum; normalized: GLboolean; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribP3ui = procedure(index: GLuint; type_: GLenum; normalized: GLboolean; value: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribP3uiv = procedure(index: GLuint; type_: GLenum; normalized: GLboolean; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribP4ui = procedure(index: GLuint; type_: GLenum; normalized: GLboolean; value: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribP4uiv = procedure(index: GLuint; type_: GLenum; normalized: GLboolean; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_draw_indirect + TglDrawArraysIndirect = procedure(mode: GLenum; const indirect: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawElementsIndirect = procedure(mode: GLenum; type_: GLenum; const indirect: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_gpu_shader_fp64 + TglUniform1d = procedure(location: GLint; x: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2d = procedure(location: GLint; x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3d = procedure(location: GLint; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4d = procedure(location: GLint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1dv = procedure(location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2dv = procedure(location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3dv = procedure(location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4dv = procedure(location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix2dv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix3dv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix4dv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix2x3dv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix2x4dv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix3x2dv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix3x4dv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix4x2dv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformMatrix4x3dv = procedure(location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformdv = procedure(program_: GLuint; location: GLint; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_shader_subroutine + TglGetSubroutineUniformLocation = function(program_: GLuint; shadertype: GLenum; const name: PGLchar): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetSubroutineIndex = function(program_: GLuint; shadertype: GLenum; const name: PGLchar): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetActiveSubroutineUniformiv = procedure(program_: GLuint; shadertype: GLenum; index: GLuint; pname: GLenum; values: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetActiveSubroutineUniformName = procedure(program_: GLuint; shadertype: GLenum; index: GLuint; bufsize: GLsizei; length: PGLsizei; name: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetActiveSubroutineName = procedure(program_: GLuint; shadertype: GLenum; index: GLuint; bufsize: GLsizei; length: PGLsizei; name: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformSubroutinesuiv = procedure(shadertype: GLenum; count: GLsizei; const indices: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformSubroutineuiv = procedure(shadertype: GLenum; location: GLint; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramStageiv = procedure(program_: GLuint; shadertype: GLenum; pname: GLenum; values: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_tessellation_shader + TglPatchParameteri = procedure(pname: GLenum; value: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPatchParameterfv = procedure(pname: GLenum; const values: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_transform_feedback2 + TglBindTransformFeedback = procedure(target: GLenum; id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteTransformFeedbacks = procedure(n: GLsizei; const ids: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenTransformFeedbacks = procedure(n: GLsizei; ids: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsTransformFeedback = function(id: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPauseTransformFeedback = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglResumeTransformFeedback = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawTransformFeedback = procedure(mode: GLenum; id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_transform_feedback3 + TglDrawTransformFeedbackStream = procedure(mode: GLenum; id: GLuint; stream: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBeginQueryIndexed = procedure(target: GLenum; index: GLuint; id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndQueryIndexed = procedure(target: GLenum; index: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetQueryIndexediv = procedure(target: GLenum; index: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_ES2_compatibility + TglReleaseShaderCompiler = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglShaderBinary = procedure(count: GLsizei; const shaders: PGLuint; binaryformat: GLenum; const binary: PGLvoid; length: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetShaderPrecisionFormat = procedure(shadertype: GLenum; precisiontype: GLenum; range: PGLint; precision: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDepthRangef = procedure(n: GLclampf; f: GLclampf); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearDepthf = procedure(d: GLclampf); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_get_program_binary + TglGetProgramBinary = procedure(program_: GLuint; bufSize: GLsizei; length: PGLsizei; binaryFormat: PGLenum; binary: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramBinary = procedure(program_: GLuint; binaryFormat: GLenum; const binary: PGLvoid; length: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramParameteri = procedure(program_: GLuint; pname: GLenum; value: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_separate_shader_objects + TglUseProgramStages = procedure(pipeline: GLuint; stages: GLbitfield; program_: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglActiveShaderProgram = procedure(pipeline: GLuint; program_: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCreateShaderProgramv = function(type_: GLenum; count: GLsizei; const strings: PPGLchar): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindProgramPipeline = procedure(pipeline: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteProgramPipelines = procedure(n: GLsizei; const pipelines: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenProgramPipelines = procedure(n: GLsizei; pipelines: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsProgramPipeline = function(pipeline: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramPipelineiv = procedure(pipeline: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1i = procedure(program_: GLuint; location: GLint; v0: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1iv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1f = procedure(program_: GLuint; location: GLint; v0: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1fv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1d = procedure(program_: GLuint; location: GLint; v0: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1dv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1ui = procedure(program_: GLuint; location: GLint; v0: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1uiv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2i = procedure(program_: GLuint; location: GLint; v0: GLint; v1: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2iv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2f = procedure(program_: GLuint; location: GLint; v0: GLfloat; v1: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2fv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2d = procedure(program_: GLuint; location: GLint; v0: GLdouble; v1: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2dv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2ui = procedure(program_: GLuint; location: GLint; v0: GLuint; v1: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2uiv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3i = procedure(program_: GLuint; location: GLint; v0: GLint; v1: GLint; v2: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3iv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3f = procedure(program_: GLuint; location: GLint; v0: GLfloat; v1: GLfloat; v2: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3fv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3d = procedure(program_: GLuint; location: GLint; v0: GLdouble; v1: GLdouble; v2: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3dv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3ui = procedure(program_: GLuint; location: GLint; v0: GLuint; v1: GLuint; v2: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3uiv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4i = procedure(program_: GLuint; location: GLint; v0: GLint; v1: GLint; v2: GLint; v3: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4iv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4f = procedure(program_: GLuint; location: GLint; v0: GLfloat; v1: GLfloat; v2: GLfloat; v3: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4fv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4d = procedure(program_: GLuint; location: GLint; v0: GLdouble; v1: GLdouble; v2: GLdouble; v3: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4dv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4ui = procedure(program_: GLuint; location: GLint; v0: GLuint; v1: GLuint; v2: GLuint; v3: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4uiv = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2fv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3fv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4fv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2dv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3dv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4dv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2x3fv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3x2fv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2x4fv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4x2fv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3x4fv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4x3fv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2x3dv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3x2dv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2x4dv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4x2dv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3x4dv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4x3dv = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglValidateProgramPipeline = procedure(pipeline: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramPipelineInfoLog = procedure(pipeline: GLuint; bufSize: GLsizei; length: PGLsizei; infoLog: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_vertex_attrib_64bit + TglVertexAttribL1d = procedure(index: GLuint; x: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL2d = procedure(index: GLuint; x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL3d = procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL4d = procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL1dv = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL2dv = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL3dv = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL4dv = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribLPointer = procedure(index: GLuint; size: GLint; type_: GLenum; stride: GLsizei; const pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribLdv = procedure(index: GLuint; pname: GLenum; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_viewport_array + TglViewportArrayv = procedure(first: GLuint; count: GLsizei; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglViewportIndexedf = procedure(index: GLuint; x: GLfloat; y: GLfloat; w: GLfloat; h: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglViewportIndexedfv = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglScissorArrayv = procedure(first: GLuint; count: GLsizei; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglScissorIndexed = procedure(index: GLuint; left: GLint; bottom: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglScissorIndexedv = procedure(index: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDepthRangeArrayv = procedure(first: GLuint; count: GLsizei; const v: PGLclampd); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDepthRangeIndexed = procedure(index: GLuint; n: GLclampd; f: GLclampd); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFloati_v = procedure(target: GLenum; index: GLuint; data: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetDoublei_v = procedure(target: GLenum; index: GLuint; data: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL 4.2 + + // GL_ARB_base_instance + TglDrawArraysInstancedBaseInstance = procedure(mode : GLenum; first : GLint; count :GLsizei; primcount : GLsizei; baseinstance : GLUint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawElementsInstancedBaseInstance = procedure(mode : GLEnum; count : GLsizei; _type : GLenum; const indices : PGLVoid; primcount : GLsizei; baseinstance : GLUInt); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawElementsInstancedBaseVertexBaseInstance = procedure(mode : GLEnum; count : GLsizei; _type : GLenum; const indices : PGLVoid; primcount :GLsizei; basevertex : GLint; baseinstance : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_transform_feedback_instanced + TglDrawTransformFeedbackInstanced = procedure(mode : GLenum; id : GLuint; primcount : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawTransformFeedbackStreamInstanced = procedure(mode : GLenum; id : GLUInt; stream : GLUint; primcount : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_internalformat_query + TglGetInternalformativ = procedure(target : GLenum; internalformat : GLenum; pname : GLenum; bufSize : GLsizei; params : PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_shader_atomic_counters + TglGetActiveAtomicCounterBufferiv = procedure(_program : GLuint; bufferIndex : GLuint; pname : GLenum; params : PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + /// GL_ARB_shader_image_load_store + TglBindImageTexture = procedure(_unit : GLuint; texture : GLuint; level :GLint; layered : GLboolean; layer : GLint; access : GLenum; format : GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMemoryBarrier = procedure(barriers : GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_texture_storage + TglTexStorage1D = procedure(target : GLenum; levels :GLsizei; internalformat : GLenum; width : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexStorage2D = procedure(target : GLenum; levels :GLsizei; internalformat : GLenum; width : GLsizei; height : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexStorage3D = procedure(target : GLenum; levels :GLsizei; internalformat : GLenum; width : GLsizei; height : GLsizei; depth : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureStorage1DEXT = procedure(texture : GLuint; target : GLenum; levels :GLsizei; internalformat : GLenum; width : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureStorage2DEXT = procedure(texture : GLuint; target : GLenum; levels :GLsizei; internalformat : GLenum; width : GLsizei; height : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureStorage3DEXT = procedure(texture : GLuint; target : GLenum; levels :GLsizei; internalformat : GLenum; width : GLsizei; height : GLsizei; depth : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + + // GL 4.3 + + // GL_KHR_debug + TglDebugMessageControl = procedure(source : GLenum; type_ : GLenum; severity : TGLenum; count : GLsizei; const ids : PGLUInt; enabled : GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDebugMessageInsert = procedure(source : GLenum; type_ : GLenum; id : GLuint; sverity : GLenum; length : GLsizei; const buf : PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDebugMessageCallback = procedure(callback : TGLDEBUGPROC; const userParam : Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetDebugMessageLog = function(count : GLuint; bufsize : GLsizei; sources : PGLenum; types : PGLenum; ids : PGLuint; sverities : PGLenum; lengths : PGLSizei; messagelog : PGLchar) : GLUInt; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPushDebugGroup = procedure(source : GLenum; id : GLuint; length : GLsizei; const message_ : PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPopDebugGroup = procedure; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglObjectLabel = procedure(identifier : GLenum; name : GLuint; length : GLsizei; const label_ : PGLCHar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetObjectLabel = procedure(identifier : GLenum; name : GLuint; bufsize : GLsizei; length : PGLsizei; label_ : PGLCHar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglObjectPtrLabel = procedure(const ptr : Pointer; length : GLsizei; const label_ : PGLCHar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetObjectPtrLabel = procedure(const ptr : Pointer; bufSize : GLsizei; length : PGLsizei; label_ : PGLCHar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_clear_buffer_object + TglClearBufferData = procedure(target : GLenum; internalformat : GLenum; format : GLEnum; type_ : GLEnum; const data : Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearBufferSubData = procedure(target : GLenum; internalformat : GLenum; offset : GLintptr; size : GLsizeiptr; format : GLenum; type_ : GLenum; const data : Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearNamedBufferDataEXT = procedure(buffer : GLuint; internalformat : GLenum; format : GLEnum; type_ : GLEnum; const data : Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearNamedBufferSubDataEXT = procedure(buffer : GLuint; internalformat : GLenum; format : GLenum; type_ : GLenum; offset : GLsizeiptr; size : GLsizeiptr; const data : Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_compute_shader 1 + TglDispatchCompute = procedure(num_groups_x : GLuint; num_groups_y : GLuint; num_groups_z : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDispatchComputeIndirect = procedure(indirect : GLintptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_copy_image + TglCopyImageSubData = procedure(srcName : GLUInt; srcTarget : GLenum; srcLevel : GLint; srcX : GLint; srcY : GLint; srcZ : GLint; dstName : GLUInt; dstTarget : GLEnum; dstLevel : GLInt; dstX : GLInt; dstY : GLint; dstZ : GLint; srcWidth : GLsizei; srcHeight : GLsizei; srcDepth : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_debug_group + // ARB_debug_group reuses entry points from KHR_debug + + // GL_ARB_debug_label + // ARB_debug_label reuses entry points from KHR_debug + + // GL_ARB_debug_output2 + + // GL_ARB_ES3_compatibility + + // GL_ARB_explicit_uniform_location + + // GL_ARB_fragment_layer_viewport + + // GL_ARB_framebuffer_no_attachments + TglFramebufferParameteri = procedure(target : GLenum; pname : GLenum; param : GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFramebufferParameteriv = procedure(target : GLenum; pname : GLenum; params : PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedFramebufferParameteriEXT = procedure(framebuffer : GLUInt; pname : GLenum; param : GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedFramebufferParameterivEXT = procedure(framebuffer : GLUInt; pname : GLenum; param : GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_internalformat_query2 + TglGetInternalformati64v = procedure(target : GLenum; internalformat : GLenum; pname : GLenum; bufSize : GLsizei; params : PGLint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_invalidate_subdata + TglInvalidateTexSubImage = procedure(texture : GLuint; level : GLint; xoffset : GLint; yoffset : GLint; zoffset : GLint; width : GLsizei; height : GLsizei; depth : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglInvalidateTexImage = procedure(texture : GLuint; level : GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglInvalidateBufferSubData = procedure(buffer : GLuint; offset : GLintptr; length : GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglInvalidateBufferData = procedure(buffer : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglInvalidateFramebuffer = procedure(target : GLenum; numAttachments : GLsizei; const attachments : PGLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglInvalidateSubFramebuffer = procedure(target : GLenum; numAttachments : GLsizei; const attachments : PGLenum; x : GLint; y : GLint; width : GLsizei; height : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_multi_draw_indirect + TglMultiDrawArraysIndirect = procedure(mode : GLenum; const indirect : Pointer; drawcount : GLsizei; stride : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiDrawElementsIndirect = procedure(mode : GLenum; type_ : GLenum; const indirect : Pointer; drawcount : GLsizei; stride : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_program_interface_query + TglGetProgramInterfaceiv = procedure(program_ : GLUInt;programInterface : GLenum; pname : GLenum; params : PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramResourceIndex = function(program_ : GLUInt;programInterface : GLenum; const name : PGLchar) : GLUInt; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramResourceName = procedure(program_ : GLUInt;programInterface : GLenum; index : GLuint; bufSize : GLsizei; length : PGLsizei; name : PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramResourceiv = procedure(program_ : GLUInt;programInterface : GLenum; index : GLuint; propCount : GLsizei; const props : PGLenum; bufSize : GLsizei; length : PGLsizei; params : PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramResourceLocation = function(program_ : GLUInt;programInterface : GLenum; const name : PGLchar) : GLInt; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramResourceLocationIndex = function(program_ : GLUInt;programInterface : GLenum; const name : PGLchar) : GLInt; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_robust_buffer_access_behavior + + // GL_ARB_shader_image_size + + // GL_ARB_shader_storage_buffer_object + TglShaderStorageBlockBinding = procedure(program_ : GLuint; storageBlockIndex : GLuint; storageBlockBinding : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_stencil_texturing + + // GL_ARB_texture_buffer_range + TglTexBufferRange = procedure(target : GLenum; internalformat : GLenum; buffer : GLuint; offset :GLintptr; size : GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureBufferRangeEXT = procedure(texture : GLuint; target : GLenum; internalformat : GLenum; buffer : GLuint; offset : GLintptr; size : GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_texture_query_levels + + // GL_ARB_texture_storage_multisample + TglTexStorage2DMultisample = procedure(target : GLenum; samples : GLsizei; internalformat : GLenum; width : GLsizei; height : GLsizei; fixedsamplelocations : GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexStorage3DMultisample = procedure(target : GLenum; samples : GLsizei; internalformat : GLenum; width : GLsizei; height : GLsizei; depth : GLsizei; fixedsamplelocations : GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureStorage2DMultisampleEXT = procedure(texture : GLuint; target : GLenum; samples : GLsizei; internalformat : GLenum; width : GLsizei; height : GLsizei; fixedsamplelocations : GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureStorage3DMultisampleEXT = procedure(texture : GLuint; target : GLenum; samples : GLsizei; internalformat : GLenum; width : GLsizei; height : GLsizei; depth : GLsizei; fixedsamplelocations : GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL 4.4 + + TglBufferStorage = procedure(target : GLenum; size : GLsizeiptr; const data : pointer; flags : GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearTexImage = procedure(texture : GLuint; level : GLint; format : GLenum; _type : GLenum; const data : Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearTexSubImage = procedure(texture : GLuint; level : GLint; xoffset : GLint; yoffset : GLint; zoffset : GLint; width : GLsizei; height : GLsizei; depth : GLsizei; format : GLenum; _type : GLenum; const Data : Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindBuffersBase = procedure(target : GLenum; first : GLuint; count : GLsizei; const buffers : PGLUint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindBuffersRange = procedure(target : GLenum; first : GLuint; count : GLsizei; const buffers : PGLuint; const offsets : GLintptr; const sizes : GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindTextures = procedure(first : GLuint; count : GLsizei; const textures : PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindSamplers = procedure(first : GLuint; count : GLsizei; const samplers : PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindImageTextures = procedure(first : GLuint; count : GLsizei; const textures : PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindVertexBuffers = procedure(first : GLuint; count : GLsizei; const buffers : GLuint; const offsets : GLintptr; const strides : PGLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // END GL 4.4 + + + // GL_ARB_texture_view + TglTextureView = procedure(texture : GLuint; target : GLenum; origtexture : GLuint; internalformat : GLenum; minlevel : GLuint; numlevels : GLuint; minlayer : GLuint; numlayers : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_vertex_attrib_binding + TglBindVertexBuffer = procedure(bindingindex : GLuint; buffer : GLuint; offset : GLintptr; stride : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribFormat = procedure(attribindex : GLuint; size : GLInt; type_ : GLEnum; normalized : GLboolean; relativeoffset : GLUint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribIFormat = procedure(attribindex : GLuint; size : GLInt; type_ : GLEnum; relativeoffset : GLUint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribLFormat = procedure(attribindex : GLuint; size : GLInt; type_ : GLEnum; relativeoffset : GLUint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribBinding = procedure(attribindex : GLuint; bindingindex : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexBindingDivisor = procedure(bindingindex : GLuint; divisor : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexArrayBindVertexBufferEXT = procedure(vaobj : GLuint; bindingindex : GLuint; buffer : GLuint; offset : GLintptr; stride : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexArrayVertexAttribFormatEXT = procedure(vaobj : GLuint; attribindex : GLuint; size : GLInt; type_ : GLEnum; normalized : GLboolean; relativeoffset : GLUint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexArrayVertexAttribIFormatEXT = procedure(vaobj : GLuint; attribindex : GLuint; size : GLInt; type_ : GLEnum; relativeoffset : GLUint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexArrayVertexAttribLFormatEXT = procedure(vaobj : GLuint; attribindex : GLuint; size : GLInt; type_ : GLEnum; relativeoffset : GLUint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexArrayVertexAttribBindingEXT = procedure(vaobj : GLuint; attribindex : GLuint; bindingindex : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexArrayVertexBindingDivisorEXT = procedure(vaobj : GLuint; bindingindex : GLuint; divisor : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_robustness_isolation + + // + + // GL_ARB_cl_event + TglCreateSyncFromCLeventARB = function(context: p_cl_context; event: p_cl_event; flags: GLbitfield): GLsync; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_debug_output + TglDebugMessageControlARB = procedure(source: GLenum; type_: GLenum; severity: GLenum; count: GLsizei; const ids: PGLuint; enabled: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDebugMessageInsertARB = procedure(source: GLenum; type_: GLenum; id: GLuint; severity: GLenum; length: GLsizei; const buf: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDebugMessageCallbackARB = procedure(callback: TglDebugProcARB; const userParam: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetDebugMessageLogARB = function(count: GLuint; bufsize: GLsizei; sources: PGLenum; types: PGLenum; ids: PGLuint; severities: PGLenum; lengths: PGLsizei; messageLog: PGLchar): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ARB_robustness + TglGetGraphicsResetStatusARB = function(): GLenum; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnMapdvARB = procedure(target: GLenum; query: GLenum; bufSize: GLsizei; v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnMapfvARB = procedure(target: GLenum; query: GLenum; bufSize: GLsizei; v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnMapivARB = procedure(target: GLenum; query: GLenum; bufSize: GLsizei; v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnPixelMapfvARB = procedure(map: GLenum; bufSize: GLsizei; values: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnPixelMapuivARB = procedure(map: GLenum; bufSize: GLsizei; values: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnPixelMapusvARB = procedure(map: GLenum; bufSize: GLsizei; values: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnPolygonStippleARB = procedure(bufSize: GLsizei; pattern: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnColorTableARB = procedure(target: GLenum; format: GLenum; type_: GLenum; bufSize: GLsizei; table: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnConvolutionFilterARB = procedure(target: GLenum; format: GLenum; type_: GLenum; bufSize: GLsizei; image: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnSeparableFilterARB = procedure(target: GLenum; format: GLenum; type_: GLenum; rowBufSize: GLsizei; row: PGLvoid; columnBufSize: GLsizei; column: PGLvoid; span: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnHistogramARB = procedure(target: GLenum; reset: GLboolean; format: GLenum; type_: GLenum; bufSize: GLsizei; values: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnMinmaxARB = procedure(target: GLenum; reset: GLboolean; format: GLenum; type_: GLenum; bufSize: GLsizei; values: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnTexImageARB = procedure(target: GLenum; level: GLint; format: GLenum; type_: GLenum; bufSize: GLsizei; img: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReadnPixelsARB = procedure(x: GLint; y: GLint; width: GLsizei; height: GLsizei; format: GLenum; type_: GLenum; bufSize: GLsizei; data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnCompressedTexImageARB = procedure(target: GLenum; lod: GLint; bufSize: GLsizei; img: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnUniformfvARB = procedure(program_: GLuint; location: GLint; bufSize: GLsizei; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnUniformivARB = procedure(program_: GLuint; location: GLint; bufSize: GLsizei; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnUniformuivARB = procedure(program_: GLuint; location: GLint; bufSize: GLsizei; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetnUniformdvARB = procedure(program_: GLuint; location: GLint; bufSize: GLsizei; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ATI_draw_buffers + TglDrawBuffersATI = procedure(n: GLsizei; const bufs: PGLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ATI_element_array + TglElementPointerATI = procedure(_type: GLenum; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawElementArrayATI = procedure(mode: GLenum; count: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawRangeElementArrayATI = procedure(mode: GLenum; start: GLuint; _end: GLuint; count: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ATI_envmap_bumpmap + TglTexBumpParameterivATI = procedure(pname: GLenum; const param: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexBumpParameterfvATI = procedure(pname: GLenum; const param: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexBumpParameterivATI = procedure(pname: GLenum; param: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexBumpParameterfvATI = procedure(pname: GLenum; param: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ATI_fragment_shader + TglGenFragmentShadersATI = function(range: GLuint): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindFragmentShaderATI = procedure(id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteFragmentShaderATI = procedure(id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBeginFragmentShaderATI = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndFragmentShaderATI = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPassTexCoordATI = procedure(dst: GLuint; coord: GLuint; swizzle: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSampleMapATI = procedure(dst: GLuint; interp: GLuint; swizzle: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorFragmentOp1ATI = procedure(op: GLenum; dst: GLuint; dstMask: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorFragmentOp2ATI = procedure(op: GLenum; dst: GLuint; dstMask: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint; arg2: GLuint; arg2Rep: GLuint; arg2Mod: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorFragmentOp3ATI = procedure(op: GLenum; dst: GLuint; dstMask: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint; arg2: GLuint; arg2Rep: GLuint; arg2Mod: GLuint; arg3: GLuint; arg3Rep: GLuint; arg3Mod: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglAlphaFragmentOp1ATI = procedure(op: GLenum; dst: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglAlphaFragmentOp2ATI = procedure(op: GLenum; dst: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint; arg2: GLuint; arg2Rep: GLuint; arg2Mod: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglAlphaFragmentOp3ATI = procedure(op: GLenum; dst: GLuint; dstMod: GLuint; arg1: GLuint; arg1Rep: GLuint; arg1Mod: GLuint; arg2: GLuint; arg2Rep: GLuint; arg2Mod: GLuint; arg3: GLuint; arg3Rep: GLuint; arg3Mod: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSetFragmentShaderConstantATI = procedure(dst: GLuint; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ATI_map_object_buffer + TglMapObjectBufferATI = function(buffer: GLuint): PGLvoid; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUnmapObjectBufferATI = procedure(buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ATI_pn_triangles + TglPNTrianglesiATI = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPNTrianglesfATI = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ATI_separate_stencil + TglStencilOpSeparateATI = procedure(face: GLenum; sfail: GLenum; dpfail: GLenum; dppass: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStencilFuncSeparateATI = procedure(frontfunc: GLenum; backfunc: GLenum; ref: GLint; mask: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ATI_vertex_array_object + TglNewObjectBufferATI = function(size: GLsizei; const _pointer: PGLvoid; usage: GLenum): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsObjectBufferATI = function(buffer: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUpdateObjectBufferATI = procedure(buffer: GLuint; offset: GLuint; size: GLsizei; const _pointer: PGLvoid; preserve: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetObjectBufferfvATI = procedure(buffer: GLuint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetObjectBufferivATI = procedure(buffer: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFreeObjectBufferATI = procedure(buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglArrayObjectATI = procedure(_array: GLenum; size: GLint; _type: GLenum; stride: GLsizei; buffer: GLuint; offset: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetArrayObjectfvATI = procedure(_array: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetArrayObjectivATI = procedure(_array: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVariantArrayObjectATI = procedure(id: GLuint; _type: GLenum; stride: GLsizei; buffer: GLuint; offset: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVariantArrayObjectfvATI = procedure(id: GLuint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVariantArrayObjectivATI = procedure(id: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ATI_vertex_attrib_array_object + TglVertexAttribArrayObjectATI = procedure(index: GLuint; size: GLint; _type: GLenum; normalized: GLboolean; stride: GLsizei; buffer: GLuint; offset: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribArrayObjectfvATI = procedure(index: GLuint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribArrayObjectivATI = procedure(index: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_ATI_vertex_streams + TglVertexStream1sATI = procedure(stream: GLenum; x: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream1svATI = procedure(stream: GLenum; const coords: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream1iATI = procedure(stream: GLenum; x: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream1ivATI = procedure(stream: GLenum; const coords: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream1fATI = procedure(stream: GLenum; x: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream1fvATI = procedure(stream: GLenum; const coords: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream1dATI = procedure(stream: GLenum; x: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream1dvATI = procedure(stream: GLenum; const coords: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream2sATI = procedure(stream: GLenum; x: GLshort; y: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream2svATI = procedure(stream: GLenum; const coords: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream2iATI = procedure(stream: GLenum; x: GLint; y: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream2ivATI = procedure(stream: GLenum; const coords: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream2fATI = procedure(stream: GLenum; x: GLfloat; y: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream2fvATI = procedure(stream: GLenum; const coords: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream2dATI = procedure(stream: GLenum; x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream2dvATI = procedure(stream: GLenum; const coords: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream3sATI = procedure(stream: GLenum; x: GLshort; y: GLshort; z: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream3svATI = procedure(stream: GLenum; const coords: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream3iATI = procedure(stream: GLenum; x: GLint; y: GLint; z: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream3ivATI = procedure(stream: GLenum; const coords: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream3fATI = procedure(stream: GLenum; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream3fvATI = procedure(stream: GLenum; const coords: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream3dATI = procedure(stream: GLenum; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream3dvATI = procedure(stream: GLenum; const coords: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream4sATI = procedure(stream: GLenum; x: GLshort; y: GLshort; z: GLshort; w: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream4svATI = procedure(stream: GLenum; const coords: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream4iATI = procedure(stream: GLenum; x: GLint; y: GLint; z: GLint; w: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream4ivATI = procedure(stream: GLenum; const coords: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream4fATI = procedure(stream: GLenum; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream4fvATI = procedure(stream: GLenum; const coords: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream4dATI = procedure(stream: GLenum; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexStream4dvATI = procedure(stream: GLenum; const coords: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalStream3bATI = procedure(stream: GLenum; nx: GLbyte; ny: GLbyte; nz: GLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalStream3bvATI = procedure(stream: GLenum; const coords: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalStream3sATI = procedure(stream: GLenum; nx: GLshort; ny: GLshort; nz: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalStream3svATI = procedure(stream: GLenum; const coords: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalStream3iATI = procedure(stream: GLenum; nx: GLint; ny: GLint; nz: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalStream3ivATI = procedure(stream: GLenum; const coords: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalStream3fATI = procedure(stream: GLenum; nx: GLfloat; ny: GLfloat; nz: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalStream3fvATI = procedure(stream: GLenum; const coords: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalStream3dATI = procedure(stream: GLenum; nx: GLdouble; ny: GLdouble; nz: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalStream3dvATI = procedure(stream: GLenum; const coords: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClientActiveVertexStreamATI = procedure(stream: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexBlendEnviATI = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexBlendEnvfATI = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_AMD_performance_monitor + TglGetPerfMonitorGroupsAMD = procedure(numGroups: PGLint; groupsSize: GLsizei; groups: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPerfMonitorCountersAMD = procedure(group: GLuint; numCounters: PGLint; maxActiveCouters: PGLint; counterSize: GLsizei; counters: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPerfMonitorGroupStringAMD = procedure(group: GLuint; bufSize: GLsizei; length: PGLsizei; groupString: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPerfMonitorCounterStringAMD = procedure(group: GLuint; counter: GLuint; bufSize: GLsizei; length: PGLsizei; counterString: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPerfMonitorCounterInfoAMD = procedure(group: GLuint; counter: GLuint; pname: GLenum; data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenPerfMonitorsAMD = procedure(n: GLsizei; monitors: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeletePerfMonitorsAMD = procedure(n: GLsizei; monitors: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSelectPerfMonitorCountersAMD = procedure(monitor: GLuint; enable: GLboolean; group: GLuint; numCounters: GLint; counterList: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBeginPerfMonitorAMD = procedure(monitor: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndPerfMonitorAMD = procedure(monitor: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPerfMonitorCounterDataAMD = procedure(monitor: GLuint; pname: GLenum; dataSize: GLsizei; data: PGLuint; bytesWritten: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_AMD_vertex_shader_tesselator + TglTessellationFactorAMD = procedure(factor: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTessellationModeAMD = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_AMD_draw_buffers_blend + TglBlendFuncIndexedAMD = procedure(buf: GLuint; src: GLenum; dst: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendFuncSeparateIndexedAMD = procedure(buf: GLuint; srcRGB: GLenum; dstRGB: GLenum; srcAlpha: GLenum; dstAlpha: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendEquationIndexedAMD = procedure(buf: GLuint; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBlendEquationSeparateIndexedAMD = procedure(buf: GLuint; modeRGB: GLenum; modeAlpha: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_AMD_name_gen_delete + TglGenNamesAMD = procedure(identifier: GLenum; num: GLuint; names: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteNamesAMD = procedure(identifier: GLenum; num: GLuint; const names: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsNameAMD = function(identifier: GLenum; name: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_AMD_debug_output + TglDebugMessageEnableAMD = procedure(category: GLenum; severity: GLenum; count: GLsizei; const ids: PGLuint; enabled: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDebugMessageInsertAMD = procedure(category: GLenum; severity: GLenum; id: GLuint; length: GLsizei; const buf: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDebugMessageCallbackAMD = procedure(callback: TGLDebugProcAMD; userParam: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetDebugMessageLogAMD = function(count: GLuint; bufsize: GLsizei; categories: PGLenum; severities: PGLuint; ids: PGLuint; lengths: PGLsizei; message: PGLchar): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_blend_color + TglBlendColorEXT = procedure(red: GLclampf; green: GLclampf; blue: GLclampf; alpha: GLclampf); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_blend_func_separate + TglBlendFuncSeparateEXT = procedure(sfactorRGB: GLenum; dfactorRGB: GLenum; sfactorAlpha: GLenum; dfactorAlpha: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_blend_minmax + TglBlendEquationEXT = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_color_subtable + TglColorSubTableEXT = procedure(target: GLenum; start: GLsizei; count: GLsizei; format: GLenum; _type: GLenum; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyColorSubTableEXT = procedure(target: GLenum; start: GLsizei; x: GLint; y: GLint; width: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_compiled_vertex_array + TglLockArraysEXT = procedure(first: GLint; count: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUnlockArraysEXT = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_convolution + TglConvolutionFilter1DEXT = procedure(target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; _type: GLenum; const image: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglConvolutionFilter2DEXT = procedure(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; const image: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglConvolutionParameterfEXT = procedure(target: GLenum; pname: GLenum; params: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglConvolutionParameterfvEXT = procedure(target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglConvolutionParameteriEXT = procedure(target: GLenum; pname: GLenum; params: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglConvolutionParameterivEXT = procedure(target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyConvolutionFilter1DEXT = procedure(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyConvolutionFilter2DEXT = procedure(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetConvolutionFilterEXT = procedure(target: GLenum; format: GLenum; _type: GLenum; image: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetConvolutionParameterfvEXT = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetConvolutionParameterivEXT = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetSeparableFilterEXT = procedure(target: GLenum; format: GLenum; _type: GLenum; row: PGLvoid; column: PGLvoid; span: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSeparableFilter2DEXT = procedure(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; const row: PGLvoid; const column: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_coordinate_frame + TglTangent3bEXT = procedure(tx: GLbyte; ty: GLbyte; tz: GLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTangent3bvEXT = procedure(const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTangent3dEXT = procedure(tx: GLdouble; ty: GLdouble; tz: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTangent3dvEXT = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTangent3fEXT = procedure(tx: GLfloat; ty: GLfloat; tz: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTangent3fvEXT = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTangent3iEXT = procedure(tx: GLint; ty: GLint; tz: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTangent3ivEXT = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTangent3sEXT = procedure(tx: GLshort; ty: GLshort; tz: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTangent3svEXT = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBinormal3bEXT = procedure(bx: GLbyte; by: GLbyte; bz: GLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBinormal3bvEXT = procedure(const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBinormal3dEXT = procedure(bx: GLdouble; by: GLdouble; bz: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBinormal3dvEXT = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBinormal3fEXT = procedure(bx: GLfloat; by: GLfloat; bz: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBinormal3fvEXT = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBinormal3iEXT = procedure(bx: GLint; by: GLint; bz: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBinormal3ivEXT = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBinormal3sEXT = procedure(bx: GLshort; by: GLshort; bz: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBinormal3svEXT = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTangentPointerEXT = procedure(_type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBinormalPointerEXT = procedure(_type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_copy_texture + TglCopyTexImage1DEXT = procedure(target: GLenum; level: GLint; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; border: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTexImage2DEXT = procedure(target: GLenum; level: GLint; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei; border: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTexSubImage1DEXT = procedure(target: GLenum; level: GLint; xoffset: GLint; x: GLint; y: GLint; width: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTexSubImage2DEXT = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTexSubImage3DEXT = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_cull_vertex + TglCullParameterdvEXT = procedure(pname: GLenum; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCullParameterfvEXT = procedure(pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_draw_range_elements + TglDrawRangeElementsEXT = procedure(mode: GLenum; start: GLuint; _end: GLuint; count: GLsizei; _type: GLenum; const indices: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_fog_coord + TglFogCoordfEXT = procedure(coord: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoordfvEXT = procedure(const coord: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoorddEXT = procedure(coord: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoorddvEXT = procedure(const coord: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoordPointerEXT = procedure(_type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_framebuffer_object + TglIsRenderbufferEXT = function(renderbuffer: GLuint): Boolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindRenderbufferEXT = procedure(target: GLenum; renderbuffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteRenderbuffersEXT = procedure(n: GLsizei; const renderbuffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenRenderbuffersEXT = procedure(n: GLsizei; renderbuffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRenderbufferStorageEXT = procedure(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetRenderbufferParameterivEXT = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsFramebufferEXT = function(framebuffer: GLuint): Boolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindFramebufferEXT = procedure(target: GLenum; framebuffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteFramebuffersEXT = procedure(n: GLsizei; const framebuffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenFramebuffersEXT = procedure(n: GLsizei; framebuffers: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCheckFramebufferStatusEXT = function(target: GLenum): GLenum; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTexture1DEXT = procedure(target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTexture2DEXT = procedure(target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTexture3DEXT = procedure(target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint; zoffset: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferRenderbufferEXT = procedure(target: GLenum; attachment: GLenum; renderbuffertarget: GLenum; renderbuffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFramebufferAttachmentParameterivEXT = procedure(target: GLenum; attachment: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenerateMipmapEXT = procedure(target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_histogram + TglGetHistogramEXT = procedure(target: GLenum; reset: GLboolean; format: GLenum; _type: GLenum; values: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetHistogramParameterfvEXT = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetHistogramParameterivEXT = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMinmaxEXT = procedure(target: GLenum; reset: GLboolean; format: GLenum; _type: GLenum; values: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMinmaxParameterfvEXT = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMinmaxParameterivEXT = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglHistogramEXT = procedure(target: GLenum; width: GLsizei; internalformat: GLenum; sink: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMinmaxEXT = procedure(target: GLenum; internalformat: GLenum; sink: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglResetHistogramEXT = procedure(target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglResetMinmaxEXT = procedure(target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_index_func + TglIndexFuncEXT = procedure(func: GLenum; ref: GLclampf); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_index_material + TglIndexMaterialEXT = procedure(face: GLenum; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_light_texture + TglApplyTextureEXT = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureLightEXT = procedure(pname: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureMaterialEXT = procedure(face: GLenum; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_multi_draw_arrays + TglMultiDrawArraysEXT = procedure(mode: GLenum; const first: PGLint; const count: PGLsizei; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiDrawElementsEXT = procedure(mode: GLenum; const count: PGLsizei; _type: GLenum; const indices: PGLvoid; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_multisample + TglSampleMaskEXT = procedure(value: GLclampf; invert: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSamplePatternEXT = procedure(pattern: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_paletted_texture + TglColorTableEXT = procedure(target: GLenum; internalFormat: GLenum; width: GLsizei; format: GLenum; _type: GLenum; const table: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetColorTableEXT = procedure(target: GLenum; format: GLenum; _type: GLenum; data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetColorTableParameterivEXT = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetColorTableParameterfvEXT = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_pixel_transform + TglPixelTransformParameteriEXT = procedure(target: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelTransformParameterfEXT = procedure(target: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelTransformParameterivEXT = procedure(target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelTransformParameterfvEXT = procedure(target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_point_parameters + TglPointParameterfEXT = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPointParameterfvEXT = procedure(pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_polygon_offset + TglPolygonOffsetEXT = procedure(factor: GLfloat; bias: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_secondary_color + TglSecondaryColor3bEXT = procedure(red: GLbyte; green: GLbyte; blue: GLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3bvEXT = procedure(const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3dEXT = procedure(red: GLdouble; green: GLdouble; blue: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3dvEXT = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3fEXT = procedure(red: GLfloat; green: GLfloat; blue: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3fvEXT = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3iEXT = procedure(red: GLint; green: GLint; blue: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3ivEXT = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3sEXT = procedure(red: GLshort; green: GLshort; blue: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3svEXT = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3ubEXT = procedure(red: GLubyte; green: GLubyte; blue: GLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3ubvEXT = procedure(const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3uiEXT = procedure(red: GLuint; green: GLuint; blue: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3uivEXT = procedure(const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3usEXT = procedure(red: GLushort; green: GLushort; blue: GLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3usvEXT = procedure(const v: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColorPointerEXT = procedure(size: GLint; _type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_stencil_two_side + TglActiveStencilFaceEXT = procedure(face: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_subtexture + TglTexSubImage1DEXT = procedure(target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexSubImage2DEXT = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_texture3D + TglTexImage3DEXT = procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexSubImage3DEXT = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_texture_object + TglAreTexturesResidentEXT = function(n: GLsizei; const textures: PGLuint; residences: PGLboolean): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindTextureEXT = procedure(target: GLenum; texture: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteTexturesEXT = procedure(n: GLsizei; const textures: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenTexturesEXT = procedure(n: GLsizei; textures: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsTextureEXT = function(texture: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPrioritizeTexturesEXT = procedure(n: GLsizei; const textures: PGLuint; const priorities: PGLclampf); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_texture_perturb_normal + TglTextureNormalEXT = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_vertex_array + TglArrayElementEXT = procedure(i: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorPointerEXT = procedure(size: GLint; _type: GLenum; stride: GLsizei; count: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawArraysEXT = procedure(mode: GLenum; first: GLint; count: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEdgeFlagPointerEXT = procedure(stride: GLsizei; count: GLsizei; const _pointer: PGLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPointervEXT = procedure(pname: GLenum; params: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexPointerEXT = procedure(_type: GLenum; stride: GLsizei; count: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalPointerEXT = procedure(_type: GLenum; stride: GLsizei; count: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordPointerEXT = procedure(size: GLint; _type: GLenum; stride: GLsizei; count: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexPointerEXT = procedure(size: GLint; _type: GLenum; stride: GLsizei; count: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_vertex_shader + TglBeginVertexShaderEXT = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndVertexShaderEXT = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindVertexShaderEXT = procedure(id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenVertexShadersEXT = function(range: GLuint): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteVertexShaderEXT = procedure(id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglShaderOp1EXT = procedure(op: GLenum; res: GLuint; arg1: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglShaderOp2EXT = procedure(op: GLenum; res: GLuint; arg1: GLuint; arg2: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglShaderOp3EXT = procedure(op: GLenum; res: GLuint; arg1: GLuint; arg2: GLuint; arg3: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSwizzleEXT = procedure(res: GLuint; _in: GLuint; outX: GLenum; outY: GLenum; outZ: GLenum; outW: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWriteMaskEXT = procedure(res: GLuint; _in: GLuint; outX: GLenum; outY: GLenum; outZ: GLenum; outW: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglInsertComponentEXT = procedure(res: GLuint; src: GLuint; num: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglExtractComponentEXT = procedure(res: GLuint; src: GLuint; num: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenSymbolsEXT = function(datatype: GLenum; storagetype: GLenum; range: GLenum; components: GLuint): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSetInvariantEXT = procedure(id: GLuint; _type: GLenum; const addr: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSetLocalConstantEXT = procedure(id: GLuint; _type: GLenum; const addr: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVariantbvEXT = procedure(id: GLuint; const addr: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVariantsvEXT = procedure(id: GLuint; const addr: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVariantivEXT = procedure(id: GLuint; const addr: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVariantfvEXT = procedure(id: GLuint; const addr: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVariantdvEXT = procedure(id: GLuint; const addr: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVariantubvEXT = procedure(id: GLuint; const addr: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVariantusvEXT = procedure(id: GLuint; const addr: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVariantuivEXT = procedure(id: GLuint; const addr: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVariantPointerEXT = procedure(id: GLuint; _type: GLenum; stride: GLuint; const addr: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEnableVariantClientStateEXT = procedure(id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDisableVariantClientStateEXT = procedure(id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindLightParameterEXT = function(light: GLenum; value: GLenum): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindMaterialParameterEXT = function(face: GLenum; value: GLenum): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindTexGenParameterEXT = function(_unit: GLenum; coord: GLenum; value: GLenum): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindTextureUnitParameterEXT = function(_unit: GLenum; value: GLenum): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindParameterEXT = function(value: GLenum): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsVariantEnabledEXT = function(id: GLuint; cap: GLenum): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVariantBooleanvEXT = procedure(id: GLuint; value: GLenum; data: PGLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVariantIntegervEXT = procedure(id: GLuint; value: GLenum; data: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVariantFloatvEXT = procedure(id: GLuint; value: GLenum; data: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVariantPointervEXT = procedure(id: GLuint; value: GLenum; data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetInvariantBooleanvEXT = procedure(id: GLuint; value: GLenum; data: PGLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetInvariantIntegervEXT = procedure(id: GLuint; value: GLenum; data: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetInvariantFloatvEXT = procedure(id: GLuint; value: GLenum; data: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetLocalConstantBooleanvEXT = procedure(id: GLuint; value: GLenum; data: PGLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetLocalConstantIntegervEXT = procedure(id: GLuint; value: GLenum; data: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetLocalConstantFloatvEXT = procedure(id: GLuint; value: GLenum; data: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_vertex_weighting + TglVertexWeightfEXT = procedure(weight: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexWeightfvEXT = procedure(const weight: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexWeightPointerEXT = procedure(size: GLsizei; _type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_stencil_clear_tag + TglStencilClearTagEXT = procedure(stencilTagBits: GLsizei; stencilClearTag: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_framebuffer_blit + TglBlitFramebufferEXT = procedure(srcX0: GLint; srcY0: GLint; srcX1: GLint; srcY1: GLint; dstX0: GLint; dstY0: GLint; dstX1: GLint; dstY1: GLint; mask: GLbitfield; filter: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_framebuffer_multisample + TglRenderbufferStorageMultisampleEXT = procedure(target: GLenum; samples: GLsizei; internalformat: GLenum; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_timer_query + TglGetQueryObjecti64vEXT = procedure(id: GLuint; pname: GLenum; params: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetQueryObjectui64vEXT = procedure(id: GLuint; pname: GLenum; params: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_gpu_program_parameters + TglProgramEnvParameters4fvEXT = procedure(target: GLenum; index: GLuint; count: GLsizei; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramLocalParameters4fvEXT = procedure(target: GLenum; index: GLuint; count: GLsizei; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_bindable_uniform + TglUniformBufferEXT = procedure(_program: GLuint; location: GLint; buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformBufferSizeEXT = function(_program: GLuint; location: GLint): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformOffsetEXT = function(_program: GLuint; location: GLint): GLintptr; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_draw_buffers2 + TglColorMaskIndexedEXT = procedure(buf: GLuint; r: GLboolean; g: GLboolean; b: GLboolean; a: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetBooleanIndexedvEXT = procedure(value: GLenum; index: GLuint; data: PGLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetIntegerIndexedvEXT = procedure(value: GLenum; index: GLuint; data: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEnableIndexedEXT = procedure(target: GLenum; index: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDisableIndexedEXT = procedure(target: GLenum; index: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsEnabledIndexedEXT = function(target: GLenum; index: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_draw_instanced + TglDrawArraysInstancedEXT = procedure(mode: GLenum; first: GLint; count: GLsizei; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawElementsInstancedEXT = procedure(mode: GLenum; count: GLsizei; _type: GLenum; const indices: Pointer; primcount: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_geometry_shader4 + TglProgramParameteriEXT = procedure (_program: GLuint; pname: GLenum; value: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTextureEXT = procedure(target: GLenum; attachment: GLenum; texture: GLuint; level: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} +// TglFramebufferTextureLayerEXT = procedure(target: GLenum; attachment: GLenum; texture: GLuint; level: GLint; layer: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferTextureFaceEXT = procedure(target: GLenum; attachment: GLenum; texture: GLuint; level: GLint; face: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_gpu_shader4 + TglVertexAttribI1iEXT = procedure(index: GLuint; x: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI2iEXT = procedure(index: GLuint; x: GLint; y: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI3iEXT = procedure(index: GLuint; x: GLint; y: GLint; z: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4iEXT = procedure(index: GLuint; x: GLint; y: GLint; z: GLint; w: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI1uiEXT = procedure(index: GLuint; x: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI2uiEXT = procedure(index: GLuint; x: GLuint; y: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI3uiEXT = procedure(index: GLuint; x: GLuint; y: GLuint; z: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4uiEXT = procedure(index: GLuint; x: GLuint; y: GLuint; z: GLuint; w: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI1ivEXT = procedure(index: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI2ivEXT = procedure(index: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI3ivEXT = procedure(index: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4ivEXT = procedure(index: GLuint; const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI1uivEXT = procedure(index: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI2uivEXT = procedure(index: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI3uivEXT = procedure(index: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4uivEXT = procedure(index: GLuint; const v: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4bvEXT = procedure(index: GLuint; const v: PGLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4svEXT = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4ubvEXT = procedure(index: GLuint; const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribI4usvEXT = procedure(index: GLuint; const v: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribIPointerEXT = procedure(index: GLuint; size: GLint; _type: GLenum; stride: GLsizei; const _pointer: Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribIivEXT = procedure(index: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribIuivEXT = procedure(index: GLuint; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1uiEXT = procedure(location: GLint; v0: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2uiEXT = procedure(location: GLint; v0: GLuint; v1: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3uiEXT = procedure(location: GLint; v0: GLuint; v1: GLuint; v2: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4uiEXT = procedure(location: GLint; v0: GLuint; v1: GLuint; v2: GLuint; v3: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1uivEXT = procedure(location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2uivEXT = procedure(location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3uivEXT = procedure(location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4uivEXT = procedure(location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformuivEXT = procedure(_program: GLuint; location: GLint; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindFragDataLocationEXT = procedure(_program: GLuint; colorNumber: GLuint; const name: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFragDataLocationEXT = function(_program: GLuint; const name: PGLchar): GLint; + + // GL_EXT_texture_array + TglFramebufferTextureLayerEXT = procedure(target: GLenum; attachment: GLenum; texture: GLuint; level: GLint; layer: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_texture_buffer_object + TglTexBufferEXT = procedure(target: GLenum; internalformat: GLenum; buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_texture_integer + TglClearColorIiEXT = procedure(r: GLint; g: GLint; b: GLint; a: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearColorIuiEXT = procedure(r: GLuint; g: GLuint; b: GLuint; a: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexParameterIivEXT = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexParameterIuivEXT = procedure(target: GLenum; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexParameterIivEXT = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTexParameterIiuvEXT = procedure(target: GLenum; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_HP_image_transform + TglImageTransformParameteriHP = procedure(target: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglImageTransformParameterfHP = procedure(target: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglImageTransformParameterivHP = procedure(target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglImageTransformParameterfvHP = procedure(target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetImageTransformParameterivHP = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetImageTransformParameterfvHP = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_depth_bounds_test + TglDepthBoundsEXT = procedure(zmin: GLclampd; zmax: GLclampd); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_blend_equation_separate + TglBlendEquationSeparateEXT = procedure(modeRGB: GLenum; modeAlpha: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_transform_feedback + TglBeginTransformFeedbackEXT = procedure(primitiveMode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndTransformFeedbackEXT = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindBufferRangeEXT = procedure(target: GLenum; index_: GLuint; buffer: GLuint; offset: GLintptr; size: GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindBufferOffsetEXT = procedure(target: GLenum; index_: GLuint; buffer: GLuint; offset: GLintptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindBufferBaseEXT = procedure(target: GLenum; index_: GLuint; buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTransformFeedbackVaryingsEXT = procedure(program_: GLuint; count: GLsizei; const locations: PGLint; bufferMode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTransformFeedbackVaryingEXT = procedure(program_: GLuint; index_: GLuint; location: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_direct_state_access + TglClientAttribDefaultEXT = procedure(mask: GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPushClientAttribDefaultEXT = procedure(mask: GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixLoadfEXT = procedure(mode: GLenum; const m: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixLoaddEXT = procedure(mode: GLenum; const m: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixMultfEXT = procedure(mode: GLenum; const m: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixMultdEXT = procedure(mode: GLenum; const m: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixLoadIdentityEXT = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixRotatefEXT = procedure(mode: GLenum; angle: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixRotatedEXT = procedure(mode: GLenum; angle: GLdouble; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixScalefEXT = procedure(mode: GLenum; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixScaledEXT = procedure(mode: GLenum; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixTranslatefEXT = procedure(mode: GLenum; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixTranslatedEXT = procedure(mode: GLenum; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixFrustumEXT = procedure(mode: GLenum; left: GLdouble; right: GLdouble; bottom: GLdouble; top: GLdouble; zNear: GLdouble; zFar: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixOrthoEXT = procedure(mode: GLenum; left: GLdouble; right: GLdouble; bottom: GLdouble; top: GLdouble; zNear: GLdouble; zFar: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixPopEXT = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixPushEXT = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixLoadTransposefEXT = procedure(mode: GLenum; const m: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixLoadTransposedEXT = procedure(mode: GLenum; const m: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixMultTransposefEXT = procedure(mode: GLenum; const m: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMatrixMultTransposedEXT = procedure(mode: GLenum; const m: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureParameterfEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureParameterfvEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureParameteriEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureParameterivEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureImage1DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; format: GLenum; type_: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureImage2DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; format: GLenum; type_: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureSubImage1DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; type_: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureSubImage2DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; type_: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTextureImage1DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; border: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTextureImage2DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei; border: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTextureSubImage1DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; xoffset: GLint; x: GLint; y: GLint; width: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTextureSubImage2DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTextureImageEXT = procedure(texture: GLuint; target: GLenum; level: GLint; format: GLenum; type_: GLenum; pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTextureParameterfvEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTextureParameterivEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTextureLevelParameterfvEXT = procedure(texture: GLuint; target: GLenum; level: GLint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTextureLevelParameterivEXT = procedure(texture: GLuint; target: GLenum; level: GLint; pname: GLenum; params: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureImage3DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; format: GLenum; type_: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureSubImage3DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; type_: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyTextureSubImage3DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexParameterfEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexParameterfvEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexParameteriEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexParameterivEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexImage1DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; format: GLenum; type_: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexImage2DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; format: GLenum; type_: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexSubImage1DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; type_: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexSubImage2DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; type_: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyMultiTexImage1DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; border: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyMultiTexImage2DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei; border: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyMultiTexSubImage1DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; xoffset: GLint; x: GLint; y: GLint; width: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyMultiTexSubImage2DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexImageEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; format: GLenum; type_: GLenum; pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexParameterfvEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexParameterivEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexLevelParameterfvEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexLevelParameterivEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexImage3DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; format: GLenum; type_: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexSubImage3DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; type_: GLenum; const pixels:PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyMultiTexSubImage3DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindMultiTextureEXT = procedure(texunit: GLenum; target: GLenum; texture: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEnableClientStateIndexedEXT = procedure(array_: GLenum; index_: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDisableClientStateIndexedEXT = procedure(array_: GLenum; index_: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoordPointerEXT = procedure(texunit: GLenum; size: GLint; type_: GLenum; stride: GLsizei; const pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexEnvfEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexEnvfvEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexEnviEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexEnvivEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexGendEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; param: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexGendvEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; const params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexGenfEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexGenfvEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexGeniEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexGenivEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexEnvfvEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexEnvivEXT = procedure(texunit: GLenum; target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexGendvEXT = procedure(texunit: GLenum; coord: GLenum; pname: GLenum; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexGenfvEXT = procedure(texunit: GLenum; coord: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexGenivEXT = procedure(texunit: GLenum; coord: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFloatIndexedvEXT = procedure(target: GLenum; index_: GLuint; data: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetDoubleIndexedvEXT = procedure(target: GLenum; index_: GLuint; data: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPointerIndexedvEXT = procedure(target: GLenum; index_: GLuint; data: PPGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTextureImage3DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTextureImage2DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTextureImage1DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTextureSubImage3DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTextureSubImage2DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedTextureSubImage1DEXT = procedure(texture: GLuint; target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetCompressedTextureImageEXT = procedure(texture: GLuint; target: GLenum; lod: GLint; img: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedMultiTexImage3DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedMultiTexImage2DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedMultiTexImage1DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedMultiTexSubImage3DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedMultiTexSubImage2DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCompressedMultiTexSubImage1DEXT = procedure(texunit: GLenum; target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; imageSize: GLsizei; const bits: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetCompressedMultiTexImageEXT = procedure(texunit: GLenum; target: GLenum; lod: GLint; img: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramStringEXT = procedure(program_: GLuint; target: GLenum; format: GLenum; len: GLsizei; const string_: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramLocalParameter4dEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramLocalParameter4dvEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; const params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramLocalParameter4fEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramLocalParameter4fvEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedProgramLocalParameterdvEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedProgramLocalParameterfvEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedProgramivEXT = procedure(program_: GLuint; target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedProgramStringEXT = procedure(program_: GLuint; target: GLenum; pname: GLenum; string_: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramLocalParameters4fvEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; count: GLsizei; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramLocalParameterI4iEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; x: GLint; y: GLint; z: GLint; w: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramLocalParameterI4ivEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramLocalParametersI4ivEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; count: GLsizei; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramLocalParameterI4uiEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; x: GLuint; y: GLuint; z: GLuint; w: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramLocalParameterI4uivEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; const params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedProgramLocalParametersI4uivEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; count: GLsizei; const params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedProgramLocalParameterIivEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedProgramLocalParameterIuivEXT = procedure(program_: GLuint; target: GLenum; index_: GLuint; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureParameterIivEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureParameterIuivEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; const params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTextureParameterIivEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTextureParameterIuivEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexParameterIivEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexParameterIuivEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; const params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexParameterIivEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMultiTexParameterIuivEXT = procedure(texture: GLuint; target: GLenum; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1fEXT = procedure(program_: GLuint; location: GLint; v0: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2fEXT = procedure(program_: GLuint; location: GLint; v0: GLfloat; v1: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3fEXT = procedure(program_: GLuint; location: GLint; v0: GLfloat; v1: GLfloat; v2: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4fEXT = procedure(program_: GLuint; location: GLint; v0: GLfloat; v1: GLfloat; v2: GLfloat; v3: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1iEXT = procedure(program_: GLuint; location: GLint; v0: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2iEXT = procedure(program_: GLuint; location: GLint; v0: GLint; v1: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3iEXT = procedure(program_: GLuint; location: GLint; v0: GLint; v1: GLint; v2: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4iEXT = procedure(program_: GLuint; location: GLint; v0: GLint; v1: GLint; v2: GLint; v3: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1ivEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2ivEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3ivEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4ivEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2x3fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3x2fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2x4fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4x2fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3x4fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4x3fvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1uiEXT = procedure(program_: GLuint; location: GLint; v0: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2uiEXT = procedure(program_: GLuint; location: GLint; v0: GLuint; v1: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3uiEXT = procedure(program_: GLuint; location: GLint; v0: GLuint; v1: GLuint; v2: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4uiEXT = procedure(program_: GLuint; location: GLint; v0: GLuint; v1: GLuint; v2: GLuint; v3: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1uivEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2uivEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3uivEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4uivEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedBufferDataEXT = procedure(buffer: GLuint; size: GLsizei; const data: PGLvoid; usage: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedBufferSubDataEXT = procedure(buffer: GLuint; offset: GLintptr; size: GLsizeiptr; const data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapNamedBufferEXT = function(buffer: GLuint; access: GLenum): PGLvoid; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUnmapNamedBufferEXT = function(buffer: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapNamedBufferRangeEXT = function(buffer: GLuint; offset: GLintptr; length: GLsizeiptr; access: GLbitfield): PGLvoid; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFlushMappedNamedBufferRangeEXT = procedure(buffer: GLuint; offset: GLintptr; length: GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedCopyBufferSubDataEXT = procedure(readBuffer: GLuint; writeBuffer: GLuint; readOffset: GLintptr; writeOffset: GLintptr; size: GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedBufferParameterivEXT = procedure(buffer: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedBufferPointervEXT = procedure(buffer: GLuint; pname: GLenum; params: PPGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedBufferSubDataEXT = procedure(buffer: GLuint; offset: GLintptr; size: GLsizeiptr; data: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureBufferEXT = procedure(texture: GLuint; target: GLenum; internalformat: GLenum; buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexBufferEXT = procedure(texunit: GLenum; target: GLenum; interformat: GLenum; buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedRenderbufferStorageEXT = procedure(renderbuffer: GLuint; interformat: GLenum; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedRenderbufferParameterivEXT = procedure(renderbuffer: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCheckNamedFramebufferStatusEXT = function(framebuffer: GLuint; target: GLenum): GLenum; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedFramebufferTexture1DEXT = procedure(framebuffer: GLuint; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedFramebufferTexture2DEXT = procedure(framebuffer: GLuint; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedFramebufferTexture3DEXT = procedure(framebuffer: GLuint; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint; zoffset: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedFramebufferRenderbufferEXT = procedure(framebuffer: GLuint; attachment: GLenum; renderbuffertarget: GLenum; renderbuffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedFramebufferAttachmentParameterivEXT = procedure(framebuffer: GLuint; attachment: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenerateTextureMipmapEXT = procedure(texture: GLuint; target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenerateMultiTexMipmapEXT = procedure(texunit: GLenum; target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferDrawBufferEXT = procedure(framebuffer: GLuint; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferDrawBuffersEXT = procedure(framebuffer: GLuint; n: GLsizei; const bufs: PGLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFramebufferReadBufferEXT = procedure(framebuffer: GLuint; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFramebufferParameterivEXT = procedure(framebuffer: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedRenderbufferStorageMultisampleEXT = procedure(renderbuffer: GLuint; samples: GLsizei; internalformat: GLenum; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedRenderbufferStorageMultisampleCoverageEXT = procedure(renderbuffer: GLuint; coverageSamples: GLsizei; colorSamples: GLsizei; internalformat: GLenum; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedFramebufferTextureEXT = procedure(framebuffer: GLuint; attachment: GLenum; texture: GLuint; level: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedFramebufferTextureLayerEXT = procedure(framebuffer: GLuint; attachment: GLenum; texture: GLuint; level: GLint; layer: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNamedFramebufferTextureFaceEXT = procedure(framebuffer: GLuint; attachment: GLenum; texture: GLuint; level: GLint; face: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTextureRenderbufferEXT = procedure(texture: GLuint; target: GLenum; renderbuffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexRenderbufferEXT = procedure(texunit: GLenum; target: GLenum; renderbuffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1dEXT = procedure(program_: GLuint; location: GLint; x: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2dEXT = procedure(program_: GLuint; location: GLint; x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3dEXT = procedure(program_: GLuint; location: GLint; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4dEXT = procedure(program_: GLuint; location: GLint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2x3dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix2x4dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3x2dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix3x4dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4x2dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformMatrix4x3dvEXT = procedure(program_: GLuint; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_separate_shader_objects + TglUseShaderProgramEXT = procedure(_type: GLenum; _program: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglActiveProgramEXT = procedure(_program: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCreateShaderProgramEXT = function(_type: GLenum; const _string: PGLchar): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_shader_image_load_store + TglBindImageTextureEXT = procedure(index: GLuint; texture: GLuint; level: GLint; layered: GLboolean; layer: GLint; access: GLenum; format: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMemoryBarrierEXT = procedure(barriers: GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_EXT_vertex_attrib_64bit + TglVertexAttribL1dEXT = procedure(index: GLuint; x: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL2dEXT = procedure(index: GLuint; x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL3dEXT = procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL4dEXT = procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL1dvEXT = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL2dvEXT = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL3dvEXT = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL4dvEXT = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribLPointerEXT = procedure(index: GLuint; size: GLint; type_: GLenum; stride: GLsizei; const pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribLdvEXT = procedure(index: GLuint; pname: GLenum; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexArrayVertexAttribLOffsetEXT = procedure(vaobj: GLuint; buffer: GLuint; index: GLuint; size: GLint; type_: GLenum; stride: GLsizei; offset: GLintptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_IBM_multimode_draw_arrays + TglMultiModeDrawArraysIBM = procedure(mode: GLenum; const first: PGLint; const count: PGLsizei; primcount: GLsizei; modestride: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiModeDrawElementsIBM = procedure(const mode: PGLenum; const count: PGLsizei; _type: GLenum; const indices: PGLvoid; primcount: GLsizei; modestride: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_IBM_vertex_array_lists + TglColorPointerListIBM = procedure(size: GLint; _type: GLenum; stride: GLint; const _pointer: PGLvoid; ptrstride: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColorPointerListIBM = procedure(size: GLint; _type: GLenum; stride: GLint; const _pointer: PGLvoid; ptrstride: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEdgeFlagPointerListIBM = procedure(stride: GLint; const _pointer: PGLboolean; ptrstride: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoordPointerListIBM = procedure(_type: GLenum; stride: GLint; const _pointer: PGLvoid; ptrstride: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexPointerListIBM = procedure(_type: GLenum; stride: GLint; const _pointer: PGLvoid; ptrstride: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalPointerListIBM = procedure(_type: GLenum; stride: GLint; const _pointer: PGLvoid; ptrstride: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordPointerListIBM = procedure(size: GLint; _type: GLenum; stride: GLint; const _pointer: PGLvoid; ptrstride: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexPointerListIBM = procedure(size: GLint; _type: GLenum; stride: GLint; const _pointer: PGLvoid; ptrstride: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_INGR_blend_func_separate + TglBlendFuncSeparateINGR = procedure(sfactorRGB: GLenum; dfactorRGB: GLenum; sfactorAlpha: GLenum; dfactorAlpha: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_INTEL_parallel_arrays + TglVertexPointervINTEL = procedure(size: GLint; _type: GLenum; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalPointervINTEL = procedure(_type: GLenum; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorPointervINTEL = procedure(size: GLint; _type: GLenum; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordPointervINTEL = procedure(size: GLint; _type: GLenum; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_MESA_resize_buffers + TglResizeBuffersMESA = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_MESA_window_pos + TglWindowPos2dMESA = procedure(x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2dvMESA = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2fMESA = procedure(x: GLfloat; y: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2fvMESA = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2iMESA = procedure(x: GLint; y: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2ivMESA = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2sMESA = procedure(x: GLshort; y: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos2svMESA = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3dMESA = procedure(x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3dvMESA = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3fMESA = procedure(x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3fvMESA = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3iMESA = procedure(x: GLint; y: GLint; z: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3ivMESA = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3sMESA = procedure(x: GLshort; y: GLshort; z: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos3svMESA = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos4dMESA = procedure(x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos4dvMESA = procedure(const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos4fMESA = procedure(x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos4fvMESA = procedure(const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos4iMESA = procedure(x: GLint; y: GLint; z: GLint; w: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos4ivMESA = procedure(const v: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos4sMESA = procedure(x: GLshort; y: GLshort; z: GLshort; w: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWindowPos4svMESA = procedure(const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_evaluators + TglMapControlPointsNV = procedure(target: GLenum; index: GLuint; _type: GLenum; ustride: GLsizei; vstride: GLsizei; uorder: GLint; vorder: GLint; _packed: GLboolean; const points: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapParameterivNV = procedure(target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMapParameterfvNV = procedure(target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMapControlPointsNV = procedure(target: GLenum; index: GLuint; _type: GLenum; ustride: GLsizei; vstride: GLsizei; _packed: GLboolean; points: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMapParameterivNV = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMapParameterfvNV = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMapAttribParameterivNV = procedure(target: GLenum; index: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetMapAttribParameterfvNV = procedure(target: GLenum; index: GLuint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEvalMapsNV = procedure(target: GLenum; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_fence + TglDeleteFencesNV = procedure(n: GLsizei; const fences: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenFencesNV = procedure(n: GLsizei; fences: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsFenceNV = function(fence: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTestFenceNV = function(fence: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFenceivNV = procedure(fence: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFinishFenceNV = procedure(fence: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSetFenceNV = procedure(fence: GLuint; condition: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_fragment_program + TglProgramNamedParameter4fNV = procedure(id: GLuint; len: GLsizei; const name: PGLubyte; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramNamedParameter4dNV = procedure(id: GLuint; len: GLsizei; const name: PGLubyte; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramNamedParameter4fvNV = procedure(id: GLuint; len: GLsizei; const name: PGLubyte; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramNamedParameter4dvNV = procedure(id: GLuint; len: GLsizei; const name: PGLubyte; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramNamedParameterfvNV = procedure(id: GLuint; len: GLsizei; const name: PGLubyte; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramNamedParameterdvNV = procedure(id: GLuint; len: GLsizei; const name: PGLubyte; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_half_float + TglVertex2hNV = procedure(x: GLhalfNV; y: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex2hvNV = procedure(const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex3hNV = procedure(x: GLhalfNV; y: GLhalfNV; z: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex3hvNV = procedure(const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex4hNV = procedure(x: GLhalfNV; y: GLhalfNV; z: GLhalfNV; w: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertex4hvNV = procedure(const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3hNV = procedure(nx: GLhalfNV; ny: GLhalfNV; nz: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3hvNV = procedure(const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3hNV = procedure(red: GLhalfNV; green: GLhalfNV; blue: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3hvNV = procedure(const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4hNV = procedure(red: GLhalfNV; green: GLhalfNV; blue: GLhalfNV; alpha: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4hvNV = procedure(const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord1hNV = procedure(s: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord1hvNV = procedure(const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2hNV = procedure(s: GLhalfNV; t: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2hvNV = procedure(const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord3hNV = procedure(s: GLhalfNV; t: GLhalfNV; r: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord3hvNV = procedure(const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4hNV = procedure(s: GLhalfNV; t: GLhalfNV; r: GLhalfNV; q: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4hvNV = procedure(const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1hNV = procedure(target: GLenum; s: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord1hvNV = procedure(target: GLenum; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2hNV = procedure(target: GLenum; s: GLhalfNV; t: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord2hvNV = procedure(target: GLenum; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3hNV = procedure(target: GLenum; s: GLhalfNV; t: GLhalfNV; r: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord3hvNV = procedure(target: GLenum; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4hNV = procedure(target: GLenum; s: GLhalfNV; t: GLhalfNV; r: GLhalfNV; q: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMultiTexCoord4hvNV = procedure(target: GLenum; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoordhNV = procedure(fog: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoordhvNV = procedure(const fog: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3hNV = procedure(red: GLhalfNV; green: GLhalfNV; blue: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColor3hvNV = procedure(const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexWeighthNV = procedure(weight: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexWeighthvNV = procedure(const weight: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1hNV = procedure(index: GLuint; x: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1hvNV = procedure(index: GLuint; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2hNV = procedure(index: GLuint; x: GLhalfNV; y: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2hvNV = procedure(index: GLuint; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3hNV = procedure(index: GLuint; x: GLhalfNV; y: GLhalfNV; z: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3hvNV = procedure(index: GLuint; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4hNV = procedure(index: GLuint; x: GLhalfNV; y: GLhalfNV; z: GLhalfNV; w: GLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4hvNV = procedure(index: GLuint; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs1hvNV = procedure(index: GLuint; n: GLsizei; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs2hvNV = procedure(index: GLuint; n: GLsizei; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs3hvNV = procedure(index: GLuint; n: GLsizei; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs4hvNV = procedure(index: GLuint; n: GLsizei; const v: PGLhalfNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_occlusion_query + TglGenOcclusionQueriesNV = procedure(n: GLsizei; ids: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteOcclusionQueriesNV = procedure(n: GLsizei; const ids: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsOcclusionQueryNV = function(id: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBeginOcclusionQueryNV = procedure(id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndOcclusionQueryNV = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetOcclusionQueryivNV = procedure(id: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetOcclusionQueryuivNV = procedure(id: GLuint; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_pixel_data_range + TglPixelDataRangeNV = procedure(target: GLenum; length: GLsizei; _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFlushPixelDataRangeNV = procedure(target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_point_sprite + TglPointParameteriNV = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPointParameterivNV = procedure(pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_primitive_restart + TglPrimitiveRestartNV = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPrimitiveRestartIndexNV = procedure(index: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_register_combiners + TglCombinerParameterfvNV = procedure(pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCombinerParameterfNV = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCombinerParameterivNV = procedure(pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCombinerParameteriNV = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCombinerInputNV = procedure(stage: GLenum; portion: GLenum; variable: GLenum; input: GLenum; mapping: GLenum; componentUsage: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCombinerOutputNV = procedure(stage: GLenum; portion: GLenum; abOutput: GLenum; cdOutput: GLenum; sumOutput: GLenum; scale: GLenum; bias: GLenum; abDotProduct: GLboolean; cdDotProduct: GLboolean; muxSum: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFinalCombinerInputNV = procedure(variable: GLenum; input: GLenum; mapping: GLenum; componentUsage: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetCombinerInputParameterfvNV = procedure(stage: GLenum; portion: GLenum; variable: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetCombinerInputParameterivNV = procedure(stage: GLenum; portion: GLenum; variable: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetCombinerOutputParameterfvNV = procedure(stage: GLenum; portion: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetCombinerOutputParameterivNV = procedure(stage: GLenum; portion: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFinalCombinerInputParameterfvNV = procedure(variable: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFinalCombinerInputParameterivNV = procedure(variable: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_register_combiners2 + TglCombinerStageParameterfvNV = procedure(stage: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetCombinerStageParameterfvNV = procedure(stage: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_vertex_array_range + TglFlushVertexArrayRangeNV = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexArrayRangeNV = procedure(length: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_vertex_program + TglAreProgramsResidentNV = function(n: GLsizei; const programs: PGLuint; residences: PGLboolean): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindProgramNV = procedure(target: GLenum; id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteProgramsNV = procedure(n: GLsizei; const programs: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglExecuteProgramNV = procedure(target: GLenum; id: GLuint; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenProgramsNV = procedure(n: GLsizei; programs: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramParameterdvNV = procedure(target: GLenum; index: GLuint; pname: GLenum; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramParameterfvNV = procedure(target: GLenum; index: GLuint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramivNV = procedure(id: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramStringNV = procedure(id: GLuint; pname: GLenum; _program: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTrackMatrixivNV = procedure(target: GLenum; address: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribdvNV = procedure(index: GLuint; pname: GLenum; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribfvNV = procedure(index: GLuint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribivNV = procedure(index: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribPointervNV = procedure(index: GLuint; pname: GLenum; _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsProgramNV = function(id: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLoadProgramNV = procedure(target: GLenum; id: GLuint; len: GLsizei; const _program: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramParameter4dNV = procedure(target: GLenum; index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramParameter4dvNV = procedure(target: GLenum; index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramParameter4fNV = procedure(target: GLenum; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramParameter4fvNV = procedure(target: GLenum; index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramParameters4dvNV = procedure(target: GLenum; index: GLuint; count: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramParameters4fvNV = procedure(target: GLenum; index: GLuint; count: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglRequestResidentProgramsNV = procedure(n: GLsizei; const programs: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTrackMatrixNV = procedure(target: GLenum; address: GLuint; matrix: GLenum; transform: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribPointerNV = procedure(index: GLuint; fsize: GLint; _type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1dNV = procedure(index: GLuint; x: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1dvNV = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1fNV = procedure(index: GLuint; x: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1fvNV = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1sNV = procedure(index: GLuint; x: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib1svNV = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2dNV = procedure(index: GLuint; x: GLdouble; y: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2dvNV = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2fNV = procedure(index: GLuint; x: GLfloat; y: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2fvNV = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2sNV = procedure(index: GLuint; x: GLshort; y: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib2svNV = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3dNV = procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3dvNV = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3fNV = procedure(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3fvNV = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3sNV = procedure(index: GLuint; x: GLshort; y: GLshort; z: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib3svNV = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4dNV = procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4dvNV = procedure(index: GLuint; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4fNV = procedure(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4fvNV = procedure(index: GLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4sNV = procedure(index: GLuint; x: GLshort; y: GLshort; z: GLshort; w: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4svNV = procedure(index: GLuint; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4ubNV = procedure(index: GLuint; x: GLubyte; y: GLubyte; z: GLubyte; w: GLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttrib4ubvNV = procedure(index: GLuint; const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs1dvNV = procedure(index: GLuint; count: GLsizei; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs1fvNV = procedure(index: GLuint; count: GLsizei; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs1svNV = procedure(index: GLuint; count: GLsizei; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs2dvNV = procedure(index: GLuint; count: GLsizei; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs2fvNV = procedure(index: GLuint; count: GLsizei; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs2svNV = procedure(index: GLuint; count: GLsizei; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs3dvNV = procedure(index: GLuint; count: GLsizei; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs3fvNV = procedure(index: GLuint; count: GLsizei; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs3svNV = procedure(index: GLuint; count: GLsizei; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs4dvNV = procedure(index: GLuint; count: GLsizei; const v: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs4fvNV = procedure(index: GLuint; count: GLsizei; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs4svNV = procedure(index: GLuint; count: GLsizei; const v: PGLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribs4ubvNV = procedure(index: GLuint; count: GLsizei; const v: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_depth_buffer_float + TglDepthRangedNV = procedure(n: GLdouble; f: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglClearDepthdNV = procedure(d: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDepthBoundsdNV = procedure(zmin: GLdouble; zmax: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_framebuffer_multisample_coverage + TglRenderbufferStorageMultsampleCoverageNV = procedure(target: GLenum; coverageSamples: GLsizei; colorSamples: GLsizei; internalformat: GLenum; width: GLsizei; height: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_geometry_program4 + TglProgramVertexLimitNV = procedure(target: GLenum; limit: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_gpu_program4 + TglProgramLocalParameterI4iNV = procedure(target: GLenum; index: GLuint; x: GLint; y: GLint; z: GLint; w: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramLocalParameterI4ivNV = procedure(target: GLenum; index: GLuint; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramLocalParametersI4ivNV = procedure(target: GLenum; index: GLuint; count: GLsizei; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramLocalParameterI4uiNV = procedure(target: GLenum; index: GLuint; x: GLuint; y: GLuint; z: GLuint; w: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramLocalParameterI4uivNV = procedure(target: GLenum; index: GLuint; const params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramLocalParametersI4uivNV = procedure(target: GLenum; index: GLuint; count: GLsizei; const params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramEnvParameterI4iNV = procedure(target: GLenum; index: GLuint; x: GLint; y: GLint; z: GLint; w: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramEnvParameterI4ivNV = procedure(target: GLenum; index: GLuint; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramEnvParametersI4ivNV = procedure(target: GLenum; index: GLuint; count: GLsizei; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramEnvParameterI4uiNV = procedure(target: GLenum; index: GLuint; x: GLuint; y: GLuint; z: GLuint; w: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramEnvParameterI4uivNV = procedure(target: GLenum; index: GLuint; const params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramEnvParametersI4uivNV = procedure(target: GLenum; index: GLuint; count: GLsizei; const params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramLocalParameterIivNV = procedure(target: GLenum; index: GLuint; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramLocalParameterIuivNV = procedure(target: GLenum; index: GLuint; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramEnvParameterIivNV = procedure(target: GLenum; index: GLuint; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramEnvParameterIuivNV = procedure(target: GLenum; index: GLuint; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_parameter_buffer_object + TglProgramBufferParametersfvNV = procedure(target: GLenum; buffer: GLuint; index: GLuint; count: GLsizei; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramBufferParametersIivNV = procedure(target: GLenum; buffer: GLuint; index: GLuint; count: GLsizei; const params: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramBufferParametersIuivNV = procedure(target: GLenum; buffer: GLuint; index: GLuint; count: GLuint; const params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_transform_feedback + TglBeginTransformFeedbackNV = procedure(primitiveMode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndTransformFeedbackNV = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTransformFeedbackAttribsNV = procedure(count: GLsizei; const attribs: GLint; bufferMode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindBufferRangeNV = procedure(target: GLenum; index: GLuint; buffer: GLuint; offset: GLintptr; size: GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindBufferOffsetNV = procedure(target: GLenum; index: GLuint; buffer: GLuint; offset: GLintptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindBufferBaseNV = procedure(target: GLenum; index: GLuint; buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTransformFeedbackVaryingsNV = procedure(program_: GLuint; count: GLsizei; const locations: PGLint; bufferMode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglActiveVaryingNV = procedure(program_: GLuint; const name: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVaryingLocationNV = function(program_: GLuint; const name: PGLchar): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetActiveVaryingNV = procedure(program_: GLuint; index: GLuint; bufSize: GLsizei; length: PGLsizei; size: PGLsizei; _type: PGLenum; name: PGLchar); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTransformFeedbackVaryingNV = procedure(program_: GLuint; index: GLuint; location: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTransformFeedbackStreamAttribsNV = procedure(count: GLsizei; const attribs: PGLint; nbuffers: GLsizei; const bufstreams: PGLint; bufferMode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_conditional_render + TglBeginConditionalRenderNV = procedure(id: GLuint; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndConditionalRenderNV = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_present_video + TglPresentFrameKeyedNV = procedure(video_slot: GLuint; minPresentTime: GLuint64EXT; beginPresentTimeId: GLuint; presentDuratioId: GLuint; type_: GLenum; target0: GLenum; fill0: GLuint; key0: GLuint; target1: GLenum; fill1: GLuint; key1: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPresentFrameDualFillNV = procedure(video_slot: GLuint; minPresentTime: GLuint64EXT; beginPresentTimeId: GLuint; presentDurationId: GLuint; type_: GLenum; target0: GLenum; fill0: GLuint; target1: GLenum; fill1: GLuint; target2: GLenum; fill2: GLuint; target3: GLenum; fill3: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVideoivNV = procedure(video_slot: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVideouivNV = procedure(video_slot: GLuint; pname: GLenum; params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVideoi64vNV = procedure(video_slot: GLuint; pname: GLenum; params: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVideoui64vNV = procedure(video_slot: GLuint; pname: GLenum; params: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} +// TglVideoParameterivNV = procedure(video_slot: GLuint; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_explicit_multisample + TglGetMultisamplefvNV = procedure (pname: GLenum; index: GLuint; val: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSampleMaskIndexedNV = procedure (index: GLuint; mask: GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexRenderbufferNV = procedure (target: GLenum; renderbuffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_transform_feedback2 + TglBindTransformFeedbackNV = procedure(target: GLenum; id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteTransformFeedbacksNV = procedure(n: GLsizei; ids: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenTransformFeedbacksNV = procedure(n: GLsizei; ids: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsTransformFeedbackNV = function (id: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPauseTransformFeedbackNV = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglResumeTransformFeedbackNV = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDrawTransformFeedbackNV = procedure(mode: GLenum; id: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_video_capture + TglBeginVideoCaptureNV = procedure(video_capture_slot: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindVideoCaptureStreamBufferNV = procedure(video_capture_slot: GLuint; stream: GLuint; frame_region: GLenum; offset: GLintptrARB); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglBindVideoCaptureStreamTextureNV = procedure(video_capture_slot: GLuint; stream: GLuint; frame_region: GLenum; target: GLenum; texture: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEndVideoCaptureNV = procedure(video_capture_slot: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVideoCaptureivNV = procedure(video_capture_slot: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVideoCaptureStreamivNV = procedure(video_capture_slot: GLuint; stream: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVideoCaptureStreamfvNV = procedure(video_capture_slot: GLuint; stream: GLuint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVideoCaptureStreamdvNV = procedure(video_capture_slot: GLuint; stream: GLuint; pname: GLenum; params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVideoCaptureNV = function(video_capture_slot: GLuint; sequence_num: PGLuint; capture_time: PGLuint64EXT): GLenum; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVideoCaptureStreamParameterivNV = procedure(video_capture_slot: GLuint; stream: GLuint; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVideoCaptureStreamParameterfvNV = procedure(video_capture_slot: GLuint; stream: GLuint; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVideoCaptureStreamParameterdvNV = procedure(video_capture_slot: GLuint; stream: GLuint; pname: GLenum; const params: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_copy_image + TglCopyImageSubDataNV = procedure(srcName: GLuint; srcTarget: GLenum; srcLevel: GLint; srcX: GLint; srcY: GLint; srcZ: GLint; dstName: GLuint; dstTarget: GLenum; dstLevel: GLint; dstX: GLint; dstY: GLint; dstZ: GLint; width: GLsizei; height: GLsizei; depth: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_shader_buffer_load + TglMakeBufferResidentNV = procedure(target: GLenum; access: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMakeBufferNonResidentNV = procedure(target: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsBufferResidentNV = function(target: GLenum): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMakeNamedBufferResidentNV = procedure(buffer: GLuint; access: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMakeNamedBufferNonResidentNV = procedure(buffer: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsNamedBufferResidentNV = function(buffer: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetBufferParameterui64vNV = procedure(target: GLenum; pname: GLenum; params: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetNamedBufferParameterui64vNV = procedure(buffer: GLuint; pname: GLenum; params: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetIntegerui64vNV = procedure(value: GLenum; result: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformui64NV = procedure(location: GLint; value: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformui64vNV = procedure(location: GLint; count: GLsizei; const value: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformui64vNV = procedure(_program: GLuint; location: GLint; params: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformui64NV = procedure(_program: GLuint; location: GLint; value: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformui64vNV = procedure(_program: GLuint; location: GLint; count: GLsizei; const value: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_vertex_buffer_unified_memory + TglBufferAddressRangeNV = procedure(pname: GLenum; index: GLuint; adress: GLuint64EXT; length: GLsizeiptr); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexFormatNV = procedure(size: GLint; _type: GLenum; stride: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormalFormatNV = procedure(_type: GLenum; stride: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorFormatNV = procedure(size: GLint; _type: GLenum; stride: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIndexFormatNV = procedure(_type: GLenum; stride: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoordFormatNV = procedure(size: GLint; _type: GLenum; stride: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglEdgeFlagFormatNV = procedure(stride: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSecondaryColorFormatNV = procedure(size: GLint; _type: GLenum; stride: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFogCoordFormatNV = procedure(_type: GLenum; stride: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribFormatNV = procedure(index: GLuint; size: GLint; _type: GLenum; normalized: GLboolean; stride: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribIFormatNV = procedure(index: GLuint; size: GLint; _type: GLenum; stride: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetIntegerui64i_vNV = procedure(value: GLenum; index: GLuint; Result: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_gpu_program5 + TglProgramSubroutineParametersuivNV = procedure(target: GLenum; count: GLsizei; const params: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetProgramSubroutineParameteruivNV = procedure(target: GLenum; index: GLuint; param: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_gpu_shader5 + TglUniform1i64NV = procedure(location: GLint; x: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2i64NV = procedure(location: GLint; x: GLint64EXT; y: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3i64NV = procedure(location: GLint; x: GLint64EXT; y: GLint64EXT; z: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4i64NV = procedure(location: GLint; x: GLint64EXT; y: GLint64EXT; z: GLint64EXT; w: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1i64vNV = procedure(location: GLint; count: GLsizei; const value: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2i64vNV = procedure(location: GLint; count: GLsizei; const value: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3i64vNV = procedure(location: GLint; count: GLsizei; const value: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4i64vNV = procedure(location: GLint; count: GLsizei; const value: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1ui64NV = procedure(location: GLint; x: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2ui64NV = procedure(location: GLint; x: GLuint64EXT; y: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3ui64NV = procedure(location: GLint; x: GLuint64EXT; y: GLuint64EXT; z: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4ui64NV = procedure(location: GLint; x: GLuint64EXT; y: GLuint64EXT; z: GLuint64EXT; w: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform1ui64vNV = procedure(location: GLint; count: GLsizei; const value: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform2ui64vNV = procedure(location: GLint; count: GLsizei; const value: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform3ui64vNV = procedure(location: GLint; count: GLsizei; const value: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniform4ui64vNV = procedure(location: GLint; count: GLsizei; const value: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetUniformi64vNV = procedure(program_: GLuint; location: GLint; params: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1i64NV = procedure(program_: GLuint; location: GLint; x: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2i64NV = procedure(program_: GLuint; location: GLint; x: GLint64EXT; y: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3i64NV = procedure(program_: GLuint; location: GLint; x: GLint64EXT; y: GLint64EXT; z: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4i64NV = procedure(program_: GLuint; location: GLint; x: GLint64EXT; y: GLint64EXT; z: GLint64EXT; w: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1i64vNV = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2i64vNV = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3i64vNV = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4i64vNV = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1ui64NV = procedure(program_: GLuint; location: GLint; x: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2ui64NV = procedure(program_: GLuint; location: GLint; x: GLuint64EXT; y: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3ui64NV = procedure(program_: GLuint; location: GLint; x: GLuint64EXT; y: GLuint64EXT; z: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4ui64NV = procedure(program_: GLuint; location: GLint; x: GLuint64EXT; y: GLuint64EXT; z: GLuint64EXT; w: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform1ui64vNV = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform2ui64vNV = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform3ui64vNV = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniform4ui64vNV = procedure(program_: GLuint; location: GLint; count: GLsizei; const value: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_vertex_attrib_integer_64bit + TglVertexAttribL1i64NV = procedure(index: GLuint; x: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL2i64NV = procedure(index: GLuint; x: GLint64EXT; y: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL3i64NV = procedure(index: GLuint; x: GLint64EXT; y: GLint64EXT; z: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL4i64NV = procedure(index: GLuint; x: GLint64EXT; y: GLint64EXT; z: GLint64EXT; w: GLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL1i64vNV = procedure(index: GLuint; const v: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL2i64vNV = procedure(index: GLuint; const v: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL3i64vNV = procedure(index: GLuint; const v: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL4i64vNV = procedure(index: GLuint; const v: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL1ui64NV = procedure(index: GLuint; x: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL2ui64NV = procedure(index: GLuint; x: GLuint64EXT; y: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL3ui64NV = procedure(index: GLuint; x: GLuint64EXT; y: GLuint64EXT; z: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL4ui64NV = procedure(index: GLuint; x: GLuint64EXT; y: GLuint64EXT; z: GLuint64EXT; w: GLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL1ui64vNV = procedure(index: GLuint; const v: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL2ui64vNV = procedure(index: GLuint; const v: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL3ui64vNV = procedure(index: GLuint; const v: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribL4ui64vNV = procedure(index: GLuint; const v: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribLi64vNV = procedure(index: GLuint; pname: GLenum; params: PGLint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetVertexAttribLui64vNV = procedure(index: GLuint; pname: GLenum; params: PGLuint64EXT); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVertexAttribLFormatNV = procedure(index: GLuint; size: GLint; type_: GLenum; stride: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_vdpau_interop + TglVDPAUInitNV = procedure(const vdpDevice: PGLvoid; const getProcAddress: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVDPAUFiniNV = procedure; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVDPAURegisterVideoSurfaceNV = function(vdpSurface: PGLvoid; target: GLenum; numTextureNames: GLsizei; const textureNames: PGLuint): GLvdpauSurfaceNV; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVDPAURegisterOutputSurfaceNV = function(vdpSurface: PGLvoid; target: GLenum; numTextureNames: GLsizei; const textureNames: PGLuint): GLvdpauSurfaceNV; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVDPAUIsSurfaceNV = procedure(surface: GLvdpauSurfaceNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVDPAUUnregisterSurfaceNV = procedure(surface: GLvdpauSurfaceNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVDPAUGetSurfaceivNV = procedure(surface: GLvdpauSurfaceNV; pname: GLenum; bufSize: GLsizei; length: PGLsizei; values: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVDPAUSurfaceAccessNV = procedure(surface: GLvdpauSurfaceNV; access: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVDPAUMapSurfacesNV = procedure(numSurfaces: GLsizei; const surfaces: PGLvdpauSurfaceNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglVDPAUUnmapSurfacesNV = procedure(numSurface: GLsizei; const surfaces: PGLvdpauSurfaceNV); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_texture_barrier + TglTextureBarrierNV = procedure; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // (4.3) + // GL_NV_path_rendering + TglGenPathsNV = function(range : GLsizei) : GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeletePathsNV = procedure(path : GLUInt; range : GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsPathNV = function(path : GLUInt) : GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathCommandsNV = procedure(path : GLUInt; numCommands : GLsizei; const commands : PGLubyte; numCoords : GLsizei; coordType : GLenum; const coords : PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathCoordsNV = procedure(path : GLUInt; numCoords : GLSizei; coordType : GLenum; const coords : PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathSubCommandsNV = procedure(path : GLUInt; commandStart : GLsizei; commandsToDelete : GLsizei; numCommands : GLsizei; const commands : PGLubyte; numCoords : GLSizei; coordType : GLenum; const coords : PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathSubCoordsNV = procedure(path : GLUInt; coordStart : GLsizei; numCoords : GLSizei; coordType : GLenum; const coords : PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathStringNV = procedure(path : GLUInt; format : GLenum; length : GLsizei; const pathString : PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathGlyphsNV = procedure(firstPathName : GLuint; fontTarget : GLenum; const fontName : PGLvoid; fontStyle : GLbitfield; numGlyphs : GLsizei; type_ : GLenum; const charcodes : PGLvoid; handleMissingGlyphs : GLenum; pathParameterTemplate : GLUInt; emScale : GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathGlyphRangeNV = procedure(firstPathName : GLuint; fontTarget : GLenum; const fontName : PGLvoid; fontStyle : GLbitfield; firstGlyph : GLuint; numGlyphs : GLsizei; handleMissingGlyphs : GLenum; pathParameterTemplate : GLUInt; emScale : GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglWeightPathsNV = procedure(resultPath : GLUInt; numPaths : GLSizei; const paths : PGLuint; const weights : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyPathNV = procedure(resultPath : GLUInt; srcPath : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglInterpolatePathsNV = procedure(resultPath : GLUInt; pathA : GLUInt; pathB : GLUInt; weight : GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTransformPathNV = procedure(resultPath : GLUInt; srcPath : GLuint; transformType : GLenum; const transformValues : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathParameterivNV = procedure(path : GLUInt; pname : GLEnum; const value : PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathParameteriNV = procedure(path : GLUInt; pname : GLEnum; value : GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathParameterfvNV = procedure(path : GLUInt; pname : GLEnum; const value : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathParameterfNV = procedure(path : GLUInt; pname : GLEnum; value : GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathDashArrayNV = procedure(path : GLUInt; dashCount : GLsizei; const dashArray : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathStencilFuncNV = procedure(func : GLenum; ref : GLint; mask : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathStencilDepthOffsetNV = procedure(factor : GLfloat; units : GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStencilFillPathNV = procedure(path : GLUInt; fillMode : GLenum; mask : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStencilStrokePathNV = procedure(path : GLUInt; reference : GLint; mask : GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStencilFillPathInstancedNV = procedure(numPaths : GLSizei; pathNameType : GLenum; const paths : PGLvoid; pathBase : GLUInt; fillMode : GLenum; mask : GLuint; transformType : GLenum; const transformValues : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStencilStrokePathInstancedNV = procedure(numPaths : GLSizei; pathNameType : GLenum; const paths : PGLvoid; pathBase : GLUInt; reference : GLint; mask : GLuint; transformType : GLenum; const transformValues : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathCoverDepthFuncNV = procedure(func : GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathColorGenNV = procedure(color : GLenum; genMode : GLenum; colorFormat : GLenum; const coeffs : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathTexGenNV = procedure(texCoordSet : GLenum; genMode : GLenum; components : GLint; const coeffs : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPathFogGenNV = procedure(genMode : GLEnum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCoverFillPathNV = procedure(path : GLUInt; coverMode : GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCoverStrokePathNV = procedure(path : GLUInt; coverMode : GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCoverFillPathInstancedNV = procedure(numPaths : GLSizei; pathNameType : GLenum; const paths : PGLvoid; pathBase : GLUInt; coverMode : GLenum; transformType : GLenum; const transformValues : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCoverStrokePathInstancedNV = procedure(numPaths : GLSizei; pathNameType : GLenum; const paths : PGLvoid; pathBase : GLUInt; coverMode : GLenum; transformType : GLenum; const transformValues : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathParameterivNV = procedure(path : GLUInt; pname : GLEnum; value : PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathParameterfvNV = procedure(path : GLUInt; pname : GLEnum; value : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathCommandsNV = procedure(path : GLUInt; commands : PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathCoordsNV = procedure(path : GLUInt; coords : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathDashArrayNV = procedure(path : GLUInt; dashArray : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathMetricsNV = procedure(metricQueryMask : GLbitfield; numPaths : GLSizei; pathNameType : GLenum; const paths : PGLvoid; pathBase : GLUInt; stride : GLsizei; metrics : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathMetricRangeNV = procedure(metricQueryMask : GLbitfield; firstPathName : GLuint; numPaths : GLSizei; stride : GLsizei; metrics : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathSpacingNV = procedure(pathListMode : GLenum; numPaths : GLSizei; pathNameType : GLenum; const paths : PGLvoid; pathBase : GLUInt; advanceScale : GLfloat; kerningScale : GLfloat; transformType : GLenum; returnedSpacing : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathColorGenivNV = procedure(color : GLenum; pname : GLEnum; value : PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathColorGenfvNV = procedure(color : GLenum; pname : GLEnum; value : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathTexGenivNV = procedure(texCoordSet : GLenum; pname : GLEnum; value : PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathTexGenfvNV = procedure(texCoordSet : GLenum; pname : GLEnum; value : PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsPointInFillPathNV = function(path : GLUInt; mask : GLuint; x : GLfloat; y : GLfloat) : GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsPointInStrokePathNV = function (path : GLUInt; x : GLfloat; y : GLfloat) : GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPathLengthNV = function(path : GLUInt; startSegment : GLsizei; numSegments : GLsizei) : GLfloat; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPointAlongPathNV = function(path : GLUInt; startSegment : GLsizei; numSegments : GLsizei; distance : GLfloat; x : PGLfloat; y : PGLfloat; tangentX : PGLfloat; tangentY : PGLfloat) : GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_AMD_pinned_memory + + // GL_AMD_stencil_operation_extended + TglStencilOpValueAMD = procedure(face : GLEnum; value : GLUInt); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_AMD_vertex_shader_viewport_index + + // GL_AMD_vertex_shader_layer + + // GL_NV_bindless_texture + TglGetTextureHandleNV = function(texture : GLuint ) : GLuint64; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetTextureSamplerHandleNV = function(texture : GLuint; sampler : GLuint) : GLuint64; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMakeTextureHandleResidentNV = procedure(handle : GLUint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMakeTextureHandleNonResidentNV = procedure(handle : GLUint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetImageHandleNV = function(texture : GLuint; level : GLint; layered : GLboolean; layer : GLint; format : GLenum) : GLUInt64; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMakeImageHandleResidentNV = procedure(handle : GLUint64; access : GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglMakeImageHandleNonResidentNV = procedure(handle : GLUint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformHandleui64NV = procedure(location : GLint; value : GLuint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglUniformHandleui64vNV = procedure(location : GLint; cowunt : GLsizei; const value : PGLuint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformHandleui64NV = procedure(program_ : GLuint; location : GLint; value : GLuint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglProgramUniformHandleui64vNV = procedure(program_ : GLuint; location : GLint; count : GLsizei; const values : PGLuint64); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsTextureHandleResidentNV = function(handle : GLUint64) : GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsImageHandleResidentNV = function(handle : GLUint64) : GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_NV_shader_atomic_float + + // GL_AMD_query_buffer_object + + // + + // GL_PGI_misc_hints + TglHintPGI = procedure(target: GLenum; mode: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIS_detail_texture + TglDetailTexFuncSGIS = procedure(target: GLenum; n: GLsizei; const points: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetDetailTexFuncSGIS = procedure(target: GLenum; points: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIS_fog_function + TglFogFuncSGIS = procedure(n: GLsizei; const points: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFogFuncSGIS = procedure(points: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIS_multisample + TglSampleMaskSGIS = procedure(value: GLclampf; invert: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSamplePatternSGIS = procedure(pattern: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIS_pixel_texture + TglPixelTexGenParameteriSGIS = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelTexGenParameterivSGIS = procedure(pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelTexGenParameterfSGIS = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPixelTexGenParameterfvSGIS = procedure(pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPixelTexGenParameterivSGIS = procedure(pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetPixelTexGenParameterfvSGIS = procedure(pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIS_point_parameters + TglPointParameterfSGIS = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPointParameterfvSGIS = procedure(pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIS_sharpen_texture + TglSharpenTexFuncSGIS = procedure(target: GLenum; n: GLsizei; const points: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetSharpenTexFuncSGIS = procedure(target: GLenum; points: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIS_texture4D + TglTexImage4DSGIS = procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; size4d: GLsizei; border: GLint; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexSubImage4DSGIS = procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; woffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; size4d: GLsizei; format: GLenum; _type: GLenum; const pixels: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIS_texture_color_mask + TglTextureColorMaskSGIS = procedure(red: GLboolean; green: GLboolean; blue: GLboolean; alpha: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIS_texture_filter4 + TglGetTexFilterFuncSGIS = procedure(target: GLenum; filter: GLenum; weights: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexFilterFuncSGIS = procedure(target: GLenum; filter: GLenum; n: GLsizei; const weights: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_async + TglAsyncMarkerSGIX = procedure(marker: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFinishAsyncSGIX = function(markerp: PGLuint): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPollAsyncSGIX = function(markerp: PGLuint): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGenAsyncMarkersSGIX = function(range: GLsizei): GLuint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeleteAsyncMarkersSGIX = procedure(marker: GLuint; range: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglIsAsyncMarkerSGIX = function(marker: GLuint): GLboolean; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_flush_raster + TglFlushRasterSGIX = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_fragment_lighting + TglFragmentColorMaterialSGIX = procedure(face: GLenum; mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentLightfSGIX = procedure(light: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentLightfvSGIX = procedure(light: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentLightiSGIX = procedure(light: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentLightivSGIX = procedure(light: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentLightModelfSGIX = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentLightModelfvSGIX = procedure(pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentLightModeliSGIX = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentLightModelivSGIX = procedure(pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentMaterialfSGIX = procedure(face: GLenum; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentMaterialfvSGIX = procedure(face: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentMaterialiSGIX = procedure(face: GLenum; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglFragmentMaterialivSGIX = procedure(face: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFragmentLightfvSGIX = procedure(light: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFragmentLightivSGIX = procedure(light: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFragmentMaterialfvSGIX = procedure(face: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetFragmentMaterialivSGIX = procedure(face: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLightEnviSGIX = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_framezoom + TglFrameZoomSGIX = procedure(factor: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_igloo_interface + TglIglooInterfaceSGIX = procedure(pname: GLenum; const params: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_instruments + TglGetInstrumentsSGIX = function(): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglInstrumentsBufferSGIX = procedure(size: GLsizei; buffer: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglPollInstrumentsSGIX = function(marker_p: PGLint): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReadInstrumentsSGIX = procedure(marker: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStartInstrumentsSGIX = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglStopInstrumentsSGIX = procedure(marker: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_list_priority + TglGetListParameterfvSGIX = procedure(list: GLuint; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetListParameterivSGIX = procedure(list: GLuint; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglListParameterfSGIX = procedure(list: GLuint; pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglListParameterfvSGIX = procedure(list: GLuint; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglListParameteriSGIX = procedure(list: GLuint; pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglListParameterivSGIX = procedure(list: GLuint; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_pixel_texture + TglPixelTexGenSGIX = procedure(mode: GLenum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_polynomial_ffd + TglDeformationMap3dSGIX = procedure(target: GLenum; u1: GLdouble; u2: GLdouble; ustride: GLint; uorder: GLint; v1: GLdouble; v2: GLdouble; vstride: GLint; vorder: GLint; w1: GLdouble; w2: GLdouble; wstride: GLint; worder: GLint; const points: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeformationMap3fSGIX = procedure(target: GLenum; u1: GLfloat; u2: GLfloat; ustride: GLint; uorder: GLint; v1: GLfloat; v2: GLfloat; vstride: GLint; vorder: GLint; w1: GLfloat; w2: GLfloat; wstride: GLint; worder: GLint; const points: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglDeformSGIX = procedure(mask: GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglLoadIdentityDeformationMapSGIX = procedure(mask: GLbitfield); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_reference_plane + TglReferencePlaneSGIX = procedure(const equation: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_sprite + TglSpriteParameterfSGIX = procedure(pname: GLenum; param: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSpriteParameterfvSGIX = procedure(pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSpriteParameteriSGIX = procedure(pname: GLenum; param: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglSpriteParameterivSGIX = procedure(pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGIX_tag_sample_buffer + TglTagSampleBufferSGIX = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SGI_color_table + TglColorTableSGI = procedure(target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; _type: GLenum; const table: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorTableParameterfvSGI = procedure(target: GLenum; pname: GLenum; const params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColorTableParameterivSGI = procedure(target: GLenum; pname: GLenum; const params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglCopyColorTableSGI = procedure(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetColorTableSGI = procedure(target: GLenum; format: GLenum; _type: GLenum; table: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetColorTableParameterfvSGI = procedure(target: GLenum; pname: GLenum; params: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGetColorTableParameterivSGI = procedure(target: GLenum; pname: GLenum; params: PGLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SUNX_constant_data + TglFinishTextureSUNX = procedure(); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SUN_global_alpha + TglGlobalAlphaFactorbSUN = procedure(factor: GLbyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGlobalAlphaFactorsSUN = procedure(factor: GLshort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGlobalAlphaFactoriSUN = procedure(factor: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGlobalAlphaFactorfSUN = procedure(factor: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGlobalAlphaFactordSUN = procedure(factor: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGlobalAlphaFactorubSUN = procedure(factor: GLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGlobalAlphaFactorusSUN = procedure(factor: GLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglGlobalAlphaFactoruiSUN = procedure(factor: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SUN_mesh_array + TglDrawMeshArraysSUN = procedure(mode: GLenum; first: GLint; count: GLsizei; width: GLsizei); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SUN_triangle_list + TglReplacementCodeuiSUN = procedure(code: GLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeusSUN = procedure(code: GLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeubSUN = procedure(code: GLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuivSUN = procedure(const code: PGLuint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeusvSUN = procedure(const code: PGLushort); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeubvSUN = procedure(const code: PGLubyte); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodePointerSUN = procedure(_type: GLenum; stride: GLsizei; const _pointer: PGLvoid); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // GL_SUN_vertex + TglColor4ubVertex2fSUN = procedure(r: GLubyte; g: GLubyte; b: GLubyte; a: GLubyte; x: GLfloat; y: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4ubVertex2fvSUN = procedure(const c: PGLubyte; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4ubVertex3fSUN = procedure(r: GLubyte; g: GLubyte; b: GLubyte; a: GLubyte; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4ubVertex3fvSUN = procedure(const c: PGLubyte; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3fVertex3fSUN = procedure(r: GLfloat; g: GLfloat; b: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor3fVertex3fvSUN = procedure(const c: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3fVertex3fSUN = procedure(nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglNormal3fVertex3fvSUN = procedure(const n: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4fNormal3fVertex3fSUN = procedure(r: GLfloat; g: GLfloat; b: GLfloat; a: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglColor4fNormal3fVertex3fvSUN = procedure(const c: PGLfloat; const n: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2fVertex3fSUN = procedure(s: GLfloat; t: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2fVertex3fvSUN = procedure(const tc: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4fVertex4fSUN = procedure(s: GLfloat; t: GLfloat; p: GLfloat; q: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4fVertex4fvSUN = procedure(const tc: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2fColor4ubVertex3fSUN = procedure(s: GLfloat; t: GLfloat; r: GLubyte; g: GLubyte; b: GLubyte; a: GLubyte; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2fColor4ubVertex3fvSUN = procedure(const tc: PGLfloat; const c: PGLubyte; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2fColor3fVertex3fSUN = procedure(s: GLfloat; t: GLfloat; r: GLfloat; g: GLfloat; b: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2fColor3fVertex3fvSUN = procedure(const tc: PGLfloat; const c: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2fNormal3fVertex3fSUN = procedure(s: GLfloat; t: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2fNormal3fVertex3fvSUN = procedure(const tc: PGLfloat; const n: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2fColor4fNormal3fVertex3fSUN = procedure(s: GLfloat; t: GLfloat; r: GLfloat; g: GLfloat; b: GLfloat; a: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord2fColor4fNormal3fVertex3fvSUN = procedure(const tc: PGLfloat; const c: PGLfloat; const n: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4fColor4fNormal3fVertex4fSUN = procedure(s: GLfloat; t: GLfloat; p: GLfloat; q: GLfloat; r: GLfloat; g: GLfloat; b: GLfloat; a: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglTexCoord4fColor4fNormal3fVertex4fvSUN = procedure(const tc: PGLfloat; const c: PGLfloat; const n: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiVertex3fSUN = procedure(rc: GLuint; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiVertex3fvSUN = procedure(const rc: PGLuint; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiColor4ubVertex3fSUN = procedure(rc: GLuint; r: GLubyte; g: GLubyte; b: GLubyte; a: GLubyte; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiColor4ubVertex3fvSUN = procedure(const rc: PGLuint; const c: PGLubyte; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiColor3fVertex3fSUN = procedure(rc: GLuint; r: GLfloat; g: GLfloat; b: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiColor3fVertex3fvSUN = procedure(const rc: PGLuint; const c: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiNormal3fVertex3fSUN = procedure(rc: GLuint; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiNormal3fVertex3fvSUN = procedure(const rc: PGLuint; const n: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiColor4fNormal3fVertex3fSUN = procedure(rc: GLuint; r: GLfloat; g: GLfloat; b: GLfloat; a: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiColor4fNormal3fVertex3fvSUN = procedure(const rc: PGLuint; const c: PGLfloat; const n: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiTexCoord2fVertex3fSUN = procedure(rc: GLuint; s: GLfloat; t: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiTexCoord2fVertex3fvSUN = procedure(const rc: PGLuint; const tc: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiTexCoord2fNormal3fVertex3fSUN = procedure(rc: GLuint; s: GLfloat; t: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN = procedure(const rc: PGLuint; const tc: PGLfloat; const n: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN = procedure(rc: GLuint; s: GLfloat; t: GLfloat; r: GLfloat; g: GLfloat; b: GLfloat; a: GLfloat; nx: GLfloat; ny: GLfloat; nz: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TglReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN = procedure(const rc: PGLuint; const tc: PGLfloat; const c: PGLfloat; const n: PGLfloat; const v: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + + // window support functions +{$IFDEF DGL_WIN} + TwglGetProcAddress = function(ProcName: PAnsiChar): Pointer; stdcall; + TwglCopyContext = function(p1: HGLRC; p2: HGLRC; p3: Cardinal): BOOL; stdcall; + TwglCreateContext = function(DC: HDC): HGLRC; stdcall; + TwglCreateLayerContext = function(p1: HDC; p2: Integer): HGLRC; stdcall; + TwglDeleteContext = function(p1: HGLRC): BOOL; stdcall; + TwglDescribeLayerPlane = function(p1: HDC; p2, p3: Integer; p4: Cardinal; p5: PLayerPlaneDescriptor): BOOL; stdcall; + TwglGetCurrentContext = function: HGLRC; stdcall; + TwglGetCurrentDC = function: HDC; stdcall; + TwglGetLayerPaletteEntries = function(p1: HDC; p2, p3, p4: Integer; var pcr): Integer; stdcall; + TwglMakeCurrent = function(DC: HDC; p2: HGLRC): BOOL; stdcall; + TwglRealizeLayerPalette = function(p1: HDC; p2: Integer; p3: BOOL): BOOL; stdcall; + TwglSetLayerPaletteEntries = function(p1: HDC; p2, p3, p4: Integer; var pcr): Integer; stdcall; + TwglShareLists = function(p1, p2: HGLRC): BOOL; stdcall; + TwglSwapLayerBuffers = function(p1: HDC; p2: Cardinal): BOOL; stdcall; + TwglSwapMultipleBuffers = function(p1: UINT; const p2: PWGLSWAP): DWORD; stdcall; + TwglUseFontBitmapsA = function(DC: HDC; p2, p3, p4: DWORD): BOOL; stdcall; + TwglUseFontBitmapsW = function(DC: HDC; p2, p3, p4: DWORD): BOOL; stdcall; + TwglUseFontBitmaps = function(DC: HDC; p2, p3, p4: DWORD): BOOL; stdcall; + + TwglUseFontOutlinesA = function(p1: HDC; p2, p3, p4: DWORD; p5, p6: Single; p7: Integer; p8: PGlyphMetricsFloat): BOOL; stdcall; + TwglUseFontOutlinesW = function(p1: HDC; p2, p3, p4: DWORD; p5, p6: Single; p7: Integer; p8: PGlyphMetricsFloat): BOOL; stdcall; + TwglUseFontOutlines = function(p1: HDC; p2, p3, p4: DWORD; p5, p6: Single; p7: Integer; p8: PGlyphMetricsFloat): BOOL; stdcall; + + + // WGL_ARB_buffer_region + TwglCreateBufferRegionARB = function(hDC: HDC; iLayerPlane: GLint; uType: GLuint): THandle; stdcall; + TwglDeleteBufferRegionARB = procedure(hRegion: THandle); stdcall; + TwglSaveBufferRegionARB = function(hRegion: THandle; x: GLint; y: GLint; width: GLint; height: GLint): Boolean; stdcall; + TwglRestoreBufferRegionARB = function(hRegion: THandle; x: GLint; y: GLint; width: GLint; height: GLint; xSrc: GLint; ySrc: GLint): Boolean; stdcall; + + // WGL_ARB_extensions_string + TwglGetExtensionsStringARB = function(hdc: HDC): PAnsiChar; stdcall; + + // WGL_ARB_make_current_read + TwglMakeContextCurrentARB = function(hDrawDC: HDC; hReadDC: HDC; hglrc: HGLRC): Boolean; stdcall; + TwglGetCurrentReadDCARB = function(): HDC; stdcall; + + // WGL_ARB_pbuffer + TwglCreatePbufferARB = function(hDC: HDC; iPixelFormat: GLint; iWidth: GLint; iHeight: GLint; const piAttribList: PGLint): HPBUFFERARB; stdcall; + TwglGetPbufferDCARB = function(hPbuffer: HPBUFFERARB): HDC; stdcall; + TwglReleasePbufferDCARB = function(hPbuffer: HPBUFFERARB; hDC: HDC): GLint; stdcall; + TwglDestroyPbufferARB = function(hPbuffer: HPBUFFERARB): Boolean; stdcall; + TwglQueryPbufferARB = function(hPbuffer: HPBUFFERARB; iAttribute: GLint; piValue: PGLint): Boolean; stdcall; + + // WGL_ARB_pixel_format + TwglGetPixelFormatAttribivARB = function(hdc: HDC; iPixelFormat: GLint; iLayerPlane: GLint; nAttributes: GLuint; const piAttributes: PGLint; piValues: PGLint): Boolean; stdcall; + TwglGetPixelFormatAttribfvARB = function(hdc: HDC; iPixelFormat: GLint; iLayerPlane: GLint; nAttributes: GLuint; const piAttributes: PGLint; pfValues: PGLfloat): Boolean; stdcall; + TwglChoosePixelFormatARB = function(hdc: HDC; const piAttribIList: PGLint; const pfAttribFList: PGLfloat; nMaxFormats: GLuint; piFormats: PGLint; nNumFormats: PGLuint): BOOL; stdcall; + + // WGL_ARB_color_buffer_float + TwglClampColorARB = procedure(target: GLenum; clamp: GLenum); stdcall; + + // WGL_ARB_render_texture + TwglBindTexImageARB = function(hPbuffer: HPBUFFERARB; iBuffer: GLint): Boolean; stdcall; + TwglReleaseTexImageARB = function(hPbuffer: HPBUFFERARB; iBuffer: GLint): Boolean; stdcall; + TwglSetPbufferAttribARB = function(hPbuffer: HPBUFFERARB; const piAttribList: PGLint): Boolean; stdcall; + + // WGL_ARB_create_context + TwglCreateContextAttribsARB = function(hDC: HDC; hShareContext: HGLRC; const attribList: PGLint): HGLRC; stdcall; + + // WGL_AMD_gpu_association + TwglGetGPUIDsAMD = function(maxCount: Cardinal; ids: PCardinal): Cardinal; stdcall; + TwglGetGPUInfoAMD = function(id: Cardinal; property_: Integer; dataType: GLenum; size: Cardinal; data: Pointer): Integer; stdcall; + TwglGetContextGPUIDAMD = function(hglrc: HGLRC): Cardinal; stdcall; + TwglCreateAssociatedContextAMD = function(id: Cardinal): HGLRC; stdcall; + TwglCreateAssociatedContextAttribsAMD = function(id: Cardinal; hShareContext: HGLRC; const attribList: PInteger): HGLRC; stdcall; + TwglDeleteAssociatedContextAMD = function(hglrc: HGLRC): Boolean; stdcall; + TwglMakeAssociatedContextCurrentAMD = function(hglrc: HGLRC): Boolean; stdcall; + TwglGetCurrentAssociatedContextAMD = function(): HGLRC; stdcall; + TwglBlitContextFramebufferAMD = procedure(dstCtx: HGLRC; srcX0: GLint; srcY0: GLint; srcX1: GLint; srcY1: GLint; dstX0: GLint; dstY0: GLint; dstX1: GLint; dstY1: GLint; mask: GLbitfield; filter: GLenum); stdcall; + + // WGL_EXT_display_color_table + TwglCreateDisplayColorTableEXT = function(id: GLushort): GLboolean; stdcall; + TwglLoadDisplayColorTableEXT = function(const table: PGLushort; length: GLuint): GLboolean; stdcall; + TwglBindDisplayColorTableEXT = function(id: GLushort): GLboolean; stdcall; + TwglDestroyDisplayColorTableEXT = procedure(id: GLushort); stdcall; + + // WGL_EXT_extensions_string + TwglGetExtensionsStringEXT = function(): PAnsiChar; stdcall; + + // WGL_EXT_make_current_read + TwglMakeContextCurrentEXT = function(hDrawDC: HDC; hReadDC: HDC; hglrc: HGLRC): Boolean; stdcall; + TwglGetCurrentReadDCEXT = function(): HDC; stdcall; + + // WGL_EXT_pbuffer + TwglCreatePbufferEXT = function(hDC: HDC; iPixelFormat: GLint; iWidth: GLint; iHeight: GLint; const piAttribList: PGLint): HPBUFFEREXT; stdcall; + TwglGetPbufferDCEXT = function(hPbuffer: HPBUFFEREXT): HDC; stdcall; + TwglReleasePbufferDCEXT = function(hPbuffer: HPBUFFEREXT; hDC: HDC): GLint; stdcall; + TwglDestroyPbufferEXT = function(hPbuffer: HPBUFFEREXT): Boolean; stdcall; + TwglQueryPbufferEXT = function(hPbuffer: HPBUFFEREXT; iAttribute: GLint; piValue: PGLint): Boolean; stdcall; + + // WGL_EXT_pixel_format + TwglGetPixelFormatAttribivEXT = function(hdc: HDC; iPixelFormat: GLint; iLayerPlane: GLint; nAttributes: GLuint; piAttributes: PGLint; piValues: PGLint): Boolean; stdcall; + TwglGetPixelFormatAttribfvEXT = function(hdc: HDC; iPixelFormat: GLint; iLayerPlane: GLint; nAttributes: GLuint; piAttributes: PGLint; pfValues: PGLfloat): Boolean; stdcall; + TwglChoosePixelFormatEXT = function(hdc: HDC; const piAttribIList: PGLint; const pfAttribFList: PGLfloat; nMaxFormats: GLuint; piFormats: PGLint; nNumFormats: PGLuint): Boolean; stdcall; + + // WGL_EXT_swap_control + TwglSwapIntervalEXT = function(interval: GLint): Boolean; stdcall; + TwglGetSwapIntervalEXT = function(): GLint; stdcall; + + // WGL_I3D_digital_video_control + TwglGetDigitalVideoParametersI3D = function(hDC: HDC; iAttribute: GLint; piValue: PGLint): Boolean; stdcall; + TwglSetDigitalVideoParametersI3D = function(hDC: HDC; iAttribute: GLint; const piValue: PGLint): Boolean; stdcall; + + // WGL_I3D_gamma + TwglGetGammaTableParametersI3D = function(hDC: HDC; iAttribute: GLint; piValue: PGLint): Boolean; stdcall; + TwglSetGammaTableParametersI3D = function(hDC: HDC; iAttribute: GLint; const piValue: PGLint): Boolean; stdcall; + TwglGetGammaTableI3D = function(hDC: HDC; iEntries: GLint; puRed: PGLushort; puGreen: PGLushort; puBlue: PGLushort): Boolean; stdcall; + TwglSetGammaTableI3D = function(hDC: HDC; iEntries: GLint; const puRed: PGLushort; const puGreen: PGLushort; const puBlue: PGLushort): Boolean; stdcall; + + // WGL_I3D_genlock + TwglEnableGenlockI3D = function(hDC: HDC): Boolean; stdcall; + TwglDisableGenlockI3D = function(hDC: HDC): Boolean; stdcall; + TwglIsEnabledGenlockI3D = function(hDC: HDC; pFlag: Boolean): Boolean; stdcall; + TwglGenlockSourceI3D = function(hDC: HDC; uSource: GLuint): Boolean; stdcall; + TwglGetGenlockSourceI3D = function(hDC: HDC; uSource: PGLuint): Boolean; stdcall; + TwglGenlockSourceEdgeI3D = function(hDC: HDC; uEdge: GLuint): Boolean; stdcall; + TwglGetGenlockSourceEdgeI3D = function(hDC: HDC; uEdge: PGLuint): Boolean; stdcall; + TwglGenlockSampleRateI3D = function(hDC: HDC; uRate: GLuint): Boolean; stdcall; + TwglGetGenlockSampleRateI3D = function(hDC: HDC; uRate: PGLuint): Boolean; stdcall; + TwglGenlockSourceDelayI3D = function(hDC: HDC; uDelay: GLuint): Boolean; stdcall; + TwglGetGenlockSourceDelayI3D = function(hDC: HDC; uDelay: PGLuint): Boolean; stdcall; + TwglQueryGenlockMaxSourceDelayI3D = function(hDC: HDC; uMaxLineDelay: PGLuint; uMaxPixelDelay: PGLuint): Boolean; stdcall; + + // WGL_I3D_image_buffer + TwglCreateImageBufferI3D = function(hDC: HDC; dwSize: GLuint; uFlags: GLuint): GLvoid; stdcall; + TwglDestroyImageBufferI3D = function(hDC: HDC; pAddress: GLvoid): Boolean; stdcall; + TwglAssociateImageBufferEventsI3D = function(hDC: HDC; const pEvent: THandle; const pAddress: PGLvoid; const pSize: PGLuint; count: GLuint): Boolean; stdcall; + TwglReleaseImageBufferEventsI3D = function(hDC: HDC; const pAddress: PGLvoid; count: GLuint): Boolean; stdcall; + + // WGL_I3D_swap_frame_lock + TwglEnableFrameLockI3D = function(): Boolean; stdcall; + TwglDisableFrameLockI3D = function(): Boolean; stdcall; + TwglIsEnabledFrameLockI3D = function(pFlag: Boolean): Boolean; stdcall; + TwglQueryFrameLockMasterI3D = function(pFlag: Boolean): Boolean; stdcall; + + // WGL_I3D_swap_frame_usage + TwglGetFrameUsageI3D = function(pUsage: PGLfloat): Boolean; stdcall; + TwglBeginFrameTrackingI3D = function(): Boolean; stdcall; + TwglEndFrameTrackingI3D = function(): Boolean; stdcall; + TwglQueryFrameTrackingI3D = function(pFrameCount: PGLuint; pMissedFrames: PGLuint; pLastMissedUsage: PGLfloat): Boolean; stdcall; + + // WGL_NV_vertex_array_range + TwglAllocateMemoryNV = procedure(size: GLsizei; readfreq: GLfloat; writefreq: GLfloat; priority: GLfloat); stdcall; + TwglFreeMemoryNV = procedure(_pointer: Pointer); stdcall; + + // WGL_NV_present_video + TwglEnumerateVideoDevicesNV = function(hdc: HDC; phDeviceList: PHVIDEOOUTPUTDEVICENV): Integer; stdcall; + TwglBindVideoDeviceNV = function(hd: HDC; uVideoSlot: Cardinal; hVideoDevice: HVIDEOOUTPUTDEVICENV; piAttribList: PInteger): Boolean; stdcall; + TwglQueryCurrentContextNV = function(iAttribute: Integer; piValue: PInteger): Boolean; stdcall; + + // WGL_NV_video_output + TwglGetVideoDeviceNV = function(hDC: HDC; numDevices: Integer; hVideoDevice: PHPVIDEODEV): Boolean; stdcall; + TwglReleaseVideoDeviceNV = function(hVideoDevice: HPVIDEODEV): Boolean; stdcall; + TwglBindVideoImageNV = function(hVideoDevice: HPVIDEODEV; hPbuffer: HPBUFFERARB; iVideoBuffer: Integer): Boolean; stdcall; + TwglReleaseVideoImageNV = function(hPbuffer: HPBUFFERARB; iVideoBuffer: Integer): Boolean; stdcall; + TwglSendPbufferToVideoNV = function(hPbuffer: HPBUFFERARB; iBufferType: Integer; pulCounterPbuffer: PCardinal; bBlock: Boolean): Boolean; stdcall; + TwglGetVideoInfoNV = function(hpVideoDevice: HPVIDEODEV; pulCounterOutputPbuffer: PCardinal; pulCounterOutputVideo: PCardinal): Boolean; stdcall; + + // WGL_NV_swap_group + TwglJoinSwapGroupNV = function(hDC: HDC; group: GLuint): Boolean; stdcall; + TwglBindSwapBarrierNV = function(group: GLuint; barrier: GLuint): Boolean; stdcall; + TwglQuerySwapGroupNV = function(hDC: HDC; group: PGLuint; barrier: PGLuint): Boolean; stdcall; + TwglQueryMaxSwapGroupsNV = function(hDC: HDC; mxGroups: PGLuint; maxBarriers: PGLuint): Boolean; stdcall; + TwglQueryFrameCountNV = function(hDC: HDC; count: PGLuint): Boolean; stdcall; + TwglResetFrameCountNV = function(hDC: HDC): Boolean; stdcall; + + // WGL_NV_gpu_affinity + TwglEnumGpusNV = function(iGpuIndex: Cardinal; phGpu: PHGPUNV): Boolean; stdcall; + TwglEnumGpuDevicesNV = function(hGpu: HGPUNV; iDeviceIndex: Cardinal; lpGpuDevice: PGPU_DEVICE): Boolean; stdcall; + TwglCreateAffinityDCNV = function(const phGpuList: PHGPUNV): HDC; stdcall; + TwglEnumGpusFromAffinityDCNV = function(hAffinityDC: HDC; iGpuIndex: Cardinal; hGpu: PHGPUNV): Boolean; stdcall; + TwglDeleteDCNV = function(hDC: HDC): Boolean; stdcall; + + // WGL_NV_video_capture + TwglBindVideoCaptureDeviceNV = function(uVideoSlot: Cardinal; hDevice: HVIDEOINPUTDEVICENV): Boolean; stdcall; + TwglEnumerateVideoCaptureDevicesNV = function(hDc: HDC; phDeviceList: PHVIDEOINPUTDEVICENV): Cardinal; stdcall; + TwglLockVideoCaptureDeviceNV = function(hDc: HDC; hDevice: HVIDEOINPUTDEVICENV): Boolean; stdcall; + TwglQueryVideoCaptureDeviceNV = function(hDc: HDC; hDevice: HVIDEOINPUTDEVICENV; iAttribute: Integer; piValue: PInteger): Boolean; stdcall; + TwglReleaseVideoCaptureDeviceNV = function(hDc: HDC; hDevice: HVIDEOINPUTDEVICENV): Boolean; stdcall; + + // WGL_NV_copy_image + TwglCopyImageSubDataNV = function(hSrcRc: HGLRC; srcName: GLuint; srcTarget: GLenum; srcLevel: GLint; srcX: GLint; srcY: GLint; srcZ: GLint; hDstRC: HGLRC; dstName: GLuint; dstTarget: GLenum; dstLevel: GLint; dstX: GLint; dstY: GLint; dstZ: GLint; width: GLsizei; height: GLsizei; depth: GLsizei): Boolean; stdcall; + + // WGL_NV_DX_interop + TwglDXSetResourceShareHandleNV = function(dxObject : PGLVoid; hareHandle : Cardinal) : Boolean; stdcall; + TwglDXOpenDeviceNV = function(dxDevice : PGLVoid) : Cardinal; stdcall; + TwglDXCloseDeviceNV = function(hDevice : Cardinal) : Boolean; stdcall; + TwglDXRegisterObjectNV = function(hDevice : Cardinal; dxObject : PGLVoid; name : GLUInt; _type : TGLEnum; access : TGLenum) : Cardinal; stdcall; + TwglDXUnregisterObjectNV = function(hDevice : Cardinal; hObject : Cardinal) : Boolean; stdcall; + TwglDXObjectAccessNV = function(hObject : Cardinal; access : GLenum) : Boolean; stdcall; + TwglDXLockObjectsNV = function(hDevice : Cardinal; count : GLint; hObjects : PCardinal) : Boolean; stdcall; + TwglDXUnlockObjectsNV = function (hDevice : Cardinal; count : GLint; hObjects : PCardinal) : Boolean; stdcall; + + // WGL_OML_sync_control + TwglGetSyncValuesOML = function(hdc: HDC; ust: PGLint64; msc: PGLint64; sbc: PGLint64): Boolean; stdcall; + TwglGetMscRateOML = function(hdc: HDC; numerator: PGLint; denominator: PGLint): Boolean; stdcall; + TwglSwapBuffersMscOML = function(hdc: HDC; target_msc: GLint64; divisor: GLint64; remainder: GLint64): GLint64; stdcall; + TwglSwapLayerBuffersMscOML = function(hdc: HDC; fuPlanes: GLint; target_msc: GLint64; divisor: GLint64; remainder: GLint64): GLint64; stdcall; + TwglWaitForMscOML = function(hdc: HDC; target_msc: GLint64; divisor: GLint64; remainder: GLint64; ust: PGLint64; msc: PGLint64; sbc: PGLint64): Boolean; stdcall; + TwglWaitForSbcOML = function(hdc: HDC; target_sbc: GLint64; ust: PGLint64; msc: PGLint64; sbc: PGLint64): Boolean; stdcall; + + // WGL_3DL_stereo_control + TwglSetStereoEmitterState3DL = function(hDC: HDC; uState: UINT): Boolean; stdcall; + + // WIN_draw_range_elements + TglDrawRangeElementsWIN = procedure(mode: GLenum; start: GLuint; _end: GLuint; count: GLsizei; _type: GLenum; const indices: PGLvoid); stdcall; + + // WIN_swap_hint + TglAddSwapHintRectWIN = procedure(x: GLint; y: GLint; width: GLsizei; height: GLsizei); stdcall; +{$ENDIF} + +{$IFDEF DGL_LINUX} + TglXChooseVisual = function(dpy: PDisplay; screen: GLint; attribList: PGLint): PXVisualInfo; cdecl; + TglXCopyContext = procedure(dpy: PDisplay; src: GLXContext; dst: GLXContext; mask: GLuint); cdecl; + TglXCreateContext = function(dpy: PDisplay; vis: PXVisualInfo; shareList: GLXContext; direct: GLboolean): GLXContext; cdecl; + TglXCreateGLXPixmap = function(dpy: PDisplay; vis: PXVisualInfo; pixmap: Pixmap): GLXPixmap cdecl; + TglXDestroyContext = procedure(dpy: PDisplay; ctx: GLXContext); cdecl; + TglXDestroyGLXPixmap = procedure(dpy : PDisplay; pix: GLXPixmap); cdecl; + TglXGetConfig = function(dpy : PDisplay; vis: PXVisualInfo; attrib: GLint; value: PGLint): GLint; cdecl; + TglXGetCurrentContext = function: GLXContext cdecl; + TglXGetCurrentDrawable = function: GLXDrawable cdecl; + TglXIsDirect = function(dpy: PDisplay; ctx: GLXContext): glboolean; cdecl; + TglXMakeCurrent = function(dpy: PDisplay; drawable: GLXDrawable; ctx: GLXContext): GLboolean cdecl; + TglXQueryExtension = function(dpy: PDisplay; errorBase: PGLint; eventBase: PGLint): GLboolean; cdecl; + TglXQueryVersion = function(dpy: PDisplay; major: PGLint; minor: PGLint): GLboolean cdecl; + TglXSwapBuffers = procedure(dpy: PDisplay; drawable: GLXDrawable); cdecl; + TglXUseXFont = procedure(font: Font; first: GLint; count: GLint; listBase: GLint); cdecl; + TglXWaitGL = procedure; cdecl; + TglXWaitX = procedure; cdecl; + + TglXGetClientString = function(dpy: PDisplay; name: GLint): PGLchar; cdecl; + TglXQueryServerString = function(dpy: PDisplay; screen: GLint; name: GLint): PGLchar; cdecl; + TglXQueryExtensionsString = function(dpy: PDisplay; screen: GLint): PGLchar; cdecl; + + // GLX_VERSION_1_3 + TglXGetFBConfigs = function(dpy: PDisplay; screen: GLint; nelements: PGLint): GLXFBConfig; cdecl; + TglXChooseFBConfig = function(dpy: PDisplay; screen: GLint; attrib_list: PGLint; nelements: PGLint): GLXFBConfig; cdecl; + TglXGetFBConfigAttrib = function(dpy: PDisplay; config: GLXFBConfig; attribute: GLint; value: PGLint): glint; cdecl; + TglXGetVisualFromFBConfig = function(dpy: PDisplay; config: GLXFBConfig) : PXVisualInfo; cdecl; + TglXCreateWindow = function(dpy: PDisplay; config: GLXFBConfig; win: Window; attrib_list: PGLint): GLXWindow; cdecl; + TglXDestroyWindow = procedure(dpy: PDisplay; win: GLXWindow); cdecl; + TglXCreatePixmap = function(dpy: PDisplay; config: GLXFBConfig; pixmap: Pixmap; attrib_list: PGLint): GLXPixmap; cdecl; + + TglXDestroyPixmap = procedure(dpy: PDisplay; pixmap: GLXPixmap); cdecl; + TglXCreatePbuffer = function(dpy: PDisplay; config: GLXFBConfig; attrib_list: PGLint): GLXPbuffer; cdecl; + TglXDestroyPbuffer = procedure(dpy: PDisplay; pbuf: GLXPbuffer); cdecl; + TglXQueryDrawable = procedure(dpy: PDisplay; draw: GLXDrawable; attribute: GLint; value: PGLuint); cdecl; + TglXCreateNewContext = function(dpy: PDisplay; config: GLXFBConfig; render_type: GLint; share_list: GLXContext; direct: GLboolean): GLXContext cdecl; + TglXMakeContextCurrent = function(display: PDisplay; draw: GLXDrawable; read_: GLXDrawable; ctx: GLXContext): GLboolean; cdecl; + TglXGetCurrentReadDrawable = function: GLXDrawable; cdecl; + TglXGetCurreentDisplay = function: PDisplay; + + TglXQueryContext = function(dpy: PDisplay; ctx: GLXContext; attribute: GLint; value: PGLint): GLint; cdecl; + TglXSelectEvent = procedure(dpy: PDisplay; draw: GLXDrawable; event_mask: GLuint); cdecl; + TglXGetSelectedEvent = procedure(dpy: PDisplay; draw: GLXDrawable; event_mask: PGLuint); cdecl; + + // GLX_VERSION_1_4 + TglXGetProcAddress = function(const name: PAnsiChar): pointer; cdecl; + + // GLX_ARB_get_proc_address + TglXGetProcAddressARB = function(const name: PAnsiChar): pointer; cdecl; + + // GLX_ARB_create_context + TglXCreateContextAttribsARB = function(dpy: PDisplay; config: GLXFBConfig; share_context: GLXContext; direct: GLboolean; const attrib_list: PGLint): GLXContext; cdecl; + + // GLX_EXT_import_context + TglXGetCurrentDisplayEXT = function: PDisplay; cdecl; + TglXQueryContextInfoEXT = function(dpy: PDisplay; context: GLXContext; attribute: GLint; value: PGLint): GLint; cdecl; + TglXGetContextIDEXT = function(const context: GLXContext): GLXContextID; cdecl; + TglXImportContextEXT = function(dpy: PDisplay; contextID: GLXContextID): GLXContext; cdecl; + TglXFreeContextEXT = procedure(dpy: PDisplay; context: GLXContext); cdecl; + + // GLX_EXT_texture_from_pixmap + TglXBindTexImageEXT = procedure(dpy: PDisplay; drawable: GLXDrawable; buffer: GLint; const attrib_list: PGLint); cdecl; + TglXReleaseTexImageEXT = procedure(dpy: PDisplay; drawable: GLXDrawable; buffer: GLint); cdecl; + + // GLX_EXT_swap_control + TglXSwapIntervalEXT = procedure (dpy: PDisplay; drawable: GLXDrawable; interval: GLint); cdecl; +{$ENDIF} + + // GL utility functions and procedures + TgluErrorString = function(errCode: GLEnum): PAnsiChar; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluGetString = function(name: GLEnum): PAnsiChar; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluOrtho2D = procedure(left, right, bottom, top: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluPerspective = procedure(fovy, aspect, zNear, zFar: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluPickMatrix = procedure(x, y, width, height: GLdouble; const viewport: TVector4i); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluLookAt = procedure(eyex, eyey, eyez, centerx, centery, centerz, upx, upy, upz: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluProject = function(objx, objy, objz: GLdouble; const modelMatrix: TGLMatrixd4; const projMatrix: TGLMatrixd4; const viewport: TVector4i; winx, winy, winz: PGLdouble): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluUnProject = function(winx, winy, winz: GLdouble; const modelMatrix: TGLMatrixd4; const projMatrix: TGLMatrixd4; const viewport: TVector4i; objx, objy, objz: PGLdouble): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluScaleImage = function(format: GLEnum; widthin, heightin: GLint; typein: GLEnum; datain: Pointer; widthout, heightout: GLint; typeout: GLEnum; const dataout: Pointer): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluBuild1DMipmaps = function(target: GLEnum; components, width: GLint; format, atype: GLEnum; const data: Pointer): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluBuild2DMipmaps = function(target: GLEnum; components, width, height: GLint; format, atype: GLEnum; const Data: Pointer): GLint; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluNewQuadric = function: PGLUquadric; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluDeleteQuadric = procedure(state: PGLUquadric); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluQuadricNormals = procedure(quadObject: PGLUquadric; normals: GLEnum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluQuadricTexture = procedure(quadObject: PGLUquadric; textureCoords: GLboolean); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluQuadricOrientation = procedure(quadObject: PGLUquadric; orientation: GLEnum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluQuadricDrawStyle = procedure(quadObject: PGLUquadric; drawStyle: GLEnum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluCylinder = procedure(quadObject: PGLUquadric; baseRadius, topRadius, height: GLdouble; slices, stacks: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluDisk = procedure(quadObject: PGLUquadric; innerRadius, outerRadius: GLdouble; slices, loops: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluPartialDisk = procedure(quadObject: PGLUquadric; innerRadius, outerRadius: GLdouble; slices, loops: GLint; startAngle, sweepAngle: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluSphere = procedure(quadObject: PGLUquadric; radius: GLdouble; slices, stacks: GLint); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluQuadricCallback = procedure(quadObject: PGLUquadric; which: GLEnum; fn: TGLUQuadricErrorProc); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluNewTess = function: PGLUtesselator; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluDeleteTess = procedure(tess: PGLUtesselator); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluTessBeginPolygon = procedure(tess: PGLUtesselator; polygon_data: Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluTessBeginContour = procedure(tess: PGLUtesselator); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluTessVertex = procedure(tess: PGLUtesselator; const coords: TGLArrayd3; data: Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluTessEndContour = procedure(tess: PGLUtesselator); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluTessEndPolygon = procedure(tess: PGLUtesselator); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluTessProperty = procedure(tess: PGLUtesselator; which: GLEnum; value: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluTessNormal = procedure(tess: PGLUtesselator; x, y, z: GLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluTessCallback = procedure(tess: PGLUtesselator; which: GLEnum; fn: Pointer); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluGetTessProperty = procedure(tess: PGLUtesselator; which: GLEnum; value: PGLdouble); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluNewNurbsRenderer = function: PGLUnurbs; {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluDeleteNurbsRenderer = procedure(nobj: PGLUnurbs); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluBeginSurface = procedure(nobj: PGLUnurbs); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluBeginCurve = procedure(nobj: PGLUnurbs); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluEndCurve = procedure(nobj: PGLUnurbs); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluEndSurface = procedure(nobj: PGLUnurbs); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluBeginTrim = procedure(nobj: PGLUnurbs); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluEndTrim = procedure(nobj: PGLUnurbs); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluPwlCurve = procedure(nobj: PGLUnurbs; count: GLint; points: PGLfloat; stride: GLint; atype: GLEnum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluNurbsCurve = procedure(nobj: PGLUnurbs; nknots: GLint; knot: PGLfloat; stride: GLint; ctlarray: PGLfloat; order: GLint; atype: GLEnum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluNurbsSurface = procedure(nobj: PGLUnurbs; sknot_count: GLint; sknot: PGLfloat; tknot_count: GLint; tknot: PGLfloat; s_stride, t_stride: GLint; ctlarray: PGLfloat; sorder, torder: GLint; atype: GLEnum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluLoadSamplingMatrices = procedure(nobj: PGLUnurbs; const modelMatrix, projMatrix: TGLMatrixf4; const viewport: TVector4i); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluNurbsProperty = procedure(nobj: PGLUnurbs; aproperty: GLEnum; value: GLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluGetNurbsProperty = procedure(nobj: PGLUnurbs; aproperty: GLEnum; value: PGLfloat); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluNurbsCallback = procedure(nobj: PGLUnurbs; which: GLEnum; fn: TGLUNurbsErrorProc); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluBeginPolygon = procedure(tess: PGLUtesselator); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluNextContour = procedure(tess: PGLUtesselator; atype: GLEnum); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + TgluEndPolygon = procedure(tess: PGLUtesselator); {$IFDEF DGL_WIN}stdcall; {$ELSE}cdecl; {$ENDIF} + +var + // GL_VERSION_1_0 + glCullFace: TglCullFace; + glFrontFace: TglFrontFace; + glHint: TglHint; + glLineWidth: TglLineWidth; + glPointSize: TglPointSize; + glPolygonMode: TglPolygonMode; + glScissor: TglScissor; + glTexParameterf: TglTexParameterf; + glTexParameterfv: TglTexParameterfv; + glTexParameteri: TglTexParameteri; + glTexParameteriv: TglTexParameteriv; + glTexImage1D: TglTexImage1D; + glTexImage2D: TglTexImage2D; + glDrawBuffer: TglDrawBuffer; + glClear: TglClear; + glClearColor: TglClearColor; + glClearStencil: TglClearStencil; + glClearDepth: TglClearDepth; + glStencilMask: TglStencilMask; + glColorMask: TglColorMask; + glDepthMask: TglDepthMask; + glDisable: TglDisable; + glEnable: TglEnable; + glFinish: TglFinish; + glFlush: TglFlush; + glBlendFunc: TglBlendFunc; + glLogicOp: TglLogicOp; + glStencilFunc: TglStencilFunc; + glStencilOp: TglStencilOp; + glDepthFunc: TglDepthFunc; + glPixelStoref: TglPixelStoref; + glPixelStorei: TglPixelStorei; + glReadBuffer: TglReadBuffer; + glReadPixels: TglReadPixels; + glGetBooleanv: TglGetBooleanv; + glGetDoublev: TglGetDoublev; + glGetError: TglGetError; + glGetFloatv: TglGetFloatv; + glGetIntegerv: TglGetIntegerv; + glGetString: TglGetString; + glGetTexImage: TglGetTexImage; + glGetTexParameteriv: TglGetTexParameteriv; + glGetTexParameterfv: TglGetTexParameterfv; + glGetTexLevelParameterfv: TglGetTexLevelParameterfv; + glGetTexLevelParameteriv: TglGetTexLevelParameteriv; + glIsEnabled: TglIsEnabled; + glDepthRange: TglDepthRange; + glViewport: TglViewport; + + // GL_VERSION_1_1 + glDrawArrays: TglDrawArrays; + glDrawElements: TglDrawElements; + glGetPointerv: TglGetPointerv; + glPolygonOffset: TglPolygonOffset; + glCopyTexImage1D: TglCopyTexImage1D; + glCopyTexImage2D: TglCopyTexImage2D; + glCopyTexSubImage1D: TglCopyTexSubImage1D; + glCopyTexSubImage2D: TglCopyTexSubImage2D; + glTexSubImage1D: TglTexSubImage1D; + glTexSubImage2D: TglTexSubImage2D; + glBindTexture: TglBindTexture; + glDeleteTextures: TglDeleteTextures; + glGenTextures: TglGenTextures; +{$ifdef DGL_DEPRECATED} + glAccum: TglAccum; + glAlphaFunc: TglAlphaFunc; + glAreTexturesResident: TglAreTexturesResident; + glArrayElement: TglArrayElement; + glBegin: TglBegin; + glBitmap: TglBitmap; + glCallList: TglCallList; + glCallLists: TglCallLists; + glClearAccum: TglClearAccum; + glClearIndex: TglClearIndex; + glClipPlane: TglClipPlane; + glColor3b: TglColor3b; + glColor3bv: TglColor3bv; + glColor3d: TglColor3d; + glColor3dv: TglColor3dv; + glColor3f: TglColor3f; + glColor3fv: TglColor3fv; + glColor3i: TglColor3i; + glColor3iv: TglColor3iv; + glColor3s: TglColor3s; + glColor3sv: TglColor3sv; + glColor3ub: TglColor3ub; + glColor3ubv: TglColor3ubv; + glColor3ui: TglColor3ui; + glColor3uiv: TglColor3uiv; + glColor3us: TglColor3us; + glColor3usv: TglColor3usv; + glColor4b: TglColor4b; + glColor4bv: TglColor4bv; + glColor4d: TglColor4d; + glColor4dv: TglColor4dv; + glColor4f: TglColor4f; + glColor4fv: TglColor4fv; + glColor4i: TglColor4i; + glColor4iv: TglColor4iv; + glColor4s: TglColor4s; + glColor4sv: TglColor4sv; + glColor4ub: TglColor4ub; + glColor4ubv: TglColor4ubv; + glColor4ui: TglColor4ui; + glColor4uiv: TglColor4uiv; + glColor4us: TglColor4us; + glColor4usv: TglColor4usv; + glColorMaterial: TglColorMaterial; + glColorPointer: TglColorPointer; + glCopyPixels: TglCopyPixels; + glDeleteLists: TglDeleteLists; + glDisableClientState: TglDisableClientState; + glDrawPixels: TglDrawPixels; + glEdgeFlag: TglEdgeFlag; + glEdgeFlagPointer: TglEdgeFlagPointer; + glEdgeFlagv: TglEdgeFlagv; + glEnableClientState: TglEnableClientState; + glEnd: TglEnd; + glEndList: TglEndList; + glEvalCoord1d: TglEvalCoord1d; + glEvalCoord1dv: TglEvalCoord1dv; + glEvalCoord1f: TglEvalCoord1f; + glEvalCoord1fv: TglEvalCoord1fv; + glEvalCoord2d: TglEvalCoord2d; + glEvalCoord2dv: TglEvalCoord2dv; + glEvalCoord2f: TglEvalCoord2f; + glEvalCoord2fv: TglEvalCoord2fv; + glEvalMesh1: TglEvalMesh1; + glEvalMesh2: TglEvalMesh2; + glEvalPoint1: TglEvalPoint1; + glEvalPoint2: TglEvalPoint2; + glFeedbackBuffer: TglFeedbackBuffer; + glFogf: TglFogf; + glFogfv: TglFogfv; + glFogi: TglFogi; + glFogiv: TglFogiv; + glFrustum: TglFrustum; + glGenLists: TglGenLists; + glGetClipPlane: TglGetClipPlane; + glGetLightfv: TglGetLightfv; + glGetLightiv: TglGetLightiv; + glGetMapdv: TglGetMapdv; + glGetMapfv: TglGetMapfv; + glGetMapiv: TglGetMapiv; + glGetMaterialfv: TglGetMaterialfv; + glGetMaterialiv: TglGetMaterialiv; + glGetPixelMapfv: TglGetPixelMapfv; + glGetPixelMapuiv: TglGetPixelMapuiv; + glGetPixelMapusv: TglGetPixelMapusv; + glGetPolygonStipple: TglGetPolygonStipple; + glGetTexEnvfv: TglGetTexEnvfv; + glGetTexEnviv: TglGetTexEnviv; + glGetTexGendv: TglGetTexGendv; + glGetTexGenfv: TglGetTexGenfv; + glGetTexGeniv: TglGetTexGeniv; + glIndexMask: TglIndexMask; + glIndexPointer: TglIndexPointer; + glIndexd: TglIndexd; + glIndexdv: TglIndexdv; + glIndexf: TglIndexf; + glIndexfv: TglIndexfv; + glIndexi: TglIndexi; + glIndexiv: TglIndexiv; + glIndexs: TglIndexs; + glIndexsv: TglIndexsv; + glIndexub: TglIndexub; + glIndexubv: TglIndexubv; + glInitNames: TglInitNames; + glInterleavedArrays: TglInterleavedArrays; + glIsList: TglIsList; + glIsTexture: TglIsTexture; + glLightModelf: TglLightModelf; + glLightModelfv: TglLightModelfv; + glLightModeli: TglLightModeli; + glLightModeliv: TglLightModeliv; + glLightf: TglLightf; + glLightfv: TglLightfv; + glLighti: TglLighti; + glLightiv: TglLightiv; + glLineStipple: TglLineStipple; + glListBase: TglListBase; + glLoadIdentity: TglLoadIdentity; + glLoadMatrixd: TglLoadMatrixd; + glLoadMatrixf: TglLoadMatrixf; + glLoadName: TglLoadName; + glMap1d: TglMap1d; + glMap1f: TglMap1f; + glMap2d: TglMap2d; + glMap2f: TglMap2f; + glMapGrid1d: TglMapGrid1d; + glMapGrid1f: TglMapGrid1f; + glMapGrid2d: TglMapGrid2d; + glMapGrid2f: TglMapGrid2f; + glMaterialf: TglMaterialf; + glMaterialfv: TglMaterialfv; + glMateriali: TglMateriali; + glMaterialiv: TglMaterialiv; + glMatrixMode: TglMatrixMode; + glMultMatrixd: TglMultMatrixd; + glMultMatrixf: TglMultMatrixf; + glNewList: TglNewList; + glNormal3b: TglNormal3b; + glNormal3bv: TglNormal3bv; + glNormal3d: TglNormal3d; + glNormal3dv: TglNormal3dv; + glNormal3f: TglNormal3f; + glNormal3fv: TglNormal3fv; + glNormal3i: TglNormal3i; + glNormal3iv: TglNormal3iv; + glNormal3s: TglNormal3s; + glNormal3sv: TglNormal3sv; + glNormalPointer: TglNormalPointer; + glOrtho: TglOrtho; + glPassThrough: TglPassThrough; + glPixelMapfv: TglPixelMapfv; + glPixelMapuiv: TglPixelMapuiv; + glPixelMapusv: TglPixelMapusv; + glPixelTransferf: TglPixelTransferf; + glPixelTransferi: TglPixelTransferi; + glPixelZoom: TglPixelZoom; + glPolygonStipple: TglPolygonStipple; + glPopAttrib: TglPopAttrib; + glPopClientAttrib: TglPopClientAttrib; + glPopMatrix: TglPopMatrix; + glPopName: TglPopName; + glPrioritizeTextures: TglPrioritizeTextures; + glPushAttrib: TglPushAttrib; + glPushClientAttrib: TglPushClientAttrib; + glPushMatrix: TglPushMatrix; + glPushName: TglPushName; + glRasterPos2d: TglRasterPos2d; + glRasterPos2dv: TglRasterPos2dv; + glRasterPos2f: TglRasterPos2f; + glRasterPos2fv: TglRasterPos2fv; + glRasterPos2i: TglRasterPos2i; + glRasterPos2iv: TglRasterPos2iv; + glRasterPos2s: TglRasterPos2s; + glRasterPos2sv: TglRasterPos2sv; + glRasterPos3d: TglRasterPos3d; + glRasterPos3dv: TglRasterPos3dv; + glRasterPos3f: TglRasterPos3f; + glRasterPos3fv: TglRasterPos3fv; + glRasterPos3i: TglRasterPos3i; + glRasterPos3iv: TglRasterPos3iv; + glRasterPos3s: TglRasterPos3s; + glRasterPos3sv: TglRasterPos3sv; + glRasterPos4d: TglRasterPos4d; + glRasterPos4dv: TglRasterPos4dv; + glRasterPos4f: TglRasterPos4f; + glRasterPos4fv: TglRasterPos4fv; + glRasterPos4i: TglRasterPos4i; + glRasterPos4iv: TglRasterPos4iv; + glRasterPos4s: TglRasterPos4s; + glRasterPos4sv: TglRasterPos4sv; + glRectd: TglRectd; + glRectdv: TglRectdv; + glRectf: TglRectf; + glRectfv: TglRectfv; + glRecti: TglRecti; + glRectiv: TglRectiv; + glRects: TglRects; + glRectsv: TglRectsv; + glRenderMode: TglRenderMode; + glRotated: TglRotated; + glRotatef: TglRotatef; + glScaled: TglScaled; + glScalef: TglScalef; + glSelectBuffer: TglSelectBuffer; + glShadeModel: TglShadeModel; + glTexCoord1d: TglTexCoord1d; + glTexCoord1dv: TglTexCoord1dv; + glTexCoord1f: TglTexCoord1f; + glTexCoord1fv: TglTexCoord1fv; + glTexCoord1i: TglTexCoord1i; + glTexCoord1iv: TglTexCoord1iv; + glTexCoord1s: TglTexCoord1s; + glTexCoord1sv: TglTexCoord1sv; + glTexCoord2d: TglTexCoord2d; + glTexCoord2dv: TglTexCoord2dv; + glTexCoord2f: TglTexCoord2f; + glTexCoord2fv: TglTexCoord2fv; + glTexCoord2i: TglTexCoord2i; + glTexCoord2iv: TglTexCoord2iv; + glTexCoord2s: TglTexCoord2s; + glTexCoord2sv: TglTexCoord2sv; + glTexCoord3d: TglTexCoord3d; + glTexCoord3dv: TglTexCoord3dv; + glTexCoord3f: TglTexCoord3f; + glTexCoord3fv: TglTexCoord3fv; + glTexCoord3i: TglTexCoord3i; + glTexCoord3iv: TglTexCoord3iv; + glTexCoord3s: TglTexCoord3s; + glTexCoord3sv: TglTexCoord3sv; + glTexCoord4d: TglTexCoord4d; + glTexCoord4dv: TglTexCoord4dv; + glTexCoord4f: TglTexCoord4f; + glTexCoord4fv: TglTexCoord4fv; + glTexCoord4i: TglTexCoord4i; + glTexCoord4iv: TglTexCoord4iv; + glTexCoord4s: TglTexCoord4s; + glTexCoord4sv: TglTexCoord4sv; + glTexCoordPointer: TglTexCoordPointer; + glTexEnvf: TglTexEnvf; + glTexEnvfv: TglTexEnvfv; + glTexEnvi: TglTexEnvi; + glTexEnviv: TglTexEnviv; + glTexGend: TglTexGend; + glTexGendv: TglTexGendv; + glTexGenf: TglTexGenf; + glTexGenfv: TglTexGenfv; + glTexGeni: TglTexGeni; + glTexGeniv: TglTexGeniv; + glTranslated: TglTranslated; + glTranslatef: TglTranslatef; + glVertex2d: TglVertex2d; + glVertex2dv: TglVertex2dv; + glVertex2f: TglVertex2f; + glVertex2fv: TglVertex2fv; + glVertex2i: TglVertex2i; + glVertex2iv: TglVertex2iv; + glVertex2s: TglVertex2s; + glVertex2sv: TglVertex2sv; + glVertex3d: TglVertex3d; + glVertex3dv: TglVertex3dv; + glVertex3f: TglVertex3f; + glVertex3fv: TglVertex3fv; + glVertex3i: TglVertex3i; + glVertex3iv: TglVertex3iv; + glVertex3s: TglVertex3s; + glVertex3sv: TglVertex3sv; + glVertex4d: TglVertex4d; + glVertex4dv: TglVertex4dv; + glVertex4f: TglVertex4f; + glVertex4fv: TglVertex4fv; + glVertex4i: TglVertex4i; + glVertex4iv: TglVertex4iv; + glVertex4s: TglVertex4s; + glVertex4sv: TglVertex4sv; + glVertexPointer: TglVertexPointer; +{$endif} + + // GL_VERSION_1_2 + glBlendColor: TglBlendColor; + glBlendEquation: TglBlendEquation; + glDrawRangeElements: TglDrawRangeElements; + glTexImage3D: TglTexImage3D; + glTexSubImage3D: TglTexSubImage3D; + glCopyTexSubImage3D: TglCopyTexSubImage3D; +{$ifdef DGL_DEPRECATED} + glColorTable: TglColorTable; + glColorTableParameterfv: TglColorTableParameterfv; + glColorTableParameteriv: TglColorTableParameteriv; + glCopyColorTable: TglCopyColorTable; + glGetColorTable: TglGetColorTable; + glGetColorTableParameterfv: TglGetColorTableParameterfv; + glGetColorTableParameteriv: TglGetColorTableParameteriv; + glColorSubTable: TglColorSubTable; + glCopyColorSubTable: TglCopyColorSubTable; + glConvolutionFilter1D: TglConvolutionFilter1D; + glConvolutionFilter2D: TglConvolutionFilter2D; + glConvolutionParameterf: TglConvolutionParameterf; + glConvolutionParameterfv: TglConvolutionParameterfv; + glConvolutionParameteri: TglConvolutionParameteri; + glConvolutionParameteriv: TglConvolutionParameteriv; + glCopyConvolutionFilter1D: TglCopyConvolutionFilter1D; + glCopyConvolutionFilter2D: TglCopyConvolutionFilter2D; + glGetConvolutionFilter: TglGetConvolutionFilter; + glGetConvolutionParameterfv: TglGetConvolutionParameterfv; + glGetConvolutionParameteriv: TglGetConvolutionParameteriv; + glGetSeparableFilter: TglGetSeparableFilter; + glSeparableFilter2D: TglSeparableFilter2D; + glGetHistogram: TglGetHistogram; + glGetHistogramParameterfv: TglGetHistogramParameterfv; + glGetHistogramParameteriv: TglGetHistogramParameteriv; + glGetMinmax: TglGetMinmax; + glGetMinmaxParameterfv: TglGetMinmaxParameterfv; + glGetMinmaxParameteriv: TglGetMinmaxParameteriv; + glHistogram: TglHistogram; + glMinmax: TglMinmax; + glResetHistogram: TglResetHistogram; + glResetMinmax: TglResetMinmax; +{$endif} + + // GL_VERSION_1_3 + glActiveTexture: TglActiveTexture; + glSampleCoverage: TglSampleCoverage; + glCompressedTexImage3D: TglCompressedTexImage3D; + glCompressedTexImage2D: TglCompressedTexImage2D; + glCompressedTexImage1D: TglCompressedTexImage1D; + glCompressedTexSubImage3D: TglCompressedTexSubImage3D; + glCompressedTexSubImage2D: TglCompressedTexSubImage2D; + glCompressedTexSubImage1D: TglCompressedTexSubImage1D; + glGetCompressedTexImage: TglGetCompressedTexImage; +{$ifdef DGL_DEPRECATED} + glClientActiveTexture: TglClientActiveTexture; + glMultiTexCoord1d: TglMultiTexCoord1d; + glMultiTexCoord1dv: TglMultiTexCoord1dv; + glMultiTexCoord1f: TglMultiTexCoord1f; + glMultiTexCoord1fv: TglMultiTexCoord1fv; + glMultiTexCoord1i: TglMultiTexCoord1i; + glMultiTexCoord1iv: TglMultiTexCoord1iv; + glMultiTexCoord1s: TglMultiTexCoord1s; + glMultiTexCoord1sv: TglMultiTexCoord1sv; + glMultiTexCoord2d: TglMultiTexCoord2d; + glMultiTexCoord2dv: TglMultiTexCoord2dv; + glMultiTexCoord2f: TglMultiTexCoord2f; + glMultiTexCoord2fv: TglMultiTexCoord2fv; + glMultiTexCoord2i: TglMultiTexCoord2i; + glMultiTexCoord2iv: TglMultiTexCoord2iv; + glMultiTexCoord2s: TglMultiTexCoord2s; + glMultiTexCoord2sv: TglMultiTexCoord2sv; + glMultiTexCoord3d: TglMultiTexCoord3d; + glMultiTexCoord3dv: TglMultiTexCoord3dv; + glMultiTexCoord3f: TglMultiTexCoord3f; + glMultiTexCoord3fv: TglMultiTexCoord3fv; + glMultiTexCoord3i: TglMultiTexCoord3i; + glMultiTexCoord3iv: TglMultiTexCoord3iv; + glMultiTexCoord3s: TglMultiTexCoord3s; + glMultiTexCoord3sv: TglMultiTexCoord3sv; + glMultiTexCoord4d: TglMultiTexCoord4d; + glMultiTexCoord4dv: TglMultiTexCoord4dv; + glMultiTexCoord4f: TglMultiTexCoord4f; + glMultiTexCoord4fv: TglMultiTexCoord4fv; + glMultiTexCoord4i: TglMultiTexCoord4i; + glMultiTexCoord4iv: TglMultiTexCoord4iv; + glMultiTexCoord4s: TglMultiTexCoord4s; + glMultiTexCoord4sv: TglMultiTexCoord4sv; + glLoadTransposeMatrixf: TglLoadTransposeMatrixf; + glLoadTransposeMatrixd: TglLoadTransposeMatrixd; + glMultTransposeMatrixf: TglMultTransposeMatrixf; + glMultTransposeMatrixd: TglMultTransposeMatrixd; +{$endif} + + // GL_VERSION_1_4 + glBlendFuncSeparate: TglBlendFuncSeparate; + glMultiDrawArrays: TglMultiDrawArrays; + glMultiDrawElements: TglMultiDrawElements; + glPointParameterf: TglPointParameterf; + glPointParameterfv: TglPointParameterfv; + glPointParameteri: TglPointParameteri; + glPointParameteriv: TglPointParameteriv; +{$ifdef DGL_DEPRECATED} + glFogCoordf: TglFogCoordf; + glFogCoordfv: TglFogCoordfv; + glFogCoordd: TglFogCoordd; + glFogCoorddv: TglFogCoorddv; + glFogCoordPointer: TglFogCoordPointer; + glSecondaryColor3b: TglSecondaryColor3b; + glSecondaryColor3bv: TglSecondaryColor3bv; + glSecondaryColor3d: TglSecondaryColor3d; + glSecondaryColor3dv: TglSecondaryColor3dv; + glSecondaryColor3f: TglSecondaryColor3f; + glSecondaryColor3fv: TglSecondaryColor3fv; + glSecondaryColor3i: TglSecondaryColor3i; + glSecondaryColor3iv: TglSecondaryColor3iv; + glSecondaryColor3s: TglSecondaryColor3s; + glSecondaryColor3sv: TglSecondaryColor3sv; + glSecondaryColor3ub: TglSecondaryColor3ub; + glSecondaryColor3ubv: TglSecondaryColor3ubv; + glSecondaryColor3ui: TglSecondaryColor3ui; + glSecondaryColor3uiv: TglSecondaryColor3uiv; + glSecondaryColor3us: TglSecondaryColor3us; + glSecondaryColor3usv: TglSecondaryColor3usv; + glSecondaryColorPointer: TglSecondaryColorPointer; + glWindowPos2d: TglWindowPos2d; + glWindowPos2dv: TglWindowPos2dv; + glWindowPos2f: TglWindowPos2f; + glWindowPos2fv: TglWindowPos2fv; + glWindowPos2i: TglWindowPos2i; + glWindowPos2iv: TglWindowPos2iv; + glWindowPos2s: TglWindowPos2s; + glWindowPos2sv: TglWindowPos2sv; + glWindowPos3d: TglWindowPos3d; + glWindowPos3dv: TglWindowPos3dv; + glWindowPos3f: TglWindowPos3f; + glWindowPos3fv: TglWindowPos3fv; + glWindowPos3i: TglWindowPos3i; + glWindowPos3iv: TglWindowPos3iv; + glWindowPos3s: TglWindowPos3s; + glWindowPos3sv: TglWindowPos3sv; +{$endif} + + // GL_VERSION_1_5 + glGenQueries: TglGenQueries; + glDeleteQueries: TglDeleteQueries; + glIsQuery: TglIsQuery; + glBeginQuery: TglBeginQuery; + glEndQuery: TglEndQuery; + glGetQueryiv: TglGetQueryiv; + glGetQueryObjectiv: TglGetQueryObjectiv; + glGetQueryObjectuiv: TglGetQueryObjectuiv; + glBindBuffer: TglBindBuffer; + glDeleteBuffers: TglDeleteBuffers; + glGenBuffers: TglGenBuffers; + glIsBuffer: TglIsBuffer; + glBufferData: TglBufferData; + glBufferSubData: TglBufferSubData; + glGetBufferSubData: TglGetBufferSubData; + glMapBuffer: TglMapBuffer; + glUnmapBuffer: TglUnmapBuffer; + glGetBufferParameteriv: TglGetBufferParameteriv; + glGetBufferPointerv: TglGetBufferPointerv; + + // GL_VERSION_2_0 + glBlendEquationSeparate: TglBlendEquationSeparate; + glDrawBuffers: TglDrawBuffers; + glStencilOpSeparate: TglStencilOpSeparate; + glStencilFuncSeparate: TglStencilFuncSeparate; + glStencilMaskSeparate: TglStencilMaskSeparate; + glAttachShader: TglAttachShader; + glBindAttribLocation: TglBindAttribLocation; + glCompileShader: TglCompileShader; + glCreateProgram: TglCreateProgram; + glCreateShader: TglCreateShader; + glDeleteProgram: TglDeleteProgram; + glDeleteShader: TglDeleteShader; + glDetachShader: TglDetachShader; + glDisableVertexAttribArray: TglDisableVertexAttribArray; + glEnableVertexAttribArray: TglEnableVertexAttribArray; + glGetActiveAttrib: TglGetActiveAttrib; + glGetActiveUniform: TglGetActiveUniform; + glGetAttachedShaders: TglGetAttachedShaders; + glGetAttribLocation: TglGetAttribLocation; + glGetProgramiv: TglGetProgramiv; + glGetProgramInfoLog: TglGetProgramInfoLog; + glGetShaderiv: TglGetShaderiv; + glGetShaderInfoLog: TglGetShaderInfoLog; + glGetShaderSource: TglGetShaderSource; + glGetUniformLocation: TglGetUniformLocation; + glGetUniformfv: TglGetUniformfv; + glGetUniformiv: TglGetUniformiv; + glGetVertexAttribfv: TglGetVertexAttribfv; + glGetVertexAttribiv: TglGetVertexAttribiv; + glGetVertexAttribPointerv: TglGetVertexAttribPointerv; + glIsProgram: TglIsProgram; + glIsShader: TglIsShader; + glLinkProgram: TglLinkProgram; + glShaderSource: TglShaderSource; + glUseProgram: TglUseProgram; + glUniform1f: TglUniform1f; + glUniform2f: TglUniform2f; + glUniform3f: TglUniform3f; + glUniform4f: TglUniform4f; + glUniform1i: TglUniform1i; + glUniform2i: TglUniform2i; + glUniform3i: TglUniform3i; + glUniform4i: TglUniform4i; + glUniform1fv: TglUniform1fv; + glUniform2fv: TglUniform2fv; + glUniform3fv: TglUniform3fv; + glUniform4fv: TglUniform4fv; + glUniform1iv: TglUniform1iv; + glUniform2iv: TglUniform2iv; + glUniform3iv: TglUniform3iv; + glUniform4iv: TglUniform4iv; + glUniformMatrix2fv: TglUniformMatrix2fv; + glUniformMatrix3fv: TglUniformMatrix3fv; + glUniformMatrix4fv: TglUniformMatrix4fv; + glValidateProgram: TglValidateProgram; + glVertexAttrib1d: TglVertexAttrib1d; + glVertexAttrib1dv: TglVertexAttrib1dv; + glVertexAttrib1f: TglVertexAttrib1f; + glVertexAttrib1fv: TglVertexAttrib1fv; + glVertexAttrib1s: TglVertexAttrib1s; + glVertexAttrib1sv: TglVertexAttrib1sv; + glVertexAttrib2d: TglVertexAttrib2d; + glVertexAttrib2dv: TglVertexAttrib2dv; + glVertexAttrib2f: TglVertexAttrib2f; + glVertexAttrib2fv: TglVertexAttrib2fv; + glVertexAttrib2s: TglVertexAttrib2s; + glVertexAttrib2sv: TglVertexAttrib2sv; + glVertexAttrib3d: TglVertexAttrib3d; + glVertexAttrib3dv: TglVertexAttrib3dv; + glVertexAttrib3f: TglVertexAttrib3f; + glVertexAttrib3fv: TglVertexAttrib3fv; + glVertexAttrib3s: TglVertexAttrib3s; + glVertexAttrib3sv: TglVertexAttrib3sv; + glVertexAttrib4Nbv: TglVertexAttrib4Nbv; + glVertexAttrib4Niv: TglVertexAttrib4Niv; + glVertexAttrib4Nsv: TglVertexAttrib4Nsv; + glVertexAttrib4Nub: TglVertexAttrib4Nub; + glVertexAttrib4Nubv: TglVertexAttrib4Nubv; + glVertexAttrib4Nuiv: TglVertexAttrib4Nuiv; + glVertexAttrib4Nusv: TglVertexAttrib4Nusv; + glVertexAttrib4bv: TglVertexAttrib4bv; + glVertexAttrib4d: TglVertexAttrib4d; + glVertexAttrib4dv: TglVertexAttrib4dv; + glVertexAttrib4f: TglVertexAttrib4f; + glVertexAttrib4fv: TglVertexAttrib4fv; + glVertexAttrib4iv: TglVertexAttrib4iv; + glVertexAttrib4s: TglVertexAttrib4s; + glVertexAttrib4sv: TglVertexAttrib4sv; + glVertexAttrib4ubv: TglVertexAttrib4ubv; + glVertexAttrib4uiv: TglVertexAttrib4uiv; + glVertexAttrib4usv: TglVertexAttrib4usv; + glVertexAttribPointer: TglVertexAttribPointer; + + // GL_VERSION_2_1 + glUniformMatrix2x3fv: TglUniformMatrix2x3fv; + glUniformMatrix3x2fv: TglUniformMatrix3x2fv; + glUniformMatrix2x4fv: TglUniformMatrix2x4fv; + glUniformMatrix4x2fv: TglUniformMatrix4x2fv; + glUniformMatrix3x4fv: TglUniformMatrix3x4fv; + glUniformMatrix4x3fv: TglUniformMatrix4x3fv; + + // GL_VERSION_3_0 + glColorMaski: TglColorMaski; + glGetBooleani_v: TglGetBooleani_v; + glGetIntegeri_v: TglGetIntegeri_v; + glEnablei: TglEnablei; + glDisablei: TglDisablei; + glIsEnabledi: TglIsEnabledi; + glBeginTransformFeedback: TglBeginTransformFeedback; + glEndTransformFeedback: TglEndTransformFeedback; + glBindBufferRange: TglBindBufferRange; + glBindBufferBase: TglBindBufferBase; + glTransformFeedbackVaryings: TglTransformFeedbackVaryings; + glGetTransformFeedbackVarying: TglGetTransformFeedbackVarying; + glClampColor: TglClampColor; + glBeginConditionalRender: TglBeginConditionalRender; + glEndConditionalRender: TglEndConditionalRender; + glVertexAttribI1i: TglVertexAttribI1i; + glVertexAttribI2i: TglVertexAttribI2i; + glVertexAttribI3i: TglVertexAttribI3i; + glVertexAttribI4i: TglVertexAttribI4i; + glVertexAttribI1ui: TglVertexAttribI1ui; + glVertexAttribI2ui: TglVertexAttribI2ui; + glVertexAttribI3ui: TglVertexAttribI3ui; + glVertexAttribI4ui: TglVertexAttribI4ui; + glVertexAttribI1iv: TglVertexAttribI1iv; + glVertexAttribI2iv: TglVertexAttribI2iv; + glVertexAttribI3iv: TglVertexAttribI3iv; + glVertexAttribI4iv: TglVertexAttribI4iv; + glVertexAttribI1uiv: TglVertexAttribI1uiv; + glVertexAttribI2uiv: TglVertexAttribI2uiv; + glVertexAttribI3uiv: TglVertexAttribI3uiv; + glVertexAttribI4uiv: TglVertexAttribI4uiv; + glVertexAttribI4bv: TglVertexAttribI4bv; + glVertexAttribI4sv: TglVertexAttribI4sv; + glVertexAttribI4ubv: TglVertexAttribI4ubv; + glVertexAttribI4usv: TglVertexAttribI4usv; + glVertexAttribIPointer: TglVertexAttribIPointer; + glGetVertexAttribIiv: TglGetVertexAttribIiv; + glGetVertexAttribIuiv: TglGetVertexAttribIuiv; + glGetUniformuiv: TglGetUniformuiv; + glBindFragDataLocation: TglBindFragDataLocation; + glGetFragDataLocation: TglGetFragDataLocation; + glUniform1ui: TglUniform1ui; + glUniform2ui: TglUniform2ui; + glUniform3ui: TglUniform3ui; + glUniform4ui: TglUniform4ui; + glUniform1uiv: TglUniform1uiv; + glUniform2uiv: TglUniform2uiv; + glUniform3uiv: TglUniform3uiv; + glUniform4uiv: TglUniform4uiv; + glTexParameterIiv: TglTexParameterIiv; + glTexParameterIuiv: TglTexParameterIuiv; + glGetTexParameterIiv: TglGetTexParameterIiv; + glGetTexParameterIuiv: TglGetTexParameterIuiv; + glClearBufferiv: TglClearBufferiv; + glClearBufferuiv: TglClearBufferuiv; + glClearBufferfv: TglClearBufferfv; + glClearBufferfi: TglClearBufferfi; + glGetStringi: TglGetStringi; + + // GL_VERSION_2_1 + glEnableVertexArrayEXT : TglEnableVertexArrayEXT; + glEnableVertexArrayAttribEXT : TglEnableVertexArrayAttribEXT; + glVertexArrayVertexAttribOffsetEXT : TglVertexArrayVertexAttribOffsetEXT; + + // GL_VERSION_3_1 + glDrawArraysInstanced: TglDrawArraysInstanced; + glDrawElementsInstanced: TglDrawElementsInstanced; + glTexBuffer: TglTexBuffer; + glPrimitiveRestartIndex: TglPrimitiveRestartIndex; + + // GL_VERSION_3_2 + glGetInteger64i_v: TglGetInteger64i_v; + glGetBufferParameteri64v: TglGetBufferParameteri64v; + glFramebufferTexture: TglFramebufferTexture; + + // GL_VERSION_3_3 + glVertexAttribDivisor: TglVertexAttribDivisor; + + // GL_VERSION_4_0 + { OpenGL 4.0 also reuses entry points from these extensions: } + { ARB_texture_query_lod (no entry points) } + { ARB_draw_indirect } + { ARB_gpu_shader5 (no entry points) } + { ARB_gpu_shader_fp64 } + { ARB_shader_subroutine } + { ARB_tessellation_shader } + { ARB_texture_buffer_object_rgb32 (no entry points) } + { ARB_texture_cube_map_array (no entry points) } + { ARB_texture_gather (no entry points) } + { ARB_transform_feedback2 } + { ARB_transform_feedback3 } + glMinSampleShading: TglMinSampleShading; + glBlendEquationi: TglBlendEquationi; + glBlendEquationSeparatei: TglBlendEquationSeparatei; + glBlendFunci: TglBlendFunci; + glBlendFuncSeparatei: TglBlendFuncSeparatei; + + // GL_3DFX_tbuffer + glTbufferMask3DFX: TglTbufferMask3DFX; + + // GL_APPLE_element_array + glElementPointerAPPLE: TglElementPointerAPPLE; + glDrawElementArrayAPPLE: TglDrawElementArrayAPPLE; + glDrawRangeElementArrayAPPLE: TglDrawRangeElementArrayAPPLE; + glMultiDrawElementArrayAPPLE: TglMultiDrawElementArrayAPPLE; + glMultiDrawRangeElementArrayAPPLE: TglMultiDrawRangeElementArrayAPPLE; + + // GL_APPLE_fence + glGenFencesAPPLE: TglGenFencesAPPLE; + glDeleteFencesAPPLE: TglDeleteFencesAPPLE; + glSetFenceAPPLE: TglSetFenceAPPLE; + glIsFenceAPPLE: TglIsFenceAPPLE; + glTestFenceAPPLE: TglTestFenceAPPLE; + glFinishFenceAPPLE: TglFinishFenceAPPLE; + glTestObjectAPPLE: TglTestObjectAPPLE; + glFinishObjectAPPLE: TglFinishObjectAPPLE; + + // GL_APPLE_vertex_array_object + glBindVertexArrayAPPLE: TglBindVertexArrayAPPLE; + glDeleteVertexArraysAPPLE: TglDeleteVertexArraysAPPLE; + glGenVertexArraysAPPLE: TglGenVertexArraysAPPLE; + glIsVertexArrayAPPLE: TglIsVertexArrayAPPLE; + + // GL_APPLE_vertex_array_range + glVertexArrayRangeAPPLE: TglVertexArrayRangeAPPLE; + glFlushVertexArrayRangeAPPLE: TglFlushVertexArrayRangeAPPLE; + glVertexArrayParameteriAPPLE: TglVertexArrayParameteriAPPLE; + + // GL_APPLE_texture_range + glTextureRangeAPPLE: TglTextureRangeAPPLE; + glGetTexParameterPointervAPPLE: TglGetTexParameterPointervAPPLE; + + // GL_APPLE_vertex_program_evaluators + glEnableVertexAttribAPPLE: TglEnableVertexAttribAPPLE; + glDisableVertexAttribAPPLE: TglDisableVertexAttribAPPLE; + glIsVertexAttribEnabledAPPLE: TglIsVertexAttribEnabledAPPLE; + glMapVertexAttrib1dAPPLE: TglMapVertexAttrib1dAPPLE; + glMapVertexAttrib1fAPPLE: TglMapVertexAttrib1fAPPLE; + glMapVertexAttrib2dAPPLE: TglMapVertexAttrib2dAPPLE; + glMapVertexAttrib2fAPPLE: TglMapVertexAttrib2fAPPLE; + + // GL_APPLE_object_purgeable + glObjectPurgeableAPPLE: TglObjectPurgeableAPPLE; + glObjectUnpurgeableAPPLE: TglObjectUnpurgeableAPPLE; + glGetObjectParameterivAPPLE: TglGetObjectParameterivAPPLE; + + // GL_ARB_matrix_palette + glCurrentPaletteMatrixARB: TglCurrentPaletteMatrixARB; + glMatrixIndexubvARB: TglMatrixIndexubvARB; + glMatrixIndexusvARB: TglMatrixIndexusvARB; + glMatrixIndexuivARB: TglMatrixIndexuivARB; + glMatrixIndexPointerARB: TglMatrixIndexPointerARB; + + // GL_ARB_multisample + glSampleCoverageARB: TglSampleCoverageARB; + + // GL_ARB_multitexture + glActiveTextureARB: TglActiveTextureARB; + glClientActiveTextureARB: TglClientActiveTextureARB; + glMultiTexCoord1dARB: TglMultiTexCoord1dARB; + glMultiTexCoord1dvARB: TglMultiTexCoord1dvARB; + glMultiTexCoord1fARB: TglMultiTexCoord1fARB; + glMultiTexCoord1fvARB: TglMultiTexCoord1fvARB; + glMultiTexCoord1iARB: TglMultiTexCoord1iARB; + glMultiTexCoord1ivARB: TglMultiTexCoord1ivARB; + glMultiTexCoord1sARB: TglMultiTexCoord1sARB; + glMultiTexCoord1svARB: TglMultiTexCoord1svARB; + glMultiTexCoord2dARB: TglMultiTexCoord2dARB; + glMultiTexCoord2dvARB: TglMultiTexCoord2dvARB; + glMultiTexCoord2fARB: TglMultiTexCoord2fARB; + glMultiTexCoord2fvARB: TglMultiTexCoord2fvARB; + glMultiTexCoord2iARB: TglMultiTexCoord2iARB; + glMultiTexCoord2ivARB: TglMultiTexCoord2ivARB; + glMultiTexCoord2sARB: TglMultiTexCoord2sARB; + glMultiTexCoord2svARB: TglMultiTexCoord2svARB; + glMultiTexCoord3dARB: TglMultiTexCoord3dARB; + glMultiTexCoord3dvARB: TglMultiTexCoord3dvARB; + glMultiTexCoord3fARB: TglMultiTexCoord3fARB; + glMultiTexCoord3fvARB: TglMultiTexCoord3fvARB; + glMultiTexCoord3iARB: TglMultiTexCoord3iARB; + glMultiTexCoord3ivARB: TglMultiTexCoord3ivARB; + glMultiTexCoord3sARB: TglMultiTexCoord3sARB; + glMultiTexCoord3svARB: TglMultiTexCoord3svARB; + glMultiTexCoord4dARB: TglMultiTexCoord4dARB; + glMultiTexCoord4dvARB: TglMultiTexCoord4dvARB; + glMultiTexCoord4fARB: TglMultiTexCoord4fARB; + glMultiTexCoord4fvARB: TglMultiTexCoord4fvARB; + glMultiTexCoord4iARB: TglMultiTexCoord4iARB; + glMultiTexCoord4ivARB: TglMultiTexCoord4ivARB; + glMultiTexCoord4sARB: TglMultiTexCoord4sARB; + glMultiTexCoord4svARB: TglMultiTexCoord4svARB; + + // GL_ARB_point_parameters + glPointParameterfARB: TglPointParameterfARB; + glPointParameterfvARB: TglPointParameterfvARB; + + // GL_ARB_texture_compression + glCompressedTexImage3DARB: TglCompressedTexImage3DARB; + glCompressedTexImage2DARB: TglCompressedTexImage2DARB; + glCompressedTexImage1DARB: TglCompressedTexImage1DARB; + glCompressedTexSubImage3DARB: TglCompressedTexSubImage3DARB; + glCompressedTexSubImage2DARB: TglCompressedTexSubImage2DARB; + glCompressedTexSubImage1DARB: TglCompressedTexSubImage1DARB; + glGetCompressedTexImageARB: TglGetCompressedTexImageARB; + + // GL_ARB_transpose_matrix + glLoadTransposeMatrixfARB: TglLoadTransposeMatrixfARB; + glLoadTransposeMatrixdARB: TglLoadTransposeMatrixdARB; + glMultTransposeMatrixfARB: TglMultTransposeMatrixfARB; + glMultTransposeMatrixdARB: TglMultTransposeMatrixdARB; + + // GL_ARB_vertex_blend + glWeightbvARB: TglWeightbvARB; + glWeightsvARB: TglWeightsvARB; + glWeightivARB: TglWeightivARB; + glWeightfvARB: TglWeightfvARB; + glWeightdvARB: TglWeightdvARB; + glWeightubvARB: TglWeightubvARB; + glWeightusvARB: TglWeightusvARB; + glWeightuivARB: TglWeightuivARB; + glWeightPointerARB: TglWeightPointerARB; + glVertexBlendARB: TglVertexBlendARB; + + // GL_ARB_vertex_buffer_object + glBindBufferARB: TglBindBufferARB; + glDeleteBuffersARB: TglDeleteBuffersARB; + glGenBuffersARB: TglGenBuffersARB; + glIsBufferARB: TglIsBufferARB; + glBufferDataARB: TglBufferDataARB; + glBufferSubDataARB: TglBufferSubData; + glGetBufferSubDataARB: TglGetBufferSubDataARB; + glMapBufferARB: TglMapBufferARB; + glUnmapBufferARB: TglUnmapBufferARB; + glGetBufferParameterivARB: TglGetBufferParameterivARB; + glGetBufferPointervARB: TglGetBufferPointervARB; + + // GL_ARB_vertex_program + glVertexAttrib1dARB: TglVertexAttrib1dARB; + glVertexAttrib1dvARB: TglVertexAttrib1dvARB; + glVertexAttrib1fARB: TglVertexAttrib1fARB; + glVertexAttrib1fvARB: TglVertexAttrib1fvARB; + glVertexAttrib1sARB: TglVertexAttrib1sARB; + glVertexAttrib1svARB: TglVertexAttrib1svARB; + glVertexAttrib2dARB: TglVertexAttrib2dARB; + glVertexAttrib2dvARB: TglVertexAttrib2dvARB; + glVertexAttrib2fARB: TglVertexAttrib2fARB; + glVertexAttrib2fvARB: TglVertexAttrib2fvARB; + glVertexAttrib2sARB: TglVertexAttrib2sARB; + glVertexAttrib2svARB: TglVertexAttrib2svARB; + glVertexAttrib3dARB: TglVertexAttrib3dARB; + glVertexAttrib3dvARB: TglVertexAttrib3dvARB; + glVertexAttrib3fARB: TglVertexAttrib3fARB; + glVertexAttrib3fvARB: TglVertexAttrib3fvARB; + glVertexAttrib3sARB: TglVertexAttrib3sARB; + glVertexAttrib3svARB: TglVertexAttrib3svARB; + glVertexAttrib4NbvARB: TglVertexAttrib4NbvARB; + glVertexAttrib4NivARB: TglVertexAttrib4NivARB; + glVertexAttrib4NsvARB: TglVertexAttrib4NsvARB; + glVertexAttrib4NubARB: TglVertexAttrib4NubARB; + glVertexAttrib4NubvARB: TglVertexAttrib4NubvARB; + glVertexAttrib4NuivARB: TglVertexAttrib4NuivARB; + glVertexAttrib4NusvARB: TglVertexAttrib4NusvARB; + glVertexAttrib4bvARB: TglVertexAttrib4bvARB; + glVertexAttrib4dARB: TglVertexAttrib4dARB; + glVertexAttrib4dvARB: TglVertexAttrib4dvARB; + glVertexAttrib4fARB: TglVertexAttrib4fARB; + glVertexAttrib4fvARB: TglVertexAttrib4fvARB; + glVertexAttrib4ivARB: TglVertexAttrib4ivARB; + glVertexAttrib4sARB: TglVertexAttrib4sARB; + glVertexAttrib4svARB: TglVertexAttrib4svARB; + glVertexAttrib4ubvARB: TglVertexAttrib4ubvARB; + glVertexAttrib4uivARB: TglVertexAttrib4uivARB; + glVertexAttrib4usvARB: TglVertexAttrib4usvARB; + glVertexAttribPointerARB: TglVertexAttribPointerARB; + glEnableVertexAttribArrayARB: TglEnableVertexAttribArrayARB; + glDisableVertexAttribArrayARB: TglDisableVertexAttribArrayARB; + glProgramStringARB: TglProgramStringARB; + glBindProgramARB: TglBindProgramARB; + glDeleteProgramsARB: TglDeleteProgramsARB; + glGenProgramsARB: TglGenProgramsARB; + + glProgramEnvParameter4dARB: TglProgramEnvParameter4dARB; + glProgramEnvParameter4dvARB: TglProgramEnvParameter4dvARB; + glProgramEnvParameter4fARB: TglProgramEnvParameter4fARB; + glProgramEnvParameter4fvARB: TglProgramEnvParameter4fvARB; + glProgramLocalParameter4dARB: TglProgramLocalParameter4dARB; + glProgramLocalParameter4dvARB: TglProgramLocalParameter4dvARB; + glProgramLocalParameter4fARB: TglProgramLocalParameter4fARB; + glProgramLocalParameter4fvARB: TglProgramLocalParameter4fvARB; + glGetProgramEnvParameterdvARB: TglGetProgramEnvParameterdvARB; + glGetProgramEnvParameterfvARB: TglGetProgramEnvParameterfvARB; + glGetProgramLocalParameterdvARB: TglGetProgramLocalParameterdvARB; + glGetProgramLocalParameterfvARB: TglGetProgramLocalParameterfvARB; + glGetProgramivARB: TglGetProgramivARB; + glGetProgramStringARB: TglGetProgramStringARB; + glGetVertexAttribdvARB: TglGetVertexAttribdvARB; + glGetVertexAttribfvARB: TglGetVertexAttribfvARB; + glGetVertexAttribivARB: TglGetVertexAttribivARB; + glGetVertexAttribPointervARB: TglGetVertexAttribPointervARB; + glIsProgramARB: TglIsProgramARB; + + // GL_ARB_window_pos + glWindowPos2dARB: TglWindowPos2dARB; + glWindowPos2dvARB: TglWindowPos2dvARB; + glWindowPos2fARB: TglWindowPos2fARB; + glWindowPos2fvARB: TglWindowPos2fvARB; + glWindowPos2iARB: TglWindowPos2iARB; + glWindowPos2ivARB: TglWindowPos2ivARB; + glWindowPos2sARB: TglWindowPos2sARB; + glWindowPos2svARB: TglWindowPos2svARB; + glWindowPos3dARB: TglWindowPos3dARB; + glWindowPos3dvARB: TglWindowPos3dvARB; + glWindowPos3fARB: TglWindowPos3fARB; + glWindowPos3fvARB: TglWindowPos3fvARB; + glWindowPos3iARB: TglWindowPos3iARB; + glWindowPos3ivARB: TglWindowPos3ivARB; + glWindowPos3sARB: TglWindowPos3sARB; + glWindowPos3svARB: TglWindowPos3svARB; + + // GL_ARB_draw_buffers + glDrawBuffersARB: TglDrawBuffersARB; + + // GL_ARB_color_buffer_float + glClampColorARB: TglClampColorARB; + + // GL_ARB_vertex_shader + glGetActiveAttribARB: TglGetActiveAttribARB; + glGetAttribLocationARB: TglGetAttribLocationARB; + glBindAttribLocationARB: TglBindAttribLocationARB; + + // GL_ARB_shader_objects + glDeleteObjectARB: TglDeleteObjectARB; + glGetHandleARB: TglGetHandleARB; + glDetachObjectARB: TglDetachObjectARB; + glCreateShaderObjectARB: TglCreateShaderObjectARB; + glShaderSourceARB: TglShaderSourceARB; + glCompileShaderARB: TglCompileShaderARB; + glCreateProgramObjectARB: TglCreateProgramObjectARB; + glAttachObjectARB: TglAttachObjectARB; + glLinkProgramARB: TglLinkProgramARB; + glUseProgramObjectARB: TglUseProgramObjectARB; + glValidateProgramARB: TglValidateProgramARB; + glUniform1fARB: TglUniform1fARB; + glUniform2fARB: TglUniform2fARB; + glUniform3fARB: TglUniform3fARB; + glUniform4fARB: TglUniform4fARB; + glUniform1iARB: TglUniform1iARB; + glUniform2iARB: TglUniform2iARB; + glUniform3iARB: TglUniform3iARB; + glUniform4iARB: TglUniform4iARB; + glUniform1fvARB: TglUniform1fvARB; + glUniform2fvARB: TglUniform2fvARB; + glUniform3fvARB: TglUniform3fvARB; + glUniform4fvARB: TglUniform4fvARB; + glUniform1ivARB: TglUniform1ivARB; + glUniform2ivARB: TglUniform2ivARB; + glUniform3ivARB: TglUniform3ivARB; + glUniform4ivARB: TglUniform4ivARB; + glUniformMatrix2fvARB: TglUniformMatrix2fvARB; + glUniformMatrix3fvARB: TglUniformMatrix3fvARB; + glUniformMatrix4fvARB: TglUniformMatrix4fvARB; + glGetObjectParameterfvARB: TglGetObjectParameterfvARB; + glGetObjectParameterivARB: TglGetObjectParameterivARB; + glGetInfoLogARB: TglGetInfoLogARB; + glGetAttachedObjectsARB: TglGetAttachedObjectsARB; + glGetUniformLocationARB: TglGetUniformLocationARB; + glGetActiveUniformARB: TglGetActiveUniformARB; + glGetUniformfvARB: TglGetUniformfvARB; + glGetUniformivARB: TglGetUniformivARB; + glGetShaderSourceARB: TglGetShaderSourceARB; + + // GL_ARB_Occlusion_Query + glGenQueriesARB: TglGenQueriesARB; + glDeleteQueriesARB: TglDeleteQueriesARB; + glIsQueryARB: TglIsQueryARB; + glBeginQueryARB: TglBeginQueryARB; + glEndQueryARB: TglEndQueryARB; + glGetQueryivARB: TglGetQueryivARB; + glGetQueryObjectivARB: TglGetQueryObjectivARB; + glGetQueryObjectuivARB: TglGetQueryObjectuivARB; + + // GL_ARB_draw_instanced + glDrawArraysInstancedARB: TglDrawArraysInstancedARB; + glDrawElementsInstancedARB: TglDrawElementsInstancedARB; + + // GL_ARB_framebuffer_object + glIsRenderbuffer: TglIsRenderbuffer; + glBindRenderbuffer: TglBindRenderbuffer; + glDeleteRenderbuffers: TglDeleteRenderbuffers; + glGenRenderbuffers: TglGenRenderbuffers; + glRenderbufferStorage: TglRenderbufferStorage; + glGetRenderbufferParameteriv: TglGetRenderbufferParameteriv; + glIsFramebuffer: TglIsFramebuffer; + glBindFramebuffer: TglBindFramebuffer; + glDeleteFramebuffers: TglDeleteFramebuffers; + glGenFramebuffers: TglGenFramebuffers; + glCheckFramebufferStatus: TglCheckFramebufferStatus; + glFramebufferTexture1D: TglFramebufferTexture1D; + glFramebufferTexture2D: TglFramebufferTexture2D; + glFramebufferTexture3D: TglFramebufferTexture3D; + glFramebufferRenderbuffer: TglFramebufferRenderbuffer; + glGetFramebufferAttachmentParameteriv: TglGetFramebufferAttachmentParameteriv; + glGenerateMipmap: TglGenerateMipmap; + glBlitFramebuffer: TglBlitFramebuffer; + glRenderbufferStorageMultisample: TglRenderbufferStorageMultisample; + glFramebufferTextureLayer: TglFramebufferTextureLayer; + + // GL_ARB_geometry_shader4 + glProgramParameteriARB: TglProgramParameteriARB; + glFramebufferTextureARB: TglFramebufferTextureARB; + glFramebufferTextureLayerARB: TglFramebufferTextureLayerARB; + glFramebufferTextureFaceARB: TglFramebufferTextureFaceARB; + + // GL_ARB_instanced_arrays + glVertexAttribDivisorARB: TglVertexAttribDivisorARB; + + // GL_ARB_map_buffer_range + glMapBufferRange: TglMapBufferRange; + glFlushMappedBufferRange: TglFlushMappedBufferRange; + + // GL_ARB_texture_buffer_object + glTexBufferARB: TglTexBufferARB; + + // GL_ARB_vertex_array_object + glBindVertexArray: TglBindVertexArray; + glDeleteVertexArrays: TglDeleteVertexArrays; + glGenVertexArrays: TglGenVertexArrays; + glIsVertexArray: TglIsVertexArray; + + // GL_ARB_uniform_buffer_object + glGetUniformIndices: TglGetUniformIndices; + glGetActiveUniformsiv: TglGetActiveUniformsiv; + glGetActiveUniformName: TglGetActiveUniformName; + glGetUniformBlockIndex: TglGetUniformBlockIndex; + glGetActiveUniformBlockiv: TglGetActiveUniformBlockiv; + glGetActiveUniformBlockName: TglGetActiveUniformBlockName; + glUniformBlockBinding: TglUniformBlockBinding; + + // GL_ARB_copy_buffer + glCopyBufferSubData: TglCopyBufferSubData; + + // GL_ARB_draw_elements_base_vertex + glDrawElementsBaseVertex: TglDrawElementsBaseVertex; + glDrawRangeElementsBaseVertex: TglDrawRangeElementsBaseVertex; + glDrawElementsInstancedBaseVertex: TglDrawElementsInstancedBaseVertex; + glMultiDrawElementsBaseVertex: TglMultiDrawElementsBaseVertex; + + // GL_ARB_provoking_vertex + glProvokingVertex: TglProvokingVertex; + + // GL_ARB_sync + glFenceSync: TglFenceSync; + glIsSync: TglIsSync; + glDeleteSync: TglDeleteSync; + glClientWaitSync: TglClientWaitSync; + glWaitSync: TglWaitSync; + glGetInteger64v: TglGetInteger64v; + glGetSynciv: TglGetSynciv; + + // GL_ARB_texture_multisample + glTexImage2DMultisample: TglTexImage2DMultisample; + glTexImage3DMultisample: TglTexImage3DMultisample; + glGetMultisamplefv: TglGetMultisamplefv; + glSampleMaski: TglSampleMaski; + + // GL_ARB_draw_buffers_blend + glBlendEquationiARB: TglBlendEquationiARB; + glBlendEquationSeparateiARB: TglBlendEquationSeparateiARB; + glBlendFunciARB: TglBlendFunciARB; + glBlendFuncSeparateiARB: TglBlendFuncSeparateiARB; + + // GL_ARB_sample_shading + glMinSampleShadingARB: TglMinSampleShadingARB; + + // GL_ARB_shading_language_include + glNamedStringARB: TglNamedStringARB; + glDeleteNamedStringARB: TglDeleteNamedStringARB; + glCompileShaderIncludeARB: TglCompileShaderIncludeARB; + glIsNamedStringARB: TglIsNamedStringARB; + glGetNamedStringARB: TglGetNamedStringARB; + glGetNamedStringivARB: TglGetNamedStringivARB; + + // GL_ARB_blend_func_extended + glBindFragDataLocationIndexed: TglBindFragDataLocationIndexed; + glGetFragDataIndex: TglGetFragDataIndex; + + // GL_ARB_sampler_objects + glGenSamplers: TglGenSamplers; + glDeleteSamplers: TglDeleteSamplers; + glIsSampler: TglIsSampler; + glBindSampler: TglBindSampler; + glSamplerParameteri: TglSamplerParameteri; + glSamplerParameteriv: TglSamplerParameteriv; + glSamplerParameterf: TglSamplerParameterf; + glSamplerParameterfv: TglSamplerParameterfv; + glSamplerParameterIiv: TglSamplerParameterIiv; + glSamplerParameterIuiv: TglSamplerParameterIuiv; + glGetSamplerParameteriv: TglGetSamplerParameteriv; + glGetSamplerParameterIiv: TglGetSamplerParameterIiv; + glGetSamplerParameterfv: TglGetSamplerParameterfv; + glGetSamplerParameterIuiv: TglGetSamplerParameterIuiv; + + // GL_ARB_timer_query + glQueryCounter: TglQueryCounter; + glGetQueryObjecti64v: TglGetQueryObjecti64v; + glGetQueryObjectui64v: TglGetQueryObjectui64v; + + // GL_ARB_vertex_type_2_10_10_10_rev + glVertexP2ui: TglVertexP2ui; + glVertexP2uiv: TglVertexP2uiv; + glVertexP3ui: TglVertexP3ui; + glVertexP3uiv: TglVertexP3uiv; + glVertexP4ui: TglVertexP4ui; + glVertexP4uiv: TglVertexP4uiv; + glTexCoordP1ui: TglTexCoordP1ui; + glTexCoordP1uiv: TglTexCoordP1uiv; + glTexCoordP2ui: TglTexCoordP2ui; + glTexCoordP2uiv: TglTexCoordP2uiv; + glTexCoordP3ui: TglTexCoordP3ui; + glTexCoordP3uiv: TglTexCoordP3uiv; + glTexCoordP4ui: TglTexCoordP4ui; + glTexCoordP4uiv: TglTexCoordP4uiv; + glMultiTexCoordP1ui: TglMultiTexCoordP1ui; + glMultiTexCoordP1uiv: TglMultiTexCoordP1uiv; + glMultiTexCoordP2ui: TglMultiTexCoordP2ui; + glMultiTexCoordP2uiv: TglMultiTexCoordP2uiv; + glMultiTexCoordP3ui: TglMultiTexCoordP3ui; + glMultiTexCoordP3uiv: TglMultiTexCoordP3uiv; + glMultiTexCoordP4ui: TglMultiTexCoordP4ui; + glMultiTexCoordP4uiv: TglMultiTexCoordP4uiv; + glNormalP3ui: TglNormalP3ui; + glNormalP3uiv: TglNormalP3uiv; + glColorP3ui: TglColorP3ui; + glColorP3uiv: TglColorP3uiv; + glColorP4ui: TglColorP4ui; + glColorP4uiv: TglColorP4uiv; + glSecondaryColorP3ui: TglSecondaryColorP3ui; + glSecondaryColorP3uiv: TglSecondaryColorP3uiv; + glVertexAttribP1ui: TglVertexAttribP1ui; + glVertexAttribP1uiv: TglVertexAttribP1uiv; + glVertexAttribP2ui: TglVertexAttribP2ui; + glVertexAttribP2uiv: TglVertexAttribP2uiv; + glVertexAttribP3ui: TglVertexAttribP3ui; + glVertexAttribP3uiv: TglVertexAttribP3uiv; + glVertexAttribP4ui: TglVertexAttribP4ui; + glVertexAttribP4uiv: TglVertexAttribP4uiv; + + // GL_ARB_draw_indirect + glDrawArraysIndirect: TglDrawArraysIndirect; + glDrawElementsIndirect: TglDrawElementsIndirect; + + // GL_ARB_gpu_shader_fp64 + glUniform1d: TglUniform1d; + glUniform2d: TglUniform2d; + glUniform3d: TglUniform3d; + glUniform4d: TglUniform4d; + glUniform1dv: TglUniform1dv; + glUniform2dv: TglUniform2dv; + glUniform3dv: TglUniform3dv; + glUniform4dv: TglUniform4dv; + glUniformMatrix2dv: TglUniformMatrix2dv; + glUniformMatrix3dv: TglUniformMatrix3dv; + glUniformMatrix4dv: TglUniformMatrix4dv; + glUniformMatrix2x3dv: TglUniformMatrix2x3dv; + glUniformMatrix2x4dv: TglUniformMatrix2x4dv; + glUniformMatrix3x2dv: TglUniformMatrix3x2dv; + glUniformMatrix3x4dv: TglUniformMatrix3x4dv; + glUniformMatrix4x2dv: TglUniformMatrix4x2dv; + glUniformMatrix4x3dv: TglUniformMatrix4x3dv; + glGetUniformdv: TglGetUniformdv; + + // GL_ARB_shader_subroutine + glGetSubroutineUniformLocation: TglGetSubroutineUniformLocation; + glGetSubroutineIndex: TglGetSubroutineIndex; + glGetActiveSubroutineUniformiv: TglGetActiveSubroutineUniformiv; + glGetActiveSubroutineUniformName: TglGetActiveSubroutineUniformName; + glGetActiveSubroutineName: TglGetActiveSubroutineName; + glUniformSubroutinesuiv: TglUniformSubroutinesuiv; + glGetUniformSubroutineuiv: TglGetUniformSubroutineuiv; + glGetProgramStageiv: TglGetProgramStageiv; + + // GL_ARB_tessellation_shader + glPatchParameteri: TglPatchParameteri; + glPatchParameterfv: TglPatchParameterfv; + + // GL_ARB_transform_feedback2 + glBindTransformFeedback: TglBindTransformFeedback; + glDeleteTransformFeedbacks: TglDeleteTransformFeedbacks; + glGenTransformFeedbacks: TglGenTransformFeedbacks; + glIsTransformFeedback: TglIsTransformFeedback; + glPauseTransformFeedback: TglPauseTransformFeedback; + glResumeTransformFeedback: TglResumeTransformFeedback; + glDrawTransformFeedback: TglDrawTransformFeedback; + + // GL_ARB_transform_feedback3 + glDrawTransformFeedbackStream: TglDrawTransformFeedbackStream; + glBeginQueryIndexed: TglBeginQueryIndexed; + glEndQueryIndexed: TglEndQueryIndexed; + glGetQueryIndexediv: TglGetQueryIndexediv; + + // GL_ARB_ES2_compatibility + glReleaseShaderCompiler: TglReleaseShaderCompiler; + glShaderBinary: TglShaderBinary; + glGetShaderPrecisionFormat: TglGetShaderPrecisionFormat; + glDepthRangef: TglDepthRangef; + glClearDepthf: TglClearDepthf; + + // GL_ARB_get_program_binary + glGetProgramBinary: TglGetProgramBinary; + glProgramBinary: TglProgramBinary; + glProgramParameteri: TglProgramParameteri; + + // GL_ARB_separate_shader_objects + glUseProgramStages: TglUseProgramStages; + glActiveShaderProgram: TglActiveShaderProgram; + glCreateShaderProgramv: TglCreateShaderProgramv; + glBindProgramPipeline: TglBindProgramPipeline; + glDeleteProgramPipelines: TglDeleteProgramPipelines; + glGenProgramPipelines: TglGenProgramPipelines; + glIsProgramPipeline: TglIsProgramPipeline; + glGetProgramPipelineiv: TglGetProgramPipelineiv; + glProgramUniform1i: TglProgramUniform1i; + glProgramUniform1iv: TglProgramUniform1iv; + glProgramUniform1f: TglProgramUniform1f; + glProgramUniform1fv: TglProgramUniform1fv; + glProgramUniform1d: TglProgramUniform1d; + glProgramUniform1dv: TglProgramUniform1dv; + glProgramUniform1ui: TglProgramUniform1ui; + glProgramUniform1uiv: TglProgramUniform1uiv; + glProgramUniform2i: TglProgramUniform2i; + glProgramUniform2iv: TglProgramUniform2iv; + glProgramUniform2f: TglProgramUniform2f; + glProgramUniform2fv: TglProgramUniform2fv; + glProgramUniform2d: TglProgramUniform2d; + glProgramUniform2dv: TglProgramUniform2dv; + glProgramUniform2ui: TglProgramUniform2ui; + glProgramUniform2uiv: TglProgramUniform2uiv; + glProgramUniform3i: TglProgramUniform3i; + glProgramUniform3iv: TglProgramUniform3iv; + glProgramUniform3f: TglProgramUniform3f; + glProgramUniform3fv: TglProgramUniform3fv; + glProgramUniform3d: TglProgramUniform3d; + glProgramUniform3dv: TglProgramUniform3dv; + glProgramUniform3ui: TglProgramUniform3ui; + glProgramUniform3uiv: TglProgramUniform3uiv; + glProgramUniform4i: TglProgramUniform4i; + glProgramUniform4iv: TglProgramUniform4iv; + glProgramUniform4f: TglProgramUniform4f; + glProgramUniform4fv: TglProgramUniform4fv; + glProgramUniform4d: TglProgramUniform4d; + glProgramUniform4dv: TglProgramUniform4dv; + glProgramUniform4ui: TglProgramUniform4ui; + glProgramUniform4uiv: TglProgramUniform4uiv; + glProgramUniformMatrix2fv: TglProgramUniformMatrix2fv; + glProgramUniformMatrix3fv: TglProgramUniformMatrix3fv; + glProgramUniformMatrix4fv: TglProgramUniformMatrix4fv; + glProgramUniformMatrix2dv: TglProgramUniformMatrix2dv; + glProgramUniformMatrix3dv: TglProgramUniformMatrix3dv; + glProgramUniformMatrix4dv: TglProgramUniformMatrix4dv; + glProgramUniformMatrix2x3fv: TglProgramUniformMatrix2x3fv; + glProgramUniformMatrix3x2fv: TglProgramUniformMatrix3x2fv; + glProgramUniformMatrix2x4fv: TglProgramUniformMatrix2x4fv; + glProgramUniformMatrix4x2fv: TglProgramUniformMatrix4x2fv; + glProgramUniformMatrix3x4fv: TglProgramUniformMatrix3x4fv; + glProgramUniformMatrix4x3fv: TglProgramUniformMatrix4x3fv; + glProgramUniformMatrix2x3dv: TglProgramUniformMatrix2x3dv; + glProgramUniformMatrix3x2dv: TglProgramUniformMatrix3x2dv; + glProgramUniformMatrix2x4dv: TglProgramUniformMatrix2x4dv; + glProgramUniformMatrix4x2dv: TglProgramUniformMatrix4x2dv; + glProgramUniformMatrix3x4dv: TglProgramUniformMatrix3x4dv; + glProgramUniformMatrix4x3dv: TglProgramUniformMatrix4x3dv; + glValidateProgramPipeline: TglValidateProgramPipeline; + glGetProgramPipelineInfoLog: TglGetProgramPipelineInfoLog; + + // GL_ARB_vertex_attrib_64bit + glVertexAttribL1d: TglVertexAttribL1d; + glVertexAttribL2d: TglVertexAttribL2d; + glVertexAttribL3d: TglVertexAttribL3d; + glVertexAttribL4d: TglVertexAttribL4d; + glVertexAttribL1dv: TglVertexAttribL1dv; + glVertexAttribL2dv: TglVertexAttribL2dv; + glVertexAttribL3dv: TglVertexAttribL3dv; + glVertexAttribL4dv: TglVertexAttribL4dv; + glVertexAttribLPointer: TglVertexAttribLPointer; + glGetVertexAttribLdv: TglGetVertexAttribLdv; + + // GL_ARB_viewport_array + glViewportArrayv: TglViewportArrayv; + glViewportIndexedf: TglViewportIndexedf; + glViewportIndexedfv: TglViewportIndexedfv; + glScissorArrayv: TglScissorArrayv; + glScissorIndexed: TglScissorIndexed; + glScissorIndexedv: TglScissorIndexedv; + glDepthRangeArrayv: TglDepthRangeArrayv; + glDepthRangeIndexed: TglDepthRangeIndexed; + glGetFloati_v: TglGetFloati_v; + glGetDoublei_v: TglGetDoublei_v; + + // GL 4.2 + + // GL_ARB_base_instance + glDrawArraysInstancedBaseInstance : TglDrawArraysInstancedBaseInstance; + glDrawElementsInstancedBaseInstance : TglDrawElementsInstancedBaseInstance; + glDrawElementsInstancedBaseVertexBaseInstance : TglDrawElementsInstancedBaseVertexBaseInstance; + + // GL_ARB_transform_feedback_instanced + glDrawTransformFeedbackInstanced : TglDrawTransformFeedbackInstanced; + glDrawTransformFeedbackStreamInstanced : TglDrawTransformFeedbackStreamInstanced; + + // GL_ARB_internalformat_query + glGetInternalformativ : TglGetInternalformativ; + + // GL_ARB_shader_atomic_counters + glGetActiveAtomicCounterBufferiv : TglGetActiveAtomicCounterBufferiv; + + /// GL_ARB_shader_image_load_store + glBindImageTexture : TglBindImageTexture; + glMemoryBarrier : TglMemoryBarrier; + + // GL_ARB_texture_storage + glTexStorage1D : TglTexStorage1D; + glTexStorage2D : TglTexStorage2D; + glTexStorage3D : TglTexStorage3D; + glTextureStorage1DEXT : TglTextureStorage1DEXT; + glTextureStorage2DEXT : TglTextureStorage2DEXT; + glTextureStorage3DEXT : TglTextureStorage3DEXT; + + + // GL 4.3 + // GL_KHR_debug + glDebugMessageControl : TglDebugMessageControl; + glDebugMessageInsert : TglDebugMessageInsert; + glDebugMessageCallback : TglDebugMessageCallback; + glGetDebugMessageLog : TglGetDebugMessageLog; + glPushDebugGroup : TglPushDebugGroup; + glPopDebugGroup : TglPopDebugGroup; + glObjectLabel : TglObjectLabel; + glGetObjectLabel : TglGetObjectLabel; + glObjectPtrLabel : TglObjectPtrLabel; + glGetObjectPtrLabel : TglGetObjectPtrLabel; + // GL_ARB_clear_buffer_object + glClearBufferData : TglClearBufferData; + glClearBufferSubData : TglClearBufferSubData; + glClearNamedBufferDataEXT : TglClearNamedBufferDataEXT; + glClearNamedBufferSubDataEXT : TglClearNamedBufferSubDataEXT; + // GL_ARB_compute_shader + glDispatchCompute : TglDispatchCompute; + glDispatchComputeIndirect : TglDispatchComputeIndirect; + // GL_ARB_copy_image + glCopyImageSubData : TglCopyImageSubData; + // GL_ARB_framebuffer_no_attachments + glFramebufferParameteri : TglFramebufferParameteri; + glGetFramebufferParameteriv : TglGetFramebufferParameteriv; + glNamedFramebufferParameteriEXT : TglNamedFramebufferParameteriEXT; + glGetNamedFramebufferParameterivEXT : TglGetNamedFramebufferParameterivEXT; + // GL_ARB_internalformat_query2 + glGetInternalformati64v : TglGetInternalformati64v; + // GL_ARB_invalidate_subdata + glInvalidateTexSubImage : TglInvalidateTexSubImage; + glInvalidateTexImage : TglInvalidateTexImage; + glInvalidateBufferSubData : TglInvalidateBufferSubData; + glInvalidateBufferData : TglInvalidateBufferData; + glInvalidateFramebuffer : TglInvalidateFramebuffer; + glInvalidateSubFramebuffer : TglInvalidateSubFramebuffer; + // GL_ARB_multi_draw_indirect + glMultiDrawArraysIndirect : TglMultiDrawArraysIndirect; + glMultiDrawElementsIndirect : TglMultiDrawElementsIndirect; + // GL_ARB_program_interface_query + glGetProgramInterfaceiv : TglGetProgramInterfaceiv; + glGetProgramResourceIndex : TglGetProgramResourceIndex; + glGetProgramResourceName : TglGetProgramResourceName; + glGetProgramResourceiv : TglGetProgramResourceiv; + glGetProgramResourceLocation : TglGetProgramResourceLocation; + glGetProgramResourceLocationIndex : TglGetProgramResourceLocationIndex; + // GL_ARB_shader_storage_buffer_object + glShaderStorageBlockBinding : TglShaderStorageBlockBinding; + // GL_ARB_texture_buffer_range + glTexBufferRange : TglTexBufferRange; + glTextureBufferRangeEXT : TglTextureBufferRangeEXT; + // GL_ARB_texture_storage_multisample + glTexStorage2DMultisample : TglTexStorage2DMultisample; + glTexStorage3DMultisample : TglTexStorage3DMultisample; + glTextureStorage2DMultisampleEXT : TglTextureStorage2DMultisampleEXT; + glTextureStorage3DMultisampleEXT : TglTextureStorage3DMultisampleEXT; + // GL_ARB_texture_view + glTextureView : TglTextureView; + // GL_ARB_vertex_attrib_binding + glBindVertexBuffer : TglBindVertexBuffer; + glVertexAttribFormat : TglVertexAttribFormat; + glVertexAttribIFormat : TglVertexAttribIFormat; + glVertexAttribLFormat : TglVertexAttribLFormat; + glVertexAttribBinding : TglVertexAttribBinding; + glVertexBindingDivisor : TglVertexBindingDivisor; + glVertexArrayBindVertexBufferEXT : TglVertexArrayBindVertexBufferEXT; + glVertexArrayVertexAttribFormatEXT : TglVertexArrayVertexAttribFormatEXT; + glVertexArrayVertexAttribIFormatEXT : TglVertexArrayVertexAttribIFormatEXT; + glVertexArrayVertexAttribLFormatEXT : TglVertexArrayVertexAttribLFormatEXT; + glVertexArrayVertexAttribBindingEXT : TglVertexArrayVertexAttribBindingEXT; + glVertexArrayVertexBindingDivisorEXT : TglVertexArrayVertexBindingDivisorEXT; + // END GL 4.3 + + + // GL 4.4 + glBufferStorage : TglBufferStorage; + glClearTexImage : TglClearTexImage; + glClearTexSubImage : TglClearTexSubImage; + glBindBuffersBase : TglBindBuffersBase; + glBindBuffersRange : TglBindBuffersRange; + glBindTextures : TglBindTextures; + glBindSamplers : TglBindSamplers; + glBindImageTextures : TglBindImageTextures; + glBindVertexBuffers : TglBindVertexBuffers; + // END GL 4.4 + + + // GL_ARB_cl_event + glCreateSyncFromCLeventARB: TglCreateSyncFromCLeventARB; + + // GL_ARB_debug_output + glDebugMessageControlARB: TglDebugMessageControlARB; + glDebugMessageInsertARB: TglDebugMessageInsertARB; + glDebugMessageCallbackARB: TglDebugMessageCallbackARB; + glGetDebugMessageLogARB: TglGetDebugMessageLogARB; + + // GL_ARB_robustness + glGetGraphicsResetStatusARB: TglGetGraphicsResetStatusARB; + glGetnMapdvARB: TglGetnMapdvARB; + glGetnMapfvARB: TglGetnMapfvARB; + glGetnMapivARB: TglGetnMapivARB; + glGetnPixelMapfvARB: TglGetnPixelMapfvARB; + glGetnPixelMapuivARB: TglGetnPixelMapuivARB; + glGetnPixelMapusvARB: TglGetnPixelMapusvARB; + glGetnPolygonStippleARB: TglGetnPolygonStippleARB; + glGetnColorTableARB: TglGetnColorTableARB; + glGetnConvolutionFilterARB: TglGetnConvolutionFilterARB; + glGetnSeparableFilterARB: TglGetnSeparableFilterARB; + glGetnHistogramARB: TglGetnHistogramARB; + glGetnMinmaxARB: TglGetnMinmaxARB; + glGetnTexImageARB: TglGetnTexImageARB; + glReadnPixelsARB: TglReadnPixelsARB; + glGetnCompressedTexImageARB: TglGetnCompressedTexImageARB; + glGetnUniformfvARB: TglGetnUniformfvARB; + glGetnUniformivARB: TglGetnUniformivARB; + glGetnUniformuivARB: TglGetnUniformuivARB; + glGetnUniformdvARB: TglGetnUniformdvARB; + + // GL_ATI_draw_buffers + glDrawBuffersATI: TglDrawBuffersATI; + + // GL_ATI_element_array + glElementPointerATI: TglElementPointerATI; + glDrawElementArrayATI: TglDrawElementArrayATI; + glDrawRangeElementArrayATI: TglDrawRangeElementArrayATI; + + // GL_ATI_envmap_bumpmap + glTexBumpParameterivATI: TglTexBumpParameterivATI; + glTexBumpParameterfvATI: TglTexBumpParameterfvATI; + glGetTexBumpParameterivATI: TglGetTexBumpParameterivATI; + glGetTexBumpParameterfvATI: TglGetTexBumpParameterfvATI; + + // GL_ATI_fragment_shader + glGenFragmentShadersATI: TglGenFragmentShadersATI; + glBindFragmentShaderATI: TglBindFragmentShaderATI; + glDeleteFragmentShaderATI: TglDeleteFragmentShaderATI; + glBeginFragmentShaderATI: TglBeginFragmentShaderATI; + glEndFragmentShaderATI: TglEndFragmentShaderATI; + glPassTexCoordATI: TglPassTexCoordATI; + glSampleMapATI: TglSampleMapATI; + glColorFragmentOp1ATI: TglColorFragmentOp1ATI; + glColorFragmentOp2ATI: TglColorFragmentOp2ATI; + glColorFragmentOp3ATI: TglColorFragmentOp3ATI; + glAlphaFragmentOp1ATI: TglAlphaFragmentOp1ATI; + glAlphaFragmentOp2ATI: TglAlphaFragmentOp2ATI; + glAlphaFragmentOp3ATI: TglAlphaFragmentOp3ATI; + glSetFragmentShaderConstantATI: TglSetFragmentShaderConstantATI; + + // GL_ATI_map_object_buffer + glMapObjectBufferATI: TglMapObjectBufferATI; + glUnmapObjectBufferATI: TglUnmapObjectBufferATI; + + // GL_ATI_pn_triangles + glPNTrianglesiATI: TglPNTrianglesiATI; + glPNTrianglesfATI: TglPNTrianglesfATI; + + // GL_ATI_separate_stencil + glStencilOpSeparateATI: TglStencilOpSeparateATI; + glStencilFuncSeparateATI: TglStencilFuncSeparateATI; + + // GL_ATI_vertex_array_object + glNewObjectBufferATI: TglNewObjectBufferATI; + glIsObjectBufferATI: TglIsObjectBufferATI; + glUpdateObjectBufferATI: TglUpdateObjectBufferATI; + glGetObjectBufferfvATI: TglGetObjectBufferfvATI; + glGetObjectBufferivATI: TglGetObjectBufferivATI; + glFreeObjectBufferATI: TglFreeObjectBufferATI; + glArrayObjectATI: TglArrayObjectATI; + glGetArrayObjectfvATI: TglGetArrayObjectfvATI; + glGetArrayObjectivATI: TglGetArrayObjectivATI; + glVariantArrayObjectATI: TglVariantArrayObjectATI; + glGetVariantArrayObjectfvATI: TglGetVariantArrayObjectfvATI; + glGetVariantArrayObjectivATI: TglGetVariantArrayObjectivATI; + glVertexAttribArrayObjectATI: TglVertexAttribArrayObjectATI; + glGetVertexAttribArrayObjectfvATI: TglGetVertexAttribArrayObjectfvATI; + glGetVertexAttribArrayObjectivATI: TglGetVertexAttribArrayObjectivATI; + + // GL_ATI_vertex_streams + glVertexStream1sATI: TglVertexStream1sATI; + glVertexStream1svATI: TglVertexStream1svATI; + glVertexStream1iATI: TglVertexStream1iATI; + glVertexStream1ivATI: TglVertexStream1ivATI; + glVertexStream1fATI: TglVertexStream1fATI; + glVertexStream1fvATI: TglVertexStream1fvATI; + glVertexStream1dATI: TglVertexStream1dATI; + glVertexStream1dvATI: TglVertexStream1dvATI; + glVertexStream2sATI: TglVertexStream2sATI; + glVertexStream2svATI: TglVertexStream2svATI; + glVertexStream2iATI: TglVertexStream2iATI; + glVertexStream2ivATI: TglVertexStream2ivATI; + glVertexStream2fATI: TglVertexStream2fATI; + glVertexStream2fvATI: TglVertexStream2fvATI; + glVertexStream2dATI: TglVertexStream2dATI; + glVertexStream2dvATI: TglVertexStream2dvATI; + glVertexStream3sATI: TglVertexStream3sATI; + glVertexStream3svATI: TglVertexStream3svATI; + glVertexStream3iATI: TglVertexStream3iATI; + glVertexStream3ivATI: TglVertexStream3ivATI; + glVertexStream3fATI: TglVertexStream3fATI; + glVertexStream3fvATI: TglVertexStream3fvATI; + glVertexStream3dATI: TglVertexStream3dATI; + glVertexStream3dvATI: TglVertexStream3dvATI; + glVertexStream4sATI: TglVertexStream4sATI; + glVertexStream4svATI: TglVertexStream4svATI; + glVertexStream4iATI: TglVertexStream4iATI; + glVertexStream4ivATI: TglVertexStream4ivATI; + glVertexStream4fATI: TglVertexStream4fATI; + glVertexStream4fvATI: TglVertexStream4fvATI; + glVertexStream4dATI: TglVertexStream4dATI; + glVertexStream4dvATI: TglVertexStream4dvATI; + glNormalStream3bATI: TglNormalStream3bATI; + glNormalStream3bvATI: TglNormalStream3bvATI; + glNormalStream3sATI: TglNormalStream3sATI; + glNormalStream3svATI: TglNormalStream3svATI; + glNormalStream3iATI: TglNormalStream3iATI; + glNormalStream3ivATI: TglNormalStream3ivATI; + glNormalStream3fATI: TglNormalStream3fATI; + glNormalStream3fvATI: TglNormalStream3fvATI; + glNormalStream3dATI: TglNormalStream3dATI; + glNormalStream3dvATI: TglNormalStream3dvATI; + glClientActiveVertexStreamATI: TglClientActiveVertexStreamATI; + glVertexBlendEnviATI: TglVertexBlendEnviATI; + glVertexBlendEnvfATI: TglVertexBlendEnvfATI; + + // GL_AMD_performance_monitor + glGetPerfMonitorGroupsAMD: TglGetPerfMonitorGroupsAMD; + glGetPerfMonitorCountersAMD: TglGetPerfMonitorCountersAMD; + glGetPerfMonitorGroupStringAMD: TglGetPerfMonitorGroupStringAMD; + glGetPerfMonitorCounterStringAMD: TglGetPerfMonitorCounterStringAMD; + glGetPerfMonitorCounterInfoAMD: TglGetPerfMonitorCounterInfoAMD; + glGenPerfMonitorsAMD: TglGenPerfMonitorsAMD; + glDeletePerfMonitorsAMD: TglDeletePerfMonitorsAMD; + glSelectPerfMonitorCountersAMD: TglSelectPerfMonitorCountersAMD; + glBeginPerfMonitorAMD: TglBeginPerfMonitorAMD; + glEndPerfMonitorAMD: TglEndPerfMonitorAMD; + glGetPerfMonitorCounterDataAMD: TglGetPerfMonitorCounterDataAMD; + + // GL_AMD_vertex_shader_tesselator + glTessellationFactorAMD: TglTessellationFactorAMD; + glTessellationModeAMD: TglTessellationModeAMD; + + // GL_AMD_draw_buffers_blend + glBlendFuncIndexedAMD: TglBlendFuncIndexedAMD; + glBlendFuncSeparateIndexedAMD: TglBlendFuncSeparateIndexedAMD; + glBlendEquationIndexedAMD: TglBlendEquationIndexedAMD; + glBlendEquationSeparateIndexedAMD: TglBlendEquationSeparateIndexedAMD; + + // GL_AMD_name_gen_delete + glGenNamesAMD: TglGenNamesAMD; + glDeleteNamesAMD: TglDeleteNamesAMD; + glIsNameAMD: TglIsNameAMD; + + // GL_AMD_debug_output + glDebugMessageEnableAMD: TglDebugMessageEnableAMD; + glDebugMessageInsertAMD: TglDebugMessageInsertAMD; + glDebugMessageCallbackAMD: TglDebugMessageCallbackAMD; + glGetDebugMessageLogAMD: TglGetDebugMessageLogAMD; + + // GL_EXT_blend_color + glBlendColorEXT: TglBlendColorEXT; + + // GL_EXT_blend_func_separate + glBlendFuncSeparateEXT: TglBlendFuncSeparateEXT; + + // GL_EXT_blend_minmax + glBlendEquationEXT: TglBlendEquationEXT; + + // GL_EXT_color_subtable + glColorSubTableEXT: TglColorSubTableEXT; + glCopyColorSubTableEXT: TglCopyColorSubTableEXT; + + // GL_EXT_compiled_vertex_array + glLockArraysEXT: TglLockArraysEXT; + glUnlockArraysEXT: TglUnlockArraysEXT; + + // GL_EXT_convolution + glConvolutionFilter1DEXT: TglConvolutionFilter1DEXT; + glConvolutionFilter2DEXT: TglConvolutionFilter2DEXT; + glConvolutionParameterfEXT: TglConvolutionParameterfEXT; + glConvolutionParameterfvEXT: TglConvolutionParameterfvEXT; + glConvolutionParameteriEXT: TglConvolutionParameteriEXT; + glConvolutionParameterivEXT: TglConvolutionParameterivEXT; + glCopyConvolutionFilter1DEXT: TglCopyConvolutionFilter1DEXT; + glCopyConvolutionFilter2DEXT: TglCopyConvolutionFilter2DEXT; + glGetConvolutionFilterEXT: TglGetConvolutionFilterEXT; + glGetConvolutionParameterfvEXT: TglGetConvolutionParameterfvEXT; + glGetConvolutionParameterivEXT: TglGetConvolutionParameterivEXT; + glGetSeparableFilterEXT: TglGetSeparableFilterEXT; + glSeparableFilter2DEXT: TglSeparableFilter2DEXT; + + // GL_EXT_coordinate_frame + glTangent3bEXT: TglTangent3bEXT; + glTangent3bvEXT: TglTangent3bvEXT; + glTangent3dEXT: TglTangent3dEXT; + glTangent3dvEXT: TglTangent3dvEXT; + glTangent3fEXT: TglTangent3fEXT; + glTangent3fvEXT: TglTangent3fvEXT; + glTangent3iEXT: TglTangent3iEXT; + glTangent3ivEXT: TglTangent3ivEXT; + glTangent3sEXT: TglTangent3sEXT; + glTangent3svEXT: TglTangent3svEXT; + glBinormal3bEXT: TglBinormal3bEXT; + glBinormal3bvEXT: TglBinormal3bvEXT; + glBinormal3dEXT: TglBinormal3dEXT; + glBinormal3dvEXT: TglBinormal3dvEXT; + glBinormal3fEXT: TglBinormal3fEXT; + glBinormal3fvEXT: TglBinormal3fvEXT; + glBinormal3iEXT: TglBinormal3iEXT; + glBinormal3ivEXT: TglBinormal3ivEXT; + glBinormal3sEXT: TglBinormal3sEXT; + glBinormal3svEXT: TglBinormal3svEXT; + glTangentPointerEXT: TglTangentPointerEXT; + glBinormalPointerEXT: TglBinormalPointerEXT; + + // GL_EXT_copy_texture + glCopyTexImage1DEXT: TglCopyTexImage1DEXT; + glCopyTexImage2DEXT: TglCopyTexImage2DEXT; + glCopyTexSubImage1DEXT: TglCopyTexSubImage1DEXT; + glCopyTexSubImage2DEXT: TglCopyTexSubImage2DEXT; + glCopyTexSubImage3DEXT: TglCopyTexSubImage3DEXT; + + // GL_EXT_cull_vertex + glCullParameterdvEXT: TglCullParameterdvEXT; + glCullParameterfvEXT: TglCullParameterfvEXT; + + // GL_EXT_draw_range_elements + glDrawRangeElementsEXT: TglDrawRangeElementsEXT; + + // GL_EXT_fog_coord + glFogCoordfEXT: TglFogCoordfEXT; + glFogCoordfvEXT: TglFogCoordfvEXT; + glFogCoorddEXT: TglFogCoorddEXT; + glFogCoorddvEXT: TglFogCoorddvEXT; + glFogCoordPointerEXT: TglFogCoordPointerEXT; + + // GL_EXT_framebuffer_object + glIsRenderbufferEXT: TglIsRenderbufferEXT; + glBindRenderbufferEXT: TglBindRenderbufferEXT; + glDeleteRenderbuffersEXT: TglDeleteRenderbuffersEXT; + glGenRenderbuffersEXT: TglGenRenderbuffersEXT; + glRenderbufferStorageEXT: TglRenderbufferStorageEXT; + glGetRenderbufferParameterivEXT: TglGetRenderbufferParameterivEXT; + glIsFramebufferEXT: TglIsFramebufferEXT; + glBindFramebufferEXT: TglBindFramebufferEXT; + glDeleteFramebuffersEXT: TglDeleteFramebuffersEXT; + glGenFramebuffersEXT: TglGenFramebuffersEXT; + glCheckFramebufferStatusEXT: TglCheckFramebufferStatusEXT; + glFramebufferTexture1DEXT: TglFramebufferTexture1DEXT; + glFramebufferTexture2DEXT: TglFramebufferTexture2DEXT; + glFramebufferTexture3DEXT: TglFramebufferTexture3DEXT; + glFramebufferRenderbufferEXT: TglFramebufferRenderbufferEXT; + glGetFramebufferAttachmentParameterivEXT: TglGetFramebufferAttachmentParameterivEXT; + glGenerateMipmapEXT: TglGenerateMipmapEXT; + + // GL_EXT_histogram + glGetHistogramEXT: TglGetHistogramEXT; + glGetHistogramParameterfvEXT: TglGetHistogramParameterfvEXT; + glGetHistogramParameterivEXT: TglGetHistogramParameterivEXT; + glGetMinmaxEXT: TglGetMinmaxEXT; + glGetMinmaxParameterfvEXT: TglGetMinmaxParameterfvEXT; + glGetMinmaxParameterivEXT: TglGetMinmaxParameterivEXT; + glHistogramEXT: TglHistogramEXT; + glMinmaxEXT: TglMinmaxEXT; + glResetHistogramEXT: TglResetHistogramEXT; + glResetMinmaxEXT: TglResetMinmaxEXT; + + // GL_EXT_index_func + glIndexFuncEXT: TglIndexFuncEXT; + + // GL_EXT_index_material + glIndexMaterialEXT: TglIndexMaterialEXT; + + // GL_EXT_light_texture + glApplyTextureEXT: TglApplyTextureEXT; + glTextureLightEXT: TglTextureLightEXT; + glTextureMaterialEXT: TglTextureMaterialEXT; + + // GL_EXT_multi_draw_arrays + glMultiDrawArraysEXT: TglMultiDrawArraysEXT; + glMultiDrawElementsEXT: TglMultiDrawElementsEXT; + + // GL_EXT_multisample + glSampleMaskEXT: TglSampleMaskEXT; + glSamplePatternEXT: TglSamplePatternEXT; + + // GL_EXT_paletted_texture + glColorTableEXT: TglColorTableEXT; + glGetColorTableEXT: TglGetColorTableEXT; + glGetColorTableParameterivEXT: TglGetColorTableParameterivEXT; + glGetColorTableParameterfvEXT: TglGetColorTableParameterfvEXT; + + // GL_EXT_pixel_transform + glPixelTransformParameteriEXT: TglPixelTransformParameteriEXT; + glPixelTransformParameterfEXT: TglPixelTransformParameterfEXT; + glPixelTransformParameterivEXT: TglPixelTransformParameterivEXT; + glPixelTransformParameterfvEXT: TglPixelTransformParameterfvEXT; + + // GL_EXT_point_parameters + glPointParameterfEXT: TglPointParameterfEXT; + glPointParameterfvEXT: TglPointParameterfvEXT; + + // GL_EXT_polygon_offset + glPolygonOffsetEXT: TglPolygonOffsetEXT; + + // GL_EXT_secondary_color + glSecondaryColor3bEXT: TglSecondaryColor3bEXT; + glSecondaryColor3bvEXT: TglSecondaryColor3bvEXT; + glSecondaryColor3dEXT: TglSecondaryColor3dEXT; + glSecondaryColor3dvEXT: TglSecondaryColor3dvEXT; + glSecondaryColor3fEXT: TglSecondaryColor3fEXT; + glSecondaryColor3fvEXT: TglSecondaryColor3fvEXT; + glSecondaryColor3iEXT: TglSecondaryColor3iEXT; + glSecondaryColor3ivEXT: TglSecondaryColor3ivEXT; + glSecondaryColor3sEXT: TglSecondaryColor3sEXT; + glSecondaryColor3svEXT: TglSecondaryColor3svEXT; + glSecondaryColor3ubEXT: TglSecondaryColor3ubEXT; + glSecondaryColor3ubvEXT: TglSecondaryColor3ubvEXT; + glSecondaryColor3uiEXT: TglSecondaryColor3uiEXT; + glSecondaryColor3uivEXT: TglSecondaryColor3uivEXT; + glSecondaryColor3usEXT: TglSecondaryColor3usEXT; + glSecondaryColor3usvEXT: TglSecondaryColor3usvEXT; + glSecondaryColorPointerEXT: TglSecondaryColorPointerEXT; + + // GL_EXT_stencil_two_side + glActiveStencilFaceEXT: TglActiveStencilFaceEXT; + + // GL_EXT_subtexture + glTexSubImage1DEXT: TglTexSubImage1DEXT; + glTexSubImage2DEXT: TglTexSubImage2DEXT; + + // GL_EXT_texture3D + glTexImage3DEXT: TglTexImage3DEXT; + glTexSubImage3DEXT: TglTexSubImage3DEXT; + + // GL_EXT_texture_object + glAreTexturesResidentEXT: TglAreTexturesResidentEXT; + glBindTextureEXT: TglBindTextureEXT; + glDeleteTexturesEXT: TglDeleteTexturesEXT; + glGenTexturesEXT: TglGenTexturesEXT; + glIsTextureEXT: TglIsTextureEXT; + glPrioritizeTexturesEXT: TglPrioritizeTexturesEXT; + + // GL_EXT_texture_perturb_normal + glTextureNormalEXT: TglTextureNormalEXT; + + // GL_EXT_vertex_array + glArrayElementEXT: TglArrayElementEXT; + glColorPointerEXT: TglColorPointerEXT; + glDrawArraysEXT: TglDrawArraysEXT; + glEdgeFlagPointerEXT: TglEdgeFlagPointerEXT; + glGetPointervEXT: TglGetPointervEXT; + glIndexPointerEXT: TglIndexPointerEXT; + glNormalPointerEXT: TglNormalPointerEXT; + glTexCoordPointerEXT: TglTexCoordPointerEXT; + glVertexPointerEXT: TglVertexPointerEXT; + + // GL_EXT_vertex_shader + glBeginVertexShaderEXT: TglBeginVertexShaderEXT; + glEndVertexShaderEXT: TglEndVertexShaderEXT; + glBindVertexShaderEXT: TglBindVertexShaderEXT; + glGenVertexShadersEXT: TglGenVertexShadersEXT; + glDeleteVertexShaderEXT: TglDeleteVertexShaderEXT; + glShaderOp1EXT: TglShaderOp1EXT; + glShaderOp2EXT: TglShaderOp2EXT; + glShaderOp3EXT: TglShaderOp3EXT; + glSwizzleEXT: TglSwizzleEXT; + glWriteMaskEXT: TglWriteMaskEXT; + glInsertComponentEXT: TglInsertComponentEXT; + glExtractComponentEXT: TglExtractComponentEXT; + glGenSymbolsEXT: TglGenSymbolsEXT; + glSetInvariantEXT: TglSetInvariantEXT; + glSetLocalConstantEXT: TglSetLocalConstantEXT; + glVariantbvEXT: TglVariantbvEXT; + glVariantsvEXT: TglVariantsvEXT; + glVariantivEXT: TglVariantivEXT; + glVariantfvEXT: TglVariantfvEXT; + glVariantdvEXT: TglVariantdvEXT; + glVariantubvEXT: TglVariantubvEXT; + glVariantusvEXT: TglVariantusvEXT; + glVariantuivEXT: TglVariantuivEXT; + glVariantPointerEXT: TglVariantPointerEXT; + glEnableVariantClientStateEXT: TglEnableVariantClientStateEXT; + glDisableVariantClientStateEXT: TglDisableVariantClientStateEXT; + glBindLightParameterEXT: TglBindLightParameterEXT; + glBindMaterialParameterEXT: TglBindMaterialParameterEXT; + glBindTexGenParameterEXT: TglBindTexGenParameterEXT; + glBindTextureUnitParameterEXT: TglBindTextureUnitParameterEXT; + glBindParameterEXT: TglBindParameterEXT; + glIsVariantEnabledEXT: TglIsVariantEnabledEXT; + glGetVariantBooleanvEXT: TglGetVariantBooleanvEXT; + glGetVariantIntegervEXT: TglGetVariantIntegervEXT; + glGetVariantFloatvEXT: TglGetVariantFloatvEXT; + glGetVariantPointervEXT: TglGetVariantPointervEXT; + glGetInvariantBooleanvEXT: TglGetInvariantBooleanvEXT; + glGetInvariantIntegervEXT: TglGetInvariantIntegervEXT; + glGetInvariantFloatvEXT: TglGetInvariantFloatvEXT; + glGetLocalConstantBooleanvEXT: TglGetLocalConstantBooleanvEXT; + glGetLocalConstantIntegervEXT: TglGetLocalConstantIntegervEXT; + glGetLocalConstantFloatvEXT: TglGetLocalConstantFloatvEXT; + + // GL_EXT_vertex_weighting + glVertexWeightfEXT: TglVertexWeightfEXT; + glVertexWeightfvEXT: TglVertexWeightfvEXT; + glVertexWeightPointerEXT: TglVertexWeightPointerEXT; + + // GL_EXT_stencil_clear_tag + glStencilClearTagEXT: TglStencilClearTagEXT; + + // GL_EXT_framebuffer_blit + glBlitFramebufferEXT: TglBlitFramebufferEXT; + + // GL_EXT_framebuffer_multisample + glRenderbufferStorageMultisampleEXT: TglRenderbufferStorageMultisampleEXT; + + // GL_EXT_timer_query + glGetQueryObjecti64vEXT: TglGetQueryObjecti64vEXT; + glGetQueryObjectui64vEXT: TglGetQueryObjectui64vEXT; + + // GL_EXT_gpu_program_parameters + glProgramEnvParameters4fvEXT: TglProgramEnvParameters4fvEXT; + glProgramLocalParameters4fvEXT: TglProgramLocalParameters4fvEXT; + + // GL_EXT_bindable_uniform + glUniformBufferEXT: TglUniformBufferEXT; + glGetUniformBufferSizeEXT: TglGetUniformBufferSizeEXT; + glGetUniformOffsetEXT: TglGetUniformOffsetEXT; + + // GL_EXT_draw_buffers2 + glColorMaskIndexedEXT: TglColorMaskIndexedEXT; + glGetBooleanIndexedvEXT: TglGetBooleanIndexedvEXT; + glGetIntegerIndexedvEXT: TglGetIntegerIndexedvEXT; + glEnableIndexedEXT: TglEnableIndexedEXT; + glDisableIndexedEXT: TglDisableIndexedEXT; + glIsEnabledIndexedEXT: TglIsEnabledIndexedEXT; + + // GL_EXT_draw_instanced + glDrawArraysInstancedEXT: TglDrawArraysInstancedEXT; + glDrawElementsInstancedEXT: TglDrawElementsInstancedEXT; + + // GL_EXT_geometry_shader4 + glProgramParameteriEXT: TglProgramParameteriEXT; + glFramebufferTextureEXT: TglFramebufferTextureEXT; +// glFramebufferTextureLayerEXT: TglFramebufferTextureLayerEXT; + glFramebufferTextureFaceEXT: TglFramebufferTextureFaceEXT; + + // GL_EXT_gpu_shader4 + glVertexAttribI1iEXT: TglVertexAttribI1iEXT; + glVertexAttribI2iEXT: TglVertexAttribI2iEXT; + glVertexAttribI3iEXT: TglVertexAttribI3iEXT; + glVertexAttribI4iEXT: TglVertexAttribI4iEXT; + glVertexAttribI1uiEXT: TglVertexAttribI1uiEXT; + glVertexAttribI2uiEXT: TglVertexAttribI2uiEXT; + glVertexAttribI3uiEXT: TglVertexAttribI3uiEXT; + glVertexAttribI4uiEXT: TglVertexAttribI4uiEXT; + glVertexAttribI1ivEXT: TglVertexAttribI1ivEXT; + glVertexAttribI2ivEXT: TglVertexAttribI2ivEXT; + glVertexAttribI3ivEXT: TglVertexAttribI3ivEXT; + glVertexAttribI4ivEXT: TglVertexAttribI4ivEXT; + glVertexAttribI1uivEXT: TglVertexAttribI1uivEXT; + glVertexAttribI2uivEXT: TglVertexAttribI2uivEXT; + glVertexAttribI3uivEXT: TglVertexAttribI3uivEXT; + glVertexAttribI4uivEXT: TglVertexAttribI4uivEXT; + glVertexAttribI4bvEXT: TglVertexAttribI4bvEXT; + glVertexAttribI4svEXT: TglVertexAttribI4svEXT; + glVertexAttribI4ubvEXT: TglVertexAttribI4ubvEXT; + glVertexAttribI4usvEXT: TglVertexAttribI4usvEXT; + glVertexAttribIPointerEXT: TglVertexAttribIPointerEXT; + glGetVertexAttribIivEXT: TglGetVertexAttribIivEXT; + glGetVertexAttribIuivEXT: TglGetVertexAttribIuivEXT; + glUniform1uiEXT: TglUniform1uiEXT; + glUniform2uiEXT: TglUniform2uiEXT; + glUniform3uiEXT: TglUniform3uiEXT; + glUniform4uiEXT: TglUniform4uiEXT; + glUniform1uivEXT: TglUniform1uivEXT; + glUniform2uivEXT: TglUniform2uivEXT; + glUniform3uivEXT: TglUniform3uivEXT; + glUniform4uivEXT: TglUniform4uivEXT; + glGetUniformuivEXT: TglGetUniformuivEXT; + glBindFragDataLocationEXT: TglBindFragDataLocationEXT; + glGetFragDataLocationEXT: TglGetFragDataLocationEXT; + + // GL_EXT_texture_array + glFramebufferTextureLayerEXT: TglFramebufferTextureLayerEXT; + + // GL_EXT_texture_buffer_object + glTexBufferEXT: TglTexBufferEXT; + + // GL_EXT_texture_integer + glClearColorIiEXT: TglClearColorIiEXT; + glClearColorIuiEXT: TglClearColorIuiEXT; + glTexParameterIivEXT: TglTexParameterIivEXT; + glTexParameterIuivEXT: TglTexParameterIuivEXT; + glGetTexParameterIivEXT: TglGetTexParameterIivEXT; + glGetTexParameterIiuvEXT: TglGetTexParameterIiuvEXT; + + // GL_EXT_transform_feedback + glBeginTransformFeedbackEXT: TglBeginTransformFeedbackEXT; + glEndTransformFeedbackEXT: TglEndTransformFeedbackEXT; + glBindBufferRangeEXT: TglBindBufferRangeEXT; + glBindBufferOffsetEXT: TglBindBufferOffsetEXT; + glBindBufferBaseEXT: TglBindBufferBaseEXT; + glTransformFeedbackVaryingsEXT: TglTransformFeedbackVaryingsEXT; + glGetTransformFeedbackVaryingEXT: TglGetTransformFeedbackVaryingEXT; + + // GL_EXT_direct_state_access + glClientAttribDefaultEXT: TglClientAttribDefaultEXT; + glPushClientAttribDefaultEXT: TglPushClientAttribDefaultEXT; + glMatrixLoadfEXT: TglMatrixLoadfEXT; + glMatrixLoaddEXT: TglMatrixLoaddEXT; + glMatrixMultfEXT: TglMatrixMultfEXT; + glMatrixMultdEXT: TglMatrixMultdEXT; + glMatrixLoadIdentityEXT: TglMatrixLoadIdentityEXT; + glMatrixRotatefEXT: TglMatrixRotatefEXT; + glMatrixRotatedEXT: TglMatrixRotatedEXT; + glMatrixScalefEXT: TglMatrixScalefEXT; + glMatrixScaledEXT: TglMatrixScaledEXT; + glMatrixTranslatefEXT: TglMatrixTranslatefEXT; + glMatrixTranslatedEXT: TglMatrixTranslatedEXT; + glMatrixFrustumEXT: TglMatrixFrustumEXT; + glMatrixOrthoEXT: TglMatrixOrthoEXT; + glMatrixPopEXT: TglMatrixPopEXT; + glMatrixPushEXT: TglMatrixPushEXT; + glMatrixLoadTransposefEXT: TglMatrixLoadTransposefEXT; + glMatrixLoadTransposedEXT: TglMatrixLoadTransposedEXT; + glMatrixMultTransposefEXT: TglMatrixMultTransposefEXT; + glMatrixMultTransposedEXT: TglMatrixMultTransposedEXT; + glTextureParameterfEXT: TglTextureParameterfEXT; + glTextureParameterfvEXT: TglTextureParameterfvEXT; + glTextureParameteriEXT: TglTextureParameteriEXT; + glTextureParameterivEXT: TglTextureParameterivEXT; + glTextureImage1DEXT: TglTextureImage1DEXT; + glTextureImage2DEXT: TglTextureImage2DEXT; + glTextureSubImage1DEXT: TglTextureSubImage1DEXT; + glTextureSubImage2DEXT: TglTextureSubImage2DEXT; + glCopyTextureImage1DEXT: TglCopyTextureImage1DEXT; + glCopyTextureImage2DEXT: TglCopyTextureImage2DEXT; + glCopyTextureSubImage1DEXT: TglCopyTextureSubImage1DEXT; + glCopyTextureSubImage2DEXT: TglCopyTextureSubImage2DEXT; + glGetTextureImageEXT: TglGetTextureImageEXT; + glGetTextureParameterfvEXT: TglGetTextureParameterfvEXT; + glGetTextureParameterivEXT: TglGetTextureParameterivEXT; + glGetTextureLevelParameterfvEXT: TglGetTextureLevelParameterfvEXT; + glGetTextureLevelParameterivEXT: TglGetTextureLevelParameterivEXT; + glTextureImage3DEXT: TglTextureImage3DEXT; + glTextureSubImage3DEXT: TglTextureSubImage3DEXT; + glCopyTextureSubImage3DEXT: TglCopyTextureSubImage3DEXT; + glMultiTexParameterfEXT: TglMultiTexParameterfEXT; + glMultiTexParameterfvEXT: TglMultiTexParameterfvEXT; + glMultiTexParameteriEXT: TglMultiTexParameteriEXT; + glMultiTexParameterivEXT: TglMultiTexParameterivEXT; + glMultiTexImage1DEXT: TglMultiTexImage1DEXT; + glMultiTexImage2DEXT: TglMultiTexImage2DEXT; + glMultiTexSubImage1DEXT: TglMultiTexSubImage1DEXT; + glMultiTexSubImage2DEXT: TglMultiTexSubImage2DEXT; + glCopyMultiTexImage1DEXT: TglCopyMultiTexImage1DEXT; + glCopyMultiTexImage2DEXT: TglCopyMultiTexImage2DEXT; + glCopyMultiTexSubImage1DEXT: TglCopyMultiTexSubImage1DEXT; + glCopyMultiTexSubImage2DEXT: TglCopyMultiTexSubImage2DEXT; + glGetMultiTexImageEXT: TglGetMultiTexImageEXT; + glGetMultiTexParameterfvEXT: TglGetMultiTexParameterfvEXT; + glGetMultiTexParameterivEXT: TglGetMultiTexParameterivEXT; + glGetMultiTexLevelParameterfvEXT: TglGetMultiTexLevelParameterfvEXT; + glGetMultiTexLevelParameterivEXT: TglGetMultiTexLevelParameterivEXT; + glMultiTexImage3DEXT: TglMultiTexImage3DEXT; + glMultiTexSubImage3DEXT: TglMultiTexSubImage3DEXT; + glCopyMultiTexSubImage3DEXT: TglCopyMultiTexSubImage3DEXT; + glBindMultiTextureEXT: TglBindMultiTextureEXT; + glEnableClientStateIndexedEXT: TglEnableClientStateIndexedEXT; + glDisableClientStateIndexedEXT: TglDisableClientStateIndexedEXT; + glMultiTexCoordPointerEXT: TglMultiTexCoordPointerEXT; + glMultiTexEnvfEXT: TglMultiTexEnvfEXT; + glMultiTexEnvfvEXT: TglMultiTexEnvfvEXT; + glMultiTexEnviEXT: TglMultiTexEnviEXT; + glMultiTexEnvivEXT: TglMultiTexEnvivEXT; + glMultiTexGendEXT: TglMultiTexGendEXT; + glMultiTexGendvEXT: TglMultiTexGendvEXT; + glMultiTexGenfEXT: TglMultiTexGenfEXT; + glMultiTexGenfvEXT: TglMultiTexGenfvEXT; + glMultiTexGeniEXT: TglMultiTexGeniEXT; + glMultiTexGenivEXT: TglMultiTexGenivEXT; + glGetMultiTexEnvfvEXT: TglGetMultiTexEnvfvEXT; + glGetMultiTexEnvivEXT: TglGetMultiTexEnvivEXT; + glGetMultiTexGendvEXT: TglGetMultiTexGendvEXT; + glGetMultiTexGenfvEXT: TglGetMultiTexGenfvEXT; + glGetMultiTexGenivEXT: TglGetMultiTexGenivEXT; + glGetFloatIndexedvEXT: TglGetFloatIndexedvEXT; + glGetDoubleIndexedvEXT: TglGetDoubleIndexedvEXT; + glGetPointerIndexedvEXT: TglGetPointerIndexedvEXT; + glCompressedTextureImage3DEXT: TglCompressedTextureImage3DEXT; + glCompressedTextureImage2DEXT: TglCompressedTextureImage2DEXT; + glCompressedTextureImage1DEXT: TglCompressedTextureImage1DEXT; + glCompressedTextureSubImage3DEXT: TglCompressedTextureSubImage3DEXT; + glCompressedTextureSubImage2DEXT: TglCompressedTextureSubImage2DEXT; + glCompressedTextureSubImage1DEXT: TglCompressedTextureSubImage1DEXT; + glGetCompressedTextureImageEXT: TglGetCompressedTextureImageEXT; + glCompressedMultiTexImage3DEXT: TglCompressedMultiTexImage3DEXT; + glCompressedMultiTexImage2DEXT: TglCompressedMultiTexImage2DEXT; + glCompressedMultiTexImage1DEXT: TglCompressedMultiTexImage1DEXT; + glCompressedMultiTexSubImage3DEXT: TglCompressedMultiTexSubImage3DEXT; + glCompressedMultiTexSubImage2DEXT: TglCompressedMultiTexSubImage2DEXT; + glCompressedMultiTexSubImage1DEXT: TglCompressedMultiTexSubImage1DEXT; + glGetCompressedMultiTexImageEXT: TglGetCompressedMultiTexImageEXT; + glNamedProgramStringEXT: TglNamedProgramStringEXT; + glNamedProgramLocalParameter4dEXT: TglNamedProgramLocalParameter4dEXT; + glNamedProgramLocalParameter4dvEXT: TglNamedProgramLocalParameter4dvEXT; + glNamedProgramLocalParameter4fEXT: TglNamedProgramLocalParameter4fEXT; + glNamedProgramLocalParameter4fvEXT: TglNamedProgramLocalParameter4fvEXT; + glGetNamedProgramLocalParameterdvEXT: TglGetNamedProgramLocalParameterdvEXT; + glGetNamedProgramLocalParameterfvEXT: TglGetNamedProgramLocalParameterfvEXT; + glGetNamedProgramivEXT: TglGetNamedProgramivEXT; + glGetNamedProgramStringEXT: TglGetNamedProgramStringEXT; + glNamedProgramLocalParameters4fvEXT: TglNamedProgramLocalParameters4fvEXT; + glNamedProgramLocalParameterI4iEXT: TglNamedProgramLocalParameterI4iEXT; + glNamedProgramLocalParameterI4ivEXT: TglNamedProgramLocalParameterI4ivEXT; + glNamedProgramLocalParametersI4ivEXT: TglNamedProgramLocalParametersI4ivEXT; + glNamedProgramLocalParameterI4uiEXT: TglNamedProgramLocalParameterI4uiEXT; + glNamedProgramLocalParameterI4uivEXT: TglNamedProgramLocalParameterI4uivEXT; + glNamedProgramLocalParametersI4uivEXT: TglNamedProgramLocalParametersI4uivEXT; + glGetNamedProgramLocalParameterIivEXT: TglGetNamedProgramLocalParameterIivEXT; + glGetNamedProgramLocalParameterIuivEXT: TglGetNamedProgramLocalParameterIuivEXT; + glTextureParameterIivEXT: TglTextureParameterIivEXT; + glTextureParameterIuivEXT: TglTextureParameterIuivEXT; + glGetTextureParameterIivEXT: TglGetTextureParameterIivEXT; + glGetTextureParameterIuivEXT: TglGetTextureParameterIuivEXT; + glMultiTexParameterIivEXT: TglMultiTexParameterIivEXT; + glMultiTexParameterIuivEXT: TglMultiTexParameterIuivEXT; + glGetMultiTexParameterIivEXT: TglGetMultiTexParameterIivEXT; + glGetMultiTexParameterIuivEXT: TglGetMultiTexParameterIuivEXT; + glProgramUniform1fEXT: TglProgramUniform1fEXT; + glProgramUniform2fEXT: TglProgramUniform2fEXT; + glProgramUniform3fEXT: TglProgramUniform3fEXT; + glProgramUniform4fEXT: TglProgramUniform4fEXT; + glProgramUniform1iEXT: TglProgramUniform1iEXT; + glProgramUniform2iEXT: TglProgramUniform2iEXT; + glProgramUniform3iEXT: TglProgramUniform3iEXT; + glProgramUniform4iEXT: TglProgramUniform4iEXT; + glProgramUniform1fvEXT: TglProgramUniform1fvEXT; + glProgramUniform2fvEXT: TglProgramUniform2fvEXT; + glProgramUniform3fvEXT: TglProgramUniform3fvEXT; + glProgramUniform4fvEXT: TglProgramUniform4fvEXT; + glProgramUniform1ivEXT: TglProgramUniform1ivEXT; + glProgramUniform2ivEXT: TglProgramUniform2ivEXT; + glProgramUniform3ivEXT: TglProgramUniform3ivEXT; + glProgramUniform4ivEXT: TglProgramUniform4ivEXT; + glProgramUniformMatrix2fvEXT: TglProgramUniformMatrix2fvEXT; + glProgramUniformMatrix3fvEXT: TglProgramUniformMatrix3fvEXT; + glProgramUniformMatrix4fvEXT: TglProgramUniformMatrix4fvEXT; + glProgramUniformMatrix2x3fvEXT: TglProgramUniformMatrix2x3fvEXT; + glProgramUniformMatrix3x2fvEXT: TglProgramUniformMatrix3x2fvEXT; + glProgramUniformMatrix2x4fvEXT: TglProgramUniformMatrix2x4fvEXT; + glProgramUniformMatrix4x2fvEXT: TglProgramUniformMatrix4x2fvEXT; + glProgramUniformMatrix3x4fvEXT: TglProgramUniformMatrix3x4fvEXT; + glProgramUniformMatrix4x3fvEXT: TglProgramUniformMatrix4x3fvEXT; + glProgramUniform1uiEXT: TglProgramUniform1uiEXT; + glProgramUniform2uiEXT: TglProgramUniform2uiEXT; + glProgramUniform3uiEXT: TglProgramUniform3uiEXT; + glProgramUniform4uiEXT: TglProgramUniform4uiEXT; + glProgramUniform1uivEXT: TglProgramUniform1uivEXT; + glProgramUniform2uivEXT: TglProgramUniform2uivEXT; + glProgramUniform3uivEXT: TglProgramUniform3uivEXT; + glProgramUniform4uivEXT: TglProgramUniform4uivEXT; + glNamedBufferDataEXT: TglNamedBufferDataEXT; + glNamedBufferSubDataEXT: TglNamedBufferSubDataEXT; + glMapNamedBufferEXT: TglMapNamedBufferEXT; + glUnmapNamedBufferEXT: TglUnmapNamedBufferEXT; + glMapNamedBufferRangeEXT: TglMapNamedBufferRangeEXT; + glFlushMappedNamedBufferRangeEXT: TglFlushMappedNamedBufferRangeEXT; + glNamedCopyBufferSubDataEXT: TglNamedCopyBufferSubDataEXT; + glGetNamedBufferParameterivEXT: TglGetNamedBufferParameterivEXT; + glGetNamedBufferPointervEXT: TglGetNamedBufferPointervEXT; + glGetNamedBufferSubDataEXT: TglGetNamedBufferSubDataEXT; + glTextureBufferEXT: TglTextureBufferEXT; + glMultiTexBufferEXT: TglMultiTexBufferEXT; + glNamedRenderbufferStorageEXT: TglNamedRenderbufferStorageEXT; + glGetNamedRenderbufferParameterivEXT: TglGetNamedRenderbufferParameterivEXT; + glCheckNamedFramebufferStatusEXT: TglCheckNamedFramebufferStatusEXT; + glNamedFramebufferTexture1DEXT: TglNamedFramebufferTexture1DEXT; + glNamedFramebufferTexture2DEXT: TglNamedFramebufferTexture2DEXT; + glNamedFramebufferTexture3DEXT: TglNamedFramebufferTexture3DEXT; + glNamedFramebufferRenderbufferEXT: TglNamedFramebufferRenderbufferEXT; + glGetNamedFramebufferAttachmentParameterivEXT: TglGetNamedFramebufferAttachmentParameterivEXT; + glGenerateTextureMipmapEXT: TglGenerateTextureMipmapEXT; + glGenerateMultiTexMipmapEXT: TglGenerateMultiTexMipmapEXT; + glFramebufferDrawBufferEXT: TglFramebufferDrawBufferEXT; + glFramebufferDrawBuffersEXT: TglFramebufferDrawBuffersEXT; + glFramebufferReadBufferEXT: TglFramebufferReadBufferEXT; + glGetFramebufferParameterivEXT: TglGetFramebufferParameterivEXT; + glNamedRenderbufferStorageMultisampleEXT: TglNamedRenderbufferStorageMultisampleEXT; + glNamedRenderbufferStorageMultisampleCoverageEXT: TglNamedRenderbufferStorageMultisampleCoverageEXT; + glNamedFramebufferTextureEXT: TglNamedFramebufferTextureEXT; + glNamedFramebufferTextureLayerEXT: TglNamedFramebufferTextureLayerEXT; + glNamedFramebufferTextureFaceEXT: TglNamedFramebufferTextureFaceEXT; + glTextureRenderbufferEXT: TglTextureRenderbufferEXT; + glMultiTexRenderbufferEXT: TglMultiTexRenderbufferEXT; + glProgramUniform1dEXT: TglProgramUniform1dEXT; + glProgramUniform2dEXT: TglProgramUniform2dEXT; + glProgramUniform3dEXT: TglProgramUniform3dEXT; + glProgramUniform4dEXT: TglProgramUniform4dEXT; + glProgramUniform1dvEXT: TglProgramUniform1dvEXT; + glProgramUniform2dvEXT: TglProgramUniform2dvEXT; + glProgramUniform3dvEXT: TglProgramUniform3dvEXT; + glProgramUniform4dvEXT: TglProgramUniform4dvEXT; + glProgramUniformMatrix2dvEXT: TglProgramUniformMatrix2dvEXT; + glProgramUniformMatrix3dvEXT: TglProgramUniformMatrix3dvEXT; + glProgramUniformMatrix4dvEXT: TglProgramUniformMatrix4dvEXT; + glProgramUniformMatrix2x3dvEXT: TglProgramUniformMatrix2x3dvEXT; + glProgramUniformMatrix2x4dvEXT: TglProgramUniformMatrix2x4dvEXT; + glProgramUniformMatrix3x2dvEXT: TglProgramUniformMatrix3x2dvEXT; + glProgramUniformMatrix3x4dvEXT: TglProgramUniformMatrix3x4dvEXT; + glProgramUniformMatrix4x2dvEXT: TglProgramUniformMatrix4x2dvEXT; + glProgramUniformMatrix4x3dvEXT: TglProgramUniformMatrix4x3dvEXT; + + // GL_EXT_separate_shader_objects + glUseShaderProgramEXT: TglUseShaderProgramEXT; + glActiveProgramEXT: TglActiveProgramEXT; + glCreateShaderProgramEXT: TglCreateShaderProgramEXT; + + // GL_EXT_shader_image_load_store + glBindImageTextureEXT: TglBindImageTextureEXT; + glMemoryBarrierEXT: TglMemoryBarrierEXT; + + // GL_EXT_vertex_attrib_64bit + glVertexAttribL1dEXT: TglVertexAttribL1dEXT; + glVertexAttribL2dEXT: TglVertexAttribL2dEXT; + glVertexAttribL3dEXT: TglVertexAttribL3dEXT; + glVertexAttribL4dEXT: TglVertexAttribL4dEXT; + glVertexAttribL1dvEXT: TglVertexAttribL1dvEXT; + glVertexAttribL2dvEXT: TglVertexAttribL2dvEXT; + glVertexAttribL3dvEXT: TglVertexAttribL3dvEXT; + glVertexAttribL4dvEXT: TglVertexAttribL4dvEXT; + glVertexAttribLPointerEXT: TglVertexAttribLPointerEXT; + glGetVertexAttribLdvEXT: TglGetVertexAttribLdvEXT; + glVertexArrayVertexAttribLOffsetEXT: TglVertexArrayVertexAttribLOffsetEXT; + + // GL_HP_image_transform + glImageTransformParameteriHP: TglImageTransformParameteriHP; + glImageTransformParameterfHP: TglImageTransformParameterfHP; + glImageTransformParameterivHP: TglImageTransformParameterivHP; + glImageTransformParameterfvHP: TglImageTransformParameterfvHP; + glGetImageTransformParameterivHP: TglGetImageTransformParameterivHP; + glGetImageTransformParameterfvHP: TglGetImageTransformParameterfvHP; + + // GL_EXT_depth_bounds_test + glDepthBoundsEXT: TglDepthBoundsEXT; + + // GL_EXT_blend_equation_separate + glBlendEquationSeparateEXT: TglBlendEquationSeparateEXT; + + // GL_IBM_multimode_draw_arrays + glMultiModeDrawArraysIBM: TglMultiModeDrawArraysIBM; + glMultiModeDrawElementsIBM: TglMultiModeDrawElementsIBM; + + // GL_IBM_vertex_array_lists + glColorPointerListIBM: TglColorPointerListIBM; + glSecondaryColorPointerListIBM: TglSecondaryColorPointerListIBM; + glEdgeFlagPointerListIBM: TglEdgeFlagPointerListIBM; + glFogCoordPointerListIBM: TglFogCoordPointerListIBM; + glIndexPointerListIBM: TglIndexPointerListIBM; + glNormalPointerListIBM: TglNormalPointerListIBM; + glTexCoordPointerListIBM: TglTexCoordPointerListIBM; + glVertexPointerListIBM: TglVertexPointerListIBM; + + // GL_INGR_blend_func_separate + glBlendFuncSeparateINGR: TglBlendFuncSeparateINGR; + + // GL_INTEL_parallel_arrays + glVertexPointervINTEL: TglVertexPointervINTEL; + glNormalPointervINTEL: TglNormalPointervINTEL; + glColorPointervINTEL: TglColorPointervINTEL; + glTexCoordPointervINTEL: TglTexCoordPointervINTEL; + + // GL_MESA_resize_buffers + glResizeBuffersMESA: TglResizeBuffersMESA; + + // GL_MESA_window_pos + glWindowPos2dMESA: TglWindowPos2dMESA; + glWindowPos2dvMESA: TglWindowPos2dvMESA; + glWindowPos2fMESA: TglWindowPos2fMESA; + glWindowPos2fvMESA: TglWindowPos2fvMESA; + glWindowPos2iMESA: TglWindowPos2iMESA; + glWindowPos2ivMESA: TglWindowPos2ivMESA; + glWindowPos2sMESA: TglWindowPos2sMESA; + glWindowPos2svMESA: TglWindowPos2svMESA; + glWindowPos3dMESA: TglWindowPos3dMESA; + glWindowPos3dvMESA: TglWindowPos3dvMESA; + glWindowPos3fMESA: TglWindowPos3fMESA; + glWindowPos3fvMESA: TglWindowPos3fvMESA; + glWindowPos3iMESA: TglWindowPos3iMESA; + glWindowPos3ivMESA: TglWindowPos3ivMESA; + glWindowPos3sMESA: TglWindowPos3sMESA; + glWindowPos3svMESA: TglWindowPos3svMESA; + glWindowPos4dMESA: TglWindowPos4dMESA; + glWindowPos4dvMESA: TglWindowPos4dvMESA; + glWindowPos4fMESA: TglWindowPos4fMESA; + glWindowPos4fvMESA: TglWindowPos4fvMESA; + glWindowPos4iMESA: TglWindowPos4iMESA; + glWindowPos4ivMESA: TglWindowPos4ivMESA; + glWindowPos4sMESA: TglWindowPos4sMESA; + glWindowPos4svMESA: TglWindowPos4svMESA; + + // GL_NV_evaluators + glMapControlPointsNV: TglMapControlPointsNV; + glMapParameterivNV: TglMapParameterivNV; + glMapParameterfvNV: TglMapParameterfvNV; + glGetMapControlPointsNV: TglGetMapControlPointsNV; + glGetMapParameterivNV: TglGetMapParameterivNV; + glGetMapParameterfvNV: TglGetMapParameterfvNV; + glGetMapAttribParameterivNV: TglGetMapAttribParameterivNV; + glGetMapAttribParameterfvNV: TglGetMapAttribParameterfvNV; + glEvalMapsNV: TglEvalMapsNV; + + // GL_NV_fence + glDeleteFencesNV: TglDeleteFencesNV; + glGenFencesNV: TglGenFencesNV; + glIsFenceNV: TglIsFenceNV; + glTestFenceNV: TglTestFenceNV; + glGetFenceivNV: TglGetFenceivNV; + glFinishFenceNV: TglFinishFenceNV; + glSetFenceNV: TglSetFenceNV; + + // GL_NV_fragment_program + glProgramNamedParameter4fNV: TglProgramNamedParameter4fNV; + glProgramNamedParameter4dNV: TglProgramNamedParameter4dNV; + glProgramNamedParameter4fvNV: TglProgramNamedParameter4fvNV; + glProgramNamedParameter4dvNV: TglProgramNamedParameter4dvNV; + glGetProgramNamedParameterfvNV: TglGetProgramNamedParameterfvNV; + glGetProgramNamedParameterdvNV: TglGetProgramNamedParameterdvNV; + + // GL_NV_half_float + glVertex2hNV: TglVertex2hNV; + glVertex2hvNV: TglVertex2hvNV; + glVertex3hNV: TglVertex3hNV; + glVertex3hvNV: TglVertex3hvNV; + glVertex4hNV: TglVertex4hNV; + glVertex4hvNV: TglVertex4hvNV; + glNormal3hNV: TglNormal3hNV; + glNormal3hvNV: TglNormal3hvNV; + glColor3hNV: TglColor3hNV; + glColor3hvNV: TglColor3hvNV; + glColor4hNV: TglColor4hNV; + glColor4hvNV: TglColor4hvNV; + glTexCoord1hNV: TglTexCoord1hNV; + glTexCoord1hvNV: TglTexCoord1hvNV; + glTexCoord2hNV: TglTexCoord2hNV; + glTexCoord2hvNV: TglTexCoord2hvNV; + glTexCoord3hNV: TglTexCoord3hNV; + glTexCoord3hvNV: TglTexCoord3hvNV; + glTexCoord4hNV: TglTexCoord4hNV; + glTexCoord4hvNV: TglTexCoord4hvNV; + glMultiTexCoord1hNV: TglMultiTexCoord1hNV; + glMultiTexCoord1hvNV: TglMultiTexCoord1hvNV; + glMultiTexCoord2hNV: TglMultiTexCoord2hNV; + glMultiTexCoord2hvNV: TglMultiTexCoord2hvNV; + glMultiTexCoord3hNV: TglMultiTexCoord3hNV; + glMultiTexCoord3hvNV: TglMultiTexCoord3hvNV; + glMultiTexCoord4hNV: TglMultiTexCoord4hNV; + glMultiTexCoord4hvNV: TglMultiTexCoord4hvNV; + glFogCoordhNV: TglFogCoordhNV; + glFogCoordhvNV: TglFogCoordhvNV; + glSecondaryColor3hNV: TglSecondaryColor3hNV; + glSecondaryColor3hvNV: TglSecondaryColor3hvNV; + glVertexWeighthNV: TglVertexWeighthNV; + glVertexWeighthvNV: TglVertexWeighthvNV; + glVertexAttrib1hNV: TglVertexAttrib1hNV; + glVertexAttrib1hvNV: TglVertexAttrib1hvNV; + glVertexAttrib2hNV: TglVertexAttrib2hNV; + glVertexAttrib2hvNV: TglVertexAttrib2hvNV; + glVertexAttrib3hNV: TglVertexAttrib3hNV; + glVertexAttrib3hvNV: TglVertexAttrib3hvNV; + glVertexAttrib4hNV: TglVertexAttrib4hNV; + glVertexAttrib4hvNV: TglVertexAttrib4hvNV; + glVertexAttribs1hvNV: TglVertexAttribs1hvNV; + glVertexAttribs2hvNV: TglVertexAttribs2hvNV; + glVertexAttribs3hvNV: TglVertexAttribs3hvNV; + glVertexAttribs4hvNV: TglVertexAttribs4hvNV; + + // GL_NV_occlusion_query + glGenOcclusionQueriesNV: TglGenOcclusionQueriesNV; + glDeleteOcclusionQueriesNV: TglDeleteOcclusionQueriesNV; + glIsOcclusionQueryNV: TglIsOcclusionQueryNV; + glBeginOcclusionQueryNV: TglBeginOcclusionQueryNV; + glEndOcclusionQueryNV: TglEndOcclusionQueryNV; + glGetOcclusionQueryivNV: TglGetOcclusionQueryivNV; + glGetOcclusionQueryuivNV: TglGetOcclusionQueryuivNV; + + // GL_NV_pixel_data_range + glPixelDataRangeNV: TglPixelDataRangeNV; + glFlushPixelDataRangeNV: TglFlushPixelDataRangeNV; + + // GL_NV_point_sprite + glPointParameteriNV: TglPointParameteriNV; + glPointParameterivNV: TglPointParameterivNV; + + // GL_NV_primitive_restart + glPrimitiveRestartNV: TglPrimitiveRestartNV; + glPrimitiveRestartIndexNV: TglPrimitiveRestartIndexNV; + + // GL_NV_register_combiners + glCombinerParameterfvNV: TglCombinerParameterfvNV; + glCombinerParameterfNV: TglCombinerParameterfNV; + glCombinerParameterivNV: TglCombinerParameterivNV; + glCombinerParameteriNV: TglCombinerParameteriNV; + glCombinerInputNV: TglCombinerInputNV; + glCombinerOutputNV: TglCombinerOutputNV; + glFinalCombinerInputNV: TglFinalCombinerInputNV; + glGetCombinerInputParameterfvNV: TglGetCombinerInputParameterfvNV; + glGetCombinerInputParameterivNV: TglGetCombinerInputParameterivNV; + glGetCombinerOutputParameterfvNV: TglGetCombinerOutputParameterfvNV; + glGetCombinerOutputParameterivNV: TglGetCombinerOutputParameterivNV; + glGetFinalCombinerInputParameterfvNV: TglGetFinalCombinerInputParameterfvNV; + glGetFinalCombinerInputParameterivNV: TglGetFinalCombinerInputParameterivNV; + + // GL_NV_register_combiners2 + glCombinerStageParameterfvNV: TglCombinerStageParameterfvNV; + glGetCombinerStageParameterfvNV: TglGetCombinerStageParameterfvNV; + + // GL_NV_vertex_array_range + glFlushVertexArrayRangeNV: TglFlushVertexArrayRangeNV; + glVertexArrayRangeNV: TglVertexArrayRangeNV; + + // GL_NV_vertex_program + glAreProgramsResidentNV: TglAreProgramsResidentNV; + glBindProgramNV: TglBindProgramNV; + glDeleteProgramsNV: TglDeleteProgramsNV; + glExecuteProgramNV: TglExecuteProgramNV; + glGenProgramsNV: TglGenProgramsNV; + glGetProgramParameterdvNV: TglGetProgramParameterdvNV; + glGetProgramParameterfvNV: TglGetProgramParameterfvNV; + glGetProgramivNV: TglGetProgramivNV; + glGetProgramStringNV: TglGetProgramStringNV; + glGetTrackMatrixivNV: TglGetTrackMatrixivNV; + glGetVertexAttribdvNV: TglGetVertexAttribdvNV; + glGetVertexAttribfvNV: TglGetVertexAttribfvNV; + glGetVertexAttribivNV: TglGetVertexAttribivNV; + glGetVertexAttribPointervNV: TglGetVertexAttribPointervNV; + glIsProgramNV: TglIsProgramNV; + glLoadProgramNV: TglLoadProgramNV; + glProgramParameter4dNV: TglProgramParameter4dNV; + glProgramParameter4dvNV: TglProgramParameter4dvNV; + glProgramParameter4fNV: TglProgramParameter4fNV; + glProgramParameter4fvNV: TglProgramParameter4fvNV; + glProgramParameters4dvNV: TglProgramParameters4dvNV; + glProgramParameters4fvNV: TglProgramParameters4fvNV; + glRequestResidentProgramsNV: TglRequestResidentProgramsNV; + glTrackMatrixNV: TglTrackMatrixNV; + glVertexAttribPointerNV: TglVertexAttribPointerNV; + glVertexAttrib1dNV: TglVertexAttrib1dNV; + glVertexAttrib1dvNV: TglVertexAttrib1dvNV; + glVertexAttrib1fNV: TglVertexAttrib1fNV; + glVertexAttrib1fvNV: TglVertexAttrib1fvNV; + glVertexAttrib1sNV: TglVertexAttrib1sNV; + glVertexAttrib1svNV: TglVertexAttrib1svNV; + glVertexAttrib2dNV: TglVertexAttrib2dNV; + glVertexAttrib2dvNV: TglVertexAttrib2dvNV; + glVertexAttrib2fNV: TglVertexAttrib2fNV; + glVertexAttrib2fvNV: TglVertexAttrib2fvNV; + glVertexAttrib2sNV: TglVertexAttrib2sNV; + glVertexAttrib2svNV: TglVertexAttrib2svNV; + glVertexAttrib3dNV: TglVertexAttrib3dNV; + glVertexAttrib3dvNV: TglVertexAttrib3dvNV; + glVertexAttrib3fNV: TglVertexAttrib3fNV; + glVertexAttrib3fvNV: TglVertexAttrib3fvNV; + glVertexAttrib3sNV: TglVertexAttrib3sNV; + glVertexAttrib3svNV: TglVertexAttrib3svNV; + glVertexAttrib4dNV: TglVertexAttrib4dNV; + glVertexAttrib4dvNV: TglVertexAttrib4dvNV; + glVertexAttrib4fNV: TglVertexAttrib4fNV; + glVertexAttrib4fvNV: TglVertexAttrib4fvNV; + glVertexAttrib4sNV: TglVertexAttrib4sNV; + glVertexAttrib4svNV: TglVertexAttrib4svNV; + glVertexAttrib4ubNV: TglVertexAttrib4ubNV; + glVertexAttrib4ubvNV: TglVertexAttrib4ubvNV; + glVertexAttribs1dvNV: TglVertexAttribs1dvNV; + glVertexAttribs1fvNV: TglVertexAttribs1fvNV; + glVertexAttribs1svNV: TglVertexAttribs1svNV; + glVertexAttribs2dvNV: TglVertexAttribs2dvNV; + glVertexAttribs2fvNV: TglVertexAttribs2fvNV; + glVertexAttribs2svNV: TglVertexAttribs2svNV; + glVertexAttribs3dvNV: TglVertexAttribs3dvNV; + glVertexAttribs3fvNV: TglVertexAttribs3fvNV; + glVertexAttribs3svNV: TglVertexAttribs3svNV; + glVertexAttribs4dvNV: TglVertexAttribs4dvNV; + glVertexAttribs4fvNV: TglVertexAttribs4fvNV; + glVertexAttribs4svNV: TglVertexAttribs4svNV; + glVertexAttribs4ubvNV: TglVertexAttribs4ubvNV; + + // GL_NV_depth_buffer_float + glDepthRangedNV: TglDepthRangedNV; + glClearDepthdNV: TglClearDepthdNV; + glDepthBoundsdNV: TglDepthBoundsdNV; + + // GL_NV_framebuffer_multisample_coverage + glRenderbufferStorageMultsampleCoverageNV: TglRenderbufferStorageMultsampleCoverageNV; + + // GL_NV_geometry_program4 + glProgramVertexLimitNV: TglProgramVertexLimitNV; + + // GL_NV_gpu_program4 + glProgramLocalParameterI4iNV: TglProgramLocalParameterI4iNV; + glProgramLocalParameterI4ivNV: TglProgramLocalParameterI4ivNV; + glProgramLocalParametersI4ivNV: TglProgramLocalParametersI4ivNV; + glProgramLocalParameterI4uiNV: TglProgramLocalParameterI4uiNV; + glProgramLocalParameterI4uivNV: TglProgramLocalParameterI4uivNV; + glProgramLocalParametersI4uivNV: TglProgramLocalParametersI4uivNV; + glProgramEnvParameterI4iNV: TglProgramEnvParameterI4iNV; + glProgramEnvParameterI4ivNV: TglProgramEnvParameterI4ivNV; + glProgramEnvParametersI4ivNV: TglProgramEnvParametersI4ivNV; + glProgramEnvParameterI4uiNV: TglProgramEnvParameterI4uiNV; + glProgramEnvParameterI4uivNV: TglProgramEnvParameterI4uivNV; + glProgramEnvParametersI4uivNV: TglProgramEnvParametersI4uivNV; + glGetProgramLocalParameterIivNV: TglGetProgramLocalParameterIivNV; + glGetProgramLocalParameterIuivNV: TglGetProgramLocalParameterIuivNV; + glGetProgramEnvParameterIivNV: TglGetProgramEnvParameterIivNV; + glGetProgramEnvParameterIuivNV: TglGetProgramEnvParameterIuivNV; + + // GL_NV_parameter_buffer_object + glProgramBufferParametersfvNV: TglProgramBufferParametersfvNV; + glProgramBufferParametersIivNV: TglProgramBufferParametersIivNV; + glProgramBufferParametersIuivNV: TglProgramBufferParametersIuivNV; + + // GL_NV_transform_feedback + glBeginTransformFeedbackNV: TglBeginTransformFeedbackNV; + glEndTransformFeedbackNV: TglEndTransformFeedbackNV; + glTransformFeedbackAttribsNV: TglTransformFeedbackAttribsNV; + glBindBufferRangeNV: TglBindBufferRangeNV; + glBindBufferOffsetNV: TglBindBufferOffsetNV; + glBindBufferBaseNV: TglBindBufferBaseNV; + glTransformFeedbackVaryingsNV: TglTransformFeedbackVaryingsNV; + glActiveVaryingNV: TglActiveVaryingNV; + glGetVaryingLocationNV: TglGetVaryingLocationNV; + glGetActiveVaryingNV: TglGetActiveVaryingNV; + glGetTransformFeedbackVaryingNV: TglGetTransformFeedbackVaryingNV; + glTransformFeedbackStreamAttribsNV: TglTransformFeedbackStreamAttribsNV; + + // GL_NV_conditional_render + glBeginConditionalRenderNV: TglBeginConditionalRenderNV; + glEndConditionalRenderNV: TglEndConditionalRenderNV; + + // GL_NV_present_video + glPresentFrameKeyedNV: TglPresentFrameKeyedNV; + glPresentFrameDualFillNV: TglPresentFrameDualFillNV; + glGetVideoivNV: TglGetVideoivNV; + glGetVideouivNV: TglGetVideouivNV; + glGetVideoi64vNV: TglGetVideoi64vNV; + glGetVideoui64vNV: TglGetVideoui64vNV; +// glVideoParameterivNV: TglVideoParameterivNV; + + // GL_NV_explicit_multisample + glGetMultisamplefvNV: TglGetMultisamplefvNV; + glSampleMaskIndexedNV: TglSampleMaskIndexedNV; + glTexRenderbufferNV: TglTexRenderbufferNV; + + // GL_NV_transform_feedback2 + glBindTransformFeedbackNV: TglBindTransformFeedbackNV; + glDeleteTransformFeedbacksNV: TglDeleteTransformFeedbacksNV; + glGenTransformFeedbacksNV: TglGenTransformFeedbacksNV; + glIsTransformFeedbackNV: TglIsTransformFeedbackNV; + glPauseTransformFeedbackNV: TglPauseTransformFeedbackNV; + glResumeTransformFeedbackNV: TglResumeTransformFeedbackNV; + glDrawTransformFeedbackNV: TglDrawTransformFeedbackNV; + + // GL_NV_video_capture + glBeginVideoCaptureNV: TglBeginVideoCaptureNV; + glBindVideoCaptureStreamBufferNV: TglBindVideoCaptureStreamBufferNV; + glBindVideoCaptureStreamTextureNV: TglBindVideoCaptureStreamTextureNV; + glEndVideoCaptureNV: TglEndVideoCaptureNV; + glGetVideoCaptureivNV: TglGetVideoCaptureivNV; + glGetVideoCaptureStreamivNV: TglGetVideoCaptureStreamivNV; + glGetVideoCaptureStreamfvNV: TglGetVideoCaptureStreamfvNV; + glGetVideoCaptureStreamdvNV: TglGetVideoCaptureStreamdvNV; + glVideoCaptureNV: TglVideoCaptureNV; + glVideoCaptureStreamParameterivNV: TglVideoCaptureStreamParameterivNV; + glVideoCaptureStreamParameterfvNV: TglVideoCaptureStreamParameterfvNV; + glVideoCaptureStreamParameterdvNV: TglVideoCaptureStreamParameterdvNV; + + // GL_NV_copy_image + glCopyImageSubDataNV: TglCopyImageSubDataNV; + + // GL_NV_shader_buffer_load + glMakeBufferResidentNV: TglMakeBufferResidentNV; + glMakeBufferNonResidentNV: TglMakeBufferNonResidentNV; + glIsBufferResidentNV: TglIsBufferResidentNV; + glMakeNamedBufferResidentNV: TglMakeNamedBufferResidentNV; + glMakeNamedBufferNonResidentNV: TglMakeNamedBufferNonResidentNV; + glIsNamedBufferResidentNV: TglIsNamedBufferResidentNV; + glGetBufferParameterui64vNV: TglGetBufferParameterui64vNV; + glGetNamedBufferParameterui64vNV: TglGetNamedBufferParameterui64vNV; + glGetIntegerui64vNV: TglGetIntegerui64vNV; + glUniformui64NV: TglUniformui64NV; + glUniformui64vNV: TglUniformui64vNV; + glGetUniformui64vNV: TglGetUniformui64vNV; + glProgramUniformui64NV: TglProgramUniformui64NV; + glProgramUniformui64vNV: TglProgramUniformui64vNV; + + // GL_NV_vertex_buffer_unified_memory + glBufferAddressRangeNV: TglBufferAddressRangeNV; + glVertexFormatNV: TglVertexFormatNV; + glNormalFormatNV: TglNormalFormatNV; + glColorFormatNV: TglColorFormatNV; + glIndexFormatNV: TglIndexFormatNV; + glTexCoordFormatNV: TglTexCoordFormatNV; + glEdgeFlagFormatNV: TglEdgeFlagFormatNV; + glSecondaryColorFormatNV: TglSecondaryColorFormatNV; + glFogCoordFormatNV: TglFogCoordFormatNV; + glVertexAttribFormatNV: TglVertexAttribFormatNV; + glVertexAttribIFormatNV: TglVertexAttribIFormatNV; + glGetIntegerui64i_vNV: TglGetIntegerui64i_vNV; + + // GL_NV_gpu_program5 + glProgramSubroutineParametersuivNV: TglProgramSubroutineParametersuivNV; + glGetProgramSubroutineParameteruivNV: TglGetProgramSubroutineParameteruivNV; + + // GL_NV_gpu_shader5 + glUniform1i64NV: TglUniform1i64NV; + glUniform2i64NV: TglUniform2i64NV; + glUniform3i64NV: TglUniform3i64NV; + glUniform4i64NV: TglUniform4i64NV; + glUniform1i64vNV: TglUniform1i64vNV; + glUniform2i64vNV: TglUniform2i64vNV; + glUniform3i64vNV: TglUniform3i64vNV; + glUniform4i64vNV: TglUniform4i64vNV; + glUniform1ui64NV: TglUniform1ui64NV; + glUniform2ui64NV: TglUniform2ui64NV; + glUniform3ui64NV: TglUniform3ui64NV; + glUniform4ui64NV: TglUniform4ui64NV; + glUniform1ui64vNV: TglUniform1ui64vNV; + glUniform2ui64vNV: TglUniform2ui64vNV; + glUniform3ui64vNV: TglUniform3ui64vNV; + glUniform4ui64vNV: TglUniform4ui64vNV; + glGetUniformi64vNV: TglGetUniformi64vNV; + glProgramUniform1i64NV: TglProgramUniform1i64NV; + glProgramUniform2i64NV: TglProgramUniform2i64NV; + glProgramUniform3i64NV: TglProgramUniform3i64NV; + glProgramUniform4i64NV: TglProgramUniform4i64NV; + glProgramUniform1i64vNV: TglProgramUniform1i64vNV; + glProgramUniform2i64vNV: TglProgramUniform2i64vNV; + glProgramUniform3i64vNV: TglProgramUniform3i64vNV; + glProgramUniform4i64vNV: TglProgramUniform4i64vNV; + glProgramUniform1ui64NV: TglProgramUniform1ui64NV; + glProgramUniform2ui64NV: TglProgramUniform2ui64NV; + glProgramUniform3ui64NV: TglProgramUniform3ui64NV; + glProgramUniform4ui64NV: TglProgramUniform4ui64NV; + glProgramUniform1ui64vNV: TglProgramUniform1ui64vNV; + glProgramUniform2ui64vNV: TglProgramUniform2ui64vNV; + glProgramUniform3ui64vNV: TglProgramUniform3ui64vNV; + glProgramUniform4ui64vNV: TglProgramUniform4ui64vNV; + + // GL_NV_vertex_attrib_integer_64bit + glVertexAttribL1i64NV: TglVertexAttribL1i64NV; + glVertexAttribL2i64NV: TglVertexAttribL2i64NV; + glVertexAttribL3i64NV: TglVertexAttribL3i64NV; + glVertexAttribL4i64NV: TglVertexAttribL4i64NV; + glVertexAttribL1i64vNV: TglVertexAttribL1i64vNV; + glVertexAttribL2i64vNV: TglVertexAttribL2i64vNV; + glVertexAttribL3i64vNV: TglVertexAttribL3i64vNV; + glVertexAttribL4i64vNV: TglVertexAttribL4i64vNV; + glVertexAttribL1ui64NV: TglVertexAttribL1ui64NV; + glVertexAttribL2ui64NV: TglVertexAttribL2ui64NV; + glVertexAttribL3ui64NV: TglVertexAttribL3ui64NV; + glVertexAttribL4ui64NV: TglVertexAttribL4ui64NV; + glVertexAttribL1ui64vNV: TglVertexAttribL1ui64vNV; + glVertexAttribL2ui64vNV: TglVertexAttribL2ui64vNV; + glVertexAttribL3ui64vNV: TglVertexAttribL3ui64vNV; + glVertexAttribL4ui64vNV: TglVertexAttribL4ui64vNV; + glGetVertexAttribLi64vNV: TglGetVertexAttribLi64vNV; + glGetVertexAttribLui64vNV: TglGetVertexAttribLui64vNV; + glVertexAttribLFormatNV: TglVertexAttribLFormatNV; + + // GL_NV_vdpau_interop + glVDPAUInitNV: TglVDPAUInitNV; + glVDPAUFiniNV: TglVDPAUFiniNV; + glVDPAURegisterVideoSurfaceNV: TglVDPAURegisterVideoSurfaceNV; + glVDPAURegisterOutputSurfaceNV: TglVDPAURegisterOutputSurfaceNV; + glVDPAUIsSurfaceNV: TglVDPAUIsSurfaceNV; + glVDPAUUnregisterSurfaceNV: TglVDPAUUnregisterSurfaceNV; + glVDPAUGetSurfaceivNV: TglVDPAUGetSurfaceivNV; + glVDPAUSurfaceAccessNV: TglVDPAUSurfaceAccessNV; + glVDPAUMapSurfacesNV: TglVDPAUMapSurfacesNV; + glVDPAUUnmapSurfacesNV: TglVDPAUUnmapSurfacesNV; + + // GL_NV_texture_barrier + glTextureBarrierNV: TglTextureBarrierNV; + + // (4.3) GL_NV_path_rendering + glGenPathsNV : TglGenPathsNV; + glDeletePathsNV : TglDeletePathsNV; + glIsPathNV : TglIsPathNV; + glPathCommandsNV : TglPathCommandsNV; + glPathCoordsNV : TglPathCoordsNV; + glPathSubCommandsNV : TglPathSubCommandsNV; + glPathSubCoordsNV : TglPathSubCoordsNV; + glPathStringNV : TglPathStringNV; + glPathGlyphsNV : TglPathGlyphsNV; + glPathGlyphRangeNV : TglPathGlyphRangeNV; + glWeightPathsNV : TglWeightPathsNV; + glCopyPathNV : TglCopyPathNV; + glInterpolatePathsNV : TglInterpolatePathsNV; + glTransformPathNV : TglTransformPathNV; + glPathParameterivNV : TglPathParameterivNV; + glPathParameteriNV : TglPathParameteriNV; + glPathParameterfvNV : TglPathParameterfvNV; + glPathParameterfNV : TglPathParameterfNV; + glPathDashArrayNV : TglPathDashArrayNV; + glPathStencilFuncNV : TglPathStencilFuncNV; + glPathStencilDepthOffsetNV : TglPathStencilDepthOffsetNV; + glStencilFillPathNV : TglStencilFillPathNV; + glStencilStrokePathNV : TglStencilStrokePathNV; + glStencilFillPathInstancedNV : TglStencilFillPathInstancedNV; + glStencilStrokePathInstancedNV : TglStencilStrokePathInstancedNV; + glPathCoverDepthFuncNV : TglPathCoverDepthFuncNV; + glPathColorGenNV : TglPathColorGenNV; + glPathTexGenNV : TglPathTexGenNV; + glPathFogGenNV : TglPathFogGenNV; + glCoverFillPathNV : TglCoverFillPathNV; + glCoverStrokePathNV : TglCoverStrokePathNV; + glCoverFillPathInstancedNV : TglCoverFillPathInstancedNV; + glCoverStrokePathInstancedNV : TglCoverStrokePathInstancedNV; + glGetPathParameterivNV : TglGetPathParameterivNV; + glGetPathParameterfvNV : TglGetPathParameterfvNV; + glGetPathCommandsNV : TglGetPathCommandsNV; + glGetPathCoordsNV : TglGetPathCoordsNV; + glGetPathDashArrayNV : TglGetPathDashArrayNV; + glGetPathMetricsNV : TglGetPathMetricsNV; + glGetPathMetricRangeNV : TglGetPathMetricRangeNV; + glGetPathSpacingNV : TglGetPathSpacingNV; + glGetPathColorGenivNV : TglGetPathColorGenivNV; + glGetPathColorGenfvNV : TglGetPathColorGenfvNV; + glGetPathTexGenivNV : TglGetPathTexGenivNV; + glGetPathTexGenfvNV : TglGetPathTexGenfvNV; + glIsPointInFillPathNV : TglIsPointInFillPathNV; + glIsPointInStrokePathNV : TglIsPointInStrokePathNV; + glGetPathLengthNV : TglGetPathLengthNV; + glPointAlongPathNV : TglPointAlongPathNV; + + // GL_AMD_pinned_memory + + // GL_AMD_stencil_operation_extended + glStencilOpValueAMD : TglStencilOpValueAMD; + + // GL_AMD_vertex_shader_viewport_index + + // GL_AMD_vertex_shader_layer + + // GL_NV_bindless_texture + glGetTextureHandleNV : TglGetTextureHandleNV; + glGetTextureSamplerHandleNV : TglGetTextureSamplerHandleNV; + glMakeTextureHandleResidentNV : TglMakeTextureHandleResidentNV; + glMakeTextureHandleNonResidentNV : TglMakeTextureHandleNonResidentNV; + glGetImageHandleNV : TglGetImageHandleNV; + glMakeImageHandleResidentNV : TglMakeImageHandleResidentNV; + glMakeImageHandleNonResidentNV : TglMakeImageHandleNonResidentNV; + glUniformHandleui64NV : TglUniformHandleui64NV; + glUniformHandleui64vNV : TglUniformHandleui64vNV; + glProgramUniformHandleui64NV : TglProgramUniformHandleui64NV; + glProgramUniformHandleui64vNV : TglProgramUniformHandleui64vNV; + glIsTextureHandleResidentNV : TglIsTextureHandleResidentNV; + glIsImageHandleResidentNV : TglIsImageHandleResidentNV; + + // + + // GL_PGI_misc_hints + glHintPGI: TglHintPGI; + + // GL_SGIS_detail_texture + glDetailTexFuncSGIS: TglDetailTexFuncSGIS; + glGetDetailTexFuncSGIS: TglGetDetailTexFuncSGIS; + + // GL_SGIS_fog_function + glFogFuncSGIS: TglFogFuncSGIS; + glGetFogFuncSGIS: TglGetFogFuncSGIS; + + // GL_SGIS_multisample + glSampleMaskSGIS: TglSampleMaskSGIS; + glSamplePatternSGIS: TglSamplePatternSGIS; + + // GL_SGIS_pixel_texture + glPixelTexGenParameteriSGIS: TglPixelTexGenParameteriSGIS; + glPixelTexGenParameterivSGIS: TglPixelTexGenParameterivSGIS; + glPixelTexGenParameterfSGIS: TglPixelTexGenParameterfSGIS; + glPixelTexGenParameterfvSGIS: TglPixelTexGenParameterfvSGIS; + glGetPixelTexGenParameterivSGIS: TglGetPixelTexGenParameterivSGIS; + glGetPixelTexGenParameterfvSGIS: TglGetPixelTexGenParameterfvSGIS; + + // GL_SGIS_point_parameters + glPointParameterfSGIS: TglPointParameterfSGIS; + glPointParameterfvSGIS: TglPointParameterfvSGIS; + + // GL_SGIS_sharpen_texture + glSharpenTexFuncSGIS: TglSharpenTexFuncSGIS; + glGetSharpenTexFuncSGIS: TglGetSharpenTexFuncSGIS; + + // GL_SGIS_texture4D + glTexImage4DSGIS: TglTexImage4DSGIS; + glTexSubImage4DSGIS: TglTexSubImage4DSGIS; + + // GL_SGIS_texture_color_mask + glTextureColorMaskSGIS: TglTextureColorMaskSGIS; + + // GL_SGIS_texture_filter4 + glGetTexFilterFuncSGIS: TglGetTexFilterFuncSGIS; + glTexFilterFuncSGIS: TglTexFilterFuncSGIS; + + // GL_SGIX_async + glAsyncMarkerSGIX: TglAsyncMarkerSGIX; + glFinishAsyncSGIX: TglFinishAsyncSGIX; + glPollAsyncSGIX: TglPollAsyncSGIX; + glGenAsyncMarkersSGIX: TglGenAsyncMarkersSGIX; + glDeleteAsyncMarkersSGIX: TglDeleteAsyncMarkersSGIX; + glIsAsyncMarkerSGIX: TglIsAsyncMarkerSGIX; + + // GL_SGIX_flush_raster + glFlushRasterSGIX: TglFlushRasterSGIX; + + // GL_SGIX_fragment_lighting + glFragmentColorMaterialSGIX: TglFragmentColorMaterialSGIX; + glFragmentLightfSGIX: TglFragmentLightfSGIX; + glFragmentLightfvSGIX: TglFragmentLightfvSGIX; + glFragmentLightiSGIX: TglFragmentLightiSGIX; + glFragmentLightivSGIX: TglFragmentLightivSGIX; + glFragmentLightModelfSGIX: TglFragmentLightModelfSGIX; + glFragmentLightModelfvSGIX: TglFragmentLightModelfvSGIX; + glFragmentLightModeliSGIX: TglFragmentLightModeliSGIX; + glFragmentLightModelivSGIX: TglFragmentLightModelivSGIX; + glFragmentMaterialfSGIX: TglFragmentMaterialfSGIX; + glFragmentMaterialfvSGIX: TglFragmentMaterialfvSGIX; + glFragmentMaterialiSGIX: TglFragmentMaterialiSGIX; + glFragmentMaterialivSGIX: TglFragmentMaterialivSGIX; + glGetFragmentLightfvSGIX: TglGetFragmentLightfvSGIX; + glGetFragmentLightivSGIX: TglGetFragmentLightivSGIX; + glGetFragmentMaterialfvSGIX: TglGetFragmentMaterialfvSGIX; + glGetFragmentMaterialivSGIX: TglGetFragmentMaterialivSGIX; + glLightEnviSGIX: TglLightEnviSGIX; + + // GL_SGIX_framezoom + glFrameZoomSGIX: TglFrameZoomSGIX; + + // GL_SGIX_igloo_interface + glIglooInterfaceSGIX: TglIglooInterfaceSGIX; + + // GL_SGIX_instruments + glGetInstrumentsSGIX: TglGetInstrumentsSGIX; + glInstrumentsBufferSGIX: TglInstrumentsBufferSGIX; + glPollInstrumentsSGIX: TglPollInstrumentsSGIX; + glReadInstrumentsSGIX: TglReadInstrumentsSGIX; + glStartInstrumentsSGIX: TglStartInstrumentsSGIX; + glStopInstrumentsSGIX: TglStopInstrumentsSGIX; + + // GL_SGIX_list_priority + glGetListParameterfvSGIX: TglGetListParameterfvSGIX; + glGetListParameterivSGIX: TglGetListParameterivSGIX; + glListParameterfSGIX: TglListParameterfSGIX; + glListParameterfvSGIX: TglListParameterfvSGIX; + glListParameteriSGIX: TglListParameteriSGIX; + glListParameterivSGIX: TglListParameterivSGIX; + + // GL_SGIX_pixel_texture + glPixelTexGenSGIX: TglPixelTexGenSGIX; + + // GL_SGIX_polynomial_ffd + glDeformationMap3dSGIX: TglDeformationMap3dSGIX; + glDeformationMap3fSGIX: TglDeformationMap3fSGIX; + glDeformSGIX: TglDeformSGIX; + glLoadIdentityDeformationMapSGIX: TglLoadIdentityDeformationMapSGIX; + + // GL_SGIX_reference_plane + glReferencePlaneSGIX: TglReferencePlaneSGIX; + + // GL_SGIX_sprite + glSpriteParameterfSGIX: TglSpriteParameterfSGIX; + glSpriteParameterfvSGIX: TglSpriteParameterfvSGIX; + glSpriteParameteriSGIX: TglSpriteParameteriSGIX; + glSpriteParameterivSGIX: TglSpriteParameterivSGIX; + + // GL_SGIX_tag_sample_buffer + glTagSampleBufferSGIX: TglTagSampleBufferSGIX; + + // GL_SGI_color_table + glColorTableSGI: TglColorTableSGI; + glColorTableParameterfvSGI: TglColorTableParameterfvSGI; + glColorTableParameterivSGI: TglColorTableParameterivSGI; + glCopyColorTableSGI: TglCopyColorTableSGI; + glGetColorTableSGI: TglGetColorTableSGI; + glGetColorTableParameterfvSGI: TglGetColorTableParameterfvSGI; + glGetColorTableParameterivSGI: TglGetColorTableParameterivSGI; + + // GL_SUNX_constant_data + glFinishTextureSUNX: TglFinishTextureSUNX; + + // GL_SUN_global_alpha + glGlobalAlphaFactorbSUN: TglGlobalAlphaFactorbSUN; + glGlobalAlphaFactorsSUN: TglGlobalAlphaFactorsSUN; + glGlobalAlphaFactoriSUN: TglGlobalAlphaFactoriSUN; + glGlobalAlphaFactorfSUN: TglGlobalAlphaFactorfSUN; + glGlobalAlphaFactordSUN: TglGlobalAlphaFactordSUN; + glGlobalAlphaFactorubSUN: TglGlobalAlphaFactorubSUN; + glGlobalAlphaFactorusSUN: TglGlobalAlphaFactorusSUN; + glGlobalAlphaFactoruiSUN: TglGlobalAlphaFactoruiSUN; + + // GL_SUN_mesh_array + glDrawMeshArraysSUN: TglDrawMeshArraysSUN; + + // GL_SUN_triangle_list + glReplacementCodeuiSUN: TglReplacementCodeuiSUN; + glReplacementCodeusSUN: TglReplacementCodeusSUN; + glReplacementCodeubSUN: TglReplacementCodeubSUN; + glReplacementCodeuivSUN: TglReplacementCodeuivSUN; + glReplacementCodeusvSUN: TglReplacementCodeusvSUN; + glReplacementCodeubvSUN: TglReplacementCodeubvSUN; + glReplacementCodePointerSUN: TglReplacementCodePointerSUN; + + // GL_SUN_vertex + glColor4ubVertex2fSUN: TglColor4ubVertex2fSUN; + glColor4ubVertex2fvSUN: TglColor4ubVertex2fvSUN; + glColor4ubVertex3fSUN: TglColor4ubVertex3fSUN; + glColor4ubVertex3fvSUN: TglColor4ubVertex3fvSUN; + glColor3fVertex3fSUN: TglColor3fVertex3fSUN; + glColor3fVertex3fvSUN: TglColor3fVertex3fvSUN; + glNormal3fVertex3fSUN: TglNormal3fVertex3fSUN; + glNormal3fVertex3fvSUN: TglNormal3fVertex3fvSUN; + glColor4fNormal3fVertex3fSUN: TglColor4fNormal3fVertex3fSUN; + glColor4fNormal3fVertex3fvSUN: TglColor4fNormal3fVertex3fvSUN; + glTexCoord2fVertex3fSUN: TglTexCoord2fVertex3fSUN; + glTexCoord2fVertex3fvSUN: TglTexCoord2fVertex3fvSUN; + glTexCoord4fVertex4fSUN: TglTexCoord4fVertex4fSUN; + glTexCoord4fVertex4fvSUN: TglTexCoord4fVertex4fvSUN; + glTexCoord2fColor4ubVertex3fSUN: TglTexCoord2fColor4ubVertex3fSUN; + glTexCoord2fColor4ubVertex3fvSUN: TglTexCoord2fColor4ubVertex3fvSUN; + glTexCoord2fColor3fVertex3fSUN: TglTexCoord2fColor3fVertex3fSUN; + glTexCoord2fColor3fVertex3fvSUN: TglTexCoord2fColor3fVertex3fvSUN; + glTexCoord2fNormal3fVertex3fSUN: TglTexCoord2fNormal3fVertex3fSUN; + glTexCoord2fNormal3fVertex3fvSUN: TglTexCoord2fNormal3fVertex3fvSUN; + glTexCoord2fColor4fNormal3fVertex3fSUN: TglTexCoord2fColor4fNormal3fVertex3fSUN; + glTexCoord2fColor4fNormal3fVertex3fvSUN: TglTexCoord2fColor4fNormal3fVertex3fvSUN; + glTexCoord4fColor4fNormal3fVertex4fSUN: TglTexCoord4fColor4fNormal3fVertex4fSUN; + glTexCoord4fColor4fNormal3fVertex4fvSUN: TglTexCoord4fColor4fNormal3fVertex4fvSUN; + glReplacementCodeuiVertex3fSUN: TglReplacementCodeuiVertex3fSUN; + glReplacementCodeuiVertex3fvSUN: TglReplacementCodeuiVertex3fvSUN; + glReplacementCodeuiColor4ubVertex3fSUN: TglReplacementCodeuiColor4ubVertex3fSUN; + glReplacementCodeuiColor4ubVertex3fvSUN: TglReplacementCodeuiColor4ubVertex3fvSUN; + glReplacementCodeuiColor3fVertex3fSUN: TglReplacementCodeuiColor3fVertex3fSUN; + glReplacementCodeuiColor3fVertex3fvSUN: TglReplacementCodeuiColor3fVertex3fvSUN; + glReplacementCodeuiNormal3fVertex3fSUN: TglReplacementCodeuiNormal3fVertex3fSUN; + glReplacementCodeuiNormal3fVertex3fvSUN: TglReplacementCodeuiNormal3fVertex3fvSUN; + glReplacementCodeuiColor4fNormal3fVertex3fSUN: TglReplacementCodeuiColor4fNormal3fVertex3fSUN; + glReplacementCodeuiColor4fNormal3fVertex3fvSUN: TglReplacementCodeuiColor4fNormal3fVertex3fvSUN; + glReplacementCodeuiTexCoord2fVertex3fSUN: TglReplacementCodeuiTexCoord2fVertex3fSUN; + glReplacementCodeuiTexCoord2fVertex3fvSUN: TglReplacementCodeuiTexCoord2fVertex3fvSUN; + glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN: TglReplacementCodeuiTexCoord2fNormal3fVertex3fSUN; + glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN: TglReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN; + glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN: TglReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN; + glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN: TglReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + +{$IFDEF DGL_WIN} + wglGetProcAddress: TwglGetProcAddress; + wglCopyContext: TwglCopyContext; + wglCreateContext: TwglCreateContext; + wglCreateLayerContext: TwglCreateLayerContext; + wglDeleteContext: TwglDeleteContext; + wglDescribeLayerPlane: TwglDescribeLayerPlane; + wglGetCurrentContext: TwglGetCurrentContext; + wglGetCurrentDC: TwglGetCurrentDC; + wglGetLayerPaletteEntries: TwglGetLayerPaletteEntries; + wglMakeCurrent: TwglMakeCurrent; + wglRealizeLayerPalette: TwglRealizeLayerPalette; + wglSetLayerPaletteEntries: TwglSetLayerPaletteEntries; + wglShareLists: TwglShareLists; + wglSwapLayerBuffers: TwglSwapLayerBuffers; + wglSwapMultipleBuffers: TwglSwapMultipleBuffers; + wglUseFontBitmapsA: TwglUseFontBitmapsA; + wglUseFontOutlinesA: TwglUseFontOutlinesA; + wglUseFontBitmapsW: TwglUseFontBitmapsW; + wglUseFontOutlinesW: TwglUseFontOutlinesW; + wglUseFontBitmaps: TwglUseFontBitmaps; + wglUseFontOutlines: TwglUseFontOutlines; + + // WGL_ARB_buffer_region + wglCreateBufferRegionARB: TwglCreateBufferRegionARB; + wglDeleteBufferRegionARB: TwglDeleteBufferRegionARB; + wglSaveBufferRegionARB: TwglSaveBufferRegionARB; + wglRestoreBufferRegionARB: TwglRestoreBufferRegionARB; + + // WGL_ARB_extensions_string + wglGetExtensionsStringARB: TwglGetExtensionsStringARB; + + // WGL_ARB_make_current_read + wglMakeContextCurrentARB: TwglMakeContextCurrentARB; + wglGetCurrentReadDCARB: TwglGetCurrentReadDCARB; + + // WGL_ARB_pbuffer + wglCreatePbufferARB: TwglCreatePbufferARB; + wglGetPbufferDCARB: TwglGetPbufferDCARB; + wglReleasePbufferDCARB: TwglReleasePbufferDCARB; + wglDestroyPbufferARB: TwglDestroyPbufferARB; + wglQueryPbufferARB: TwglQueryPbufferARB; + + // WGL_ARB_pixel_format + wglGetPixelFormatAttribivARB: TwglGetPixelFormatAttribivARB; + wglGetPixelFormatAttribfvARB: TwglGetPixelFormatAttribfvARB; + wglChoosePixelFormatARB: TwglChoosePixelFormatARB; + // WGL_ARB_color_buffer_float + wglClampColorARB: TwglClampColorARB; + + // WGL_ARB_render_texture + wglBindTexImageARB: TwglBindTexImageARB; + wglReleaseTexImageARB: TwglReleaseTexImageARB; + wglSetPbufferAttribARB: TwglSetPbufferAttribARB; + + // WGL_ARB_create_context + wglCreateContextAttribsARB: TwglCreateContextAttribsARB; + + // WGL_AMD_gpu_association + wglGetGPUIDsAMD: TwglGetGPUIDsAMD; + wglGetGPUInfoAMD: TwglGetGPUInfoAMD; + wglGetContextGPUIDAMD: TwglGetContextGPUIDAMD; + wglCreateAssociatedContextAMD: TwglCreateAssociatedContextAMD; + wglCreateAssociatedContextAttribsAMD: TwglCreateAssociatedContextAttribsAMD; + wglDeleteAssociatedContextAMD: TwglDeleteAssociatedContextAMD; + wglMakeAssociatedContextCurrentAMD: TwglMakeAssociatedContextCurrentAMD; + wglGetCurrentAssociatedContextAMD: TwglGetCurrentAssociatedContextAMD; + wglBlitContextFramebufferAMD: TwglBlitContextFramebufferAMD; + + // WGL_EXT_display_color_table + wglCreateDisplayColorTableEXT: TwglCreateDisplayColorTableEXT; + wglLoadDisplayColorTableEXT: TwglLoadDisplayColorTableEXT; + wglBindDisplayColorTableEXT: TwglBindDisplayColorTableEXT; + wglDestroyDisplayColorTableEXT: TwglDestroyDisplayColorTableEXT; + + // WGL_EXT_extensions_string + wglGetExtensionsStringEXT: TwglGetExtensionsStringEXT; + + // WGL_EXT_make_current_read + wglMakeContextCurrentEXT: TwglMakeContextCurrentEXT; + wglGetCurrentReadDCEXT: TwglGetCurrentReadDCEXT; + + // WGL_EXT_pbuffer + wglCreatePbufferEXT: TwglCreatePbufferEXT; + wglGetPbufferDCEXT: TwglGetPbufferDCEXT; + wglReleasePbufferDCEXT: TwglReleasePbufferDCEXT; + wglDestroyPbufferEXT: TwglDestroyPbufferEXT; + wglQueryPbufferEXT: TwglQueryPbufferEXT; + + // WGL_EXT_pixel_format + wglGetPixelFormatAttribivEXT: TwglGetPixelFormatAttribivEXT; + wglGetPixelFormatAttribfvEXT: TwglGetPixelFormatAttribfvEXT; + wglChoosePixelFormatEXT: TwglChoosePixelFormatEXT; + + // WGL_EXT_swap_control + wglSwapIntervalEXT: TwglSwapIntervalEXT; + wglGetSwapIntervalEXT: TwglGetSwapIntervalEXT; + + // WGL_I3D_digital_video_control + wglGetDigitalVideoParametersI3D: TwglGetDigitalVideoParametersI3D; + wglSetDigitalVideoParametersI3D: TwglSetDigitalVideoParametersI3D; + + // WGL_I3D_gamma + wglGetGammaTableParametersI3D: TwglGetGammaTableParametersI3D; + wglSetGammaTableParametersI3D: TwglSetGammaTableParametersI3D; + wglGetGammaTableI3D: TwglGetGammaTableI3D; + wglSetGammaTableI3D: TwglSetGammaTableI3D; + + // WGL_I3D_genlock + wglEnableGenlockI3D: TwglEnableGenlockI3D; + wglDisableGenlockI3D: TwglDisableGenlockI3D; + wglIsEnabledGenlockI3D: TwglIsEnabledGenlockI3D; + wglGenlockSourceI3D: TwglGenlockSourceI3D; + wglGetGenlockSourceI3D: TwglGetGenlockSourceI3D; + wglGenlockSourceEdgeI3D: TwglGenlockSourceEdgeI3D; + wglGetGenlockSourceEdgeI3D: TwglGetGenlockSourceEdgeI3D; + wglGenlockSampleRateI3D: TwglGenlockSampleRateI3D; + wglGetGenlockSampleRateI3D: TwglGetGenlockSampleRateI3D; + wglGenlockSourceDelayI3D: TwglGenlockSourceDelayI3D; + wglGetGenlockSourceDelayI3D: TwglGetGenlockSourceDelayI3D; + wglQueryGenlockMaxSourceDelayI3D: TwglQueryGenlockMaxSourceDelayI3D; + + // WGL_I3D_image_buffer + wglCreateImageBufferI3D: TwglCreateImageBufferI3D; + wglDestroyImageBufferI3D: TwglDestroyImageBufferI3D; + wglAssociateImageBufferEventsI3D: TwglAssociateImageBufferEventsI3D; + wglReleaseImageBufferEventsI3D: TwglReleaseImageBufferEventsI3D; + + // WGL_I3D_swap_frame_lock + wglEnableFrameLockI3D: TwglEnableFrameLockI3D; + wglDisableFrameLockI3D: TwglDisableFrameLockI3D; + wglIsEnabledFrameLockI3D: TwglIsEnabledFrameLockI3D; + wglQueryFrameLockMasterI3D: TwglQueryFrameLockMasterI3D; + + // WGL_I3D_swap_frame_usage + wglGetFrameUsageI3D: TwglGetFrameUsageI3D; + wglBeginFrameTrackingI3D: TwglBeginFrameTrackingI3D; + wglEndFrameTrackingI3D: TwglEndFrameTrackingI3D; + wglQueryFrameTrackingI3D: TwglQueryFrameTrackingI3D; + + // WGL_NV_vertex_array_range + wglAllocateMemoryNV: TwglAllocateMemoryNV; + wglFreeMemoryNV: TwglFreeMemoryNV; + + // WGL_NV_present_video + wglEnumerateVideoDevicesNV: TwglEnumerateVideoDevicesNV; + wglBindVideoDeviceNV: TwglBindVideoDeviceNV; + wglQueryCurrentContextNV: TwglQueryCurrentContextNV; + + // WGL_NV_video_output + wglGetVideoDeviceNV: TwglGetVideoDeviceNV; + wglReleaseVideoDeviceNV: TwglReleaseVideoDeviceNV; + wglBindVideoImageNV: TwglBindVideoImageNV; + wglReleaseVideoImageNV: TwglReleaseVideoImageNV; + wglSendPbufferToVideoNV: TwglSendPbufferToVideoNV; + wglGetVideoInfoNV: TwglGetVideoInfoNV; + + // WGL_NV_swap_group + wglJoinSwapGroupNV: TwglJoinSwapGroupNV; + wglBindSwapBarrierNV: TwglBindSwapBarrierNV; + wglQuerySwapGroupNV: TwglQuerySwapGroupNV; + wglQueryMaxSwapGroupsNV: TwglQueryMaxSwapGroupsNV; + wglQueryFrameCountNV: TwglQueryFrameCountNV; + wglResetFrameCountNV: TwglResetFrameCountNV; + + // WGL_NV_gpu_affinity + wglEnumGpusNV: TwglEnumGpusNV; + wglEnumGpuDevicesNV: TwglEnumGpuDevicesNV; + wglCreateAffinityDCNV: TwglCreateAffinityDCNV; + wglEnumGpusFromAffinityDCNV: TwglEnumGpusFromAffinityDCNV; + wglDeleteDCNV: TwglDeleteDCNV; + + // WGL_NV_video_capture + wglBindVideoCaptureDeviceNV: TwglBindVideoCaptureDeviceNV; + wglEnumerateVideoCaptureDevicesNV: TwglEnumerateVideoCaptureDevicesNV; + wglLockVideoCaptureDeviceNV: TwglLockVideoCaptureDeviceNV; + wglQueryVideoCaptureDeviceNV: TwglQueryVideoCaptureDeviceNV; + wglReleaseVideoCaptureDeviceNV: TwglReleaseVideoCaptureDeviceNV; + + // WGL_NV_copy_image + wglCopyImageSubDataNV: TwglCopyImageSubDataNV; + + // WGL_NV_DX_interop + wglDXSetResourceShareHandleNV : TwglDXSetResourceShareHandleNV; + wglDXOpenDeviceNV : TwglDXOpenDeviceNV; + wglDXCloseDeviceNV : TwglDXCloseDeviceNV; + wglDXRegisterObjectNV : TwglDXRegisterObjectNV; + wglDXUnregisterObjectNV : TwglDXUnregisterObjectNV; + wglDXObjectAccessNV : TwglDXObjectAccessNV; + wglDXLockObjectsNV : TwglDXLockObjectsNV; + wglDXUnlockObjectsNV : TwglDXUnlockObjectsNV; + + // WGL_OML_sync_control + wglGetSyncValuesOML: TwglGetSyncValuesOML; + wglGetMscRateOML: TwglGetMscRateOML; + wglSwapBuffersMscOML: TwglSwapBuffersMscOML; + wglSwapLayerBuffersMscOML: TwglSwapLayerBuffersMscOML; + wglWaitForMscOML: TwglWaitForMscOML; + wglWaitForSbcOML: TwglWaitForSbcOML; + + // WGL_3DL_stereo_control + wglSetStereoEmitterState3DL: TwglSetStereoEmitterState3DL; + + // WIN_draw_range_elements + glDrawRangeElementsWIN: TglDrawRangeElementsWIN; + + // WIN_swap_hint + glAddSwapHintRectWIN: TglAddSwapHintRectWIN; +{$ENDIF} + +{$IFDEF DGL_LINUX} + glXChooseVisual: TglXChooseVisual; + glXCopyContext: TglXCopyContext; + glXCreateContext: TglXCreateContext; + glXCreateGLXPixmap: TglXCreateGLXPixmap; + glXDestroyContext: TglXDestroyContext; + glXDestroyGLXPixmap: TglXDestroyGLXPixmap; + glXGetConfig: TglXGetConfig; + glXGetCurrentContext: TglXGetCurrentContext; + glXGetCurrentDrawable: TglXGetCurrentDrawable; + glXIsDirect: TglXIsDirect; + glXMakeCurrent: TglXMakeCurrent; + glXQueryExtension: TglXQueryExtension; + glXQueryVersion: TglXQueryVersion; + glXSwapBuffers: TglXSwapBuffers; + glXUseXFont: TglXUseXFont; + glXWaitGL: TglXWaitGL; + glXWaitX: TglXWaitX; + + glXGetClientString: TglXGetClientString; + glXQueryServerString: TglXQueryServerString; + glXQueryExtensionsString: TglXQueryExtensionsString; + + // GLX_VERSION_1_3 + glXGetFBConfigs: TglXGetFBConfigs; + glXChooseFBConfig: TglXChooseFBConfig; + glXGetFBConfigAttrib: TglXGetFBConfigAttrib; + glXGetVisualFromFBConfig: TglXGetVisualFromFBConfig; + glXCreateWindow: TglXCreateWindow; + glXDestroyWindow: TglXDestroyWindow; + glXCreatePixmap: TglXCreatePixmap; + + glXDestroyPixmap: TglXDestroyPixmap; + glXCreatePbuffer: TglXCreatePbuffer; + glXDestroyPbuffer: TglXDestroyPbuffer; + glXQueryDrawable: TglXQueryDrawable; + glXCreateNewContext: TglXCreateNewContext; + glXMakeContextCurrent: TglXMakeContextCurrent; + glXGetCurrentReadDrawable: TglXGetCurrentReadDrawable; + glXGetCurreentDisplay: TglXGetCurreentDisplay; + + glXQueryContext: TglXQueryContext; + glXSelectEvent: TglXSelectEvent; + glXGetSelectedEvent: TglXGetSelectedEvent; + + // GLX_VERSION_1_4 + glXGetProcAddress: TglXGetProcAddress; + + // GLX_ARB_get_proc_address + glXGetProcAddressARB: TglXGetProcAddressARB; + + // GLX_ARB_create_context + glXCreateContextAttribsARB: TglXCreateContextAttribsARB; + + // GLX_EXT_import_context + glXGetCurrentDisplayEXT: TglXGetCurrentDisplayEXT; + glXQueryContextInfoEXT: TglXQueryContextInfoEXT; + glXGetContextIDEXT: TglXGetContextIDEXT; + glXImportContextEXT: TglXImportContextEXT; + glXFreeContextEXT: TglXFreeContextEXT; + + // GLX_EXT_texture_from_pixmap + glXBindTexImageEXT: TglXBindTexImageEXT; + glXReleaseTexImageEXT: TglXReleaseTexImageEXT; + + // GLX_EXT_swap_control + glXSwapIntervalEXT: TglXSwapIntervalEXT; +{$ENDIF} + + // GL utility functions and procedures + gluErrorString: TgluErrorString; + gluGetString: TgluGetString; + gluOrtho2D: TgluOrtho2D; + gluPerspective: TgluPerspective; + gluPickMatrix: TgluPickMatrix; + gluLookAt: TgluLookAt; + gluProject: TgluProject; + gluUnProject: TgluUnProject; + gluScaleImage: TgluScaleImage; + gluBuild1DMipmaps: TgluBuild1DMipmaps; + gluBuild2DMipmaps: TgluBuild2DMipmaps; + gluNewQuadric: TgluNewQuadric; + gluDeleteQuadric: TgluDeleteQuadric; + gluQuadricNormals: TgluQuadricNormals; + gluQuadricTexture: TgluQuadricTexture; + gluQuadricOrientation: TgluQuadricOrientation; + gluQuadricDrawStyle: TgluQuadricDrawStyle; + gluCylinder: TgluCylinder; + gluDisk: TgluDisk; + gluPartialDisk: TgluPartialDisk; + gluSphere: TgluSphere; + gluQuadricCallback: TgluQuadricCallback; + gluNewTess: TgluNewTess; + gluDeleteTess: TgluDeleteTess; + gluTessBeginPolygon: TgluTessBeginPolygon; + gluTessBeginContour: TgluTessBeginContour; + gluTessVertex: TgluTessVertex; + gluTessEndContour: TgluTessEndContour; + gluTessEndPolygon: TgluTessEndPolygon; + gluTessProperty: TgluTessProperty; + gluTessNormal: TgluTessNormal; + gluTessCallback: TgluTessCallback; + gluGetTessProperty: TgluGetTessProperty; + gluNewNurbsRenderer: TgluNewNurbsRenderer; + gluDeleteNurbsRenderer: TgluDeleteNurbsRenderer; + gluBeginSurface: TgluBeginSurface; + gluBeginCurve: TgluBeginCurve; + gluEndCurve: TgluEndCurve; + gluEndSurface: TgluEndSurface; + gluBeginTrim: TgluBeginTrim; + gluEndTrim: TgluEndTrim; + gluPwlCurve: TgluPwlCurve; + gluNurbsCurve: TgluNurbsCurve; + gluNurbsSurface: TgluNurbsSurface; + gluLoadSamplingMatrices: TgluLoadSamplingMatrices; + gluNurbsProperty: TgluNurbsProperty; + gluGetNurbsProperty: TgluGetNurbsProperty; + gluNurbsCallback: TgluNurbsCallback; + gluBeginPolygon: TgluBeginPolygon; + gluNextContour: TgluNextContour; + gluEndPolygon: TgluEndPolygon; + + +type + TRCOptions = set of (opDoubleBuffered, opGDI, opStereo); + +var + GL_LibHandle: Pointer = nil; + GLU_LibHandle: Pointer = nil; + + LastPixelFormat: Integer; + ExtensionsRead: Boolean; + ImplementationRead: Boolean; + + +const +{$IFDEF DGL_WIN} + OPENGL_LIBNAME = 'OpenGL32.dll'; + GLU_LIBNAME = 'GLU32.dll'; +{$ELSE} + {$IFDEF darwin} + OPENGL_LIBNAME = 'libGL.dylib'; + GLU_LIBNAME = 'libGLU.dylib'; + {$ELSE} + OPENGL_LIBNAME = 'libGL.so.1'; + GLU_LIBNAME = 'libGLU.so.1'; + {$ENDIF} +{$ENDIF} + +function InitOpenGL(LibName: String = OPENGL_LIBNAME; GLULibName: String = GLU_LIBNAME): Boolean; + +function dglGetProcAddress(ProcName: PAnsiChar; LibHandle: Pointer = nil {$IFDEF DGL_LINUX}; ForceDLSym: Boolean = False{$ENDIF}): Pointer; +function dglCheckExtension(Extension: AnsiString): Boolean; + +procedure ReadExtensions; +procedure ReadImplementationProperties; + +// ============================================================================= +// Helper-Functions +// ============================================================================= +{$IFDEF DGL_WIN} + function CreateRenderingContext(DC: HDC; Options: TRCOptions; ColorBits, ZBits, StencilBits, AccumBits, AuxBuffers: Integer; Layer: Integer): HGLRC; + function CreateRenderingContextVersion(DC: HDC; Options: TRCOptions; MajorVersion, MinorVersion : Integer; ForwardCompatible : Boolean; ColorBits, ZBits, StencilBits, AccumBits, AuxBuffers: Integer; Layer: Integer): HGLRC; + procedure DestroyRenderingContext(RC: HGLRC); + + procedure ActivateRenderingContext(DC: HDC; RC: HGLRC; loadext: boolean = true); + procedure DeactivateRenderingContext; +{$ENDIF} + + +procedure ReadOpenGLCore; +procedure Read_GL_3DFX_tbuffer; +procedure Read_GL_APPLE_element_array; +procedure Read_GL_APPLE_fence; +procedure Read_GL_APPLE_vertex_array_object; +procedure Read_GL_APPLE_vertex_array_range; +procedure Read_GL_APPLE_texture_range; +procedure Read_GL_APPLE_vertex_program_evaluators; +procedure Read_GL_APPLE_object_purgeable; +procedure Read_GL_ARB_matrix_palette; +procedure Read_GL_ARB_multitexture; +procedure Read_GL_ARB_point_parameters; +procedure Read_GL_ARB_texture_compression; +procedure Read_GL_ARB_transpose_matrix; +procedure Read_GL_ARB_vertex_blend; +procedure Read_GL_ARB_vertex_buffer_object; +procedure Read_GL_ARB_vertex_program; +procedure Read_GL_ARB_window_pos; +procedure Read_GL_ARB_color_buffer_float; +procedure Read_GL_ARB_Shader_Objects; +procedure Read_GL_ARB_occlusion_query; +procedure Read_GL_ARB_draw_instanced; +procedure Read_GL_ARB_framebuffer_object; +procedure Read_GL_ARB_geometry_shader4; +procedure Read_GL_ARB_instanced_arrays; +procedure Read_GL_ARB_map_buffer_range; +procedure Read_GL_ARB_texture_buffer_object; +procedure Read_GL_ARB_vertex_array_object; +procedure Read_GL_ARB_uniform_buffer_object; +procedure Read_GL_ARB_copy_buffer; +procedure Read_GL_ARB_draw_elements_base_vertex; +procedure Read_GL_ARB_provoking_vertex; +procedure Read_GL_ARB_sync; +procedure Read_GL_ARB_texture_multisample; +procedure Read_GL_ARB_draw_buffers_blend; +procedure Read_GL_ARB_sample_shading; +procedure Read_GL_ARB_shading_language_include; +procedure Read_GL_ARB_blend_func_extended; +procedure Read_GL_ARB_sampler_objects; +procedure Read_GL_ARB_timer_query; +procedure Read_GL_ARB_vertex_type_2_10_10_10_rev; +procedure Read_GL_ARB_draw_indirect; +procedure Read_GL_ARB_gpu_shader_fp64; +procedure Read_GL_ARB_shader_subroutine; +procedure Read_GL_ARB_tessellation_shader; +procedure Read_GL_ARB_transform_feedback2; +procedure Read_GL_ARB_transform_feedback3; +procedure Read_GL_ARB_ES2_compatibility; +procedure Read_GL_ARB_get_program_binary; +procedure Read_GL_ARB_separate_shader_objects; +procedure Read_GL_ARB_vertex_attrib_64bit; +procedure Read_GL_ARB_viewport_array; +// GL 4.2 +procedure Read_GL_ARB_base_instance; +procedure Read_GL_ARB_transform_feedback_instanced; +procedure Read_GL_ARB_internalformat_query; +procedure Read_GL_ARB_shader_atomic_counters; +procedure Read_GL_ARB_shader_image_load_store; +procedure Read_GL_ARB_texture_storage; +// GL 4.3 +procedure Read_GL_KHR_debug; +procedure Read_GL_ARB_clear_buffer_object; +procedure Read_GL_ARB_compute_shader; +procedure Read_GL_ARB_copy_image; +procedure Read_GL_ARB_framebuffer_no_attachments; +procedure Read_GL_ARB_internalformat_query2; +procedure Read_GL_ARB_invalidate_subdata; +procedure Read_GL_ARB_multi_draw_indirect; +procedure Read_GL_ARB_program_interface_query; +procedure Read_GL_ARB_shader_storage_buffer_object; +procedure Read_GL_ARB_texture_buffer_range; +procedure Read_GL_ARB_texture_storage_multisample; +procedure Read_GL_ARB_texture_view; +procedure Read_GL_ARB_vertex_attrib_binding; + +// GL 4.4 +procedure Read_GL_4_4; + +// +procedure Read_GL_ARB_cl_event; +procedure Read_GL_ARB_debug_output; +procedure Read_GL_ARB_robustness; +procedure Read_GL_ATI_draw_buffers; +procedure Read_GL_ATI_element_array; +procedure Read_GL_ATI_envmap_bumpmap; +procedure Read_GL_ATI_fragment_shader; +procedure Read_GL_ATI_map_object_buffer; +procedure Read_GL_ATI_pn_triangles; +procedure Read_GL_ATI_separate_stencil; +procedure Read_GL_ATI_vertex_array_object; +procedure Read_GL_ATI_vertex_attrib_array_object; +procedure Read_GL_ATI_vertex_streams; +procedure Read_GL_AMD_performance_monitor; +procedure Read_GL_AMD_vertex_shader_tesselator; +procedure Read_GL_AMD_draw_buffers_blend; +procedure Read_GL_AMD_name_gen_delete; +procedure Read_GL_AMD_debug_output; +procedure Read_GL_EXT_blend_color; +procedure Read_GL_EXT_blend_func_separate; +procedure Read_GL_EXT_blend_minmax; +procedure Read_GL_EXT_color_subtable; +procedure Read_GL_EXT_compiled_vertex_array; +procedure Read_GL_EXT_convolution; +procedure Read_GL_EXT_coordinate_frame; +procedure Read_GL_EXT_copy_texture; +procedure Read_GL_EXT_cull_vertex; +procedure Read_GL_EXT_draw_range_elements; +procedure Read_GL_EXT_fog_coord; +procedure Read_GL_EXT_framebuffer_object; +procedure Read_GL_EXT_histogram; +procedure Read_GL_EXT_index_func; +procedure Read_GL_EXT_index_material; +procedure Read_GL_EXT_multi_draw_arrays; +procedure Read_GL_EXT_multisample; +procedure Read_GL_EXT_paletted_texture; +procedure Read_GL_EXT_pixel_transform; +procedure Read_GL_EXT_point_parameters; +procedure Read_GL_EXT_polygon_offset; +procedure Read_GL_EXT_secondary_color; +procedure Read_GL_EXT_stencil_two_side; +procedure Read_GL_EXT_subtexture; +procedure Read_GL_EXT_texture3D; +procedure Read_GL_EXT_texture_object; +procedure Read_GL_EXT_texture_perturb_normal; +procedure Read_GL_EXT_vertex_array; +procedure Read_GL_EXT_vertex_shader; +procedure Read_GL_EXT_vertex_weighting; +procedure Read_GL_EXT_depth_bounds_test; +procedure Read_GL_EXT_blend_equation_separate; +procedure Read_GL_EXT_stencil_clear_tag; +procedure Read_GL_EXT_framebuffer_blit; +procedure Read_GL_EXT_framebuffer_multisample; +procedure Read_GL_EXT_timer_query; +procedure Read_GL_EXT_gpu_program_parameters; +procedure Read_GL_EXT_bindable_uniform; +procedure Read_GL_EXT_draw_buffers2; +procedure Read_GL_EXT_draw_instanced; +procedure Read_GL_EXT_geometry_shader4; +procedure Read_GL_EXT_gpu_shader4; +procedure Read_GL_EXT_texture_array; +procedure Read_GL_EXT_texture_buffer_object; +procedure Read_GL_EXT_texture_integer; +procedure Read_GL_EXT_transform_feedback; +procedure Read_GL_EXT_direct_state_access; +procedure Read_GL_EXT_separate_shader_objects; +procedure Read_GL_EXT_shader_image_load_store; +procedure Read_GL_EXT_vertex_attrib_64bit; +procedure Read_GL_HP_image_transform; +procedure Read_GL_IBM_multimode_draw_arrays; +procedure Read_GL_IBM_vertex_array_lists; +procedure Read_GL_INGR_blend_func_separate; +procedure Read_GL_INTEL_parallel_arrays; +procedure Read_GL_MESA_resize_buffers; +procedure Read_GL_MESA_window_pos; +procedure Read_GL_NV_evaluators; +procedure Read_GL_NV_fence; +procedure Read_GL_NV_fragment_program; +procedure Read_GL_NV_half_float; +procedure Read_GL_NV_occlusion_query; +procedure Read_GL_NV_pixel_data_range; +procedure Read_GL_NV_point_sprite; +procedure Read_GL_NV_primitive_restart; +procedure Read_GL_NV_register_combiners; +procedure Read_GL_NV_register_combiners2; +procedure Read_GL_NV_vertex_array_range; +procedure Read_GL_NV_vertex_program; +procedure Read_GL_NV_depth_buffer_float; +procedure Read_GL_NV_framebuffer_multisample_coverage; +procedure Read_GL_NV_geometry_program4; +procedure Read_GL_NV_gpu_program4; +procedure Read_GL_NV_parameter_buffer_object; +procedure Read_GL_NV_transform_feedback; +procedure Read_GL_NV_conditional_render; +procedure Read_GL_NV_present_video; +procedure Read_GL_NV_explicit_multisample; +procedure Read_GL_NV_transform_feedback2; +procedure Read_GL_NV_video_capture; +procedure Read_GL_NV_copy_image; +procedure Read_GL_NV_shader_buffer_load; +procedure Read_GL_NV_vertex_buffer_unified_memory; +procedure Read_GL_NV_gpu_program5; +procedure Read_GL_NV_gpu_shader5; +procedure Read_GL_NV_vertex_attrib_integer_64bit; +procedure Read_GL_NV_vdpau_interop; +procedure Read_GL_NV_texture_barrier; +procedure Read_GL_PGI_misc_hints; +procedure Read_GL_SGIS_detail_texture; +procedure Read_GL_SGIS_fog_function; +procedure Read_GL_SGIS_multisample; +procedure Read_GL_SGIS_pixel_texture; +procedure Read_GL_SGIS_point_parameters; +procedure Read_GL_SGIS_sharpen_texture; +procedure Read_GL_SGIS_texture4D; +procedure Read_GL_SGIS_texture_color_mask; +procedure Read_GL_SGIS_texture_filter4; +procedure Read_GL_SGIX_async; +procedure Read_GL_SGIX_flush_raster; +procedure Read_GL_SGIX_fragment_lighting; +procedure Read_GL_SGIX_framezoom; +procedure Read_GL_SGIX_igloo_interface; +procedure Read_GL_SGIX_instruments; +procedure Read_GL_SGIX_list_priority; +procedure Read_GL_SGIX_pixel_texture; +procedure Read_GL_SGIX_polynomial_ffd; +procedure Read_GL_SGIX_reference_plane; +procedure Read_GL_SGIX_sprite; +procedure Read_GL_SGIX_tag_sample_buffer; +procedure Read_GL_SGI_color_table; +procedure Read_GL_SUNX_constant_data; +procedure Read_GL_SUN_global_alpha; +procedure Read_GL_SUN_mesh_array; +procedure Read_GL_SUN_triangle_list; +procedure Read_GL_SUN_vertex; + +{$IFDEF DGL_WIN} +procedure Read_WGL_ARB_buffer_region; +procedure Read_WGL_ARB_extensions_string; +procedure Read_WGL_ARB_make_current_read; +procedure Read_WGL_ARB_pbuffer; +procedure Read_WGL_ARB_pixel_format; +procedure Read_WGL_ARB_pixel_format_float; +procedure Read_WGL_ARB_render_texture; +procedure Read_WGL_ARB_create_context; +procedure Read_WGL_AMD_gpu_association; +procedure Read_WGL_EXT_display_color_table; +procedure Read_WGL_EXT_extensions_string; +procedure Read_WGL_EXT_make_current_read; +procedure Read_WGL_EXT_pbuffer; +procedure Read_WGL_EXT_pixel_format; +procedure Read_WGL_EXT_swap_control; +procedure Read_WGL_I3D_digital_video_control; +procedure Read_WGL_I3D_gamma; +procedure Read_WGL_I3D_genlock; +procedure Read_WGL_I3D_image_buffer; +procedure Read_WGL_I3D_swap_frame_lock; +procedure Read_WGL_I3D_swap_frame_usage; +procedure Read_WGL_NV_vertex_array_range; +procedure Read_WGL_NV_present_video; +procedure Read_WGL_NV_video_output; +procedure Read_WGL_NV_swap_group; +procedure Read_WGL_NV_gpu_affinity; +procedure Read_WGL_NV_video_capture; +procedure Read_WGL_NV_copy_image; +procedure Read_WGL_OML_sync_control; +procedure Read_WGL_3DL_stereo_control; + +procedure Read_WIN_draw_range_elements; +procedure Read_WIN_swap_hint; +{$ENDIF} + + +implementation + + +{$IFDEF DGL_LINUX} +const + RTLD_LAZY = $001; + RTLD_NOW = $002; + RTLD_BINDING_MASK = $003; + + // Seems to work on Debian / Fedora + LibraryLib = {$IFDEF Linux} 'libdl.so.2'{$ELSE} 'c'{$ENDIF}; + +function dlopen(Name: PAnsiChar; Flags: LongInt): Pointer; cdecl; external LibraryLib name 'dlopen'; +function dlclose(Lib: Pointer): LongInt; cdecl; external LibraryLib name 'dlclose'; + +function dlsym(Lib: Pointer; Name: PAnsiChar): Pointer; cdecl; external LibraryLib name 'dlsym'; +{$ENDIF} + +{$IFDEF DGL_MAC}{$IFDEF OPENGL_FRAMEWORK} // OpenGL framework used +const + RTLD_DEFAULT = Pointer(-2); +{$ENDIF}{$ENDIF} + +function dglLoadLibrary(Name: PChar): Pointer; +begin + {$IFDEF DGL_WIN} + Result := {%H-}Pointer(LoadLibrary(Name)); + {$ENDIF} + + {$IFDEF DGL_LINUX} + Result := dlopen(Name, RTLD_LAZY); + {$ENDIF} + + {$IFDEF DGL_MAC} + {$IFDEF OPENGL_FRAMEWORK} + Result := RTLD_DEFAULT; + {$ELSE} + Result := Pointer(LoadLibrary(Name)); + {$ENDIF} + {$ENDIF} +end; + + +function dglFreeLibrary(LibHandle: Pointer): Boolean; +begin + if LibHandle = nil then + Result := False + else + {$IFDEF DGL_WIN} + Result := FreeLibrary({%H-}HMODULE(LibHandle)); + {$ENDIF} + + {$IFDEF DGL_LINUX} + Result := dlclose(LibHandle) = 0; + {$ENDIF} + + {$IFDEF DGL_MAC} + {$IFDEF OPENGL_FRAMEWORK} + Result := true; + {$ELSE} + Result := FreeLibrary(HMODULE(LibHandle)); + {$ENDIF} + {$ENDIF} +end; + + +function dglGetProcAddress(ProcName: PAnsiChar; LibHandle: Pointer = nil {$IFDEF DGL_LINUX}; ForceDLSym: Boolean = False{$ENDIF}): Pointer; +begin + if LibHandle = nil then + LibHandle := GL_LibHandle; + + Result := nil; + + {$IFDEF DGL_WIN} + Result := GetProcAddress({%H-}HMODULE(LibHandle), ProcName); + + if result <> nil then + exit; + + if Addr(wglGetProcAddress) <> nil then + Result := wglGetProcAddress(ProcName); + {$ENDIF} + + {$IFDEF DGL_LINUX} + if not ForceDLSym then begin + if Addr(glXGetProcAddress) <> nil then + Result := glXGetProcAddress(ProcName); + + if result <> nil then + exit; + + if Addr(glXGetProcAddressARB) <> nil then + Result := glXGetProcAddressARB(ProcName); + + if result <> nil then + exit; + end; + + Result := dlsym(LibHandle, ProcName); + {$ENDIF} + + {$IFDEF DGL_MAC} + Result := GetProcAddress(HMODULE(LibHandle), ProcName); + {$ENDIF} +end; + + +function Int_GetExtensionString: AnsiString; +var + ExtensionCount : GLint; + i : Integer; +begin + if GL_VERSION_3_0 + then + begin + if not Assigned(@glGetIntegerv) then glGetIntegerv := dglGetProcAddress('glGetIntegerv'); + if not Assigned(@glGetStringi) then glGetStringi := dglGetProcAddress('glGetStringi'); + + result := ''; + + if Assigned(@glGetIntegerv) and Assigned(@glGetStringi) + then + begin + glGetIntegerv(GL_NUM_EXTENSIONS, @extensionCount); + + For I := 0 to extensionCount - 1 do + result := result + #32 + PAnsiChar(glGetStringi(GL_EXTENSIONS, I)); + end; + end + else + begin + if not Assigned(@glGetString) then glGetString := dglGetProcAddress('glGetString'); + + if Assigned(@glGetString) + then result := glGetString(GL_EXTENSIONS) + else result := ''; + end; + + if (GL_LibHandle <> nil) then begin + {$IFDEF DGL_WIN} + // wglGetExtensionsStringEXT + if not Assigned(@wglGetExtensionsStringEXT) then + wglGetExtensionsStringEXT := dglGetProcAddress('wglGetExtensionsStringEXT'); + + if Assigned(@wglGetExtensionsStringEXT) then + Result := Result + #32 + wglGetExtensionsStringEXT; + + // wglGetExtensionsStringARB + if not Assigned(@wglGetExtensionsStringARB) then + wglGetExtensionsStringARB := dglGetProcAddress('wglGetExtensionsStringARB'); + + if Assigned(@wglGetExtensionsStringARB) then + Result := Result + #32 + wglGetExtensionsStringARB(wglGetCurrentDC); + {$ENDIF} + end; + + Result := #32 + Result + #32; +end; + + +function Int_CheckExtension(AllExtensions, CheckExtension: AnsiString): Boolean; +begin + Result := Pos(#32 + CheckExtension + #32, AllExtensions) > 0; +end; + + +function dglCheckExtension(Extension: AnsiString): Boolean; +var + Extensions: AnsiString; +begin + Extensions := Int_GetExtensionString; + Result := Int_CheckExtension(Extensions, Extension); +end; + + + +function InitOpenGL(LibName: String; GLULibName: String): Boolean; +begin + Result := False; + + // free opened libraries + if GL_LibHandle <> nil then + dglFreeLibrary(GL_LibHandle); + + if GLU_LibHandle <> nil then + dglFreeLibrary(GLU_LibHandle); + + // load library + GL_LibHandle := dglLoadLibrary(PChar(LibName)); + GLU_LibHandle := dglLoadLibrary(PChar(GLULibName)); + + // load GL functions + if (GL_LibHandle <> nil) then begin + {$IFDEF DGL_WIN} + wglCopyContext := dglGetProcAddress('wglCopyContext'); + wglCreateLayerContext := dglGetProcAddress('wglCreateLayerContext'); + wglCreateContext := dglGetProcAddress('wglCreateContext'); + wglDeleteContext := dglGetProcAddress('wglDeleteContext'); + wglDescribeLayerPlane := dglGetProcAddress('wglDescribeLayerPlane'); + wglGetCurrentContext := dglGetProcAddress('wglGetCurrentContext'); + wglGetCurrentDC := dglGetProcAddress('wglGetCurrentDC'); + wglGetLayerPaletteEntries := dglGetProcAddress('wglGetLayerPaletteEntries'); + wglGetProcAddress := dglGetProcAddress('wglGetProcAddress'); + wglMakeCurrent := dglGetProcAddress('wglMakeCurrent'); + wglRealizeLayerPalette := dglGetProcAddress('wglRealizeLayerPalette'); + wglSetLayerPaletteEntries := dglGetProcAddress('wglSetLayerPaletteEntries'); + wglShareLists := dglGetProcAddress('wglShareLists'); + wglSwapLayerBuffers := dglGetProcAddress('wglSwapLayerBuffers'); + wglSwapMultipleBuffers := dglGetProcAddress('wglSwapMultipleBuffers'); + wglUseFontBitmapsA := dglGetProcAddress('wglUseFontBitmapsA'); + wglUseFontOutlinesA := dglGetProcAddress('wglUseFontOutlinesA'); + wglUseFontBitmapsW := dglGetProcAddress('wglUseFontBitmapsW'); + wglUseFontOutlinesW := dglGetProcAddress('wglUseFontOutlinesW'); + wglUseFontBitmaps := dglGetProcAddress('wglUseFontBitmapsA'); + wglUseFontOutlines := dglGetProcAddress('wglUseFontOutlinesA'); + {$ENDIF} + + {$IFDEF DGL_LINUX} + // GLX_VERSION_1_4 (needs to be first) + glXGetProcAddress := dglGetProcAddress('glXGetProcAddress', nil, True); + + // GLX_ARB_get_proc_address (also needs to be first) + glXGetProcAddressARB := dglGetProcAddress('glXGetProcAddressARB', nil, True); + + glXChooseVisual := dglGetProcAddress('glXChooseVisual'); + glXCopyContext := dglGetProcAddress('glXCopyContext'); + glXCreateContext := dglGetProcAddress('glXCreateContext'); + glXCreateGLXPixmap := dglGetProcAddress('glXCreateGLXPixmap'); + glXDestroyContext := dglGetProcAddress('glXDestroyContext'); + glXDestroyGLXPixmap := dglGetProcAddress('glXDestroyGLXPixmap'); + glXGetConfig := dglGetProcAddress('glXGetConfig'); + glXGetCurrentContext := dglGetProcAddress('glXGetCurrentContext'); + glXGetCurrentDrawable := dglGetProcAddress('glXGetCurrentDrawable'); + glXIsDirect := dglGetProcAddress('glXIsDirect'); + glXMakeCurrent := dglGetProcAddress('glXMakeCurrent'); + glXQueryExtension := dglGetProcAddress('glXQueryExtension'); + glXQueryVersion := dglGetProcAddress('glXQueryVersion'); + glXSwapBuffers := dglGetProcAddress('glXSwapBuffers'); + glXUseXFont := dglGetProcAddress('glXUseXFont'); + glXWaitGL := dglGetProcAddress('glXWaitGL'); + glXWaitX := dglGetProcAddress('glXWaitX'); + + glXGetClientString := dglGetProcAddress('glXGetClientString'); + glXQueryServerString := dglGetProcAddress('glXQueryServerString'); + glXQueryExtensionsString := dglGetProcAddress('glXQueryExtensionsString'); + + // GLX_VERSION_1_3 + glXGetFBConfigs := dglGetProcAddress('glXGetFBConfigs'); + glXChooseFBConfig := dglGetProcAddress('glXChooseFBConfig'); + glXGetFBConfigAttrib := dglGetProcAddress('glXGetFBConfigAttrib'); + glXGetVisualFromFBConfig := dglGetProcAddress('glXGetVisualFromFBConfig'); + glXCreateWindow := dglGetProcAddress('glXCreateWindow'); + glXDestroyWindow := dglGetProcAddress('glXDestroyWindow'); + glXCreatePixmap := dglGetProcAddress('glXCreatePixmap'); + + glXDestroyPixmap := dglGetProcAddress('glXDestroyPixmap'); + glXCreatePbuffer := dglGetProcAddress('glXCreatePbuffer'); + glXDestroyPbuffer := dglGetProcAddress('glXDestroyPbuffer'); + glXQueryDrawable := dglGetProcAddress('glXQueryDrawable'); + glXCreateNewContext := dglGetProcAddress('glXCreateNewContext'); + glXMakeContextCurrent := dglGetProcAddress('glXMakeContextCurrent'); + glXGetCurrentReadDrawable := dglGetProcAddress('glXGetCurrentReadDrawable'); + glXGetCurreentDisplay := dglGetProcAddress('glXGetCurreentDisplay'); + + glXQueryContext := dglGetProcAddress('glXQueryContext'); + glXSelectEvent := dglGetProcAddress('glXSelectEvent'); + glXGetSelectedEvent := dglGetProcAddress('glXGetSelectedEvent'); + + // GLX_ARB_create_context + glXCreateContextAttribsARB := dglGetProcAddress('glXCreateContextAttribsARB'); + + // GLX_EXT_import_context + glXGetCurrentDisplayEXT := dglGetProcAddress('glXGetCurrentDisplayEXT'); + glXQueryContextInfoEXT := dglGetProcAddress('glXQueryContextInfoEXT'); + glXGetContextIDEXT := dglGetProcAddress('glXGetContextIDEXT'); + glXImportContextEXT := dglGetProcAddress('glXImportContextEXT'); + glXFreeContextEXT := dglGetProcAddress('glXFreeContextEXT'); + + // GLX_EXT_texture_from_pixmap + glXBindTexImageEXT := dglGetProcAddress('glXBindTexImageEXT'); + glXReleaseTexImageEXT := dglGetProcAddress('glXReleaseTexImageEXT'); + + // GLX_EXT_swap_control + glXSwapIntervalEXT := dglGetProcAddress('glXSwapIntervalEXT'); + {$ENDIF} + + Result := True; + end; + + // load GLU functions + if GLU_LibHandle <> nil then begin + // GLU ======================================================================== + gluBeginCurve := dglGetProcAddress('gluBeginCurve', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluBeginPolygon := dglGetProcAddress('gluBeginPolygon', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluBeginSurface := dglGetProcAddress('gluBeginSurface', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluBeginTrim := dglGetProcAddress('gluBeginTrim', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluBuild1DMipmaps := dglGetProcAddress('gluBuild1DMipmaps', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluBuild2DMipmaps := dglGetProcAddress('gluBuild2DMipmaps', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluCylinder := dglGetProcAddress('gluCylinder', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluDeleteNurbsRenderer := dglGetProcAddress('gluDeleteNurbsRenderer', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluDeleteQuadric := dglGetProcAddress('gluDeleteQuadric', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluDeleteTess := dglGetProcAddress('gluDeleteTess', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluDisk := dglGetProcAddress('gluDisk', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluEndCurve := dglGetProcAddress('gluEndCurve', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluEndPolygon := dglGetProcAddress('gluEndPolygon', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluEndSurface := dglGetProcAddress('gluEndSurface', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluEndTrim := dglGetProcAddress('gluEndTrim', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluErrorString := dglGetProcAddress('gluErrorString', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluGetNurbsProperty := dglGetProcAddress('gluGetNurbsProperty', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluGetString := dglGetProcAddress('gluGetString', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluGetTessProperty := dglGetProcAddress('gluGetTessProperty', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluLoadSamplingMatrices := dglGetProcAddress('gluLoadSamplingMatrices', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluLookAt := dglGetProcAddress('gluLookAt', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluNewNurbsRenderer := dglGetProcAddress('gluNewNurbsRenderer', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluNewQuadric := dglGetProcAddress('gluNewQuadric', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluNewTess := dglGetProcAddress('gluNewTess', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluNextContour := dglGetProcAddress('gluNextContour', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluNurbsCallback := dglGetProcAddress('gluNurbsCallback', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluNurbsCurve := dglGetProcAddress('gluNurbsCurve', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluNurbsProperty := dglGetProcAddress('gluNurbsProperty', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluNurbsSurface := dglGetProcAddress('gluNurbsSurface', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluOrtho2D := dglGetProcAddress('gluOrtho2D', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluPartialDisk := dglGetProcAddress('gluPartialDisk', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluPerspective := dglGetProcAddress('gluPerspective', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluPickMatrix := dglGetProcAddress('gluPickMatrix', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluProject := dglGetProcAddress('gluProject', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluPwlCurve := dglGetProcAddress('gluPwlCurve', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluQuadricCallback := dglGetProcAddress('gluQuadricCallback', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluQuadricDrawStyle := dglGetProcAddress('gluQuadricDrawStyle', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluQuadricNormals := dglGetProcAddress('gluQuadricNormals', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluQuadricOrientation := dglGetProcAddress('gluQuadricOrientation', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluQuadricTexture := dglGetProcAddress('gluQuadricTexture', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluScaleImage := dglGetProcAddress('gluScaleImage', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluSphere := dglGetProcAddress('gluSphere', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluTessBeginContour := dglGetProcAddress('gluTessBeginContour', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluTessBeginPolygon := dglGetProcAddress('gluTessBeginPolygon', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluTessCallback := dglGetProcAddress('gluTessCallback', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluTessEndContour := dglGetProcAddress('gluTessEndContour', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluTessEndPolygon := dglGetProcAddress('gluTessEndPolygon', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluTessNormal := dglGetProcAddress('gluTessNormal', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluTessProperty := dglGetProcAddress('gluTessProperty', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluTessVertex := dglGetProcAddress('gluTessVertex', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + gluUnProject := dglGetProcAddress('gluUnProject', GLU_LibHandle {$IFDEF DGL_LINUX}, True{$ENDIF}); + end; +end; + +procedure ReadOpenGLCore; +begin + // GL_VERSION_1_0 + glCullFace := dglGetProcAddress('glCullFace'); + glFrontFace := dglGetProcAddress('glFrontFace'); + glHint := dglGetProcAddress('glHint'); + glLineWidth := dglGetProcAddress('glLineWidth'); + glPointSize := dglGetProcAddress('glPointSize'); + glPolygonMode := dglGetProcAddress('glPolygonMode'); + glScissor := dglGetProcAddress('glScissor'); + glTexParameterf := dglGetProcAddress('glTexParameterf'); + glTexParameterfv := dglGetProcAddress('glTexParameterfv'); + glTexParameteri := dglGetProcAddress('glTexParameteri'); + glTexParameteriv := dglGetProcAddress('glTexParameteriv'); + glTexImage1D := dglGetProcAddress('glTexImage1D'); + glTexImage2D := dglGetProcAddress('glTexImage2D'); + glDrawBuffer := dglGetProcAddress('glDrawBuffer'); + glClear := dglGetProcAddress('glClear'); + glClearColor := dglGetProcAddress('glClearColor'); + glClearStencil := dglGetProcAddress('glClearStencil'); + glClearDepth := dglGetProcAddress('glClearDepth'); + glStencilMask := dglGetProcAddress('glStencilMask'); + glColorMask := dglGetProcAddress('glColorMask'); + glDepthMask := dglGetProcAddress('glDepthMask'); + glDisable := dglGetProcAddress('glDisable'); + glEnable := dglGetProcAddress('glEnable'); + glFinish := dglGetProcAddress('glFinish'); + glFlush := dglGetProcAddress('glFlush'); + glBlendFunc := dglGetProcAddress('glBlendFunc'); + glLogicOp := dglGetProcAddress('glLogicOp'); + glStencilFunc := dglGetProcAddress('glStencilFunc'); + glStencilOp := dglGetProcAddress('glStencilOp'); + glDepthFunc := dglGetProcAddress('glDepthFunc'); + glPixelStoref := dglGetProcAddress('glPixelStoref'); + glPixelStorei := dglGetProcAddress('glPixelStorei'); + glReadBuffer := dglGetProcAddress('glReadBuffer'); + glReadPixels := dglGetProcAddress('glReadPixels'); + glGetBooleanv := dglGetProcAddress('glGetBooleanv'); + glGetDoublev := dglGetProcAddress('glGetDoublev'); + glGetError := dglGetProcAddress('glGetError'); + glGetFloatv := dglGetProcAddress('glGetFloatv'); + glGetIntegerv := dglGetProcAddress('glGetIntegerv'); + glGetString := dglGetProcAddress('glGetString'); + glGetTexImage := dglGetProcAddress('glGetTexImage'); + glGetTexParameteriv := dglGetProcAddress('glGetTexParameteriv'); + glGetTexParameterfv := dglGetProcAddress('glGetTexParameterfv'); + glGetTexLevelParameterfv := dglGetProcAddress('glGetTexLevelParameterfv'); + glGetTexLevelParameteriv := dglGetProcAddress('glGetTexLevelParameteriv'); + glIsEnabled := dglGetProcAddress('glIsEnabled'); + glDepthRange := dglGetProcAddress('glDepthRange'); + glViewport := dglGetProcAddress('glViewport'); + + // GL_VERSION_1_1 + glDrawArrays := dglGetProcAddress('glDrawArrays'); + glDrawElements := dglGetProcAddress('glDrawElements'); + glGetPointerv := dglGetProcAddress('glGetPointerv'); + glPolygonOffset := dglGetProcAddress('glPolygonOffset'); + glCopyTexImage1D := dglGetProcAddress('glCopyTexImage1D'); + glCopyTexImage2D := dglGetProcAddress('glCopyTexImage2D'); + glCopyTexSubImage1D := dglGetProcAddress('glCopyTexSubImage1D'); + glCopyTexSubImage2D := dglGetProcAddress('glCopyTexSubImage2D'); + glTexSubImage1D := dglGetProcAddress('glTexSubImage1D'); + glTexSubImage2D := dglGetProcAddress('glTexSubImage2D'); + glBindTexture := dglGetProcAddress('glBindTexture'); + glDeleteTextures := dglGetProcAddress('glDeleteTextures'); + glGenTextures := dglGetProcAddress('glGenTextures'); + +{$ifdef DGL_DEPRECATED} + glAccum := dglGetProcAddress('glAccum'); + glAlphaFunc := dglGetProcAddress('glAlphaFunc'); + glAreTexturesResident := dglGetProcAddress('glAreTexturesResident'); + glArrayElement := dglGetProcAddress('glArrayElement'); + glBegin := dglGetProcAddress('glBegin'); + glBitmap := dglGetProcAddress('glBitmap'); + glCallList := dglGetProcAddress('glCallList'); + glCallLists := dglGetProcAddress('glCallLists'); + glClearAccum := dglGetProcAddress('glClearAccum'); + glClearIndex := dglGetProcAddress('glClearIndex'); + glClipPlane := dglGetProcAddress('glClipPlane'); + glColor3b := dglGetProcAddress('glColor3b'); + glColor3bv := dglGetProcAddress('glColor3bv'); + glColor3d := dglGetProcAddress('glColor3d'); + glColor3dv := dglGetProcAddress('glColor3dv'); + glColor3f := dglGetProcAddress('glColor3f'); + glColor3fv := dglGetProcAddress('glColor3fv'); + glColor3i := dglGetProcAddress('glColor3i'); + glColor3iv := dglGetProcAddress('glColor3iv'); + glColor3s := dglGetProcAddress('glColor3s'); + glColor3sv := dglGetProcAddress('glColor3sv'); + glColor3ub := dglGetProcAddress('glColor3ub'); + glColor3ubv := dglGetProcAddress('glColor3ubv'); + glColor3ui := dglGetProcAddress('glColor3ui'); + glColor3uiv := dglGetProcAddress('glColor3uiv'); + glColor3us := dglGetProcAddress('glColor3us'); + glColor3usv := dglGetProcAddress('glColor3usv'); + glColor4b := dglGetProcAddress('glColor4b'); + glColor4bv := dglGetProcAddress('glColor4bv'); + glColor4d := dglGetProcAddress('glColor4d'); + glColor4dv := dglGetProcAddress('glColor4dv'); + glColor4f := dglGetProcAddress('glColor4f'); + glColor4fv := dglGetProcAddress('glColor4fv'); + glColor4i := dglGetProcAddress('glColor4i'); + glColor4iv := dglGetProcAddress('glColor4iv'); + glColor4s := dglGetProcAddress('glColor4s'); + glColor4sv := dglGetProcAddress('glColor4sv'); + glColor4ub := dglGetProcAddress('glColor4ub'); + glColor4ubv := dglGetProcAddress('glColor4ubv'); + glColor4ui := dglGetProcAddress('glColor4ui'); + glColor4uiv := dglGetProcAddress('glColor4uiv'); + glColor4us := dglGetProcAddress('glColor4us'); + glColor4usv := dglGetProcAddress('glColor4usv'); + glColorMaterial := dglGetProcAddress('glColorMaterial'); + glColorPointer := dglGetProcAddress('glColorPointer'); + glCopyPixels := dglGetProcAddress('glCopyPixels'); + glDeleteLists := dglGetProcAddress('glDeleteLists'); + glDisableClientState := dglGetProcAddress('glDisableClientState'); + glDrawPixels := dglGetProcAddress('glDrawPixels'); + glEdgeFlag := dglGetProcAddress('glEdgeFlag'); + glEdgeFlagPointer := dglGetProcAddress('glEdgeFlagPointer'); + glEdgeFlagv := dglGetProcAddress('glEdgeFlagv'); + glEnableClientState := dglGetProcAddress('glEnableClientState'); + glEnd := dglGetProcAddress('glEnd'); + glEndList := dglGetProcAddress('glEndList'); + glEvalCoord1d := dglGetProcAddress('glEvalCoord1d'); + glEvalCoord1dv := dglGetProcAddress('glEvalCoord1dv'); + glEvalCoord1f := dglGetProcAddress('glEvalCoord1f'); + glEvalCoord1fv := dglGetProcAddress('glEvalCoord1fv'); + glEvalCoord2d := dglGetProcAddress('glEvalCoord2d'); + glEvalCoord2dv := dglGetProcAddress('glEvalCoord2dv'); + glEvalCoord2f := dglGetProcAddress('glEvalCoord2f'); + glEvalCoord2fv := dglGetProcAddress('glEvalCoord2fv'); + glEvalMesh1 := dglGetProcAddress('glEvalMesh1'); + glEvalMesh2 := dglGetProcAddress('glEvalMesh2'); + glEvalPoint1 := dglGetProcAddress('glEvalPoint1'); + glEvalPoint2 := dglGetProcAddress('glEvalPoint2'); + glFeedbackBuffer := dglGetProcAddress('glFeedbackBuffer'); + glFogf := dglGetProcAddress('glFogf'); + glFogfv := dglGetProcAddress('glFogfv'); + glFogi := dglGetProcAddress('glFogi'); + glFogiv := dglGetProcAddress('glFogiv'); + glFrustum := dglGetProcAddress('glFrustum'); + glGenLists := dglGetProcAddress('glGenLists'); + glGetClipPlane := dglGetProcAddress('glGetClipPlane'); + glGetLightfv := dglGetProcAddress('glGetLightfv'); + glGetLightiv := dglGetProcAddress('glGetLightiv'); + glGetMapdv := dglGetProcAddress('glGetMapdv'); + glGetMapfv := dglGetProcAddress('glGetMapfv'); + glGetMapiv := dglGetProcAddress('glGetMapiv'); + glGetMaterialfv := dglGetProcAddress('glGetMaterialfv'); + glGetMaterialiv := dglGetProcAddress('glGetMaterialiv'); + glGetPixelMapfv := dglGetProcAddress('glGetPixelMapfv'); + glGetPixelMapuiv := dglGetProcAddress('glGetPixelMapuiv'); + glGetPixelMapusv := dglGetProcAddress('glGetPixelMapusv'); + glGetPolygonStipple := dglGetProcAddress('glGetPolygonStipple'); + glGetTexEnvfv := dglGetProcAddress('glGetTexEnvfv'); + glGetTexEnviv := dglGetProcAddress('glGetTexEnviv'); + glGetTexGendv := dglGetProcAddress('glGetTexGendv'); + glGetTexGenfv := dglGetProcAddress('glGetTexGenfv'); + glGetTexGeniv := dglGetProcAddress('glGetTexGeniv'); + glIndexMask := dglGetProcAddress('glIndexMask'); + glIndexPointer := dglGetProcAddress('glIndexPointer'); + glIndexd := dglGetProcAddress('glIndexd'); + glIndexdv := dglGetProcAddress('glIndexdv'); + glIndexf := dglGetProcAddress('glIndexf'); + glIndexfv := dglGetProcAddress('glIndexfv'); + glIndexi := dglGetProcAddress('glIndexi'); + glIndexiv := dglGetProcAddress('glIndexiv'); + glIndexs := dglGetProcAddress('glIndexs'); + glIndexsv := dglGetProcAddress('glIndexsv'); + glIndexub := dglGetProcAddress('glIndexub'); + glIndexubv := dglGetProcAddress('glIndexubv'); + glInitNames := dglGetProcAddress('glInitNames'); + glInterleavedArrays := dglGetProcAddress('glInterleavedArrays'); + glIsList := dglGetProcAddress('glIsList'); + glIsTexture := dglGetProcAddress('glIsTexture'); + glLightModelf := dglGetProcAddress('glLightModelf'); + glLightModelfv := dglGetProcAddress('glLightModelfv'); + glLightModeli := dglGetProcAddress('glLightModeli'); + glLightModeliv := dglGetProcAddress('glLightModeliv'); + glLightf := dglGetProcAddress('glLightf'); + glLightfv := dglGetProcAddress('glLightfv'); + glLighti := dglGetProcAddress('glLighti'); + glLightiv := dglGetProcAddress('glLightiv'); + glLineStipple := dglGetProcAddress('glLineStipple'); + glListBase := dglGetProcAddress('glListBase'); + glLoadIdentity := dglGetProcAddress('glLoadIdentity'); + glLoadMatrixd := dglGetProcAddress('glLoadMatrixd'); + glLoadMatrixf := dglGetProcAddress('glLoadMatrixf'); + glLoadName := dglGetProcAddress('glLoadName'); + glMap1d := dglGetProcAddress('glMap1d'); + glMap1f := dglGetProcAddress('glMap1f'); + glMap2d := dglGetProcAddress('glMap2d'); + glMap2f := dglGetProcAddress('glMap2f'); + glMapGrid1d := dglGetProcAddress('glMapGrid1d'); + glMapGrid1f := dglGetProcAddress('glMapGrid1f'); + glMapGrid2d := dglGetProcAddress('glMapGrid2d'); + glMapGrid2f := dglGetProcAddress('glMapGrid2f'); + glMaterialf := dglGetProcAddress('glMaterialf'); + glMaterialfv := dglGetProcAddress('glMaterialfv'); + glMateriali := dglGetProcAddress('glMateriali'); + glMaterialiv := dglGetProcAddress('glMaterialiv'); + glMatrixMode := dglGetProcAddress('glMatrixMode'); + glMultMatrixd := dglGetProcAddress('glMultMatrixd'); + glMultMatrixf := dglGetProcAddress('glMultMatrixf'); + glNewList := dglGetProcAddress('glNewList'); + glNormal3b := dglGetProcAddress('glNormal3b'); + glNormal3bv := dglGetProcAddress('glNormal3bv'); + glNormal3d := dglGetProcAddress('glNormal3d'); + glNormal3dv := dglGetProcAddress('glNormal3dv'); + glNormal3f := dglGetProcAddress('glNormal3f'); + glNormal3fv := dglGetProcAddress('glNormal3fv'); + glNormal3i := dglGetProcAddress('glNormal3i'); + glNormal3iv := dglGetProcAddress('glNormal3iv'); + glNormal3s := dglGetProcAddress('glNormal3s'); + glNormal3sv := dglGetProcAddress('glNormal3sv'); + glNormalPointer := dglGetProcAddress('glNormalPointer'); + glOrtho := dglGetProcAddress('glOrtho'); + glPassThrough := dglGetProcAddress('glPassThrough'); + glPixelMapfv := dglGetProcAddress('glPixelMapfv'); + glPixelMapuiv := dglGetProcAddress('glPixelMapuiv'); + glPixelMapusv := dglGetProcAddress('glPixelMapusv'); + glPixelTransferf := dglGetProcAddress('glPixelTransferf'); + glPixelTransferi := dglGetProcAddress('glPixelTransferi'); + glPixelZoom := dglGetProcAddress('glPixelZoom'); + glPolygonStipple := dglGetProcAddress('glPolygonStipple'); + glPopAttrib := dglGetProcAddress('glPopAttrib'); + glPopClientAttrib := dglGetProcAddress('glPopClientAttrib'); + glPopMatrix := dglGetProcAddress('glPopMatrix'); + glPopName := dglGetProcAddress('glPopName'); + glPrioritizeTextures := dglGetProcAddress('glPrioritizeTextures'); + glPushAttrib := dglGetProcAddress('glPushAttrib'); + glPushClientAttrib := dglGetProcAddress('glPushClientAttrib'); + glPushMatrix := dglGetProcAddress('glPushMatrix'); + glPushName := dglGetProcAddress('glPushName'); + glRasterPos2d := dglGetProcAddress('glRasterPos2d'); + glRasterPos2dv := dglGetProcAddress('glRasterPos2dv'); + glRasterPos2f := dglGetProcAddress('glRasterPos2f'); + glRasterPos2fv := dglGetProcAddress('glRasterPos2fv'); + glRasterPos2i := dglGetProcAddress('glRasterPos2i'); + glRasterPos2iv := dglGetProcAddress('glRasterPos2iv'); + glRasterPos2s := dglGetProcAddress('glRasterPos2s'); + glRasterPos2sv := dglGetProcAddress('glRasterPos2sv'); + glRasterPos3d := dglGetProcAddress('glRasterPos3d'); + glRasterPos3dv := dglGetProcAddress('glRasterPos3dv'); + glRasterPos3f := dglGetProcAddress('glRasterPos3f'); + glRasterPos3fv := dglGetProcAddress('glRasterPos3fv'); + glRasterPos3i := dglGetProcAddress('glRasterPos3i'); + glRasterPos3iv := dglGetProcAddress('glRasterPos3iv'); + glRasterPos3s := dglGetProcAddress('glRasterPos3s'); + glRasterPos3sv := dglGetProcAddress('glRasterPos3sv'); + glRasterPos4d := dglGetProcAddress('glRasterPos4d'); + glRasterPos4dv := dglGetProcAddress('glRasterPos4dv'); + glRasterPos4f := dglGetProcAddress('glRasterPos4f'); + glRasterPos4fv := dglGetProcAddress('glRasterPos4fv'); + glRasterPos4i := dglGetProcAddress('glRasterPos4i'); + glRasterPos4iv := dglGetProcAddress('glRasterPos4iv'); + glRasterPos4s := dglGetProcAddress('glRasterPos4s'); + glRasterPos4sv := dglGetProcAddress('glRasterPos4sv'); + glRectd := dglGetProcAddress('glRectd'); + glRectdv := dglGetProcAddress('glRectdv'); + glRectf := dglGetProcAddress('glRectf'); + glRectfv := dglGetProcAddress('glRectfv'); + glRecti := dglGetProcAddress('glRecti'); + glRectiv := dglGetProcAddress('glRectiv'); + glRects := dglGetProcAddress('glRects'); + glRectsv := dglGetProcAddress('glRectsv'); + glRenderMode := dglGetProcAddress('glRenderMode'); + glRotated := dglGetProcAddress('glRotated'); + glRotatef := dglGetProcAddress('glRotatef'); + glScaled := dglGetProcAddress('glScaled'); + glScalef := dglGetProcAddress('glScalef'); + glSelectBuffer := dglGetProcAddress('glSelectBuffer'); + glShadeModel := dglGetProcAddress('glShadeModel'); + glTexCoord1d := dglGetProcAddress('glTexCoord1d'); + glTexCoord1dv := dglGetProcAddress('glTexCoord1dv'); + glTexCoord1f := dglGetProcAddress('glTexCoord1f'); + glTexCoord1fv := dglGetProcAddress('glTexCoord1fv'); + glTexCoord1i := dglGetProcAddress('glTexCoord1i'); + glTexCoord1iv := dglGetProcAddress('glTexCoord1iv'); + glTexCoord1s := dglGetProcAddress('glTexCoord1s'); + glTexCoord1sv := dglGetProcAddress('glTexCoord1sv'); + glTexCoord2d := dglGetProcAddress('glTexCoord2d'); + glTexCoord2dv := dglGetProcAddress('glTexCoord2dv'); + glTexCoord2f := dglGetProcAddress('glTexCoord2f'); + glTexCoord2fv := dglGetProcAddress('glTexCoord2fv'); + glTexCoord2i := dglGetProcAddress('glTexCoord2i'); + glTexCoord2iv := dglGetProcAddress('glTexCoord2iv'); + glTexCoord2s := dglGetProcAddress('glTexCoord2s'); + glTexCoord2sv := dglGetProcAddress('glTexCoord2sv'); + glTexCoord3d := dglGetProcAddress('glTexCoord3d'); + glTexCoord3dv := dglGetProcAddress('glTexCoord3dv'); + glTexCoord3f := dglGetProcAddress('glTexCoord3f'); + glTexCoord3fv := dglGetProcAddress('glTexCoord3fv'); + glTexCoord3i := dglGetProcAddress('glTexCoord3i'); + glTexCoord3iv := dglGetProcAddress('glTexCoord3iv'); + glTexCoord3s := dglGetProcAddress('glTexCoord3s'); + glTexCoord3sv := dglGetProcAddress('glTexCoord3sv'); + glTexCoord4d := dglGetProcAddress('glTexCoord4d'); + glTexCoord4dv := dglGetProcAddress('glTexCoord4dv'); + glTexCoord4f := dglGetProcAddress('glTexCoord4f'); + glTexCoord4fv := dglGetProcAddress('glTexCoord4fv'); + glTexCoord4i := dglGetProcAddress('glTexCoord4i'); + glTexCoord4iv := dglGetProcAddress('glTexCoord4iv'); + glTexCoord4s := dglGetProcAddress('glTexCoord4s'); + glTexCoord4sv := dglGetProcAddress('glTexCoord4sv'); + glTexCoordPointer := dglGetProcAddress('glTexCoordPointer'); + glTexEnvf := dglGetProcAddress('glTexEnvf'); + glTexEnvfv := dglGetProcAddress('glTexEnvfv'); + glTexEnvi := dglGetProcAddress('glTexEnvi'); + glTexEnviv := dglGetProcAddress('glTexEnviv'); + glTexGend := dglGetProcAddress('glTexGend'); + glTexGendv := dglGetProcAddress('glTexGendv'); + glTexGenf := dglGetProcAddress('glTexGenf'); + glTexGenfv := dglGetProcAddress('glTexGenfv'); + glTexGeni := dglGetProcAddress('glTexGeni'); + glTexGeniv := dglGetProcAddress('glTexGeniv'); + glTranslated := dglGetProcAddress('glTranslated'); + glTranslatef := dglGetProcAddress('glTranslatef'); + glVertex2d := dglGetProcAddress('glVertex2d'); + glVertex2dv := dglGetProcAddress('glVertex2dv'); + glVertex2f := dglGetProcAddress('glVertex2f'); + glVertex2fv := dglGetProcAddress('glVertex2fv'); + glVertex2i := dglGetProcAddress('glVertex2i'); + glVertex2iv := dglGetProcAddress('glVertex2iv'); + glVertex2s := dglGetProcAddress('glVertex2s'); + glVertex2sv := dglGetProcAddress('glVertex2sv'); + glVertex3d := dglGetProcAddress('glVertex3d'); + glVertex3dv := dglGetProcAddress('glVertex3dv'); + glVertex3f := dglGetProcAddress('glVertex3f'); + glVertex3fv := dglGetProcAddress('glVertex3fv'); + glVertex3i := dglGetProcAddress('glVertex3i'); + glVertex3iv := dglGetProcAddress('glVertex3iv'); + glVertex3s := dglGetProcAddress('glVertex3s'); + glVertex3sv := dglGetProcAddress('glVertex3sv'); + glVertex4d := dglGetProcAddress('glVertex4d'); + glVertex4dv := dglGetProcAddress('glVertex4dv'); + glVertex4f := dglGetProcAddress('glVertex4f'); + glVertex4fv := dglGetProcAddress('glVertex4fv'); + glVertex4i := dglGetProcAddress('glVertex4i'); + glVertex4iv := dglGetProcAddress('glVertex4iv'); + glVertex4s := dglGetProcAddress('glVertex4s'); + glVertex4sv := dglGetProcAddress('glVertex4sv'); + glVertexPointer := dglGetProcAddress('glVertexPointer'); +{$endif} + + // GL_VERSION_1_2 + glBlendColor := dglGetProcAddress('glBlendColor'); + glBlendEquation := dglGetProcAddress('glBlendEquation'); + glDrawRangeElements := dglGetProcAddress('glDrawRangeElements'); + glTexImage3D := dglGetProcAddress('glTexImage3D'); + glTexSubImage3D := dglGetProcAddress('glTexSubImage3D'); + glCopyTexSubImage3D := dglGetProcAddress('glCopyTexSubImage3D'); +{$ifdef DGL_DEPRECATED} + glColorTable := dglGetProcAddress('glColorTable'); + glColorTableParameterfv := dglGetProcAddress('glColorTableParameterfv'); + glColorTableParameteriv := dglGetProcAddress('glColorTableParameteriv'); + glCopyColorTable := dglGetProcAddress('glCopyColorTable'); + glGetColorTable := dglGetProcAddress('glGetColorTable'); + glGetColorTableParameterfv := dglGetProcAddress('glGetColorTableParameterfv'); + glGetColorTableParameteriv := dglGetProcAddress('glGetColorTableParameteriv'); + glColorSubTable := dglGetProcAddress('glColorSubTable'); + glCopyColorSubTable := dglGetProcAddress('glCopyColorSubTable'); + glConvolutionFilter1D := dglGetProcAddress('glConvolutionFilter1D'); + glConvolutionFilter2D := dglGetProcAddress('glConvolutionFilter2D'); + glConvolutionParameterf := dglGetProcAddress('glConvolutionParameterf'); + glConvolutionParameterfv := dglGetProcAddress('glConvolutionParameterfv'); + glConvolutionParameteri := dglGetProcAddress('glConvolutionParameteri'); + glConvolutionParameteriv := dglGetProcAddress('glConvolutionParameteriv'); + glCopyConvolutionFilter1D := dglGetProcAddress('glCopyConvolutionFilter1D'); + glCopyConvolutionFilter2D := dglGetProcAddress('glCopyConvolutionFilter2D'); + glGetConvolutionFilter := dglGetProcAddress('glGetConvolutionFilter'); + glGetConvolutionParameterfv := dglGetProcAddress('glGetConvolutionParameterfv'); + glGetConvolutionParameteriv := dglGetProcAddress('glGetConvolutionParameteriv'); + glGetSeparableFilter := dglGetProcAddress('glGetSeparableFilter'); + glSeparableFilter2D := dglGetProcAddress('glSeparableFilter2D'); + glGetHistogram := dglGetProcAddress('glGetHistogram'); + glGetHistogramParameterfv := dglGetProcAddress('glGetHistogramParameterfv'); + glGetHistogramParameteriv := dglGetProcAddress('glGetHistogramParameteriv'); + glGetMinmax := dglGetProcAddress('glGetMinmax'); + glGetMinmaxParameterfv := dglGetProcAddress('glGetMinmaxParameterfv'); + glGetMinmaxParameteriv := dglGetProcAddress('glGetMinmaxParameteriv'); + glHistogram := dglGetProcAddress('glHistogram'); + glMinmax := dglGetProcAddress('glMinmax'); + glResetHistogram := dglGetProcAddress('glResetHistogram'); + glResetMinmax := dglGetProcAddress('glResetMinmax'); +{$endif} + + // GL_VERSION_1_3 + glActiveTexture := dglGetProcAddress('glActiveTexture'); + glSampleCoverage := dglGetProcAddress('glSampleCoverage'); + glCompressedTexImage3D := dglGetProcAddress('glCompressedTexImage3D'); + glCompressedTexImage2D := dglGetProcAddress('glCompressedTexImage2D'); + glCompressedTexImage1D := dglGetProcAddress('glCompressedTexImage1D'); + glCompressedTexSubImage3D := dglGetProcAddress('glCompressedTexSubImage3D'); + glCompressedTexSubImage2D := dglGetProcAddress('glCompressedTexSubImage2D'); + glCompressedTexSubImage1D := dglGetProcAddress('glCompressedTexSubImage1D'); + glGetCompressedTexImage := dglGetProcAddress('glGetCompressedTexImage'); +{$ifdef DGL_DEPRECATED} + glClientActiveTexture := dglGetProcAddress('glClientActiveTexture'); + glMultiTexCoord1d := dglGetProcAddress('glMultiTexCoord1d'); + glMultiTexCoord1dv := dglGetProcAddress('glMultiTexCoord1dv'); + glMultiTexCoord1f := dglGetProcAddress('glMultiTexCoord1f'); + glMultiTexCoord1fv := dglGetProcAddress('glMultiTexCoord1fv'); + glMultiTexCoord1i := dglGetProcAddress('glMultiTexCoord1i'); + glMultiTexCoord1iv := dglGetProcAddress('glMultiTexCoord1iv'); + glMultiTexCoord1s := dglGetProcAddress('glMultiTexCoord1s'); + glMultiTexCoord1sv := dglGetProcAddress('glMultiTexCoord1sv'); + glMultiTexCoord2d := dglGetProcAddress('glMultiTexCoord2d'); + glMultiTexCoord2dv := dglGetProcAddress('glMultiTexCoord2dv'); + glMultiTexCoord2f := dglGetProcAddress('glMultiTexCoord2f'); + glMultiTexCoord2fv := dglGetProcAddress('glMultiTexCoord2fv'); + glMultiTexCoord2i := dglGetProcAddress('glMultiTexCoord2i'); + glMultiTexCoord2iv := dglGetProcAddress('glMultiTexCoord2iv'); + glMultiTexCoord2s := dglGetProcAddress('glMultiTexCoord2s'); + glMultiTexCoord2sv := dglGetProcAddress('glMultiTexCoord2sv'); + glMultiTexCoord3d := dglGetProcAddress('glMultiTexCoord3d'); + glMultiTexCoord3dv := dglGetProcAddress('glMultiTexCoord3dv'); + glMultiTexCoord3f := dglGetProcAddress('glMultiTexCoord3f'); + glMultiTexCoord3fv := dglGetProcAddress('glMultiTexCoord3fv'); + glMultiTexCoord3i := dglGetProcAddress('glMultiTexCoord3i'); + glMultiTexCoord3iv := dglGetProcAddress('glMultiTexCoord3iv'); + glMultiTexCoord3s := dglGetProcAddress('glMultiTexCoord3s'); + glMultiTexCoord3sv := dglGetProcAddress('glMultiTexCoord3sv'); + glMultiTexCoord4d := dglGetProcAddress('glMultiTexCoord4d'); + glMultiTexCoord4dv := dglGetProcAddress('glMultiTexCoord4dv'); + glMultiTexCoord4f := dglGetProcAddress('glMultiTexCoord4f'); + glMultiTexCoord4fv := dglGetProcAddress('glMultiTexCoord4fv'); + glMultiTexCoord4i := dglGetProcAddress('glMultiTexCoord4i'); + glMultiTexCoord4iv := dglGetProcAddress('glMultiTexCoord4iv'); + glMultiTexCoord4s := dglGetProcAddress('glMultiTexCoord4s'); + glMultiTexCoord4sv := dglGetProcAddress('glMultiTexCoord4sv'); + glLoadTransposeMatrixf := dglGetProcAddress('glLoadTransposeMatrixf'); + glLoadTransposeMatrixd := dglGetProcAddress('glLoadTransposeMatrixd'); + glMultTransposeMatrixf := dglGetProcAddress('glMultTransposeMatrixf'); + glMultTransposeMatrixd := dglGetProcAddress('glMultTransposeMatrixd'); +{$endif} + + // GL_VERSION_1_4 + glBlendFuncSeparate := dglGetProcAddress('glBlendFuncSeparate'); + glMultiDrawArrays := dglGetProcAddress('glMultiDrawArrays'); + glMultiDrawElements := dglGetProcAddress('glMultiDrawElements'); + glPointParameterf := dglGetProcAddress('glPointParameterf'); + glPointParameterfv := dglGetProcAddress('glPointParameterfv'); + glPointParameteri := dglGetProcAddress('glPointParameteri'); + glPointParameteriv := dglGetProcAddress('glPointParameteriv'); +{$ifdef DGL_DEPRECATED} + glFogCoordf := dglGetProcAddress('glFogCoordf'); + glFogCoordfv := dglGetProcAddress('glFogCoordfv'); + glFogCoordd := dglGetProcAddress('glFogCoordd'); + glFogCoorddv := dglGetProcAddress('glFogCoorddv'); + glFogCoordPointer := dglGetProcAddress('glFogCoordPointer'); + glSecondaryColor3b := dglGetProcAddress('glSecondaryColor3b'); + glSecondaryColor3bv := dglGetProcAddress('glSecondaryColor3bv'); + glSecondaryColor3d := dglGetProcAddress('glSecondaryColor3d'); + glSecondaryColor3dv := dglGetProcAddress('glSecondaryColor3dv'); + glSecondaryColor3f := dglGetProcAddress('glSecondaryColor3f'); + glSecondaryColor3fv := dglGetProcAddress('glSecondaryColor3fv'); + glSecondaryColor3i := dglGetProcAddress('glSecondaryColor3i'); + glSecondaryColor3iv := dglGetProcAddress('glSecondaryColor3iv'); + glSecondaryColor3s := dglGetProcAddress('glSecondaryColor3s'); + glSecondaryColor3sv := dglGetProcAddress('glSecondaryColor3sv'); + glSecondaryColor3ub := dglGetProcAddress('glSecondaryColor3ub'); + glSecondaryColor3ubv := dglGetProcAddress('glSecondaryColor3ubv'); + glSecondaryColor3ui := dglGetProcAddress('glSecondaryColor3ui'); + glSecondaryColor3uiv := dglGetProcAddress('glSecondaryColor3uiv'); + glSecondaryColor3us := dglGetProcAddress('glSecondaryColor3us'); + glSecondaryColor3usv := dglGetProcAddress('glSecondaryColor3usv'); + glSecondaryColorPointer := dglGetProcAddress('glSecondaryColorPointer'); + glWindowPos2d := dglGetProcAddress('glWindowPos2d'); + glWindowPos2dv := dglGetProcAddress('glWindowPos2dv'); + glWindowPos2f := dglGetProcAddress('glWindowPos2f'); + glWindowPos2fv := dglGetProcAddress('glWindowPos2fv'); + glWindowPos2i := dglGetProcAddress('glWindowPos2i'); + glWindowPos2iv := dglGetProcAddress('glWindowPos2iv'); + glWindowPos2s := dglGetProcAddress('glWindowPos2s'); + glWindowPos2sv := dglGetProcAddress('glWindowPos2sv'); + glWindowPos3d := dglGetProcAddress('glWindowPos3d'); + glWindowPos3dv := dglGetProcAddress('glWindowPos3dv'); + glWindowPos3f := dglGetProcAddress('glWindowPos3f'); + glWindowPos3fv := dglGetProcAddress('glWindowPos3fv'); + glWindowPos3i := dglGetProcAddress('glWindowPos3i'); + glWindowPos3iv := dglGetProcAddress('glWindowPos3iv'); + glWindowPos3s := dglGetProcAddress('glWindowPos3s'); + glWindowPos3sv := dglGetProcAddress('glWindowPos3sv'); +{$endif} + + // GL_VERSION_1_5 + glGenQueries := dglGetProcAddress('glGenQueries'); + glDeleteQueries := dglGetProcAddress('glDeleteQueries'); + glIsQuery := dglGetProcAddress('glIsQuery'); + glBeginQuery := dglGetProcAddress('glBeginQuery'); + glEndQuery := dglGetProcAddress('glEndQuery'); + glGetQueryiv := dglGetProcAddress('glGetQueryiv'); + glGetQueryObjectiv := dglGetProcAddress('glGetQueryObjectiv'); + glGetQueryObjectuiv := dglGetProcAddress('glGetQueryObjectuiv'); + glBindBuffer := dglGetProcAddress('glBindBuffer'); + glDeleteBuffers := dglGetProcAddress('glDeleteBuffers'); + glGenBuffers := dglGetProcAddress('glGenBuffers'); + glIsBuffer := dglGetProcAddress('glIsBuffer'); + glBufferData := dglGetProcAddress('glBufferData'); + glBufferSubData := dglGetProcAddress('glBufferSubData'); + glGetBufferSubData := dglGetProcAddress('glGetBufferSubData'); + glMapBuffer := dglGetProcAddress('glMapBuffer'); + glUnmapBuffer := dglGetProcAddress('glUnmapBuffer'); + glGetBufferParameteriv := dglGetProcAddress('glGetBufferParameteriv'); + glGetBufferPointerv := dglGetProcAddress('glGetBufferPointerv'); + + // GL_VERSION_2_0 + glBlendEquationSeparate := dglGetProcAddress('glBlendEquationSeparate'); + glDrawBuffers := dglGetProcAddress('glDrawBuffers'); + glStencilOpSeparate := dglGetProcAddress('glStencilOpSeparate'); + glStencilFuncSeparate := dglGetProcAddress('glStencilFuncSeparate'); + glStencilMaskSeparate := dglGetProcAddress('glStencilMaskSeparate'); + glAttachShader := dglGetProcAddress('glAttachShader'); + glBindAttribLocation := dglGetProcAddress('glBindAttribLocation'); + glCompileShader := dglGetProcAddress('glCompileShader'); + glCreateProgram := dglGetProcAddress('glCreateProgram'); + glCreateShader := dglGetProcAddress('glCreateShader'); + glDeleteProgram := dglGetProcAddress('glDeleteProgram'); + glDeleteShader := dglGetProcAddress('glDeleteShader'); + glDetachShader := dglGetProcAddress('glDetachShader'); + glDisableVertexAttribArray := dglGetProcAddress('glDisableVertexAttribArray'); + glEnableVertexAttribArray := dglGetProcAddress('glEnableVertexAttribArray'); + glGetActiveAttrib := dglGetProcAddress('glGetActiveAttrib'); + glGetActiveUniform := dglGetProcAddress('glGetActiveUniform'); + glGetAttachedShaders := dglGetProcAddress('glGetAttachedShaders'); + glGetAttribLocation := dglGetProcAddress('glGetAttribLocation'); + glGetProgramiv := dglGetProcAddress('glGetProgramiv'); + glGetProgramInfoLog := dglGetProcAddress('glGetProgramInfoLog'); + glGetShaderiv := dglGetProcAddress('glGetShaderiv'); + glGetShaderInfoLog := dglGetProcAddress('glGetShaderInfoLog'); + glGetShaderSource := dglGetProcAddress('glGetShaderSource'); + glGetUniformLocation := dglGetProcAddress('glGetUniformLocation'); + glGetUniformfv := dglGetProcAddress('glGetUniformfv'); + glGetUniformiv := dglGetProcAddress('glGetUniformiv'); + glGetVertexAttribfv := dglGetProcAddress('glGetVertexAttribfv'); + glGetVertexAttribiv := dglGetProcAddress('glGetVertexAttribiv'); + glGetVertexAttribPointerv := dglGetProcAddress('glGetVertexAttribPointerv'); + glIsProgram := dglGetProcAddress('glIsProgram'); + glIsShader := dglGetProcAddress('glIsShader'); + glLinkProgram := dglGetProcAddress('glLinkProgram'); + glShaderSource := dglGetProcAddress('glShaderSource'); + glUseProgram := dglGetProcAddress('glUseProgram'); + glUniform1f := dglGetProcAddress('glUniform1f'); + glUniform2f := dglGetProcAddress('glUniform2f'); + glUniform3f := dglGetProcAddress('glUniform3f'); + glUniform4f := dglGetProcAddress('glUniform4f'); + glUniform1i := dglGetProcAddress('glUniform1i'); + glUniform2i := dglGetProcAddress('glUniform2i'); + glUniform3i := dglGetProcAddress('glUniform3i'); + glUniform4i := dglGetProcAddress('glUniform4i'); + glUniform1fv := dglGetProcAddress('glUniform1fv'); + glUniform2fv := dglGetProcAddress('glUniform2fv'); + glUniform3fv := dglGetProcAddress('glUniform3fv'); + glUniform4fv := dglGetProcAddress('glUniform4fv'); + glUniform1iv := dglGetProcAddress('glUniform1iv'); + glUniform2iv := dglGetProcAddress('glUniform2iv'); + glUniform3iv := dglGetProcAddress('glUniform3iv'); + glUniform4iv := dglGetProcAddress('glUniform4iv'); + glUniformMatrix2fv := dglGetProcAddress('glUniformMatrix2fv'); + glUniformMatrix3fv := dglGetProcAddress('glUniformMatrix3fv'); + glUniformMatrix4fv := dglGetProcAddress('glUniformMatrix4fv'); + glValidateProgram := dglGetProcAddress('glValidateProgram'); + glVertexAttrib1d := dglGetProcAddress('glVertexAttrib1d'); + glVertexAttrib1dv := dglGetProcAddress('glVertexAttrib1dv'); + glVertexAttrib1f := dglGetProcAddress('glVertexAttrib1f'); + glVertexAttrib1fv := dglGetProcAddress('glVertexAttrib1fv'); + glVertexAttrib1s := dglGetProcAddress('glVertexAttrib1s'); + glVertexAttrib1sv := dglGetProcAddress('glVertexAttrib1sv'); + glVertexAttrib2d := dglGetProcAddress('glVertexAttrib2d'); + glVertexAttrib2dv := dglGetProcAddress('glVertexAttrib2dv'); + glVertexAttrib2f := dglGetProcAddress('glVertexAttrib2f'); + glVertexAttrib2fv := dglGetProcAddress('glVertexAttrib2fv'); + glVertexAttrib2s := dglGetProcAddress('glVertexAttrib2s'); + glVertexAttrib2sv := dglGetProcAddress('glVertexAttrib2sv'); + glVertexAttrib3d := dglGetProcAddress('glVertexAttrib3d'); + glVertexAttrib3dv := dglGetProcAddress('glVertexAttrib3dv'); + glVertexAttrib3f := dglGetProcAddress('glVertexAttrib3f'); + glVertexAttrib3fv := dglGetProcAddress('glVertexAttrib3fv'); + glVertexAttrib3s := dglGetProcAddress('glVertexAttrib3s'); + glVertexAttrib3sv := dglGetProcAddress('glVertexAttrib3sv'); + glVertexAttrib4Nbv := dglGetProcAddress('glVertexAttrib4Nbv'); + glVertexAttrib4Niv := dglGetProcAddress('glVertexAttrib4Niv'); + glVertexAttrib4Nsv := dglGetProcAddress('glVertexAttrib4Nsv'); + glVertexAttrib4Nub := dglGetProcAddress('glVertexAttrib4Nub'); + glVertexAttrib4Nubv := dglGetProcAddress('glVertexAttrib4Nubv'); + glVertexAttrib4Nuiv := dglGetProcAddress('glVertexAttrib4Nuiv'); + glVertexAttrib4Nusv := dglGetProcAddress('glVertexAttrib4Nusv'); + glVertexAttrib4bv := dglGetProcAddress('glVertexAttrib4bv'); + glVertexAttrib4d := dglGetProcAddress('glVertexAttrib4d'); + glVertexAttrib4dv := dglGetProcAddress('glVertexAttrib4dv'); + glVertexAttrib4f := dglGetProcAddress('glVertexAttrib4f'); + glVertexAttrib4fv := dglGetProcAddress('glVertexAttrib4fv'); + glVertexAttrib4iv := dglGetProcAddress('glVertexAttrib4iv'); + glVertexAttrib4s := dglGetProcAddress('glVertexAttrib4s'); + glVertexAttrib4sv := dglGetProcAddress('glVertexAttrib4sv'); + glVertexAttrib4ubv := dglGetProcAddress('glVertexAttrib4ubv'); + glVertexAttrib4uiv := dglGetProcAddress('glVertexAttrib4uiv'); + glVertexAttrib4usv := dglGetProcAddress('glVertexAttrib4usv'); + glVertexAttribPointer := dglGetProcAddress('glVertexAttribPointer'); + + // GL_VERSION_2_1 + glUniformMatrix2x3fv := dglGetProcAddress('glUniformMatrix2x3fv'); + glUniformMatrix3x2fv := dglGetProcAddress('glUniformMatrix3x2fv'); + glUniformMatrix2x4fv := dglGetProcAddress('glUniformMatrix2x4fv'); + glUniformMatrix4x2fv := dglGetProcAddress('glUniformMatrix4x2fv'); + glUniformMatrix3x4fv := dglGetProcAddress('glUniformMatrix3x4fv'); + glUniformMatrix4x3fv := dglGetProcAddress('glUniformMatrix4x3fv'); + + // GL_VERSION_3_0 + { OpenGL 3.0 also reuses entry points from these extensions: } + Read_GL_ARB_framebuffer_object; + Read_GL_ARB_map_buffer_range; + Read_GL_ARB_vertex_array_object; + + glColorMaski := dglGetProcAddress('glColorMaski'); + glGetBooleani_v := dglGetProcAddress('glGetBooleani_v'); + glGetIntegeri_v := dglGetProcAddress('glGetIntegeri_v'); + glEnablei := dglGetProcAddress('glEnablei'); + glDisablei := dglGetProcAddress('glDisablei'); + glIsEnabledi := dglGetProcAddress('glIsEnabledi'); + glBeginTransformFeedback := dglGetProcAddress('glBeginTransformFeedback'); + glEndTransformFeedback := dglGetProcAddress('glEndTransformFeedback'); + glBindBufferRange := dglGetProcAddress('glBindBufferRange'); + glBindBufferBase := dglGetProcAddress('glBindBufferBase'); + glTransformFeedbackVaryings := dglGetProcAddress('glTransformFeedbackVaryings'); + glGetTransformFeedbackVarying := dglGetProcAddress('glGetTransformFeedbackVarying'); + glClampColor := dglGetProcAddress('glClampColor'); + glBeginConditionalRender := dglGetProcAddress('glBeginConditionalRender'); + glEndConditionalRender := dglGetProcAddress('glEndConditionalRender'); + glVertexAttribI1i := dglGetProcAddress('glVertexAttribI1i'); + glVertexAttribI2i := dglGetProcAddress('glVertexAttribI2i'); + glVertexAttribI3i := dglGetProcAddress('glVertexAttribI3i'); + glVertexAttribI4i := dglGetProcAddress('glVertexAttribI4i'); + glVertexAttribI1ui := dglGetProcAddress('glVertexAttribI1ui'); + glVertexAttribI2ui := dglGetProcAddress('glVertexAttribI2ui'); + glVertexAttribI3ui := dglGetProcAddress('glVertexAttribI3ui'); + glVertexAttribI4ui := dglGetProcAddress('glVertexAttribI4ui'); + glVertexAttribI1iv := dglGetProcAddress('glVertexAttribI1iv'); + glVertexAttribI2iv := dglGetProcAddress('glVertexAttribI2iv'); + glVertexAttribI3iv := dglGetProcAddress('glVertexAttribI3iv'); + glVertexAttribI4iv := dglGetProcAddress('glVertexAttribI4iv'); + glVertexAttribI1uiv := dglGetProcAddress('glVertexAttribI1uiv'); + glVertexAttribI2uiv := dglGetProcAddress('glVertexAttribI2uiv'); + glVertexAttribI3uiv := dglGetProcAddress('glVertexAttribI3uiv'); + glVertexAttribI4uiv := dglGetProcAddress('glVertexAttribI4uiv'); + glVertexAttribI4bv := dglGetProcAddress('glVertexAttribI4bv'); + glVertexAttribI4sv := dglGetProcAddress('glVertexAttribI4sv'); + glVertexAttribI4ubv := dglGetProcAddress('glVertexAttribI4ubv'); + glVertexAttribI4usv := dglGetProcAddress('glVertexAttribI4usv'); + glVertexAttribIPointer := dglGetProcAddress('glVertexAttribIPointer'); + glGetVertexAttribIiv := dglGetProcAddress('glGetVertexAttribIiv'); + glGetVertexAttribIuiv := dglGetProcAddress('glGetVertexAttribIuiv'); + glGetUniformuiv := dglGetProcAddress('glGetUniformuiv'); + glBindFragDataLocation := dglGetProcAddress('glBindFragDataLocation'); + glGetFragDataLocation := dglGetProcAddress('glGetFragDataLocation'); + glUniform1ui := dglGetProcAddress('glUniform1ui'); + glUniform2ui := dglGetProcAddress('glUniform2ui'); + glUniform3ui := dglGetProcAddress('glUniform3ui'); + glUniform4ui := dglGetProcAddress('glUniform4ui'); + glUniform1uiv := dglGetProcAddress('glUniform1uiv'); + glUniform2uiv := dglGetProcAddress('glUniform2uiv'); + glUniform3uiv := dglGetProcAddress('glUniform3uiv'); + glUniform4uiv := dglGetProcAddress('glUniform4uiv'); + glTexParameterIiv := dglGetProcAddress('glTexParameterIiv'); + glTexParameterIuiv := dglGetProcAddress('glTexParameterIuiv'); + glGetTexParameterIiv := dglGetProcAddress('glGetTexParameterIiv'); + glGetTexParameterIuiv := dglGetProcAddress('glGetTexParameterIuiv'); + glClearBufferiv := dglGetProcAddress('glClearBufferiv'); + glClearBufferuiv := dglGetProcAddress('glClearBufferuiv'); + glClearBufferfv := dglGetProcAddress('glClearBufferfv'); + glClearBufferfi := dglGetProcAddress('glClearBufferfi'); + glGetStringi := dglGetProcAddress('glGetStringi'); + + // GL_VERSION_2_1 + glEnableVertexArrayEXT := dglGetProcAddress('glEnableVertexArrayEXT'); + glEnableVertexArrayAttribEXT := dglGetProcAddress('glEnableVertexArrayAttribEXT'); + glVertexArrayVertexAttribOffsetEXT := dglGetProcAddress('glVertexArrayVertexAttribOffsetEXT'); + + // GL_VERSION_3_1 + { OpenGL 3.1 also reuses entry points from these extensions: } + Read_GL_ARB_copy_buffer; + Read_GL_ARB_uniform_buffer_object; + + glDrawArraysInstanced := dglGetProcAddress('glDrawArraysInstanced'); + glDrawElementsInstanced := dglGetProcAddress('glDrawElementsInstanced'); + glTexBuffer := dglGetProcAddress('glTexBuffer'); + glPrimitiveRestartIndex := dglGetProcAddress('glPrimitiveRestartIndex'); + + // GL_VERSION_3_2 + { OpenGL 3.2 also reuses entry points from these extensions: } + Read_GL_ARB_draw_elements_base_vertex; + Read_GL_ARB_provoking_vertex; + Read_GL_ARB_sync; + Read_GL_ARB_texture_multisample; + + glGetInteger64i_v := dglGetProcAddress('glGetInteger64i_v'); + glGetBufferParameteri64v := dglGetProcAddress('glGetBufferParameteri64v'); + glFramebufferTexture := dglGetProcAddress('glFramebufferTexture'); +// glFramebufferTextureFace := dglGetProcAddress('glFramebufferTextureFace'); + + // GL_VERSION_3_3 + { OpenGL 3.3 also reuses entry points from these extensions: } + Read_GL_ARB_blend_func_extended; + Read_GL_ARB_sampler_objects; + { ARB_explicit_attrib_location, but it has none } + { ARB_occlusion_query2 (no entry points) } + { ARB_shader_bit_encoding (no entry points) } + { ARB_texture_rgb10_a2ui (no entry points) } + { ARB_texture_swizzle (no entry points) } + Read_GL_ARB_timer_query; + Read_GL_ARB_vertex_type_2_10_10_10_rev; + + glVertexAttribDivisor := dglGetProcAddress('glVertexAttribDivisor'); + + // GL_VERSION_4_0 + { OpenGL 4.0 also reuses entry points from these extensions: } + { ARB_texture_query_lod (no entry points) } + Read_GL_ARB_draw_indirect; + { ARB_gpu_shader5 (no entry points) } + Read_GL_ARB_gpu_shader_fp64; + Read_GL_ARB_shader_subroutine; + Read_GL_ARB_tessellation_shader; + { ARB_texture_buffer_object_rgb32 (no entry points) } + { ARB_texture_cube_map_array (no entry points) } + { ARB_texture_gather (no entry points) } + Read_GL_ARB_transform_feedback2; + Read_GL_ARB_transform_feedback3; + + glMinSampleShading := dglGetProcAddress('glMinSampleShading'); + glBlendEquationi := dglGetProcAddress('glBlendEquationi'); + glBlendEquationSeparatei := dglGetProcAddress('glBlendEquationSeparatei'); + glBlendFunci := dglGetProcAddress('glBlendFunci'); + glBlendFuncSeparatei := dglGetProcAddress('glBlendFuncSeparatei'); + + // GL_VERSION_4_1 + { OpenGL 4.1 also reuses entry points from these extensions: } + Read_GL_ARB_ES2_compatibility; + Read_GL_ARB_get_program_binary; + Read_GL_ARB_separate_shader_objects; + { ARB_shader_precision (no entry points) } + Read_GL_ARB_vertex_attrib_64bit; + Read_GL_ARB_viewport_array; + + // GL_VERSION_4_2 + { OpenGL 4.2 reuses entry points from these extensions: } + Read_GL_ARB_base_instance; + //Read_GL_ARB_shading_language_420pack (no entry points) + Read_GL_ARB_transform_feedback_instanced; + //Read_GL_ARB_compressed_texture_pixel_storage (no entry points) + //Read_GL_ARB_conservative_depth; + Read_GL_ARB_internalformat_query; + //Read_GL_ARB_map_buffer_alignment; + Read_GL_ARB_shader_atomic_counters; + Read_GL_ARB_shader_image_load_store; + //Read_GL_ARB_shading_language_packing; + Read_GL_ARB_texture_storage; + + // GL_VERSION_4_3 + // OpenGL 4.3 reuses entry points from these extensions: + // Read_GL_ARB_arrays_of_arrays (none, GLSL only) (no entry points) + // Read_GL_ARB_fragment_layer_viewport (none, GLSL only) (no entry points) + // Read_GL_ARB_shader_image_size (none, GLSL only) (no entry points) + // Read_GL_ARB_ES3_compatibility (no entry points) + Read_GL_ARB_clear_buffer_object; + Read_GL_ARB_compute_shader; + Read_GL_ARB_copy_image; + Read_GL_KHR_debug; + // Read_GL_ARB_explicit_uniform_location (no entry points) + Read_GL_ARB_framebuffer_no_attachments; + Read_GL_ARB_internalformat_query2; + Read_GL_ARB_invalidate_subdata; + Read_GL_ARB_multi_draw_indirect; + Read_GL_ARB_program_interface_query; + // Read_GL_ARB_robust_buffer_access_behavior (none) (no entry points) + Read_GL_ARB_shader_storage_buffer_object; + // Read_GL_ARB_stencil_texturing (no entry points) + Read_GL_ARB_texture_buffer_range; + // Read_GL_ARB_texture_query_levels (none) (no entry points) + Read_GL_ARB_texture_storage_multisample; + Read_GL_ARB_texture_view; + Read_GL_ARB_vertex_attrib_binding; + + // GL_VERSION_4_4 + // Note (Due to Khronos' change in header conventions, no more single read_ functions) + Read_GL_4_4; +end; + +procedure Read_GL_3DFX_tbuffer; +begin + glTbufferMask3DFX := dglGetProcAddress('glTbufferMask3DFX'); +end; + +procedure Read_GL_APPLE_element_array; +begin + glElementPointerAPPLE := dglGetProcAddress('glElementPointerAPPLE'); + glDrawElementArrayAPPLE := dglGetProcAddress('glDrawElementArrayAPPLE'); + glDrawRangeElementArrayAPPLE := dglGetProcAddress('glDrawRangeElementArrayAPPLE'); + glMultiDrawElementArrayAPPLE := dglGetProcAddress('glMultiDrawElementArrayAPPLE'); + glMultiDrawRangeElementArrayAPPLE := dglGetProcAddress('glMultiDrawRangeElementArrayAPPLE'); +end; + +procedure Read_GL_APPLE_fence; +begin + glGenFencesAPPLE := dglGetProcAddress('glGenFencesAPPLE'); + glDeleteFencesAPPLE := dglGetProcAddress('glDeleteFencesAPPLE'); + glSetFenceAPPLE := dglGetProcAddress('glSetFenceAPPLE'); + glIsFenceAPPLE := dglGetProcAddress('glIsFenceAPPLE'); + glTestFenceAPPLE := dglGetProcAddress('glTestFenceAPPLE'); + glFinishFenceAPPLE := dglGetProcAddress('glFinishFenceAPPLE'); + glTestObjectAPPLE := dglGetProcAddress('glTestObjectAPPLE'); + glFinishObjectAPPLE := dglGetProcAddress('glFinishObjectAPPLE'); +end; + +procedure Read_GL_APPLE_vertex_array_object; +begin + glBindVertexArrayAPPLE := dglGetProcAddress('glBindVertexArrayAPPLE'); + glDeleteVertexArraysAPPLE := dglGetProcAddress('glDeleteVertexArraysAPPLE'); + glGenVertexArraysAPPLE := dglGetProcAddress('glGenVertexArraysAPPLE'); + glIsVertexArrayAPPLE := dglGetProcAddress('glIsVertexArrayAPPLE'); +end; + +procedure Read_GL_APPLE_vertex_array_range; +begin + glVertexArrayRangeAPPLE := dglGetProcAddress('glVertexArrayRangeAPPLE'); + glFlushVertexArrayRangeAPPLE := dglGetProcAddress('glFlushVertexArrayRangeAPPLE'); + glVertexArrayParameteriAPPLE := dglGetProcAddress('glVertexArrayParameteriAPPLE'); +end; + +procedure Read_GL_APPLE_texture_range; +begin + glTextureRangeAPPLE := dglGetProcAddress('glTextureRangeAPPLE'); + glGetTexParameterPointervAPPLE := dglGetProcAddress('glGetTexParameterPointervAPPLE'); +end; + +procedure Read_GL_APPLE_vertex_program_evaluators; +begin + glEnableVertexAttribAPPLE := dglGetProcAddress('glEnableVertexAttribAPPLE'); + glDisableVertexAttribAPPLE := dglGetProcAddress('glDisableVertexAttribAPPLE'); + glIsVertexAttribEnabledAPPLE := dglGetProcAddress('glIsVertexAttribEnabledAPPLE'); + glMapVertexAttrib1dAPPLE := dglGetProcAddress('glMapVertexAttrib1dAPPLE'); + glMapVertexAttrib1fAPPLE := dglGetProcAddress('glMapVertexAttrib1fAPPLE'); + glMapVertexAttrib2dAPPLE := dglGetProcAddress('glMapVertexAttrib2dAPPLE'); + glMapVertexAttrib2fAPPLE := dglGetProcAddress('glMapVertexAttrib2fAPPLE'); +end; + +procedure Read_GL_APPLE_object_purgeable; +begin + glObjectPurgeableAPPLE := dglGetProcAddress('glObjectPurgeableAPPLE'); + glObjectUnpurgeableAPPLE := dglGetProcAddress('glObjectUnpurgeableAPPLE'); + glGetObjectParameterivAPPLE := dglGetProcAddress('glGetObjectParameterivAPPLE'); +end; + +procedure Read_GL_ARB_matrix_palette; +begin + glCurrentPaletteMatrixARB := dglGetProcAddress('glCurrentPaletteMatrixARB'); + glMatrixIndexubvARB := dglGetProcAddress('glMatrixIndexubvARB'); + glMatrixIndexusvARB := dglGetProcAddress('glMatrixIndexusvARB'); + glMatrixIndexuivARB := dglGetProcAddress('glMatrixIndexuivARB'); + glMatrixIndexPointerARB := dglGetProcAddress('glMatrixIndexPointerARB'); +end; + +procedure Read_GL_ARB_multisample; +begin + glSampleCoverageARB := dglGetProcAddress('glSampleCoverageARB'); +end; + +procedure Read_GL_ARB_multitexture; +begin + glActiveTextureARB := dglGetProcAddress('glActiveTextureARB'); + glClientActiveTextureARB := dglGetProcAddress('glClientActiveTextureARB'); + glMultiTexCoord1dARB := dglGetProcAddress('glMultiTexCoord1dARB'); + glMultiTexCoord1dvARB := dglGetProcAddress('glMultiTexCoord1dvARB'); + glMultiTexCoord1fARB := dglGetProcAddress('glMultiTexCoord1fARB'); + glMultiTexCoord1fvARB := dglGetProcAddress('glMultiTexCoord1fvARB'); + glMultiTexCoord1iARB := dglGetProcAddress('glMultiTexCoord1iARB'); + glMultiTexCoord1ivARB := dglGetProcAddress('glMultiTexCoord1ivARB'); + glMultiTexCoord1sARB := dglGetProcAddress('glMultiTexCoord1sARB'); + glMultiTexCoord1svARB := dglGetProcAddress('glMultiTexCoord1svARB'); + glMultiTexCoord2dARB := dglGetProcAddress('glMultiTexCoord2dARB'); + glMultiTexCoord2dvARB := dglGetProcAddress('glMultiTexCoord2dvARB'); + glMultiTexCoord2fARB := dglGetProcAddress('glMultiTexCoord2fARB'); + glMultiTexCoord2fvARB := dglGetProcAddress('glMultiTexCoord2fvARB'); + glMultiTexCoord2iARB := dglGetProcAddress('glMultiTexCoord2iARB'); + glMultiTexCoord2ivARB := dglGetProcAddress('glMultiTexCoord2ivARB'); + glMultiTexCoord2sARB := dglGetProcAddress('glMultiTexCoord2sARB'); + glMultiTexCoord2svARB := dglGetProcAddress('glMultiTexCoord2svARB'); + glMultiTexCoord3dARB := dglGetProcAddress('glMultiTexCoord3dARB'); + glMultiTexCoord3dvARB := dglGetProcAddress('glMultiTexCoord3dvARB'); + glMultiTexCoord3fARB := dglGetProcAddress('glMultiTexCoord3fARB'); + glMultiTexCoord3fvARB := dglGetProcAddress('glMultiTexCoord3fvARB'); + glMultiTexCoord3iARB := dglGetProcAddress('glMultiTexCoord3iARB'); + glMultiTexCoord3ivARB := dglGetProcAddress('glMultiTexCoord3ivARB'); + glMultiTexCoord3sARB := dglGetProcAddress('glMultiTexCoord3sARB'); + glMultiTexCoord3svARB := dglGetProcAddress('glMultiTexCoord3svARB'); + glMultiTexCoord4dARB := dglGetProcAddress('glMultiTexCoord4dARB'); + glMultiTexCoord4dvARB := dglGetProcAddress('glMultiTexCoord4dvARB'); + glMultiTexCoord4fARB := dglGetProcAddress('glMultiTexCoord4fARB'); + glMultiTexCoord4fvARB := dglGetProcAddress('glMultiTexCoord4fvARB'); + glMultiTexCoord4iARB := dglGetProcAddress('glMultiTexCoord4iARB'); + glMultiTexCoord4ivARB := dglGetProcAddress('glMultiTexCoord4ivARB'); + glMultiTexCoord4sARB := dglGetProcAddress('glMultiTexCoord4sARB'); + glMultiTexCoord4svARB := dglGetProcAddress('glMultiTexCoord4svARB'); +end; + +procedure Read_GL_ARB_point_parameters; +begin + glPointParameterfARB := dglGetProcAddress('glPointParameterfARB'); + glPointParameterfvARB := dglGetProcAddress('glPointParameterfvARB'); +end; + +procedure Read_GL_ARB_texture_compression; +begin + glCompressedTexImage3DARB := dglGetProcAddress('glCompressedTexImage3DARB'); + glCompressedTexImage2DARB := dglGetProcAddress('glCompressedTexImage2DARB'); + glCompressedTexImage1DARB := dglGetProcAddress('glCompressedTexImage1DARB'); + glCompressedTexSubImage3DARB := dglGetProcAddress('glCompressedTexSubImage3DARB'); + glCompressedTexSubImage2DARB := dglGetProcAddress('glCompressedTexSubImage2DARB'); + glCompressedTexSubImage1DARB := dglGetProcAddress('glCompressedTexSubImage1DARB'); + glGetCompressedTexImageARB := dglGetProcAddress('glGetCompressedTexImageARB'); +end; + +procedure Read_GL_ARB_transpose_matrix; +begin + glLoadTransposeMatrixfARB := dglGetProcAddress('glLoadTransposeMatrixfARB'); + glLoadTransposeMatrixdARB := dglGetProcAddress('glLoadTransposeMatrixdARB'); + glMultTransposeMatrixfARB := dglGetProcAddress('glMultTransposeMatrixfARB'); + glMultTransposeMatrixdARB := dglGetProcAddress('glMultTransposeMatrixdARB'); +end; + +procedure Read_GL_ARB_vertex_blend; +begin + glWeightbvARB := dglGetProcAddress('glWeightbvARB'); + glWeightsvARB := dglGetProcAddress('glWeightsvARB'); + glWeightivARB := dglGetProcAddress('glWeightivARB'); + glWeightfvARB := dglGetProcAddress('glWeightfvARB'); + glWeightdvARB := dglGetProcAddress('glWeightdvARB'); + glWeightubvARB := dglGetProcAddress('glWeightubvARB'); + glWeightusvARB := dglGetProcAddress('glWeightusvARB'); + glWeightuivARB := dglGetProcAddress('glWeightuivARB'); + glWeightPointerARB := dglGetProcAddress('glWeightPointerARB'); + glVertexBlendARB := dglGetProcAddress('glVertexBlendARB'); +end; + +procedure Read_GL_ARB_vertex_buffer_object; +begin + glBindBufferARB := dglGetProcAddress('glBindBufferARB'); + glDeleteBuffersARB := dglGetProcAddress('glDeleteBuffersARB'); + glGenBuffersARB := dglGetProcAddress('glGenBuffersARB'); + glIsBufferARB := dglGetProcAddress('glIsBufferARB'); + glBufferDataARB := dglGetProcAddress('glBufferDataARB'); + glBufferSubDataARB := dglGetProcAddress('glBufferSubDataARB'); + glGetBufferSubDataARB := dglGetProcAddress('glGetBufferSubDataARB'); + glMapBufferARB := dglGetProcAddress('glMapBufferARB'); + glUnmapBufferARB := dglGetProcAddress('glUnmapBufferARB'); + glGetBufferParameterivARB := dglGetProcAddress('glGetBufferParameterivARB'); + glGetBufferPointervARB := dglGetProcAddress('glGetBufferPointervARB'); +end; + +procedure Read_GL_ARB_vertex_program; +begin + glVertexAttrib1dARB := dglGetProcAddress('glVertexAttrib1dARB'); + glVertexAttrib1dvARB := dglGetProcAddress('glVertexAttrib1dvARB'); + glVertexAttrib1fARB := dglGetProcAddress('glVertexAttrib1fARB'); + glVertexAttrib1fvARB := dglGetProcAddress('glVertexAttrib1fvARB'); + glVertexAttrib1sARB := dglGetProcAddress('glVertexAttrib1sARB'); + glVertexAttrib1svARB := dglGetProcAddress('glVertexAttrib1svARB'); + glVertexAttrib2dARB := dglGetProcAddress('glVertexAttrib2dARB'); + glVertexAttrib2dvARB := dglGetProcAddress('glVertexAttrib2dvARB'); + glVertexAttrib2fARB := dglGetProcAddress('glVertexAttrib2fARB'); + glVertexAttrib2fvARB := dglGetProcAddress('glVertexAttrib2fvARB'); + glVertexAttrib2sARB := dglGetProcAddress('glVertexAttrib2sARB'); + glVertexAttrib2svARB := dglGetProcAddress('glVertexAttrib2svARB'); + glVertexAttrib3dARB := dglGetProcAddress('glVertexAttrib3dARB'); + glVertexAttrib3dvARB := dglGetProcAddress('glVertexAttrib3dvARB'); + glVertexAttrib3fARB := dglGetProcAddress('glVertexAttrib3fARB'); + glVertexAttrib3fvARB := dglGetProcAddress('glVertexAttrib3fvARB'); + glVertexAttrib3sARB := dglGetProcAddress('glVertexAttrib3sARB'); + glVertexAttrib3svARB := dglGetProcAddress('glVertexAttrib3svARB'); + glVertexAttrib4NbvARB := dglGetProcAddress('glVertexAttrib4NbvARB'); + glVertexAttrib4NivARB := dglGetProcAddress('glVertexAttrib4NivARB'); + glVertexAttrib4NsvARB := dglGetProcAddress('glVertexAttrib4NsvARB'); + glVertexAttrib4NubARB := dglGetProcAddress('glVertexAttrib4NubARB'); + glVertexAttrib4NubvARB := dglGetProcAddress('glVertexAttrib4NubvARB'); + glVertexAttrib4NuivARB := dglGetProcAddress('glVertexAttrib4NuivARB'); + glVertexAttrib4NusvARB := dglGetProcAddress('glVertexAttrib4NusvARB'); + glVertexAttrib4bvARB := dglGetProcAddress('glVertexAttrib4bvARB'); + glVertexAttrib4dARB := dglGetProcAddress('glVertexAttrib4dARB'); + glVertexAttrib4dvARB := dglGetProcAddress('glVertexAttrib4dvARB'); + glVertexAttrib4fARB := dglGetProcAddress('glVertexAttrib4fARB'); + glVertexAttrib4fvARB := dglGetProcAddress('glVertexAttrib4fvARB'); + glVertexAttrib4ivARB := dglGetProcAddress('glVertexAttrib4ivARB'); + glVertexAttrib4sARB := dglGetProcAddress('glVertexAttrib4sARB'); + glVertexAttrib4svARB := dglGetProcAddress('glVertexAttrib4svARB'); + glVertexAttrib4ubvARB := dglGetProcAddress('glVertexAttrib4ubvARB'); + glVertexAttrib4uivARB := dglGetProcAddress('glVertexAttrib4uivARB'); + glVertexAttrib4usvARB := dglGetProcAddress('glVertexAttrib4usvARB'); + glVertexAttribPointerARB := dglGetProcAddress('glVertexAttribPointerARB'); + glEnableVertexAttribArrayARB := dglGetProcAddress('glEnableVertexAttribArrayARB'); + glDisableVertexAttribArrayARB := dglGetProcAddress('glDisableVertexAttribArrayARB'); + glProgramStringARB := dglGetProcAddress('glProgramStringARB'); + glBindProgramARB := dglGetProcAddress('glBindProgramARB'); + glDeleteProgramsARB := dglGetProcAddress('glDeleteProgramsARB'); + glGenProgramsARB := dglGetProcAddress('glGenProgramsARB'); + glProgramEnvParameter4dARB := dglGetProcAddress('glProgramEnvParameter4dARB'); + glProgramEnvParameter4dvARB := dglGetProcAddress('glProgramEnvParameter4dvARB'); + glProgramEnvParameter4fARB := dglGetProcAddress('glProgramEnvParameter4fARB'); + glProgramEnvParameter4fvARB := dglGetProcAddress('glProgramEnvParameter4fvARB'); + glProgramLocalParameter4dARB := dglGetProcAddress('glProgramLocalParameter4dARB'); + glProgramLocalParameter4dvARB := dglGetProcAddress('glProgramLocalParameter4dvARB'); + glProgramLocalParameter4fARB := dglGetProcAddress('glProgramLocalParameter4fARB'); + glProgramLocalParameter4fvARB := dglGetProcAddress('glProgramLocalParameter4fvARB'); + glGetProgramEnvParameterdvARB := dglGetProcAddress('glGetProgramEnvParameterdvARB'); + glGetProgramEnvParameterfvARB := dglGetProcAddress('glGetProgramEnvParameterfvARB'); + glGetProgramLocalParameterdvARB := dglGetProcAddress('glGetProgramLocalParameterdvARB'); + glGetProgramLocalParameterfvARB := dglGetProcAddress('glGetProgramLocalParameterfvARB'); + glGetProgramivARB := dglGetProcAddress('glGetProgramivARB'); + glGetProgramStringARB := dglGetProcAddress('glGetProgramStringARB'); + glGetVertexAttribdvARB := dglGetProcAddress('glGetVertexAttribdvARB'); + glGetVertexAttribfvARB := dglGetProcAddress('glGetVertexAttribfvARB'); + glGetVertexAttribivARB := dglGetProcAddress('glGetVertexAttribivARB'); + glGetVertexAttribPointervARB := dglGetProcAddress('glGetVertexAttribPointervARB'); + glIsProgramARB := dglGetProcAddress('glIsProgramARB'); +end; + +procedure Read_GL_ARB_window_pos; +begin + glWindowPos2dARB := dglGetProcAddress('glWindowPos2dARB'); + glWindowPos2dvARB := dglGetProcAddress('glWindowPos2dvARB'); + glWindowPos2fARB := dglGetProcAddress('glWindowPos2fARB'); + glWindowPos2fvARB := dglGetProcAddress('glWindowPos2fvARB'); + glWindowPos2iARB := dglGetProcAddress('glWindowPos2iARB'); + glWindowPos2ivARB := dglGetProcAddress('glWindowPos2ivARB'); + glWindowPos2sARB := dglGetProcAddress('glWindowPos2sARB'); + glWindowPos2svARB := dglGetProcAddress('glWindowPos2svARB'); + glWindowPos3dARB := dglGetProcAddress('glWindowPos3dARB'); + glWindowPos3dvARB := dglGetProcAddress('glWindowPos3dvARB'); + glWindowPos3fARB := dglGetProcAddress('glWindowPos3fARB'); + glWindowPos3fvARB := dglGetProcAddress('glWindowPos3fvARB'); + glWindowPos3iARB := dglGetProcAddress('glWindowPos3iARB'); + glWindowPos3ivARB := dglGetProcAddress('glWindowPos3ivARB'); + glWindowPos3sARB := dglGetProcAddress('glWindowPos3sARB'); + glWindowPos3svARB := dglGetProcAddress('glWindowPos3svARB'); +end; + +procedure Read_GL_ARB_draw_buffers; +begin + glDrawBuffersARB := dglGetProcAddress('glDrawBuffersARB'); +end; + +procedure Read_GL_ARB_color_buffer_float; +begin + glClampColorARB := dglGetProcAddress('glClampColorARB'); +end; + +procedure Read_GL_ARB_Shader_Objects; +begin + // GL_ARB_Shader_Objects + glCreateShaderObjectARB := dglGetProcAddress('glCreateShaderObjectARB'); + glShaderSourceARB := dglGetProcAddress('glShaderSourceARB'); + glCompileShaderARB := dglGetProcAddress('glCompileShaderARB'); + glDeleteObjectARB := dglGetProcAddress('glDeleteObjectARB'); + glGetHandleARB := dglGetProcAddress('glGetHandleARB'); + glDetachObjectARB := dglGetProcAddress('glDetachObjectARB'); + glCreateProgramObjectARB := dglGetProcAddress('glCreateProgramObjectARB'); + glAttachObjectARB := dglGetProcAddress('glAttachObjectARB'); + glLinkProgramARB := dglGetProcAddress('glLinkProgramARB'); + glUseProgramObjectARB := dglGetProcAddress('glUseProgramObjectARB'); + glValidateProgramARB := dglGetProcAddress('glValidateProgramARB'); + glGetObjectParameterfvARB := dglGetProcAddress('glGetObjectParameterfvARB'); + glGetObjectParameterivARB := dglGetProcAddress('glGetObjectParameterivARB'); + glGetActiveUniformARB := dglGetProcAddress('glGetActiveUniformARB'); + glGetAttachedObjectsARB := dglGetProcAddress('glGetAttachedObjectsARB'); + glGetShaderSourceARB := dglGetProcAddress('glGetShaderSourceARB'); + glGetUniformfvARB := dglGetProcAddress('glGetUniformfvARB'); + glGetUniformivARB := dglGetProcAddress('glGetUniformivARB'); + glGetUniformLocationARB := dglGetProcAddress('glGetUniformLocationARB'); + glGetInfoLogARB := dglGetProcAddress('glGetInfoLogARB'); + glUniform1fARB := dglGetProcAddress('glUniform1fARB'); + glUniform2fARB := dglGetProcAddress('glUniform2fARB'); + glUniform3fARB := dglGetProcAddress('glUniform3fARB'); + glUniform4fARB := dglGetProcAddress('glUniform4fARB'); + glUniform1iARB := dglGetProcAddress('glUniform1iARB'); + glUniform2iARB := dglGetProcAddress('glUniform2iARB'); + glUniform3iARB := dglGetProcAddress('glUniform3iARB'); + glUniform4iARB := dglGetProcAddress('glUniform4iARB'); + glUniform1fvARB := dglGetProcAddress('glUniform1fvARB'); + glUniform2fvARB := dglGetProcAddress('glUniform2fvARB'); + glUniform3fvARB := dglGetProcAddress('glUniform3fvARB'); + glUniform4fvARB := dglGetProcAddress('glUniform4fvARB'); + glUniform1ivARB := dglGetProcAddress('glUniform1ivARB'); + glUniform2ivARB := dglGetProcAddress('glUniform2ivARB'); + glUniform3ivARB := dglGetProcAddress('glUniform3ivARB'); + glUniform4ivARB := dglGetProcAddress('glUniform4ivARB'); + glUniformMatrix2fvARB := dglGetProcAddress('glUniformMatrix2fvARB'); + glUniformMatrix3fvARB := dglGetProcAddress('glUniformMatrix3fvARB'); + glUniformMatrix4fvARB := dglGetProcAddress('glUniformMatrix4fvARB'); + + // GL_ARB_vertex_shader + glGetActiveAttribARB := dglGetProcAddress('glGetActiveAttribARB'); + glGetAttribLocationARB := dglGetProcAddress('glGetAttribLocationARB'); + glBindAttribLocationARB := dglGetProcAddress('glBindAttribLocationARB'); + glGetVertexAttribPointervARB := dglGetProcAddress('glGetVertexAttribPointervARB'); +end; + +procedure Read_GL_ARB_occlusion_query; +begin + glGenQueriesARB := dglGetProcAddress('glGenQueriesARB'); + glDeleteQueriesARB := dglGetProcAddress('glDeleteQueriesARB'); + glIsQueryARB := dglGetProcAddress('glIsQueryARB'); + glBeginQueryARB := dglGetProcAddress('glBeginQueryARB'); + glEndQueryARB := dglGetProcAddress('glEndQueryARB'); + glGetQueryivARB := dglGetProcAddress('glGetQueryivARB'); + glGetQueryObjectivARB := dglGetProcAddress('glGetQueryObjectivARB'); + glGetQueryObjectuivARB := dglGetProcAddress('glGetQueryObjectuivARB'); +end; + +procedure Read_GL_ARB_draw_instanced; +begin + glDrawArraysInstancedARB := dglGetProcAddress('glDrawArraysInstancedARB'); + glDrawElementsInstancedARB := dglGetProcAddress('glDrawElementsInstancedARB'); +end; + +procedure Read_GL_ARB_framebuffer_object; +begin + glIsRenderbuffer := dglGetProcAddress('glIsRenderbuffer'); + glBindRenderbuffer := dglGetProcAddress('glBindRenderbuffer'); + glDeleteRenderbuffers := dglGetProcAddress('glDeleteRenderbuffers'); + glGenRenderbuffers := dglGetProcAddress('glGenRenderbuffers'); + glRenderbufferStorage := dglGetProcAddress('glRenderbufferStorage'); + glGetRenderbufferParameteriv := dglGetProcAddress('glGetRenderbufferParameteriv'); + glIsFramebuffer := dglGetProcAddress('glIsFramebuffer'); + glBindFramebuffer := dglGetProcAddress('glBindFramebuffer'); + glDeleteFramebuffers := dglGetProcAddress('glDeleteFramebuffers'); + glGenFramebuffers := dglGetProcAddress('glGenFramebuffers'); + glCheckFramebufferStatus := dglGetProcAddress('glCheckFramebufferStatus'); + glFramebufferTexture1D := dglGetProcAddress('glFramebufferTexture1D'); + glFramebufferTexture2D := dglGetProcAddress('glFramebufferTexture2D'); + glFramebufferTexture3D := dglGetProcAddress('glFramebufferTexture3D'); + glFramebufferRenderbuffer := dglGetProcAddress('glFramebufferRenderbuffer'); + glGetFramebufferAttachmentParameteriv := dglGetProcAddress('glGetFramebufferAttachmentParameteriv'); + glGenerateMipmap := dglGetProcAddress('glGenerateMipmap'); + glBlitFramebuffer := dglGetProcAddress('glBlitFramebuffer'); + glRenderbufferStorageMultisample := dglGetProcAddress('glRenderbufferStorageMultisample'); + glFramebufferTextureLayer := dglGetProcAddress('glFramebufferTextureLayer'); +end; + +procedure Read_GL_ARB_geometry_shader4; +begin + glProgramParameteriARB := dglGetProcAddress('glProgramParameteriARB'); + glFramebufferTextureARB := dglGetProcAddress('glFramebufferTextureARB'); + glFramebufferTextureLayerARB := dglGetProcAddress('glFramebufferTextureLayerARB'); + glFramebufferTextureFaceARB := dglGetProcAddress('glFramebufferTextureFaceARB'); +end; + +procedure Read_GL_ARB_instanced_arrays; +begin + glVertexAttribDivisorARB := dglGetProcAddress('glVertexAttribDivisorARB'); +end; + +procedure Read_GL_ARB_map_buffer_range; +begin + glMapBufferRange := dglGetProcAddress('glMapBufferRange'); + glFlushMappedBufferRange := dglGetProcAddress('glFlushMappedBufferRange'); +end; + +procedure Read_GL_ARB_texture_buffer_object; +begin + glTexBufferARB := dglGetProcAddress('glTexBufferARB'); +end; + +procedure Read_GL_ARB_vertex_array_object; +begin + glBindVertexArray := dglGetProcAddress('glBindVertexArray'); + glDeleteVertexArrays := dglGetProcAddress('glDeleteVertexArrays'); + glGenVertexArrays := dglGetProcAddress('glGenVertexArrays'); + glIsVertexArray := dglGetProcAddress('glIsVertexArray'); +end; + +procedure Read_GL_ARB_uniform_buffer_object; +begin + glGetUniformIndices := dglGetProcAddress('glGetUniformIndices'); + glGetActiveUniformsiv := dglGetProcAddress('glGetActiveUniformsiv'); + glGetActiveUniformName := dglGetProcAddress('glGetActiveUniformName'); + glGetUniformBlockIndex := dglGetProcAddress('glGetUniformBlockIndex'); + glGetActiveUniformBlockiv := dglGetProcAddress('glGetActiveUniformBlockiv'); + glGetActiveUniformBlockName := dglGetProcAddress('glGetActiveUniformBlockName'); + glUniformBlockBinding := dglGetProcAddress('glUniformBlockBinding'); +end; + +procedure Read_GL_ARB_copy_buffer; +begin + glCopyBufferSubData := dglGetProcAddress('glCopyBufferSubData'); +end; + +procedure Read_GL_ARB_draw_elements_base_vertex; +begin + glDrawElementsBaseVertex := dglGetProcAddress('glDrawElementsBaseVertex'); + glDrawRangeElementsBaseVertex := dglGetProcAddress('glDrawRangeElementsBaseVertex'); + glDrawElementsInstancedBaseVertex := dglGetProcAddress('glDrawElementsInstancedBaseVertex'); + glMultiDrawElementsBaseVertex := dglGetProcAddress('glMultiDrawElementsBaseVertex'); +end; + +procedure Read_GL_ARB_provoking_vertex; +begin + glProvokingVertex := dglGetProcAddress('glProvokingVertex'); +end; + +procedure Read_GL_ARB_sync; +begin + glFenceSync := dglGetProcAddress('glFenceSync'); + glIsSync := dglGetProcAddress('glIsSync'); + glDeleteSync := dglGetProcAddress('glDeleteSync'); + glClientWaitSync := dglGetProcAddress('glClientWaitSync'); + glWaitSync := dglGetProcAddress('glWaitSync'); + glGetInteger64v := dglGetProcAddress('glGetInteger64v'); + glGetSynciv := dglGetProcAddress('glGetSynciv'); +end; + +procedure Read_GL_ARB_texture_multisample; +begin + glTexImage2DMultisample := dglGetProcAddress('glTexImage2DMultisample'); + glTexImage3DMultisample := dglGetProcAddress('glTexImage3DMultisample'); + glGetMultisamplefv := dglGetProcAddress('glGetMultisamplefv'); + glSampleMaski := dglGetProcAddress('glSampleMaski'); +end; + +procedure Read_GL_ARB_draw_buffers_blend; +begin + glBlendEquationiARB := dglGetProcAddress('glBlendEquationiARB'); + glBlendEquationSeparateiARB := dglGetProcAddress('glBlendEquationSeparateiARB'); + glBlendFunciARB := dglGetProcAddress('glBlendFunciARB'); + glBlendFuncSeparateiARB := dglGetProcAddress('glBlendFuncSeparateiARB'); +end; + +procedure Read_GL_ARB_sample_shading; +begin + glMinSampleShadingARB := dglGetProcAddress('glMinSampleShadingARB'); +end; + +procedure Read_GL_ARB_shading_language_include; +begin + glNamedStringARB := dglGetProcAddress('glNamedStringARB'); + glDeleteNamedStringARB := dglGetProcAddress('glDeleteNamedStringARB'); + glCompileShaderIncludeARB := dglGetProcAddress('glCompileShaderIncludeARB'); + glIsNamedStringARB := dglGetProcAddress('glIsNamedStringARB'); + glGetNamedStringARB := dglGetProcAddress('glGetNamedStringARB'); + glGetNamedStringivARB := dglGetProcAddress('glGetNamedStringivARB'); +end; + +procedure Read_GL_ARB_blend_func_extended; +begin + glBindFragDataLocationIndexed := dglGetProcAddress('glBindFragDataLocationIndexed'); + glGetFragDataIndex := dglGetProcAddress('glGetFragDataIndex'); +end; + +procedure Read_GL_ARB_sampler_objects; +begin + glGenSamplers := dglGetProcAddress('glGenSamplers'); + glDeleteSamplers := dglGetProcAddress('glDeleteSamplers'); + glIsSampler := dglGetProcAddress('glIsSampler'); + glBindSampler := dglGetProcAddress('glBindSampler'); + glSamplerParameteri := dglGetProcAddress('glSamplerParameteri'); + glSamplerParameteriv := dglGetProcAddress('glSamplerParameteriv'); + glSamplerParameterf := dglGetProcAddress('glSamplerParameterf'); + glSamplerParameterfv := dglGetProcAddress('glSamplerParameterfv'); + glSamplerParameterIiv := dglGetProcAddress('glSamplerParameterIiv'); + glSamplerParameterIuiv := dglGetProcAddress('glSamplerParameterIuiv'); + glGetSamplerParameteriv := dglGetProcAddress('glGetSamplerParameteriv'); + glGetSamplerParameterIiv := dglGetProcAddress('glGetSamplerParameterIiv'); + glGetSamplerParameterfv := dglGetProcAddress('glGetSamplerParameterfv'); + glGetSamplerParameterIuiv := dglGetProcAddress('glGetSamplerParameterIuiv'); +end; + +procedure Read_GL_ARB_timer_query; +begin + glQueryCounter := dglGetProcAddress('glQueryCounter'); + glGetQueryObjecti64v := dglGetProcAddress('glGetQueryObjecti64v'); + glGetQueryObjectui64v := dglGetProcAddress('glGetQueryObjectui64v'); +end; + +procedure Read_GL_ARB_vertex_type_2_10_10_10_rev; +begin + glVertexP2ui := dglGetProcAddress('glVertexP2ui'); + glVertexP2uiv := dglGetProcAddress('glVertexP2uiv'); + glVertexP3ui := dglGetProcAddress('glVertexP3ui'); + glVertexP3uiv := dglGetProcAddress('glVertexP3uiv'); + glVertexP4ui := dglGetProcAddress('glVertexP4ui'); + glVertexP4uiv := dglGetProcAddress('glVertexP4uiv'); + glTexCoordP1ui := dglGetProcAddress('glTexCoordP1ui'); + glTexCoordP1uiv := dglGetProcAddress('glTexCoordP1uiv'); + glTexCoordP2ui := dglGetProcAddress('glTexCoordP2ui'); + glTexCoordP2uiv := dglGetProcAddress('glTexCoordP2uiv'); + glTexCoordP3ui := dglGetProcAddress('glTexCoordP3ui'); + glTexCoordP3uiv := dglGetProcAddress('glTexCoordP3uiv'); + glTexCoordP4ui := dglGetProcAddress('glTexCoordP4ui'); + glTexCoordP4uiv := dglGetProcAddress('glTexCoordP4uiv'); + glMultiTexCoordP1ui := dglGetProcAddress('glMultiTexCoordP1ui'); + glMultiTexCoordP1uiv := dglGetProcAddress('glMultiTexCoordP1uiv'); + glMultiTexCoordP2ui := dglGetProcAddress('glMultiTexCoordP2ui'); + glMultiTexCoordP2uiv := dglGetProcAddress('glMultiTexCoordP2uiv'); + glMultiTexCoordP3ui := dglGetProcAddress('glMultiTexCoordP3ui'); + glMultiTexCoordP3uiv := dglGetProcAddress('glMultiTexCoordP3uiv'); + glMultiTexCoordP4ui := dglGetProcAddress('glMultiTexCoordP4ui'); + glMultiTexCoordP4uiv := dglGetProcAddress('glMultiTexCoordP4uiv'); + glNormalP3ui := dglGetProcAddress('glNormalP3ui'); + glNormalP3uiv := dglGetProcAddress('glNormalP3uiv'); + glColorP3ui := dglGetProcAddress('glColorP3ui'); + glColorP3uiv := dglGetProcAddress('glColorP3uiv'); + glColorP4ui := dglGetProcAddress('glColorP4ui'); + glColorP4uiv := dglGetProcAddress('glColorP4uiv'); + glSecondaryColorP3ui := dglGetProcAddress('glSecondaryColorP3ui'); + glSecondaryColorP3uiv := dglGetProcAddress('glSecondaryColorP3uiv'); + glVertexAttribP1ui := dglGetProcAddress('glVertexAttribP1ui'); + glVertexAttribP1uiv := dglGetProcAddress('glVertexAttribP1uiv'); + glVertexAttribP2ui := dglGetProcAddress('glVertexAttribP2ui'); + glVertexAttribP2uiv := dglGetProcAddress('glVertexAttribP2uiv'); + glVertexAttribP3ui := dglGetProcAddress('glVertexAttribP3ui'); + glVertexAttribP3uiv := dglGetProcAddress('glVertexAttribP3uiv'); + glVertexAttribP4ui := dglGetProcAddress('glVertexAttribP4ui'); + glVertexAttribP4uiv := dglGetProcAddress('glVertexAttribP4uiv'); +end; + +procedure Read_GL_ARB_draw_indirect; +begin + glDrawArraysIndirect := dglGetProcAddress('glDrawArraysIndirect'); + glDrawElementsIndirect := dglGetProcAddress('glDrawElementsIndirect'); +end; + +procedure Read_GL_ARB_gpu_shader_fp64; +begin + glUniform1d := dglGetProcAddress('glUniform1d'); + glUniform2d := dglGetProcAddress('glUniform2d'); + glUniform3d := dglGetProcAddress('glUniform3d'); + glUniform4d := dglGetProcAddress('glUniform4d'); + glUniform1dv := dglGetProcAddress('glUniform1dv'); + glUniform2dv := dglGetProcAddress('glUniform2dv'); + glUniform3dv := dglGetProcAddress('glUniform3dv'); + glUniform4dv := dglGetProcAddress('glUniform4dv'); + glUniformMatrix2dv := dglGetProcAddress('glUniformMatrix2dv'); + glUniformMatrix3dv := dglGetProcAddress('glUniformMatrix3dv'); + glUniformMatrix4dv := dglGetProcAddress('glUniformMatrix4dv'); + glUniformMatrix2x3dv := dglGetProcAddress('glUniformMatrix2x3dv'); + glUniformMatrix2x4dv := dglGetProcAddress('glUniformMatrix2x4dv'); + glUniformMatrix3x2dv := dglGetProcAddress('glUniformMatrix3x2dv'); + glUniformMatrix3x4dv := dglGetProcAddress('glUniformMatrix3x4dv'); + glUniformMatrix4x2dv := dglGetProcAddress('glUniformMatrix4x2dv'); + glUniformMatrix4x3dv := dglGetProcAddress('glUniformMatrix4x3dv'); + glGetUniformdv := dglGetProcAddress('glGetUniformdv'); +end; + +procedure Read_GL_ARB_shader_subroutine; +begin + glGetSubroutineUniformLocation := dglGetProcAddress('glGetSubroutineUniformLocation'); + glGetSubroutineIndex := dglGetProcAddress('glGetSubroutineIndex'); + glGetActiveSubroutineUniformiv := dglGetProcAddress('glGetActiveSubroutineUniformiv'); + glGetActiveSubroutineUniformName := dglGetProcAddress('glGetActiveSubroutineUniformName'); + glGetActiveSubroutineName := dglGetProcAddress('glGetActiveSubroutineName'); + glUniformSubroutinesuiv := dglGetProcAddress('glUniformSubroutinesuiv'); + glGetUniformSubroutineuiv := dglGetProcAddress('glGetUniformSubroutineuiv'); + glGetProgramStageiv := dglGetProcAddress('glGetProgramStageiv'); +end; + +procedure Read_GL_ARB_tessellation_shader; +begin + glPatchParameteri := dglGetProcAddress('glPatchParameteri'); + glPatchParameterfv := dglGetProcAddress('glPatchParameterfv'); +end; + +procedure Read_GL_ARB_transform_feedback2; +begin + glBindTransformFeedback := dglGetProcAddress('glBindTransformFeedback'); + glDeleteTransformFeedbacks := dglGetProcAddress('glDeleteTransformFeedbacks'); + glGenTransformFeedbacks := dglGetProcAddress('glGenTransformFeedbacks'); + glIsTransformFeedback := dglGetProcAddress('glIsTransformFeedback'); + glPauseTransformFeedback := dglGetProcAddress('glPauseTransformFeedback'); + glResumeTransformFeedback := dglGetProcAddress('glResumeTransformFeedback'); + glDrawTransformFeedback := dglGetProcAddress('glDrawTransformFeedback'); +end; + +procedure Read_GL_ARB_transform_feedback3; +begin + glDrawTransformFeedbackStream := dglGetProcAddress('glDrawTransformFeedbackStream'); + glBeginQueryIndexed := dglGetProcAddress('glBeginQueryIndexed'); + glEndQueryIndexed := dglGetProcAddress('glEndQueryIndexed'); + glGetQueryIndexediv := dglGetProcAddress('glGetQueryIndexediv'); +end; + +procedure Read_GL_ARB_ES2_compatibility; +begin + glReleaseShaderCompiler := dglGetProcAddress('glReleaseShaderCompiler'); + glShaderBinary := dglGetProcAddress('glShaderBinary'); + glGetShaderPrecisionFormat := dglGetProcAddress('glGetShaderPrecisionFormat'); + glDepthRangef := dglGetProcAddress('glDepthRangef'); + glClearDepthf := dglGetProcAddress('glClearDepthf'); +end; + +procedure Read_GL_ARB_get_program_binary; +begin + glGetProgramBinary := dglGetProcAddress('glGetProgramBinary'); + glProgramBinary := dglGetProcAddress('glProgramBinary'); + glProgramParameteri := dglGetProcAddress('glProgramParameteri'); +end; + +procedure Read_GL_ARB_separate_shader_objects; +begin + glUseProgramStages := dglGetProcAddress('glUseProgramStages'); + glActiveShaderProgram := dglGetProcAddress('glActiveShaderProgram'); + glCreateShaderProgramv := dglGetProcAddress('glCreateShaderProgramv'); + glBindProgramPipeline := dglGetProcAddress('glBindProgramPipeline'); + glDeleteProgramPipelines := dglGetProcAddress('glDeleteProgramPipelines'); + glGenProgramPipelines := dglGetProcAddress('glGenProgramPipelines'); + glIsProgramPipeline := dglGetProcAddress('glIsProgramPipeline'); + glGetProgramPipelineiv := dglGetProcAddress('glGetProgramPipelineiv'); + glProgramUniform1i := dglGetProcAddress('glProgramUniform1i'); + glProgramUniform1iv := dglGetProcAddress('glProgramUniform1iv'); + glProgramUniform1f := dglGetProcAddress('glProgramUniform1f'); + glProgramUniform1fv := dglGetProcAddress('glProgramUniform1fv'); + glProgramUniform1d := dglGetProcAddress('glProgramUniform1d'); + glProgramUniform1dv := dglGetProcAddress('glProgramUniform1dv'); + glProgramUniform1ui := dglGetProcAddress('glProgramUniform1ui'); + glProgramUniform1uiv := dglGetProcAddress('glProgramUniform1uiv'); + glProgramUniform2i := dglGetProcAddress('glProgramUniform2i'); + glProgramUniform2iv := dglGetProcAddress('glProgramUniform2iv'); + glProgramUniform2f := dglGetProcAddress('glProgramUniform2f'); + glProgramUniform2fv := dglGetProcAddress('glProgramUniform2fv'); + glProgramUniform2d := dglGetProcAddress('glProgramUniform2d'); + glProgramUniform2dv := dglGetProcAddress('glProgramUniform2dv'); + glProgramUniform2ui := dglGetProcAddress('glProgramUniform2ui'); + glProgramUniform2uiv := dglGetProcAddress('glProgramUniform2uiv'); + glProgramUniform3i := dglGetProcAddress('glProgramUniform3i'); + glProgramUniform3iv := dglGetProcAddress('glProgramUniform3iv'); + glProgramUniform3f := dglGetProcAddress('glProgramUniform3f'); + glProgramUniform3fv := dglGetProcAddress('glProgramUniform3fv'); + glProgramUniform3d := dglGetProcAddress('glProgramUniform3d'); + glProgramUniform3dv := dglGetProcAddress('glProgramUniform3dv'); + glProgramUniform3ui := dglGetProcAddress('glProgramUniform3ui'); + glProgramUniform3uiv := dglGetProcAddress('glProgramUniform3uiv'); + glProgramUniform4i := dglGetProcAddress('glProgramUniform4i'); + glProgramUniform4iv := dglGetProcAddress('glProgramUniform4iv'); + glProgramUniform4f := dglGetProcAddress('glProgramUniform4f'); + glProgramUniform4fv := dglGetProcAddress('glProgramUniform4fv'); + glProgramUniform4d := dglGetProcAddress('glProgramUniform4d'); + glProgramUniform4dv := dglGetProcAddress('glProgramUniform4dv'); + glProgramUniform4ui := dglGetProcAddress('glProgramUniform4ui'); + glProgramUniform4uiv := dglGetProcAddress('glProgramUniform4uiv'); + glProgramUniformMatrix2fv := dglGetProcAddress('glProgramUniformMatrix2fv'); + glProgramUniformMatrix3fv := dglGetProcAddress('glProgramUniformMatrix3fv'); + glProgramUniformMatrix4fv := dglGetProcAddress('glProgramUniformMatrix4fv'); + glProgramUniformMatrix2dv := dglGetProcAddress('glProgramUniformMatrix2dv'); + glProgramUniformMatrix3dv := dglGetProcAddress('glProgramUniformMatrix3dv'); + glProgramUniformMatrix4dv := dglGetProcAddress('glProgramUniformMatrix4dv'); + glProgramUniformMatrix2x3fv := dglGetProcAddress('glProgramUniformMatrix2x3fv'); + glProgramUniformMatrix3x2fv := dglGetProcAddress('glProgramUniformMatrix3x2fv'); + glProgramUniformMatrix2x4fv := dglGetProcAddress('glProgramUniformMatrix2x4fv'); + glProgramUniformMatrix4x2fv := dglGetProcAddress('glProgramUniformMatrix4x2fv'); + glProgramUniformMatrix3x4fv := dglGetProcAddress('glProgramUniformMatrix3x4fv'); + glProgramUniformMatrix4x3fv := dglGetProcAddress('glProgramUniformMatrix4x3fv'); + glProgramUniformMatrix2x3dv := dglGetProcAddress('glProgramUniformMatrix2x3dv'); + glProgramUniformMatrix3x2dv := dglGetProcAddress('glProgramUniformMatrix3x2dv'); + glProgramUniformMatrix2x4dv := dglGetProcAddress('glProgramUniformMatrix2x4dv'); + glProgramUniformMatrix4x2dv := dglGetProcAddress('glProgramUniformMatrix4x2dv'); + glProgramUniformMatrix3x4dv := dglGetProcAddress('glProgramUniformMatrix3x4dv'); + glProgramUniformMatrix4x3dv := dglGetProcAddress('glProgramUniformMatrix4x3dv'); + glValidateProgramPipeline := dglGetProcAddress('glValidateProgramPipeline'); + glGetProgramPipelineInfoLog := dglGetProcAddress('glGetProgramPipelineInfoLog'); +end; + +procedure Read_GL_ARB_vertex_attrib_64bit; +begin + glVertexAttribL1d := dglGetProcAddress('glVertexAttribL1d'); + glVertexAttribL2d := dglGetProcAddress('glVertexAttribL2d'); + glVertexAttribL3d := dglGetProcAddress('glVertexAttribL3d'); + glVertexAttribL4d := dglGetProcAddress('glVertexAttribL4d'); + glVertexAttribL1dv := dglGetProcAddress('glVertexAttribL1dv'); + glVertexAttribL2dv := dglGetProcAddress('glVertexAttribL2dv'); + glVertexAttribL3dv := dglGetProcAddress('glVertexAttribL3dv'); + glVertexAttribL4dv := dglGetProcAddress('glVertexAttribL4dv'); + glVertexAttribLPointer := dglGetProcAddress('glVertexAttribLPointer'); + glGetVertexAttribLdv := dglGetProcAddress('glGetVertexAttribLdv'); +end; + +procedure Read_GL_ARB_viewport_array; +begin + glViewportArrayv := dglGetProcAddress('glViewportArrayv'); + glViewportIndexedf := dglGetProcAddress('glViewportIndexedf'); + glViewportIndexedfv := dglGetProcAddress('glViewportIndexedfv'); + glScissorArrayv := dglGetProcAddress('glScissorArrayv'); + glScissorIndexed := dglGetProcAddress('glScissorIndexed'); + glScissorIndexedv := dglGetProcAddress('glScissorIndexedv'); + glDepthRangeArrayv := dglGetProcAddress('glDepthRangeArrayv'); + glDepthRangeIndexed := dglGetProcAddress('glDepthRangeIndexed'); + glGetFloati_v := dglGetProcAddress('glGetFloati_v'); + glGetDoublei_v := dglGetProcAddress('glGetDoublei_v'); +end; + +// GL 4.2 + +procedure Read_GL_ARB_base_instance; +begin +glDrawArraysInstancedBaseInstance := dglGetProcAddress('glDrawArraysInstancedBaseInstance'); +glDrawElementsInstancedBaseInstance := dglGetProcAddress('glDrawElementsInstancedBaseInstance'); +glDrawElementsInstancedBaseVertexBaseInstance := dglGetProcAddress('glDrawElementsInstancedBaseVertexBaseInstance'); +end; + +procedure Read_GL_ARB_transform_feedback_instanced; +begin +glDrawTransformFeedbackInstanced := dglGetProcAddress('glDrawTransformFeedbackInstanced'); +glDrawTransformFeedbackStreamInstanced := dglGetProcAddress('glDrawTransformFeedbackStreamInstanced'); +end; + +procedure Read_GL_ARB_internalformat_query; +begin +glGetInternalformativ := dglGetProcAddress('glGetInternalformativ'); +end; + +procedure Read_GL_ARB_shader_atomic_counters; +begin +glGetActiveAtomicCounterBufferiv := dglGetProcAddress('glGetActiveAtomicCounterBufferiv'); +end; + +procedure Read_GL_ARB_shader_image_load_store; +begin +glBindImageTexture := dglGetProcAddress('glBindImageTexture'); +glMemoryBarrier := dglGetProcAddress('glMemoryBarrier'); +end; + +procedure Read_GL_ARB_texture_storage; +begin +glTexStorage1D := dglGetProcAddress('glTexStorage1D'); +glTexStorage2D := dglGetProcAddress('glTexStorage2D'); +glTexStorage3D := dglGetProcAddress('glTexStorage3D'); +glTextureStorage1DEXT := dglGetProcAddress('glTextureStorage1DEXT'); +glTextureStorage2DEXT := dglGetProcAddress('glTextureStorage2DEXT'); +glTextureStorage3DEXT := dglGetProcAddress('glTextureStorage3DEXT'); +end; + + +// GL 4.3 +procedure Read_GL_KHR_debug; +begin + glDebugMessageControl := dglGetProcAddress('glDebugMessageControl'); + glDebugMessageInsert := dglGetProcAddress('glDebugMessageInsert'); + glDebugMessageCallback := dglGetProcAddress('glDebugMessageCallback'); + glGetDebugMessageLog := dglGetProcAddress('glGetDebugMessageLog'); + glPushDebugGroup := dglGetProcAddress('glPushDebugGroup'); + glPopDebugGroup := dglGetProcAddress('glPopDebugGroup'); + glObjectLabel := dglGetProcAddress('glObjectLabel'); + glGetObjectLabel := dglGetProcAddress('glGetObjectLabel'); + glObjectPtrLabel := dglGetProcAddress('glObjectPtrLabel'); + glGetObjectPtrLabel := dglGetProcAddress('glGetObjectPtrLabel'); +end; + +procedure Read_GL_ARB_clear_buffer_object; +begin + glClearBufferData := dglGetProcAddress('glClearBufferData'); + glClearBufferSubData := dglGetProcAddress('glClearBufferSubData'); + glClearNamedBufferDataEXT := dglGetProcAddress('glClearNamedBufferDataEXT'); + glClearNamedBufferSubDataEXT := dglGetProcAddress('glClearNamedBufferSubDataEXT'); +end; + +procedure Read_GL_ARB_compute_shader; +begin + glDispatchCompute := dglGetProcAddress('glDispatchCompute'); + glDispatchComputeIndirect := dglGetProcAddress('glDispatchComputeIndirect'); +end; + +procedure Read_GL_ARB_copy_image; +begin + glCopyImageSubData := dglGetProcAddress('glCopyImageSubData'); +end; + +procedure Read_GL_ARB_framebuffer_no_attachments; +begin + glFramebufferParameteri := dglGetProcAddress('glFramebufferParameteri'); + glGetFramebufferParameteriv := dglGetProcAddress('glGetFramebufferParameteriv'); + glNamedFramebufferParameteriEXT := dglGetProcAddress('glNamedFramebufferParameteriEXT'); + glGetNamedFramebufferParameterivEXT := dglGetProcAddress('glGetNamedFramebufferParameterivEXT'); +end; + +procedure Read_GL_ARB_internalformat_query2; +begin + glGetInternalformati64v := dglGetProcAddress('glGetInternalformati64v');; +end; + +procedure Read_GL_ARB_invalidate_subdata; +begin + glInvalidateTexSubImage := dglGetProcAddress('glInvalidateTexSubImage'); + glInvalidateTexImage := dglGetProcAddress('glInvalidateTexImage'); + glInvalidateBufferSubData := dglGetProcAddress('glInvalidateBufferSubData'); + glInvalidateBufferData := dglGetProcAddress('glInvalidateBufferData'); + glInvalidateFramebuffer := dglGetProcAddress('glInvalidateFramebuffer'); + glInvalidateSubFramebuffer := dglGetProcAddress('glInvalidateSubFramebuffer'); +end; + +procedure Read_GL_ARB_multi_draw_indirect; +begin + glMultiDrawArraysIndirect := dglGetProcAddress('glMultiDrawArraysIndirect'); + glMultiDrawElementsIndirect := dglGetProcAddress('glMultiDrawElementsIndirect'); +end; + +procedure Read_GL_ARB_program_interface_query; +begin + glGetProgramInterfaceiv := dglGetProcAddress('glGetProgramInterfaceiv'); + glGetProgramResourceIndex := dglGetProcAddress('glGetProgramResourceIndex'); + glGetProgramResourceName := dglGetProcAddress('glGetProgramResourceName'); + glGetProgramResourceiv := dglGetProcAddress('glGetProgramResourceiv'); + glGetProgramResourceLocation := dglGetProcAddress('glGetProgramResourceLocation'); + glGetProgramResourceLocationIndex := dglGetProcAddress('glGetProgramResourceLocationIndex'); +end; + +procedure Read_GL_ARB_shader_storage_buffer_object; +begin + glShaderStorageBlockBinding := dglGetProcAddress('glShaderStorageBlockBinding'); +end; + +procedure Read_GL_ARB_texture_buffer_range; +begin + glTexBufferRange := dglGetProcAddress('glTexBufferRange'); + glTextureBufferRangeEXT := dglGetProcAddress('glTextureBufferRangeEXT'); +end; + +procedure Read_GL_ARB_texture_storage_multisample; +begin + glTexStorage2DMultisample := dglGetProcAddress('glTexStorage2DMultisample'); + glTexStorage3DMultisample := dglGetProcAddress('glTexStorage3DMultisample'); + glTextureStorage2DMultisampleEXT := dglGetProcAddress('glTextureStorage2DMultisampleEXT'); + glTextureStorage3DMultisampleEXT := dglGetProcAddress('glTextureStorage3DMultisampleEXT'); +end; + +procedure Read_GL_ARB_texture_view; +begin + glTextureView := dglGetProcAddress('glTextureView'); +end; + +procedure Read_GL_ARB_vertex_attrib_binding; +begin + glBindVertexBuffer := dglGetProcAddress('glBindVertexBuffer'); + glVertexAttribFormat := dglGetProcAddress('glVertexAttribFormat'); + glVertexAttribIFormat := dglGetProcAddress('glVertexAttribIFormat'); + glVertexAttribLFormat := dglGetProcAddress('glVertexAttribLFormat'); + glVertexAttribBinding := dglGetProcAddress('glVertexAttribBinding'); + glVertexBindingDivisor := dglGetProcAddress('glVertexBindingDivisor'); + glVertexArrayBindVertexBufferEXT := dglGetProcAddress('glVertexArrayBindVertexBufferEXT'); + glVertexArrayVertexAttribFormatEXT := dglGetProcAddress('glVertexArrayVertexAttribFormatEXT'); + glVertexArrayVertexAttribIFormatEXT := dglGetProcAddress('glVertexArrayVertexAttribIFormatEXT'); + glVertexArrayVertexAttribLFormatEXT := dglGetProcAddress('glVertexArrayVertexAttribLFormatEXT'); + glVertexArrayVertexAttribBindingEXT := dglGetProcAddress('glVertexArrayVertexAttribBindingEXT'); + glVertexArrayVertexBindingDivisorEXT := dglGetProcAddress('glVertexArrayVertexBindingDivisorEXT'); +end; + +procedure Read_GL_4_4; +begin + glBufferStorage := dglGetProcAddress('glBufferStorage'); + glClearTexImage := dglGetProcAddress('glClearTexImage'); + glClearTexSubImage := dglGetProcAddress('glClearTexSubImage'); + glBindBuffersBase := dglGetProcAddress('glBindBuffersBase'); + glBindBuffersRange := dglGetProcAddress('glBindBuffersRange'); + glBindTextures := dglGetProcAddress('glBindTextures'); + glBindSamplers := dglGetProcAddress('glBindSamplers'); + glBindImageTextures := dglGetProcAddress('glBindImageTextures'); + glBindVertexBuffers := dglGetProcAddress('glBindVertexBuffers'); +end; + + +procedure Read_GL_NV_path_rendering; +begin + glGenPathsNV := dglGetProcAddress('glGenPathsNV'); + glDeletePathsNV := dglGetProcAddress('glDeletePathsNV'); + glIsPathNV := dglGetProcAddress('glIsPathNV'); + glPathCommandsNV := dglGetProcAddress('glPathCommandsNV'); + glPathCoordsNV := dglGetProcAddress('glPathCoordsNV'); + glPathSubCommandsNV := dglGetProcAddress('glPathSubCommandsNV'); + glPathSubCoordsNV := dglGetProcAddress('glPathSubCoordsNV'); + glPathStringNV := dglGetProcAddress('glPathStringNV'); + glPathGlyphsNV := dglGetProcAddress('glPathGlyphsNV'); + glPathGlyphRangeNV := dglGetProcAddress('glPathGlyphRangeNV'); + glWeightPathsNV := dglGetProcAddress('glWeightPathsNV'); + glCopyPathNV := dglGetProcAddress('glCopyPathNV'); + glInterpolatePathsNV := dglGetProcAddress('glInterpolatePathsNV'); + glTransformPathNV := dglGetProcAddress('glTransformPathNV'); + glPathParameterivNV := dglGetProcAddress('glPathParameterivNV'); + glPathParameteriNV := dglGetProcAddress('glPathParameteriNV'); + glPathParameterfvNV := dglGetProcAddress('glPathParameterfvNV'); + glPathParameterfNV := dglGetProcAddress('glPathParameterfNV'); + glPathDashArrayNV := dglGetProcAddress('glPathDashArrayNV'); + glPathStencilFuncNV := dglGetProcAddress('glPathStencilFuncNV'); + glPathStencilDepthOffsetNV := dglGetProcAddress('glPathStencilDepthOffsetNV'); + glStencilFillPathNV := dglGetProcAddress('glStencilFillPathNV'); + glStencilStrokePathNV := dglGetProcAddress('glStencilStrokePathNV'); + glStencilFillPathInstancedNV := dglGetProcAddress('glStencilFillPathInstancedNV'); + glStencilStrokePathInstancedNV := dglGetProcAddress('glStencilStrokePathInstancedNV'); + glPathCoverDepthFuncNV := dglGetProcAddress('glPathCoverDepthFuncNV'); + glPathColorGenNV := dglGetProcAddress('glPathColorGenNV'); + glPathTexGenNV := dglGetProcAddress('glPathTexGenNV'); + glPathFogGenNV := dglGetProcAddress('glPathFogGenNV'); + glCoverFillPathNV := dglGetProcAddress('glCoverFillPathNV'); + glCoverStrokePathNV := dglGetProcAddress('glCoverStrokePathNV'); + glCoverFillPathInstancedNV := dglGetProcAddress('glCoverFillPathInstancedNV'); + glCoverStrokePathInstancedNV := dglGetProcAddress('glCoverStrokePathInstancedNV'); + glGetPathParameterivNV := dglGetProcAddress('glGetPathParameterivNV'); + glGetPathParameterfvNV := dglGetProcAddress('glGetPathParameterfvNV'); + glGetPathCommandsNV := dglGetProcAddress('glGetPathCommandsNV'); + glGetPathCoordsNV := dglGetProcAddress('glGetPathCoordsNV'); + glGetPathDashArrayNV := dglGetProcAddress('glGetPathDashArrayNV'); + glGetPathMetricsNV := dglGetProcAddress('glGetPathMetricsNV'); + glGetPathMetricRangeNV := dglGetProcAddress('glGetPathMetricRangeNV'); + glGetPathSpacingNV := dglGetProcAddress('glGetPathSpacingNV'); + glGetPathColorGenivNV := dglGetProcAddress('glGetPathColorGenivNV'); + glGetPathColorGenfvNV := dglGetProcAddress('glGetPathColorGenfvNV'); + glGetPathTexGenivNV := dglGetProcAddress('glGetPathTexGenivNV'); + glGetPathTexGenfvNV := dglGetProcAddress('glGetPathTexGenfvNV'); + glIsPointInFillPathNV := dglGetProcAddress('glIsPointInFillPathNV'); + glIsPointInStrokePathNV := dglGetProcAddress('glIsPointInStrokePathNV'); + glGetPathLengthNV := dglGetProcAddress('glGetPathLengthNV'); + glPointAlongPathNV := dglGetProcAddress('glPointAlongPathNV'); +end; + +procedure Read_GL_AMD_stencil_operation_extended; +begin + glStencilOpValueAMD := dglGetProcAddress('glStencilOpValueAMD'); +end; + +procedure Read_GL_NV_bindless_texture; +begin + glGetTextureHandleNV := dglGetProcAddress('glGetTextureHandleNV'); + glGetTextureSamplerHandleNV := dglGetProcAddress('glGetTextureSamplerHandleNV'); + glMakeTextureHandleResidentNV := dglGetProcAddress('glMakeTextureHandleResidentNV'); + glMakeTextureHandleNonResidentNV := dglGetProcAddress('glMakeTextureHandleNonResidentNV'); + glGetImageHandleNV := dglGetProcAddress('glGetImageHandleNV'); + glMakeImageHandleResidentNV := dglGetProcAddress('glMakeImageHandleResidentNV'); + glMakeImageHandleNonResidentNV := dglGetProcAddress('glMakeImageHandleNonResidentNV'); + glUniformHandleui64NV := dglGetProcAddress('glUniformHandleui64NV'); + glUniformHandleui64vNV := dglGetProcAddress('glUniformHandleui64vNV'); + glProgramUniformHandleui64NV := dglGetProcAddress('glProgramUniformHandleui64NV'); + glProgramUniformHandleui64vNV := dglGetProcAddress('glProgramUniformHandleui64vNV'); + glIsTextureHandleResidentNV := dglGetProcAddress('glIsTextureHandleResidentNV'); + glIsImageHandleResidentNV := dglGetProcAddress('glIsImageHandleResidentNV'); +end; + +procedure Read_GL_ARB_cl_event; +begin + glCreateSyncFromCLeventARB := dglGetProcAddress('glCreateSyncFromCLeventARB'); +end; + +procedure Read_GL_ARB_debug_output; +begin + glDebugMessageControlARB := dglGetProcAddress('glDebugMessageControlARB'); + glDebugMessageInsertARB := dglGetProcAddress('glDebugMessageInsertARB'); + glDebugMessageCallbackARB := dglGetProcAddress('glDebugMessageCallbackARB'); + glGetDebugMessageLogARB := dglGetProcAddress('glGetDebugMessageLogARB'); +end; + +procedure Read_GL_ARB_robustness; +begin + glGetGraphicsResetStatusARB := dglGetProcAddress('glGetGraphicsResetStatusARB'); + glGetnMapdvARB := dglGetProcAddress('glGetnMapdvARB'); + glGetnMapfvARB := dglGetProcAddress('glGetnMapfvARB'); + glGetnMapivARB := dglGetProcAddress('glGetnMapivARB'); + glGetnPixelMapfvARB := dglGetProcAddress('glGetnPixelMapfvARB'); + glGetnPixelMapuivARB := dglGetProcAddress('glGetnPixelMapuivARB'); + glGetnPixelMapusvARB := dglGetProcAddress('glGetnPixelMapusvARB'); + glGetnPolygonStippleARB := dglGetProcAddress('glGetnPolygonStippleARB'); + glGetnColorTableARB := dglGetProcAddress('glGetnColorTableARB'); + glGetnConvolutionFilterARB := dglGetProcAddress('glGetnConvolutionFilterARB'); + glGetnSeparableFilterARB := dglGetProcAddress('glGetnSeparableFilterARB'); + glGetnHistogramARB := dglGetProcAddress('glGetnHistogramARB'); + glGetnMinmaxARB := dglGetProcAddress('glGetnMinmaxARB'); + glGetnTexImageARB := dglGetProcAddress('glGetnTexImageARB'); + glReadnPixelsARB := dglGetProcAddress('glReadnPixelsARB'); + glGetnCompressedTexImageARB := dglGetProcAddress('glGetnCompressedTexImageARB'); + glGetnUniformfvARB := dglGetProcAddress('glGetnUniformfvARB'); + glGetnUniformivARB := dglGetProcAddress('glGetnUniformivARB'); + glGetnUniformuivARB := dglGetProcAddress('glGetnUniformuivARB'); + glGetnUniformdvARB := dglGetProcAddress('glGetnUniformdvARB'); +end; + +procedure Read_GL_ATI_draw_buffers; +begin + glDrawBuffersATI := dglGetProcAddress('glDrawBuffersATI'); +end; + +procedure Read_GL_ATI_element_array; +begin + glElementPointerATI := dglGetProcAddress('glElementPointerATI'); + glDrawElementArrayATI := dglGetProcAddress('glDrawElementArrayATI'); + glDrawRangeElementArrayATI := dglGetProcAddress('glDrawRangeElementArrayATI'); +end; + +procedure Read_GL_ATI_envmap_bumpmap; +begin + glTexBumpParameterivATI := dglGetProcAddress('glTexBumpParameterivATI'); + glTexBumpParameterfvATI := dglGetProcAddress('glTexBumpParameterfvATI'); + glGetTexBumpParameterivATI := dglGetProcAddress('glGetTexBumpParameterivATI'); + glGetTexBumpParameterfvATI := dglGetProcAddress('glGetTexBumpParameterfvATI'); +end; + +procedure Read_GL_ATI_fragment_shader; +begin + glGenFragmentShadersATI := dglGetProcAddress('glGenFragmentShadersATI'); + glBindFragmentShaderATI := dglGetProcAddress('glBindFragmentShaderATI'); + glDeleteFragmentShaderATI := dglGetProcAddress('glDeleteFragmentShaderATI'); + glBeginFragmentShaderATI := dglGetProcAddress('glBeginFragmentShaderATI'); + glEndFragmentShaderATI := dglGetProcAddress('glEndFragmentShaderATI'); + glPassTexCoordATI := dglGetProcAddress('glPassTexCoordATI'); + glSampleMapATI := dglGetProcAddress('glSampleMapATI'); + glColorFragmentOp1ATI := dglGetProcAddress('glColorFragmentOp1ATI'); + glColorFragmentOp2ATI := dglGetProcAddress('glColorFragmentOp2ATI'); + glColorFragmentOp3ATI := dglGetProcAddress('glColorFragmentOp3ATI'); + glAlphaFragmentOp1ATI := dglGetProcAddress('glAlphaFragmentOp1ATI'); + glAlphaFragmentOp2ATI := dglGetProcAddress('glAlphaFragmentOp2ATI'); + glAlphaFragmentOp3ATI := dglGetProcAddress('glAlphaFragmentOp3ATI'); + glSetFragmentShaderConstantATI := dglGetProcAddress('glSetFragmentShaderConstantATI'); +end; + +procedure Read_GL_ATI_map_object_buffer; +begin + glMapObjectBufferATI := dglGetProcAddress('glMapObjectBufferATI'); + glUnmapObjectBufferATI := dglGetProcAddress('glUnmapObjectBufferATI'); +end; + +procedure Read_GL_ATI_pn_triangles; +begin + glPNTrianglesiATI := dglGetProcAddress('glPNTrianglesiATI'); + glPNTrianglesfATI := dglGetProcAddress('glPNTrianglesfATI'); +end; + +procedure Read_GL_ATI_separate_stencil; +begin + glStencilOpSeparateATI := dglGetProcAddress('glStencilOpSeparateATI'); + glStencilFuncSeparateATI := dglGetProcAddress('glStencilFuncSeparateATI'); +end; + +procedure Read_GL_ATI_vertex_array_object; +begin + glNewObjectBufferATI := dglGetProcAddress('glNewObjectBufferATI'); + glIsObjectBufferATI := dglGetProcAddress('glIsObjectBufferATI'); + glUpdateObjectBufferATI := dglGetProcAddress('glUpdateObjectBufferATI'); + glGetObjectBufferfvATI := dglGetProcAddress('glGetObjectBufferfvATI'); + glGetObjectBufferivATI := dglGetProcAddress('glGetObjectBufferivATI'); + glFreeObjectBufferATI := dglGetProcAddress('glFreeObjectBufferATI'); + glArrayObjectATI := dglGetProcAddress('glArrayObjectATI'); + glGetArrayObjectfvATI := dglGetProcAddress('glGetArrayObjectfvATI'); + glGetArrayObjectivATI := dglGetProcAddress('glGetArrayObjectivATI'); + glVariantArrayObjectATI := dglGetProcAddress('glVariantArrayObjectATI'); + glGetVariantArrayObjectfvATI := dglGetProcAddress('glGetVariantArrayObjectfvATI'); + glGetVariantArrayObjectivATI := dglGetProcAddress('glGetVariantArrayObjectivATI'); + +end; + +procedure Read_GL_ATI_vertex_attrib_array_object; +begin + glVertexAttribArrayObjectATI := dglGetProcAddress('glVertexAttribArrayObjectATI'); + glGetVertexAttribArrayObjectfvATI := dglGetProcAddress('glGetVertexAttribArrayObjectfvATI'); + glGetVertexAttribArrayObjectivATI := dglGetProcAddress('glGetVertexAttribArrayObjectivATI'); +end; + +procedure Read_GL_ATI_vertex_streams; +begin + glVertexStream1sATI := dglGetProcAddress('glVertexStream1sATI'); + glVertexStream1svATI := dglGetProcAddress('glVertexStream1svATI'); + glVertexStream1iATI := dglGetProcAddress('glVertexStream1iATI'); + glVertexStream1ivATI := dglGetProcAddress('glVertexStream1ivATI'); + glVertexStream1fATI := dglGetProcAddress('glVertexStream1fATI'); + glVertexStream1fvATI := dglGetProcAddress('glVertexStream1fvATI'); + glVertexStream1dATI := dglGetProcAddress('glVertexStream1dATI'); + glVertexStream1dvATI := dglGetProcAddress('glVertexStream1dvATI'); + glVertexStream2sATI := dglGetProcAddress('glVertexStream2sATI'); + glVertexStream2svATI := dglGetProcAddress('glVertexStream2svATI'); + glVertexStream2iATI := dglGetProcAddress('glVertexStream2iATI'); + glVertexStream2ivATI := dglGetProcAddress('glVertexStream2ivATI'); + glVertexStream2fATI := dglGetProcAddress('glVertexStream2fATI'); + glVertexStream2fvATI := dglGetProcAddress('glVertexStream2fvATI'); + glVertexStream2dATI := dglGetProcAddress('glVertexStream2dATI'); + glVertexStream2dvATI := dglGetProcAddress('glVertexStream2dvATI'); + glVertexStream3sATI := dglGetProcAddress('glVertexStream3sATI'); + glVertexStream3svATI := dglGetProcAddress('glVertexStream3svATI'); + glVertexStream3iATI := dglGetProcAddress('glVertexStream3iATI'); + glVertexStream3ivATI := dglGetProcAddress('glVertexStream3ivATI'); + glVertexStream3fATI := dglGetProcAddress('glVertexStream3fATI'); + glVertexStream3fvATI := dglGetProcAddress('glVertexStream3fvATI'); + glVertexStream3dATI := dglGetProcAddress('glVertexStream3dATI'); + glVertexStream3dvATI := dglGetProcAddress('glVertexStream3dvATI'); + glVertexStream4sATI := dglGetProcAddress('glVertexStream4sATI'); + glVertexStream4svATI := dglGetProcAddress('glVertexStream4svATI'); + glVertexStream4iATI := dglGetProcAddress('glVertexStream4iATI'); + glVertexStream4ivATI := dglGetProcAddress('glVertexStream4ivATI'); + glVertexStream4fATI := dglGetProcAddress('glVertexStream4fATI'); + glVertexStream4fvATI := dglGetProcAddress('glVertexStream4fvATI'); + glVertexStream4dATI := dglGetProcAddress('glVertexStream4dATI'); + glVertexStream4dvATI := dglGetProcAddress('glVertexStream4dvATI'); + glNormalStream3bATI := dglGetProcAddress('glNormalStream3bATI'); + glNormalStream3bvATI := dglGetProcAddress('glNormalStream3bvATI'); + glNormalStream3sATI := dglGetProcAddress('glNormalStream3sATI'); + glNormalStream3svATI := dglGetProcAddress('glNormalStream3svATI'); + glNormalStream3iATI := dglGetProcAddress('glNormalStream3iATI'); + glNormalStream3ivATI := dglGetProcAddress('glNormalStream3ivATI'); + glNormalStream3fATI := dglGetProcAddress('glNormalStream3fATI'); + glNormalStream3fvATI := dglGetProcAddress('glNormalStream3fvATI'); + glNormalStream3dATI := dglGetProcAddress('glNormalStream3dATI'); + glNormalStream3dvATI := dglGetProcAddress('glNormalStream3dvATI'); + glClientActiveVertexStreamATI := dglGetProcAddress('glClientActiveVertexStreamATI'); + glVertexBlendEnviATI := dglGetProcAddress('glVertexBlendEnviATI'); + glVertexBlendEnvfATI := dglGetProcAddress('glVertexBlendEnvfATI'); +end; + +procedure Read_GL_AMD_performance_monitor; +begin + glGetPerfMonitorGroupsAMD := dglGetProcAddress('glGetPerfMonitorGroupsAMD'); + glGetPerfMonitorCountersAMD := dglGetProcAddress('glGetPerfMonitorCountersAMD'); + glGetPerfMonitorGroupStringAMD := dglGetProcAddress('glGetPerfMonitorGroupStringAMD'); + glGetPerfMonitorCounterStringAMD := dglGetProcAddress('glGetPerfMonitorCounterStringAMD'); + glGetPerfMonitorCounterInfoAMD := dglGetProcAddress('glGetPerfMonitorCounterInfoAMD'); + glGenPerfMonitorsAMD := dglGetProcAddress('glGenPerfMonitorsAMD'); + glDeletePerfMonitorsAMD := dglGetProcAddress('glDeletePerfMonitorsAMD'); + glSelectPerfMonitorCountersAMD := dglGetProcAddress('glSelectPerfMonitorCountersAMD'); + glBeginPerfMonitorAMD := dglGetProcAddress('glBeginPerfMonitorAMD'); + glEndPerfMonitorAMD := dglGetProcAddress('glEndPerfMonitorAMD'); + glGetPerfMonitorCounterDataAMD := dglGetProcAddress('glGetPerfMonitorCounterDataAMD'); +end; + +procedure Read_GL_AMD_vertex_shader_tesselator; +begin + glTessellationFactorAMD := dglGetProcAddress('glTessellationFactorAMD'); + glTessellationModeAMD := dglGetProcAddress('glTessellationModeAMD'); +end; + +procedure Read_GL_AMD_draw_buffers_blend; +begin + glBlendFuncIndexedAMD := dglGetProcAddress('glBlendFuncIndexedAMD'); + glBlendFuncSeparateIndexedAMD := dglGetProcAddress('glBlendFuncSeparateIndexedAMD'); + glBlendEquationIndexedAMD := dglGetProcAddress('glBlendEquationIndexedAMD'); + glBlendEquationSeparateIndexedAMD := dglGetProcAddress('glBlendEquationSeparateIndexedAMD'); +end; + +procedure Read_GL_AMD_name_gen_delete; +begin + glGenNamesAMD := dglGetProcAddress('glGenNamesAMD'); + glDeleteNamesAMD := dglGetProcAddress('glDeleteNamesAMD'); + glIsNameAMD := dglGetProcAddress('glIsNameAMD'); +end; + +procedure Read_GL_AMD_debug_output; +begin + glDebugMessageEnableAMD := dglGetProcAddress('glDebugMessageEnableAMD'); + glDebugMessageInsertAMD := dglGetProcAddress('glDebugMessageInsertAMD'); + glDebugMessageCallbackAMD := dglGetProcAddress('glDebugMessageCallbackAMD'); + glGetDebugMessageLogAMD := dglGetProcAddress('glGetDebugMessageLogAMD'); +end; + +procedure Read_GL_EXT_blend_color; +begin + glBlendColorEXT := dglGetProcAddress('glBlendColorEXT'); +end; + +procedure Read_GL_EXT_blend_func_separate; +begin + glBlendFuncSeparateEXT := dglGetProcAddress('glBlendFuncSeparateEXT'); +end; + +procedure Read_GL_EXT_blend_minmax; +begin + glBlendEquationEXT := dglGetProcAddress('glBlendEquationEXT'); +end; + +procedure Read_GL_EXT_color_subtable; +begin + glColorSubTableEXT := dglGetProcAddress('glColorSubTableEXT'); + glCopyColorSubTableEXT := dglGetProcAddress('glCopyColorSubTableEXT'); +end; + +procedure Read_GL_EXT_compiled_vertex_array; +begin + glLockArraysEXT := dglGetProcAddress('glLockArraysEXT'); + glUnlockArraysEXT := dglGetProcAddress('glUnlockArraysEXT'); +end; + +procedure Read_GL_EXT_convolution; +begin + glConvolutionFilter1DEXT := dglGetProcAddress('glConvolutionFilter1DEXT'); + glConvolutionFilter2DEXT := dglGetProcAddress('glConvolutionFilter2DEXT'); + glConvolutionParameterfEXT := dglGetProcAddress('glConvolutionParameterfEXT'); + glConvolutionParameterfvEXT := dglGetProcAddress('glConvolutionParameterfvEXT'); + glConvolutionParameteriEXT := dglGetProcAddress('glConvolutionParameteriEXT'); + glConvolutionParameterivEXT := dglGetProcAddress('glConvolutionParameterivEXT'); + glCopyConvolutionFilter1DEXT := dglGetProcAddress('glCopyConvolutionFilter1DEXT'); + glCopyConvolutionFilter2DEXT := dglGetProcAddress('glCopyConvolutionFilter2DEXT'); + glGetConvolutionFilterEXT := dglGetProcAddress('glGetConvolutionFilterEXT'); + glGetConvolutionParameterfvEXT := dglGetProcAddress('glGetConvolutionParameterfvEXT'); + glGetConvolutionParameterivEXT := dglGetProcAddress('glGetConvolutionParameterivEXT'); + glGetSeparableFilterEXT := dglGetProcAddress('glGetSeparableFilterEXT'); + glSeparableFilter2DEXT := dglGetProcAddress('glSeparableFilter2DEXT'); +end; + +procedure Read_GL_EXT_coordinate_frame; +begin + glTangent3bEXT := dglGetProcAddress('glTangent3bEXT'); + glTangent3bvEXT := dglGetProcAddress('glTangent3bvEXT'); + glTangent3dEXT := dglGetProcAddress('glTangent3dEXT'); + glTangent3dvEXT := dglGetProcAddress('glTangent3dvEXT'); + glTangent3fEXT := dglGetProcAddress('glTangent3fEXT'); + glTangent3fvEXT := dglGetProcAddress('glTangent3fvEXT'); + glTangent3iEXT := dglGetProcAddress('glTangent3iEXT'); + glTangent3ivEXT := dglGetProcAddress('glTangent3ivEXT'); + glTangent3sEXT := dglGetProcAddress('glTangent3sEXT'); + glTangent3svEXT := dglGetProcAddress('glTangent3svEXT'); + glBinormal3bEXT := dglGetProcAddress('glBinormal3bEXT'); + glBinormal3bvEXT := dglGetProcAddress('glBinormal3bvEXT'); + glBinormal3dEXT := dglGetProcAddress('glBinormal3dEXT'); + glBinormal3dvEXT := dglGetProcAddress('glBinormal3dvEXT'); + glBinormal3fEXT := dglGetProcAddress('glBinormal3fEXT'); + glBinormal3fvEXT := dglGetProcAddress('glBinormal3fvEXT'); + glBinormal3iEXT := dglGetProcAddress('glBinormal3iEXT'); + glBinormal3ivEXT := dglGetProcAddress('glBinormal3ivEXT'); + glBinormal3sEXT := dglGetProcAddress('glBinormal3sEXT'); + glBinormal3svEXT := dglGetProcAddress('glBinormal3svEXT'); + glTangentPointerEXT := dglGetProcAddress('glTangentPointerEXT'); + glBinormalPointerEXT := dglGetProcAddress('glBinormalPointerEXT'); +end; + +procedure Read_GL_EXT_copy_texture; +begin + glCopyTexImage1DEXT := dglGetProcAddress('glCopyTexImage1DEXT'); + glCopyTexImage2DEXT := dglGetProcAddress('glCopyTexImage2DEXT'); + glCopyTexSubImage1DEXT := dglGetProcAddress('glCopyTexSubImage1DEXT'); + glCopyTexSubImage2DEXT := dglGetProcAddress('glCopyTexSubImage2DEXT'); + glCopyTexSubImage3DEXT := dglGetProcAddress('glCopyTexSubImage3DEXT'); +end; + +procedure Read_GL_EXT_cull_vertex; +begin + glCullParameterdvEXT := dglGetProcAddress('glCullParameterdvEXT'); + glCullParameterfvEXT := dglGetProcAddress('glCullParameterfvEXT'); +end; + +procedure Read_GL_EXT_draw_range_elements; +begin + glDrawRangeElementsEXT := dglGetProcAddress('glDrawRangeElementsEXT'); +end; + +procedure Read_GL_EXT_fog_coord; +begin + glFogCoordfEXT := dglGetProcAddress('glFogCoordfEXT'); + glFogCoordfvEXT := dglGetProcAddress('glFogCoordfvEXT'); + glFogCoorddEXT := dglGetProcAddress('glFogCoorddEXT'); + glFogCoorddvEXT := dglGetProcAddress('glFogCoorddvEXT'); + glFogCoordPointerEXT := dglGetProcAddress('glFogCoordPointerEXT'); +end; + +procedure Read_GL_EXT_framebuffer_object; +begin + glIsRenderbufferEXT := dglGetProcAddress('glIsRenderbufferEXT'); + glBindRenderbufferEXT := dglGetProcAddress('glBindRenderbufferEXT'); + glDeleteRenderbuffersEXT := dglGetProcAddress('glDeleteRenderbuffersEXT'); + glGenRenderbuffersEXT := dglGetProcAddress('glGenRenderbuffersEXT'); + glRenderbufferStorageEXT := dglGetProcAddress('glRenderbufferStorageEXT'); + glGetRenderbufferParameterivEXT := dglGetProcAddress('glGetRenderbufferParameterivEXT'); + glIsFramebufferEXT := dglGetProcAddress('glIsFramebufferEXT'); + glBindFramebufferEXT := dglGetProcAddress('glBindFramebufferEXT'); + glDeleteFramebuffersEXT := dglGetProcAddress('glDeleteFramebuffersEXT'); + glGenFramebuffersEXT := dglGetProcAddress('glGenFramebuffersEXT'); + glCheckFramebufferStatusEXT := dglGetProcAddress('glCheckFramebufferStatusEXT'); + glFramebufferTexture1DEXT := dglGetProcAddress('glFramebufferTexture1DEXT'); + glFramebufferTexture2DEXT := dglGetProcAddress('glFramebufferTexture2DEXT'); + glFramebufferTexture3DEXT := dglGetProcAddress('glFramebufferTexture3DEXT'); + glFramebufferRenderbufferEXT := dglGetProcAddress('glFramebufferRenderbufferEXT'); + glGetFramebufferAttachmentParameterivEXT := dglGetProcAddress('glGetFramebufferAttachmentParameterivEXT'); + glGenerateMipmapEXT := dglGetProcAddress('glGenerateMipmapEXT'); +end; + +procedure Read_GL_EXT_histogram; +begin + glGetHistogramEXT := dglGetProcAddress('glGetHistogramEXT'); + glGetHistogramParameterfvEXT := dglGetProcAddress('glGetHistogramParameterfvEXT'); + glGetHistogramParameterivEXT := dglGetProcAddress('glGetHistogramParameterivEXT'); + glGetMinmaxEXT := dglGetProcAddress('glGetMinmaxEXT'); + glGetMinmaxParameterfvEXT := dglGetProcAddress('glGetMinmaxParameterfvEXT'); + glGetMinmaxParameterivEXT := dglGetProcAddress('glGetMinmaxParameterivEXT'); + glHistogramEXT := dglGetProcAddress('glHistogramEXT'); + glMinmaxEXT := dglGetProcAddress('glMinmaxEXT'); + glResetHistogramEXT := dglGetProcAddress('glResetHistogramEXT'); + glResetMinmaxEXT := dglGetProcAddress('glResetMinmaxEXT'); +end; + +procedure Read_GL_EXT_index_func; +begin + glIndexFuncEXT := dglGetProcAddress('glIndexFuncEXT'); +end; + +procedure Read_GL_EXT_index_material; +begin + glIndexMaterialEXT := dglGetProcAddress('glIndexMaterialEXT'); +end; + +procedure Read_GL_EXT_light_texture; +begin + glApplyTextureEXT := dglGetProcAddress('glApplyTextureEXT'); + glTextureLightEXT := dglGetProcAddress('glTextureLightEXT'); + glTextureMaterialEXT := dglGetProcAddress('glTextureMaterialEXT'); +end; + +procedure Read_GL_EXT_multi_draw_arrays; +begin + glMultiDrawArraysEXT := dglGetProcAddress('glMultiDrawArraysEXT'); + glMultiDrawElementsEXT := dglGetProcAddress('glMultiDrawElementsEXT'); +end; + +procedure Read_GL_EXT_multisample; +begin + glSampleMaskEXT := dglGetProcAddress('glSampleMaskEXT'); + glSamplePatternEXT := dglGetProcAddress('glSamplePatternEXT'); +end; + +procedure Read_GL_EXT_paletted_texture; +begin + glColorTableEXT := dglGetProcAddress('glColorTableEXT'); + glGetColorTableEXT := dglGetProcAddress('glGetColorTableEXT'); + glGetColorTableParameterivEXT := dglGetProcAddress('glGetColorTableParameterivEXT'); + glGetColorTableParameterfvEXT := dglGetProcAddress('glGetColorTableParameterfvEXT'); +end; + +procedure Read_GL_EXT_pixel_transform; +begin + glPixelTransformParameteriEXT := dglGetProcAddress('glPixelTransformParameteriEXT'); + glPixelTransformParameterfEXT := dglGetProcAddress('glPixelTransformParameterfEXT'); + glPixelTransformParameterivEXT := dglGetProcAddress('glPixelTransformParameterivEXT'); + glPixelTransformParameterfvEXT := dglGetProcAddress('glPixelTransformParameterfvEXT'); +end; + +procedure Read_GL_EXT_point_parameters; +begin + glPointParameterfEXT := dglGetProcAddress('glPointParameterfEXT'); + glPointParameterfvEXT := dglGetProcAddress('glPointParameterfvEXT'); +end; + +procedure Read_GL_EXT_polygon_offset; +begin + glPolygonOffsetEXT := dglGetProcAddress('glPolygonOffsetEXT'); +end; + +procedure Read_GL_EXT_secondary_color; +begin + glSecondaryColor3bEXT := dglGetProcAddress('glSecondaryColor3bEXT'); + glSecondaryColor3bvEXT := dglGetProcAddress('glSecondaryColor3bvEXT'); + glSecondaryColor3dEXT := dglGetProcAddress('glSecondaryColor3dEXT'); + glSecondaryColor3dvEXT := dglGetProcAddress('glSecondaryColor3dvEXT'); + glSecondaryColor3fEXT := dglGetProcAddress('glSecondaryColor3fEXT'); + glSecondaryColor3fvEXT := dglGetProcAddress('glSecondaryColor3fvEXT'); + glSecondaryColor3iEXT := dglGetProcAddress('glSecondaryColor3iEXT'); + glSecondaryColor3ivEXT := dglGetProcAddress('glSecondaryColor3ivEXT'); + glSecondaryColor3sEXT := dglGetProcAddress('glSecondaryColor3sEXT'); + glSecondaryColor3svEXT := dglGetProcAddress('glSecondaryColor3svEXT'); + glSecondaryColor3ubEXT := dglGetProcAddress('glSecondaryColor3ubEXT'); + glSecondaryColor3ubvEXT := dglGetProcAddress('glSecondaryColor3ubvEXT'); + glSecondaryColor3uiEXT := dglGetProcAddress('glSecondaryColor3uiEXT'); + glSecondaryColor3uivEXT := dglGetProcAddress('glSecondaryColor3uivEXT'); + glSecondaryColor3usEXT := dglGetProcAddress('glSecondaryColor3usEXT'); + glSecondaryColor3usvEXT := dglGetProcAddress('glSecondaryColor3usvEXT'); + glSecondaryColorPointerEXT := dglGetProcAddress('glSecondaryColorPointerEXT'); +end; + +procedure Read_GL_EXT_stencil_two_side; +begin + glActiveStencilFaceEXT := dglGetProcAddress('glActiveStencilFaceEXT'); +end; + +procedure Read_GL_EXT_subtexture; +begin + glTexSubImage1DEXT := dglGetProcAddress('glTexSubImage1DEXT'); + glTexSubImage2DEXT := dglGetProcAddress('glTexSubImage2DEXT'); +end; + +procedure Read_GL_EXT_texture3D; +begin + glTexImage3DEXT := dglGetProcAddress('glTexImage3DEXT'); + glTexSubImage3DEXT := dglGetProcAddress('glTexSubImage3DEXT'); +end; + +procedure Read_GL_EXT_texture_object; +begin + glAreTexturesResidentEXT := dglGetProcAddress('glAreTexturesResidentEXT'); + glBindTextureEXT := dglGetProcAddress('glBindTextureEXT'); + glDeleteTexturesEXT := dglGetProcAddress('glDeleteTexturesEXT'); + glGenTexturesEXT := dglGetProcAddress('glGenTexturesEXT'); + glIsTextureEXT := dglGetProcAddress('glIsTextureEXT'); + glPrioritizeTexturesEXT := dglGetProcAddress('glPrioritizeTexturesEXT'); +end; + +procedure Read_GL_EXT_texture_perturb_normal; +begin + glTextureNormalEXT := dglGetProcAddress('glTextureNormalEXT'); +end; + +procedure Read_GL_EXT_vertex_array; +begin + glArrayElementEXT := dglGetProcAddress('glArrayElementEXT'); + glColorPointerEXT := dglGetProcAddress('glColorPointerEXT'); + glDrawArraysEXT := dglGetProcAddress('glDrawArraysEXT'); + glEdgeFlagPointerEXT := dglGetProcAddress('glEdgeFlagPointerEXT'); + glGetPointervEXT := dglGetProcAddress('glGetPointervEXT'); + glIndexPointerEXT := dglGetProcAddress('glIndexPointerEXT'); + glNormalPointerEXT := dglGetProcAddress('glNormalPointerEXT'); + glTexCoordPointerEXT := dglGetProcAddress('glTexCoordPointerEXT'); + glVertexPointerEXT := dglGetProcAddress('glVertexPointerEXT'); +end; + +procedure Read_GL_EXT_vertex_shader; +begin + glBeginVertexShaderEXT := dglGetProcAddress('glBeginVertexShaderEXT'); + glEndVertexShaderEXT := dglGetProcAddress('glEndVertexShaderEXT'); + glBindVertexShaderEXT := dglGetProcAddress('glBindVertexShaderEXT'); + glGenVertexShadersEXT := dglGetProcAddress('glGenVertexShadersEXT'); + glDeleteVertexShaderEXT := dglGetProcAddress('glDeleteVertexShaderEXT'); + glShaderOp1EXT := dglGetProcAddress('glShaderOp1EXT'); + glShaderOp2EXT := dglGetProcAddress('glShaderOp2EXT'); + glShaderOp3EXT := dglGetProcAddress('glShaderOp3EXT'); + glSwizzleEXT := dglGetProcAddress('glSwizzleEXT'); + glWriteMaskEXT := dglGetProcAddress('glWriteMaskEXT'); + glInsertComponentEXT := dglGetProcAddress('glInsertComponentEXT'); + glExtractComponentEXT := dglGetProcAddress('glExtractComponentEXT'); + glGenSymbolsEXT := dglGetProcAddress('glGenSymbolsEXT'); + glSetInvariantEXT := dglGetProcAddress('glSetInvariantEXT'); + glSetLocalConstantEXT := dglGetProcAddress('glSetLocalConstantEXT'); + glVariantbvEXT := dglGetProcAddress('glVariantbvEXT'); + glVariantsvEXT := dglGetProcAddress('glVariantsvEXT'); + glVariantivEXT := dglGetProcAddress('glVariantivEXT'); + glVariantfvEXT := dglGetProcAddress('glVariantfvEXT'); + glVariantdvEXT := dglGetProcAddress('glVariantdvEXT'); + glVariantubvEXT := dglGetProcAddress('glVariantubvEXT'); + glVariantusvEXT := dglGetProcAddress('glVariantusvEXT'); + glVariantuivEXT := dglGetProcAddress('glVariantuivEXT'); + glVariantPointerEXT := dglGetProcAddress('glVariantPointerEXT'); + glEnableVariantClientStateEXT := dglGetProcAddress('glEnableVariantClientStateEXT'); + glDisableVariantClientStateEXT := dglGetProcAddress('glDisableVariantClientStateEXT'); + glBindLightParameterEXT := dglGetProcAddress('glBindLightParameterEXT'); + glBindMaterialParameterEXT := dglGetProcAddress('glBindMaterialParameterEXT'); + glBindTexGenParameterEXT := dglGetProcAddress('glBindTexGenParameterEXT'); + glBindTextureUnitParameterEXT := dglGetProcAddress('glBindTextureUnitParameterEXT'); + glBindParameterEXT := dglGetProcAddress('glBindParameterEXT'); + glIsVariantEnabledEXT := dglGetProcAddress('glIsVariantEnabledEXT'); + glGetVariantBooleanvEXT := dglGetProcAddress('glGetVariantBooleanvEXT'); + glGetVariantIntegervEXT := dglGetProcAddress('glGetVariantIntegervEXT'); + glGetVariantFloatvEXT := dglGetProcAddress('glGetVariantFloatvEXT'); + glGetVariantPointervEXT := dglGetProcAddress('glGetVariantPointervEXT'); + glGetInvariantBooleanvEXT := dglGetProcAddress('glGetInvariantBooleanvEXT'); + glGetInvariantIntegervEXT := dglGetProcAddress('glGetInvariantIntegervEXT'); + glGetInvariantFloatvEXT := dglGetProcAddress('glGetInvariantFloatvEXT'); + glGetLocalConstantBooleanvEXT := dglGetProcAddress('glGetLocalConstantBooleanvEXT'); + glGetLocalConstantIntegervEXT := dglGetProcAddress('glGetLocalConstantIntegervEXT'); + glGetLocalConstantFloatvEXT := dglGetProcAddress('glGetLocalConstantFloatvEXT'); +end; + +procedure Read_GL_EXT_vertex_weighting; +begin + glVertexWeightfEXT := dglGetProcAddress('glVertexWeightfEXT'); + glVertexWeightfvEXT := dglGetProcAddress('glVertexWeightfvEXT'); + glVertexWeightPointerEXT := dglGetProcAddress('glVertexWeightPointerEXT'); +end; + +procedure Read_GL_EXT_depth_bounds_test; +begin + glImageTransformParameteriHP := dglGetProcAddress('glImageTransformParameteriHP'); + glDepthBoundsEXT := dglGetProcAddress('glDepthBoundsEXT'); +end; + +procedure Read_GL_EXT_blend_equation_separate; +begin + glBlendEquationSeparateEXT := dglGetProcAddress('glBlendEquationSeparateEXT'); +end; + +procedure Read_GL_EXT_stencil_clear_tag; +begin + glStencilClearTagEXT := dglGetProcAddress('glStencilClearTagEXT'); +end; + +procedure Read_GL_EXT_framebuffer_blit; +begin + glBlitFramebufferEXT := dglGetProcAddress('glBlitFramebufferEXT'); +end; + +procedure Read_GL_EXT_framebuffer_multisample; +begin + glRenderbufferStorageMultisampleEXT := dglGetProcAddress('glRenderbufferStorageMultisampleEXT'); +end; + +procedure Read_GL_EXT_timer_query; +begin + glGetQueryObjecti64vEXT := dglGetProcAddress('glGetQueryObjecti64vEXT'); + glGetQueryObjectui64vEXT := dglGetProcAddress('glGetQueryObjectui64vEXT'); +end; + +procedure Read_GL_EXT_gpu_program_parameters; +begin + glProgramEnvParameters4fvEXT := dglGetProcAddress('glProgramEnvParameters4fvEXT'); + glProgramLocalParameters4fvEXT := dglGetProcAddress('glProgramLocalParameters4fvEXT'); +end; + +procedure Read_GL_EXT_bindable_uniform; +begin + glUniformBufferEXT := dglGetProcAddress('glUniformBufferEXT'); + glGetUniformBufferSizeEXT := dglGetProcAddress('glGetUniformBufferSizeEXT'); + glGetUniformOffsetEXT := dglGetProcAddress('glGetUniformOffsetEXT'); +end; + +procedure Read_GL_EXT_draw_buffers2; +begin + glColorMaskIndexedEXT := dglGetProcAddress('glColorMaskIndexedEXT'); + glGetBooleanIndexedvEXT := dglGetProcAddress('glGetBooleanIndexedvEXT'); + glGetIntegerIndexedvEXT := dglGetProcAddress('glGetIntegerIndexedvEXT'); + glEnableIndexedEXT := dglGetProcAddress('glEnableIndexedEXT'); + glDisableIndexedEXT := dglGetProcAddress('glDisableIndexedEXT'); + glIsEnabledIndexedEXT := dglGetProcAddress('glIsEnabledIndexedEXT'); +end; + +procedure Read_GL_EXT_draw_instanced; +begin + glDrawArraysInstancedEXT := dglGetProcAddress('glDrawArraysInstancedEXT'); + glDrawElementsInstancedEXT := dglGetProcAddress('glDrawElementsInstancedEXT'); +end; + +procedure Read_GL_EXT_geometry_shader4; +begin + glProgramParameteriEXT := dglGetProcAddress('glProgramParameteriEXT'); + glFramebufferTextureEXT := dglGetProcAddress('glFramebufferTextureEXT'); +// glFramebufferTextureLayerEXT := dglGetProcAddress('glFramebufferTextureLayerEXT'); + glFramebufferTextureFaceEXT := dglGetProcAddress('glFramebufferTextureFaceEXT'); +end; + +procedure Read_GL_EXT_gpu_shader4; +begin + glVertexAttribI1iEXT := dglGetProcAddress('glVertexAttribI1iEXT'); + glVertexAttribI2iEXT := dglGetProcAddress('glVertexAttribI2iEXT'); + glVertexAttribI3iEXT := dglGetProcAddress('glVertexAttribI3iEXT'); + glVertexAttribI4iEXT := dglGetProcAddress('glVertexAttribI4iEXT'); + glVertexAttribI1uiEXT := dglGetProcAddress('glVertexAttribI1uiEXT'); + glVertexAttribI2uiEXT := dglGetProcAddress('glVertexAttribI2uiEXT'); + glVertexAttribI3uiEXT := dglGetProcAddress('glVertexAttribI3uiEXT'); + glVertexAttribI4uiEXT := dglGetProcAddress('glVertexAttribI4uiEXT'); + glVertexAttribI1ivEXT := dglGetProcAddress('glVertexAttribI1ivEXT'); + glVertexAttribI2ivEXT := dglGetProcAddress('glVertexAttribI2ivEXT'); + glVertexAttribI3ivEXT := dglGetProcAddress('glVertexAttribI3ivEXT'); + glVertexAttribI4ivEXT := dglGetProcAddress('glVertexAttribI4ivEXT'); + glVertexAttribI1uivEXT := dglGetProcAddress('glVertexAttribI1uivEXT'); + glVertexAttribI2uivEXT := dglGetProcAddress('glVertexAttribI2uivEXT'); + glVertexAttribI3uivEXT := dglGetProcAddress('glVertexAttribI3uivEXT'); + glVertexAttribI4uivEXT := dglGetProcAddress('glVertexAttribI4uivEXT'); + glVertexAttribI4bvEXT := dglGetProcAddress('glVertexAttribI4bvEXT'); + glVertexAttribI4svEXT := dglGetProcAddress('glVertexAttribI4svEXT'); + glVertexAttribI4ubvEXT := dglGetProcAddress('glVertexAttribI4ubvEXT'); + glVertexAttribI4usvEXT := dglGetProcAddress('glVertexAttribI4usvEXT'); + glVertexAttribIPointerEXT := dglGetProcAddress('glVertexAttribIPointerEXT'); + glGetVertexAttribIivEXT := dglGetProcAddress('glGetVertexAttribIivEXT'); + glGetVertexAttribIuivEXT := dglGetProcAddress('glGetVertexAttribIuivEXT'); + glUniform1uiEXT := dglGetProcAddress('glUniform1uiEXT'); + glUniform2uiEXT := dglGetProcAddress('glUniform2uiEXT'); + glUniform3uiEXT := dglGetProcAddress('glUniform3uiEXT'); + glUniform4uiEXT := dglGetProcAddress('glUniform4uiEXT'); + glUniform1uivEXT := dglGetProcAddress('glUniform1uivEXT'); + glUniform2uivEXT := dglGetProcAddress('glUniform2uivEXT'); + glUniform3uivEXT := dglGetProcAddress('glUniform3uivEXT'); + glUniform4uivEXT := dglGetProcAddress('glUniform4uivEXT'); + glGetUniformuivEXT := dglGetProcAddress('glGetUniformuivEXT'); + glBindFragDataLocationEXT := dglGetProcAddress('glBindFragDataLocationEXT'); + glGetFragDataLocationEXT := dglGetProcAddress('glGetFragDataLocationEXT'); +end; + +procedure Read_GL_EXT_texture_array; +begin + glFramebufferTextureLayerEXT := dglGetProcAddress('glFramebufferTextureLayerEXT'); +end; + +procedure Read_GL_EXT_texture_buffer_object; +begin + glTexBufferEXT := dglGetProcAddress('glTexBufferEXT'); +end; + +procedure Read_GL_EXT_texture_integer; +begin + glClearColorIiEXT := dglGetProcAddress('glClearColorIiEXT'); + glClearColorIuiEXT := dglGetProcAddress('glClearColorIuiEXT'); + glTexParameterIivEXT := dglGetProcAddress('glTexParameterIivEXT'); + glTexParameterIuivEXT := dglGetProcAddress('glTexParameterIuivEXT'); + glGetTexParameterIivEXT := dglGetProcAddress('glGetTexParameterIivEXT'); + glGetTexParameterIiuvEXT := dglGetProcAddress('glGetTexParameterIiuvEXT'); +end; + +procedure Read_GL_EXT_transform_feedback; +begin + glBeginTransformFeedbackEXT := dglGetProcAddress('lBeginTransformFeedbackEXT'); + glEndTransformFeedbackEXT := dglGetProcAddress('glEndTransformFeedbackEXT'); + glBindBufferRangeEXT := dglGetProcAddress('glBindBufferRangeEXT'); + glBindBufferOffsetEXT := dglGetProcAddress('glBindBufferOffsetEXT'); + glBindBufferBaseEXT := dglGetProcAddress('glBindBufferBaseEXT'); + glTransformFeedbackVaryingsEXT := dglGetProcAddress('glTransformFeedbackVaryingsEXT'); + glGetTransformFeedbackVaryingEXT := dglGetProcAddress('glGetTransformFeedbackVaryingEXT'); +end; + +procedure Read_GL_EXT_direct_state_access; +begin + glClientAttribDefaultEXT := dglGetProcAddress('glClientAttribDefaultEXT'); + glPushClientAttribDefaultEXT := dglGetProcAddress('glPushClientAttribDefaultEXT'); + glMatrixLoadfEXT := dglGetProcAddress('glMatrixLoadfEXT'); + glMatrixLoaddEXT := dglGetProcAddress('glMatrixLoaddEXT'); + glMatrixMultfEXT := dglGetProcAddress('glMatrixMultfEXT'); + glMatrixMultdEXT := dglGetProcAddress('glMatrixMultdEXT'); + glMatrixLoadIdentityEXT := dglGetProcAddress('glMatrixLoadIdentityEXT'); + glMatrixRotatefEXT := dglGetProcAddress('glMatrixRotatefEXT'); + glMatrixRotatedEXT := dglGetProcAddress('glMatrixRotatedEXT'); + glMatrixScalefEXT := dglGetProcAddress('glMatrixScalefEXT'); + glMatrixScaledEXT := dglGetProcAddress('glMatrixScaledEXT'); + glMatrixTranslatefEXT := dglGetProcAddress('glMatrixTranslatefEXT'); + glMatrixTranslatedEXT := dglGetProcAddress('glMatrixTranslatedEXT'); + glMatrixFrustumEXT := dglGetProcAddress('glMatrixFrustumEXT'); + glMatrixOrthoEXT := dglGetProcAddress('glMatrixOrthoEXT'); + glMatrixPopEXT := dglGetProcAddress('glMatrixPopEXT'); + glMatrixPushEXT := dglGetProcAddress('glMatrixPushEXT'); + glMatrixLoadTransposefEXT := dglGetProcAddress('glMatrixLoadTransposefEXT'); + glMatrixLoadTransposedEXT := dglGetProcAddress('glMatrixLoadTransposedEXT'); + glMatrixMultTransposefEXT := dglGetProcAddress('glMatrixMultTransposefEXT'); + glMatrixMultTransposedEXT := dglGetProcAddress('glMatrixMultTransposedEXT'); + glTextureParameterfEXT := dglGetProcAddress('glTextureParameterfEXT'); + glTextureParameterfvEXT := dglGetProcAddress('glTextureParameterfvEXT'); + glTextureParameteriEXT := dglGetProcAddress('glTextureParameteriEXT'); + glTextureParameterivEXT := dglGetProcAddress('glTextureParameterivEXT'); + glTextureImage1DEXT := dglGetProcAddress('glTextureImage1DEXT'); + glTextureImage2DEXT := dglGetProcAddress('glTextureImage2DEXT'); + glTextureSubImage1DEXT := dglGetProcAddress('glTextureSubImage1DEXT'); + glTextureSubImage2DEXT := dglGetProcAddress('glTextureSubImage2DEXT'); + glCopyTextureImage1DEXT := dglGetProcAddress('glCopyTextureImage1DEXT'); + glCopyTextureImage2DEXT := dglGetProcAddress('glCopyTextureImage2DEXT'); + glCopyTextureSubImage1DEXT := dglGetProcAddress('glCopyTextureSubImage1DEXT'); + glCopyTextureSubImage2DEXT := dglGetProcAddress('glCopyTextureSubImage2DEXT'); + glGetTextureImageEXT := dglGetProcAddress('glGetTextureImageEXT'); + glGetTextureParameterfvEXT := dglGetProcAddress('glGetTextureParameterfvEXT'); + glGetTextureParameterivEXT := dglGetProcAddress('glGetTextureParameterivEXT'); + glGetTextureLevelParameterfvEXT := dglGetProcAddress('glGetTextureLevelParameterfvEXT'); + glGetTextureLevelParameterivEXT := dglGetProcAddress('glGetTextureLevelParameterivEXT'); + glTextureImage3DEXT := dglGetProcAddress('glTextureImage3DEXT'); + glTextureSubImage3DEXT := dglGetProcAddress('glTextureSubImage3DEXT'); + glCopyTextureSubImage3DEXT := dglGetProcAddress('glCopyTextureSubImage3DEXT'); + glMultiTexParameterfEXT := dglGetProcAddress('glMultiTexParameterfEXT'); + glMultiTexParameterfvEXT := dglGetProcAddress('glMultiTexParameterfvEXT'); + glMultiTexParameteriEXT := dglGetProcAddress('glMultiTexParameteriEXT'); + glMultiTexParameterivEXT := dglGetProcAddress('glMultiTexParameterivEXT'); + glMultiTexImage1DEXT := dglGetProcAddress('glMultiTexImage1DEXT'); + glMultiTexImage2DEXT := dglGetProcAddress('glMultiTexImage2DEXT'); + glMultiTexSubImage1DEXT := dglGetProcAddress('glMultiTexSubImage1DEXT'); + glMultiTexSubImage2DEXT := dglGetProcAddress('glMultiTexSubImage2DEXT'); + glCopyMultiTexImage1DEXT := dglGetProcAddress('glCopyMultiTexImage1DEXT'); + glCopyMultiTexImage2DEXT := dglGetProcAddress('glCopyMultiTexImage2DEXT'); + glCopyMultiTexSubImage1DEXT := dglGetProcAddress('glCopyMultiTexSubImage1DEXT'); + glCopyMultiTexSubImage2DEXT := dglGetProcAddress('glCopyMultiTexSubImage2DEXT'); + glGetMultiTexImageEXT := dglGetProcAddress('glGetMultiTexImageEXT'); + glGetMultiTexParameterfvEXT := dglGetProcAddress('glGetMultiTexParameterfvEXT'); + glGetMultiTexParameterivEXT := dglGetProcAddress('glGetMultiTexParameterivEXT'); + glGetMultiTexLevelParameterfvEXT := dglGetProcAddress('glGetMultiTexLevelParameterfvEXT'); + glGetMultiTexLevelParameterivEXT := dglGetProcAddress('glGetMultiTexLevelParameterivEXT'); + glMultiTexImage3DEXT := dglGetProcAddress('glMultiTexImage3DEXT'); + glMultiTexSubImage3DEXT := dglGetProcAddress('glMultiTexSubImage3DEXT'); + glCopyMultiTexSubImage3DEXT := dglGetProcAddress('glCopyMultiTexSubImage3DEXT'); + glBindMultiTextureEXT := dglGetProcAddress('glBindMultiTextureEXT'); + glEnableClientStateIndexedEXT := dglGetProcAddress('glEnableClientStateIndexedEXT'); + glDisableClientStateIndexedEXT := dglGetProcAddress('glDisableClientStateIndexedEXT'); + glMultiTexCoordPointerEXT := dglGetProcAddress('glMultiTexCoordPointerEXT'); + glMultiTexEnvfEXT := dglGetProcAddress('glMultiTexEnvfEXT'); + glMultiTexEnvfvEXT := dglGetProcAddress('glMultiTexEnvfvEXT'); + glMultiTexEnviEXT := dglGetProcAddress('glMultiTexEnviEXT'); + glMultiTexEnvivEXT := dglGetProcAddress('glMultiTexEnvivEXT'); + glMultiTexGendEXT := dglGetProcAddress('glMultiTexGendEXT'); + glMultiTexGendvEXT := dglGetProcAddress('glMultiTexGendvEXT'); + glMultiTexGenfEXT := dglGetProcAddress('glMultiTexGenfEXT'); + glMultiTexGenfvEXT := dglGetProcAddress('glMultiTexGenfvEXT'); + glMultiTexGeniEXT := dglGetProcAddress('glMultiTexGeniEXT'); + glMultiTexGenivEXT := dglGetProcAddress('glMultiTexGenivEXT'); + glGetMultiTexEnvfvEXT := dglGetProcAddress('glGetMultiTexEnvfvEXT'); + glGetMultiTexEnvivEXT := dglGetProcAddress('glGetMultiTexEnvivEXT'); + glGetMultiTexGendvEXT := dglGetProcAddress('glGetMultiTexGendvEXT'); + glGetMultiTexGenfvEXT := dglGetProcAddress('glGetMultiTexGenfvEXT'); + glGetMultiTexGenivEXT := dglGetProcAddress('glGetMultiTexGenivEXT'); + glGetFloatIndexedvEXT := dglGetProcAddress('glGetFloatIndexedvEXT'); + glGetDoubleIndexedvEXT := dglGetProcAddress('glGetDoubleIndexedvEXT'); + glGetPointerIndexedvEXT := dglGetProcAddress('glGetPointerIndexedvEXT'); + glCompressedTextureImage3DEXT := dglGetProcAddress('glCompressedTextureImage3DEXT'); + glCompressedTextureImage2DEXT := dglGetProcAddress('glCompressedTextureImage2DEXT'); + glCompressedTextureImage1DEXT := dglGetProcAddress('glCompressedTextureImage1DEXT'); + glCompressedTextureSubImage3DEXT := dglGetProcAddress('glCompressedTextureSubImage3DEXT'); + glCompressedTextureSubImage2DEXT := dglGetProcAddress('glCompressedTextureSubImage2DEXT'); + glCompressedTextureSubImage1DEXT := dglGetProcAddress('glCompressedTextureSubImage1DEXT'); + glGetCompressedTextureImageEXT := dglGetProcAddress('glGetCompressedTextureImageEXT'); + glCompressedMultiTexImage3DEXT := dglGetProcAddress('glCompressedMultiTexImage3DEXT'); + glCompressedMultiTexImage2DEXT := dglGetProcAddress('glCompressedMultiTexImage2DEXT'); + glCompressedMultiTexImage1DEXT := dglGetProcAddress('glCompressedMultiTexImage1DEXT'); + glCompressedMultiTexSubImage3DEXT := dglGetProcAddress('glCompressedMultiTexSubImage3DEXT'); + glCompressedMultiTexSubImage2DEXT := dglGetProcAddress('glCompressedMultiTexSubImage2DEXT'); + glCompressedMultiTexSubImage1DEXT := dglGetProcAddress('glCompressedMultiTexSubImage1DEXT'); + glGetCompressedMultiTexImageEXT := dglGetProcAddress('glGetCompressedMultiTexImageEXT'); + glNamedProgramStringEXT := dglGetProcAddress('glNamedProgramStringEXT'); + glNamedProgramLocalParameter4dEXT := dglGetProcAddress('glNamedProgramLocalParameter4dEXT'); + glNamedProgramLocalParameter4dvEXT := dglGetProcAddress('glNamedProgramLocalParameter4dvEXT'); + glNamedProgramLocalParameter4fEXT := dglGetProcAddress('glNamedProgramLocalParameter4fEXT'); + glNamedProgramLocalParameter4fvEXT := dglGetProcAddress('glNamedProgramLocalParameter4fvEXT'); + glGetNamedProgramLocalParameterdvEXT := dglGetProcAddress('glGetNamedProgramLocalParameterdvEXT'); + glGetNamedProgramLocalParameterfvEXT := dglGetProcAddress('glGetNamedProgramLocalParameterfvEXT'); + glGetNamedProgramivEXT := dglGetProcAddress('glGetNamedProgramivEXT'); + glGetNamedProgramStringEXT := dglGetProcAddress('glGetNamedProgramStringEXT'); + glNamedProgramLocalParameters4fvEXT := dglGetProcAddress('glNamedProgramLocalParameters4fvEXT'); + glNamedProgramLocalParameterI4iEXT := dglGetProcAddress('glNamedProgramLocalParameterI4iEXT'); + glNamedProgramLocalParameterI4ivEXT := dglGetProcAddress('glNamedProgramLocalParameterI4ivEXT'); + glNamedProgramLocalParametersI4ivEXT := dglGetProcAddress('glNamedProgramLocalParametersI4ivEXT'); + glNamedProgramLocalParameterI4uiEXT := dglGetProcAddress('glNamedProgramLocalParameterI4uiEXT'); + glNamedProgramLocalParameterI4uivEXT := dglGetProcAddress('glNamedProgramLocalParameterI4uivEXT'); + glNamedProgramLocalParametersI4uivEXT := dglGetProcAddress('glNamedProgramLocalParametersI4uivEXT'); + glGetNamedProgramLocalParameterIivEXT := dglGetProcAddress('glGetNamedProgramLocalParameterIivEXT'); + glGetNamedProgramLocalParameterIuivEXT := dglGetProcAddress('glGetNamedProgramLocalParameterIuivEXT'); + glTextureParameterIivEXT := dglGetProcAddress('glTextureParameterIivEXT'); + glTextureParameterIuivEXT := dglGetProcAddress('glTextureParameterIuivEXT'); + glGetTextureParameterIivEXT := dglGetProcAddress('glGetTextureParameterIivEXT'); + glGetTextureParameterIuivEXT := dglGetProcAddress('glGetTextureParameterIuivEXT'); + glMultiTexParameterIivEXT := dglGetProcAddress('glMultiTexParameterIivEXT'); + glMultiTexParameterIuivEXT := dglGetProcAddress('glMultiTexParameterIuivEXT'); + glGetMultiTexParameterIivEXT := dglGetProcAddress('glGetMultiTexParameterIivEXT'); + glGetMultiTexParameterIuivEXT := dglGetProcAddress('glGetMultiTexParameterIuivEXT'); + glProgramUniform1fEXT := dglGetProcAddress('glProgramUniform1fEXT'); + glProgramUniform2fEXT := dglGetProcAddress('glProgramUniform2fEXT'); + glProgramUniform3fEXT := dglGetProcAddress('glProgramUniform3fEXT'); + glProgramUniform4fEXT := dglGetProcAddress('glProgramUniform4fEXT'); + glProgramUniform1iEXT := dglGetProcAddress('glProgramUniform1iEXT'); + glProgramUniform2iEXT := dglGetProcAddress('glProgramUniform2iEXT'); + glProgramUniform3iEXT := dglGetProcAddress('glProgramUniform3iEXT'); + glProgramUniform4iEXT := dglGetProcAddress('glProgramUniform4iEXT'); + glProgramUniform1fvEXT := dglGetProcAddress('glProgramUniform1fvEXT'); + glProgramUniform2fvEXT := dglGetProcAddress('glProgramUniform2fvEXT'); + glProgramUniform3fvEXT := dglGetProcAddress('glProgramUniform3fvEXT'); + glProgramUniform4fvEXT := dglGetProcAddress('glProgramUniform4fvEXT'); + glProgramUniform1ivEXT := dglGetProcAddress('glProgramUniform1ivEXT'); + glProgramUniform2ivEXT := dglGetProcAddress('glProgramUniform2ivEXT'); + glProgramUniform3ivEXT := dglGetProcAddress('glProgramUniform3ivEXT'); + glProgramUniform4ivEXT := dglGetProcAddress('glProgramUniform4ivEXT'); + glProgramUniformMatrix2fvEXT := dglGetProcAddress('glProgramUniformMatrix2fvEXT'); + glProgramUniformMatrix3fvEXT := dglGetProcAddress('glProgramUniformMatrix3fvEXT'); + glProgramUniformMatrix4fvEXT := dglGetProcAddress('glProgramUniformMatrix4fvEXT'); + glProgramUniformMatrix2x3fvEXT := dglGetProcAddress('glProgramUniformMatrix2x3fvEXT'); + glProgramUniformMatrix3x2fvEXT := dglGetProcAddress('glProgramUniformMatrix3x2fvEXT'); + glProgramUniformMatrix2x4fvEXT := dglGetProcAddress('glProgramUniformMatrix2x4fvEXT'); + glProgramUniformMatrix4x2fvEXT := dglGetProcAddress('glProgramUniformMatrix4x2fvEXT'); + glProgramUniformMatrix3x4fvEXT := dglGetProcAddress('glProgramUniformMatrix3x4fvEXT'); + glProgramUniformMatrix4x3fvEXT := dglGetProcAddress('glProgramUniformMatrix4x3fvEXT'); + glProgramUniform1uiEXT := dglGetProcAddress('glProgramUniform1uiEXT'); + glProgramUniform2uiEXT := dglGetProcAddress('glProgramUniform2uiEXT'); + glProgramUniform3uiEXT := dglGetProcAddress('glProgramUniform3uiEXT'); + glProgramUniform4uiEXT := dglGetProcAddress('glProgramUniform4uiEXT'); + glProgramUniform1uivEXT := dglGetProcAddress('glProgramUniform1uivEXT'); + glProgramUniform2uivEXT := dglGetProcAddress('glProgramUniform2uivEXT'); + glProgramUniform3uivEXT := dglGetProcAddress('glProgramUniform3uivEXT'); + glProgramUniform4uivEXT := dglGetProcAddress('glProgramUniform4uivEXT'); + glNamedBufferDataEXT := dglGetProcAddress('glNamedBufferDataEXT'); + glNamedBufferSubDataEXT := dglGetProcAddress('glNamedBufferSubDataEXT'); + glMapNamedBufferEXT := dglGetProcAddress('glMapNamedBufferEXT'); + glUnmapNamedBufferEXT := dglGetProcAddress('glUnmapNamedBufferEXT'); + glMapNamedBufferRangeEXT := dglGetProcAddress('glMapNamedBufferRangeEXT'); + glFlushMappedNamedBufferRangeEXT := dglGetProcAddress('glFlushMappedNamedBufferRangeEXT'); + glNamedCopyBufferSubDataEXT := dglGetProcAddress('glNamedCopyBufferSubDataEXT'); + glGetNamedBufferParameterivEXT := dglGetProcAddress('glGetNamedBufferParameterivEXT'); + glGetNamedBufferPointervEXT := dglGetProcAddress('glGetNamedBufferPointervEXT'); + glGetNamedBufferSubDataEXT := dglGetProcAddress('glGetNamedBufferSubDataEXT'); + glTextureBufferEXT := dglGetProcAddress('glTextureBufferEXT'); + glMultiTexBufferEXT := dglGetProcAddress('glMultiTexBufferEXT'); + glNamedRenderbufferStorageEXT := dglGetProcAddress('glNamedRenderbufferStorageEXT'); + glGetNamedRenderbufferParameterivEXT := dglGetProcAddress('glGetNamedRenderbufferParameterivEXT'); + glCheckNamedFramebufferStatusEXT := dglGetProcAddress('glCheckNamedFramebufferStatusEXT'); + glNamedFramebufferTexture1DEXT := dglGetProcAddress('glNamedFramebufferTexture1DEXT'); + glNamedFramebufferTexture2DEXT := dglGetProcAddress('glNamedFramebufferTexture2DEXT'); + glNamedFramebufferTexture3DEXT := dglGetProcAddress('glNamedFramebufferTexture3DEXT'); + glNamedFramebufferRenderbufferEXT := dglGetProcAddress('glNamedFramebufferRenderbufferEXT'); + glGetNamedFramebufferAttachmentParameterivEXT := dglGetProcAddress('glGetNamedFramebufferAttachmentParameterivEXT'); + glGenerateTextureMipmapEXT := dglGetProcAddress('glGenerateTextureMipmapEXT'); + glGenerateMultiTexMipmapEXT := dglGetProcAddress('glGenerateMultiTexMipmapEXT'); + glFramebufferDrawBufferEXT := dglGetProcAddress('glFramebufferDrawBufferEXT'); + glFramebufferDrawBuffersEXT := dglGetProcAddress('glFramebufferDrawBuffersEXT'); + glFramebufferReadBufferEXT := dglGetProcAddress('glFramebufferReadBufferEXT'); + glGetFramebufferParameterivEXT := dglGetProcAddress('glGetFramebufferParameterivEXT'); + glNamedRenderbufferStorageMultisampleEXT := dglGetProcAddress('glNamedRenderbufferStorageMultisampleEXT'); + glNamedRenderbufferStorageMultisampleCoverageEXT := dglGetProcAddress('glNamedRenderbufferStorageMultisampleCoverageEXT'); + glNamedFramebufferTextureEXT := dglGetProcAddress('glNamedFramebufferTextureEXT'); + glNamedFramebufferTextureLayerEXT := dglGetProcAddress('glNamedFramebufferTextureLayerEXT'); + glNamedFramebufferTextureFaceEXT := dglGetProcAddress('glNamedFramebufferTextureFaceEXT'); + glTextureRenderbufferEXT := dglGetProcAddress('glTextureRenderbufferEXT'); + glMultiTexRenderbufferEXT := dglGetProcAddress('glMultiTexRenderbufferEXT'); + glProgramUniform1dEXT := dglGetProcAddress('glProgramUniform1dEXT'); + glProgramUniform2dEXT := dglGetProcAddress('glProgramUniform2dEXT'); + glProgramUniform3dEXT := dglGetProcAddress('glProgramUniform3dEXT'); + glProgramUniform4dEXT := dglGetProcAddress('glProgramUniform4dEXT'); + glProgramUniform1dvEXT := dglGetProcAddress('glProgramUniform1dvEXT'); + glProgramUniform2dvEXT := dglGetProcAddress('glProgramUniform2dvEXT'); + glProgramUniform3dvEXT := dglGetProcAddress('glProgramUniform3dvEXT'); + glProgramUniform4dvEXT := dglGetProcAddress('glProgramUniform4dvEXT'); + glProgramUniformMatrix2dvEXT := dglGetProcAddress('glProgramUniformMatrix2dvEXT'); + glProgramUniformMatrix3dvEXT := dglGetProcAddress('glProgramUniformMatrix3dvEXT'); + glProgramUniformMatrix4dvEXT := dglGetProcAddress('glProgramUniformMatrix4dvEXT'); + glProgramUniformMatrix2x3dvEXT := dglGetProcAddress('glProgramUniformMatrix2x3dvEXT'); + glProgramUniformMatrix2x4dvEXT := dglGetProcAddress('glProgramUniformMatrix2x4dvEXT'); + glProgramUniformMatrix3x2dvEXT := dglGetProcAddress('glProgramUniformMatrix3x2dvEXT'); + glProgramUniformMatrix3x4dvEXT := dglGetProcAddress('glProgramUniformMatrix3x4dvEXT'); + glProgramUniformMatrix4x2dvEXT := dglGetProcAddress('glProgramUniformMatrix4x2dvEXT'); + glProgramUniformMatrix4x3dvEXT := dglGetProcAddress('glProgramUniformMatrix4x3dvEXT'); +end; + +procedure Read_GL_EXT_separate_shader_objects; +begin + glUseShaderProgramEXT := dglGetProcAddress('glUseShaderProgramEXT'); + glActiveProgramEXT := dglGetProcAddress('glActiveProgramEXT'); + glCreateShaderProgramEXT := dglGetProcAddress('glCreateShaderProgramEXT'); +end; + +procedure Read_GL_EXT_shader_image_load_store; +begin + glBindImageTextureEXT := dglGetProcAddress('glBindImageTextureEXT'); + glMemoryBarrierEXT := dglGetProcAddress('glMemoryBarrierEXT'); +end; + +procedure Read_GL_EXT_vertex_attrib_64bit; +begin + glVertexAttribL1dEXT := dglGetProcAddress('glVertexAttribL1dEXT'); + glVertexAttribL2dEXT := dglGetProcAddress('glVertexAttribL2dEXT'); + glVertexAttribL3dEXT := dglGetProcAddress('glVertexAttribL3dEXT'); + glVertexAttribL4dEXT := dglGetProcAddress('glVertexAttribL4dEXT'); + glVertexAttribL1dvEXT := dglGetProcAddress('glVertexAttribL1dvEXT'); + glVertexAttribL2dvEXT := dglGetProcAddress('glVertexAttribL2dvEXT'); + glVertexAttribL3dvEXT := dglGetProcAddress('glVertexAttribL3dvEXT'); + glVertexAttribL4dvEXT := dglGetProcAddress('glVertexAttribL4dvEXT'); + glVertexAttribLPointerEXT := dglGetProcAddress('glVertexAttribLPointerEXT'); + glGetVertexAttribLdvEXT := dglGetProcAddress('glGetVertexAttribLdvEXT'); + glVertexArrayVertexAttribLOffsetEXT := dglGetProcAddress('glVertexArrayVertexAttribLOffsetEXT'); +end; + +procedure Read_GL_HP_image_transform; +begin + glImageTransformParameteriHP := dglGetProcAddress('glImageTransformParameteriHP'); + glImageTransformParameterfHP := dglGetProcAddress('glImageTransformParameterfHP'); + glImageTransformParameterivHP := dglGetProcAddress('glImageTransformParameterivHP'); + glImageTransformParameterfvHP := dglGetProcAddress('glImageTransformParameterfvHP'); + glGetImageTransformParameterivHP := dglGetProcAddress('glGetImageTransformParameterivHP'); + glGetImageTransformParameterfvHP := dglGetProcAddress('glGetImageTransformParameterfvHP'); +end; + +procedure Read_GL_IBM_multimode_draw_arrays; +begin + glMultiModeDrawArraysIBM := dglGetProcAddress('glMultiModeDrawArraysIBM'); + glMultiModeDrawElementsIBM := dglGetProcAddress('glMultiModeDrawElementsIBM'); +end; + +procedure Read_GL_IBM_vertex_array_lists; +begin + glColorPointerListIBM := dglGetProcAddress('glColorPointerListIBM'); + glSecondaryColorPointerListIBM := dglGetProcAddress('glSecondaryColorPointerListIBM'); + glEdgeFlagPointerListIBM := dglGetProcAddress('glEdgeFlagPointerListIBM'); + glFogCoordPointerListIBM := dglGetProcAddress('glFogCoordPointerListIBM'); + glIndexPointerListIBM := dglGetProcAddress('glIndexPointerListIBM'); + glNormalPointerListIBM := dglGetProcAddress('glNormalPointerListIBM'); + glTexCoordPointerListIBM := dglGetProcAddress('glTexCoordPointerListIBM'); + glVertexPointerListIBM := dglGetProcAddress('glVertexPointerListIBM'); +end; + +procedure Read_GL_INGR_blend_func_separate; +begin + glBlendFuncSeparateINGR := dglGetProcAddress('glBlendFuncSeparateINGR'); +end; + +procedure Read_GL_INTEL_parallel_arrays; +begin + glVertexPointervINTEL := dglGetProcAddress('glVertexPointervINTEL'); + glNormalPointervINTEL := dglGetProcAddress('glNormalPointervINTEL'); + glColorPointervINTEL := dglGetProcAddress('glColorPointervINTEL'); + glTexCoordPointervINTEL := dglGetProcAddress('glTexCoordPointervINTEL'); +end; + +procedure Read_GL_MESA_resize_buffers; +begin + glResizeBuffersMESA := dglGetProcAddress('glResizeBuffersMESA'); +end; + +procedure Read_GL_MESA_window_pos; +begin + glWindowPos2dMESA := dglGetProcAddress('glWindowPos2dMESA'); + glWindowPos2dvMESA := dglGetProcAddress('glWindowPos2dvMESA'); + glWindowPos2fMESA := dglGetProcAddress('glWindowPos2fMESA'); + glWindowPos2fvMESA := dglGetProcAddress('glWindowPos2fvMESA'); + glWindowPos2iMESA := dglGetProcAddress('glWindowPos2iMESA'); + glWindowPos2ivMESA := dglGetProcAddress('glWindowPos2ivMESA'); + glWindowPos2sMESA := dglGetProcAddress('glWindowPos2sMESA'); + glWindowPos2svMESA := dglGetProcAddress('glWindowPos2svMESA'); + glWindowPos3dMESA := dglGetProcAddress('glWindowPos3dMESA'); + glWindowPos3dvMESA := dglGetProcAddress('glWindowPos3dvMESA'); + glWindowPos3fMESA := dglGetProcAddress('glWindowPos3fMESA'); + glWindowPos3fvMESA := dglGetProcAddress('glWindowPos3fvMESA'); + glWindowPos3iMESA := dglGetProcAddress('glWindowPos3iMESA'); + glWindowPos3ivMESA := dglGetProcAddress('glWindowPos3ivMESA'); + glWindowPos3sMESA := dglGetProcAddress('glWindowPos3sMESA'); + glWindowPos3svMESA := dglGetProcAddress('glWindowPos3svMESA'); + glWindowPos4dMESA := dglGetProcAddress('glWindowPos4dMESA'); + glWindowPos4dvMESA := dglGetProcAddress('glWindowPos4dvMESA'); + glWindowPos4fMESA := dglGetProcAddress('glWindowPos4fMESA'); + glWindowPos4fvMESA := dglGetProcAddress('glWindowPos4fvMESA'); + glWindowPos4iMESA := dglGetProcAddress('glWindowPos4iMESA'); + glWindowPos4ivMESA := dglGetProcAddress('glWindowPos4ivMESA'); + glWindowPos4sMESA := dglGetProcAddress('glWindowPos4sMESA'); + glWindowPos4svMESA := dglGetProcAddress('glWindowPos4svMESA'); +end; + +procedure Read_GL_NV_evaluators; +begin + glMapControlPointsNV := dglGetProcAddress('glMapControlPointsNV'); + glMapParameterivNV := dglGetProcAddress('glMapParameterivNV'); + glMapParameterfvNV := dglGetProcAddress('glMapParameterfvNV'); + glGetMapControlPointsNV := dglGetProcAddress('glGetMapControlPointsNV'); + glGetMapParameterivNV := dglGetProcAddress('glGetMapParameterivNV'); + glGetMapParameterfvNV := dglGetProcAddress('glGetMapParameterfvNV'); + glGetMapAttribParameterivNV := dglGetProcAddress('glGetMapAttribParameterivNV'); + glGetMapAttribParameterfvNV := dglGetProcAddress('glGetMapAttribParameterfvNV'); + glEvalMapsNV := dglGetProcAddress('glEvalMapsNV'); +end; + +procedure Read_GL_NV_fence; +begin + glDeleteFencesNV := dglGetProcAddress('glDeleteFencesNV'); + glGenFencesNV := dglGetProcAddress('glGenFencesNV'); + glIsFenceNV := dglGetProcAddress('glIsFenceNV'); + glTestFenceNV := dglGetProcAddress('glTestFenceNV'); + glGetFenceivNV := dglGetProcAddress('glGetFenceivNV'); + glFinishFenceNV := dglGetProcAddress('glFinishFenceNV'); + glSetFenceNV := dglGetProcAddress('glSetFenceNV'); +end; + +procedure Read_GL_NV_fragment_program; +begin + glProgramNamedParameter4fNV := dglGetProcAddress('glProgramNamedParameter4fNV'); + glProgramNamedParameter4dNV := dglGetProcAddress('glProgramNamedParameter4dNV'); + glProgramNamedParameter4fvNV := dglGetProcAddress('glProgramNamedParameter4fvNV'); + glProgramNamedParameter4dvNV := dglGetProcAddress('glProgramNamedParameter4dvNV'); + glGetProgramNamedParameterfvNV := dglGetProcAddress('glGetProgramNamedParameterfvNV'); + glGetProgramNamedParameterdvNV := dglGetProcAddress('glGetProgramNamedParameterdvNV'); +end; + +procedure Read_GL_NV_half_float; +begin + glVertex2hNV := dglGetProcAddress('glVertex2hNV'); + glVertex2hvNV := dglGetProcAddress('glVertex2hvNV'); + glVertex3hNV := dglGetProcAddress('glVertex3hNV'); + glVertex3hvNV := dglGetProcAddress('glVertex3hvNV'); + glVertex4hNV := dglGetProcAddress('glVertex4hNV'); + glVertex4hvNV := dglGetProcAddress('glVertex4hvNV'); + glNormal3hNV := dglGetProcAddress('glNormal3hNV'); + glNormal3hvNV := dglGetProcAddress('glNormal3hvNV'); + glColor3hNV := dglGetProcAddress('glColor3hNV'); + glColor3hvNV := dglGetProcAddress('glColor3hvNV'); + glColor4hNV := dglGetProcAddress('glColor4hNV'); + glColor4hvNV := dglGetProcAddress('glColor4hvNV'); + glTexCoord1hNV := dglGetProcAddress('glTexCoord1hNV'); + glTexCoord1hvNV := dglGetProcAddress('glTexCoord1hvNV'); + glTexCoord2hNV := dglGetProcAddress('glTexCoord2hNV'); + glTexCoord2hvNV := dglGetProcAddress('glTexCoord2hvNV'); + glTexCoord3hNV := dglGetProcAddress('glTexCoord3hNV'); + glTexCoord3hvNV := dglGetProcAddress('glTexCoord3hvNV'); + glTexCoord4hNV := dglGetProcAddress('glTexCoord4hNV'); + glTexCoord4hvNV := dglGetProcAddress('glTexCoord4hvNV'); + glMultiTexCoord1hNV := dglGetProcAddress('glMultiTexCoord1hNV'); + glMultiTexCoord1hvNV := dglGetProcAddress('glMultiTexCoord1hvNV'); + glMultiTexCoord2hNV := dglGetProcAddress('glMultiTexCoord2hNV'); + glMultiTexCoord2hvNV := dglGetProcAddress('glMultiTexCoord2hvNV'); + glMultiTexCoord3hNV := dglGetProcAddress('glMultiTexCoord3hNV'); + glMultiTexCoord3hvNV := dglGetProcAddress('glMultiTexCoord3hvNV'); + glMultiTexCoord4hNV := dglGetProcAddress('glMultiTexCoord4hNV'); + glMultiTexCoord4hvNV := dglGetProcAddress('glMultiTexCoord4hvNV'); + glFogCoordhNV := dglGetProcAddress('glFogCoordhNV'); + glFogCoordhvNV := dglGetProcAddress('glFogCoordhvNV'); + glSecondaryColor3hNV := dglGetProcAddress('glSecondaryColor3hNV'); + glSecondaryColor3hvNV := dglGetProcAddress('glSecondaryColor3hvNV'); + glVertexWeighthNV := dglGetProcAddress('glVertexWeighthNV'); + glVertexWeighthvNV := dglGetProcAddress('glVertexWeighthvNV'); + glVertexAttrib1hNV := dglGetProcAddress('glVertexAttrib1hNV'); + glVertexAttrib1hvNV := dglGetProcAddress('glVertexAttrib1hvNV'); + glVertexAttrib2hNV := dglGetProcAddress('glVertexAttrib2hNV'); + glVertexAttrib2hvNV := dglGetProcAddress('glVertexAttrib2hvNV'); + glVertexAttrib3hNV := dglGetProcAddress('glVertexAttrib3hNV'); + glVertexAttrib3hvNV := dglGetProcAddress('glVertexAttrib3hvNV'); + glVertexAttrib4hNV := dglGetProcAddress('glVertexAttrib4hNV'); + glVertexAttrib4hvNV := dglGetProcAddress('glVertexAttrib4hvNV'); + glVertexAttribs1hvNV := dglGetProcAddress('glVertexAttribs1hvNV'); + glVertexAttribs2hvNV := dglGetProcAddress('glVertexAttribs2hvNV'); + glVertexAttribs3hvNV := dglGetProcAddress('glVertexAttribs3hvNV'); + glVertexAttribs4hvNV := dglGetProcAddress('glVertexAttribs4hvNV'); +end; + +procedure Read_GL_NV_occlusion_query; +begin + glGenOcclusionQueriesNV := dglGetProcAddress('glGenOcclusionQueriesNV'); + glDeleteOcclusionQueriesNV := dglGetProcAddress('glDeleteOcclusionQueriesNV'); + glIsOcclusionQueryNV := dglGetProcAddress('glIsOcclusionQueryNV'); + glBeginOcclusionQueryNV := dglGetProcAddress('glBeginOcclusionQueryNV'); + glEndOcclusionQueryNV := dglGetProcAddress('glEndOcclusionQueryNV'); + glGetOcclusionQueryivNV := dglGetProcAddress('glGetOcclusionQueryivNV'); + glGetOcclusionQueryuivNV := dglGetProcAddress('glGetOcclusionQueryuivNV'); +end; + +procedure Read_GL_NV_pixel_data_range; +begin + glPixelDataRangeNV := dglGetProcAddress('glPixelDataRangeNV'); + glFlushPixelDataRangeNV := dglGetProcAddress('glFlushPixelDataRangeNV'); +end; + +procedure Read_GL_NV_point_sprite; +begin + glPointParameteriNV := dglGetProcAddress('glPointParameteriNV'); + glPointParameterivNV := dglGetProcAddress('glPointParameterivNV'); +end; + +procedure Read_GL_NV_primitive_restart; +begin + glPrimitiveRestartNV := dglGetProcAddress('glPrimitiveRestartNV'); + glPrimitiveRestartIndexNV := dglGetProcAddress('glPrimitiveRestartIndexNV'); +end; + +procedure Read_GL_NV_register_combiners; +begin + glCombinerParameterfvNV := dglGetProcAddress('glCombinerParameterfvNV'); + glCombinerParameterfNV := dglGetProcAddress('glCombinerParameterfNV'); + glCombinerParameterivNV := dglGetProcAddress('glCombinerParameterivNV'); + glCombinerParameteriNV := dglGetProcAddress('glCombinerParameteriNV'); + glCombinerInputNV := dglGetProcAddress('glCombinerInputNV'); + glCombinerOutputNV := dglGetProcAddress('glCombinerOutputNV'); + glFinalCombinerInputNV := dglGetProcAddress('glFinalCombinerInputNV'); + glGetCombinerInputParameterfvNV := dglGetProcAddress('glGetCombinerInputParameterfvNV'); + glGetCombinerInputParameterivNV := dglGetProcAddress('glGetCombinerInputParameterivNV'); + glGetCombinerOutputParameterfvNV := dglGetProcAddress('glGetCombinerOutputParameterfvNV'); + glGetCombinerOutputParameterivNV := dglGetProcAddress('glGetCombinerOutputParameterivNV'); + glGetFinalCombinerInputParameterfvNV := dglGetProcAddress('glGetFinalCombinerInputParameterfvNV'); + glGetFinalCombinerInputParameterivNV := dglGetProcAddress('glGetFinalCombinerInputParameterivNV'); +end; + +procedure Read_GL_NV_register_combiners2; +begin + glCombinerStageParameterfvNV := dglGetProcAddress('glCombinerStageParameterfvNV'); + glGetCombinerStageParameterfvNV := dglGetProcAddress('glGetCombinerStageParameterfvNV'); +end; + +procedure Read_GL_NV_vertex_array_range; +begin + glFlushVertexArrayRangeNV := dglGetProcAddress('glFlushVertexArrayRangeNV'); + glVertexArrayRangeNV := dglGetProcAddress('glVertexArrayRangeNV'); +end; + +procedure Read_GL_NV_vertex_program; +begin + glAreProgramsResidentNV := dglGetProcAddress('glAreProgramsResidentNV'); + glBindProgramNV := dglGetProcAddress('glBindProgramNV'); + glDeleteProgramsNV := dglGetProcAddress('glDeleteProgramsNV'); + glExecuteProgramNV := dglGetProcAddress('glExecuteProgramNV'); + glGenProgramsNV := dglGetProcAddress('glGenProgramsNV'); + glGetProgramParameterdvNV := dglGetProcAddress('glGetProgramParameterdvNV'); + glGetProgramParameterfvNV := dglGetProcAddress('glGetProgramParameterfvNV'); + glGetProgramivNV := dglGetProcAddress('glGetProgramivNV'); + glGetProgramStringNV := dglGetProcAddress('glGetProgramStringNV'); + glGetTrackMatrixivNV := dglGetProcAddress('glGetTrackMatrixivNV'); + glGetVertexAttribdvNV := dglGetProcAddress('glGetVertexAttribdvNV'); + glGetVertexAttribfvNV := dglGetProcAddress('glGetVertexAttribfvNV'); + glGetVertexAttribivNV := dglGetProcAddress('glGetVertexAttribivNV'); + glGetVertexAttribPointervNV := dglGetProcAddress('glGetVertexAttribPointervNV'); + glIsProgramNV := dglGetProcAddress('glIsProgramNV'); + glLoadProgramNV := dglGetProcAddress('glLoadProgramNV'); + glProgramParameter4dNV := dglGetProcAddress('glProgramParameter4dNV'); + glProgramParameter4dvNV := dglGetProcAddress('glProgramParameter4dvNV'); + glProgramParameter4fNV := dglGetProcAddress('glProgramParameter4fNV'); + glProgramParameter4fvNV := dglGetProcAddress('glProgramParameter4fvNV'); + glProgramParameters4dvNV := dglGetProcAddress('glProgramParameters4dvNV'); + glProgramParameters4fvNV := dglGetProcAddress('glProgramParameters4fvNV'); + glRequestResidentProgramsNV := dglGetProcAddress('glRequestResidentProgramsNV'); + glTrackMatrixNV := dglGetProcAddress('glTrackMatrixNV'); + glVertexAttribPointerNV := dglGetProcAddress('glVertexAttribPointerNV'); + glVertexAttrib1dNV := dglGetProcAddress('glVertexAttrib1dNV'); + glVertexAttrib1dvNV := dglGetProcAddress('glVertexAttrib1dvNV'); + glVertexAttrib1fNV := dglGetProcAddress('glVertexAttrib1fNV'); + glVertexAttrib1fvNV := dglGetProcAddress('glVertexAttrib1fvNV'); + glVertexAttrib1sNV := dglGetProcAddress('glVertexAttrib1sNV'); + glVertexAttrib1svNV := dglGetProcAddress('glVertexAttrib1svNV'); + glVertexAttrib2dNV := dglGetProcAddress('glVertexAttrib2dNV'); + glVertexAttrib2dvNV := dglGetProcAddress('glVertexAttrib2dvNV'); + glVertexAttrib2fNV := dglGetProcAddress('glVertexAttrib2fNV'); + glVertexAttrib2fvNV := dglGetProcAddress('glVertexAttrib2fvNV'); + glVertexAttrib2sNV := dglGetProcAddress('glVertexAttrib2sNV'); + glVertexAttrib2svNV := dglGetProcAddress('glVertexAttrib2svNV'); + glVertexAttrib3dNV := dglGetProcAddress('glVertexAttrib3dNV'); + glVertexAttrib3dvNV := dglGetProcAddress('glVertexAttrib3dvNV'); + glVertexAttrib3fNV := dglGetProcAddress('glVertexAttrib3fNV'); + glVertexAttrib3fvNV := dglGetProcAddress('glVertexAttrib3fvNV'); + glVertexAttrib3sNV := dglGetProcAddress('glVertexAttrib3sNV'); + glVertexAttrib3svNV := dglGetProcAddress('glVertexAttrib3svNV'); + glVertexAttrib4dNV := dglGetProcAddress('glVertexAttrib4dNV'); + glVertexAttrib4dvNV := dglGetProcAddress('glVertexAttrib4dvNV'); + glVertexAttrib4fNV := dglGetProcAddress('glVertexAttrib4fNV'); + glVertexAttrib4fvNV := dglGetProcAddress('glVertexAttrib4fvNV'); + glVertexAttrib4sNV := dglGetProcAddress('glVertexAttrib4sNV'); + glVertexAttrib4svNV := dglGetProcAddress('glVertexAttrib4svNV'); + glVertexAttrib4ubNV := dglGetProcAddress('glVertexAttrib4ubNV'); + glVertexAttrib4ubvNV := dglGetProcAddress('glVertexAttrib4ubvNV'); + glVertexAttribs1dvNV := dglGetProcAddress('glVertexAttribs1dvNV'); + glVertexAttribs1fvNV := dglGetProcAddress('glVertexAttribs1fvNV'); + glVertexAttribs1svNV := dglGetProcAddress('glVertexAttribs1svNV'); + glVertexAttribs2dvNV := dglGetProcAddress('glVertexAttribs2dvNV'); + glVertexAttribs2fvNV := dglGetProcAddress('glVertexAttribs2fvNV'); + glVertexAttribs2svNV := dglGetProcAddress('glVertexAttribs2svNV'); + glVertexAttribs3dvNV := dglGetProcAddress('glVertexAttribs3dvNV'); + glVertexAttribs3fvNV := dglGetProcAddress('glVertexAttribs3fvNV'); + glVertexAttribs3svNV := dglGetProcAddress('glVertexAttribs3svNV'); + glVertexAttribs4dvNV := dglGetProcAddress('glVertexAttribs4dvNV'); + glVertexAttribs4fvNV := dglGetProcAddress('glVertexAttribs4fvNV'); + glVertexAttribs4svNV := dglGetProcAddress('glVertexAttribs4svNV'); + glVertexAttribs4ubvNV := dglGetProcAddress('glVertexAttribs4ubvNV'); +end; + +procedure Read_GL_NV_depth_buffer_float; +begin + glDepthRangedNV := dglGetProcAddress('glDepthRangedNV'); + glClearDepthdNV := dglGetProcAddress('glClearDepthdNV'); + glDepthBoundsdNV := dglGetProcAddress('glDepthBoundsdNV'); +end; + +procedure Read_GL_NV_framebuffer_multisample_coverage; +begin + glRenderbufferStorageMultsampleCoverageNV := dglGetProcAddress('glRenderbufferStorageMultsampleCoverageNV'); +end; + +procedure Read_GL_NV_geometry_program4; +begin + glProgramVertexLimitNV := dglGetProcAddress('glProgramVertexLimitNV'); +end; + +procedure Read_GL_NV_gpu_program4; +begin + glProgramLocalParameterI4iNV := dglGetProcAddress('glProgramLocalParameterI4iNV'); + glProgramLocalParameterI4ivNV := dglGetProcAddress('glProgramLocalParameterI4ivNV'); + glProgramLocalParametersI4ivNV := dglGetProcAddress('glProgramLocalParametersI4ivNV'); + glProgramLocalParameterI4uiNV := dglGetProcAddress('glProgramLocalParameterI4uiNV'); + glProgramLocalParameterI4uivNV := dglGetProcAddress('glProgramLocalParameterI4uivNV'); + glProgramLocalParametersI4uivNV := dglGetProcAddress('glProgramLocalParametersI4uivNV'); + glProgramEnvParameterI4iNV := dglGetProcAddress('glProgramEnvParameterI4iNV'); + glProgramEnvParameterI4ivNV := dglGetProcAddress('glProgramEnvParameterI4ivNV'); + glProgramEnvParametersI4ivNV := dglGetProcAddress('glProgramEnvParametersI4ivNV'); + glProgramEnvParameterI4uiNV := dglGetProcAddress('glProgramEnvParameterI4uiNV'); + glProgramEnvParameterI4uivNV := dglGetProcAddress('glProgramEnvParameterI4uivNV'); + glProgramEnvParametersI4uivNV := dglGetProcAddress('glProgramEnvParametersI4uivNV'); + glGetProgramLocalParameterIivNV := dglGetProcAddress('glGetProgramLocalParameterIivNV'); + glGetProgramLocalParameterIuivNV := dglGetProcAddress('glGetProgramLocalParameterIuivNV'); + glGetProgramEnvParameterIivNV := dglGetProcAddress('glGetProgramEnvParameterIivNV'); + glGetProgramEnvParameterIuivNV := dglGetProcAddress('glGetProgramEnvParameterIuivNV'); +end; + +procedure Read_GL_NV_parameter_buffer_object; +begin + glProgramBufferParametersfvNV := dglGetProcAddress('glProgramBufferParametersfvNV'); + glProgramBufferParametersIivNV := dglGetProcAddress('glProgramBufferParametersIivNV'); + glProgramBufferParametersIuivNV := dglGetProcAddress('glProgramBufferParametersIuivNV'); +end; + +procedure Read_GL_NV_transform_feedback; +begin + glBeginTransformFeedbackNV := dglGetProcAddress('glBeginTransformFeedbackNV'); + glEndTransformFeedbackNV := dglGetProcAddress('glEndTransformFeedbackNV'); + glTransformFeedbackAttribsNV := dglGetProcAddress('glTransformFeedbackAttribsNV'); + glBindBufferRangeNV := dglGetProcAddress('glBindBufferRangeNV'); + glBindBufferOffsetNV := dglGetProcAddress('glBindBufferOffsetNV'); + glBindBufferBaseNV := dglGetProcAddress('glBindBufferBaseNV'); + glTransformFeedbackVaryingsNV := dglGetProcAddress('glTransformFeedbackVaryingsNV'); + glActiveVaryingNV := dglGetProcAddress('glActiveVaryingNV'); + glGetVaryingLocationNV := dglGetProcAddress('glGetVaryingLocationNV'); + glGetActiveVaryingNV := dglGetProcAddress('glGetActiveVaryingNV'); + glGetTransformFeedbackVaryingNV := dglGetProcAddress('glGetTransformFeedbackVaryingNV'); + glTransformFeedbackStreamAttribsNV := dglGetProcAddress('glTransformFeedbackStreamAttribsNV'); +end; + +procedure Read_GL_NV_conditional_render; +begin + glBeginConditionalRenderNV := dglGetProcAddress('glBeginConditionalRenderNV'); + glEndConditionalRenderNV := dglGetProcAddress('glEndConditionalRenderNV'); +end; + +procedure Read_GL_NV_present_video; +begin + glPresentFrameKeyedNV := dglGetProcAddress('glPresentFrameKeyedNV'); + glPresentFrameDualFillNV := dglGetProcAddress('glPresentFrameDualFillNV'); + glGetVideoivNV := dglGetProcAddress('glGetVideoivNV'); + glGetVideouivNV := dglGetProcAddress('glGetVideouivNV'); + glGetVideoi64vNV := dglGetProcAddress('glGetVideoi64vNV'); + glGetVideoui64vNV := dglGetProcAddress('glGetVideoui64vNV'); +// glVideoParameterivNV := dglGetProcAddress('glVideoParameterivNV'); +end; + +procedure Read_GL_NV_explicit_multisample; +begin + glGetMultisamplefvNV := dglGetProcAddress('glGetMultisamplefvNV'); + glSampleMaskIndexedNV := dglGetProcAddress('glSampleMaskIndexedNV'); + glTexRenderbufferNV := dglGetProcAddress('glTexRenderbufferNV'); +end; + +procedure Read_GL_NV_transform_feedback2; +begin + glBindTransformFeedbackNV := dglGetProcAddress('glBindTransformFeedbackNV'); + glDeleteTransformFeedbacksNV := dglGetProcAddress('glDeleteTransformFeedbacksNV'); + glGenTransformFeedbacksNV := dglGetProcAddress('glGenTransformFeedbacksNV'); + glIsTransformFeedbackNV := dglGetProcAddress('glIsTransformFeedbackNV'); + glPauseTransformFeedbackNV := dglGetProcAddress('glPauseTransformFeedbackNV'); + glResumeTransformFeedbackNV := dglGetProcAddress('glResumeTransformFeedbackNV'); + glDrawTransformFeedbackNV := dglGetProcAddress('glDrawTransformFeedbackNV'); +end; + +procedure Read_GL_NV_video_capture; +begin + glBeginVideoCaptureNV := dglGetProcAddress('glBeginVideoCaptureNV'); + glBindVideoCaptureStreamBufferNV := dglGetProcAddress('glBindVideoCaptureStreamBufferNV'); + glBindVideoCaptureStreamTextureNV := dglGetProcAddress('glBindVideoCaptureStreamTextureNV'); + glEndVideoCaptureNV := dglGetProcAddress('glEndVideoCaptureNV'); + glGetVideoCaptureivNV := dglGetProcAddress('glGetVideoCaptureivNV'); + glGetVideoCaptureStreamivNV := dglGetProcAddress('glGetVideoCaptureStreamivNV'); + glGetVideoCaptureStreamfvNV := dglGetProcAddress('glGetVideoCaptureStreamfvNV'); + glGetVideoCaptureStreamdvNV := dglGetProcAddress('glGetVideoCaptureStreamdvNV'); + glVideoCaptureNV := dglGetProcAddress('glVideoCaptureNV'); + glVideoCaptureStreamParameterivNV := dglGetProcAddress('glVideoCaptureStreamParameterivNV'); + glVideoCaptureStreamParameterfvNV := dglGetProcAddress('glVideoCaptureStreamParameterfvNV'); + glVideoCaptureStreamParameterdvNV := dglGetProcAddress('glVideoCaptureStreamParameterdvNV'); +end; + +procedure Read_GL_NV_copy_image; +begin + glCopyImageSubDataNV := dglGetProcAddress('glCopyImageSubDataNV'); +end; + +procedure Read_GL_NV_shader_buffer_load; +begin + glMakeBufferResidentNV := dglGetProcAddress('glMakeBufferResidentNV'); + glMakeBufferNonResidentNV := dglGetProcAddress('glMakeBufferNonResidentNV'); + glIsBufferResidentNV := dglGetProcAddress('glIsBufferResidentNV'); + glMakeNamedBufferResidentNV := dglGetProcAddress('glMakeNamedBufferResidentNV'); + glMakeNamedBufferNonResidentNV := dglGetProcAddress('glMakeNamedBufferNonResidentNV'); + glIsNamedBufferResidentNV := dglGetProcAddress('glIsNamedBufferResidentNV'); + glGetBufferParameterui64vNV := dglGetProcAddress('glGetBufferParameterui64vNV'); + glGetNamedBufferParameterui64vNV := dglGetProcAddress('glGetNamedBufferParameterui64vNV'); + glGetIntegerui64vNV := dglGetProcAddress('glGetIntegerui64vNV'); + glUniformui64NV := dglGetProcAddress('glUniformui64NV'); + glUniformui64vNV := dglGetProcAddress('glUniformui64vNV'); + glGetUniformui64vNV := dglGetProcAddress('glGetUniformui64vNV'); + glProgramUniformui64NV := dglGetProcAddress('glProgramUniformui64NV'); + glProgramUniformui64vNV := dglGetProcAddress('glProgramUniformui64vNV'); +end; + +procedure Read_GL_NV_vertex_buffer_unified_memory; +begin + glBufferAddressRangeNV := dglGetProcAddress('glBufferAddressRangeNV'); + glVertexFormatNV := dglGetProcAddress('glVertexFormatNV'); + glNormalFormatNV := dglGetProcAddress('glNormalFormatNV'); + glColorFormatNV := dglGetProcAddress('glColorFormatNV'); + glIndexFormatNV := dglGetProcAddress('glIndexFormatNV'); + glTexCoordFormatNV := dglGetProcAddress('glTexCoordFormatNV'); + glEdgeFlagFormatNV := dglGetProcAddress('glEdgeFlagFormatNV'); + glSecondaryColorFormatNV := dglGetProcAddress('glSecondaryColorFormatNV'); + glFogCoordFormatNV := dglGetProcAddress('glFogCoordFormatNV'); + glVertexAttribFormatNV := dglGetProcAddress('glVertexAttribFormatNV'); + glVertexAttribIFormatNV := dglGetProcAddress('glVertexAttribIFormatNV'); + glGetIntegerui64i_vNV := dglGetProcAddress('glGetIntegerui64i_vNV'); +end; + +procedure Read_GL_NV_gpu_program5; +begin + glProgramSubroutineParametersuivNV := dglGetProcAddress('glProgramSubroutineParametersuivNV'); + glGetProgramSubroutineParameteruivNV := dglGetProcAddress('glGetProgramSubroutineParameteruivNV'); +end; + +procedure Read_GL_NV_gpu_shader5; +begin + glUniform1i64NV := dglGetProcAddress('glUniform1i64NV'); + glUniform2i64NV := dglGetProcAddress('glUniform2i64NV'); + glUniform3i64NV := dglGetProcAddress('glUniform3i64NV'); + glUniform4i64NV := dglGetProcAddress('glUniform4i64NV'); + glUniform1i64vNV := dglGetProcAddress('glUniform1i64vNV'); + glUniform2i64vNV := dglGetProcAddress('glUniform2i64vNV'); + glUniform3i64vNV := dglGetProcAddress('glUniform3i64vNV'); + glUniform4i64vNV := dglGetProcAddress('glUniform4i64vNV'); + glUniform1ui64NV := dglGetProcAddress('glUniform1ui64NV'); + glUniform2ui64NV := dglGetProcAddress('glUniform2ui64NV'); + glUniform3ui64NV := dglGetProcAddress('glUniform3ui64NV'); + glUniform4ui64NV := dglGetProcAddress('glUniform4ui64NV'); + glUniform1ui64vNV := dglGetProcAddress('glUniform1ui64vNV'); + glUniform2ui64vNV := dglGetProcAddress('glUniform2ui64vNV'); + glUniform3ui64vNV := dglGetProcAddress('glUniform3ui64vNV'); + glUniform4ui64vNV := dglGetProcAddress('glUniform4ui64vNV'); + glGetUniformi64vNV := dglGetProcAddress('glGetUniformi64vNV'); + glProgramUniform1i64NV := dglGetProcAddress('glProgramUniform1i64NV'); + glProgramUniform2i64NV := dglGetProcAddress('glProgramUniform2i64NV'); + glProgramUniform3i64NV := dglGetProcAddress('glProgramUniform3i64NV'); + glProgramUniform4i64NV := dglGetProcAddress('glProgramUniform4i64NV'); + glProgramUniform1i64vNV := dglGetProcAddress('glProgramUniform1i64vNV'); + glProgramUniform2i64vNV := dglGetProcAddress('glProgramUniform2i64vNV'); + glProgramUniform3i64vNV := dglGetProcAddress('glProgramUniform3i64vNV'); + glProgramUniform4i64vNV := dglGetProcAddress('glProgramUniform4i64vNV'); + glProgramUniform1ui64NV := dglGetProcAddress('glProgramUniform1ui64NV'); + glProgramUniform2ui64NV := dglGetProcAddress('glProgramUniform2ui64NV'); + glProgramUniform3ui64NV := dglGetProcAddress('glProgramUniform3ui64NV'); + glProgramUniform4ui64NV := dglGetProcAddress('glProgramUniform4ui64NV'); + glProgramUniform1ui64vNV := dglGetProcAddress('glProgramUniform1ui64vNV'); + glProgramUniform2ui64vNV := dglGetProcAddress('glProgramUniform2ui64vNV'); + glProgramUniform3ui64vNV := dglGetProcAddress('glProgramUniform3ui64vNV'); + glProgramUniform4ui64vNV := dglGetProcAddress('glProgramUniform4ui64vNV'); +end; + +procedure Read_GL_NV_vertex_attrib_integer_64bit; +begin + glVertexAttribL1i64NV := dglGetProcAddress('glVertexAttribL1i64NV'); + glVertexAttribL2i64NV := dglGetProcAddress('glVertexAttribL2i64NV'); + glVertexAttribL3i64NV := dglGetProcAddress('glVertexAttribL3i64NV'); + glVertexAttribL4i64NV := dglGetProcAddress('glVertexAttribL4i64NV'); + glVertexAttribL1i64vNV := dglGetProcAddress('glVertexAttribL1i64vNV'); + glVertexAttribL2i64vNV := dglGetProcAddress('glVertexAttribL2i64vNV'); + glVertexAttribL3i64vNV := dglGetProcAddress('glVertexAttribL3i64vNV'); + glVertexAttribL4i64vNV := dglGetProcAddress('glVertexAttribL4i64vNV'); + glVertexAttribL1ui64NV := dglGetProcAddress('glVertexAttribL1ui64NV'); + glVertexAttribL2ui64NV := dglGetProcAddress('glVertexAttribL2ui64NV'); + glVertexAttribL3ui64NV := dglGetProcAddress('glVertexAttribL3ui64NV'); + glVertexAttribL4ui64NV := dglGetProcAddress('glVertexAttribL4ui64NV'); + glVertexAttribL1ui64vNV := dglGetProcAddress('glVertexAttribL1ui64vNV'); + glVertexAttribL2ui64vNV := dglGetProcAddress('glVertexAttribL2ui64vNV'); + glVertexAttribL3ui64vNV := dglGetProcAddress('glVertexAttribL3ui64vNV'); + glVertexAttribL4ui64vNV := dglGetProcAddress('glVertexAttribL4ui64vNV'); + glGetVertexAttribLi64vNV := dglGetProcAddress('glGetVertexAttribLi64vNV'); + glGetVertexAttribLui64vNV := dglGetProcAddress('glGetVertexAttribLui64vNV'); + glVertexAttribLFormatNV := dglGetProcAddress('glVertexAttribLFormatNV'); +end; + +procedure Read_GL_NV_vdpau_interop; +begin + glVDPAUInitNV := dglGetProcAddress('glVDPAUInitNV'); + glVDPAUFiniNV := dglGetProcAddress('glVDPAUFiniNV'); + glVDPAURegisterVideoSurfaceNV := dglGetProcAddress('glVDPAURegisterVideoSurfaceNV'); + glVDPAURegisterOutputSurfaceNV := dglGetProcAddress('glVDPAURegisterOutputSurfaceNV'); + glVDPAUIsSurfaceNV := dglGetProcAddress('glVDPAUIsSurfaceNV'); + glVDPAUUnregisterSurfaceNV := dglGetProcAddress('glVDPAUUnregisterSurfaceNV'); + glVDPAUGetSurfaceivNV := dglGetProcAddress('glVDPAUGetSurfaceivNV'); + glVDPAUSurfaceAccessNV := dglGetProcAddress('glVDPAUSurfaceAccessNV'); + glVDPAUMapSurfacesNV := dglGetProcAddress('glVDPAUMapSurfacesNV'); + glVDPAUUnmapSurfacesNV := dglGetProcAddress('glVDPAUUnmapSurfacesNV'); +end; + +procedure Read_GL_NV_texture_barrier; +begin + glTextureBarrierNV := dglGetProcAddress('glTextureBarrierNV'); +end; + +procedure Read_GL_PGI_misc_hints; +begin + glHintPGI := dglGetProcAddress('glHintPGI'); +end; + +procedure Read_GL_SGIS_detail_texture; +begin + glDetailTexFuncSGIS := dglGetProcAddress('glDetailTexFuncSGIS'); + glGetDetailTexFuncSGIS := dglGetProcAddress('glGetDetailTexFuncSGIS'); +end; + +procedure Read_GL_SGIS_fog_function; +begin + glFogFuncSGIS := dglGetProcAddress('glFogFuncSGIS'); + glGetFogFuncSGIS := dglGetProcAddress('glGetFogFuncSGIS'); +end; + +procedure Read_GL_SGIS_multisample; +begin + glSampleMaskSGIS := dglGetProcAddress('glSampleMaskSGIS'); + glSamplePatternSGIS := dglGetProcAddress('glSamplePatternSGIS'); +end; + +procedure Read_GL_SGIS_pixel_texture; +begin + glPixelTexGenParameteriSGIS := dglGetProcAddress('glPixelTexGenParameteriSGIS'); + glPixelTexGenParameterivSGIS := dglGetProcAddress('glPixelTexGenParameterivSGIS'); + glPixelTexGenParameterfSGIS := dglGetProcAddress('glPixelTexGenParameterfSGIS'); + glPixelTexGenParameterfvSGIS := dglGetProcAddress('glPixelTexGenParameterfvSGIS'); + glGetPixelTexGenParameterivSGIS := dglGetProcAddress('glGetPixelTexGenParameterivSGIS'); + glGetPixelTexGenParameterfvSGIS := dglGetProcAddress('glGetPixelTexGenParameterfvSGIS'); +end; + +procedure Read_GL_SGIS_point_parameters; +begin + glPointParameterfSGIS := dglGetProcAddress('glPointParameterfSGIS'); + glPointParameterfvSGIS := dglGetProcAddress('glPointParameterfvSGIS'); +end; + +procedure Read_GL_SGIS_sharpen_texture; +begin + glSharpenTexFuncSGIS := dglGetProcAddress('glSharpenTexFuncSGIS'); + glGetSharpenTexFuncSGIS := dglGetProcAddress('glGetSharpenTexFuncSGIS'); +end; + +procedure Read_GL_SGIS_texture4D; +begin + glTexImage4DSGIS := dglGetProcAddress('glTexImage4DSGIS'); + glTexSubImage4DSGIS := dglGetProcAddress('glTexSubImage4DSGIS'); +end; + +procedure Read_GL_SGIS_texture_color_mask; +begin + glTextureColorMaskSGIS := dglGetProcAddress('glTextureColorMaskSGIS'); +end; + +procedure Read_GL_SGIS_texture_filter4; +begin + glGetTexFilterFuncSGIS := dglGetProcAddress('glGetTexFilterFuncSGIS'); + glTexFilterFuncSGIS := dglGetProcAddress('glTexFilterFuncSGIS'); +end; + +procedure Read_GL_SGIX_async; +begin + glAsyncMarkerSGIX := dglGetProcAddress('glAsyncMarkerSGIX'); + glFinishAsyncSGIX := dglGetProcAddress('glFinishAsyncSGIX'); + glPollAsyncSGIX := dglGetProcAddress('glPollAsyncSGIX'); + glGenAsyncMarkersSGIX := dglGetProcAddress('glGenAsyncMarkersSGIX'); + glDeleteAsyncMarkersSGIX := dglGetProcAddress('glDeleteAsyncMarkersSGIX'); + glIsAsyncMarkerSGIX := dglGetProcAddress('glIsAsyncMarkerSGIX'); +end; + +procedure Read_GL_SGIX_flush_raster; +begin + glFlushRasterSGIX := dglGetProcAddress('glFlushRasterSGIX'); +end; + +procedure Read_GL_SGIX_fragment_lighting; +begin + glFragmentColorMaterialSGIX := dglGetProcAddress('glFragmentColorMaterialSGIX'); + glFragmentLightfSGIX := dglGetProcAddress('glFragmentLightfSGIX'); + glFragmentLightfvSGIX := dglGetProcAddress('glFragmentLightfvSGIX'); + glFragmentLightiSGIX := dglGetProcAddress('glFragmentLightiSGIX'); + glFragmentLightivSGIX := dglGetProcAddress('glFragmentLightivSGIX'); + glFragmentLightModelfSGIX := dglGetProcAddress('glFragmentLightModelfSGIX'); + glFragmentLightModelfvSGIX := dglGetProcAddress('glFragmentLightModelfvSGIX'); + glFragmentLightModeliSGIX := dglGetProcAddress('glFragmentLightModeliSGIX'); + glFragmentLightModelivSGIX := dglGetProcAddress('glFragmentLightModelivSGIX'); + glFragmentMaterialfSGIX := dglGetProcAddress('glFragmentMaterialfSGIX'); + glFragmentMaterialfvSGIX := dglGetProcAddress('glFragmentMaterialfvSGIX'); + glFragmentMaterialiSGIX := dglGetProcAddress('glFragmentMaterialiSGIX'); + glFragmentMaterialivSGIX := dglGetProcAddress('glFragmentMaterialivSGIX'); + glGetFragmentLightfvSGIX := dglGetProcAddress('glGetFragmentLightfvSGIX'); + glGetFragmentLightivSGIX := dglGetProcAddress('glGetFragmentLightivSGIX'); + glGetFragmentMaterialfvSGIX := dglGetProcAddress('glGetFragmentMaterialfvSGIX'); + glGetFragmentMaterialivSGIX := dglGetProcAddress('glGetFragmentMaterialivSGIX'); + glLightEnviSGIX := dglGetProcAddress('glLightEnviSGIX'); +end; + +procedure Read_GL_SGIX_framezoom; +begin + glFrameZoomSGIX := dglGetProcAddress('glFrameZoomSGIX'); +end; + +procedure Read_GL_SGIX_igloo_interface; +begin + glIglooInterfaceSGIX := dglGetProcAddress('glIglooInterfaceSGIX'); +end; + +procedure Read_GL_SGIX_instruments; +begin + glGetInstrumentsSGIX := dglGetProcAddress('glGetInstrumentsSGIX'); + glInstrumentsBufferSGIX := dglGetProcAddress('glInstrumentsBufferSGIX'); + glPollInstrumentsSGIX := dglGetProcAddress('glPollInstrumentsSGIX'); + glReadInstrumentsSGIX := dglGetProcAddress('glReadInstrumentsSGIX'); + glStartInstrumentsSGIX := dglGetProcAddress('glStartInstrumentsSGIX'); + glStopInstrumentsSGIX := dglGetProcAddress('glStopInstrumentsSGIX'); +end; + +procedure Read_GL_SGIX_list_priority; +begin + glGetListParameterfvSGIX := dglGetProcAddress('glGetListParameterfvSGIX'); + glGetListParameterivSGIX := dglGetProcAddress('glGetListParameterivSGIX'); + glListParameterfSGIX := dglGetProcAddress('glListParameterfSGIX'); + glListParameterfvSGIX := dglGetProcAddress('glListParameterfvSGIX'); + glListParameteriSGIX := dglGetProcAddress('glListParameteriSGIX'); + glListParameterivSGIX := dglGetProcAddress('glListParameterivSGIX'); +end; + +procedure Read_GL_SGIX_pixel_texture; +begin + glPixelTexGenSGIX := dglGetProcAddress('glPixelTexGenSGIX'); +end; + +procedure Read_GL_SGIX_polynomial_ffd; +begin + glDeformationMap3dSGIX := dglGetProcAddress('glDeformationMap3dSGIX'); + glDeformationMap3fSGIX := dglGetProcAddress('glDeformationMap3fSGIX'); + glDeformSGIX := dglGetProcAddress('glDeformSGIX'); + glLoadIdentityDeformationMapSGIX := dglGetProcAddress('glLoadIdentityDeformationMapSGIX'); +end; + +procedure Read_GL_SGIX_reference_plane; +begin + glReferencePlaneSGIX := dglGetProcAddress('glReferencePlaneSGIX'); +end; + +procedure Read_GL_SGIX_sprite; +begin + glSpriteParameterfSGIX := dglGetProcAddress('glSpriteParameterfSGIX'); + glSpriteParameterfvSGIX := dglGetProcAddress('glSpriteParameterfvSGIX'); + glSpriteParameteriSGIX := dglGetProcAddress('glSpriteParameteriSGIX'); + glSpriteParameterivSGIX := dglGetProcAddress('glSpriteParameterivSGIX'); +end; + +procedure Read_GL_SGIX_tag_sample_buffer; +begin + glTagSampleBufferSGIX := dglGetProcAddress('glTagSampleBufferSGIX'); +end; + +procedure Read_GL_SGI_color_table; +begin + glColorTableSGI := dglGetProcAddress('glColorTableSGI'); + glColorTableParameterfvSGI := dglGetProcAddress('glColorTableParameterfvSGI'); + glColorTableParameterivSGI := dglGetProcAddress('glColorTableParameterivSGI'); + glCopyColorTableSGI := dglGetProcAddress('glCopyColorTableSGI'); + glGetColorTableSGI := dglGetProcAddress('glGetColorTableSGI'); + glGetColorTableParameterfvSGI := dglGetProcAddress('glGetColorTableParameterfvSGI'); + glGetColorTableParameterivSGI := dglGetProcAddress('glGetColorTableParameterivSGI'); +end; + +procedure Read_GL_SUNX_constant_data; +begin + glFinishTextureSUNX := dglGetProcAddress('glFinishTextureSUNX'); +end; + +procedure Read_GL_SUN_global_alpha; +begin + glGlobalAlphaFactorbSUN := dglGetProcAddress('glGlobalAlphaFactorbSUN'); + glGlobalAlphaFactorsSUN := dglGetProcAddress('glGlobalAlphaFactorsSUN'); + glGlobalAlphaFactoriSUN := dglGetProcAddress('glGlobalAlphaFactoriSUN'); + glGlobalAlphaFactorfSUN := dglGetProcAddress('glGlobalAlphaFactorfSUN'); + glGlobalAlphaFactordSUN := dglGetProcAddress('glGlobalAlphaFactordSUN'); + glGlobalAlphaFactorubSUN := dglGetProcAddress('glGlobalAlphaFactorubSUN'); + glGlobalAlphaFactorusSUN := dglGetProcAddress('glGlobalAlphaFactorusSUN'); + glGlobalAlphaFactoruiSUN := dglGetProcAddress('glGlobalAlphaFactoruiSUN'); +end; + +procedure Read_GL_SUN_mesh_array; +begin + glDrawMeshArraysSUN := dglGetProcAddress('glDrawMeshArraysSUN'); +end; + +procedure Read_GL_SUN_triangle_list; +begin + glReplacementCodeuiSUN := dglGetProcAddress('glReplacementCodeuiSUN'); + glReplacementCodeusSUN := dglGetProcAddress('glReplacementCodeusSUN'); + glReplacementCodeubSUN := dglGetProcAddress('glReplacementCodeubSUN'); + glReplacementCodeuivSUN := dglGetProcAddress('glReplacementCodeuivSUN'); + glReplacementCodeusvSUN := dglGetProcAddress('glReplacementCodeusvSUN'); + glReplacementCodeubvSUN := dglGetProcAddress('glReplacementCodeubvSUN'); + glReplacementCodePointerSUN := dglGetProcAddress('glReplacementCodePointerSUN'); +end; + +procedure Read_GL_SUN_vertex; +begin + glColor4ubVertex2fSUN := dglGetProcAddress('glColor4ubVertex2fSUN'); + glColor4ubVertex2fvSUN := dglGetProcAddress('glColor4ubVertex2fvSUN'); + glColor4ubVertex3fSUN := dglGetProcAddress('glColor4ubVertex3fSUN'); + glColor4ubVertex3fvSUN := dglGetProcAddress('glColor4ubVertex3fvSUN'); + glColor3fVertex3fSUN := dglGetProcAddress('glColor3fVertex3fSUN'); + glColor3fVertex3fvSUN := dglGetProcAddress('glColor3fVertex3fvSUN'); + glNormal3fVertex3fSUN := dglGetProcAddress('glNormal3fVertex3fSUN'); + glNormal3fVertex3fvSUN := dglGetProcAddress('glNormal3fVertex3fvSUN'); + glColor4fNormal3fVertex3fSUN := dglGetProcAddress('glColor4fNormal3fVertex3fSUN'); + glColor4fNormal3fVertex3fvSUN := dglGetProcAddress('glColor4fNormal3fVertex3fvSUN'); + glTexCoord2fVertex3fSUN := dglGetProcAddress('glTexCoord2fVertex3fSUN'); + glTexCoord2fVertex3fvSUN := dglGetProcAddress('glTexCoord2fVertex3fvSUN'); + glTexCoord4fVertex4fSUN := dglGetProcAddress('glTexCoord4fVertex4fSUN'); + glTexCoord4fVertex4fvSUN := dglGetProcAddress('glTexCoord4fVertex4fvSUN'); + glTexCoord2fColor4ubVertex3fSUN := dglGetProcAddress('glTexCoord2fColor4ubVertex3fSUN'); + glTexCoord2fColor4ubVertex3fvSUN := dglGetProcAddress('glTexCoord2fColor4ubVertex3fvSUN'); + glTexCoord2fColor3fVertex3fSUN := dglGetProcAddress('glTexCoord2fColor3fVertex3fSUN'); + glTexCoord2fColor3fVertex3fvSUN := dglGetProcAddress('glTexCoord2fColor3fVertex3fvSUN'); + glTexCoord2fNormal3fVertex3fSUN := dglGetProcAddress('glTexCoord2fNormal3fVertex3fSUN'); + glTexCoord2fNormal3fVertex3fvSUN := dglGetProcAddress('glTexCoord2fNormal3fVertex3fvSUN'); + glTexCoord2fColor4fNormal3fVertex3fSUN := dglGetProcAddress('glTexCoord2fColor4fNormal3fVertex3fSUN'); + glTexCoord2fColor4fNormal3fVertex3fvSUN := dglGetProcAddress('glTexCoord2fColor4fNormal3fVertex3fvSUN'); + glTexCoord4fColor4fNormal3fVertex4fSUN := dglGetProcAddress('glTexCoord4fColor4fNormal3fVertex4fSUN'); + glTexCoord4fColor4fNormal3fVertex4fvSUN := dglGetProcAddress('glTexCoord4fColor4fNormal3fVertex4fvSUN'); + glReplacementCodeuiVertex3fSUN := dglGetProcAddress('glReplacementCodeuiVertex3fSUN'); + glReplacementCodeuiVertex3fvSUN := dglGetProcAddress('glReplacementCodeuiVertex3fvSUN'); + glReplacementCodeuiColor4ubVertex3fSUN := dglGetProcAddress('glReplacementCodeuiColor4ubVertex3fSUN'); + glReplacementCodeuiColor4ubVertex3fvSUN := dglGetProcAddress('glReplacementCodeuiColor4ubVertex3fvSUN'); + glReplacementCodeuiColor3fVertex3fSUN := dglGetProcAddress('glReplacementCodeuiColor3fVertex3fSUN'); + glReplacementCodeuiColor3fVertex3fvSUN := dglGetProcAddress('glReplacementCodeuiColor3fVertex3fvSUN'); + glReplacementCodeuiNormal3fVertex3fSUN := dglGetProcAddress('glReplacementCodeuiNormal3fVertex3fSUN'); + glReplacementCodeuiNormal3fVertex3fvSUN := dglGetProcAddress('glReplacementCodeuiNormal3fVertex3fvSUN'); + glReplacementCodeuiColor4fNormal3fVertex3fSUN := dglGetProcAddress('glReplacementCodeuiColor4fNormal3fVertex3fSUN'); + glReplacementCodeuiColor4fNormal3fVertex3fvSUN := dglGetProcAddress('glReplacementCodeuiColor4fNormal3fVertex3fvSUN'); + glReplacementCodeuiTexCoord2fVertex3fSUN := dglGetProcAddress('glReplacementCodeuiTexCoord2fVertex3fSUN'); + glReplacementCodeuiTexCoord2fVertex3fvSUN := dglGetProcAddress('glReplacementCodeuiTexCoord2fVertex3fvSUN'); + glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN := dglGetProcAddress('glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN'); + glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN := dglGetProcAddress('glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN'); + glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN := dglGetProcAddress('glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN'); + glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN := dglGetProcAddress('glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN'); +end; + +{$IFDEF DGL_WIN} +procedure Read_WGL_ARB_buffer_region; +begin + wglCreateBufferRegionARB := dglGetProcAddress('wglCreateBufferRegionARB'); + wglDeleteBufferRegionARB := dglGetProcAddress('wglDeleteBufferRegionARB'); + wglSaveBufferRegionARB := dglGetProcAddress('wglSaveBufferRegionARB'); + wglRestoreBufferRegionARB := dglGetProcAddress('wglRestoreBufferRegionARB'); +end; + +procedure Read_WGL_ARB_extensions_string; +begin + wglGetExtensionsStringARB := dglGetProcAddress('wglGetExtensionsStringARB'); +end; + +procedure Read_WGL_ARB_make_current_read; +begin + wglMakeContextCurrentARB := dglGetProcAddress('wglMakeContextCurrentARB'); + wglGetCurrentReadDCARB := dglGetProcAddress('wglGetCurrentReadDCARB'); +end; + +procedure Read_WGL_ARB_pbuffer; +begin + wglCreatePbufferARB := dglGetProcAddress('wglCreatePbufferARB'); + wglGetPbufferDCARB := dglGetProcAddress('wglGetPbufferDCARB'); + wglReleasePbufferDCARB := dglGetProcAddress('wglReleasePbufferDCARB'); + wglDestroyPbufferARB := dglGetProcAddress('wglDestroyPbufferARB'); + wglQueryPbufferARB := dglGetProcAddress('wglQueryPbufferARB'); +end; + +procedure Read_WGL_ARB_pixel_format; +begin + wglGetPixelFormatAttribivARB := dglGetProcAddress('wglGetPixelFormatAttribivARB'); + wglGetPixelFormatAttribfvARB := dglGetProcAddress('wglGetPixelFormatAttribfvARB'); + wglChoosePixelFormatARB := dglGetProcAddress('wglChoosePixelFormatARB'); +end; + +procedure Read_WGL_ARB_pixel_format_float; +begin + wglClampColorARB := dglGetProcAddress('wglClampColorARB'); +end; + +procedure Read_WGL_ARB_render_texture; +begin + wglBindTexImageARB := dglGetProcAddress('wglBindTexImageARB'); + wglReleaseTexImageARB := dglGetProcAddress('wglReleaseTexImageARB'); + wglSetPbufferAttribARB := dglGetProcAddress('wglSetPbufferAttribARB'); +end; + +procedure Read_WGL_ARB_create_context; +begin + wglCreateContextAttribsARB := dglGetProcAddress('wglCreateContextAttribsARB'); +end; + +procedure Read_WGL_AMD_gpu_association; +begin + wglGetGPUIDsAMD := dglGetProcAddress('wglGetGPUIDsAMD'); + wglGetGPUInfoAMD := dglGetProcAddress('wglGetGPUInfoAMD'); + wglGetContextGPUIDAMD := dglGetProcAddress('wglGetContextGPUIDAMD'); + wglCreateAssociatedContextAMD := dglGetProcAddress('wglCreateAssociatedContextAMD'); + wglCreateAssociatedContextAttribsAMD := dglGetProcAddress('wglCreateAssociatedContextAttribsAMD'); + wglDeleteAssociatedContextAMD := dglGetProcAddress('wglDeleteAssociatedContextAMD'); + wglMakeAssociatedContextCurrentAMD := dglGetProcAddress('wglMakeAssociatedContextCurrentAMD'); + wglGetCurrentAssociatedContextAMD := dglGetProcAddress('wglGetCurrentAssociatedContextAMD'); + wglBlitContextFramebufferAMD := dglGetProcAddress('wglBlitContextFramebufferAMD'); +end; + +procedure Read_WGL_EXT_display_color_table; +begin + wglCreateDisplayColorTableEXT := dglGetProcAddress('wglCreateDisplayColorTableEXT'); + wglLoadDisplayColorTableEXT := dglGetProcAddress('wglLoadDisplayColorTableEXT'); + wglBindDisplayColorTableEXT := dglGetProcAddress('wglBindDisplayColorTableEXT'); + wglDestroyDisplayColorTableEXT := dglGetProcAddress('wglDestroyDisplayColorTableEXT'); +end; + +procedure Read_WGL_EXT_extensions_string; +begin + wglGetExtensionsStringEXT := dglGetProcAddress('wglGetExtensionsStringEXT'); +end; + +procedure Read_WGL_EXT_make_current_read; +begin + wglMakeContextCurrentEXT := dglGetProcAddress('wglMakeContextCurrentEXT'); + wglGetCurrentReadDCEXT := dglGetProcAddress('wglGetCurrentReadDCEXT'); +end; + +procedure Read_WGL_EXT_pbuffer; +begin + wglCreatePbufferEXT := dglGetProcAddress('wglCreatePbufferEXT'); + wglGetPbufferDCEXT := dglGetProcAddress('wglGetPbufferDCEXT'); + wglReleasePbufferDCEXT := dglGetProcAddress('wglReleasePbufferDCEXT'); + wglDestroyPbufferEXT := dglGetProcAddress('wglDestroyPbufferEXT'); + wglQueryPbufferEXT := dglGetProcAddress('wglQueryPbufferEXT'); +end; + +procedure Read_WGL_EXT_pixel_format; +begin + wglGetPixelFormatAttribivEXT := dglGetProcAddress('wglGetPixelFormatAttribivEXT'); + wglGetPixelFormatAttribfvEXT := dglGetProcAddress('wglGetPixelFormatAttribfvEXT'); + wglChoosePixelFormatEXT := dglGetProcAddress('wglChoosePixelFormatEXT'); +end; + +procedure Read_WGL_EXT_swap_control; +begin + wglSwapIntervalEXT := dglGetProcAddress('wglSwapIntervalEXT'); + wglGetSwapIntervalEXT := dglGetProcAddress('wglGetSwapIntervalEXT'); +end; + +procedure Read_WGL_I3D_digital_video_control; +begin + wglGetDigitalVideoParametersI3D := dglGetProcAddress('wglGetDigitalVideoParametersI3D'); + wglSetDigitalVideoParametersI3D := dglGetProcAddress('wglSetDigitalVideoParametersI3D'); +end; + +procedure Read_WGL_I3D_gamma; +begin + wglGetGammaTableParametersI3D := dglGetProcAddress('wglGetGammaTableParametersI3D'); + wglSetGammaTableParametersI3D := dglGetProcAddress('wglSetGammaTableParametersI3D'); + wglGetGammaTableI3D := dglGetProcAddress('wglGetGammaTableI3D'); + wglSetGammaTableI3D := dglGetProcAddress('wglSetGammaTableI3D'); +end; + +procedure Read_WGL_I3D_genlock; +begin + wglEnableGenlockI3D := dglGetProcAddress('wglEnableGenlockI3D'); + wglDisableGenlockI3D := dglGetProcAddress('wglDisableGenlockI3D'); + wglIsEnabledGenlockI3D := dglGetProcAddress('wglIsEnabledGenlockI3D'); + wglGenlockSourceI3D := dglGetProcAddress('wglGenlockSourceI3D'); + wglGetGenlockSourceI3D := dglGetProcAddress('wglGetGenlockSourceI3D'); + wglGenlockSourceEdgeI3D := dglGetProcAddress('wglGenlockSourceEdgeI3D'); + wglGetGenlockSourceEdgeI3D := dglGetProcAddress('wglGetGenlockSourceEdgeI3D'); + wglGenlockSampleRateI3D := dglGetProcAddress('wglGenlockSampleRateI3D'); + wglGetGenlockSampleRateI3D := dglGetProcAddress('wglGetGenlockSampleRateI3D'); + wglGenlockSourceDelayI3D := dglGetProcAddress('wglGenlockSourceDelayI3D'); + wglGetGenlockSourceDelayI3D := dglGetProcAddress('wglGetGenlockSourceDelayI3D'); + wglQueryGenlockMaxSourceDelayI3D := dglGetProcAddress('wglQueryGenlockMaxSourceDelayI3D'); +end; + +procedure Read_WGL_I3D_image_buffer; +begin + wglCreateImageBufferI3D := dglGetProcAddress('wglCreateImageBufferI3D'); + wglDestroyImageBufferI3D := dglGetProcAddress('wglDestroyImageBufferI3D'); + wglAssociateImageBufferEventsI3D := dglGetProcAddress('wglAssociateImageBufferEventsI3D'); + wglReleaseImageBufferEventsI3D := dglGetProcAddress('wglReleaseImageBufferEventsI3D'); +end; + +procedure Read_WGL_I3D_swap_frame_lock; +begin + wglEnableFrameLockI3D := dglGetProcAddress('wglEnableFrameLockI3D'); + wglDisableFrameLockI3D := dglGetProcAddress('wglDisableFrameLockI3D'); + wglIsEnabledFrameLockI3D := dglGetProcAddress('wglIsEnabledFrameLockI3D'); + wglQueryFrameLockMasterI3D := dglGetProcAddress('wglQueryFrameLockMasterI3D'); +end; + +procedure Read_WGL_I3D_swap_frame_usage; +begin + wglGetFrameUsageI3D := dglGetProcAddress('wglGetFrameUsageI3D'); + wglBeginFrameTrackingI3D := dglGetProcAddress('wglBeginFrameTrackingI3D'); + wglEndFrameTrackingI3D := dglGetProcAddress('wglEndFrameTrackingI3D'); + wglQueryFrameTrackingI3D := dglGetProcAddress('wglQueryFrameTrackingI3D'); +end; + +procedure Read_WGL_NV_vertex_array_range; +begin + wglAllocateMemoryNV := dglGetProcAddress('wglAllocateMemoryNV'); + wglFreeMemoryNV := dglGetProcAddress('wglFreeMemoryNV'); +end; + +procedure Read_WGL_NV_present_video; +begin + wglEnumerateVideoDevicesNV := dglGetProcAddress('wglEnumerateVideoDevicesNV'); + wglBindVideoDeviceNV := dglGetProcAddress('wglBindVideoDeviceNV'); + wglQueryCurrentContextNV := dglGetProcAddress('wglQueryCurrentContextNV'); +end; + +procedure Read_WGL_NV_video_output; +begin + wglGetVideoDeviceNV := dglGetProcAddress('wglGetVideoDeviceNV'); + wglReleaseVideoDeviceNV := dglGetProcAddress('wglReleaseVideoDeviceNV'); + wglBindVideoImageNV := dglGetProcAddress('wglBindVideoImageNV'); + wglReleaseVideoImageNV := dglGetProcAddress('wglReleaseVideoImageNV'); + wglSendPbufferToVideoNV := dglGetProcAddress('wglSendPbufferToVideoNV'); + wglGetVideoInfoNV := dglGetProcAddress('wglGetVideoInfoNV'); +end; + +procedure Read_WGL_NV_swap_group; +begin + wglJoinSwapGroupNV := dglGetProcAddress('wglJoinSwapGroupNV'); + wglBindSwapBarrierNV := dglGetProcAddress('wglBindSwapBarrierNV'); + wglQuerySwapGroupNV := dglGetProcAddress('wglQuerySwapGroupNV'); + wglQueryMaxSwapGroupsNV := dglGetProcAddress('wglQueryMaxSwapGroupsNV'); + wglQueryFrameCountNV := dglGetProcAddress('wglQueryFrameCountNV'); + wglResetFrameCountNV := dglGetProcAddress('wglResetFrameCountNV'); +end; + +procedure Read_WGL_NV_gpu_affinity; +begin + wglEnumGpusNV := dglGetProcAddress('wglEnumGpusNV'); + wglEnumGpuDevicesNV := dglGetProcAddress('wglEnumGpuDevicesNV'); + wglCreateAffinityDCNV := dglGetProcAddress('wglCreateAffinityDCNV'); + wglEnumGpusFromAffinityDCNV := dglGetProcAddress('wglEnumGpusFromAffinityDCNV'); + wglDeleteDCNV := dglGetProcAddress('wglDeleteDCNV'); +end; + +procedure Read_WGL_NV_video_capture; +begin + wglBindVideoCaptureDeviceNV := dglGetProcAddress('wglBindVideoCaptureDeviceNV'); + wglEnumerateVideoCaptureDevicesNV := dglGetProcAddress('wglEnumerateVideoCaptureDevicesNV'); + wglLockVideoCaptureDeviceNV := dglGetProcAddress('wglLockVideoCaptureDeviceNV'); + wglQueryVideoCaptureDeviceNV := dglGetProcAddress('wglQueryVideoCaptureDeviceNV'); + wglReleaseVideoCaptureDeviceNV := dglGetProcAddress('wglReleaseVideoCaptureDeviceNV'); +end; + +procedure Read_WGL_NV_copy_image; +begin + wglCopyImageSubDataNV := dglGetProcAddress('wglCopyImageSubDataNV'); +end; + +procedure Read_WGL_NV_DX_interop; +begin + wglDXSetResourceShareHandleNV := dglGetProcAddress('wglDXSetResourceShareHandleNV'); + wglDXOpenDeviceNV := dglGetProcAddress('wglDXOpenDeviceNV'); + wglDXCloseDeviceNV := dglGetProcAddress('wglDXCloseDeviceNV'); + wglDXRegisterObjectNV := dglGetProcAddress('wglDXRegisterObjectNV'); + wglDXUnregisterObjectNV := dglGetProcAddress('wglDXUnregisterObjectNV'); + wglDXObjectAccessNV := dglGetProcAddress('wglDXObjectAccessNV'); + wglDXLockObjectsNV := dglGetProcAddress('wglDXLockObjectsNV'); + wglDXUnlockObjectsNV := dglGetProcAddress('wglDXUnlockObjectsNV'); +end; + + +procedure Read_WGL_OML_sync_control; +begin + wglGetSyncValuesOML := dglGetProcAddress('wglGetSyncValuesOML'); + wglGetMscRateOML := dglGetProcAddress('wglGetMscRateOML'); + wglSwapBuffersMscOML := dglGetProcAddress('wglSwapBuffersMscOML'); + wglSwapLayerBuffersMscOML := dglGetProcAddress('wglSwapLayerBuffersMscOML'); + wglWaitForMscOML := dglGetProcAddress('wglWaitForMscOML'); + wglWaitForSbcOML := dglGetProcAddress('wglWaitForSbcOML'); +end; + +procedure Read_WGL_3DL_stereo_control; +begin + wglSetStereoEmitterState3DL := dglGetProcAddress('wglSetStereoEmitterState3DL'); +end; + +procedure Read_WIN_draw_range_elements; +begin + glDrawRangeElementsWIN := dglGetProcAddress('glDrawRangeElementsWIN'); +end; + +procedure Read_WIN_swap_hint; +begin + glAddSwapHintRectWIN := dglGetProcAddress('glAddSwapHintRectWIN'); +end; +{$ENDIF} + + +procedure ReadExtensions; +begin + ReadOpenGLCore; + + Read_GL_3DFX_tbuffer; + Read_GL_APPLE_element_array; + Read_GL_APPLE_fence; + Read_GL_APPLE_vertex_array_object; + Read_GL_APPLE_vertex_array_range; + Read_GL_APPLE_texture_range; + Read_GL_APPLE_vertex_program_evaluators; + Read_GL_APPLE_object_purgeable; + Read_GL_ARB_matrix_palette; + Read_GL_ARB_multitexture; + Read_GL_ARB_point_parameters; + Read_GL_ARB_texture_compression; + Read_GL_ARB_transpose_matrix; + Read_GL_ARB_vertex_blend; + Read_GL_ARB_vertex_buffer_object; + Read_GL_ARB_vertex_program; + Read_GL_ARB_window_pos; + Read_GL_ARB_color_buffer_float; + Read_GL_ARB_Shader_Objects; + Read_GL_ARB_occlusion_query; + Read_GL_ARB_draw_instanced; + Read_GL_ARB_framebuffer_object; + Read_GL_ARB_geometry_shader4; + Read_GL_ARB_instanced_arrays; + Read_GL_ARB_map_buffer_range; + Read_GL_ARB_texture_buffer_object; + Read_GL_ARB_vertex_array_object; + Read_GL_ARB_uniform_buffer_object; + Read_GL_ARB_copy_buffer; + Read_GL_ARB_draw_elements_base_vertex; + Read_GL_ARB_provoking_vertex; + Read_GL_ARB_sync; + Read_GL_ARB_texture_multisample; + Read_GL_ARB_draw_buffers_blend; + Read_GL_ARB_sample_shading; + Read_GL_ARB_shading_language_include; + Read_GL_ARB_blend_func_extended; + Read_GL_ARB_sampler_objects; + Read_GL_ARB_timer_query; + Read_GL_ARB_vertex_type_2_10_10_10_rev; + Read_GL_ARB_draw_indirect; + Read_GL_ARB_gpu_shader_fp64; + Read_GL_ARB_shader_subroutine; + Read_GL_ARB_tessellation_shader; + Read_GL_ARB_transform_feedback2; + Read_GL_ARB_transform_feedback3; + Read_GL_ARB_ES2_compatibility; + Read_GL_ARB_get_program_binary; + Read_GL_ARB_separate_shader_objects; + Read_GL_ARB_vertex_attrib_64bit; + Read_GL_ARB_viewport_array; + Read_GL_ARB_cl_event; + Read_GL_ARB_debug_output; + Read_GL_ARB_robustness; + // + Read_GL_ATI_draw_buffers; + Read_GL_ATI_element_array; + Read_GL_ATI_envmap_bumpmap; + Read_GL_ATI_fragment_shader; + Read_GL_ATI_map_object_buffer; + Read_GL_ATI_pn_triangles; + Read_GL_ATI_separate_stencil; + Read_GL_ATI_vertex_array_object; + Read_GL_ATI_vertex_attrib_array_object; + Read_GL_ATI_vertex_streams; + Read_GL_AMD_performance_monitor; + Read_GL_AMD_vertex_shader_tesselator; + Read_GL_AMD_draw_buffers_blend; + Read_GL_AMD_name_gen_delete; + Read_GL_AMD_debug_output; + Read_GL_AMD_stencil_operation_extended; + Read_GL_EXT_blend_color; + Read_GL_EXT_blend_func_separate; + Read_GL_EXT_blend_minmax; + Read_GL_EXT_color_subtable; + Read_GL_EXT_compiled_vertex_array; + Read_GL_EXT_convolution; + Read_GL_EXT_coordinate_frame; + Read_GL_EXT_copy_texture; + Read_GL_EXT_cull_vertex; + Read_GL_EXT_draw_range_elements; + Read_GL_EXT_fog_coord; + Read_GL_EXT_framebuffer_object; + Read_GL_EXT_histogram; + Read_GL_EXT_index_func; + Read_GL_EXT_index_material; + Read_GL_EXT_multi_draw_arrays; + Read_GL_EXT_multisample; + Read_GL_EXT_paletted_texture; + Read_GL_EXT_pixel_transform; + Read_GL_EXT_point_parameters; + Read_GL_EXT_polygon_offset; + Read_GL_EXT_secondary_color; + Read_GL_EXT_stencil_two_side; + Read_GL_EXT_subtexture; + Read_GL_EXT_texture3D; + Read_GL_EXT_texture_object; + Read_GL_EXT_texture_perturb_normal; + Read_GL_EXT_vertex_array; + Read_GL_EXT_vertex_shader; + Read_GL_EXT_vertex_weighting; + Read_GL_EXT_depth_bounds_test; + Read_GL_EXT_blend_equation_separate; + Read_GL_EXT_stencil_clear_tag; + Read_GL_EXT_framebuffer_blit; + Read_GL_EXT_framebuffer_multisample; + Read_GL_EXT_timer_query; + Read_GL_EXT_gpu_program_parameters; + Read_GL_EXT_bindable_uniform; + Read_GL_EXT_draw_buffers2; + Read_GL_EXT_draw_instanced; + Read_GL_EXT_geometry_shader4; + Read_GL_EXT_gpu_shader4; + Read_GL_EXT_texture_array; + Read_GL_EXT_texture_buffer_object; + Read_GL_EXT_texture_integer; + Read_GL_EXT_transform_feedback; + Read_GL_EXT_direct_state_access; + Read_GL_EXT_separate_shader_objects; + Read_GL_EXT_shader_image_load_store; + Read_GL_EXT_vertex_attrib_64bit; + Read_GL_HP_image_transform; + Read_GL_IBM_multimode_draw_arrays; + Read_GL_IBM_vertex_array_lists; + Read_GL_INGR_blend_func_separate; + Read_GL_INTEL_parallel_arrays; + Read_GL_MESA_resize_buffers; + Read_GL_MESA_window_pos; + Read_GL_NV_evaluators; + Read_GL_NV_fence; + Read_GL_NV_fragment_program; + Read_GL_NV_half_float; + Read_GL_NV_occlusion_query; + Read_GL_NV_pixel_data_range; + Read_GL_NV_point_sprite; + Read_GL_NV_primitive_restart; + Read_GL_NV_register_combiners; + Read_GL_NV_register_combiners2; + Read_GL_NV_vertex_array_range; + Read_GL_NV_vertex_program; + Read_GL_NV_depth_buffer_float; + Read_GL_NV_framebuffer_multisample_coverage; + Read_GL_NV_geometry_program4; + Read_GL_NV_gpu_program4; + Read_GL_NV_parameter_buffer_object; + Read_GL_NV_transform_feedback; + Read_GL_NV_conditional_render; + Read_GL_NV_present_video; + Read_GL_NV_explicit_multisample; + Read_GL_NV_transform_feedback2; + Read_GL_NV_video_capture; + Read_GL_NV_copy_image; + Read_GL_NV_shader_buffer_load; + Read_GL_NV_vertex_buffer_unified_memory; + Read_GL_NV_gpu_program5; + Read_GL_NV_gpu_shader5; + Read_GL_NV_vertex_attrib_integer_64bit; + Read_GL_NV_vdpau_interop; + Read_GL_NV_texture_barrier; + Read_GL_NV_path_rendering; + Read_GL_NV_bindless_texture; + Read_GL_PGI_misc_hints; + Read_GL_SGIS_detail_texture; + Read_GL_SGIS_fog_function; + Read_GL_SGIS_multisample; + Read_GL_SGIS_pixel_texture; + Read_GL_SGIS_point_parameters; + Read_GL_SGIS_sharpen_texture; + Read_GL_SGIS_texture4D; + Read_GL_SGIS_texture_color_mask; + Read_GL_SGIS_texture_filter4; + Read_GL_SGIX_async; + Read_GL_SGIX_flush_raster; + Read_GL_SGIX_fragment_lighting; + Read_GL_SGIX_framezoom; + Read_GL_SGIX_igloo_interface; + Read_GL_SGIX_instruments; + Read_GL_SGIX_list_priority; + Read_GL_SGIX_pixel_texture; + Read_GL_SGIX_polynomial_ffd; + Read_GL_SGIX_reference_plane; + Read_GL_SGIX_sprite; + Read_GL_SGIX_tag_sample_buffer; + Read_GL_SGI_color_table; + Read_GL_SUNX_constant_data; + Read_GL_SUN_global_alpha; + Read_GL_SUN_mesh_array; + Read_GL_SUN_triangle_list; + Read_GL_SUN_vertex; + +{$IFDEF DGL_WIN} + Read_WGL_ARB_buffer_region; + Read_WGL_ARB_extensions_string; + Read_WGL_ARB_make_current_read; + Read_WGL_ARB_pbuffer; + Read_WGL_ARB_pixel_format; + Read_WGL_ARB_pixel_format_float; + Read_WGL_ARB_render_texture; + Read_WGL_ARB_create_context; + Read_WGL_AMD_gpu_association; + Read_WGL_EXT_display_color_table; + Read_WGL_EXT_extensions_string; + Read_WGL_EXT_make_current_read; + Read_WGL_EXT_pbuffer; + Read_WGL_EXT_pixel_format; + Read_WGL_EXT_swap_control; + Read_WGL_I3D_digital_video_control; + Read_WGL_I3D_gamma; + Read_WGL_I3D_genlock; + Read_WGL_I3D_image_buffer; + Read_WGL_I3D_swap_frame_lock; + Read_WGL_I3D_swap_frame_usage; + Read_WGL_NV_vertex_array_range; + Read_WGL_NV_present_video; + Read_WGL_NV_video_output; + Read_WGL_NV_swap_group; + Read_WGL_NV_gpu_affinity; + Read_WGL_NV_video_capture; + Read_WGL_NV_copy_image; + Read_WGL_NV_DX_interop; + Read_WGL_OML_sync_control; + Read_WGL_3DL_stereo_control; + + Read_WIN_draw_range_elements; + Read_WIN_swap_hint; +{$ENDIF} + + ExtensionsRead := True; +end; + +// ============================================================================= +// ReadCoreVersion +// ============================================================================= + +procedure ReadCoreVersion; +var + AnsiBuffer: AnsiString; + Buffer: String; + MajorVersion, MinorVersion: Integer; + + procedure TrimAndSplitVersionString(Buffer: String; out Max, Min: Integer); + // Peels out the X.Y form from the given Buffer which must contain a version string like "text Minor.Major.Build text" + // at least however "Major.Minor". + var + Separator: Integer; + begin + try + // There must be at least one dot to separate major and minor version number. + Separator := Pos('.', Buffer); + // At least one number must be before and one after the dot. + if (Separator > 1) and (Separator < Length(Buffer)) and (AnsiChar(Buffer[Separator - 1]) in ['0'..'9']) and + (AnsiChar(Buffer[Separator + 1]) in ['0'..'9']) then + begin + // OK, it's a valid version string. Now remove unnecessary parts. + Dec(Separator); + // Find last non-numeric character before version number. + while (Separator > 0) and (AnsiChar(Buffer[Separator]) in ['0'..'9']) do + Dec(Separator); + // Delete leading characters which do not belong to the version string. + Delete(Buffer, 1, Separator); + Separator := Pos('.', Buffer) + 1; + // Find first non-numeric character after version number + while (Separator <= Length(Buffer)) and (AnsiChar(Buffer[Separator]) in ['0'..'9']) do + Inc(Separator); + // delete trailing characters not belonging to the version string + Delete(Buffer, Separator, 255); + // Now translate the numbers. + Separator := Pos('.', Buffer); // This is necessary because the buffer length might have changed. + Max := StrToInt(Copy(Buffer, 1, Separator - 1)); + Min := StrToInt(Copy(Buffer, Separator + 1, 1)); + end + else + Abort; + except + Min := 0; + Max := 0; + end; + end; + + +begin + // determine version of implementation + // GL + if not Assigned(@glGetString) then + glGetString := dglGetProcAddress('glGetString'); + + AnsiBuffer := glGetString(GL_VERSION); + Buffer := String(AnsiBuffer); + + TrimAndSplitVersionString(Buffer, MajorVersion, MinorVersion); + + GL_VERSION_1_0 := True; + GL_VERSION_1_1 := False; + GL_VERSION_1_2 := False; + GL_VERSION_1_3 := False; + GL_VERSION_1_4 := False; + GL_VERSION_1_5 := False; + GL_VERSION_2_0 := False; + GL_VERSION_2_1 := False; + GL_VERSION_3_0 := False; + GL_VERSION_3_1 := False; + GL_VERSION_3_2 := False; + GL_VERSION_3_3 := False; + GL_VERSION_4_0 := False; + GL_VERSION_4_1 := False; + GL_VERSION_4_2 := False; + GL_VERSION_4_3 := False; + GL_VERSION_4_4 := False; + + if MajorVersion = 1 then + begin + if MinorVersion >= 1 then + GL_VERSION_1_1 := True; + if MinorVersion >= 2 then + GL_VERSION_1_2 := True; + if MinorVersion >= 3 then + GL_VERSION_1_3 := True; + if MinorVersion >= 4 then + GL_VERSION_1_4 := True; + if MinorVersion >= 5 then + GL_VERSION_1_5 := True; + end; + + if MajorVersion >= 2 then + begin + GL_VERSION_1_1 := True; + GL_VERSION_1_2 := True; + GL_VERSION_1_3 := True; + GL_VERSION_1_4 := True; + GL_VERSION_1_5 := True; + GL_VERSION_2_0 := True; + + if MinorVersion >= 1 then + GL_VERSION_2_1 := True; + end; + + if MajorVersion >= 3 then + begin + GL_VERSION_2_1 := True; + GL_VERSION_3_0 := True; + + if MinorVersion >= 1 then + GL_VERSION_3_1 := True; + if MinorVersion >= 2 then + GL_VERSION_3_2 := True; + if MinorVersion >= 3 then + GL_VERSION_3_3 := True; + end; + + if MajorVersion >= 4 then + begin + GL_VERSION_3_1 := True; + GL_VERSION_3_2 := True; + GL_VERSION_3_3 := True; + GL_VERSION_4_0 := True; + + if MinorVersion >= 1 then + GL_VERSION_4_1 := True; + if MinorVersion >= 2 then + GL_VERSION_4_2 := True; + if MinorVersion >= 3 then + GL_VERSION_4_3 := True; + if MinorVersion >= 4 then + GL_VERSION_4_4 := True; + end; + + // GLU + GLU_VERSION_1_1 := False; + GLU_VERSION_1_2 := False; + GLU_VERSION_1_3 := False; + + if Assigned(gluGetString) then begin + AnsiBuffer := gluGetString(GLU_VERSION); + Buffer := String(AnsiBuffer); + + TrimAndSplitVersionString(Buffer, Majorversion, MinorVersion); + + GLU_VERSION_1_1 := True; + + if MinorVersion >= 2 then + GLU_VERSION_1_2 := True; + + if MinorVersion >= 3 then + GLU_VERSION_1_3 := True; + end; +end; + + +// ============================================================================= +// ReadImplementationProperties +// ============================================================================= + +procedure ReadImplementationProperties; +var + Buffer: Ansistring; +begin + ReadCoreVersion; + + // Check all extensions + Buffer := Int_GetExtensionString; + + // === 3DFX ==================================================================== + GL_3DFX_multisample := Int_CheckExtension(Buffer, 'GL_3DFX_multisample'); + GL_3DFX_tbuffer := Int_CheckExtension(Buffer, 'GL_3DFX_tbuffer'); + GL_3DFX_texture_compression_FXT1 := Int_CheckExtension(Buffer, 'GL_3DFX_texture_compression_FXT1'); + + // === APPLE =================================================================== + GL_APPLE_client_storage := Int_CheckExtension(Buffer, 'GL_APPLE_client_storage'); + GL_APPLE_element_array := Int_CheckExtension(Buffer, 'GL_APPLE_element_array'); + GL_APPLE_fence := Int_CheckExtension(Buffer, 'GL_APPLE_fence'); + GL_APPLE_specular_vector := Int_CheckExtension(Buffer, 'GL_APPLE_specular_vector'); + GL_APPLE_transform_hint := Int_CheckExtension(Buffer, 'GL_APPLE_transform_hint'); + GL_APPLE_vertex_array_object := Int_CheckExtension(Buffer, 'GL_APPLE_vertex_array_object'); + GL_APPLE_vertex_array_range := Int_CheckExtension(Buffer, 'GL_APPLE_vertex_array_range'); + GL_APPLE_ycbcr_422 := Int_CheckExtension(Buffer, 'GL_APPLE_ycbcr_422'); + GL_APPLE_texture_range := Int_CheckExtension(Buffer, 'GL_APPLE_texture_range'); + GL_APPLE_float_pixels := Int_CheckExtension(Buffer, 'GL_APPLE_float_pixels'); + GL_APPLE_vertex_program_evaluators := Int_CheckExtension(Buffer, 'GL_APPLE_vertex_program_evaluators'); + GL_APPLE_aux_depth_stencil := Int_CheckExtension(Buffer, 'GL_APPLE_aux_depth_stencil'); + GL_APPLE_object_purgeable := Int_CheckExtension(Buffer, 'GL_APPLE_object_purgeable'); + GL_APPLE_row_bytes := Int_CheckExtension(Buffer, 'GL_APPLE_row_bytes'); + GL_APPLE_rgb_422 := Int_CheckExtension(Buffer, 'GL_APPLE_rgb_422'); + + // === ARB ===================================================================== + GL_ARB_depth_texture := Int_CheckExtension(Buffer, 'GL_ARB_depth_texture'); + GL_ARB_fragment_program := Int_CheckExtension(Buffer, 'GL_ARB_fragment_program'); + GL_ARB_imaging := Int_CheckExtension(Buffer, 'GL_ARB_imaging'); + GL_ARB_matrix_palette := Int_CheckExtension(Buffer, 'GL_ARB_matrix_palette'); + GL_ARB_multisample := Int_CheckExtension(Buffer, 'GL_ARB_multisample'); + GL_ARB_multitexture := Int_CheckExtension(Buffer, 'GL_ARB_multitexture'); + GL_ARB_point_parameters := Int_CheckExtension(Buffer, 'GL_ARB_point_parameters'); + GL_ARB_shadow := Int_CheckExtension(Buffer, 'GL_ARB_shadow'); + GL_ARB_shadow_ambient := Int_CheckExtension(Buffer, 'GL_ARB_shadow_ambient'); + GL_ARB_texture_border_clamp := Int_CheckExtension(Buffer, 'GL_ARB_texture_border_clamp'); + GL_ARB_texture_compression := Int_CheckExtension(Buffer, 'GL_ARB_texture_compression'); + GL_ARB_texture_cube_map := Int_CheckExtension(Buffer, 'GL_ARB_texture_cube_map'); + GL_ARB_texture_env_add := Int_CheckExtension(Buffer, 'GL_ARB_texture_env_add'); + GL_ARB_texture_env_combine := Int_CheckExtension(Buffer, 'GL_ARB_texture_env_combine'); + GL_ARB_texture_env_crossbar := Int_CheckExtension(Buffer, 'GL_ARB_texture_env_crossbar'); + GL_ARB_texture_env_dot3 := Int_CheckExtension(Buffer, 'GL_ARB_texture_env_dot3'); + GL_ARB_texture_mirrored_repeat := Int_CheckExtension(Buffer, 'GL_ARB_texture_mirrored_repeat'); + GL_ARB_transpose_matrix := Int_CheckExtension(Buffer, 'GL_ARB_transpose_matrix'); + GL_ARB_vertex_blend := Int_CheckExtension(Buffer, 'GL_ARB_vertex_blend'); + GL_ARB_vertex_buffer_object := Int_CheckExtension(Buffer, 'GL_ARB_vertex_buffer_object'); + GL_ARB_vertex_program := Int_CheckExtension(Buffer, 'GL_ARB_vertex_program'); + GL_ARB_window_pos := Int_CheckExtension(Buffer, 'GL_ARB_window_pos'); + GL_ARB_shader_objects := Int_CheckExtension(Buffer, 'GL_ARB_shader_objects'); + GL_ARB_vertex_shader := Int_CheckExtension(Buffer, 'GL_ARB_vertex_shader'); + GL_ARB_fragment_shader := Int_CheckExtension(Buffer, 'GL_ARB_fragment_shader'); + GL_ARB_occlusion_query := Int_CheckExtension(Buffer, 'GL_ARB_occlusion_query'); + GL_ARB_shading_language_100 := Int_CheckExtension(Buffer, 'GL_ARB_shading_language_100'); + GL_ARB_point_sprite := Int_CheckExtension(Buffer, 'GL_ARB_point_sprite'); + GL_ARB_texture_non_power_of_two := Int_CheckExtension(Buffer, 'GL_ARB_texture_non_power_of_two'); + GL_ARB_fragment_program_shadow := Int_CheckExtension(Buffer, 'GL_ARB_fragment_program_shadow'); + GL_ARB_draw_buffers := Int_CheckExtension(Buffer, 'GL_ARB_draw_buffers'); + GL_ARB_texture_rectangle := Int_CheckExtension(Buffer, 'GL_ARB_texture_rectangle'); + GL_ARB_color_buffer_float := Int_CheckExtension(Buffer, 'GL_ARB_color_buffer_float'); + GL_ARB_half_float_pixel := Int_CheckExtension(Buffer, 'GL_ARB_half_float_pixel'); + GL_ARB_texture_float := Int_CheckExtension(Buffer, 'GL_ARB_texture_float'); + GL_ARB_pixel_buffer_object := Int_CheckExtension(Buffer, 'GL_ARB_pixel_buffer_object'); + GL_ARB_depth_buffer_float := Int_CheckExtension(Buffer, 'GL_ARB_depth_buffer_float'); + GL_ARB_draw_instanced := Int_CheckExtension(Buffer, 'GL_ARB_draw_instanced'); + GL_ARB_framebuffer_object := Int_CheckExtension(Buffer, 'GL_ARB_framebuffer_object'); + GL_ARB_framebuffer_sRGB := Int_CheckExtension(Buffer, 'GL_ARB_framebuffer_sRGB'); + GL_ARB_geometry_shader4 := Int_CheckExtension(Buffer, 'GL_ARB_geometry_shader4'); + GL_ARB_half_float_vertex := Int_CheckExtension(Buffer, 'GL_ARB_half_float_vertex'); + GL_ARB_instanced_arrays := Int_CheckExtension(Buffer, 'GL_ARB_instanced_arrays'); + GL_ARB_map_buffer_range := Int_CheckExtension(Buffer, 'GL_ARB_map_buffer_range'); + GL_ARB_texture_buffer_object := Int_CheckExtension(Buffer, 'GL_ARB_texture_buffer_object'); + GL_ARB_texture_compression_rgtc := Int_CheckExtension(Buffer, 'GL_ARB_texture_compression_rgtc'); + GL_ARB_texture_rg := Int_CheckExtension(Buffer, 'GL_ARB_texture_rg'); + GL_ARB_vertex_array_object := Int_CheckExtension(Buffer, 'GL_ARB_vertex_array_object'); + GL_ARB_uniform_buffer_object := Int_CheckExtension(Buffer, 'GL_ARB_uniform_buffer_object'); + GL_ARB_compatibility := Int_CheckExtension(Buffer, 'GL_ARB_compatibility'); + GL_ARB_copy_buffer := Int_CheckExtension(Buffer, 'GL_ARB_copy_buffer'); + GL_ARB_shader_texture_lod := Int_CheckExtension(Buffer, 'GL_ARB_shader_texture_lod'); + GL_ARB_depth_clamp := Int_CheckExtension(Buffer, 'GL_ARB_depth_clamp'); + GL_ARB_draw_elements_base_vertex := Int_CheckExtension(Buffer, 'GL_ARB_draw_elements_base_vertex'); + GL_ARB_fragment_coord_conventions := Int_CheckExtension(Buffer, 'GL_ARB_fragment_coord_conventions'); + GL_ARB_provoking_vertex := Int_CheckExtension(Buffer, 'GL_ARB_provoking_vertex'); + GL_ARB_seamless_cube_map := Int_CheckExtension(Buffer, 'GL_ARB_seamless_cube_map'); + GL_ARB_sync := Int_CheckExtension(Buffer, 'GL_ARB_sync'); + GL_ARB_texture_multisample := Int_CheckExtension(Buffer, 'GL_ARB_texture_multisample'); + GL_ARB_vertex_array_bgra := Int_CheckExtension(Buffer, 'GL_ARB_vertex_array_bgra'); + GL_ARB_draw_buffers_blend := Int_CheckExtension(Buffer, 'GL_ARB_draw_buffers_blend'); + GL_ARB_sample_shading := Int_CheckExtension(Buffer, 'GL_ARB_sample_shading'); + GL_ARB_texture_cube_map_array := Int_CheckExtension(Buffer, 'GL_ARB_texture_cube_map_array'); + GL_ARB_texture_gather := Int_CheckExtension(Buffer, 'GL_ARB_texture_gather'); + GL_ARB_texture_query_lod := Int_CheckExtension(Buffer, 'GL_ARB_texture_query_lod'); + GL_ARB_shading_language_include := Int_CheckExtension(Buffer, 'GL_ARB_shading_language_include'); + GL_ARB_texture_compression_bptc := Int_CheckExtension(Buffer, 'GL_ARB_texture_compression_bptc'); + GL_ARB_blend_func_extended := Int_CheckExtension(Buffer, 'GL_ARB_blend_func_extended'); + GL_ARB_explicit_attrib_location := Int_CheckExtension(Buffer, 'GL_ARB_explicit_attrib_location'); + GL_ARB_occlusion_query2 := Int_CheckExtension(Buffer, 'GL_ARB_occlusion_query2'); + GL_ARB_sampler_objects := Int_CheckExtension(Buffer, 'GL_ARB_sampler_objects'); + GL_ARB_shader_bit_encoding := Int_CheckExtension(Buffer, 'GL_ARB_shader_bit_encoding'); + GL_ARB_texture_rgb10_a2ui := Int_CheckExtension(Buffer, 'GL_ARB_texture_rgb10_a2ui'); + GL_ARB_texture_swizzle := Int_CheckExtension(Buffer, 'GL_ARB_texture_swizzle'); + GL_ARB_timer_query := Int_CheckExtension(Buffer, 'GL_ARB_timer_query'); + GL_ARB_vertex_type_2_10_10_10_rev := Int_CheckExtension(Buffer, 'GL_ARB_vertex_type_2_10_10_10_rev'); + GL_ARB_draw_indirect := Int_CheckExtension(Buffer, 'GL_ARB_draw_indirect'); + GL_ARB_gpu_shader5 := Int_CheckExtension(Buffer, 'GL_ARB_gpu_shader5'); + GL_ARB_gpu_shader_fp64 := Int_CheckExtension(Buffer, 'GL_ARB_gpu_shader_fp64'); + GL_ARB_shader_subroutine := Int_CheckExtension(Buffer, 'GL_ARB_shader_subroutine'); + GL_ARB_tessellation_shader := Int_CheckExtension(Buffer, 'GL_ARB_tessellation_shader'); + GL_ARB_texture_buffer_object_rgb32 := Int_CheckExtension(Buffer, 'GL_ARB_texture_buffer_object_rgb32'); + GL_ARB_transform_feedback2 := Int_CheckExtension(Buffer, 'GL_ARB_transform_feedback2'); + GL_ARB_transform_feedback3 := Int_CheckExtension(Buffer, 'GL_ARB_transform_feedback3'); + GL_ARB_ES2_compatibility := Int_CheckExtension(Buffer, 'GL_ARB_ES2_compatibility'); + GL_ARB_get_program_binary := Int_CheckExtension(Buffer, 'GL_ARB_get_program_binary'); + GL_ARB_separate_shader_objects := Int_CheckExtension(Buffer, 'GL_ARB_separate_shader_objects'); + GL_ARB_shader_precision := Int_CheckExtension(Buffer, 'GL_ARB_shader_precision'); + GL_ARB_vertex_attrib_64bit := Int_CheckExtension(Buffer, 'GL_ARB_vertex_attrib_64bit'); + GL_ARB_viewport_array := Int_CheckExtension(Buffer, 'GL_ARB_viewport_array'); + + // GL 4.2 + GL_ARB_base_instance := Int_CheckExtension(Buffer, 'GL_ARB_base_instance'); + GL_ARB_shading_language_420pack := Int_CheckExtension(Buffer, 'GL_ARB_shading_language_420pack'); + GL_ARB_transform_feedback_instanced := Int_CheckExtension(Buffer, 'GL_ARB_transform_feedback_instanced'); + GL_ARB_compressed_texture_pixel_storage := Int_CheckExtension(Buffer, 'GL_ARB_compressed_texture_pixel_storage'); + GL_ARB_conservative_depth := Int_CheckExtension(Buffer, 'GL_ARB_conservative_depth'); + GL_ARB_internalformat_query := Int_CheckExtension(Buffer, 'GL_ARB_internalformat_query'); + GL_ARB_map_buffer_alignment := Int_CheckExtension(Buffer, 'GL_ARB_map_buffer_alignment'); + GL_ARB_shader_atomic_counters := Int_CheckExtension(Buffer, 'GL_ARB_shader_atomic_counters'); + GL_ARB_shader_image_load_store := Int_CheckExtension(Buffer, 'GL_ARB_shader_image_load_store'); + GL_ARB_shading_language_packing := Int_CheckExtension(Buffer, 'GL_ARB_shading_language_packing'); + GL_ARB_texture_storage := Int_CheckExtension(Buffer, 'GL_ARB_texture_storage'); + // END GL 4.2 + + // GL 4.3 + GL_ARB_arrays_of_arrays := Int_CheckExtension(Buffer, 'GL_ARB_arrays_of_arrays'); + GL_ARB_fragment_layer_viewport := Int_CheckExtension(Buffer, 'GL_ARB_fragment_layer_viewport'); + GL_ARB_shader_image_size := Int_CheckExtension(Buffer, 'GL_ARB_shader_image_size'); + GL_ARB_ES3_compatibility := Int_CheckExtension(Buffer, 'GL_ARB_ES3_compatibility'); + GL_ARB_clear_buffer_object := Int_CheckExtension(Buffer, 'GL_ARB_clear_buffer_object'); + GL_ARB_compute_shader := Int_CheckExtension(Buffer, 'GL_ARB_compute_shader'); + GL_ARB_copy_image := Int_CheckExtension(Buffer, 'GL_ARB_copy_image'); + GL_KHR_debug := Int_CheckExtension(Buffer, 'GL_KHR_debug'); + GL_ARB_explicit_uniform_location := Int_CheckExtension(Buffer, 'GL_ARB_explicit_uniform_location'); + GL_ARB_framebuffer_no_attachments := Int_CheckExtension(Buffer, 'GL_ARB_framebuffer_no_attachments'); + GL_ARB_internalformat_query2 := Int_CheckExtension(Buffer, 'GL_ARB_internalformat_query2'); + GL_ARB_invalidate_subdata := Int_CheckExtension(Buffer, 'GL_ARB_invalidate_subdata'); + GL_ARB_multi_draw_indirect := Int_CheckExtension(Buffer, 'GL_ARB_multi_draw_indirect'); + GL_ARB_program_interface_query := Int_CheckExtension(Buffer, 'GL_ARB_program_interface_query'); + GL_ARB_robust_buffer_access_behavior := Int_CheckExtension(Buffer, 'GL_ARB_robust_buffer_access_behavior'); + GL_ARB_shader_storage_buffer_object := Int_CheckExtension(Buffer, 'GL_ARB_shader_storage_buffer_object'); + GL_ARB_stencil_texturing := Int_CheckExtension(Buffer, 'GL_ARB_stencil_texturing'); + GL_ARB_texture_buffer_range := Int_CheckExtension(Buffer, 'GL_ARB_texture_buffer_range'); + GL_ARB_texture_query_levels := Int_CheckExtension(Buffer, 'GL_ARB_texture_query_levels'); + GL_ARB_texture_storage_multisample := Int_CheckExtension(Buffer, 'GL_ARB_texture_storage_multisample'); + GL_ARB_texture_view := Int_CheckExtension(Buffer, 'GL_ARB_texture_view'); + GL_ARB_vertex_attrib_binding := Int_CheckExtension(Buffer, 'GL_ARB_vertex_attrib_binding'); + GL_ARB_cl_event := Int_CheckExtension(Buffer, 'GL_ARB_cl_event'); + GL_ARB_debug_output := Int_CheckExtension(Buffer, 'GL_ARB_debug_output'); + GL_ARB_robustness := Int_CheckExtension(Buffer, 'GL_ARB_robustness'); + GL_ARB_shader_stencil_export := Int_CheckExtension(Buffer, 'GL_ARB_shader_stencil_export'); + // END GL 4.3 + + // GL 4.4 + GL_ARB_buffer_storage := Int_CheckExtension(Buffer, 'GL_ARB_buffer_storage'); + GL_ARB_clear_texture := Int_CheckExtension(Buffer, 'GL_ARB_clear_texture'); + GL_ARB_enhanced_layouts := Int_CheckExtension(Buffer, 'GL_ARB_enhanced_layouts'); + GL_ARB_multi_bind := Int_CheckExtension(Buffer, 'GL_ARB_multi_bind'); + GL_ARB_query_buffer_object := Int_CheckExtension(Buffer, 'GL_ARB_query_buffer_object'); + GL_ARB_texture_mirror_clamp_to_edge := Int_CheckExtension(Buffer, 'GL_ARB_texture_mirror_clamp_to_edge'); + GL_ARB_texture_stencil8 := Int_CheckExtension(Buffer, 'GL_ARB_texture_stencil8'); + GL_ARB_vertex_type_10f_11f_11f_rev := Int_CheckExtension(Buffer, 'GL_ARB_vertex_type_10f_11f_11f_rev'); + // END GL 4.4 + + // === ATI/AMD ================================================================ + GL_ATI_draw_buffers := Int_CheckExtension(Buffer, 'GL_ATI_draw_buffers'); + GL_ATI_element_array := Int_CheckExtension(Buffer, 'GL_ATI_element_array'); + GL_ATI_envmap_bumpmap := Int_CheckExtension(Buffer, 'GL_ATI_envmap_bumpmap'); + GL_ATI_fragment_shader := Int_CheckExtension(Buffer, 'GL_ATI_fragment_shader'); + GL_ATI_map_object_buffer := Int_CheckExtension(Buffer, 'GL_ATI_map_object_buffer'); + GL_ATI_pn_triangles := Int_CheckExtension(Buffer, 'GL_ATI_pn_triangles'); + GL_ATI_separate_stencil := Int_CheckExtension(Buffer, 'GL_ATI_separate_stencil'); + GL_ATI_text_fragment_shader := Int_CheckExtension(Buffer, 'GL_ATI_text_fragment_shader'); + GL_ATI_texture_env_combine3 := Int_CheckExtension(Buffer, 'GL_ATI_texture_env_combine3'); + GL_ATI_texture_float := Int_CheckExtension(Buffer, 'GL_ATI_texture_float'); + GL_ATI_texture_mirror_once := Int_CheckExtension(Buffer, 'GL_ATI_texture_mirror_once'); + GL_ATI_vertex_array_object := Int_CheckExtension(Buffer, 'GL_ATI_vertex_array_object'); + GL_ATI_vertex_attrib_array_object := Int_CheckExtension(Buffer, 'GL_ATI_vertex_attrib_array_object'); + GL_ATI_vertex_streams := Int_CheckExtension(Buffer, 'GL_ATI_vertex_streams'); + GL_ATI_meminfo := Int_CheckExtension(Buffer, 'GL_ATI_meminfo'); + GL_AMD_performance_monitor := Int_CheckExtension(Buffer, 'GL_AMD_performance_monitor'); + GL_AMD_texture_texture4 := Int_CheckExtension(Buffer, 'GL_AMD_texture_texture4'); + GL_AMD_vertex_shader_tesselator := Int_CheckExtension(Buffer, 'GL_AMD_vertex_shader_tesselator'); + GL_AMD_draw_buffers_blend := Int_CheckExtension(Buffer, 'GL_AMD_draw_buffers_blend'); + GL_AMD_shader_stencil_export := Int_CheckExtension(Buffer, 'GL_AMD_shader_stencil_export'); + GL_AMD_seamless_cubemap_per_texture := Int_CheckExtension(Buffer, 'GL_AMD_seamless_cubemap_per_texture'); + GL_AMD_conservative_depth := Int_CheckExtension(Buffer, 'GL_AMD_conservative_depth'); + GL_AMD_name_gen_delete := Int_CheckExtension(Buffer, 'GL_AMD_name_gen_delete'); + GL_AMD_debug_output := Int_CheckExtension(Buffer, 'GL_AMD_debug_output'); + GL_AMD_transform_feedback3_lines_triangles := Int_CheckExtension(Buffer, 'GL_AMD_transform_feedback3_lines_triangles'); + GL_AMD_depth_clamp_separate := Int_CheckExtension(Buffer, 'GL_AMD_depth_clamp_separate'); + // 4.3 + GL_AMD_pinned_memory := Int_CheckExtension(Buffer, 'GL_AMD_pinned_memory'); + GL_AMD_stencil_operation_extended := Int_CheckExtension(Buffer, 'GL_AMD_stencil_operation_extended'); + GL_AMD_vertex_shader_viewport_index := Int_CheckExtension(Buffer, 'GL_AMD_vertex_shader_viewport_index'); + GL_AMD_vertex_shader_layer := Int_CheckExtension(Buffer, 'GL_AMD_vertex_shader_layer'); + GL_AMD_query_buffer_object := Int_CheckExtension(Buffer, 'GL_AMD_query_buffer_object'); + + // === EXT ===================================================================== + GL_EXT_422_pixels := Int_CheckExtension(Buffer, 'GL_EXT_422_pixels'); + GL_EXT_abgr := Int_CheckExtension(Buffer, 'GL_EXT_abgr'); + GL_EXT_bgra := Int_CheckExtension(Buffer, 'GL_EXT_bgra'); + GL_EXT_blend_color := Int_CheckExtension(Buffer, 'GL_EXT_blend_color'); + GL_EXT_blend_func_separate := Int_CheckExtension(Buffer, 'GL_EXT_blend_func_separate'); + GL_EXT_blend_logic_op := Int_CheckExtension(Buffer, 'GL_EXT_blend_logic_op'); + GL_EXT_blend_minmax := Int_CheckExtension(Buffer, 'GL_EXT_blend_minmax'); + GL_EXT_blend_subtract := Int_CheckExtension(Buffer, 'GL_EXT_blend_subtract'); + GL_EXT_clip_volume_hint := Int_CheckExtension(Buffer, 'GL_EXT_clip_volume_hint'); + GL_EXT_cmyka := Int_CheckExtension(Buffer, 'GL_EXT_cmyka'); + GL_EXT_color_matrix := Int_CheckExtension(Buffer, 'GL_EXT_color_matrix'); + GL_EXT_color_subtable := Int_CheckExtension(Buffer, 'GL_EXT_color_subtable'); + GL_EXT_compiled_vertex_array := Int_CheckExtension(Buffer, 'GL_EXT_compiled_vertex_array'); + GL_EXT_convolution := Int_CheckExtension(Buffer, 'GL_EXT_convolution'); + GL_EXT_coordinate_frame := Int_CheckExtension(Buffer, 'GL_EXT_coordinate_frame'); + GL_EXT_copy_texture := Int_CheckExtension(Buffer, 'GL_EXT_copy_texture'); + GL_EXT_cull_vertex := Int_CheckExtension(Buffer, 'GL_EXT_cull_vertex'); + GL_EXT_draw_range_elements := Int_CheckExtension(Buffer, 'GL_EXT_draw_range_elements'); + GL_EXT_fog_coord := Int_CheckExtension(Buffer, 'GL_EXT_fog_coord'); + GL_EXT_framebuffer_object := Int_CheckExtension(Buffer, 'GL_EXT_framebuffer_object'); + GL_EXT_histogram := Int_CheckExtension(Buffer, 'GL_EXT_histogram'); + GL_EXT_index_array_formats := Int_CheckExtension(Buffer, 'GL_EXT_index_array_formats'); + GL_EXT_index_func := Int_CheckExtension(Buffer, 'GL_EXT_index_func'); + GL_EXT_index_material := Int_CheckExtension(Buffer, 'GL_EXT_index_material'); + GL_EXT_index_texture := Int_CheckExtension(Buffer, 'GL_EXT_index_texture'); + GL_EXT_light_texture := Int_CheckExtension(Buffer, 'GL_EXT_light_texture'); + GL_EXT_misc_attribute := Int_CheckExtension(Buffer, 'GL_EXT_misc_attribute'); + GL_EXT_multi_draw_arrays := Int_CheckExtension(Buffer, 'GL_EXT_multi_draw_arrays'); + GL_EXT_multisample := Int_CheckExtension(Buffer, 'GL_EXT_multisample'); + GL_EXT_packed_pixels := Int_CheckExtension(Buffer, 'GL_EXT_packed_pixels'); + GL_EXT_paletted_texture := Int_CheckExtension(Buffer, 'GL_EXT_paletted_texture'); + GL_EXT_pixel_transform := Int_CheckExtension(Buffer, 'GL_EXT_pixel_transform'); + GL_EXT_pixel_transform_color_table := Int_CheckExtension(Buffer, 'GL_EXT_pixel_transform_color_table'); + GL_EXT_point_parameters := Int_CheckExtension(Buffer, 'GL_EXT_point_parameters'); + GL_EXT_polygon_offset := Int_CheckExtension(Buffer, 'GL_EXT_polygon_offset'); + GL_EXT_rescale_normal := Int_CheckExtension(Buffer, 'GL_EXT_rescale_normal'); + GL_EXT_secondary_color := Int_CheckExtension(Buffer, 'GL_EXT_secondary_color'); + GL_EXT_separate_specular_color := Int_CheckExtension(Buffer, 'GL_EXT_separate_specular_color'); + GL_EXT_shadow_funcs := Int_CheckExtension(Buffer, 'GL_EXT_shadow_funcs'); + GL_EXT_shared_texture_palette := Int_CheckExtension(Buffer, 'GL_EXT_shared_texture_palette'); + GL_EXT_stencil_two_side := Int_CheckExtension(Buffer, 'GL_EXT_stencil_two_side'); + GL_EXT_stencil_wrap := Int_CheckExtension(Buffer, 'GL_EXT_stencil_wrap'); + GL_EXT_subtexture := Int_CheckExtension(Buffer, 'GL_EXT_subtexture'); + GL_EXT_texture := Int_CheckExtension(Buffer, 'GL_EXT_texture'); + GL_EXT_texture3D := Int_CheckExtension(Buffer, 'GL_EXT_texture3D'); + GL_EXT_texture_compression_s3tc := Int_CheckExtension(Buffer, 'GL_EXT_texture_compression_s3tc'); + GL_EXT_texture_cube_map := Int_CheckExtension(Buffer, 'GL_EXT_texture_cube_map'); + GL_EXT_texture_edge_clamp := Int_CheckExtension(Buffer, 'GL_EXT_texture_edge_clamp'); + GL_EXT_texture_env_add := Int_CheckExtension(Buffer, 'GL_EXT_texture_env_add'); + GL_EXT_texture_env_combine := Int_CheckExtension(Buffer, 'GL_EXT_texture_env_combine'); + GL_EXT_texture_env_dot3 := Int_CheckExtension(Buffer, 'GL_EXT_texture_env_dot3'); + GL_EXT_texture_filter_anisotropic := Int_CheckExtension(Buffer, 'GL_EXT_texture_filter_anisotropic'); + GL_EXT_texture_lod_bias := Int_CheckExtension(Buffer, 'GL_EXT_texture_lod_bias'); + GL_EXT_texture_object := Int_CheckExtension(Buffer, 'GL_EXT_texture_object'); + GL_EXT_texture_perturb_normal := Int_CheckExtension(Buffer, 'GL_EXT_texture_perturb_normal'); + GL_EXT_texture_rectangle := Int_CheckExtension(Buffer, 'GL_EXT_texture_rectangle'); + GL_EXT_vertex_array := Int_CheckExtension(Buffer, 'GL_EXT_vertex_array'); + GL_EXT_vertex_shader := Int_CheckExtension(Buffer, 'GL_EXT_vertex_shader'); + GL_EXT_vertex_weighting := Int_CheckExtension(Buffer, 'GL_EXT_vertex_weighting'); + GL_EXT_depth_bounds_test := Int_CheckExtension(Buffer, 'GL_EXT_depth_bounds_test'); + GL_EXT_texture_mirror_clamp := Int_CheckExtension(Buffer, 'GL_EXT_texture_mirror_clamp'); + GL_EXT_blend_equation_separate := Int_CheckExtension(Buffer, 'GL_EXT_blend_equation_separate'); + GL_EXT_pixel_buffer_object := Int_CheckExtension(Buffer, 'GL_EXT_pixel_buffer_object'); + GL_EXT_texture_compression_dxt1 := Int_CheckExtension(Buffer, 'GL_EXT_texture_compression_dxt1'); + GL_EXT_stencil_clear_tag := Int_CheckExtension(Buffer, 'GL_EXT_stencil_clear_tag'); + GL_EXT_packed_depth_stencil := Int_CheckExtension(Buffer, 'GL_EXT_packed_depth_stencil'); + GL_EXT_texture_sRGB := Int_CheckExtension(Buffer, 'GL_EXT_texture_sRGB'); + GL_EXT_framebuffer_blit := Int_CheckExtension(Buffer, 'GL_EXT_framebuffer_blit'); + GL_EXT_framebuffer_multisample := Int_CheckExtension(Buffer, 'GL_EXT_framebuffer_multisample'); + GL_EXT_timer_query := Int_CheckExtension(Buffer, 'GL_EXT_timer_query'); + GL_EXT_gpu_program_parameters := Int_CheckExtension(Buffer, 'GL_EXT_gpu_program_parameters'); + GL_EXT_bindable_uniform := Int_CheckExtension(Buffer, 'GL_EXT_bindable_uniform'); + GL_EXT_draw_buffers2 := Int_CheckExtension(Buffer, 'GL_EXT_draw_buffers2'); + GL_EXT_draw_instanced := Int_CheckExtension(Buffer, 'GL_EXT_draw_instanced'); + GL_EXT_framebuffer_sRGB := Int_CheckExtension(Buffer, 'GL_EXT_framebuffer_sRGB'); + GL_EXT_geometry_shader4 := Int_CheckExtension(Buffer, 'GL_EXT_geometry_shader4'); + GL_EXT_gpu_shader4 := Int_CheckExtension(Buffer, 'GL_EXT_gpu_shader4'); + GL_EXT_packed_float := Int_CheckExtension(Buffer, 'GL_EXT_packed_float'); + GL_EXT_texture_array := Int_CheckExtension(Buffer, 'GL_EXT_texture_array'); + GL_EXT_texture_buffer_object := Int_CheckExtension(Buffer, 'GL_EXT_texture_buffer_object'); + GL_EXT_texture_compression_latc := Int_CheckExtension(Buffer, 'GL_EXT_texture_compression_latc'); + GL_EXT_texture_compression_rgtc := Int_CheckExtension(Buffer, 'GL_EXT_texture_compression_rgtc'); + GL_EXT_texture_integer := Int_CheckExtension(Buffer, 'GL_EXT_texture_integer'); + GL_EXT_texture_shared_exponent := Int_CheckExtension(Buffer, 'GL_EXT_texture_shared_exponent'); + GL_EXT_transform_feedback := Int_CheckExtension(Buffer, 'GL_EXT_transform_feedback'); + GL_EXT_direct_state_access := Int_CheckExtension(Buffer, 'GL_EXT_direct_state_access'); + GL_EXT_vertex_array_bgra := Int_CheckExtension(Buffer, 'GL_EXT_vertex_array_bgra'); + GL_EXT_texture_swizzle := Int_CheckExtension(Buffer, 'GL_EXT_texture_swizzle'); + GL_EXT_provoking_vertex := Int_CheckExtension(Buffer, 'GL_EXT_provoking_vertex'); + GL_EXT_texture_snorm := Int_CheckExtension(Buffer, 'GL_EXT_texture_snorm'); + GL_EXT_separate_shader_objects := Int_CheckExtension(Buffer, 'GL_EXT_separate_shader_objects'); + GL_EXT_shader_image_load_store := Int_CheckExtension(Buffer, 'GL_EXT_shader_image_load_store'); + GL_EXT_vertex_attrib_64bit := Int_CheckExtension(Buffer, 'GL_EXT_vertex_attrib_64bit'); + GL_EXT_texture_sRGB_decode := Int_CheckExtension(Buffer, 'GL_EXT_texture_sRGB_decode'); + + // === HP ====================================================================== + GL_HP_convolution_border_modes := Int_CheckExtension(Buffer, 'GL_HP_convolution_border_modes'); + GL_HP_image_transform := Int_CheckExtension(Buffer, 'GL_HP_image_transform'); + GL_HP_occlusion_test := Int_CheckExtension(Buffer, 'GL_HP_occlusion_test'); + GL_HP_texture_lighting := Int_CheckExtension(Buffer, 'GL_HP_texture_lighting'); + + // === IBM ===================================================================== + GL_IBM_cull_vertex := Int_CheckExtension(Buffer, 'GL_IBM_cull_vertex'); + GL_IBM_multimode_draw_arrays := Int_CheckExtension(Buffer, 'GL_IBM_multimode_draw_arrays'); + GL_IBM_rasterpos_clip := Int_CheckExtension(Buffer, 'GL_IBM_rasterpos_clip'); + GL_IBM_texture_mirrored_repeat := Int_CheckExtension(Buffer, 'GL_IBM_texture_mirrored_repeat'); + GL_IBM_vertex_array_lists := Int_CheckExtension(Buffer, 'GL_IBM_vertex_array_lists'); + + // === INGR ==================================================================== + GL_INGR_blend_func_separate := Int_CheckExtension(Buffer, 'GL_INGR_blend_func_separate'); + GL_INGR_color_clamp := Int_CheckExtension(Buffer, 'GL_INGR_color_clamp'); + GL_INGR_interlace_read := Int_CheckExtension(Buffer, 'GL_INGR_interlace_read'); + GL_INGR_palette_buffer := Int_CheckExtension(Buffer, 'GL_INGR_palette_buffer'); + + // === INTEL =================================================================== + GL_INTEL_parallel_arrays := Int_CheckExtension(Buffer, 'GL_INTEL_parallel_arrays'); + GL_INTEL_texture_scissor := Int_CheckExtension(Buffer, 'GL_INTEL_texture_scissor'); + + // === MESA ==================================================================== + GL_MESA_resize_buffers := Int_CheckExtension(Buffer, 'GL_MESA_resize_buffers'); + GL_MESA_window_pos := Int_CheckExtension(Buffer, 'GL_MESA_window_pos'); + + // === NVIDIA ================================================================== + GL_NV_blend_square := Int_CheckExtension(Buffer, 'GL_NV_blend_square'); + GL_NV_copy_depth_to_color := Int_CheckExtension(Buffer, 'GL_NV_copy_depth_to_color'); + GL_NV_depth_clamp := Int_CheckExtension(Buffer, 'GL_NV_depth_clamp'); + GL_NV_evaluators := Int_CheckExtension(Buffer, 'GL_NV_evaluators'); + GL_NV_fence := Int_CheckExtension(Buffer, 'GL_NV_fence'); + GL_NV_float_buffer := Int_CheckExtension(Buffer, 'GL_NV_float_buffer'); + GL_NV_fog_distance := Int_CheckExtension(Buffer, 'GL_NV_fog_distance'); + GL_NV_fragment_program := Int_CheckExtension(Buffer, 'GL_NV_fragment_program'); + GL_NV_half_float := Int_CheckExtension(Buffer, 'GL_NV_half_float'); + GL_NV_light_max_exponent := Int_CheckExtension(Buffer, 'GL_NV_light_max_exponent'); + GL_NV_multisample_filter_hint := Int_CheckExtension(Buffer, 'GL_NV_multisample_filter_hint'); + GL_NV_occlusion_query := Int_CheckExtension(Buffer, 'GL_NV_occlusion_query'); + GL_NV_packed_depth_stencil := Int_CheckExtension(Buffer, 'GL_NV_packed_depth_stencil'); + GL_NV_pixel_data_range := Int_CheckExtension(Buffer, 'GL_NV_pixel_data_range'); + GL_NV_point_sprite := Int_CheckExtension(Buffer, 'GL_NV_point_sprite'); + GL_NV_primitive_restart := Int_CheckExtension(Buffer, 'GL_NV_primitive_restart'); + GL_NV_register_combiners := Int_CheckExtension(Buffer, 'GL_NV_register_combiners'); + GL_NV_register_combiners2 := Int_CheckExtension(Buffer, 'GL_NV_register_combiners2'); + GL_NV_texgen_emboss := Int_CheckExtension(Buffer, 'GL_NV_texgen_emboss'); + GL_NV_texgen_reflection := Int_CheckExtension(Buffer, 'GL_NV_texgen_reflection'); + GL_NV_texture_compression_vtc := Int_CheckExtension(Buffer, 'GL_NV_texture_compression_vtc'); + GL_NV_texture_env_combine4 := Int_CheckExtension(Buffer, 'GL_NV_texture_env_combine4'); + GL_NV_texture_expand_normal := Int_CheckExtension(Buffer, 'GL_NV_texture_expand_normal'); + GL_NV_texture_rectangle := Int_CheckExtension(Buffer, 'GL_NV_texture_rectangle'); + GL_NV_texture_shader := Int_CheckExtension(Buffer, 'GL_NV_texture_shader'); + GL_NV_texture_shader2 := Int_CheckExtension(Buffer, 'GL_NV_texture_shader2'); + GL_NV_texture_shader3 := Int_CheckExtension(Buffer, 'GL_NV_texture_shader3'); + GL_NV_vertex_array_range := Int_CheckExtension(Buffer, 'GL_NV_vertex_array_range'); + GL_NV_vertex_array_range2 := Int_CheckExtension(Buffer, 'GL_NV_vertex_array_range2'); + GL_NV_vertex_program := Int_CheckExtension(Buffer, 'GL_NV_vertex_program'); + GL_NV_vertex_program1_1 := Int_CheckExtension(Buffer, 'GL_NV_vertex_program1_1'); + GL_NV_vertex_program2 := Int_CheckExtension(Buffer, 'GL_NV_vertex_program2'); + GL_NV_fragment_program_option := Int_CheckExtension(Buffer, 'GL_NV_fragment_program_option'); + GL_NV_fragment_program2 := Int_CheckExtension(Buffer, 'GL_NV_fragment_program2'); + GL_NV_vertex_program2_option := Int_CheckExtension(Buffer, 'GL_NV_vertex_program2_option'); + GL_NV_vertex_program3 := Int_CheckExtension(Buffer, 'GL_NV_vertex_program3'); + GL_NV_depth_buffer_float := Int_CheckExtension(Buffer, 'GL_NV_depth_buffer_float'); + GL_NV_fragment_program4 := Int_CheckExtension(Buffer, 'GL_NV_fragment_program4'); + GL_NV_framebuffer_multisample_coverage := Int_CheckExtension(Buffer, 'GL_NV_framebuffer_multisample_coverage'); + GL_NV_geometry_program4 := Int_CheckExtension(Buffer, 'GL_NV_geometry_program4'); + GL_NV_gpu_program4 := Int_CheckExtension(Buffer, 'GL_NV_gpu_program4'); + GL_NV_parameter_buffer_object := Int_CheckExtension(Buffer, 'GL_NV_parameter_buffer_object'); + GL_NV_transform_feedback := Int_CheckExtension(Buffer, 'GL_NV_transform_feedback'); + GL_NV_vertex_program4 := Int_CheckExtension(Buffer, 'GL_NV_vertex_program4'); + GL_NV_conditional_render := Int_CheckExtension(Buffer, 'GL_NV_conditional_render'); + GL_NV_present_video := Int_CheckExtension(Buffer, 'GL_NV_present_video'); + GL_NV_explicit_multisample := Int_CheckExtension(Buffer, 'GL_NV_explicit_multisample'); + GL_NV_transform_feedback2 := Int_CheckExtension(Buffer, 'GL_NV_transform_feedback2'); + GL_NV_video_capture := Int_CheckExtension(Buffer, 'GL_NV_video_capture'); + GL_NV_copy_image := Int_CheckExtension(Buffer, 'GL_NV_copy_image'); + GL_NV_parameter_buffer_object2 := Int_CheckExtension(Buffer, 'GL_NV_parameter_buffer_object2'); + GL_NV_shader_buffer_load := Int_CheckExtension(Buffer, 'GL_NV_shader_buffer_load'); + GL_NV_vertex_buffer_unified_memory := Int_CheckExtension(Buffer, 'GL_NV_vertex_buffer_unified_memory'); + GL_NV_gpu_program5 := Int_CheckExtension(Buffer, 'GL_NV_gpu_program5'); + GL_NV_gpu_shader5 := Int_CheckExtension(Buffer, 'GL_NV_gpu_shader5'); + GL_NV_shader_buffer_store := Int_CheckExtension(Buffer, 'GL_NV_shader_buffer_store'); + GL_NV_tessellation_program5 := Int_CheckExtension(Buffer, 'GL_NV_tessellation_program5'); + GL_NV_vertex_attrib_integer_64bit := Int_CheckExtension(Buffer, 'GL_NV_vertex_attrib_integer_64bit'); + GL_NV_multisample_coverage := Int_CheckExtension(Buffer, 'GL_NV_multisample_coverage'); + GL_NV_vdpau_interop := Int_CheckExtension(Buffer, 'GL_NV_vdpau_interop'); + GL_NV_texture_barrier := Int_CheckExtension(Buffer, 'GL_NV_texture_barrier'); + // 4.3 + GL_NV_path_rendering := Int_CheckExtension(Buffer, 'GL_NV_path_rendering'); + GL_NV_bindless_texture := Int_CheckExtension(Buffer, 'GL_NV_bindless_texture'); + GL_NV_shader_atomic_float := Int_CheckExtension(Buffer, 'GL_NV_shader_atomic_float'); + + // === OML ===================================================================== + GL_OML_interlace := Int_CheckExtension(Buffer, 'GL_OML_interlace'); + GL_OML_resample := Int_CheckExtension(Buffer, 'GL_OML_resample'); + GL_OML_subsample := Int_CheckExtension(Buffer, 'GL_OML_subsample'); + + // === PGI ===================================================================== + GL_PGI_misc_hints := Int_CheckExtension(Buffer, 'GL_PGI_misc_hints'); + GL_PGI_vertex_hints := Int_CheckExtension(Buffer, 'GL_PGI_vertex_hints'); + + // === REND ==================================================================== + GL_REND_screen_coordinates := Int_CheckExtension(Buffer, 'GL_REND_screen_coordinates'); + + // === S3 ====================================================================== + GL_S3_s3tc := Int_CheckExtension(Buffer, 'GL_S3_s3tc'); + + // === SGIS ==================================================================== + GL_SGIS_detail_texture := Int_CheckExtension(Buffer, 'GL_SGIS_detail_texture'); + GL_SGIS_fog_function := Int_CheckExtension(Buffer, 'GL_SGIS_fog_function'); + GL_SGIS_generate_mipmap := Int_CheckExtension(Buffer, 'GL_SGIS_generate_mipmap'); + GL_SGIS_multisample := Int_CheckExtension(Buffer, 'GL_SGIS_multisample'); + GL_SGIS_pixel_texture := Int_CheckExtension(Buffer, 'GL_SGIS_pixel_texture'); + GL_SGIS_point_line_texgen := Int_CheckExtension(Buffer, 'GL_SGIS_point_line_texgen'); + GL_SGIS_point_parameters := Int_CheckExtension(Buffer, 'GL_SGIS_point_parameters'); + GL_SGIS_sharpen_texture := Int_CheckExtension(Buffer, 'GL_SGIS_sharpen_texture'); + GL_SGIS_texture4D := Int_CheckExtension(Buffer, 'GL_SGIS_texture4D'); + GL_SGIS_texture_border_clamp := Int_CheckExtension(Buffer, 'GL_SGIS_texture_border_clamp'); + GL_SGIS_texture_color_mask := Int_CheckExtension(Buffer, 'GL_SGIS_texture_color_mask'); + GL_SGIS_texture_edge_clamp := Int_CheckExtension(Buffer, 'GL_SGIS_texture_edge_clamp'); + GL_SGIS_texture_filter4 := Int_CheckExtension(Buffer, 'GL_SGIS_texture_filter4'); + GL_SGIS_texture_lod := Int_CheckExtension(Buffer, 'GL_SGIS_texture_lod'); + GL_SGIS_texture_select := Int_CheckExtension(Buffer, 'GL_SGIS_texture_select'); + + // === SGIX ==================================================================== + GL_FfdMaskSGIX := Int_CheckExtension(Buffer, 'GL_FfdMaskSGIX'); + GL_SGIX_async := Int_CheckExtension(Buffer, 'GL_SGIX_async'); + GL_SGIX_async_histogram := Int_CheckExtension(Buffer, 'GL_SGIX_async_histogram'); + GL_SGIX_async_pixel := Int_CheckExtension(Buffer, 'GL_SGIX_async_pixel'); + GL_SGIX_blend_alpha_minmax := Int_CheckExtension(Buffer, 'GL_SGIX_blend_alpha_minmax'); + GL_SGIX_calligraphic_fragment := Int_CheckExtension(Buffer, 'GL_SGIX_calligraphic_fragment'); + GL_SGIX_clipmap := Int_CheckExtension(Buffer, 'GL_SGIX_clipmap'); + GL_SGIX_convolution_accuracy := Int_CheckExtension(Buffer, 'GL_SGIX_convolution_accuracy'); + GL_SGIX_depth_pass_instrument := Int_CheckExtension(Buffer, 'GL_SGIX_depth_pass_instrument'); + GL_SGIX_depth_texture := Int_CheckExtension(Buffer, 'GL_SGIX_depth_texture'); + GL_SGIX_flush_raster := Int_CheckExtension(Buffer, 'GL_SGIX_flush_raster'); + GL_SGIX_fog_offset := Int_CheckExtension(Buffer, 'GL_SGIX_fog_offset'); + GL_SGIX_fog_scale := Int_CheckExtension(Buffer, 'GL_SGIX_fog_scale'); + GL_SGIX_fragment_lighting := Int_CheckExtension(Buffer, 'GL_SGIX_fragment_lighting'); + GL_SGIX_framezoom := Int_CheckExtension(Buffer, 'GL_SGIX_framezoom'); + GL_SGIX_igloo_interface := Int_CheckExtension(Buffer, 'GL_SGIX_igloo_interface'); + GL_SGIX_impact_pixel_texture := Int_CheckExtension(Buffer, 'GL_SGIX_impact_pixel_texture'); + GL_SGIX_instruments := Int_CheckExtension(Buffer, 'GL_SGIX_instruments'); + GL_SGIX_interlace := Int_CheckExtension(Buffer, 'GL_SGIX_interlace'); + GL_SGIX_ir_instrument1 := Int_CheckExtension(Buffer, 'GL_SGIX_ir_instrument1'); + GL_SGIX_list_priority := Int_CheckExtension(Buffer, 'GL_SGIX_list_priority'); + GL_SGIX_pixel_texture := Int_CheckExtension(Buffer, 'GL_SGIX_pixel_texture'); + GL_SGIX_pixel_tiles := Int_CheckExtension(Buffer, 'GL_SGIX_pixel_tiles'); + GL_SGIX_polynomial_ffd := Int_CheckExtension(Buffer, 'GL_SGIX_polynomial_ffd'); + GL_SGIX_reference_plane := Int_CheckExtension(Buffer, 'GL_SGIX_reference_plane'); + GL_SGIX_resample := Int_CheckExtension(Buffer, 'GL_SGIX_resample'); + GL_SGIX_scalebias_hint := Int_CheckExtension(Buffer, 'GL_SGIX_scalebias_hint'); + GL_SGIX_shadow := Int_CheckExtension(Buffer, 'GL_SGIX_shadow'); + GL_SGIX_shadow_ambient := Int_CheckExtension(Buffer, 'GL_SGIX_shadow_ambient'); + GL_SGIX_sprite := Int_CheckExtension(Buffer, 'GL_SGIX_sprite'); + GL_SGIX_subsample := Int_CheckExtension(Buffer, 'GL_SGIX_subsample'); + GL_SGIX_tag_sample_buffer := Int_CheckExtension(Buffer, 'GL_SGIX_tag_sample_buffer'); + GL_SGIX_texture_add_env := Int_CheckExtension(Buffer, 'GL_SGIX_texture_add_env'); + GL_SGIX_texture_coordinate_clamp := Int_CheckExtension(Buffer, 'GL_SGIX_texture_coordinate_clamp'); + GL_SGIX_texture_lod_bias := Int_CheckExtension(Buffer, 'GL_SGIX_texture_lod_bias'); + GL_SGIX_texture_multi_buffer := Int_CheckExtension(Buffer, 'GL_SGIX_texture_multi_buffer'); + GL_SGIX_texture_scale_bias := Int_CheckExtension(Buffer, 'GL_SGIX_texture_scale_bias'); + GL_SGIX_texture_select := Int_CheckExtension(Buffer, 'GL_SGIX_texture_select'); + GL_SGIX_vertex_preclip := Int_CheckExtension(Buffer, 'GL_SGIX_vertex_preclip'); + GL_SGIX_ycrcb := Int_CheckExtension(Buffer, 'GL_SGIX_ycrcb'); + GL_SGIX_ycrcb_subsample := Int_CheckExtension(Buffer, 'GL_SGIX_ycrcb_subsample'); + GL_SGIX_ycrcba := Int_CheckExtension(Buffer, 'GL_SGIX_ycrcba'); + + // === SGI ===================================================================== + GL_SGI_color_matrix := Int_CheckExtension(Buffer, 'GL_SGI_color_matrix'); + GL_SGI_color_table := Int_CheckExtension(Buffer, 'GL_SGI_color_table'); + GL_SGI_depth_pass_instrument := Int_CheckExtension(Buffer, 'GL_SGI_depth_pass_instrument'); + GL_SGI_texture_color_table := Int_CheckExtension(Buffer, 'GL_SGI_texture_color_table'); + + // === SUN ===================================================================== + GL_SUNX_constant_data := Int_CheckExtension(Buffer, 'GL_SUNX_constant_data'); + GL_SUN_convolution_border_modes := Int_CheckExtension(Buffer, 'GL_SUN_convolution_border_modes'); + GL_SUN_global_alpha := Int_CheckExtension(Buffer, 'GL_SUN_global_alpha'); + GL_SUN_mesh_array := Int_CheckExtension(Buffer, 'GL_SUN_mesh_array'); + GL_SUN_slice_accum := Int_CheckExtension(Buffer, 'GL_SUN_slice_accum'); + GL_SUN_triangle_list := Int_CheckExtension(Buffer, 'GL_SUN_triangle_list'); + GL_SUN_vertex := Int_CheckExtension(Buffer, 'GL_SUN_vertex'); + + // === WIN ===================================================================== + GL_WIN_phong_shading := Int_CheckExtension(Buffer, 'GL_WIN_phong_shading'); + GL_WIN_specular_fog := Int_CheckExtension(Buffer, 'GL_WIN_specular_fog'); + + {$IFDEF DGL_WIN} + // === WGL ===================================================================== + WGL_3DFX_multisample := Int_CheckExtension(Buffer, 'WGL_3DFX_multisample'); + WGL_ARB_buffer_region := Int_CheckExtension(Buffer, 'WGL_ARB_buffer_region'); + WGL_ARB_extensions_string := Int_CheckExtension(Buffer, 'WGL_ARB_extensions_string'); + WGL_ARB_make_current_read := Int_CheckExtension(Buffer, 'WGL_ARB_make_current_read'); + WGL_ARB_multisample := Int_CheckExtension(Buffer, 'WGL_ARB_multisample'); + WGL_ARB_pbuffer := Int_CheckExtension(Buffer, 'WGL_ARB_pbuffer'); + WGL_ARB_pixel_format := Int_CheckExtension(Buffer, 'WGL_ARB_pixel_format'); + WGL_ARB_pixel_format_float := Int_CheckExtension(Buffer, 'WGL_ARB_pixel_format_float'); + WGL_ARB_render_texture := Int_CheckExtension(Buffer, 'WGL_ARB_render_texture'); + WGL_ARB_create_context := Int_CheckExtension(Buffer, 'WGL_ARB_create_context'); + WGL_ARB_create_context_profile := Int_CheckExtension(Buffer, 'WGL_ARB_create_context_profile'); + WGL_ARB_framebuffer_sRGB := Int_CheckExtension(Buffer, 'WGL_ARB_framebuffer_sRGB'); + WGL_ARB_create_context_robustness := Int_CheckExtension(Buffer, 'WGL_ARB_create_context_robustness'); + WGL_ATI_pixel_format_float := Int_CheckExtension(Buffer, 'WGL_ATI_pixel_format_float'); + WGL_AMD_gpu_association := Int_CheckExtension(Buffer, 'WGL_AMD_gpu_association'); + WGL_EXT_depth_float := Int_CheckExtension(Buffer, 'WGL_EXT_depth_float'); + WGL_EXT_display_color_table := Int_CheckExtension(Buffer, 'WGL_EXT_display_color_table'); + WGL_EXT_extensions_string := Int_CheckExtension(Buffer, 'WGL_EXT_extensions_string'); + WGL_EXT_make_current_read := Int_CheckExtension(Buffer, 'WGL_EXT_make_current_read'); + WGL_EXT_multisample := Int_CheckExtension(Buffer, 'WGL_EXT_multisample'); + WGL_EXT_pbuffer := Int_CheckExtension(Buffer, 'WGL_EXT_pbuffer'); + WGL_EXT_pixel_format := Int_CheckExtension(Buffer, 'WGL_EXT_pixel_format'); + WGL_EXT_swap_control := Int_CheckExtension(Buffer, 'WGL_EXT_swap_control'); + WGL_EXT_create_context_es2_profile := Int_CheckExtension(Buffer, 'WGL_EXT_create_context_es2_profile'); + WGL_I3D_digital_video_control := Int_CheckExtension(Buffer, 'WGL_I3D_digital_video_control'); + WGL_I3D_gamma := Int_CheckExtension(Buffer, 'WGL_I3D_gamma'); + WGL_I3D_genlock := Int_CheckExtension(Buffer, 'WGL_I3D_genlock'); + WGL_I3D_image_buffer := Int_CheckExtension(Buffer, 'WGL_I3D_image_buffer'); + WGL_I3D_swap_frame_lock := Int_CheckExtension(Buffer, 'WGL_I3D_swap_frame_lock'); + WGL_I3D_swap_frame_usage := Int_CheckExtension(Buffer, 'WGL_I3D_swap_frame_usage'); + WGL_NV_float_buffer := Int_CheckExtension(Buffer, 'WGL_NV_float_buffer'); + WGL_NV_render_depth_texture := Int_CheckExtension(Buffer, 'WGL_NV_render_depth_texture'); + WGL_NV_render_texture_rectangle := Int_CheckExtension(Buffer, 'WGL_NV_render_texture_rectangle'); + WGL_NV_vertex_array_range := Int_CheckExtension(Buffer, 'WGL_NV_vertex_array_range'); + WGL_NV_present_video := Int_CheckExtension(Buffer, 'WGL_NV_present_video'); + WGL_NV_video_output := Int_CheckExtension(Buffer, 'WGL_NV_video_output'); + WGL_NV_swap_group := Int_CheckExtension(Buffer, 'WGL_NV_swap_group'); + WGL_NV_gpu_affinity := Int_CheckExtension(Buffer, 'WGL_NV_gpu_affinity'); + WGL_NV_video_capture := Int_CheckExtension(Buffer, 'WGL_NV_video_capture'); + WGL_NV_copy_image := Int_CheckExtension(Buffer, 'WGL_NV_copy_image'); + WGL_NV_multisample_coverage := Int_CheckExtension(Buffer, 'WGL_NV_multisample_coverage'); + WGL_NV_DX_interop := Int_CheckExtension(Buffer, 'WGL_NV_multisample_coverage'); + WGL_OML_sync_control := Int_CheckExtension(Buffer, 'WGL_OML_sync_control'); + WGL_3DL_stereo_control := Int_CheckExtension(Buffer, 'WGL_3DL_stereo_control'); + + WIN_draw_range_elements := Int_CheckExtension(Buffer, 'WIN_draw_range_elements'); + WIN_swap_hint := Int_CheckExtension(Buffer, 'WIN_swap_hint'); + {$ENDIF} + + {$IFDEF DGL_LINUX} + // === GLX ===================================================================== + GLX_ARB_multisample := Int_CheckExtension(Buffer, 'GLX_ARB_multisample'); + GLX_ARB_fbconfig_float := Int_CheckExtension(Buffer, 'GLX_ARB_fbconfig_float'); + GLX_ARB_get_proc_address := Int_CheckExtension(Buffer, 'GLX_ARB_get_proc_address'); + GLX_ARB_create_context := Int_CheckExtension(Buffer, 'GLX_ARB_create_context'); + GLX_ARB_create_context_profile := Int_CheckExtension(Buffer, 'GLX_ARB_create_context_profile'); + GLX_ARB_vertex_buffer_object := Int_CheckExtension(Buffer, 'GLX_ARB_vertex_buffer_object'); + GLX_ARB_framebuffer_sRGB := Int_CheckExtension(Buffer, 'GLX_ARB_framebuffer_sRGB'); + GLX_ARB_create_context_robustness := Int_CheckExtension(Buffer, 'GLX_ARB_create_context_robustness'); + GLX_EXT_visual_info := Int_CheckExtension(Buffer, 'GLX_EXT_visual_info'); + GLX_EXT_visual_rating := Int_CheckExtension(Buffer, 'GLX_EXT_visual_rating'); + GLX_EXT_import_context := Int_CheckExtension(Buffer, 'GLX_EXT_import_context'); + GLX_EXT_fbconfig_packed_float := Int_CheckExtension(Buffer, 'GLX_EXT_fbconfig_packed_float'); + GLX_EXT_framebuffer_sRGB := Int_CheckExtension(Buffer, 'GLX_EXT_framebuffer_sRGB'); + GLX_EXT_texture_from_pixmap := Int_CheckExtension(Buffer, 'GLX_EXT_texture_from_pixmap'); + GLX_EXT_swap_control := Int_CheckExtension(Buffer, 'GLX_EXT_swap_control'); + GLX_EXT_create_context_es2_profile := Int_CheckExtension(Buffer, 'GLX_EXT_create_context_es2_profile'); + {$ENDIF} + ImplementationRead := True; +end; + +{$IFDEF DGL_WIN} +// ============================================================================= +// RaiseLastOSError +// ============================================================================= +// Needed for compatibility with older Delphiversions +// ============================================================================= + +procedure RaiseLastOSError; +begin +{$IFDEF FPC} + raise Exception.Create('RaiseLastOSError!'); // To-Do: find a better solution +{$ELSE} + {$IFDEF DELPHI6_AND_DOWN} // If Delphi 6 or later + SysUtils.RaiseLastWin32Error; + {$ELSE} + SysUtils.RaiseLastOSError; + {$ENDIF} +{$ENDIF} +end; + +// ============================================================================= +// CreateRenderingContext +// ============================================================================= + +function CreateRenderingContext(DC: HDC; Options: TRCOptions; ColorBits, ZBits, StencilBits, AccumBits, AuxBuffers: Integer; Layer: Integer): HGLRC; +const + OBJ_MEMDC = 10; + OBJ_ENHMETADC = 12; + OBJ_METADC = 4; + PFD_DOUBLEBUFFER = $00000001; + PFD_STEREO = $00000002; + PFD_DRAW_TO_WINDOW = $00000004; + PFD_DRAW_TO_BITMAP = $00000008; + PFD_SUPPORT_GDI = $00000010; + PFD_SUPPORT_OPENGL = $00000020; + PFD_TYPE_RGBA = 0; + PFD_MAIN_PLANE = 0; + PFD_OVERLAY_PLANE = 1; + PFD_UNDERLAY_PLANE = LongWord(-1); + MemoryDCs = [OBJ_MEMDC, OBJ_METADC, OBJ_ENHMETADC]; +var + PFDescriptor: TPixelFormatDescriptor; + PixelFormat: Integer; + AType: DWORD; +begin + if GL_LibHandle = nil then + InitOpenGL; + + FillChar(PFDescriptor{%H-}, SizeOf(PFDescriptor), 0); + + with PFDescriptor do + begin + nSize := SizeOf(PFDescriptor); + nVersion := 1; + dwFlags := PFD_SUPPORT_OPENGL; + + AType := GetObjectType(DC); + + if AType = 0 then + RaiseLastOSError; + + if AType in MemoryDCs then + dwFlags := dwFlags or PFD_DRAW_TO_BITMAP + else + dwFlags := dwFlags or PFD_DRAW_TO_WINDOW; + + if opDoubleBuffered in Options then + dwFlags := dwFlags or PFD_DOUBLEBUFFER; + + if opGDI in Options then + dwFlags := dwFlags or PFD_SUPPORT_GDI; + + if opStereo in Options then + dwFlags := dwFlags or PFD_STEREO; + + iPixelType := PFD_TYPE_RGBA; + cColorBits := ColorBits; + cDepthBits := zBits; + cStencilBits := StencilBits; + cAccumBits := AccumBits; + cAuxBuffers := AuxBuffers; + + if Layer = 0 then + iLayerType := PFD_MAIN_PLANE + else + if Layer > 0 then + iLayerType := PFD_OVERLAY_PLANE + else + iLayerType := Byte(PFD_UNDERLAY_PLANE); + end; + + PixelFormat := ChoosePixelFormat(DC, @PFDescriptor); + + if PixelFormat = 0 then + RaiseLastOSError; + + if GetPixelFormat(DC) <> PixelFormat then + if not SetPixelFormat(DC, PixelFormat, @PFDescriptor) then + RaiseLastOSError; + + DescribePixelFormat(DC, PixelFormat, SizeOf(PFDescriptor), PFDescriptor); + + Result := wglCreateContext(DC); + + if Result = 0 then + RaiseLastOSError + else + LastPixelFormat := 0; +end; + +// ============================================================================= +// CreateRenderingContextVersion +// ============================================================================= +// Creates a context for the more recent OpenGL versions (3.0) and up +// For that we first need to get a normal GL context for getting the +// function pointer to wglCreateContextAttribsARB first +// ============================================================================= +function CreateRenderingContextVersion(DC: HDC; Options: TRCOptions; MajorVersion, MinorVersion : Integer; ForwardCompatible : Boolean; ColorBits, ZBits, StencilBits, AccumBits, AuxBuffers: Integer; Layer: Integer): HGLRC; +const + OBJ_MEMDC = 10; + OBJ_ENHMETADC = 12; + OBJ_METADC = 4; + PFD_DOUBLEBUFFER = $00000001; + PFD_STEREO = $00000002; + PFD_DRAW_TO_WINDOW = $00000004; + PFD_DRAW_TO_BITMAP = $00000008; + PFD_SUPPORT_GDI = $00000010; + PFD_SUPPORT_OPENGL = $00000020; + PFD_TYPE_RGBA = 0; + PFD_MAIN_PLANE = 0; + PFD_OVERLAY_PLANE = 1; + PFD_UNDERLAY_PLANE = LongWord(-1); + MemoryDCs = [OBJ_MEMDC, OBJ_METADC, OBJ_ENHMETADC]; +var + PFDescriptor : TPixelFormatDescriptor; + PixelFormat : Integer; + AType : DWORD; + LegacyRC : HGLRC; + Attribs : array of Integer; +begin + if GL_LibHandle = nil then + InitOpenGL; + + if not Assigned(GL_LibHandle) then + raise Exception.Create('GL_LibHandle is NIL. Could not load OpenGL library!'); + + FillChar(PFDescriptor{%H-}, SizeOf(PFDescriptor), 0); + + with PFDescriptor do + begin + nSize := SizeOf(PFDescriptor); + nVersion := 1; + dwFlags := PFD_SUPPORT_OPENGL; + AType := GetObjectType(DC); + + if AType = 0 then + RaiseLastOSError; + + if AType in MemoryDCs then + dwFlags := dwFlags or PFD_DRAW_TO_BITMAP + else + dwFlags := dwFlags or PFD_DRAW_TO_WINDOW; + + if opDoubleBuffered in Options then + dwFlags := dwFlags or PFD_DOUBLEBUFFER; + + if opGDI in Options then + dwFlags := dwFlags or PFD_SUPPORT_GDI; + + if opStereo in Options then + dwFlags := dwFlags or PFD_STEREO; + + iPixelType := PFD_TYPE_RGBA; + cColorBits := ColorBits; + cDepthBits := zBits; + cStencilBits := StencilBits; + cAccumBits := AccumBits; + cAuxBuffers := AuxBuffers; + + if Layer = 0 then + iLayerType := PFD_MAIN_PLANE + else + if Layer > 0 then + iLayerType := PFD_OVERLAY_PLANE + else + iLayerType := Byte(PFD_UNDERLAY_PLANE); + end; + + PixelFormat := ChoosePixelFormat(DC, @PFDescriptor); + + if PixelFormat = 0 then + RaiseLastOSError; + + if GetPixelFormat(DC) <> PixelFormat then + if not SetPixelFormat(DC, PixelFormat, @PFDescriptor) then + RaiseLastOSError; + + DescribePixelFormat(DC, PixelFormat, SizeOf(PFDescriptor), PFDescriptor); + + // Create legacy render context first for we need function pointers to + // create new OpenGL render contexts + LegacyRC := wglCreateContext(DC); + wglMakeCurrent(DC, LegacyRC); + + // Set attributes to describe our requested context + SetLength(Attribs, 5); + Attribs[0] := WGL_CONTEXT_MAJOR_VERSION_ARB; + Attribs[1] := MajorVersion; + Attribs[2] := WGL_CONTEXT_MINOR_VERSION_ARB; + Attribs[3] := MinorVersion; + + // Add context flag for forward compatible context + // Forward compatible means no more support for legacy functions like + // immediate mode (glvertex, glrotate, gltranslate, etc.) + if ForwardCompatible then + begin + SetLength(Attribs, Length(Attribs)+2); + Attribs[4] := WGL_CONTEXT_FLAGS_ARB; + Attribs[5] := WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB; + end; + + // Attribute flags must be finalized with a zero + Attribs[High(Attribs)] := 0; + + // Get function pointer for new context creation function + wglCreateContextAttribsARB := wglGetProcAddress('wglCreateContextAttribsARB'); + + if not Assigned(wglCreateContextAttribsARB) then + begin + raise Exception.Create('Could not get function pointer adress for wglCreateContextAttribsARB - OpenGL 3.x and above not supported!'); + wglDeleteContext(LegacyRC); + exit; + end; + + // Create context + Result := wglCreateContextAttribsARB(DC, 0, @Attribs[0]); + + if Result = 0 then + begin + raise Exception.Create('Could not create the desired OpenGL rendering context!'); + wglDeleteContext(LegacyRC); + exit; + end; + + wglDeleteContext(LegacyRC); + + if Result = 0 then + RaiseLastOSError + else + LastPixelFormat := 0; +end; + +// ============================================================================= +// DestroyRenderingContext +// ============================================================================= + +procedure DestroyRenderingContext(RC: HGLRC); +begin + wglDeleteContext(RC); +end; + + +// ============================================================================= +// ActivateRenderingContext +// ============================================================================= + +procedure ActivateRenderingContext(DC: HDC; RC: HGLRC; loadext: boolean = true); +begin + Assert((DC <> 0), 'DC must not be 0'); + Assert((RC <> 0), 'RC must not be 0'); + + wglMakeCurrent(DC, RC); + + {$ifdef DGL_TINY_HEADER} + ReadCoreVersion; + {$else} + ReadImplementationProperties; + + if (loadext) then + ReadExtensions; + {$endif} +end; + +// ============================================================================= +// DeactivateRenderingContext +// ============================================================================= + +procedure DeactivateRenderingContext; +begin + wglMakeCurrent(0, 0); +end; +{$ENDIF} + + +initialization + +{$IFDEF CPU386} + Set8087CW($133F); +{$ENDIF} + +finalization + +end. diff --git a/examples/textures/BMP_24_RGB8.bmp b/examples/textures/BMP_24_RGB8.bmp new file mode 100644 index 0000000000000000000000000000000000000000..e1318e8ff0c09d65a546f61b4e133708a3a3f6a6 GIT binary patch literal 3145784 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 z.XrKj+3=hGB`_&)~!kbmko6dC{pP~WZs{^ehO+xcG=(CNQ4Ks&?y?Ev(DpBDLH z{y)^m$CT(V{G$QHe(F#8bnZt6{98$Z5&xG0Km{lOng)>kC$N8!f8js;pZcr(Z|8@D zKZySFzcoDk4gCKPB>)c*0XhEO=)bdngn)nfzmfpD{Uh?P=b8d21WFoU`&SqL=fwQ) z4gAm8MgR%{{r@o`0Q1)fpus=<Kh`k+EY19%b+$Zk;{5j!0M36@fKz~G{-Xlsm~Bp5 z2{4BepicqD`F~E#e^kIQ0>J+d{O6o2Dxl1N_@7n+;Q!A(m*n3%&VT%W$ls3huleu8 zd<!@Q!2F*N_rKtOod3)JZ{|NjV4?9TfD)km|C|{9V-5B@2!Q+<0W|YJ{=ejJ>->+* z|B?Wj{|*B1|3~D%6!2d?nJGY=|D5pus3HHQ1OLl}{Fhla5+MA)Z2AA3%j*1x|CjIZ zuLM|;hWx8n%m`q`X8vacAp9!<Y6MX5U;OVBfY$s6{yAg*uhz}~i~v@j67!!E=f7J2 zf9h0Q{_kB9puv9|0l@!h;lFyVwb~Rw6|gof{|o=&|B3!T&VNaO^(-WS@LwnXKi+@L z|Kk4*;{T%p<bUCRqm=yb6kuaU0GsIlI|A5r(~W_D$-npJn+5)x1W*Ow|F<sq5C22{ zTWvM)|5h>oyZ^8G5C3md{=fY16u=R{_6ULPx7%SH{`LR2hx`lvasSKt@BV-1|DEyw zElyOxZcG6N{?7=Y%>O0<_Q3zQ_uK;oQ2syWzl{WVefVGae<M=>{C~}V+j`^Pd&~cr z|5U+0?*G26h5s%A@c*d>{|8W*{|6j!(18b5%l|g!KPtdFME182lm8<D3jX!~503;W z^Z$sd=Kmil{~ulL2mtzT{{JzOzkM9=f2{C-T+DwZzzG=voB;nj2EhME0s#L?fK-hD zP7?m*|G<Bf08Rj;e?Ia*D&RCm00;q{e<eW7e?|cM|HBBN^Z%Ke|MXdBYW~xy^8erZ z*0c5htK$D70Vq`fb*^X3e@?uA`JXzE2L71<a9*GUurE0OLPr28`Ts)9e^tP{-g%Ma z|IUjp;?(?42mUX<IPlL2{=@&+|N8&If9N0hZ~TAxd){L^0<hmpAq3ug`4x@-WB)_` zp?^exCI1f+;L7($1-xJUueyek|4{&`OaL4L^br8~|3UEo`h2gyJ|h7A|M35Zt`GR% zkW&?K<BiSyzv-qMga4`k$^Vv{Z_Nzg)>}{jNPzPH;eYGHbgPg*><|1G{@+eH1EAvn zqW~!RU-N(P{?z~x01*MI0O7y!{{a7YgZ~i#p??Jc{4e^~c`w+1@28joH2PNnVE@~E z_5Z7(|C#`N8uy>75x|4`|Be3{1C;;&Ir#sxN`TMPW9C09Am;yw|AYUq{}=WDn*xCT zZN>mG|GNZ`{%I!wvHvpyi1%N|m#Itu!2d5J0#ZtVhX25Sb>LqKkb1h65<vX_>eqn( zf&ViDfc{GZFakgUX#Ph7H1_WbAmk7HH~vQgJpVjG0PqL?ClusA)VGHTz;}Ru`9JuN z1ZXM%?1%sP;{SvF1OM~*0uB2&{4Wvkq7ncNKuiCb0MrOT`~OFFzS6(N3;^Uu0)+p6 z68z`v0zl|T1+)VCvH$<+r~Fc}|HJ+z0BQj6Q{lhBzkYs^0YDc3FTebYU&#NF0O5Z5 zzZD8V6`%;H>IxvXzwjUOR{&I%`(Fa!x1IhK0kQvoR}z3frP=`Ccl!Sh0HlBTzy120 z68fn|{|bQd`cpJOn*ap=b^OOF6M*2q)Ng_Rf63uPs?2}Tztevc0Zj=2|CAa40Z{d~ zCIi6!R%!sgg9K0j{Qd9te+2ve)BnBx`+p_m&p^~id%q=r90w=_YBa!8{TsD_;UBQS z&O8A8-Tw#r_5TO{kNJ-ln5F!Gg}}_S(jy_D`5)V#hr)i(*_i?$0TKby|5pO&{Feln zo$ycj|DGX#oPTBkf&ZLE{sa6={&UTh@J~hnbCLO}?&Kf-H~9nkoBtvDL-@x(n*VVG zU>p0X*8eB}ga1E&<$vP;GXj{u`~M5hU*><Es(^w2GXsGCy98L6=+7dZ|3m%@m-)Xa z@E-|~<WJB4EGGXq39!US1<3!xzl{LM1OC4?nU3wB@DI-aQXT&B|830wi~yJd4EY~b z0NB5rwJgrRg8<F{-h=tSLizuMfL3G#K>jBwAVNSj0)YG*|Dysb|3d`GUUlVF?eIVF zziPri`v2yCV*am&`ycpE{%6YSf&VG5BL6dW3h>`003!g(K|uHa2MO?+OaVIom;XQH zf7TNIqXO1mcWv`O>#obG`R@o|y@CH31eE^|`KKcQMk9a?GXfC)oBzKt`5$cmjW#6z z!^6P;o5KG}fYzIBw#nv+05u7)g%P0Q|Ac=W0c=$gK>vR$Vn5~o`+)f$|9>0&|G@vY zuS*1I+vI;5{BK8<|36582LC(A|H6MFKs)3A<NohF%Ks4lNf-R@0{mC+zWc7b?~e0t z1PJ)wV;Zghzvs9F(EQ({;D2lc0QwvLG5^!d|M>rVD*@ntyYfGQ|NTb!AN>FQhyelr z2msCh{bT+|0RaD0jQ|cJ0@OzUn*S{Yr2kJJCj58vUkRZ3f20v0od5FwA%FYmBjNw3 zfTNE(M)%+I7{Wj1e=Oi%36KW<PoR_h0sis-tA+p0|Av1|0fGO4e+9rvr!*CC3gI95 zKMFwjKTZCR|4$0Y@DFvm&i`BV|IdgD(ELCBj5A68B>W@)Q_cTp3UH2f_Bn4Q1yuZh zj`<%`Krnx$fZl%Y+uwe!`JZ#oh5XMo|0DUogZz&r{5t`#E)f31|Be8Jf6m7LN&p0a z8UP7!armF)Pxt?W{_pk-{EPpWjYWVo|Jw+l;2-XPPvBqYf8_takGkSYyZiqrfJlIh z0IsfT=wJT-`{Vy30aBF!g8!+If9N0hzwU$AlL5M}@&ENo03$${{~z+}Pw~GJKovkm z0-ykHmj7>|V*cOisQ|bw=0EiR;h6uNxc(_;0E_@`|0ww%3ifvdAor63!ugK?Km#ZM zMiL<CAM(!#;I8n0B)}(80Q&#%f5(5qKN$e10Vq|#eMSBw_=o=^0U`jV_y5EG4~YIf z0QA5Eh5z0BR{~H<fGYie^FMqs|G(gg3P?Sq{}26FDFLeFe{w&Nf6M<o_Ne3!{u}>+ z|3~?svj0^8Qhx~m=|BE|1^`c(0;+nlO7Fi{?0?ALmi~Kv?Q4AmFlPUE_uu4?Lx8br z_CFz@&i}Fhl>pzw_E!OnM8LPc^-aS+IR2gfb^pKJ`JVwmp8{b1GXNOze@Or|0O<dH z;9vf?e&FW^KhXaV|Caz58v*<f_z(Z<|Nk)X5BZk_0REK#9)f?);(u)apU?yT`|!{I z?6>1TBEay^&$Rxlf&TEn@ZbFZpQ`{606&NQsipuj15g2E0#FLzSCYRHpyR*cpI`m@ zS33WA{vQ5Xxc{k00ImNN=ufpV03x7C0QevJZ~32w|A4>nKhz&F{?i!+#Pg31X!QTb zKji`Z|3?Mj96$+>L*u_W{~iCs{T=>Q0DyiQ0u=d|4gmRM{PUCFzlHrh!GFg9e)a$B z7|=h&pFa)2j|Lc?|7Q>X*}rcNe`voke-uGPK}G=41xkP<{{#Pw1Au>HKTQiL0f2wB zK=FS@0LXzj|DG~GM|1x3$7}(R|C!+bgZ)VX4g9YPm@fa17D)IfXZ(NQKU$#t|7-#1 z{5t}m1OLP61C0c51pvdJvmPY>q32EhXPyLpN&+PF6BUr;Pv!sP{~P|H$MQc582(WL zRKx!ZFO(I41#1yN_(unj`ClaPpYVUF0G$6Me<Xh%%>Tgu83c6lUo8IrDE!ltKh6KI z6@Vqg{^tKH0cr(cX_7yakpTGrOSf+P-}C=91*rVbvhcqx|HuD_{*?fnX~O?24d(xd z|Dyu1{cY0!e9HgN3P8*Mx9|`AKav0y{)q%A{;&K`B*2uZI{%y&<o_zeKP>`8@&^G> z`Jc-Fzh;d!Z1ewv|8MxGMS$@C=`#P<S!*48?Q{$O!2j!3{(rr7hw#t(DOLa=e{%mM z|2K&LzriT~lkoqBBmZCcC;Y#08v#s!|DONfeDh6F0p$NT2mZtVNPu*Oe?}4@BLK*s zuJFI7`Jedz+mieN{#y!2^S@RA;Qt-W{v`RcLpT4&_#gP+i4Ono90^bnpmP2z0#yG0 zZoBQ)^8dRD|GQ7yeVR?N0)X?c3UCCF8qELl|KE_p|8M5M{=ZEG2>x#pU>}qJ6er<- zYCrvd3-~{vH4z}%lKhMRQ2@e!wgB}0JNzGdF#iAa{15ym{C~LlAMjuJr;fz=*Ze;c z^Ph4Ap!eU~{ErfV{7;Af<EZ3+MiKxaVEF%pM1VB^?PmU;bka#DzbXEIR6xuB0RPqH z|0e>J@Q)Gz|DW*B82{`4pK<z`sDLw&0670c_+R*E0Khp4|3LreRQ_jJ0f7JQb7|pU z{s;c!{mcIdfaHI||FS>uUv>V4hJV8UN`O|v|GR?!oMR&ZBmnuJOCbO1ODyUCl1naQ z0e}Qh0zj9U|91hPIsf?o@5TA2%KY~v{}23EGXkKmqGSGF)$%`A4Fcer_mli@`5#9B z*IonpTOarb^Z&X*0s#N%8xjF({9oq386Z9(|APOUZoY|z{cj5VC;xK`3IO;I|F;o< z`Jci4C;rn)_h0^({y$pqkN=MXxE=Tx|04kc{|Epzz+HFU`SFYZ%KX>=ul|IU{QoEJ z*8LwT0NCFO{NL+of&Z4|FZ^c!0Q*-F{7D3;`TueLRREtc{{#I$@PPS$dP4rE{C~Kg zGXG<z903>sO8#H`j|9;Dm;WE3sT^nkCBUPP!vCJB$EkS#{C??6k3aUM$I1SO|6Bea z`2R|;`2XR5%zy0vC!Zwz!*`GXPe09Lhkt%kVgIjsYW&w0z}H;>!2KU9RKTDB3;{6! zc((Aru|M=r3ICn_A%7!4b`}7#15hde=5OwQgMa;h_`l%aAwVhvfbW6-uz#n2(7*V< z;Qz%JUxfctV*wzrKN>&*&`STmYXJB^3IP7MQ*r*G|7x(mz+VXv0YCz%@xLmdr+>iz zfPdqE$bWnRpp5^pe-i-X{IBz`0%-gX`NRKefK(Jf(SMz)fEocb`X5UGWdcwFK>z>u z&HWetvjM;l=s!LGOZ>!u{`iNo|I7T(=@InjhlgH5{}}s2{^|S#|NpG#&(mQ3^GAvi zK&b$gfSm&MLH{`aVSj-Cuf_jDf7O3P03ZP<GeCL3@(20(R`uWi8T$X1|0-6$ZhtfR z`-57*L4dOW$iKDEshMV&v6BBYHvb<jApGYv{6CY)f5>0>FaDod|9_AG3ICJ)H~f$J zAOAn(?+U<J{-^x^ZvKx&fGYeGA>b6i<Ui-6!2g^H{}=yj{!h~U&)KE`bI<J-a7lm> z{~G~90+jO)|0@AT$shdx?EkhYK*)c>2*4Cj3;&D#Jcs`i0a|FG;{OW&F9iR$2++dX z{|hZj94I4zoW=jJf93xdDgQtD|Caw5_y3oS5a3*DiRS+=rT=di|1Z_xp9GNP-}#^C z=KnhdVDmRC0NDP01(*@Qg#BOhKjHtL|F7j={ePVQmDv1EX9Uou07`)3e-uDl0q*&K z$Upi2RaYha?-XEl$bYrfTGt35{{Iy7KX&u~;r~d0SEB)@TLH-a?;0KcTmGj>0N}q? z0LcEs|K|U-{|W!l@_&|pWB$YcJ^!<Ag@1bfr~LodmI{FXBLPqV=?#bc4-%l||6Kvz zWE24!lK?FO1pIF<{M*g{-<<r9@XtB;|68~4&zA82Hm%M7lm0IW(DFa}|I}FihY`Sb zMu2u`5@3fNPys#vQ~tmFpAo<=@_&l}$^W~M{HYb-^8Zl)T>`}a5C3Nb5dUBP$N7&0 zfd3-_UjK$SxCKz*|K|S}{J$~#zkz?lKk@(fWdsoae_!B#od5T0{9hvgl0W8u4mAHm zaSr+aL&o-hNAQ2>p@-3j**O1)qW~;c0OJ3*@P8!0Q9A!s<o`SWA4AFi>F)mr{+k4F z2LSj#;lzvphVT#gkMpnjum8^gphf^EWB#A4^H0J5EdQSR=2PBG1PJGUWd6VTbn`#h z|9&$9DDz+Vm;cYu|Bnhd>#WNEg#VQQnE#?bpU(e1|MPZ70Gj`Go;x1?2mjAQ1>pRj z7x!Nkknj%@V9fuo5kM(`f&YR3cfIT4i<1AjNcgW20M5S>fb){@zwF=OzvX|z|6>xs z<c|vA3P%7}q_qE&|L5n*NB|Q+S6z8^R6sZXuj=`qtD^u=0oPnhn*mY<;QS~0kN@uo z;Da&$udBMALINcJGvfan*#Fi4M*yU{{~rmU`(OUQXZXLuKaxMmAN~K^ZX^F+%fDm% z5Bq-v`gaPD0{%t+kUuB+pF0HqR(JJ+{Nw*8|5Gaf`2VdP0o;@PfBgTu@41IA2@v=% z{vY7~Q}-qRFZ@gXV=Dk`0T}(UK>s9vJT2khv)AXS&wl=MnEy130OkKH0f2wLeFDG; zfaFg~^FI=x(?2>u?l1la{+k5o0s!yd@P8Hn^#7~B4E~n@2>j#xk4J#y{~`a+5a4Ox z|0(T%s=>e9U;VXI3;z%JkN0m|IiG!o&$G`y6Z}^M5CMAr`RB<0JQo2_`JZS2Wq{;A z@P7;cd@Jlf`2P+7fd8uRp#W0me|r8u{Qv#$mjDp{Dg1xy#R2|@{6Aa2sYn3W|A(Z0 zn)}bsOK^XVAGi8R!~dWB1OXuXj|~9eesqA?pTpn}&nEv>0G2;G|DJ&V&wgR@XHWo{ z05tml1;2s+%KyBq?=Sq9_n))ne-r?Y0HFR%05twh|L15DKn3tytC{~ozcC<w%KI+~ zz&Wb;|APd8`~N^U1>g@N;9v8F{jJdmpzwdl|EK`U{O3UdAo>qO08qa~fImK^0RE2s z#r~3iTJ&!k0Qgq|*kd|C1)vN_L;bD(uIV52_b>iSs{g<Khv9z}@5}seN}w@+R|Nc5 zd#3y|RKQHF<NVJwgW;bH0z&?={Ywap!@vArBY@if%?b14{Lj+hzw`gZ@W1fi{C{r& z!tfvN|M7YDIq5lOhx?QNnSGKgz?l9`1x%Wd|BnPP_D|IoaGd|SM$5l}{|f*2@DExb z=0B(Vze)aw`TPApr2^)kPxF8Nmj7ugV8OQh%jWMwz<-_cKU=^HF5(10|DT_l0%-eJ z3Mlvg@JGWxi?tO1M*!{qA8!F#VsUnVTli;*O8#s9dkav@|17n{<RyFff2q;^KNSQ@ z{%2`VlRy3PAGd((3LwcpTfhnbnEdJff0_TDf&Ud)0nP}Z!~aSaD*$c*th~}nuUy$y z0`$v&*#E8Mf6g-hdjx1Tgh2LxQ31vOoC*JXYW}woK=D6Q03-mhpE`&AUq=8H{$~Qf z2q5`?oPWv@fF1ak|Kt4UH2-7k{HH4a)BXQMfLH;rhy0KHKfwQn8_NIH;s1?V_-AAN z|BW_91$h5Y5C4?^zp3VbBmnk5w!acU_#f^6j_&_a0&HFWe?|c2e;WL6i|rrhKja?? z5dVMs?O&(=-&X(#|3Lr3Kc^2n4*WkvfOa<dzw<6*`JY{P-Btge?(mQKPg9)ce**uU zdxrm&05<$@0sppJ015vX0YU%>|9d6;qyG=~cmBux-?zd);s3V$+eQF}f3W|({73)a z5diex`M>-BhcF8`m;?}25<vLx{D0WthsOUm|1;wMG5;U<Kbk)J$nbw8K&=3<|62*5 zB!7-OF8BYy{lx!)fB8S*pIrWv{LcxR|90`e65!;Mhvbj>|5NRf0Kh-VpK9|zhJR`W z0Qm3xkNr=bkr4poPgVZEhyV5e&mNY4JN&Z&P*(r}|D^v*0?7Xv0mT0&{GSMr{=fWh z{^xv>|8+V7xG?$u@%+!b-bMI_hWso4ZwM#}po`#t+bKZtKky$3a0w4YfCdQ=^B@1e z`f@AyAOHWojsFn=DgfYL{%^$=u;CxNuK>Rv^S}Im+20EP$Nty<j|4yj)bcM1;JWLs zuNMBx{O=N=hktbcl>iw5+z9zs_(uug{%_@fF#qjat91TvyA}BVaPmJc|9S<GCHbcY z_*Vfy|Kt4M1OOV~j=Sz8{$C>ilK*`L*!;iwpM-zR|4?^ZN`P=b=#Twx_(%G;?z_)# z`Tw~8mJ&b#&?SJ|zjV<5Gs*vW7W{V!Q25`%|K<O)0wDXx{qOMK*k1+kkmkPvAmN|x z|38fTUju-$|C<DOj7k9L@jd_;@jvk2BS78z2m8O$*<bTN_P+<%U-h*79|6$#e>w?J z_@5EL*R}uS|1$!hkpRzh{D=RC4Pcnx{6FNMV>AF5n*ntHKM5eN0cy#ga{obp>bvlN z{C@*LH3g{rf8YKE{lCw*SK9$-8X(qxj^Xkjy?+J(KkV=?{<r*(&OaJJ6@c?^IRHQd zC<EFEpeq3AAMPKO{NHNa|5pcO27m;J3NZYG3~2ST<lhS9AFE$M{}VKT&_Cw?`=^Ti zr~upm=B$SPL;g85|3QD?zx}8JtZx0I0b24uV*n-rDJ6j5pDOZq`!@rC&i_Gww1C^c z3IKt>v%k;}_Urx+^gq%0&o}`7*Z=1T`PUKXFC{SGze)hs2md1ge58W^3V?JC03?2x zzdrw0!vAmn!2tjKn^6BNLi;`E-%y{wZ17*<pUVG_NdPbZDgO5q`*V{2pJ}4`AKQPH znP)Qj&+};iH}D?`Fk9XK>GJO^J^w#jRsanD49mYt0D#{sK+E~B*bmrG=kg!$-^+hE z4gd7Ze}I3l0G+$#|BV3Y|Ih6rK->JChX*hJDHV_@04kvS|CRsmD*(Cwr<Q-~oS&*I zK(+lB!2E9=^M3*8e~<tGKje=D2>C|>ED{NjEKpMcNC5LceFV@h|IFn-V1M#I838Q5 zBtk&`rx%y}(@T~ApYRXQlUe@F2w>@@z5HkCHUbF$v-w;6@8v)4|K<wNf`8Y3YXyMt zzvh4Te;om&A^(Z@|2PHk{!jQH@;Cg`I+uUe{hvwxC;w0Er#Jh*HqJl%&o}VDIyEJY z^FL+k6j})|rSktqfWUrA{wMig;r~}x^1t!_nrq|=&^1RAp!h$|zwlp;|DXIn6M$g^ zu<m*-|3mga;eXG{|I7ag|F6Hn;Qwd&H~cU8({=yn#^(Qpe@6hoKg++x|Lx|_g8$7n z-z=>Hs1d-3|F_z5O9a4Hy|>;<^M7mdKZyX1@qg|A)(Wr#0Kz{k|Kj}1|8;IZM1UIn zOaDj!od4EY0oWxY03|@e|DIM~0T?d-+zt9C|37Wo82|67|1bYz{=@%!>il>3ujSv8 z0N{Vm{}BG)i~Rp^|0njp{2vK0-2X%TKN|o&|9`*%`ybTyf7=T1!3PcDe^-DHIoRY6 z^xwiiJ^z0=@UQ>x03h&B_~-DW%Ky)K)KTPri~vOfkN|@J&Hr=%56PcC0yy^ANPyh` zIT8TyzY-vq|F{AS`JX8KQ;<J(viy(ppUq#7@W1(=A^b!B-x<JZ)|<=uHv&ZRKRxXK z>i?Jdf0oO?>DvF*{6Aa&pXJ}$|78S_`#;|r@<#z!M1YtAoJ-072>>YptVDn$|AK!a zK(yf>y79mJzZbr%@qeuV3;*H&i~zL%g@0<~|I7Zuzh^4>f4qN-?9b(wC;Wf8BLL(7 zSJ>nCe<A>`w66sIuZsDP0N~@zKVJUR7Jx_ozvln7hJQH1|HA(V@cyCy4_r4k0zd)W zaKq3yP;LR}{+Ius5x`A1-jupI0U)D4D1ey%x4{3m-hAtAxdJr#|M0)tzq$NJ3E<^F zNPwmQ^#2L}2mea}^br8=e;WXV|IPnE{=$Dx{xtp{<$vIR6+l$LJtzQ0K=@zur|y&e zJO3O1iT|JcKmLEN|AGF4|DXPJc7OZwFZ|y%z=Jgc!2bUnUry`ujsBwm4F7QdXTm?` zf1rOq5Aj?4FaAGF00`Tka{1TKqmMoM$YVPH)!F}L0#G%W{|11X{~z<8Bfnh$JjomY z^p6PW{(s;f{IA0OcLb0H;I9(?VFXZB{{PoH{KNjDKi{FAeRjnE3;?8m{C}HzF8=?3 z{{(<)1i%!)D?ow&s_%Ro0YJn4e5?4y{?CE+Z}`700KonT06s6g@O?agepCR#{}*4J zFaqeee?|a6|37N=k~09f|E17>@V~J?;2-?&V}O53Vf&l^sWSqgO#rn2t#STO1W5m% zK>*}W4dl<m&q03_K#2h0U;F=M4&Wd9e>p!j12F#MCx!P9{O2q7PvC#ef51NyAOaxx zulrvE0F{6x{&NQY>zJ?u5cnSk0Ahaz0FXaVIXznZCn2D~f0Tevmhhj?pE;`%{fYHI znE$eW;s2NjNdDgufOCMLzu_OzzxY4!KOEpb0${ud0O9|8SmPjHfAjx*4zZume$0Q; zJ~Px5;1xW@|8GNq3GkmSU~c{?@^AisRKU#L{O1AePmBFy;h!u5%sO+DKNSILu^)uM zaQ`R#9|_<H0OrpKV7LV|LV&g3YT;iA0QRSRm=yk>G%3j+o`HX!i~M`|NBD0&kbg!1 zmH&_V-y=Zt<l3KF0nW8QnE&(DL*Re@`4*ht2oRm{&-@Fa0$Kzp{69p1;Qy$AasQv> z&muJfF!rAaP&5Bc0pa;`lK$Z#{(r3iI0AtDp?~>5`TxEJyd?g=@b4DDQnCGq6#yRy z|1a(3pKS!-6d)2{6#iMx<iFv6yZQfy|0@Ml@V}zrA9|&V03`)9%Kvo!ANl`Y{%LFe zhyQc`k3vA_ANc3;Pxzl+9p^vyf3^rv;J+lm)Z~BM0BFvC@jnXyWBb2Y|8~6sAou@c z|2O~N@c&u^{I~pn^Z&{JpaRD7KV1HA=kgx}z-v(f`u`;XD*wYRpc^#vf1?e;{~J+( z|26_B{*MG0R)B~5|9RL9^6&7UEr2bD`#%u?@;~N(PW}Hu0+9b{5`aNKzyGJM08RM+ zb-;h`?RP*3l>c8N0Pp{&2mTlSG5<Mt3H%rTCjzATzq|JTgz%64|8)Gn$5{AB|9^-8 z;r&~E|2JCzjsQ&l*U1&2`!EIAr{JIPPlNycELVUJaQ}C|1GxV)_y02hPy%58A7sn_ zbsmiKpFSiKKoKxp{xiUT0zia+q5|6G{}}<W1HdQn-y}eb03iVy|7Y_T1%L!N-VwkF z3;;$ez{3bY{^z6lFaO)&|1JRn|EI+KKh+435&-{yECN*iKiMB^;D01Q&;Kg{y8lo9 z9~GegFaC%BlK?vBZKQzu{r}kiP5@Hpp34dV@SiJyNd6-MAb;(D0zmHw{6_)^|9$^= zjQ@%M$p7!`@Gt(i{a;c*z(4da`IiK^#QXmV|J%*~F9D$cZ%O|O0Lb6wLHM`K|EFXA zhyNk}E8%}CBY^n-#sB#KTmX8_``ZBETKNAOB|yvnBmvY?K*0Y8hY`T_*CPO~zy1cg zR6vqHE&TH#us`>IhW~+o+<(cRulyhKZ~p%++5a{9qxoNFGyfd{#Q#?S5dXQomVcZ5 zpBcc%TmYa4{>S}~{~z-o0bmdC|8f0)I#vAtkKv#D*#Cw9Q=h{Am;H7AE%~4B{{Lt0 zC;m^#{||Tq{#6e?i2wfp>7OD0L-Gd|VE%^ykSf3e{#5|fZ~-XfUn=0CM1W8MRZ4(| zAAL0U|DXaMMFP;;|5UvHt^&aRE&)^k+5d(7gZ|C|9036S`HKGu|J3<Zb^xA!+8IC; z00N+w`JYyK1%OKc->8rHZy^Di{}24@|0@A1{KE(U>{kRd2|(<p@jvwcEy6!h0L1>I z0lEO-7xMqkx8eWRfWPS<+G_b9(cgN3wsN8Ypnv)Q#TRoZ0+Rpn7SNRLKlJa{(*CzR z<Nb&J<NX)?BLfKj^Xc9{=#TlY1OWd{{@aEA1^<Zw#raSAXTk)a@jpK=8v)`#1W<v0 z_`enG-&+Ns_3zn>^p61`@V`~v0UG-6_%Hdl`d!C<$e#lHso}xg&tU$O{K5LSga3cD zfd70w<bKFM0U%Cne=6DkdI<Up|D%Ti|Nk87ufr49pHJ%FsmuUE{8E3wzvw>_pv!;( z`||+#YyMBi|Fr?&`TtD%|M~yWaz5Ve1MS24RGt$GG8%*g@V~YdfaHJ3{PZ9Yo`07B zBOy>%0F?@;<WFpWgusN$e{lZka{fJ`{p5eZ{@ni=_|NihR)9PI_m_XQ{LdV768;}L z5<vLxQ-C%Cm}^en{54nn|GAL><@{#^5Zk}ZfAase0)PY<C4c5^TL6%My9G$>uggEf z|Ly+&`AGpG1RDH9{+Rzcf&a0~KNseY;eTWQ$^S_H|8W23^eVtD;B+K_;h)8pfc%U9 z8~Hl|SPJa-^!;BA{v!dFW(0uyKbdo>WhRg9|GEW0?x*qpa@qe~c3DRNBmaMSSAZpd z_<x1v`py5#3;zlMoqufqoVodj5dimpIt6&;%31!cQ}}NZU=>OUkh6#Xl>liZ0QSG( zpX#Yo$^Wndpb9YjL$~GM_6o3C0Vet5&HtWjwEbVgKd(tw3Ml!X0shx^1YrIj_+Q7C z{73Mg5diStMgYzKFZgHw7ysW8z=m{N0mk{?VB_ZhX9TcOdj*&)z<K#s`Ty<m&$|4F z{ol=j|62Zy|Iai0zr_|b{=eP)|E=)<YXq<j$^YJvf4W70;Qur)0eD?hK=MDN|4jj9 z|96KW|Gxv~KfTLN1^+$#zjNh(TmZ=aZ@d39SAdoT!22)w_Z%WXF8|Vw00#Kq^9_0P zS59sKivPdY!2e$Uvv*4P-@Cv3Yahe^`$hsl{#yU?e}#W?4&fj8zexc2|Db~priFj% z&;)>h|BL_*9r8bA{vQtcSC75_tM-2x0XPLn{^w{e|2dk=e{7b2kpRd03IOc?T>jr9 zKqrv=Z$0M!p9ud?7yhaJ-;4li3UG=A|DOu~1OGXh0PqU1i~zF#>*fFQf4l#`mVe{_ zpLNFA{x9&~`M>=C;{Uf6|3?Ct{OPU#U+|wXfC?b~|M|WGtRg_?Qx}B)FDU<?_kZQ` z&zz0_-<1OX<$ost`u~al>;EeOtUBd?{D0dT?*EShhy;-QasFFF{;B}^zY6pJeedh^ zUlO45Kh6M<0MqaPUeozM=Klv$c>fgvlK!tt1W5QF@;~ML*Zyyr|2N)vW8MGX!$0!B z5`cpLZ^8NJ=ylt~`+xBNnE_z_x6S~-{11%;F#NCoPx2r17yj>r|L>$K{Nux2<^Ko% z`~Gjpzu>=4Z~n2G|9>|FfO`Y~-T!CzmoD=6$M8=j|N8)-$A6Ro4<G?-{eL>-Z~EtR zpM6mF&o|^x{-^Oj5unEYdjEcP{vV=4|Ksrgu>AiBrTw4d(PsWj|6Kz}{w@1&_y_tQ zD&~K^0^kWG0Q{eRl4|CE3jsm@Z2*ArZ>NI(BMC5m`DcUwZxsJK1b8;|5ByV||C9ZB z?zx8lwE*zVR*?V!f6f1D$lnJ35dh!yQ<dK_3D8tP2>`*rBtU$Bk366OA^~{wS89|2 z0{d$K5bPf$Kqde`Rs^I-{j}sy$N#PXgn!uIujK%s1c2#(cL2s#faCtx2p}84L;eT+ zAG!Z8Q<(pQ3W)dL763y21^<Ht5c?bc1O06ZP%FTA|Nqh=Kzjc9ayI`T>i=E2|G$k2 z@X}8o;Qd~*zwnO;=-}T50P+6+i0@w-AnZTJ|A_$=_xIcn&Oc(n>fS%Oe?P4n{-XuD z0MPcQJVgFd0Dt={{y$$nLnZtZ^yjal0w#_CBzYvje-8Bj@VEc{zbmW1sesP>-T#jk zKn~21DZun9012QFm^q8UWPW-IhzA?mPh<O6{=cmNAOU98`L7WG*x$R|{6F~rJ^63` zXI9?-HKc$l|3mnHVhSiLzytrg1%L`j1Sr@)SNwnApNF~G|3w0n3h<$lKT!d>1$18g ze;0vO0r>y(n*1^U-&O$n<)2>uZ(9p^|Bn&?^FL?!KO+EBKotS<O#TP|e_>)j_M+l{ zlK_j<2%y6Mi2%j?UvzQe|Hc0q0hs?^V#xpV%oL!9e<Xk5Um=hP&}1V(G5?4B4-uf@ z3ZSe2=>Hr3_x)di|EvHk*CIg6FTd;x%N75(_x~yZxcndZANT)T_-DHO58;2iy#hEA zp!xqL0ail@nEWUC6Yj74Pp$wR8vzvjkMn;dKwkkc1;hj(@c$al=Kr$*ux7|VXZinx z|8xHj=h*vy;eVa~CIQI*nE!9^&-;IS^4}DY=D*H=?+x_-nE-6K;YRe3{~1OA<NLqE z<)7yNH`xs5zwQ6R|G>Zeza{wZD*#*p&i=0|K=QBmfB8WEhbch6|0m}EwtWRa>~HxW zH-AY1$^I?;vjZc53HSdu|G)8njR1C$|0!Pq&@TVq)%*{a|9Eowr`aDn`5*az&#VA& z?kW6-|04ki{}2G`5}^2h6#m(3<o}oXpR<L3<bPy9ng5D_;(yZrdHL@F2ku|*|Ly#L z;6aW6lmPwm&qFLCKqvt6KZha#Nd6f9Pon_Z3V<*FD)awH%zxou{y&Np0O6lHrse;S zi3AY-?Sg;2|Kk(>KmPa=5dlN^=R{V2ZS((_|A_!~|DP3rVGH0CD*k`%|1tuA{7nFj z=l}KpQ2<H+!~fN1DgjdFf2^|&{?rNkR|F{LfAjzG{>=bY_=o%d2MM70Z+HJ6{%_%* z?Ejw6<v-^o|DP04zyBZepAi6SziGg~NdUcnn=OFwzwFPqt^keyFZ(M2y!^)rz-8wD z<$s+2iT8iLx9<NL@ZX0kuWa}KTz%D5$^R$;;{W&C|KIQBpVqaF|F6vmz{~$h|Ma?! z5kT=jXZin_|JO4D0RD^rJ%N8)^I!g_#^Ar-|9|UP{{Pk*0^Fwk&;IXl`;X*rL;e)- zpXUCbT>f*1CjtQT-?J(j0RF#=K|uNcJ^WAjhx+6vKXLab<$v~nL;rW*lkgAupDNQo zRQ!LAi~vdlX#Si1DgQs|pW=U<|M0)wzwnRspYyZ$|GnUU?f>}ypZ|R4|7QPxepvpE z```KhA<X~g{|o<00LVY?zbZfhz!U)Zf7}6pD&R}fzXG7&|1;o!`Tt-33g$l}0H*-( zKMLRp1ppFYxcx`?Z~Xr>=^y#u@7HKX0AKwo=D$|}jjjMK{15zt{uuy_;eYtw_|LPV zzyANIm;hAC|MCAPq<=L3{dDKQD*$xB82^92%>car=lin1U$DPLe~SO1f4M(L%>N+* zr28NLzi0n50wDb#?$3`a0LA}<3Sb6cQ)T@(@DKY3{|o*r1B3*q@Xyb*|BL^BZu+Mu zfZ7CL@c**_ocNC;0Qq11_Y42?9ryn``;QF(vII~Y!0>;Te-#2^e`Eg=0KWzPGXRJP z`2Fv+{(=AMt^g!|**~TGukWw*-|T-C0Nl^vrx)Zuz5@XBXAF>Ej-jFiivP|2_znI; z{3*~s*k1ww?jP0k{IBmH@1G;T{2A9@><8%c>%%`3|7E)R$G;i>2VwhH!2g*4g9_00 z7yGgO{d@iYQUS63XPn7dz)WI)NdQLx=6{m>pBdXf@Xtf|pVQ>eEaZP|Jpa!BtN;W5 z{7p#!Z~mms{8VT8ch<7~JNyIv4f_lJ=a{3L|K@&L>?h`b-v2wv6cBCl#|ThTKt_Pl zkpRj6g#YKBYu>pN{y_r3{Ov3WP_dul|Cs-d0ND8*%l~xvH~i1#p9A>||JenO1X!5l zzY@Uwe<T3+|MYHCfV%&OGuM9BS^K}he;W8-90^b(0O4Q$@A-eRf9T1E|1$`fJfwgy z|HJ=gfQA*|VfmLWfMreo<ZR)eVFj4v|ME8EPjRlqxgySgivU&lhgpE;f7=3Z1OWUi z0akGfp!R?D|EpJR`@cqjD*vPVPdD>_N>+fUW(Bye0G+V^>k2?F|KyDM-}Zka0nGo9 z|Bnh-i}!!osDP3HMu67g@=sMj8v(@pPxv46zxn?p|6BfN2>&Dk#0Vhfe?|b3fAz@! zAFcq>{HHbl>Ae4I)4cx+_}|R^U-SP3|LqE(&i_gP%zycxDS$=(NB-YtEBycDf41H> z{y+P_N`Nx|w`<OS<^SXSZ@2vp`2X@h>Hi%Q{@Ib*X@}hZxzo;!0B9pXmH!X_$N$gf zZ|(o00-FE7`^f*FMr8!B#~$)OvHvXp?z!h1lmOs==l}lxuQv|i|GmopPyT-&&3~r= zjsLv@6zt#6@Q?W)M*s=`!2jv&{~k2t{||)zfq$HTsw9Bszy3eu-y%R0`M>f%_2ysC z4*xy>Gu;1kOsg6J9M?wx=6?+TP^5tJ^51^{=ZW%vB0z7lkN_uF{>S(a{{Km*Z~;(X z{w@C>_y5hQCIM>smow&nR)CQJJ^Um5pTURI2vB?f7yNJa2vEBM$mQQb0)+ob02Tb7 zdv1}x@Gt#y0RQO=&QHbvzwpA`|LGKf+kfi*{|ia~wEPbvfSCWe{|Edp{!jkj0e}Jk z=b!JTRhRV<K)?UL^ZyV5dT$lxKUMyJ@;_HzdF62bXW#$5O8D3RPyYX!r2l3AXaLR+ zK>zT6O8!>`eDFHD^Z#|=KiFSw_P>Y!q5tszO*dx$ceMPA@sA3iZn@=V$RG2+`Tw_R z{@aj$;NSayoB)jc|AK$$AO61``iKAH{WAgp{38Jv0Q3>So!bBU|KWdD0GtBw)A;`r z@PDhj?^XibGtU1t0%-8B2>4VR05}DJ|Aqf%{@-u<|I;}CG5<eP=D+?w8o=xi1AqsM z|2^gZRLuYIKevDO_|F%<*zf;$1fcy-vH$B90N78%|0($2?)8}Ap9FxK3c&xjlmO8H zqx=6$0emIs5BFP7A^}>-|4juv4gZ%4Xaj&Y1CakykpM)0T782U5avH0z5mp+mH&Cx zg8c30rsIDm0CwtI@P98OK%)^r1ONj7YM21X|D%Hc;r^-@y7`X;=qe!2zvjR2&sW^% z$sekj|Mg@1|3?)80{^1`a{L(c9|@oeF#A*A&_Dd&1^}Rc>Zi#71^m7Br{#Z!@PDWO zpHpD}s9t`#<G%qQCjeG{6adh_{15$G{^SYc|JO7hEBSwaCS3nB3;=|G$)BbY`pL=j z@99>8KN6q{+6VvPfBp#gOaIge{>}gRoxVc<$pW?P4?ltaI{zHwKd10Ni~xEJDD3YM z{~zDKtbgIZng4_J-yQ({dh&tqP$T#shxm!l|2^<e{I`Ff!GiWZ#r_fP2mYH7DE}YY z=Pw8H=a2Q=_<yFEB>yG^M(`gMU<%0aPZ|-xLks@^|JAd}|FeewTMDSX`8QVp;s3|> zPyWA4fENDG3c#e~|C<CDO##MMfG5TIFaMw9j}m~>DS#4So*Dsk{&xy6&wO;u|4adz z1o(&LUsZt4Kl%Sk{zLve5dK+U{&wvT5@11`|1|X9;lGanH2>*Ehx>mB|1bzJ0@UvR zZ^@tH|HXRvAMAG!;LSfvEHUQ)FNyi@6aeyH%J5I)e`5bjGXk)?|DXK7&VTv;Z3-}9 z|98m$FJBQL@;^ubSAd)Ozhc7wE3RY;DEq&V|BA09|3m&C=I;@p_VO?JzhXbW{I_iZ zX#U%)I{^^>+x`DjvI5LGbqdaZdMYQ*KN8^8M1ZjUvjUv_4_m+`0TTWhMgU&>X|K7a z{{P7QUn}IlPL_X30r8;uzqZc5DIj7$ga6MZpl$&-{&xgm{%1q^-{gP%{|o>&jQ^i= zW0rs02w>x$|0($Q{lA-P{+s*{|8Kel5@2)9|MAQJw*>yTv^xJQ0Wt`{{}=uf0orEU z=Kr$-EdReQ=076<U;c~#zrDQ!r}VD?puGIY*MFrG0h$Q^J^#Z9z?c6{eE$~`K=XgM ziU7g<ga04?kNN-l%Kw1>tN_z-{#*VZ{BI)wt^lg=zu3R`c>aei0N}qQKt=#WfYPRb z>hd3^0G2A?po1{~>++xY{|6s@$ie1+8vhUeKLdc&;QSK-V*mGu^8b&B`G2J5fBFB% zWchdS|Bp@nANa@pkN<z%aY_D{1R(#T|6lvRIlThN@+|&8>7>xV{GS!z;(z`Bmi!?C zB>dM1p!R=#|F8Fd68_QrkN=PJPX+$H|A#N;KXta||0w^@{_i;n|Cs-m|Be2%{LhI0 z-~JAr|L}hlz<H>Ek^twQf58RkT~PdA_kX$q+}{61{+|N;sf%#_JukZGVm}w>>j;1= zfPjA#z$NnkrSN~f{|o-V?2`WGubBVuDf6ERz~#&U#^FEwkLzy%{|Er;s;g+~O8x)V z{q4Wuf7pNM&i~h-01E!$e+0mF)(5=;==vrAD*r#c`Ahhh|Al`~M*!aZ6Zn_^Spm2O z0nqrL<zH36ZN0h#$O<q5;3MV#%l|=tkHCNUAM-!_f2Zz09|XW1cVYW00Al_N{(*n_ zKgoYi{eLU$AO0Vc0LlN<`@aJJ@W0-_-}{08iU8I9pOAmSf1OGGJn+D09(?dK(tipG zFiZf7|3~l-`h))?0nqOMH2*_Cl$ZZD^Z%jF|4M+se<DDSj_3bX0RjJlfB8S@pOygn z3h+N#0MPue68@hU$e#!6Y3r%4q5>$a|5Vr?{-@jJKSlriA@Cpi5C1<~3IGXU7yO6+ z)d0_B0^t7dH=Fw(3DDuc(7!JKFZ(~>&ygtr<c|vY-WdLO^S=pz@3R6B^w<4w$)5y& zAb*8`;Lo?ye<Xk+U_u1wrB*6{;{Sqw@n86t{CoU|$B7ES4FEJi2>>^Mdm#bv|Hq05 z&}ae>`2PjmUp2754^Tfx;Xlt!10VxhDFJ%r_8%mGK_J6FvHipSVSn&n1u#^=e;ogv z0gU)x^q2ob|9?!G`}Z@H{I3WY=>X0DS_CNgHvp8Hkp5Q=jKe?Pf9(MLdmjNb_>T&R z1n4RN(kJ{wkC)t^KacqT@2CKSKe7Mw;Pd~o@c$e6&k)Ej6~GzK-~TkDZofT)z+caj zfA8A-HT>WF|2!}S80CMO|If>RA^*UC<$sU>0Dt-aK4|-Q|G%04iTw=wzufuRR6v+N z_kZI5&ps#cKL_T2zXGU-e@5niyZ>j-j{PJ5Km6bFKjr_=W9%pQ|M&b)TLB)w{|D#a z@W1!}I0Z2IU*Vs?e_H__^8X9M{|oE<r@aDnl>bTi$NT>Y|12i;BLo8f@%&x;MFseb z=kFCjhJSGXInDns7W2R5e|QDJk`&nQQO^JL=6{F(vCZEB{@eXOJp#lOV7bx$FZ{p! z3Zwi_{C`qF6a4>`bpF%fe^mhYe>VT0&0j_USpm+Qe_i{H1R($4`9Jypf&W);{6E$F zf0F=t3xN55y7NC1fWSZeZv<$KcK;{lzy3euFZ^>B|L2VPALn25U;p3Y4E#6#H~G&u z@b3!nYa##jTKESEFn0gX#G5}`_#X-2<v(=!|J?th`JXF5NBoZjF#iw#^Bp7r@Gt*k z`@{d7>8-ae|G$NQ<o_1_FZlQD;s0%O1yF~713<<9<bU-4>78r;HxVG*|DA1Wxc|re z&u+WK`QKINzsmfN{NM8b?G?ay|C;~ie_oI6UoH8!{LdTQ0;tP>+WUX^+Ut$9{J&Q& z|AGHe0ht0Y2-tVueX#xav#I$1F8><-_wxU&089RP1px40P5$Q)M*xWc760q}D*#OY zv_6a&&=C{DKZmy!;G>Qx_&@3>!#@=P8u*_XK==O*{~Ra&m;bN%Pay$l-~XE{Kr;eJ z{-^Oj@Zb6r-~UVSr(OPu|8Mx;>iHi6K%@JAm;ekb0EU0gOaut$KkQ$p5`g@F?*1A4 ze<DESe|iL{j{x32i~uV6e=b|Vxc_<oukfGc-}6ZRkOD#iv?l-a&f@=m|9{W_r~;G# z;y?7S0I=HqpBG=E|4;bm-SPib0he70|0n$K<^R?2zsVo!y~Y1mko>2u_Zk29{lBFD zBLPP5|Em0t;h%p0PnLhP|EvFhtt#MJ%>ULO#Q(R;|BnI~_}?Kw?f)_XXd?jmKN4U9 z|I7Z||LGN=!T)CdGX=QqHWWZ4fZM+{0%-hC{y!1`;~yaa`*;4o9sZ95DDxlw5B!q= z0{llM{LBA!`KRF@JMa(vBLOJQ|2_g}mw(Ft(!cPZ6Z)^};h#(aV*W=3pajhS(0c#Y zgOLF8zh(Yk_rFa5V*WSyZv%jY|H=RR{x1stkN4lhKM$t@|4M+=V|70E=wsC5WAKmp zU-;i7fDxd9|DSjQ_%{TU@c$ELfC&GzhW(#>3haLh@)!Pz|0MkL^w*F8A^)#6{)hby z02Tbh|5XA1qW@<^{}lOuD&!yfj{p$*pZCD|Pc;GH`foS?Tl`=4|BmKAN3ZYo2|)0l zHDHVUPwN+8|7zIZdJ*`yEttPf;lIK^Q2<2$$M=6b`2V=qaP^P&|F{5P06@e2R7d~D z|GolX;D56}CV=36O7!Q90(cqv|HT;mI{*;;@&6(J5&&ob(ck*D{{P7SkNe*xKt=%J z{>%WB0Dymvr~t`-OaRFLetISU&lW(CU-*~&jsLU=(7z7k-xNSmfB1iV1~4K0Bl|ZE zU<^p`|FfQde(Fgf@E834_M`QmLIU9Vd*p#<2LNIJ`cVY@)yV(fJS@&U{EgfXxbI&@ z0{r*b??3&Y)rkK)<f8}rU-Dr1zXZa-|1%l;nE}(^2hW6mJiGs&2i^iUOC*3oVAukV z1ele|2mt2ii8IcBJ*Wb>0(30=V+5$~|1tC9GqgWk0XpP=;Q!f?0F(N)|9MXGr(!>o zhyXbPpi2eJGnoH#H}jt<0I?tVzaDsw|6jL&&Rh5Ycvk*DE5Ks^{MG_WfKm8=!3C4~ z@f7~$|40DM|G+;d;r})QfcY2B2%wz*MdW`k{~w3{+yYdCfFysi|J%bqr2?|~3;AdN zci{iY6Yu}8{ol#(e<T3=zrOyfy#>H)|A&_Ums>u)!g9;4Q2f6<;h)|sE>HevB_+TL zMgEKcd;t4bT5)CX{~`8M_y3#xp(ft{Q?~#G{v!cacLd-RAUA)mHf73cQ!)Qr{^uY0 zKjwe){}TZk@;}2X03?4UK#c$(|LV2ZCIX}cSbLoafpy~lue)~gKY{=M#Qz8X+vWe} ze@6NLOaV5~|KF&Ge>NJz|MGw3e>S1yf6u)9tK9+$_PYWs`S;#(ix&Qm1W*NRJ@nRr ze<MI%{!=Frp!WW+^8afDuwAYI#rd}>_kS4y_!fYk|6v4x^S{$hp5gxi{(bouF9I0P z|L>L+0JZ?&|J|o`|G)45?g{_zf%#wE_J3a=3E<5?@PFO>|3;U882|+S$^TRYDDbZY zuz-Ks{Et(BeR2Lt|B(OZA^bm<|H%lT^S=uK4gMJc$p38wfCL!e-~HdiM*M%oMF0QD zBisF-N`Rx1|3BvFV~#$0fd6AF{L}cK@Q-~$zyIe=NPxZq;O#%wi6@c%ZxX=$-xmHk zIU|5mPfqwJ_y05rpbP;1PivR|=jC7K|MmYV`2UPEVE*(O`u}I)|BL_fe?|Z%|0RF! z{{;S(01f~M|G%A{2><711=uS<&z1b`cbr%GpMw7`0f_!!{(JwY`5(*kT||IV!2d<l z?f=66^$KA5-@25##P|PRb{VIY{D1iW^7kYH1pL1z=6~-0d~ZpBwgN!@htmDOGW?$j zz|}GT$N1kVKqSD`!GERz;D6ws1M=tSl?ad$;CegoZ}uPZzkW0VsPO-d&HTS9BLJrW zH>&~4{MY}dG5<;a2>)FEuLNlK|G55J=wJK~{9E9^=6}Ke?O6Z1|E-$;ulbJ%_;|Yl z6!y2c1=Rcx^lvc%Py-16Rr0^({hzu1KltDM|4*p`KE;_4z^4-dYOeqg{wx0T=?C=x ztJMGxR=ES*MgXDz5&)pT5&-}I3-13a0qXjn!TjgpVa@*u{15q)0!sd;6aeIJ^Nso6 zC4lsAd-=cizd@icYyP(pKq&zHf7Acszm*kW`Cs^_i~q_0C;?LV{wb(`$o~@o`bNS( zjsF<}bPez<0^k|L|CI2bdS3fq0U-R-h5nqR|6Bea`X7@3kiYe9z9<0Ae@g$q4FMAV z;T9n9pYIFuf3MmAs40NXf5U$V0Hf{SQULh>l-K@L_W=OE(*H}w{`vh0l?c#?{(q9~ zUj#re!5<Z1x%r!8Pyph8&;JMhe?dY1o@4b(;J*uiUsg5vM*;x;1^-<D;QVX<|GH)X z-u&Noe*u5#zdG<=hZ2Ay|AP=f0Ps}?q~w2)e-HqFfcyQX>Nf*`(e*#w`yYk>G5;sL z0zmZ7H{jn71VA1o{$Aie-hYHZ!+)`#NAO?tA1hP<N&xt$@>AYFDxk>#xxbY<fXDwC z-v3wsYWV-5`Wa_5{}a?t1W4wuEKuYB!Sf$`0RKn%pBDQe05ntOe<XjgpA*Ah=FjqP z!GDbaW=#YL{-0$QRsa+Nqx^p)0J8wz|K+ux;r|*0OnCp7&OeG^&e;AF{eLq5eHUO- zNdU0F%>VHJ+%5SN^M9_ni~l)=f0IAyxyk<|`IEDjfBP$d%lR+!AM8)hN8pDmKt1g; z|4RkH|7-!6|1ti<8S)SOC;T7te{lX6EB<%?H<y2oFaHt&auCp#f4lil1PJGUcm+Vq z|4(koANPN&m!3S?PX1?U_#gO({(*n)|1kwr&i^vYE!VdIivQdFKP3NA0Tup9{%3_D z0>lb{<X=66|6f_*AN~K_{L}eASAh2L4^x2EA^~!)&I-Wlt4$#U<nnLl|Cs;v{@<yu zO8%$({~7_10?I1@hWme90a&A70n|qTO#&GIpYHz8wHX1F`JV{Tx_t{EE5Pd$1j;J_ zg#Y4yrT~cm4gSCIAO7F4y#jdSy#IG&;lKI+n|lBMCY<H}dj-%~_&?@9LSVBkw%BaT zEldG539wbJ0BZMtR`|#JKgs_<{?NbS|FQhfc7y*P_;&%A2+($tKUK*e&-nj4dG5G# zB!KW=5@45|v;XT`z<~eC|LnRe{y+P_)$o6V|7pVi?tAp*UmlPEga5Djul-;7|0V(U zlK<QNKYLMo@0BZn_Uh(;t^gYNKO=zl3NVvD`@{bSwER!<|HBoa2e$mrAqO2y_=kf3 zBLT|)Kg0<@9|0%<4nO<|y6VUZ|L1h`m;6uj|3m)3e=h$S{D0xU8u)L;2q6A{-Tw*s z*UP`&1pCAPCVyJ~-w{CNe@;~boRar{Vg8RA_<u|Ge~|#E8~=~_5C5N09sXAWfc<Bj zbru~JaP|QIeF}gE5dOpemH+7xAj1C?=eackfc}vH?<n|31sDK2|9nRP`v2$q^55eB z;J*j_U;aP%5BZ1x_5UeG0EB;_e=FwyCHnse03?7aAQFHx{LlLDdjkI^fGqj{@^Svp z0Dz;zfAN3tKjELNJmdev{^9>?-2V;#3;)+*{+9$$0Vo12^FKy_t}paY_&@kR@IUdN z58?j1{0slvfPbw3!~XI=l?V_Dpd>(<|IPm&@;?y((EvLCo&T8tP|*N)e5{s#jR4)* z@Bh3D72p6MGk|&lz!3jQ{2%n!{ZHL(0H}`um;;3Wga7wZ_uW?$0MUPd|JeU70Qd^v z))@bq|I`Hk{{gTc^S>JR-zxvV;2-|4D*i_T<o18VKYalpBY=lfkF@1q6+or{T>!xT z*5mm9ssNn-SpPY&|Hs1rP5`Q;el>vgWcmLY0CWj}3c&lf!2h8z{*C@nF8^x&SIPe- zfUM5`&pZSAk5$Y6mjr<RA^&`u00{ph0Q%jZ{r;bCf7=m2733fG|89Qb|Dyti()s86 z0^Jn=w*L?TlK&L|Y5?&+r~bdr|7ZuGOMsVL{}uiD`qN7RkQxbqTK`1=bpJo-pM&f_ zN}$1irGL!-#Q%@&uldgeK=`j#14#Z2{@V-y=>MhOzh9jH6v-d?AL{pv04N<0{O<w) z{HK145cq8!zcc-#{a+&hu|HCv<G;?opRuYDK==Q3{losF08qex!Ull!U)TR<2UyR) z6hJrs3;h3_5kO~uemnc~G!&SR0vH4TJc9f}zY-w71^=GlKi@i<_Yb-MFWG;BCK$p$ zJmfjdpYV_C0Ik&s1^=9l{AY{=!2jnVBY?oa*q=mD9sqt-K=FUO|0nq$u%8GJ=08WX z{o5b_6_6BA_y2PX5GtVYzrbH3fJ^~^|9S;LrT{JWAM&q3z??4sPBQ#s&mHrBF8zOy zpKt526=3~;+xvgA1)Mj3l?v!r0F~iCgntVD<NwzRu;`!sKPv#u|8MXg{;vp7cmA>c ztCawBl0QZMo&PKU<L2*TV1K;@%m`5HB?$fSvCH{K3z+{|sy8dZliTJ00Kf1**%e?L z`1ciHA%9gsng7eW|4T2+nV0{T`49OoZ<PdK`FF*v{jLc4$N%r}AOAn*zk`5m0j!++ zf6D(S|DP#<{9pI~PssnU`8&1((EWce|1AC|`EPswCuc?g#DDtxzp?@>`IG#4&1<;% zb1?tcT#NjF^;&WMG5^8-YQz8OO8$HKPkaCGdTs$U{$GFnBL9E5|3~=WfCb>X{|ETj z|IY|O^S^o%O9{XTfbdTr0l56TdF!$85B$G5m;Y?J<;48YR$FZ?{15zJBY>!Y7XJ6; zzxH-%oPXdy_CFFJ@BfVo!2g&1cf|RR`M=|I{9msC9=re3D?r2l!oT)^&;LxDR?ENB z_Q3ql7yhT*0v7&_0KHKOU@-#d=6~3q=no2@UjBvoum5i+|FbU@{~zz)()^eHqXN(X zUIBVw@;_twfA9a1|I>$1haOrzz(44JDEa?1{I3Ma<v$Jnlm7w#bN|m#asD;`<$o&q zpM?L9JvI^`{{L~1|8ar;gnxSeC;5N#KQ#hq65wR&Bo+WpNdx}~fK$Eye>4Js{~>>> zUjan?|1GEI0-*B$$^Y9{yZ`?zoPSn;l>iC<aHcT+tGxN=ZEt(~+vETHQ1AbO|IbbO zColhn|8f6Y{s;WW`xpKz0)zy(F!`Ty{}BN0|62VDpo0I40{`Iu#TQ>PVFZv@01*Dc z|8EkY-TveKKh6Jd8UO)+2q5`$#TCQ*zrg=1Apa|`yy7bS|0}_Nn=62>wyp~K59UAl zADSxskN;m0pwK_g|A_yQ0Cehx8%hC8=l_HM#s7hS$$v2a83Ba+JqP%Q|CIo){Tc!C zcc?i39*O@%0aW<sV-{0@JMXyTPW^wJ|9bz|T~*2cGyy;a2>4I>r%3?wKXmGzi~#O! z`5*aT1yB{|za#()0CoQl^dJ7O0YHO)6u<+H022P;DCZvqAo+*>Kl|Cwf37b7Y!RR@ zjQoFNKb8M^sMo{z{|`9@F#rEB;P00OfJbe@|MC9^1pxg6|9ndVl=<%jz!?DM|Chev z<)79#{3`*hz<<yGcmAIs0ltPBDEuGz|7&6Y#{bXY{UZVBXN&(w5+MBFrT}9jfVls9 z|9r>uKLr1&Z%O}3fTjTW5&nt)hyEP`d=KXz+n=^x$oGXV0L1^+Jpt6{zXkvXfqq2( z2j@Qrztl^P0ICZ8i~sfgnE?p@q<@V6v<MLVANSt_3Gh>pzuEt4fZ_7br~ues0bu?| z?)O3Zrz-t}2nhTm0J;Q-``?(q@xKxv*f06_F7qD=5chwy0bK6CB4AV!|9GJSh6qrc z{~7^|YXI#3X8!B`M*?tG{i*%P{8bJBDE{CNCI2V(Q`w*3zw~b@0{q4H7yI)x(7zAm z|3?Fi>3~N6{Ir7ki~phjRu%r?5AeGh;Qx;b(Ep#|6?OR!PsRNFWvUGVG7dljv=0CG z@Xw$Er2hy3`M>%9XaV6rr{VvZ-T#IEBLTwyv*`az{$u8Ukv}TH2h4xSKk#q(pV*Ht z|1|=n5WxJm$0I<%fARmElM4Pr{<-|e*w0+4Z2q>l0H^|D`|JFV?*HlhpB3QwNd6-P zG6I-yz9j$a{(qAH=6`w<0kYci?}P|Y%zyZQA@2WA{vYhGDM0f7F8_xA6aHT$&cEir zZviF+MC`}YsucjjKh<slK>nU!{}L_vll|Yy|JVD!i~z;_cmEgiUpmfzoy!>h!TC=L zNC}YrU(V$W|9g`BS<d{=3grLcfAT-e_sc(5aP7A>{{M=j<=>D$;h$^)hyU9ZpsWC| zx(X`5=0O#(DsA$o!~g2o|4acm&Hu3eOJ@ZD6%gmY_#X*iH~+sa|E^KaKc^C)@&B5Q z{38M2|0V(8e=q-8r}97RtfLA@t(W`{&ObHA|K0!Z;hznM5x|C&Dqthwzvur436T8% zCK&<X|J#`V<0F730a^qI_}^0auN08s|E;&ID?l9q4E(=sz5i?5t(gLt|4{+}|J(8{ z3E(S$v-}JESN<oPzqS86djHo>RwO`$|A+fOyZ<lzw-JE%|4f@80S5l}7EmO>o<@MO z0^k-f5<vJT|5N;55`gdzLcs9<f9d~&|MGt>|Jk?af6D*gpO=5R`FjBQ|B?U)5&=3` z__qW9W&R&r{C`-#|A!Gk%>VBHI|3La0NI}-kD^nAe@Ol#0Qv|Z@Q(x-F8@IRB>Z!H zg?|SBpZrfrfFgfR{C_6^Tme-1e|-O81z7kG|DQ@#@~2K;0pR9u&;PjpYbX3K|5JSh zAn6|@Kt=#<1wiYcPx=3j0O0>f0O3C!_%Ht-5uo{Rov#GY{0IK23-JHl0>=J_|0&NF z{!sxS0UG}g=0Dy)1^>TW{(m>dKmI@8OJn|Xb_r1azZZZe{L^3ldpYng|5Ic4|Cj%7 z{vY_K*#5m5{`U^h-2c;80P+d|$p4x|e_H-0BY+QlKnYM0pbsDcu8aQ<{a@c2_^%$q z|8@Uo=YQ;f{QsN%;l%l;Zpi{b%m1JNB>&F;x0M8d{uKb^|26+VV*dYj=wA(xYWz<I zh)+uaDFN;@|0Dbx0iwzMv`X@)(m!SY$NVq;7yc6gg8%Q~<zLzVy|;}3KIH_!m;X}t zPYnN{0bBu&{r>>uKQ;nj3!q1U!v9$RmHmPL3IBLn{RW`C0@(Zia|_Tzqx^r}|HBNR zBmm)`NC5CZ62SaVE4jb;AK$-80PKI^pNjk61^`dU|K<NbS@hqX|AGG%03?4rodGxo z(Eb0a<WK4R=lBKzps#oLANGHS`bO}d2L=GokpFp(s`I($2KaXd@I3Z^bqRs40f_(9 z3IN1EqW|xvz9ak7MgQMR$^N}w0RJ5T1pG()zu5mja0JjRGXVMD34lKh{^5Tmz)QIQ za(@nf<$jL*{3P&?3IO~mus{6IZ{z<w1pXrc1__V}0P%n5KN28k!~d6?0x13m{=4=6 zOI-i@lnD5BqW={DiU`2_w<Q1H{Mzt;c7I0^pmFdo3E&K%?0-an_W$pD3IBTkeEk_p z_WwiiKSJPN830f@3jH<z^X*fBy8Wj{0HQzepQC|4=-(y)e<}8FQs6HU03bgPJpM)W zAEW;`{~pcv=fSE|_*VkhV>%$Y9~FQ-!Nwo{z<>FFsu?KrKZW}6zY?H{0(HUgH?Nq9 z|J2O?8TI^Iy8=)vz%2zd^Naw$&&mG?{{Vjpff4+d|6e13@V~Qw?)=YM_kYeth5suB z)XCrE|7>HI|C<8J3b5oqr|>^o0Vvylu1R43kOC?dkXHcA<;_1#0_I8g<=>D$TA=&? zn*Wf$$)EoIulczP2o=zle-r+J{FDEw<j;`*VFIvV^8eZVh5r{O{J+qI<UcZCkwq4Q z|6ThXmVdqcC;9)r0?@AjTGa4AvjEN|0{@G{|2$*_z#sq>K%4xrd01+x7XGOz0RDg8 z|5YOZ!ar>hxTXLT?*CsF_^0yzU-_SE`@bu!u)>NfCIV#mU;eK%_y4TOAb<!^%l{Al z|0?VP^!I=D{a@jKwI%`N|AhZl0d^!n<^M-7|C%y&>J$b5IR8q3SHu5?fAs%r1W?Hz z$UpqA|IZX)O<VJy{D0+tF#p%`{vSsGf&a1mk1N3Tdh6u=|M>ro0I0_Q<14^O09*LS z|F8T{%zxpZ>JcEO0CfeZ{BNNGM)!Y)|4076`Ja*iz<<C09~H2*{{Pm5f2te*m;cY{ zE5OG5f6afee~<u#|LGlj_=o(@PCJtPX9Td*$o~ia$N1mNKS}?<|GUw^zbE|P{Quqa z@~>%_{~`Z9+WWtZ015w?|MCA_{>}ccBY<4~!|C!bClUbXe=ojq{`cNz-@W%W{NFDB z-)}$i|9$^=|1$qs0nX+B2L%2P;)MSXI(Ur#830uH=g>o00XUTE;UB~Q&HM-ci~o;2 zoEd=ke`f!e{EzT&M*$!KY{{SY<{$dF^zo4Z3<0wF%jG{*;QvI;e_9Dp`Jcc){C`ry zKPmv0e~0|fVE#t}y!p+i(dGXW{=xij{(r6jO8#H?5C5NaCh*@n`TxQHKYM_GUIDEC zpZ(v0f0IA7<@<l%QOm#YPy!hKf&b4t?*dgo`TyX5@xS^1f`9%0z&`_ki)hRDe_ecW z^}zp30RsP*^zcvH|4sfs_kUhK^8YWV2>(F-z5?tDPG<l(|G59;|AGIU;Qy5w0jL44 zwyhcg82*1h`JeY20J@d|0QY}#^N$LE@DKR!1i%46=l|>A|LboUx;B3~tsAoZYXk`L zPlNuI{OKcrn{od0{;yjY0B{A+tw;cq|2EElsx1Ii_{aQD;J@+z$HM=b{~i9_0)YMt z{v!ZBt^lAo?jrx672v%8x8Z;IKlvZt0tWv>{?xrG^8aJ@zx*%#e+v7b1d!iEfSdtP zN`Rn$lK^c1ApRTwaSGti=d7jy691R}`wBqfKRp2Sko>Rn&oR^^k6`{ktoi@QnE(H1 zMgS^+$7BCD34j8q7XXase;5HY^ZzRa|C~Di)KgF4|3BrK{D16!4z2)_{Hd>{qXCNl zTmA?BcLksnfcUQhfdBcb0$K`a6#ohTOa4^gzsUcaN&jaEFc$vT|Cj$W0Kodk|EGa} zzr8g7oBxjnDENo}DS&^hUPJ-#G5cfsf4Bfh^MAzuWA6V;iU1^l_z(Jr{uKaK@&6+L zkN~OxML;4zlK)Sc0T}+bTK*@_KlI-OfEvIFKz%X(e}Mu3`%{|!g90%7gY&QX-wP1{ z^7H)_@c$daKbZrl0IW&?5dosH|3~p3xu5D0Ajx0&_jjn||NYYd|9=?3KO=zn|0IAK z`PWaw|A>GIBLJ!2AwY`&LH++0@=x@qS^oq4OZ_T<=}O{92Kdt|(60(e_D2m+1?PkR z5dc0?h5vsS{pEjt{`V#S2mX!vAOtGslfTU0M-CVViV*N&0{PE0{R*&`|I8Bp_lyMa zB>z91`CrceEHlq0`BS8Txcnz)@;}Z0Z?T{D{;%1s>CFEj|L;TKe{lX00&~*xKRpWn zC;=P+B>z+JKRPA<<o|O8P~H49Z*Bq26u>RuG|vCL-uz>EE~xqMxuBQ-(}sU+F8^Ps zNdO+g|3m)Y5x^pG{ufmREDZA_0V@BW%RiI<FY~|c|5o^aG15QT0+#$W|EmlBmt1lw zx=DcY|IPpC|5x&Va?k%%1c(&Svb6<Z5GeltaR0x~KiJ>>f6f2&3g&+p1XKhlmw&Eg z3WyT^G5@Qx0u1^43IOi^smuS{`@drTBLV2u68>L}YVcoIfUZ7u7y(Q*|1&j3{^!++ z0HFbdf6g`9{Xba&SVQMO5g@RiS}PJj_+M+ywb#rQplh$Ww(vjE{5SmLML_Gy|Lf9q z`Hv$2F8?9?LnrzF+SlgtAI}XowB`SH1yJ+<z5Ku0{7>Eg)AK(C|1JN|^6zHJ|0MRm zMUnp&TWncP0BFlv0l@ih{15yi0JiD9?KYbKpnu)}ImZ9&{{sJx0JQ(N5B$UbI}rUL z|HB2K^1sf%UHSi=q5o0-pA~?51=w!G6`%?KBLq^@rtLm$k4S)F1;G1%;{S*L_5a`C zD}bB%-y=Yn|Be8FfBC;8K!tzyQ3Ztm4gWO%-w4nFt^oJ_-}dq^5<sAT@xLR0L&p67 zLl4gKZ|?tz|IZ5W0RKvW2LHVO7x?%6Uo_^wjRZL6s4V~1D*%9hB0%sz3LsSyfct+= zko~>?#~$wg;Rc`v|MEXo;h&Qj0h~O(|4aIZ_|GY)>ik!S{NLQ({~Pl^{D1me$p4&i z`st^;0>J%01N<lduLQvT=R@*8;s0U(SO1?1|5pUaEnxhA3;0I>WcgSBpE@t*f5QK; z|2Y4<0x-J&r}F<T{{#HX|H3~#9sfiB^1l**x-=tz%Pt#5fH42N|389%_@9ad;PRg| z0>CSPkO0=i{7;hrWdAk)vjBVz><|3cX$VN?9~BV#cL6~2zs~F6|1JUI|9|KPtKI+x z`B$6&w>)oF0(k$=$p62!!9TGd-2dYLM1XGn@JD<Fz}N@?{2%!Lqly3Djsg(=<^SY= z?kN1f)BHb2swsfR|HOXW0Om0ELks`3br1f(;h*CFd+xoj@ZU53f9SvQzxXfzn*q8% z;eQ7Jz`w@>-v9I9gPytmza#+WzuhMQ838o+-{oJb_J0WgQG)+Nx&QN_%Kto!`_IP_ zK=HrcKj`11KhVD)>ajTgkALY)v<jfi{~7=Y|B!#aPn7?!{r|+1PecYp0H6UZjeq%n z@c+aAkbesRCI8<gz}JiZIYa;aJTs6#zJEGH00#k7;6DNY2|zs`_{aQD{=e3L4gREn zenbG+Z=(S~fB7H(zexZCKxzR80MI{&<@x<F1rYZC!HcP;0Konq#{bU@K>xqr{`1mH zKf?JJ|6lqs1^c%egMS_y{TKf$0TcjyDg{*U|Edk(J^}#xasPidxc?3Q5dqSF!+*&i z6%YZy6af5Bb@u<2O5oRle?<VL0HAV|`499D577Wnf1d-4oBx1+M}L3Ya~lGb0D$>< z!1eDk0RFee@Sprox&MFa{NMBctN|+ks^os2x&UAT0RPwLFGEED#QIkV=>5z6KJlXr zXoczT$3qQ(^`G!h?0@-xV!`~4{QrLlfVlmd|0CLu9H_rX2ef|x_xI#~9#8>&5nv`> z0X&QVyakAxe`XH(BLPNT=KstI|G4}+w*M>kSL6JT-v6ur-+I<|{}1?I;U7~#+WtKS z#1tU#?+76L?-W4zryKeA2jG7$;lD|Mi~#cHU#0*F0yX|GArSJ%{jczU!9Ui2ng133 z$tnC-L;e)x&(3eo1sC%DUrK<52ma?_;aUOE{I`q$$NYbiKcf+V;h)7Q&RqV<gXVuy zKuQ4le@XK{o=XD%jsR#z0F#$O0@M{iwfwsj{=dne0shVZR3`;gTL6{(Df1uxw;})0 z{htN@ssR0e@BgXJ<^L-J|K0x={u}=*0UQBD1+@H+SAYiooBwa@$7TdD#hZUt=gfo7 ze@OtG|7zjC_&+y)_WS=|-I713fRKNU0Gj`g1ZX|M|4;s3@(=vC{6GG`4g5y}^!tCv z|ED*I3fK_;Kl%SA0V@BK2vC{-n`{*RC;s2^|C?q6Q2fuiIp%*PK==Q*Kn3uH{GosD z|AhRvqIv)C*3JJ{0cieL>;EeOvI5ZW|LhT<mjBsq`!fH#|BnRN5%@<4l>c8N0P{cX z3ZUHo<Nj~#|Kk7MsND_!#Q)!Y_dU1-blO<{2l8hGpaf|Ce?|c0|G|I5|8)guj{t%H zRz-mJ*@s&|1ONN%1OF5Lq4q}t>{sC*;D3K4zyZnsSNNy$KPrHO68_;d{6hpt^PfKS z5a0iGScQKMJ@jz8@;?ZH5&sANW&aWXD*@W&|Ehpv%Kz^p02BcBKk$DX_J4~2HTbUq zfbdTWDES{o0ImSjWBH#`aQ;uO6#(GBx=DaI|Cs-F<Nwp!<)0-1Pyv|#Rpx)#|2<Rk zKl|)6b4CKd|7YX>5BL9^)8GFU_<tMbe|!0FNq}<$|G59f|Cs+h|8pJ#fD10b{6C-X zg$e)U{vQPZ$)8dFXOIBl{~`QC1gOJ*z5jP0|J?uC-~Tm10`&0D73KcJ|8@DN@IS`? zsDP`A{5?ncf1LmKC;uPw9~Hpzuk?Sd);~2S0j{eG{wo0(1916|=->Q*X8@*uZv0UA zza&8T|0a?@x&O2BKjHsdZ^irf8}i5f&j{cnx77teA0_&e{14~tx0m_v8UJ4aaECQL z|7QxI1gQMaCq8l4=;dGT|5lH|Km4x*u%ZBn073qCg@1JZ?>7Pz^oRTt|Bv%u1Atlq zMgkxL9(a&f09f*WH~(ROD*pdxN&k%UKMnwp0KWfM70~#<B)~xb4gr9FzK>x3=Nkb~ z65!Ft9?vU)qXOiA+22a=f20DM|E~zZ`F8{W{0IG?q+<R*^|bKc@W17Mo*wc)U!C6n zZxNuu{+Ilt0T2L4fL6Ny^8d5XKmXj2|H<V)H3CotumS-88vv63odHmgKS$aBNB~Ou zuR;LuNo559@c$nC&!>v~PclGE0A6^JL-yzUgWCSB1%R3YB>dm=KQAEyApb;wLjO?! zY5-M0_#fv#=szTY6ad11RRlnc|MLH_|Jw+l!9OB^!ur?zZw35U0sf$WmjDg@5dpta z2q*!v{|o&$_Sg8={_h3%Q}BNRK)U~(|Hl=;?|#?vKOny|fCm0Z0PX(?-haVAz#snq zSKa^6KLTJ(1Rw#3{`jqu`@I9GoBx>p0snvN?!WNg>Ms!ir2zi@FA{$poDKN>yO4j5 z5WmzP@Xrwi&<=z^Rr`hffqo_d|KG~RUY-Bg`$hgk9Ekr^6M?7zfZr)VuzyCvKh60c z@;_vLlK)2w#Q*06{_9i))D=Lb0^oma|0Mqr0yP4N|6j=;&$j>D{C|Q#YJouokpDOH zgBnl;!2Fp1vt$1M!w3NWx0?UoBtYOF{-3+@Km5^$2LDk3kpN!)IpGSRT>jI{|M~Fz z`{n=U|FZ?$M*#A_gMj$|5dug6;D4co2>(F-P67JmpTqq><^M0-uzy$q9_4@7|E=X; z^FJ~FM=Jo40D*t79|_<Y_|N-)asCPaRP!wP+eiRyf4bfO;|f5n0CNS<vOWLb%zq?+ zD*(y=GXlshpuoSq68^uoe<Z*w<Ns#_5D9<~(EN`CX!)P!|0n;i^S|n<q<}I40Q*;6 zeKp~K_0`G$4F13SztyiAzyGJ_e<c6m@_#S?R08xB;0ph6u2~Ym@PGB#2msrk^ndaH zy3PFO<{vxe|9TDnGXjAB+Xw*iA9};&e>U1+BlG|9{}Tb)r1Ag8oAy@#X9ZwWO8Bq$ z|8BmS@K0w7u;rF5|DVhM<Nu=q;Qy^E|DXI%`Tt=5HsSx*ZIhRO)hocf{GZnUr@I8$ zff0aH0ISG95}^D4JDUQM{}}=7vh!|n{&WA25un|64g4zr#w5TrF8|5>Kd1o6KkyI# zk4pga|4sq=2!Ivf|HIn5$Nyi?_y41EDxm{fj-7@a3zIa~2_@!`NiwAza+WfZQ;eaA zLXlJEl+589TM>#Oa>$rdF=oGQneEGd`~J3>@9%oO-S3ab^ZEYd_r3gfxW6B-$LsaU zzTdyEx7+=8zdsK134nxumJxu%q5nr_^7nB4f8hTJ;orjc_Z$KLQ%V5Hf0h5A{y*d| z{8NwB{6_-F|3{~eIr`{?|Bt2zkO)x1KaZ>TziR(K5+M11Ismo+O#eLT*e5=j+v*6= zQ|JLe{<8m*-Txm6@bviq+=hQVGyF6CfAc?f0ek|W;Qv`v%>NDiPa{AHz*+J?WB(8S zKky&^m;6tJ{QL3W=RFVp?=xBeIRA+Nr3KLMf9d?sgZb|{`Q(}aUhV&Xi4_&l`5*Wn z|KH>K&yoMv|L2td?_K`?t6u2{a3lcU|J?sy=6^5$H~o_*0GI*j`QOuCV*}u{&i~i| zcx}=@uX6<Wbl|`E|MWAa`49gm|MLd;za9WU1qlCdO#bK0v;b!QNA^$t|ILK|SNZ>F zfUtiQKwJMK|I_||=6_@U5C0$UAO3$Q=a1f*GbDftKmp*NZ~ylDzwgcf0206=|HDV~ zAM3wQ6aXUNymQYp{BH{Y^FQwYc_x1n05bfO6Z3z-|A)E@P~o4je_eS0R`I|0N6r6? z{J#od^8cR@{Xqq!B!5n-!vF36BLO_!0torz|3m$ssPIoU0QCO{|9@)ae=auv<45N| z@Gt$-0;u{d9e|Pl(f;oqz~@Q;IQZKd!0>;vKazjwANcP|3&8w83c&DB?f<+C5di;3 z0(^NE4FJmIe|!IU{_}jziU9cf<pcjOkNq$IrvV`S`$rZ3^HuOK{*N;JKlne?p9||B z{^z8`|6%;c`fvaLitix+S_53^6o4P`pBnDJ+keLXpM-y~{zo<W>;H2C|37U1Kk)B` z0GQUlKmK}+|9_4Dp9X*upaMYRzaPE-;s4|O+XVpnO9foDq<?;*`yUbT6O_PG(!cy) z@Lw%}`2Rm09e@%65PxQXMgNqUpJD%31PJ2)*^~hAzsx^1z&}+42=G@3nECPIOYW~* z^MC081pdYULI2@?{?W$2U*Uhg@+06c{}=Sb|EU@Nk^iFs!u_)UXaGb2!2Wgtyk!1T z0OkLCH~#Zg;h*|074Tot08>G<y?>4J`N4bTK%L43sSfyGulZ}!@Gl9_`Tvps*=)l9 zW(t8Vq5{bL3<<ywPi+4<|M>r^0EIxC|8D-__Zt2)|7+k!|9>3z|Kv#i#sAR)N&s5` z+}CsYCr9%?{{JfczokJSS^zNrJX>!a2{5LB5dt@e`CrTbNBC#X|APIJf0_S1{F}`` z`2S#kx&R^nr3--hpB6yb{?!H8UI`G}e?)-V{C5x_yZ;#h;PJ0j1Sqk8S^zQsZ3J*| z{wMs${2wF0NPwHc{4D?J{Xb&_xViuf|7Z9&5+Lt?_5T0xKk5Hl@09$1k^hqa-)ZMv zG6KBwvj2bAU6cTZe@6bt@J|*2W%747=pX;T&How!xJ`zCl>qX;<lpcw|5F(OzCCq^ zJOSnkAo#z-KO_8q#|r=CHvgZa`LF-az2_b!0nGp8?0MIaf9|`k=6~l3AcTPVAK@S8 zf64!#0y+X@3t%Mw?-~EUmj3|%IW+>X549oxGg|=b`Ct71oWcKue<uF}|H=Pj|C9fL z{|~77UsnKy{BtV-$p6#`aNz%b^8fu8{x9-R_~+n*A0Yof0QdipB!3QhU?f2E{{tUH z2xumMG6GBsKnY-F3SjvE4~73Be^o&EAM$@#<$qZIWB9-Qf8pQ#|A&qI578f!KZyVx z&W}e5|44vGr3WDVAI=Cs%>N^z0+ay7|BL`Y|CRr*6+n+Uk_ga|o&SgYDei6o#QaAA znE&_I`S);j3t)zS;{PiF;Qz}1mjpls*a9#DB>UGX{*V8!1bAxlKiL2E{#W?_>A=6{ ze@*`i|MI`pPXH|M|0)4aIR1E#K_L0Rmj96arwf4dpVRQK`49hdrJhFvAP4^+_&@2S zTK*&aQ>1^$|7ZXI3-biP3snFws{B9vZy^Cp{&P0A0LK2$kiYOh`2S_K{PPdu|C|4Z z{;5~Kvd@bDN&j^I=hRb>0BiwD3*gi!fPVZdBfx=w`5*t^34qG~C;^xPZV90O?~(jd z+5eL+KsJ9S`_s#R&N{R5Ke+#f|KCLT2lIdU|7R2aG5^E(@7Zrj13>zx1AzZOMgZQv z%Ky^?ct?eQ5C9zkIw!AxE#d#+{geOyBkAAMHS#}p0N#iB|K9Td5dg*ihJPp;0OySs zK;T~qp!rYw$2;ZVui<~I{C|@_oGQql{J$*#$e$Yi|M?W~uL6hwDF1(h1d#v#WWay; z|H6s@#s8-RkRtr^3EcnO7vcYp`XtW30)Vk!%>VZPKh^gCr%3+*|Ca8*=6~G(&i^9< zKHCxi^2hzBa)JGSmgWC80Qkq}aQ;gG2>-+UAN-H^-%S8jz?aej;7)z{%a#B4{t6i& zt_Xlk0FV3+65y*}W$lmg9|S-&06O67mh-=|fB63!e_sCo;D1!W;QyHa-2y21*ZSw< zT_PaapTd6!0OWs4+uuJb{=e`q{}=fO{wM#p0)YKDc>%2GANJ=5)Xxv$zwrM@DgFQa zDF7(2pO0S@0-zcI#((60s=q@1)Bhj*&o>47uUh~}fLUmO2LF8P{!?D7{htm0d;$LT ziR-@+|EmWu(mzT8$-n&nx?%qb|0;o+0S5n(0F>5$L_qPszW>7hDgn7a*TVl!{s#Zo z8bB2=D(?RZ|A!RtKgs@U{HF^r@;`DvWeY&;=WEki^M5IU|E>R@YZCnb4;g@J*reuv z3EofOFBQN){m~Nv$^mWv{KwAxTvP0?-|hJ~|MLWJy#l-$Dj?yXB>%U-_7D8?V<iE$ z0RF@O*9!KB|F7Nr-z@-b|6Tz)%>M|1hJRu|V*fnF|Be0E6Z_@=F#lG01x)gvC$>K- zAmM*o0Av48<^Q)1`PbuLxs&{_EkHNY|1Sw({=fbI8wvl|{uGzT7QhPri~Oqv5dJ3x zbmPkZ2>;~&YXo5I|0({z3HyIy{wM!a5uk#9B0wg85CBR3@MA|tfF=K5zxj?M{1fLN z_@@V;1jq=$Eo%i(x&R&i;R%58{;v{%Cjf4}JpPOGAOAlQAX@;0|A+Z+3xMhf&_@2p z{O|X_*8cx(*2{mK|Fs3M`;r0z{^#<a5&kLvzsR5a4uStH|6%gi6i~GQ?#vdT4FBGF z`2Xw2zxLRJ7J&I5^8d5|$p7E14pYEc{=;3%KQjW*^S_4wL;iI`{(F)9k^dtBI{dSD zj{xtz&))I>Z2<)Sxqr)Z?>e>rXTALAKJq{CPjLhPbOH7w|FbVIf3^8f{%7*P5+LS3 z`JV$J|M>qE{-Fhs{LkY5D*+Ay{_lVA!8re#|G@tP4FA{yPy!$V_)PP^;U5W*<^MbZ z+*^PK|HuD-=tGG9)FA<c1lVByv;8L#podo({;A{s&$;~H7J%WO@V^oO_|Nd~@c$1# zg5h5p07w9n|8>Iu_5N?V07o9l{!fYsP_F=b>|;p*P4gfB-xfgm|MGtwCVxi+=m}52 z|EC_$@*fKGU;aO~Pn>`F|4C2gWB{NfKso<?kMO_z@B3d}i~!63C;;mj2!QziLj}nH z_5PRWANYs;P5#tT0#wQWz<=(%|BLxw$NAqAP5w|}|L{K&fCKhV^IsL<6JTh7v;e~Y z;=dpG-vj(B0j%VIxL<1i$Lx>fPp#hn!ufw${Qs9D0D}KZ{(ta)4gZetKm5;$0C+Vc z0KNZT_-6soX`I(&1rYR)3V2<f0FeA60ahcx`2SS80G<4&0WjYGjsI^1NciV-mIwN; zlL(Llz~%pg|Hc1+KPrIukMJ-58v#oA=WVO^f8UM-u-E`}&N=VU`bPmU{EPEX{Qr*< z{^3r&`(4fd*#8Cp?|JXLD*_bwR{)IgKN7$K{@<Sz(Bl7_{|EeA0<2m9gZ<_IGXD_( zN&s5`A9nti6A6(0Kjwd|iU56#7C@INpt<}r{=Y4NVg8f<x!{5eF1!#GApFk*`YQo0 z;=^sF3lRE808q{UpB@tc3;|rsD_~t^|F;651#rpA{D=MPpa4=Zf55-OKiU8Jd8^=m zEde$pfS~^r=6{#`Ux(~Z&R5g`{R9}Rf4(aGR{$sy0Pybu{zZR2djIkNSNyN@FaKMF ze}?_<2tZE&f9o&ce<eT(fVlth|Iq;7<<F}t@ZbD@#TDUyzJ7)I|9uPp|H?W4`<Etv zI{h>0zu;d1kPbj80NVgzf5E?60DlGe7yr)|z>59#|26)X5#V6IT>#-f^dA9G=^x;K zDuCd>JpjOep27b=%?hA}{=@%B05pKPf8#%C0A&0Z{EzuR1%MrZpHY+j&HpU?-{ya_ zKja_lUjbkrfCd2gFY`|cfbH+UHx&TQ|FZ?~FaJ_a0KU-x!GFH_mHHQ;--7$=57U38 z0e&I>BLYTg{r>{?U+_O0e^%Cip}!12L_n#4O_=`w_|FOaoBUr@>_4b4;cNBB@b|x1 zkp>2Vt}*xj@Y{dZ{vU1s5do6?b5sG%|C`75rwgz}@;?LqqXO3E|Fx(#{~`Z*>hZ6< z0+t9+bpf>fT>&Kg%m3VK34rH6Cx7Grw*+tyU=9ELUhV&h3ZMnR5J3C?+5gWhFexDS zf9CY?FC)Off8DkGbIJb%{+<6F`G4krHUGD#1z^qL---Yk`>7-UvjXTQM1V{I)$-3B zZhGTd{&`b2e^&nIrtSP!_&@yLDnR((vHky>$N#qlP^aO4nF2-vnEbir&E<dRe+mEJ z!u>x!{<Y+PSOJ=2_-CiF|1<d?BtXyq?%MOe=6`luP5$y5{=W@ffS&(t|NnM_{|*1+ z{NMIAfq$%jRlsZk5c}tJ^5+i8|LFe<|K6M?fBAppe-i#j0(Aao?*G|?0{-``7C`*} zyLm(YNPw~b|87kFy7~Ve4F4|v|J@D$)CjQfpYYFKdqo8p{--hmko-^JU-zHzPx3#i z0Qf)mz3=^7_wE)z@BbXh|L}jve_u-#us;$Y=0EVCqxqk600E%*|1||r5}=m<RQ{*K z|M#y5Q09My|AXoYfQA1h|7rn{|M#@{UlAZi09NoX|FitZ8~CRMp!u%^cvz1BBLV9D zFU^1Wzx;nBK=Z%v|7QQsVOarmSd#yBKhg^SAO5Jra~J^z`#G>b=6|Pvfd4T9Q1D;x ze?6x1|3@B07r^pv|NpTY_<!dAACLY2_+z*q|9B40zX$&J@vpk!f9?Nc%lwD`5duhn zr?>*hG2j{gd0O88r2zo^(*Q926A1wPxBox*U;n?^zal^j{}1yY=l}S@|1SUJ@vrv( ze_!}l1w7Y-`A-8t_+Od-B>+Hw;Xfn5@&6hA?fk#*|E~FeEdM!K{tx`0oc*6KJ-PW` z_#ga_1c(Y4`+w2`F#ePMpGW{i0RBH$>Qxy3uY9F9^(wI6Z*K8l_@Dew{73Sa|4(~$ zE&qA#Yh(U%YySHo|6^(XTf)Ebe+&4p!u+o~^Gx$UXPxB}0KmT${$Kh3Z;tt&DPSc4 z><{_#8T?-o!1TZT|BkoU{+|K=^1tve{+j`E_&5AtcO*dj|L>|N0Nyhy@t^l70aO6i zxwZhH{}uq}y`L7qlK(0G*Z!COJ+=JjgCFt<0R9;MwN~&i_Ve+^{`XTY0N`H<ko?cb zJ_h**{xkkt62R<FMS!4wQ~>BN{ntSNl>dLB-haqH@Q(^m08pO{|0nq~!v8%20R5+C z{^w#NK*oPSf9sOZekT6^XSu`wn*aL$75^y-kO)xF|MS3qol7shbmadpz4VLi{nG`| z{Qpv7K*E1XfC2wl|Ioh@ApEcOANwEj5B-w@!uPKu|MM&OANpVOe|iAl_{N`q6Z#+g zuLe*61pamZ>wGK5KUcoB|Gz!$|3UuF{&K1Va7B~9{yzo(U%7bySAM_j|D=CR{-+J# z=AX;~!~TDn0buS`!TdnKci7*{_>b2x|J(bw12EkGVg4%yX8fN7kP)E5|0sZje}1I` zDF1)-00e(@0PcV4r}F=*M1IN+fMdUd{mK3S|MiIqi1n}ipALZ3AMWQ`@c-v2v41K2 z|AK!tfc4L+0CYfWfSCWu|Ev>0Gy^LA|Ns0i(4PYK{Z#!cp&wO%XA}}Z==WZ#&_BH2 z{NM2Zi*x~$07C^p`Y3=Q0{YwJe<Z+voc}k${`t?f{~wRP%>O2TzRLFJ|E#cof&U`^ zYYP0U@J~wsfgcG_*pCDd{yF?8|3BgX<o|j6H{_obQ00HFrRN|2-yhokV+vr203iV; z{{#P}0&4%yD)~bMNb`TT0Jf~;5BFB9{XYr+Umx;U0^DGPe=-74@UQuQ1NeWyzdtbl zkpMRg{FC{)QS*Q0f4H|B`G3g2&i3a2P5y6B{(t)n|8AH3&-U=Y5g_>g#;yP*{Nvhx zhJQ)_u=fAg9sCXa5C6Yg049HOcFg;~G5>FNvmJLt0?heeY=1_8(*oco{O`GiU4Y{M zNPyb^-~K=Qe`o~s=6_Q_I{!I4Q9EY@cpd)VCH_C;znmHYm?OXi{|^7=A>fe$3jE*p zwj}?#ID`Ca_}3Od^M6zT<e!r%VB!BxN&v{;{r@iioclkC{e=G`0q#;OK#c%(_^0N7 z_l*A!{tN#V0b&FI^I!iT@(=&#?cd~oW&}w1*Z-%={|Ei|W(0Wez3)Zxr*8BA_u6Nl z4Vyoa0Fr;;e|ZAH;a}%}_f7uixA(md<S+iG_Op5fIQ&2M{{;T41;Bk@MgVeZ|Bq7u z_rD+HKj5D!fZ_iiWDB7D|3hp67y-)uPwqnq|3C175B!~)|4kQQy#Gb~XYT*0{hx9E zZ2@#Wj0OPVf6k#5{;v_>hySkdf9PuYrxIW+|B3$}{y&^2z)b#l7XByyg97l=`#%u^ zZ2tT`4g&yV3LxR1;{W0QA9WP|fAat70uTYx{r67t-~12e|Klj(-!u4M3DDvH(E@nV zlQ9454F5k3fad?F7y(iOg#RV~Y60Z^-;w~y|B(Oh6`+QHj+^}dtmBX8SSEkCo_&16 z|E>Un{A2&m{Ey3ja-jeA|1<xa$=`ne>v_rltoYyTPn>_f|AqgJ0LlOH|6eTsTeJXP zg6;2t{Of+1;s2Mu%<zvZfRg`z`FsN46^sBB{BsZfcLd;7z<>BZ5+L|r{68f?@Bat> z?Es_&5dJ6qqyPU}@jv{}T~+y?qW?3<{?GTnQ~((PexugE)lUG!{uCp?Z+esAA3txV zyv{zmPt5<bga6I{mHxK@Kmq@xe=z?!9RY&;O9H&}oyGr10NLLbz`NeX{VuAbKjr^> zzsK$Wo`Qe*ANUXbga7Y~|L-;V|2&O<KP <G;ece;%BF&3{V&KLz&N1ql70um7JG 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 k_}{Nb z>wZ1N|IPyR#{ww)Zwven?BgW(xA70*KVJcK7~G%azvB>H3;)Ug;eV?Dh7RgHbT9(@ zsQ|c;Kly*O1pxj>4mSb+Bfjw(`Hiap#;678IeHZEFaG~d<DXtw04e|%``d;5aRDU% z3jbaHj}e%FWB~~O`w{+2llo1Z)E`YklLt(e1sFJK3U|<?sRJiL{#F4@nKszP{^I}X z2LH<chfSN|?y#v?0P_D?Xv8$Zzr@4wKNSGs{|t@)(J1)e;D5Bi|L9rs$9VV``6IIc z3vC7D;opWpKKUPS{BPm^l8JMd$^y(4|4$<GmxTRR0j$sp$nyUn{MQ5s_@BC9<+KH> zrp=dR1f(@H7J~im3jW>4zq6G5ubZ_vl>cv-v)Dxbzi1;CKrVps&tka%V*mL|HZMR9 z{{8r8%m3hilK-uXmnr{WyllH`0Tx^SzhuP@v=lJ`V)?&v*D|yU?Otg^Ai=-!|H{>S z?I8=WYV|%V0^tAsjQ`hg*I4Yo_Q2Y;2MPa8&H~sq{@(!quRrYIAN~jaH*e4<0IC3F z1deQ`0??%bIJ$MS<^NlbZQFWm+m_?owo2Q#p4h%k68{7L+b#UxF8)V*%mOg}!3Ed^ zh!xOjvjAuI%LvE<9NcyGz-~$W5Bwu40P=tMUlX7UNA_KCmk$As?qdaHq5?P|9X}xQ zKMwpK68tOwKXjFQQY#>50j{0?{@NKt1@Qg#v%tUUy!c;I1#t8_@Xv?99{#Za$29&i zBXCRnf86r_6WrTZPlPN06@VrGr|#McNc=CU0=RqY%)MJ@jQr2uC;7k4J$wJoIpE&} z|DQAdKmYI^BKe2^B@h4iA^(eyA6|NbH2&e59$ymwKOy`_mtFq<6#kb5xbp0oNkgEk z&z~VI02P310Yc=@<Hk#c|5yO0A6~u+iTw|v0&w^C%W$&;asjRaxcw@^3nM`C|2pzc zc$DS;QM^Mdpu75|`2X%}^yVH4#|1bA@Q({{MnEf|cM{2eI4uB;z@PO9_n!kW1kx7B zDuBn~V874*-Q$T{0m%#e?THlu;(zJ@_+J*_??1X0KocOy|L3PJ|Bul7nZdt}f^7L? z-vU@2pa~GP{~|)yWc(i?_!s%hBREIEZ+=z&k12@wl{fG&7r^EB5nw-WZvnz1f79D6 z09T?5i2OGXAU^{Bw;K`pAH*9Y5Mf0CgCE{3e{2X8SOAIueiP|wUvJ}l_lS8z@bCTs zKf3>FA-__6D*_UD=2zfvQs58#n*{&H{5(Ez@Sos=4-$O%zT^LdA3E}v7r+7l|62ZN z`~&=d$m~bhZxw*9E&o*kd>ShWQuwc%)LDSfV<j~?3y?JA0(jW+KUr+;|Hc1tK1u#1 zf&VATN&bEK|7r5LpC<o``&kMf{@d&)!JksX|F-;38UIhIwE5AM1xV!J|MOIdKPT`{ z4g72N^F<nwf1spa+U5uHSN@;Q@qdaqJPiBeq)UlJ{u%7r=12KIvwvJb1_|spDf|!M zpEu#ZvjB?y<7X25EC1(_S^2-`|IAquW+DI2nlP&@0D-@`0JQ+7?1{5yPl5>lQH~sl z%@4`H@qaY@`{du{|5$(=c~a!cog!DB6uCwIDZu{Rc9s82DItGZfV_nNCa|CUU+^#f z4+H*1{^I{IV*dhZ^LYLbEPz~qh5u9lh0^COoZeZ0d~yMv{DJ@cMF4)29=L$a`KbU9 z{BIT@pB@VT^`p&x{4JTSK%jy=N@Xt~7eEW33PA8L{^#bjz~3(9j|C{3yCCFWK6l}= zaslH1@&^B!{e%^%2>-MBvHZVcUXT5i^0E0Tf{g!*R8b31Oz>~~@0R}o_7``LYJ~rV zic63`Er8?yqH+N&e}I2f%cR-Amj5M*{Vn|W$-jetl7Ha8uCBuWdZkL$xA0%^Z*t_% z75NMPL&60B{AvLjn=Jn?-^98AS^z9Svx*fx{8twFv;1i;iTuCD0#r5fuT~ZQZ&9tP z1o_vf8sh(!EPtdLsCDfcZE6GmH5~uD{6FCTS_=Q|D*)qv?*fef+5b5HuiLRny-rOC z|LZ~i<o^NuYySiPYxe(jLy^C!8{?l=jg0&a{>A@Iz7hX7`KDcy9_@gCsVBDsQvR<A zkhcKhf4BeX)3rtKt}VHJx*<0K((T*5bzhOc!9Q2Ye;bnv|4IJa4(y}kUtj*BezE}Y z|6pc6PR9R3`WyTQ`Twv%orj43JH!7&75=;YU;IA;4eK^?Sho?wy9E{i?8gEy`_Tl5 z@L%K~z`ywayPnPhr~+`aAHV$R1N@I4&;33BkMBEC@GniABp1L}0F(R#i12@)ECBpJ zWuU@;<^PiL|DdVn0;WzM%<=~pp#6`Q|CayHwEYiV02W~O@aeOLyUbtwKWD^@Iq-i- zW(4M`1(-Qc7C`*Z3W)rFq47WDzhLZa@&8!ze_8-EXA#N&cxFF>|0T#_zxbd0f9^5_ z|H}ddvA>1?SOCBLnaX3{D%S$22*3gW|MOQ**Z61k3{?PYW?1+?W8qrze^&v_T(lMo zpcRm{0JE6@Df!<pXVJzv%Kw3Xh5vRp&0oCP@&CM~TNM6tm+;u4PXJT_X#BHqId>a^ z{};jk%Xi2HX#cZQ@V^}X-^mJy7GUWL!T)mZDuw^508BOq!Ue$pdsk2a2>zA-uUfqy zty#Sv7qEKG0V)7tKNdjzj|(vJUweoL$^W|bKL6ja{`>U`|G(d`@%v31zu#yV3n2dA zDEQyJ=_q$A0{(3U#8vWdE&vO#1DOTbxy>wq_+Q$+o%~-F0PrvV-+5;5F3Bvw*}YT% zyUy+3jhFzPLkj<;^9O<dJ!S#+T{s-#|NR#=0SYAk-|zWf;lGT)6<ol{gI7+<0*L=l zAG$^ha7K~~IQ#weGYbE&pFPUGasG&dfA}Bx{{da}x+(rw3vlZ)`Tue8zbwFs+wi~7 z|9PCcbDb3s7Z-5y&JS_{&H~)~;mp08@c-%ixPaSd4F1ot|A_(rj{hC}b0Pop<o}N! zTzK@rS%3=x{0HP8@c)nEfAW9e|MF8@z>k*${=aM%K=AMKf3D!4uK=E3(*(%1057h; zl&}DjSpZf*H_QUK`@^eOKX?leepCFf{QuUg2%7^%+<p!JN2&!d-4_4zqhv*Zu>WrO z8(}~EPYa+T!1MpTh&NLBTWbW~0RI#LVE?`FclS;3Kg<vOKM?%?#DnnPjDYwbsS!}@ zFFgwX>mzxAzp4e`hU+^1*A~d}Kk(0o01=XgK=ug${QndeVBZ3`F9L}DpGD{^03KEf z{PTH)$p5(rUq;|X<S#EGB*<Sk^q>)72xLFL43Fl2ihx%H{&)dz0Tlkf!V5$h|3`2I z|8xPbBfJZEjSGnQEh2)8{=>x%1dc%PuTp?3Ul0xakp}<n#svPDzX`oVkI=vLZ2w*Y z@&EhqKXPe5{O^9`;rO4;&+jD{0Q^J#x*vUz$jG0}U+`}hAaN{J03qyW@RRuCkCGtE z{~>?n{|5i!e=`EA0R9x>|Br!x?*+d2IO!K3CqrKn{(tPk|72zXME=qzV1Eh(|6A-2 z|EGv27XbFd{1Ps}<i<a#i2W`3C;U&9=!?`E0<r&*Ab<E@7QmK2%KV+k{1yAhPM5+i z*pCa)*S=)_QU<Oqe_Z$v_NPx9H$&RE8O8r`Go}^%OX=g<W%(12@lPf!Kxp{`^Sk^% zQ-Um+k@A1wU()6$A+w(>*?3s^pDl6rtckN_b5i~f_Di|Q{H2^+lK))Ea-!UN2>x>? z&y`2vznEX}ugmfWIsVTXmLj*{Kc$g>$~;(reByuLKM%8?{O-d1sm%gF`)Ne}jDNTV z)8-}rFJzm4_CGudrO#*lA67Vnk$;A~MNme@KlyM0MKk3u#^y(}AHlzozaAq0zycJ{ zQUH|z{<&E-`zfg_l`@sgR<Jb8pS=(l=7;~u{~`Y}T(IB5e<lAp3t957TRykVek}iI z|5G7PVc?$&{G&>;08D_2RLaZpN2;8!sFpu&|3moiB>pc_1tY-zr$Di)$i_d_3PS!K z{=xq0g-ZzjH3ZTYsAiE8HMq_Ki2RlR*Dh8P)hTW&QIh2ks%!Z_@Lv!9FC`1$;NOjZ z0vAxWLFuv$%8>t;YgndC!!jWkpb9{-f4TCFUHH%Vr+fwAU;JOOeA5aQngai<fGSsP zX8C`!$`zYeuJm<f$N!Z={NKXz|CZINO4Sh-Kx#$)uL=Oc|Fi(rTi34MM#2KrQ2y^k z{xA5~ZI2pA9U5Bl->^={Ms-n##&tV27W{Y8_y_)X7N9|w=JnbCcX9mxweo*U{<Z%> z-CD8y!2(GC4<~OKt<`<4Z;!YT7u?+)HXFB~K>`Gq;1-<VF2UX1HCS+W3ogN3wxyP~ zX`9oe?R(vGuJ!Dlp7VbBk8zJVe)}o?e%-Rty=@a@{IC4K2l;>dX1&w`H0u@N|4uDP z{`&+X|JVM%Z`W3R#s4gSH2(4ZPe055`}c7Emj!_Q%>oenw;O2TKm2bNpuNKXzKnmg z{~6q0H_ZP#QUMIr_`mbe!Eyn^2X`j_H~zQqe@IvMKji--hr|D0LjHls{}ujsA2YHC za{eDPs>hfyw*ML1b8H~szt=b{fZ)IPc&QJXFdp><{?WvVw*S}1zx^goQvQ!7!T(&s z|0#lh!v9Guf2O(yO__!UPqk~~f8ON(NEQJ8R|P=wKXd4`SwpAI95#K{uo<(sY5}YQ zfd9$=u>g?&$Qh8oT!8Wa{86)l@y}=;@c--uW&svb0gRosaIA;_b3*>d1xSn0_&H0) z&y}zM6Xq<PsO1mW#y@kHO|-#(Pyx(eF*#@fR!&(Eu>d6h@V^v>|7)E8XDnQ+36LxR z<DYfL|9l1PE@1tvMeFCF#T(FUUEtqj;s3lPn@kh|J_Oo4f2mx+0^r{_KL-B`mu+2y z;QwWUf0jRsN&c4`{4d|WR08<n{~gPa^S|CZmy!R=2nhaHuG-CmyK?nzT_pbBvue#= zgbP>&`NRKi0Tll4Une7=7GP~K0XoPKXv2E=|Ih}B36S`IgZQ5n(BVxR59`VW9FYas zbaV^+uX~IZU`x;f9N!vL04Fd4!2h>fPx1)>{J(<=VB4u3+fMEL_S6nD0<3_H|Ih4B zg#W+=!2cHhbI+jzyU*<h{>A^a0Ot@bz~S9y0rs3fyypU4fLQ>@U;h;#z6FpAAphTg zSw(=hKnDNt|G_I(1jq%PIdm1B=Bfy|h6_*&0ROuMzy%!r{yYjS0Pv3y5cZp}0Mcc` zfA}94a9kCDS^%~{CvM{cuDee1xPuG${*>Tf{7?Q5{JR+cpSgegthoTe|NXn?kUj*~ z{wE0kmH$gJ0wn*B9-e>v@IoZ{fAa9+lSeLDfTu3w|0hoc|F#0swIU#~0*HBz5xDX^ z=4!C~VFDC;Ef(3gz_D?10bG-|K*s+`ihzV0A^+bL{L2gA0swyCUrPA>t@z*HmVPJr zH}Vf$fO`SWe*Pd+0QuVli1CkHfCTyT4#NKj`t!&8#{Yo@Nci)8!+s-wya1-)FAq%? z{$m0D`p_+a^S@#LqaS{HtngpSKk^6s??%Ak-!9ls3!u#p*DQdM|L?eX0k;6UF$vrN z{@n=pO|%32uL(;2<pop${DNYCfcdQjF!<LH$ija(ANY6j2m9p(+y%%2NI$^;db<k{ z`Ty{{|A_p#W&r?ry+ipTC_?rA`+xlz`N!e^s`*d|{1Cp#-^M>?0TlaV3fuya{C^y{ z1An}P5lAix{t@J#!YqI`KY?Cy_~*j>Q~<*M*Tny}{9*hr;7|F+D+2yEg5;n4KXnNI z_Hh2U`;L*n@qZe^|94*JrhQk*e>x+79*X^C0c`g3;T!2ccr*QnlJUQ;8-WZTll&)3 zpCVZV{vrR2Dc;JM5<&jH`7sNS=IzW%{@=-*M)^Ni@Sm30U+|wb{d-x{NreA;y9LPj zezuGsWYc}0*gt#b_p=N8p?$x={|6TM1N_GPU_bny{X>>Nmj8d0Gv~)Sb2<5c%v%-! z^3TcCU;Hof&y&J{-*3u1d4Ydh{wVfOl{bH?{M!7d%2&|gKX3uSzkr|3kIjA@{_Q5Z z0KtC|$lnG0OG^HW`X%$vP^ef2upbwoOYC3VWwW0shyTnhe~PgAF=_lm@{a`o{!2;@ z|3yk=E5@IteEDOybdF-?1&WpN@E`d9U;MBAk68f4{<$URf3ESrCI5N#4&XoJ|4R9z zDgpn_{{^Bei~nu^L+mdx_|Zca0RD&h?E?R<>RSGnG7Df283C!Lt$@4*5d0S}4f)pu z{-a9ODpA@LB>x`%ll<2~rMN-(uL{86U)S>gdNu*V2-JuF!Tz#_{l@>efX~_gkpGuw z{IC6g!}1jyR;VEUuK@X1YzY4cEkNbQ_7!mB%9Vltrj;v^|2I_y@JTcFKbHJ+n^lzs zpaOvZn^&ub;D4!x!v9c8{=cyN|BG5RjQ?c;TGy@_!aw9M7XbVl|I-49|AGIu?0@Rl zY2U!~d0p~<!T;y=IyS7=vC(I?{L%Oa{_m{+1W<kFe=LBOKQ{j9+PtBJ1t9rX_#ct; zzmdPgKNBGFf0ORY{{{bko&RY8`gCfp*$?W}vagMQxP9S&l7HaeMeMKS-@^YMZTi9g zJz5U{{*C{G{J)P`09*j-OABBVps(5w?$>@07N9@*e}};XumHe+$DxBd!vDhtb%Ou3 z{2APN_>j(20K<oL8R76hwCl*B@V~<UQNzC+rQ~1X|7fJ~zgYmt-<SVmdW;>@Qxg9R z{zLxnJ?`t?Sb%ZkdygN_Cjj~i!1({Gi4$c3CeQ^;1pcuA!2ee^`w{=!><9QC0Q^r< z?2iR-{vX8b-<JO{za9bqEBxo<-%vA$0{^DrGweeE{r7*A|BL^D|CtPdWC5%Km^XTs z_#cg)N&Y{7G|Vsl56FLv^8Zkt|2zE8h5wg~o4XkJhy2IST{;2HQw!kyZz~|}e<shT z0ucPu0$33c@c-2Ln*DI6YX4&vz{3CO3(5c2A`Ac53jVPGVg7HA^|RUkAcKG7f3pBu z0jUC*x7051j}cf3{A&U<Z|N3u0YU!n@V{``HY~tm_+J)4%b&#_{s;X3TlmKU$O!E8 z7C<W?EWpa$%UAEV7GTc`EPw?3hx{)Wuy3_n0963q0vvGoU$<V#zqJ5@|Mlw+>B<5e zM#}%~lK)!;aFnb3UoC*JKXC<w1=wu-zxlWgfq;L{|4(km1;_$G{uBXT0i52o?ewng zr+05Zqx?Ut0QT%WyI14??^FR0{_i6H2mW>8e<}c%wE*W2?YY1N2>w63H>?2mD*TsZ z0WKl&|NcuS^&tQiK*0Z40Ll1Y@GlE+%`L!phb{jX{9FF-7U1X&$lt>Mn}q+afd7^M zCxL(R{}Z>aoxF_*{~>>uO@QuxfBNo?)9`<i3gFDW+nNB$0x$v6_=m3m?B4xOp8zQT zR|^37%K|(=kiY99<p0>o-z<R0|B*@X5BXnuCivGw@)Z!*v0wWi@qY|0K+ILbf4h3< z9eXVX{*Sw6@Xre9dR#o=KjK?pdn9}xC;q<?AIMvP8`J@K0V!eur~u>w;Qw0z?K|`T z<|cLli55Wo@A?0|AO3Vt@Q)o(1#r*E-|WDj?<bJ||0RTfjKE(A{3H2)&;lf=3$P+U z{QoH7r^g9DJwfIL<N^{r`Ns&@5Qr8aLHwUoPX54uM4<k&1jYW(?Wzk%_#di)zzBFX zAo5RCFa)yvKQ2MZzv<VwAAZFYFbaxI;K~A+3;0*?zy<v9ulNL!KScm8KtmwEwg~zm zA^7FLVBY>TcMv*)$UjK<A<-s8e*7W)(SSd>jeJ7XSK6OE^aAb+_y_QR@|Ru^^S}6# zUBQ0}<A2EClYg54y`0j%{N;w>Kjfdp0;mFbmHa;y<p0JisV(#8rm^u)nq;r0dFxeO zm%{(o_(jP-{7(g-@ZYc>@)!I|>C6Jy_5A-$$X~I)>qC<NHxcmf<geLJ@?;s=|0I7a zWAe8$rI38~lPM*$pSLrk)G+_snYenG(lYx|>~ELY|J|$^V16TiU;YsOll*5=1(1!) z<_9An{(nDv7GxG65&l0Q^Usm(!<^Z4A^)7F962-rg86fs3xN4^Tlk+xpZaR^WAL9M zPu>)HwfRYzm*gM*&zCY^I01tE^ScEg{Ko<mOkIFSp)>^k%KUKwp%L(3EbvcTuyEQ! z6am0LSIK|6f?|GQza{_9{}~Dw%}|iczj($XO8zbUkIGmiDpTR8Ohs(@qwDY=omu=J z4fg9Y`!8COcUIuPsF8mWk$?80r5XPO@LwGMmw^8qM*da-l*wtye@?>x;^m|$J-~h` zs(c<v%O5GKqJ{qz^OF3B;eWoU%K1xF&L0i`i}?#gBhCH`l&E6+AA^7Ke^o3%p%PUK zTmBFKn+2c+s8%>SumDAz|5X9hC>rGdHH(#|2&h@S)TfYtBK#Zqs{+vG$3^&G$7B{j z@c&t<a&=3U`^@$~^=$m(;Xf`w;lJJbWyJpt5Xrx;9ufEt#y_|KynvGbApCD!sS@xH z`Aha_>Mj8C5BOi>|K`U3g8!;jTU0~Z|8ON*fEp?STGp)A>eK3hwEy?~zh(gcg#Wca zZBwUKTj0O$r)}#h{AUH!P7|Qo?dviAugxa_?HknX(4a0?{Qr4fDggMulktD2#+Lsp z{I4J3f5Lwo|1@C#(-pOlME>IchBp3br16iw|D^(G+#UW8;9vWnp2q(q|L{N9ul*0V zqtv@o^ThDKv-baj{~-TwB@5846)ix&?x=OY9<6Qv)7rxSHUoMgmOpKk|BL+F4eDd+ z+kWs@Q~>aQham{~@85AK0{#cuR{+NU!v=L8jv#;22<?Al0Y(n%GGbWQk;9Q%09*c; z1sK_F^r&vC07eHEVC-n+|G@v(fdwG;_wb(;kl^32UzhM-{4Wb2@`wM?B$FxtEr0r< z$;$uxPnO{S0aK<7m@;+X6fJ)SYW6c-7Ql)C;D7Mc8D;^*|FQtnXAPYW{Lc>HUta;w z@%(?djekbW^!y(efaWRxhx})X|8W5>$e;Xw^z4Od0cI2aFLL1mSpMjO{R;ns<X`#! zoTcplC(K=j1(>MVf0<qFe}W0n{1x_CX)ZwgKLzZURvZ7Xo+|!dV=cg%>B0WTEkFSO z;r?fX@jq8$1?1uXoJAYwF#d751z57lynqz}LHJJvAoy1cK<vMC>q4aPU;MvtIYwaH zBJsaf0BQl0{}cW%;V$2~bcN&-pk*s}Enl(AhCq-%+T()!SFSRx-n(k`-j#OYe<}dC z0IS#RX9Z+KpaW~y9$2Ff0TB8B!S(A7ty_O+9q?~1AkhNg0yZA`1`+;8^8arf{*TcD zK>k~Rf5_jjRzSx8d<dX#0cZhEss&&OWEFs|fKKoHRu+IEP+$ReoY}kMEEZtTuCx1g zU<BL(r~(M`|G)*DKeYS&!9AY;8~pFRc*JG!f7JPZ-=*U&n*g2M@BDxH6fWQZ{BOzs zp=)Oj2I2piL)XrtBiGIy=34-{0K)%sN2ma9oaY|lzyD({;ONbZ$8KJdZrT1vSNT7g zf8-MY-oXEfJGTG92;BJ|u>v|J3*esskpD9Tx^?Eh<otj3{v8+me-=HI1^6zo0OEgK z0ONnce_8;q0M1+Zf5Gzq3r`<keER63=l{>#0%-q_3%K;`8R9DdF3f*f<gZ60|HlGc zi8U9X{9n2n8z&3Eb;ZSBkB!F#$OwcMAmIPFAIt?X1p47d-0yD0V*v#JTy+6)zrP)) zBEa*1EWqt}RzQEatt}Auk2VTY>~G%!@TV!B@sIdl7T|{;aRI>py?7oP|H}fP_(%mH z{>KPBNcfA3<R4Q2^9L;e6+psI9{$7sydNk0jfYtP9^(He30(2Ny}AE*hABw+hh#<o z{(mO;=l7qVC;Y4n`Kt>M{|C}9_KtU7@Xwgv{WB&({Lc*^%Ku{w^|1ruf3*Oz0PufY zLJ0p#{{O|F)(9y4k5BkF7C<gQ`yVQRe<vj9hIZgTApH*s|8a)rM)be&KIy;VfAv3; z{xb{tp?$%>r~P5(|M3f;ey|8ign#kBlK&JY%l}^#|9b^s6Ce$Kfd5yN|9kka&Clzy z09?pF^=q%B4*37o)Mf$Te<lBKhS={e03#sy2m4<Y{2Tvs)58Bj@-GWO_^<pw$@nKi z{vQ5A{uwm>!2%@9@X?zY3I7A~Po~UYdOK6fw~+GxR6Ml&&z#!eAMy|QKO}#*0NVdJ z`3K3r&3@kV*gt!w_fbIpyv6^(ziy7Kfe8N%`{93u|APM<ALX*mKeK<E{Sf<qEdEE@ z{Al?v7eM%L*q=AAJ$UDn5wOjFD#iW=|IB_w{^I{M1(5ik{6BC3PX4-u(-tg*(iP$X z^TYozf8lgS{^=F_7lrx5M=^!}g^DZxM@5Qf1p6hg0GR!t5}Au?@I&VB{GX*r$t+;M z1piCfik0%%KYKCpKeM0ghW&;r;)<e#HBx2)jbV*k(rU<Ba*a`3-dfC_m^RIvRI z{4Wb&;eVxkQI+x$_$&6u0#s7wAN5IS0SNyQz^~a4n;*$C|6u>)E1**1|40Q;#3n#C z1d8y#;J+BLzxZF_fAP|_xL|*Y(zRVS`+@w$|0T=R_58nN*}4b|P!bow^2f$MzWgau z-d#X_@_*pp6p(+&|84<D{y$gv@2b$q@_)uZ2LHNEDpi&$S0emx`U$Gs%vD7dK(i{J z!2crus#RL(ivQ&TEdLMS9}7^kTFZd{X#r}`0$2r5qjjyCs7>vfZR)`PB7gXw{SS|J zw*SEbNcC$6;lEh`k-y;IZlli({uB8h3*ZwVjenX4692meXo&>?{u_4tqEWY2@PDIj zts8Ym2LFovA^)~bq;`z|oA&I`6bsO+L$lse^WG8o@6@tSXIy|K{~`Z>)fM<RX#!;Y z-{T9Ce=I=%o`~_k@qh0&1ADiXAb;n7eFD%9{<rauCP4825W#<kq5WC@bR0IY6X8Gb zFa96giTw}BzXbdv!G9OQKNdjyAJd30M~{H~#s6cl0PsKLKe`9}kAQzuuW@5~viuqM zwXQFJCRq5d@sDQzx)T)sbB+He1r|X0|D=ACkn;ba0ucNg|4*KV1%Ur)0S3wfOdq8D zANZGsOq*%^&jtR)|Cayb0%o)P89rkUvix80Z{$DMS^)C@d9G2a00NQ!BZL2d|HqgG z_<GKwujedA<7ONG&*hT;;{ui%|9k!q`7dYog8+Wr`4JbeV)A_WAM#&0S^OWd0ObF{ z1V|QOp)`HL+UZmP3$Os|W-O8gn7L^Etc3{dXZ)kh&n&|KMH`XBzw`eb;NQLim}?WD zxl5J*hjSpUfab&hvH)8bIR7u*W)*<Qf6+2&@v`lUfq&zF`w##lfD4H5KNeuu@|C-m z!T%)xE1mxX3y_5W_voEy0fG+!>~jFO00-8<|7&pp2iIx{ba0)%0zh&B6amWr75*Qg z1pxjxZY2DdHf=h#Y17e7-*B-2$4#t&#Q(AYOn|nW;9>!`Z8@n4&{n&)|M3aXu5ShZ z&i_;ZY5~6Gp53E5;4Cfx_?J`!MEL*w0d0ZKql3FI93=KP9ocj7u))9IqkAuk|My)& z?0>8RxO_tJFaAGuK>QzwuK<95!hc=M{|{X!|971`EaneH3vdJ%aO1*JwE)2X#iM2c zj^8pD!2U;@AF}|s0O{HZ_}_&Ku>H@;ySRWGtbk74yLrkg0P(-X1PB*!`|JaB2l99R zclg(RbPpFGBk<_{Ir0C4bFu)o0($Zg_;*467oV7(KDkK#FAL!C|Ma4fe`o>V|7TbL za{)2zf35)kg#R(IW&t37NiIP7KM!jG;#2{63*h(r*q{RVKIDIe|H}V=cQa1#e=9-v zCb54+34dS|1pm7QFx1!h=T3YmhyR2>@ylIg{I6>k!1-U~Zx#UHcRdjKyNv&T_$w~J zz5+1*C;SKgjsHFQ#|S(!{+A1o{w@pfgB}t1C;t!NKjeS902u)ze~f^;0BHYNd<g&U z0+QMRdI7LMgn#kB{i#ME;g^^MrTqvC5Su{$j|C9_Cl&dB9OQ4|e*pgsfiMC;NHzrG z{zpc@$RCpD9U=e!=Le7v@SAV}$;JGH|H6K8zWIVAf9m%XFTN<f^is-~UQ9^^;P5a0 z50*b9|0!O5Db*`4BltfRdhO-Z+W))^_Pad)k6?f5H(ycyA7uWo1TBF0|JAg>zs>&B zzWthukAKs7_z(Qs{wF;az?c8;Yx4vD`|=0c&%plYqhuLfmifc~B>%c1|74k{04)3$ z_M_A!|3UtrCC%GeQooZW%{y7rzLQnUpLep_>_2OImOt-CW<S~00+9T_mpvlme_Q@2 z`OhKp=NkEEv)G^HU*Z1;Ihp+c|2csF4|C=G2;~O;F#_T2CwK0T^Oy_BlP7uJT*-Cw za0&lY<WuHv79d~B{K4!eRlWkL3gjp7PgS5`D#iW<Qx`NBP@qt1<NwqJ0}GG_>@QF_ zjbVS<f<@96LWTMM*DV12pRQ2RbdW!Rzwy73Kg*v0{xcMg68w|=7b!vVpQ&((Ohrp% zE-dDU{{!;J2owSMONH=H?9W^9FAGqtG?(PxZt3jB`BSmKc>!U+EP%+rT+XPnIg1hd z^Kk4hpUbd6cT_O`$sOhVUolUKih0ERg#VQd{wwE;HVYvB|0KU9{~`Z-_+O=<S^x?7 zFBo05AQr&MUl;hVj^Ka0H9Y?>QmUqf|9(F$X5_C+3n2Kft?^G8;J;QB7J$s(ZxH_1 z4PAivUn(R1Hw#d&Oj%k0#y?vA*oOeJ0E~ail>eM-@Xw>6<^K)KS3nd2jVhEU{1^OJ zsMxroD};X|f8+nk<o^Nu8~MZk%@O2}3lRUCs#R%Ot!hg?0jQ?rzg3MuU+}0&1t9ou z{b`LhwSfN`<o|8N{|5hD8~+pj1OM$lBl%bOFERe%HmGB<f1Qq>*X`J_t}ZSB{%8E( zsGhK&{ZA7f^}00G1gJ~1`o{l|zbb$)J^wfU?*{+3YSbOU|6erfq3?ei_h{3kN1Mh0 z{9FFttDVDt(_Xj$$iG9=-kqBD>D0p1yl-b@;eXebg#TZC*%I}$?|;ev`=RcF{{aU7 z1H}KW2lj&e+YIR4W>D|8XkZ_=03`pwe>;{xL;7j|!yVGU{g46ehYsw31sEp&@8JBe z@IPGsX#6v@%gCW}0p$O{|0v7<L;mkJX5^QnMhgDNjOsoXiTt~dW&8vGkL@vbtnSy4 z|F|Az0eX!aXBI%oe{bV|!T-bweI`!q1N@^&7y<Y{kUj*k{J)>V|EXxe<Z0snsWAVv zf#DVWyQbj+W}qQc#s7nG0n-r`fRBHS|7Xk|He>einR6%tM$DKiBQO*ApJ!M5A5DN} z%^#`#&-_uu{y_`i`TxQ(b4<?vtbpb$9y@pO*x5_QTK@mFDuAWq;D56KTw?zT&i~xG z0r^jwNBFP(51Iu0&tHWRu>7C9S`Su03qAig{+A0_i>5DFH+|u{>5Fuo|7R>*uLt3O zxco8x{|5M<z4#l0|4lLissJ|6UA%eT;>|qfE#5MZyL2n?KYt12uL@uR<S)?z*n|9^ z@ZZD(@|O`H{0IIm|EC35q87m5-z<Rhzbt^XXSrH{y%Yf}SM5~`0Q|4oXBEJ{Rjc<S z!hhGAH3wD$|7+m?gYf?v$bX$4;(xUOhvEN?>kn^mh2j4<8;{}wWCS)IlM$c-_~!U# zeF9+l|0Zt%PHfvO@|OtzWdTmH|Jkm4YR6W61)xs=ww*Se+2#B%_&>Xw{C_+A5B5_5 z$O7ym{NH(wdtjIGKi9*5;D7gpLuhZn|6Tzc-Fr#=zxVP{@jn%SeF6ag?{^n)<<x%5 z{}1RZV0{Q|_sl^H{|{e3dr123@b`%D9~YnsfbgFQkl>&2|HdWYKji<*$8KJx2snlX zxP27`@PCJg_CF^L{+0jV4L$*Y|4-f(|DU{j3;sWSpL<)nkAQy{`Tsrg|FahU!~d*+ z&Kmr~|I*`!h!xQJ$G|@p;Nf|>fX4_IaN+3_1pHq#{=caFKd1mM#XP$d!vE!%n9G9y z=R6`7z~MjSe`^8a;;sSzvGLc8|G9|q4=bSSHUauRp8Wp@xqvvo!u}fp`G?;Em<8a! z2y`p{4+#Fh75_&nfZLFN!XNzx$-m$~5Ea0kNCgo8<K1|D1#maW{{#5P0^GClzgYlU z04#vQf87L(fb=k)Uw%Sv1grx1+oO1g|G&u#m<5RN|Ks?-KaPj?|NbOiMF2+NS?B_u zCj5-t1rYwT|3Uvp{vY`<{-4h+`S<)EFYr8Gj=&p%2>-{x|M9<afq!{{cwv8B{IBu$ zi(Ehge@gMlJ_M!?fd9k$pM-e5=>p;tumFJ~{O`Xc{ge0q-#_Db2mTjcNb!O;KPhAZ z^w8Ui0N|e=N&EE+nZL*%><{GdpYr9Gl=e#+|D+Q9>+R(4@UP6@g#~!yl{7A}U->`q zZ%Ul~*b2z=|F>lU(!S$Y;eWb!tpYIkSNQ+#8}NU6$p8J<(|_<rh7Yg+T#>){KdE5; zhz$EZ_Rq}z$MXNosot{XkBxsIf5HFTz`t7nxqx)C08;vQv$-<72mdD_e|u+oPZa>z zA1r?a|3Ua~v42infHMC;xqyF#|KfiWvA>Jh|6^Hz+#-K&UdZ3Y{s;a?`OOIA=i#%T zRQZAb0=D_#8vF+q054F;`5*XCQ?M{1^OpsX0Df(L9Q!T*2mXs8<9}`bC1w7Me-Qj{ z`9J($H01xHY<{9M+u(=HKT9!^e<^DbVSiSKf04f_(FK&wRvi9^{LA11?3T$9RTg>j zZ`a`;7ofo3Q~~UFG5c}lEm6sne;y?N3jZ+z4*web*!YKAqDlc{{(>a~_zx_A_`h1A zXhatffq%CE)r*v>QKTdmK*@hmEI>*4pX6WsPyWw?3V_YO@qcajU+`bL4*V|*@Ee8X zFa9_9FQXQK3ZPWEdI<6_T^9bg{J&g-GUXB2-=J){2Ib1}_`F>ChUF3b&-lMWBdKCz z;6LF1N=+(~{7X$MRcunJqQZYk{BIS2h5teR5Bz`9qUtBjt5s<s_^;BUy7*s$`KwnG z`PZn<{i0^|)}K}v|3m)V0RF}QZ4vo@om%aJ<iA$?fdAbB)W!mIfd6FyjQ{O+`uwv_ z4eK%i>eTqN&W-Dt>UU{UAO7cdh5ws10RCOZ{|&pfZ1|-K@|RQrK>nuIjeE9H@=puU z)A-*i06qaQ{>K7P0kHg$1t9s?1V|R3ON+i;TYS}3@K62^|D*m2|6BDZ{O{fx3m_NJ zQ*!>t0t`ZZ+L}E1_wZlv?=t=u{9^&&e^mg3It?GxaX6R!e+cS4d}wFqe_f4#y1@UV zMlk*-`TuhCNQ4Ct{|oyA{%83gkiYo<>mK6*3xEr7{_izj`G4;T6A=8b3;)~xANcPp z_@9ggfc*8CJSBvGSpeJr82mf`gZ&=<TmJ9xKWMrv0PsIp@GlLWF-wvWpa_8fmH!8t zId{1DUlxGmf5goBBT<n2FBmmTviyJHm|5(9l1eKe6#-ZPYXN|N&;P~$w*Mb5_!s~C zoj7;JL{$LX6_e&-0ai{j@;ClpHD%r^$RGZnx?qhopYcybz`wn*0Pw$E6#>A%_<sZP z{f~+O%m0D@*^4CLf6iho0OKDC{x|rC|E2j$w=RJHWdS_@SNI?BKM(2KMaxD0>H>He z{A>SXD<JrP$qFU^rri_)Cba;|SMI?A*a`^jH!1wzw`!G%M+pC+3vmAT7Qo;i{$I-w zD9Ha+0jxi=9t*JH$Oh&Arf=YXgMV6p&Br#0|5X8O0sh7RC(u^--z|WW|5Muk>zdpG z$OTyb&sPB7p5Fbfy8ywz1oi{}asjS$Y5{hh-!BVr{vaa%=lfsae~&~3AgKkogs1?5 z{2%x?o!EC-k_EVOa=$FVsr^?^9k_ZL9lVAD{)hY%CHOxdNa6qaBR4M`xpDD`!GB-@ zEdM`tTl{~_`Tx$<<G}x&Ytmir^%KPYiBkT5(k%e+fA7|*hy}Q>4}s6zzjMaMKe{l# zSpfK-_jix(fA{FYcaI+GivN8GWJSP}NASNa0Pz1r@PFYMng0{W-$n9&@wv!fim~wD zuwNFyTtM(p1rW3VS7PI61U&rL7Dz5Y<S)q!BwUY8fd8+@s|7F#{@n%G3g~w?5^w>( zM^pe(0$1=a8TsFW{Ow^YAgcfj_#^xe{6_@#TOIHtUBF$2K-vO{{O=|FMMI!?uHau1 z{Qu=ayjlS9zv_UW9wz+sAf6j^0T1KBe*P5vlleaa_^|+H1iS)}7l{7{@Gt)Nhwjg| z3;OwKJo+E5839=UT7YK>|3s1f51bGA2jUI(^Jn-V{FmY-Xy5XGYXL(3mj#d!&;&^2 z&+Ny>Kk&a?02P2=?*cRpQU#zQAYOZ(2;2X^JskVt{}*3K8L<FBzWD-?e?&I;f&6{> zlj@}xQHqye6#N_ir+WFN)XMw~{;>c-@(=ba{14&ZDgb~#bOCAKcm?4C(qaLUg>v#w z_G(%l7W*^%Nyp=z*U}UI%L3T!M;G{K^Z$AV<A2?d|9$)u@c+keW@7wfv41Ad|C5va zC(A_sFY<po6BD3RZ)eee^HUZeYwEWN{JF9K@IT~l@SiQ+y9oZzmi|5C|M#+GcsF}S z1n`ICpZPsc{&Qr0ANlM*N7naqlK+GKn)-hL{{#QIOt$>_Fek}>u8(qa^#J%4`y2Lu zoF{Mcym^!7LwUF<^1=W4Qsmd*N6VjlBL9^6jsIl<3b-KuR0Soo0AN24!M{|Xuv|dF zA`$XWTd1hz|HTOW#s5V@7XbekaSPz^&rQPr!v5%tMN4EVMg<^Q@(=%O@RNl91NhHU zycCiPu<$=Cfq!v~K$&dCk@%lS_Tpu;L;i&SQRNVUzumHg|15uUMwQp>rv&^D`IGkR z<|gwmq1lftfF70dmZ+RJsxntC0E$MRkpJfs|BL()z#qJ20jd_@O2Ym^%KUZpVE<F9 zh9vT*2#^H``Tx^mB_00R{CEpcJLG>Q|E4-orA=k(mM}$Y|6|hf$BjTe%m2CcOA-4+ z{$(3T<s?mj$}#?FXczKtRIWlp@juMZtqA$U|BclGR0#QB%<uf)q+-RUxPZ!)ntf8K zStaBZK*0Yk$p01oi~p7X8~?WoDu59F%>uMG{%=!L{NLu&8f~otXlvu2wzX?Y;(w_f z`s`Ejzhue3RRA4q1=O(t{4Wd8$y$I2|6>8Vko=pv0{=}L!2ey1|G$(4Q2vj)wM2yf z4Z9;*fX1jt>qce)xQ*NbIRE!*-=r7t-@d7m{|-(2bZqAPpT3<G{$l~YLS2CW7X3*6 zyAuAlB=%<l<l(>N|6dH~@rA>`E&tnK0WACv_<wNUwu8TFYuA(ic0>BL8#+K0fZ*Tx ze^3XJzh*z3Mhxya!r*`8kWM4S{}SXc4eK&$1Qr1J?=mWY|1Zak`qC```~R_{eEHKI z^7rtc*^exM#y{f!@#A|<aDn|3dn@*z(0k$}<Nrwx|M0(CfWDI__njp8H~yc}Z_1Q@ zQ>XUR{+|j!QvN@6`T!$;9_)VtO`n;B|7Vf^51BsOS^(w$L#NLn|91;8Z06iyQ~+3j z8D0U*A2G`;fbl=rFaDqH7Qp!*;14W-eF6aai~k}2ulW#Q&QdgP?lNTgKi4!bZ~^0i ze^mg={3p(nCeK?n3CRVl#sygTzk137vjE2b7y%{!G6IDEp8v0R@}DmF-w@${y%%ld z&RVn)LH@Hs{<k6k_*ecv2mUAd2mVz7psn-$F5M<Cuyosk-|+vp#{ZB%L!cct1mf;c z3qbM@{2Tvc0hTV`MG+wQUx5n{{4WFkSL|7~V(;>m(h9U{A6m7V3cy{!0kr_D4y;~% zVD*}Vs|o+t95m@efVETrYY$2582>2$7x|-gM|3wF*|@=y{|&YRk_9-nd818$zB#_h z;eXSKEt>@YTQ;BEy5;27&E)^5$p5(!{#X9L_4LlIr)dH72{4}ke0$cU{f}*d+y#8M zcl&pHwz~^Z1)#40)B>D4xbyshopJ$(c3lX>1ZelgLy-R-=l{!U0aO88J|^<N0{mkH zfd3QwubxCqfUp1&{y$(AK>L3S{}18<zQ+ihlRW>|Cjb`?-?$(Pa1#rl{f~4DT|RnS z^8BBBEW-bC0oQHzqkH0>wE)2X{TnB30(9#BEz|8&3jgT>tOa;*_w<81XCVIv_d*u{ z`QQKU;eD?F%mugwzy$>4Z~Ra4?}Gd_0V4ko`Twc$|5LL7w*PVde=h#N6cc+nkiG)A z92<K%HV*!m1+eiC53v7gD02aVe_X)#@$Ld3e_X&1*W;z{E&u0I1o$-z@CUO1Nh$#5 zKyj)7ZrkAJmS~?Yz{3B8AC3HV!G0Wpu73RSj(r6H`QJ7EzZ-8Bz>Gk^|5$){`2R2W z68?HWUIP2?L;K=?eFcCKc!Yp|T)+>q01wRq-~wFa|0Ms94ErepVE!lZKkGp$VEMoC z|Ibh3BIJ)3@Yz3v&qLV%EdHO*;_Ts<KLZQ!3%|$62>gQJe{O8>R`T!pe~dkX*gxT4 zW&{ZT{~a6u?>Nan2N3qVGzy9r_VaK2@n7W6kKsSiBl4&HU;f)KINn?SFAKn*@&cCm zn<H@k=Xc3sf8YPG{Nc}3FTW_@_iONv1xRi1Zx4}wnpXq(PxIO<Y54PX!N2GK4*!t9 z9$bLmDgb`~|0Mrlzex}HpYUH6;N92LBVzwB`OiT3j|%|)-+zPTKjVjfc|iVevi}kG zf2=F)w{Lzkr%XojpE>1Q!8QH|{<9eNi~kYW?>F5$*^pd-lK<?4{~08M|L`jI2mYP^ z-!u5v_$MduFMS~K!Eg2ta!CRI^I-pz8|C^a4;FwM!2id2dF1&R_|HrJZ!Un@Pmup( z0Sx~07f2b3*xzP90r?yM7fMwSIsAkDO8Zk6;tKwC3p4vEnnwIzG_ApZ+QJk87y*&L zu44b<#QqtIL`9UbNC~N^F0-GE#Qwz;`)4XzQWgOIC;4{;?^0Qc8T^a?OS^mmWG=w- z|FVMrfd8=oD6jxvf6n6Nb4FDl{LfVadF(IpmkTiL&r_lj%O9@b-?2Xm_@@Fe{?{*` z-~wa;N>pJ8lwY^1SpeW)v!8;|)d>H&0r^MQa3cWxEBROWufX5*sgnOvT#|nRe^>3| zr6Snx@b4`^9a?}WYXPtT@PBlf&!WpB;J;qUGEylXWp&B?CBeTg%wMM5=cugIP|Kfk zg8y=!`O5+{Mvy-iph5*`Ka}201JMFhYDV}E{EPoTX<oT<^G~D}(kJYHT2?XsuUe&L z)hey3S7}wPYOCs1zo=f7{SV21>l)Q1@_!Tjui3u|3n1(d@_&Q>y1>6#fO@q$FafGx zOX0s%yJG_+{*S;vUjcM(MEL(%7xMom^}3q6H09CYOIm>D4ZdvFpc_~Eyju(9|AD@U zSb&D&f3pBR+p_=h2~cB$fAN3s_D%bU|C_=8g#Udd@qYmS;(wC=7Vv+6+yC_M)~Y|@ zzvTO$FZ%cVVnDAi2KFNVZ#}SgAcg<Hzh?hf0PTN<NbQIAm&pH<@ISG?$>1OUA2Fo! zNU-0pkAKAfg#TE8u7v-(BO!m||50C#9Zdz$ZR{A-{cG3Q?jHV+6aV)ZujP+4ZhWta z6O{jRCr%7p0I|O%|AK$t|4haOkpE91|Nm+Vn%d9Q9}6&LD*K=QQ>Q`xu7PZRrkZ2{ zW)7OJ<li)F$h295#s3!m&zLh5iT_=5hs~TbY?krAT7Y@O1^@F#%)$jo!2ifZ3$Sq1 ztc836tgnFQEFLr4WXXTX|G+=_KR3jFhkx!o|7H1vd1%Fi`O5#D|0m9;0+7W2^H~1i z0?-;60dD~otev_5{zvOju>Vo=ukhbx<c|?B0so6PVgv;Li}?h2lUe}F{~>>ujDYyx zT)>j8SO6OWZ4>+l680}#incFu3I0R=*X(D<l4XK_S%4M0mH_|D?XK9p)Z`Xm`HDRT z{}chh|K62m0W<+xwI6B!vkD6!tzIquU(NCd;R4nka;<d>z=i)Y0_!jWhq+b+kpCaW z1+W4_n`{NNY2$G!0ErerE+DV~f`4-XHUz>2ocea_X}SR5f5+A{JGY%7|KDNozjNE! zon`^{d<*}d-Tf`tf0p+i@_+b$`?-BPjQ>>uoP+!i?7R@P0PsK9zw6>5!vEbD4|C!F zJ&?bQfW!aseOFw9|9yo2S7iYXTm$}3f&HP*9Jq$gO4rZA{}L8J!UCK>bVKkj{?}Cn zfcOL${%8CH{QCrm3LubL0ILAh0#E^%3!nwS0^GZC3jV);Glc&n7T^I!;Lhp$#{X&o z;QxCVfisV|f`7>Wtmpq+n*ixPdGy^A-SbZ#pL_D;{L?^G02hA4|FQr<3lQ`Ck|qC1 z$Un3I%KzbiEq@YSKwR9FIC%lL0ObFK|Gd=#SOq`}a2@!Ues|rNAMF1={`bhXK#>;U z4^#k=7T_lQAOA-eE&%?=2*Cfh<A2n3;Ey-vH|&q_KMyK^JMpprcjNyOh#~+Npd#R} zlmg}j0{*`b`Ns?UBO?DN{FfuZ0;mi4yV-$6{)hG-#r=aDD1pb%xBwUY&qFRC&Wix? z|I_$?BG_Is+K)WE3$P!5d5#@GN#I{CK-{m-<9~e~_bb@%0{CO&<OO2<!Bz4P+dKdN zJ1$O-$e+x9g!FN40TKy6De6bwJRJLz{^D={{RIPiLw)jp@xP<K?u+)zi>Y|L7+x#@ zZ-xKP|33A>2<VaeWo`Zi{I9-b_hkXU&3@9_gFn;a0xa`)=655IE`<Md$#4O$q)YZ{ zx+L(=>^~jkPxx=jkkkSw`8V<h`_Tt)WV8uTh7aG!2=;&YMkc(#M{i~#|Nl5yX1iqm zS&~Ekg8wWL{x|r~YM0GVwlvEBv!%5b0RDIQPcI9QJ%cI2|84;?y_+L5g82jf&&ea} zdpT|VpDXM8xd{BT=^FWekQ@Hb@nLQ(K(PGzFarMy|IGsAh5QNpmHB_H@L&AT>_2(F zd<=eofAN3*{3!(g1ydF%U}E#{67w7RJO2~=3;R<SDw4V|v!5cVVgABJ(i9Q%r!8Cz z=7;|Y|9Pi#>?iiuL*$<x_%9rlz9{@(JfklE!5=Zd_}}1P`9JV43s6!PpqP|||4U^i z`7c&l`M<*d(pjU*WR2oc#^K+XpX9$>HcS4qEAtQF-@<>$Un2Pz|10pv2vp!&_+KeE z<ev!t0srSA^LG~@>~{-LC0{hEnm@Wq{*rtPVEKQ^DuRET{W$*{{ImS=7C^DT<^MI= z{1++pX_1m9Bmbf$jsLL#+WbhxO4VlklequU1PJmc`DX&;_p^Zi<pRX~;(twm>Xl^q zqvRj{C;b0B%>O@U`BMh+*X+m0U-^F{YXNl2OCo=%qAtsyL>GV^5d4e(4gQ-~s@wu2 z0RLAO{Imae{%=vGN-KkZ_CH_90yzH*{sYyl*1Bd5@_&;aZEMwNTN@Gn*9c<&I-j-& z{_A@F&jiR+uU1FM-z)&vX8%F{ukgQNUE_aC{u_(`g9?EBziIuh&FdTa*YDQ6emBDZ z77c*^?yWvIk^f6QQ0qoLTQ};Z@qdv2_iD%YzfB;25C4t-mH)d1kPFcGKM4OF{`>j( zr&~+of0jSMzrugrp1{8g_}3=@gZs1|)Ta%x{}9jrziJEo4<`BVkIVuLXg>^T{38t? z==|Sdgeri}@INj<{6DPIC^Wn?8aYBOz-TnG>zGmSf7h{u|G+=j`G0h`ug4&>0Ast` z?7zo&;Q#BM<Hz@yFs`Sh!A~z;&;Paj(fDW5q~4Pz_i>T@OH;UzzbpVPz?5l_fB&h| zA%8CUe_#QoO^5%b=`#mRo5{rj3^weC{0Axdmxj)ehRlrc|J<Q72>-?ZRsqa||3mm+ zpb3yxKnn@~?Hc^gS~N=Vzi70<|LEC^Mq>o#u>40$xd#6l|9>4+0HG0>x7><=731fw zn7{;Reo_mt%Jct8^PK!wPhOz>Ulw421pJ3`{$Gy;n6_{|;s1;U8*Kl>jllmmGZ%d` zb0Js!KWot@$ba^tO>-7)o^1;FUq)aHnrjsR`+u_l+vYC`v_Rzl?SduWE@1W}{@;NX z1{T1Kz;f=+#mim0mMq)7bh#;n|79fq?Ej^`%Od$d5AFYv_+J<J#|W4UpaNKf3s`-K zhdu#Vb7=M2!?=LJ0`L_8@NcrO02l%t-H70SF7UtM*v1XV_z*xAVB>Lp2=L8`%{-_8 zzB#!CVFCOr0N@{OmIZ+SxjVO>*{=Q187bud-S9uykG7xVLjIZn+1>9hV8?k@K>83s z_rk%Q68um2ZxZ|;*?s9S@W1==u|1dd6~Nvr$M#$~zW2&;<Np);$p7U6*#Df~j|-4+ z0cQ?emky%u4gSUd<o~({Z`csX;2-|?3D9A+0GG7|g8xlU{zq8>-MPjD=$J0je+9@V zKqu~L`E!bU@5YJyH_ZavJozAz|4%)*P4a(A!UEhC`9HjS`r$pq{>Lo9gEJccXa#ik z@k6j*di)6ZH$6W8<jJ|GkIy~jJ~{vF$+>6Trx%_-<*EpHZux)A^NZsD=a*wi{>lF# ze^mhT0%HE~#>HI*`)L6T{;$NvUyh6CBKZHRh5x|69`Qe51g;tX+g0X|SOMuuG6FY@ z{BOkRff)bXO!(uC_&?tC3cy-`TY~>!{BK4;UVy;g^k?0`2>kg@0)I-D|6>Gj0e`+5 zr{o_Ca96Rv838?hBK&6p!~_1<pYeZt5J>$0AntDu<Bb2g$j1K<tqYI~FbkkAApYk^ zaX&vcX$XV`F!+BGEBJpB_dnDDT!uhT<Nk@*0_jF%j^JtBFTsy;3KRj@0pQ<@08syz z=dr)a3t$9*e_dfee{y-p!2EIA|HSHd@qes-`A=N@e`2|@JQV)B_&xIe-w*#^lm45e zza%ApTLGnd@r6`o1i0=6QoR84`w&R*pW2o`SO6ZW+5EVG|5sj06Woyh#r%?ue~kQJ zdnN7bp+Xms?u}QFGXFPU75T&e!2eqW{;#H&ApciI{%<S!N6!D;4DY>;6!^dYMn(ku zhv9!F$RF$n{>A)KX7PWr%#eR_0{>)?e->`ax3Z*qD=QU1Dn0ZL;2#U{4laPe-<91g z09X7^{_idzg#YaDf2Q}O%<n<|G6KZ@p8V^6VC4UPuIwmc0r=qe!#w)z_rp9nKMIul zqr8%mf0QrL0)YKee)c~wzr;7cn*9Xi5C0cTS+G#bf?Pd9{x6)WVBu7S5X=w!OCtZm z@PE;?MRfI$1qfB7xGX@CD6n6G{7L@7epHMr=FbqqzhQsLOaMRRZ`d#RFYXqgl(_(h z|A+-Blcjj+tW15d0L7(n^TVSYMgZVv|C7CV`5aN@bCf8TL$SY-|C}XEssJjQ1;7PB z{^b95-2y25H!ol<K)$F?@|KX4{FlT982^`m|EuONX;=BbMEGBzWc7l9Jpbnt0N}r- z_`hULu)nb2pB4b-uSM+7)$Cu_1pJq-jRO8J6S@FT{!7=D3n+^P_{@v|E&$bwE?eI$ zK>bo>>f89oVt>tkZ~<UH5Ay$pWy%}>muplOm6v{N0UDQ6{%;n*F0p@wApF<nr=l-^ zbemU}T6}^kx3uuTrRD#vs(jMQEC4Q`Rn@9rR5ktw{%!oD3IP7EQLRl)RK3lo$jHBz zTtK_pHQUt*1^>$h)aqdH-@z&X<9}IzPL}@@{&x=5rQv5?8kt1?ngDqP!2Pmmy)T>9 zmzt{r0RFp+{~L5~8S;OthCNy}?5Xd6efiV4R~xy2UTquqYS*}T`zC$bH_`0J@_#Hq zlKem5|Gr(De<e`?=#u~U7yp~A0vOO83(#ty@&BM+UkvKiTI$_;u;AaN{m&57Q1O2N z|4e|8Spd0!;Y@%ABPKxF{|Nqvvj5>S{t^6-V*CU7k3e0=jHC!q3jq1k0*oCk{{PzG zp9;YFf85vIrE$jpT=72_{zvdXEkG~J|NBgu*c<qt%nHc(fAZu$g#X6>f`1dUALIXN z{e}J0`%?i-3&Q_M1u$^h%mLG71O^HIX#s%$S%YWj!vBMT{~2?JOt%VP2JlY>K>j}u zDfyS?qY<+fAeevTOuJYBxqwLc5B!7ux>Nw8=PXeXFn7t=x#EBAfArAR3TV!94S@vz z%g4_X{BtMFTZt_EUo~-_$(BEa|CapgS_`lS3*atb>io4+<O0^Yrm_EDApW1eaD%jH zgBbx_0I|Q|f0j$*ANW5Yf2#nL|7!xYNc<1{&t0<BWh)?Dz&4ZMf4+tP3zlxD0>A}u z7n%jI6_8;+{J#wH-?e!8ZqNUhuGq75IoiE!IkTTo41recb=e9?6QGqVtpX7LTLlob z00&pCKDbIlAeUDFSb)Q8*BxHF_6T?VI<TMpkKlj9Zw35s+;H6Z9~VFca6%sf=$_c} zjeP~M$tFN50)YS1#{Z|bZ#nIv1+XIEEM8#OwzJZ=-??`C@<-vn@_$tT()s;6JpVs` zU<c%{BH$nufLj1ufOP5bZdrgM!2h00vH)@cSB_}{garRwdt5sS|L?zs3pjn?dSC&J z|If+-Buemq@CLd-3vlShMHK;B0bM#QT|RQ_(vg7wuN=LNtOB@mE#UvVJjDNI0d5?J z{7t~WDTIHLe~f^x^S>;>sfYJY8ULRF{vX|k|ABu5`3wHt0z7^M|9__n;4uRGzmo+J z_QU_CrxXF_pFg``;XnERh3C&N2>4?z0{^iw7h^^KK@kw}zw&>10W5&E0A2)KjWzy{ zSM2ZnZ`cq2>ni}~e^mhb7FaF7_4wc0bvy9;8wp^)iU8+-!hgYkqW%;X0kQzM608C+ z@^=ex8`=-{KaTy%|3m&)1#l<MihzW_@@DxH6alvXQ6mt?FOa{6KyCr-i-5og!2D_i z)CK%qULgJ-+=qgHy(t2i06F=G_kY3%j=;lz;NLet0spHGFeC6ZHh7T#`!9t5>H>`a zpT+(9EEeo{FCg-F_;(`!=NtA%?!RMV)dFAv@B%Thngf{y_;*~a839~?I|4oa4@Im& zg!cc>e`d4~>Vy5k$OqcDKlS4aFQ!)bum6=6K-b|P7hpypwJm>S0gU{^s|o;F=CAx8 z3y{w8|Fo~aobGj_eS?2uf5HEoucR0G6Z^lCKG~}X{x|Y}HN#tse_qY-&TAQfe=LB( ze@0!AzhwEplK=N#&-B3?(uZ$kR_w3*KQk7<!ha|KEXMy}zrz3Iz<)Bx-z>n}St0*m z_OJ1OHe~xBDgg06@Sh&+e<uh0Zx8W*MwtKI9E|^M_LEZ;0N79FFWKPVW<T&hv46Jr zb7y})x8?u2b9{gxf0R3y!GErg^4j<Z__y%iT!7%8<p1OR!u|mM^;YJeqG0|M1p@d_ zQJ`Rof|8SeN`Sv$;gp5208akQevJId|Be4s!~8|e0$Bc^2J+`ogo}!&D_SgFQ7nK2 z`4juwh51WlC?@hZ3&4%eSUfsoF;j8H{_wvPz<+6T0bE>wlK;%bOJ|9K{9R?K0J0S? zo3(h^Y*C8+c@z5wve^$tzy$nP6#PT}!43F77w{ilDOYp={COe|S%Avq|9PT6$y*W; z{#VIcvPwQve(`@bvjEi!ltk4FMC+mDkH$YW3YM%{s3gmunuTohZ~1>s!9V#w;lCbk z0csT~U8_g{|Fw%c|Cf>lC|0_T8G*XR%LL2+C}F>oe?23A!M`Q{^`n{nl)(iw5dZt; zU*W&<e_Q@A`)^pfEHd&hr_A5^U)NPZ{BIVZX@v?1BfxED76ACS@V`>?N|jnb{<^9F zS}Ol1{Ko}+(h9-<Rdq%FRjYhK3jq0}YE@fTuiCmsRq?;z-|nZ?+sOh{=f46(_}{Kh zQVXE`zeC+x+>W2I|EblnUTw)LfKFxsIyGSbQ>SyoI$auaKXVJvwQ=1D{09&5zgYlU z0Ed4r@NeqT>hqo?|Hl7>|2?(*mz@85EBtra{s%A6v02}aP5X9g+NX1~uR1mRira;c zf1UrE_xlp~Z!w@-i+<f&4nW;o4wPCA6#Tae!~ZWJf5AVuk1PP;|B$}iHbZUvGqhh@ z^8aC80Vw<r_<#7I_QM8s7&e&jpRWMm|BfSvnuaO=R|Vh}U_@u}|451af6OQ@@Za@o z?wBvd|D(H)8`FK<*lv9D3;d6l1?YhVm;n5bmj#%phw=Z!p2q*O07w=f2>*@zgZ!V^ zzi-3>OvMWr{7;?MPc6Xo{?lft2;fee!4>>ZpM?wHVga20$^QqN1pkQqp9#=Rd(50W zG{XP0Faq<3Gy9pjV8rYN!$TJ^!r|ZeUoJpeGz$KovzQhj%>S2;#R8}T2xR&Ha)v-( z&s{!lp5)2DT!1ZqCd`HWaRK80N%N@yR!j5I8uEW>-r6Z%0nA?q|4ZWk^|k`y3jXaf z0TTJUwErje5BYy4{2$1f-}XO?wyFhKB>tbX*!X|(wz-QT|E=>De>)#738ei0xBS0o z=}u|cjztRp4gSUdk^Fzp67qkF0E__qzkIJQ@K5Z|5J(>a>_aP7?q9KL|BCRja@7Gu z1+Y@#zv~d;{~C&b)rVK}paodt{C{K}{J-wVy8j}7wE)MyS+DS)76AB1O8%u27=bMt zE&u;U{J(Y6DfoXIchl)@TW|rVzr_L={EPp$ivM>w|8LXyXV<pxYy!jzNaW8|1z>mo z_6z%W0RQI?!v8K=08N0D|L?kZ1peP8{%8MlY}e(m1-OC*I8F<&=jw^Qzk&Z#`$hiZ ze?1ibpE>ZoRRG_Aci=|o0&bi;bb|?yRzQbt$_2px<o^-)hyT%G4T1C(Fc#qGook5v z{}}v#_xf=O3lPG;EWk}FfD`v`ozy1)x49<;|IYt+1^*B3oql8@|L5Tr!1@2t!_x-; zXTl2L?2|`lpFBox0mA(M>A9y${v}lavH<1+o?m<}_`et%b3yzcSb&Q$vE~H==D!pd zkDUMgTL6XsvGJGVBOd}JTnUW84_89|#|2!a4zN!Ev<0F92o^y>1pxeiuOdL<zi)xK z7y<VJx8j%sVFZ4>nZOOgfBw9k@aNkJKi-P}GcF)dT#*0E1;nWZ@GJNa7C`_%UO?n; z%&#rby*P*epYF%~%~}8&0nh(+AH-q-jQ@fEI3@oM|M35#*nd2X#RvrXKk!fZ?-hWI zKrD7Z{O>J*L;jQ4e?}A-0k;ESf9yZe)0khL#!6HG5*8p9_~$JPz#G)pH4E@OHnae- z|9&1r{%`OfC-{$v{SR{Nw}-GlR=)&F`c_Bq+yB-78UM!Re<tC7PyP+{1K>9!0P4Sh zoc|5`Ut;`2_@4$@_)qLFz5KF0xG$%D<)yU7|6Ir)Bj9rQ_rPD7zsMiv*OeDA_?HC; z`Cst=w%}j<@7Qk^0RGR21#lPe{_7c$;9vWH;6L++Z%QA%0sqSaDExm@o1f&mQi^0* z$^Sk4C-(OT%x@OJ;a}lDw4c^w*q;OP&+ra62Uq<6P7X;Hz~G-7Q~<d=|Ihkft^oc& z$SwZ2*$)>N0QrmmKY;cl<gbT^|6sq7zu;dI|BL+dB`=U4LH>e&xd2xL{tKH65cbOj z1hKy!Sb$W8i!%N(3s5w5kz$O0ME-?&1mvH#Xz&p57l}$&v_yKzmOl~rci;#9d4&8A z_GfhRFIr0cFXmU^Zx+D$ANW`DpQTtC9!maUehK&w6u^H8V*m2lxyt`_A^#i}{sa7h zqIp!ZcOw5=9U$fx`4js`SI(=q$Um<q|IB`(tL9VkUoC&hK;nPG|7b4cPX$l|3jq0R z1yl+PK>lyZzw^Jre^Lujv{Y@$l7C@;DO2e>#mfNyb&C`Gd-5;%uV=|W{EzB;_^<rG zOas&BHvZu{{M#+}IW0hG_+R@U!hec@MrF!3hWriw8;k!dG$~iUNtpjPEnlAGAMy`W zu_D;tyb`yf$lokL%gU7`Bmb6FDw{<9d;)+4(D=v1_`fyqZ~WiJl7Hj>>TNCmZz~H> zqn-G_Ci#DRSDjBg)T!CQ_@4{^OCkSvs$ZM@U-Ix@@L#t}BV0h;u8rz;u}=WHHu+5X zzxMz2Bl*9=e-rtC_m&NMwESG~5BUrJr5>#t3jQ?#a{h1ByB+&~DuBjR08$6|ziHo& zP2hhN;s1VJn)kB`!1=#_H(3DGKN0>l{;}jgG5qI0{-ga*-`0>nEr2Wl<o{J$^8aCG z0ptP(v>Oip4{EREe-PyF`G1Fzz`yw4!~agBhO+-r{y!Q){)zlA_%|283aG32f2=f) z>lPq{|MA5Bp8p&CPlWuXUX#!y_`lagmOteGk?^1V-^V{w`iTFh^tH`DMF4{z$UlI8 zvjDUJ{ihrJ6aL!-$Si<nKgR#S|D3@y66F>E7cgYz+#xgO4Mnm5O8y!D^B6W$@Gt(K zy%6|EBWEv)NbnE#&t78rKX(cHpD`i!TMOX%|FW^b|D5IUKl1Q@oW?&Z$In|iKKS@| z)r5Jb`Ku>7{Lfp11@PE^^8B@v+5gO6Cqe#l0qX<)pKtt+7a;s!VEMm_fQ@Lz!f(_9 zu>Wx_+QbBCmX<$W1Z<hTXba>&M;5^Hf5?9c599yE-_C>l1ODH(V9ECR5-XtX65;>S z9SfFmcOvosvR#WpEnc=;T8>l!ELpL4sl)$r!T+)q`_OU|@V^}XcWDA7_(v;N9bCEc z;Hp(t0jxSi5ditG#scsmz#91f$Xd4mYh?k}tviaS0M@TNwtl^|VZ-q-|34uY0QM&l zE?_h8PyUa-Ice}8SO6;mPH*3QddC*a|F@jou~otdSPLNd-@Wa-J=@Oh{#G&<aDMNO z^ZT}6*tbL4zvBY=zbXI(|L?eXXs1~Kh5xDmZ~;elUq<48lfi!?|KkEqstdS!YTva} z`waf~Uq7?|`!igY{|CN5d%*Z#7C<_8=;nEme;~-8Hy2$xeCyKT+v5Kt3jdY=AH6O3 z=PO|G|DEec?_NK4_j~xCd+gr#Q~<|;e^x;EZ^8cv>_3SG;6Au>@*yJm*Z${pIQ}ss zp#1;zqX+2B;|Hgi09gxg=E=h|g8z{J!~CD+&v#Fsa?i2<asI~wJb!ln`SbJI|HPaZ z{{#Fo0-pb0iix|VE`Y1#UpJ7JKbIkYp8&<{eKj`0=0FLMKe`I`n*jc+O8$R$jR{cP z@2{x>fc$@VJ>mD);}G!ApRxe%0-XGVA|MV&@Fye-kiY}r52Ok}jQ|Sy-ySeO)<Bp1 zKZ(G8`zS#Ce>V>ObT|GdYXN?`7xy<@09^nNxd5;q$psMj|6SJ}J_LgKWd!0J{`Cm} zw2upT6btkF97vlV_@5QfV}Rc#Kzf+KeoO)Rf1(la3PA9m$p4Ij;QVJX++Uu>1n{q4 zV*f=80PWl3U)TX$0Dsy;ML<l9T!8WazhimF=%avGN`Vma|Mw#T{}JH-KOZkB)lc)n z3#l#h4^iLwU%!L>Y4``S05<qB?AP+gA1}Wo)OY?5uDJlPAO1J^hyNvF|JPngXZe46 z8~kvkkpD9zdj$di8G!$g|AQ8Q{2vA6|C*D3#`j*Ai2dJxJu}$<0rz!J{+az`0{(sW zg9QNoQ3|&J;{U8#{wVyHQoWT;;s0CuZ~iFue>=N{|Jl>NojskT%s-6%o&0419R6+g zFZj>&ZqCf_=F0qT&Mfcd$^!O_{B8En=KuXX7XIfU|F`5ncg_#;!vC86NY4Lxa_b@G z{wRQd5C1LsFJSPWU+|y2K!M~13nqvB3nb<LLMaL{{&5-q8~mp#%v<5V;J-)_VSiD= z|Kh2O76<!z5co&1KV8wNw8ct<;eUyA#UOuK0LA{rqSF^s=FdaPzr#QLU%aHb0Al}A z8KVUMJTmbpRyuQ(skpAlzj#@Ze^fb*|F!&~0w|ZYM3Dc7;eUnf(7u2l@~@aPx}t80 zK)>bx$|V01D<Iv<xuYe3-z>l<W&uS0O8$lY<o}xe*sX5-5A$38Uy9_Px8R@TpZq_l z0DyliK*>)Fm68Q0T&h;#(n0=D?62^@G(#Zd{7>eO>P8gse;F-*qRP~>3IGdGA0r_C zFYDtU9(aKUmj5>>RZje$XaS7;N&ZWhLygOnYlO;{Z&DTuP!1Q+xGeB5{s;S;l&{bf zDfzG1T>M`_w_>H{l3YLwEI`GG1yKGkDg4I*SpM%704+c@xd0{q)$|Fl<^R6?sn)h8 zQuvSfPXKBBqy0|}=YPR}!2dNx{#bx8|L<g90muT>uiaS|piUPTEdcOu{QqU+&%SJe z>PdwEP3v`URv$6`@7}zD)WYDuWrLo$fDr!K|0w^r3PAkd)};N9^S>-W-wsU(|GyIa z^YL%M|NX22fd5_O|Hl91|1Ab|Z=vwNd#gc~{|`!P0fO+K{J-_!zR2?ber<;IhyU9W z{txHD9oTNzKv@97e>B1@04^XB{*M~kan!Jmqla}GJ<Q-A{wM$U@PA~Nv7;na0ObD) z|8)ib3je!}`x<p0Kd$@u@mwu`r150_0sIU5C-x-vpFCOoKY4QRDU*9?`7?z_pD9!N zOqojZuRGZ$K!pEOr=fnou>h9*JO59g*?;;h+yBoR$mVCp?17&A&zQ{{3&8RR<{vx* zQ3T8#GSlFnArQ<z3+&f5^4ASkKxP3(&c*^P93dC582A_e&sj2R&JwPR*gw$%;02ff z%~kSm;;}*%0N3Gv-YQuD$bYWj-z$I#;{P=hjsN{IW&YYpHv5TKfGGn0_3i@92yC3T zKotNt7y^YY04^Z-3Si-;84EYfT1X49dG_KhW&||*mjzh7RW4wW$bSwiphe%#W&E@F z+quU7G6GAtGXb(LV8?<bI~FV!{JRTq3$Sp>u7&XbQn`Qt{+I3HLx3e%fMt6Y^IpE! zjX(hZ%lGqGv10#nQ^W$S5d0hegZ=Qo;9nB_Bj8^xz!B|#?5>jqfc#w%{<rZD`=9m4 zzmXTf1;_$y-gt7;#*<uzKwG{!wM7=-^cD~Q$^SPg{NJ|uj4FW5XSQPjHlIbn|BfwZ z`49jL0Q~PZ_}5ne+t2Tj1vtNVyZC>9a4%v3fPY&7U9_(N+yY!Wyi@tVS%Aw&cew?) za#SlI`wC#USpaJR#Q%bS@jop9<WB{_h5TLL?dNer<A3A-a|dspH(fY%>mu;ah5ru$ z{}KMbbp;D>Br*TD7C`y`H7tPmKY)L&fNTgP_&;tHz=`{}Pd&VSLb`(sfd5ZD691p_ z3P2b5zYq3{{~tZX0ucVAv*LelBLAPo0z7@9`waen%JmB1+_UHBo<BPW|38m$C2;|< zg#W<5U6KFA*m!pVSb$5Ae?)O$zsTQikpEi?ApR%zzY>RJ0j_f4|G3|wU<(BQ8}|G4 z6_C{d3jc2;{OLv<5Ai>`5%;6`KTiB_%rE%&{Qp+mUm_KN9{i~;fFET6_>->y?il~u zBIvKY?}+xb|G66*@c(@;0*wFf#o`FW|L8t9{_ppd_NxMTVEoS||9=qov+RIle=P4H z_9yv&B>0yF2wZ@B0muHhe?E@=C9ngb5m4-J;s2AM0#Mrj<hh1G<^uGmkv~_!&wXb1 zdF;RScrFV7`9C-Q2jK1fpXbj-{t?B*B)<Jeez6~a^Uw5u|6l*ovVFsQS%3)t^9#O! zKlMMkN5BY(`T0eUv=;uSeVI=HUQCM%kQDo;lLY?~*dJH`;Q!_H==GP=zY$*X|I6Zk zQw9tF{ic8Gl?-pcn(?hyGb;IiHRC(4N$*M+flTkdp2^^!3;YKX|KkEQ0m21j`RGjv z?B^zbGpiJkKk)Bj?GO29lLdG?JCD>N|LnH^7yPGvI|qXQ(}z;*|27sNXC(IL;pA`Q zA7MY4f7bVMJN)y|H@}+w=gIy7vf0lEVty<@F1dibxjxK?V18E~;Qu4b{4M#<_i+K+ z{}jmU$$td?%>oenV*$8@EcP#ylGtA=g24V%hW(Jg!M`&9)J0vz-37q^<^sTeTmXXk z;eQj4VkOd};<y0Ae#pPLsaVMj#Y<-J%R?3b_%8|n^T<@Zv=qR9nasrgQNhg;1@q$q z5H28u{}RgovqzEn+l{I~_|Kn^e~uE8E&t5|M7t5Flry?g&Jw!tzr(*CvH%4Bt}1yH z`&SKAvT9z)9~U4a0Q?6s{;xsu?^5_*$|M)SXTQq-4gR(Nk!<jT5it0#U8Gd)BBkpT zCG!{gBR2oye{S*8pIP|-SyXA0_#gPMSE6)%Wck07zrD*gh%PG&P!jkr^EsEnPbrg! z|5yNn|HkD1V1F4bKsm+!c!6>inj&I<siM1p<_7=pfAfkJ1pgHY|J?!@|5vKqQnCsF z=BEo__VdXnUvOmsZ2V&v{%?b-BOCwMsMZ!4{I|DD1<<}0;eWvY?VbN+0cv)vOZaaU zfGohLo$Ko>;LZmB@W0^S_CH;X|GV-D0Pru>>(-=Rx2CT8-GF~t0E7SL4SLxAr$;N` zp9-KsnE!v?vrR(}|9iJ-*t>0`K3ITujru7358+?@-{dRA@~2a?en{}&%=3Tvzd!1R z%mQ?G{%<j`N6UddQ7iGkEC9<NO@M}I{3F@&r_E5{zh9eS{du$n{)hE%JDl*}^8b+k z$^YE~5dL?t@lOZm|53v`jUM6B_-D+>&SU&y0bu^oU7Y-70gV6M0<ioM{5$`T?{4tl zeZqw96DRbLCL-V;^_olt0Q{Q;0RE+^2=W*FPn{-BLGZtl|9;cZ4Ag(BT^s-O7yOg| z&l)gY;~xqBHw~IG$N7Ko%sGR}{H1w<e;%{u4Vg6`{x=J-KrVpff9AsB#Qw7_|Mv>O z;D5v%@xRL}fFu?`ng8gy%f`%6?9Y4b+~s5EEa%Ds%!B+5{>A?e|9k@A$$wA*m<w1v zks@Hhnn`j2XsuNMT;>0&02Zvr0&vX&Y#{ufstFJ-VB>TX*gt&%`F|iP0N{V7_<!@v zMVn{ZowW!TAPX>i(bn0Fe{cctKl#6m0PxQW2qUnaJ8$v!`A8K2*uQhZ5@{i_{D0vx z9=q&q7C<h*Dga%`UlxEX{%8NQeBaXL`?$+2{9m?WKQ6#@V8u$L<bS2||3fQf0YZuY z4gT5xuQ_5ZfF5ht9!2XA7GUi$Du4~-|LcxzTz`C{Eq}h*a3aG0g8y$^r^Npf{C^r3 zp#9HgvjF-Q;0zM~i~P^*1pZY4e79@Mce}XT&UyYX_&5G%{IC4qDgfX=)Wrik;r~mn zLpv`W+I1Nn2_^DZ3vlJQ%O*g+0y??p>M2@)z1L15Du8{0e+m8<`Rh^yumU<K1@Mmr zQ1UMe5V(L#hgkmHHt8Y$KWr7i5hg%)uN|@d5Bz`h?hW|gbmQ24zW=>(-1a|K0o*?E zAdpo6%Ky<x?f*6YIraGdDZ#(x{|f)b|6F@KJT3Ug0z5ur;lJ}g$-i3wcL5jy$lu@} z{(pV}3t$xhmkH2?*jN;P2w?nA{x4|)6!5==|6TzI{+0i`ez+{=#|w!3b%B4&|NT+~ z&;m%}e^~&RRRDkdK3;<VzZd+w0t;|6P8EO@XZxS{KS%hVhq(YTzxdzaKX}`pV*a?l z-j36CsRD@o$%_E4hCnI;r2FuH?BDGT|MTbHA0UiC2>%Z(|JR>}{jvbD|D$(|)d8^q z|38ZPA4K5)C<f;L=M%rce+>L@*B^2L!JilbSpa^w`!wd)r_X=YmHuV=^%=il4QK&O zF#ogXVG9uB765=(_%D)wE|~v6<(wb>PyGADe-`<lo`*k%%y00osgD7_lYg-MA^GP= z$9~<w2)vjM7x3~+>EM4V03N}8Iek+84=q3jYXRW@3^2bbLnQzA3PAj?3V{4yV)-Nf zmj%f9&a0W;eJzu@0Kq>Z^MCI(<Nr6r{~x^0;6Dq?AK(9c1pk`_`1sAN5hYKSjpX0L ze^34m{*&pZek(`nw-ozxjr_SeL;lZ+1<3GrPBMRtKt_juu4VrGN#;-TPwcPzUT&CQ zve-W>gMY~X{k$aqIpKeE0XaSZ{`2JeK-e!MK<58p-rS)D5d42sAdkVnjeiQ{|F~fO zk8SqzaY2&*0-*)a<|jqL!YK;*qfm;%yo;m|^A}F3tIR(F|Eb9QixK<7|G`7>ufU%Q zASx{n3;)v=WA+o3u2^)s;_!cT`r?ZH6D9sHnIXz9%pbY{!M~F~$$ymbzbpXQ&;H+* zKV|{4mJss`{&~m(l;@Exs(iNS^4#ntocxvlXOGtA$KXE*|J4G3{Z9Uje+2(j0O*t4 z(N%Oy^3dQ%GT^u6k6D0{)ou2}W%d)?{L#388U;!j{M!xSztpGvSg=%0Wc*(X3qT7H z=KpN|o&33Vij?;KPo1Lhf0-oVKm1=tiYhJgcftQr@V_bmgMTIe3jd?ad>&mEg%$wv zFNYfW#R8NG!+##)e{Q*^g8%Y@e~AbDU!fVY<-f4s`5!Of7Qn-QupjtW_|JnOP~|U> z!GCM6_CKF6{%>8iO6zJ>1pgubV*v#J&i_;ZHLFnpw66vKqw3-Q$Mb*SpZp*A|Fl!x zTAk{B+NnOO)ww|}5C1ziu<*ZO9pJw!;~!U}&-etuD}ZiI>zW1lO!>dUf6M>v6M!Ck z|10vB1?cq!p8$N`t98R(Z5nccfAar6sGXC)!M}(99Sr`(|4j`3n~MC!|A7U7{|9_2 z3oxL2bI<?v2|&-5gJc2p3BaIUtp@i-UkvUe4dM1}J@l*AL%st0TVnw%{1^NW8_<^U z-}t|+!hf#-2DcwMr2Pm<6QEH;I}rX$@V{y7h)#lkmj96d$j+Ysi~q-v{C6Ffg#XF^ z$AA6h_;JYcfA}9w=z&E35&oalbJFCVOn?wA0OUVuvhlxWKc4@K{Nev;-05EhSN#7K z7GS#b|4bhJr_GWDm@#_*6#zy+7GO@u|K$Hz05n(pujF4AU@)3B-;98T|1;tL#O2TM z+3o@s@*w$F_#f~;k0ojWEc_oeXDJ#j_+L84_<yup0ONm>e+&Otd_8aF*K=3m0(33> zA4m9a`TvCZZUI(Lm`DCk3!vCvnzwe+g0+*8^Z)$yQ`rB^Uq4wZpbb+N82rzN|Cs=3 z`7<5bH~7~BEh71M{@)Ui|H93X|Lld3KX<G1zYT%lfAW7T0+;~#3JC09yd!{rJ*)zV zz(2{qy8y7?@_*oe(b7GOi2au;`F9JT{GS!jvVB~)085weNASN_0Lxb#Sh3=u_@ArC zp%tsl0<4q;SZziC3*dtP1^;V~N^Swx1QuYOt$;Sb|LczH68>WWHc|nc+_WKpe=2}2 z8&7T8cpCoSY8F8JPyUZW{{ME%8CrmV|3eEP7oZA26Cl^#ZRb@4U;(zB-}|jifVN-U zk9Ii!2NvMJ_@DgWbk+I)n8JU{|94+Ku?O;p|F4Dof9>?%>!<eO0+;|9|6BO4PXPAc zIEVQD_W+*&n+rH}>%zfXY5@+)1;GDQ0GAKlxqRr>75M+~ohwJ~Ts?f}8vJh-0P@EO zX#8_T6~K+7_b>v=|Bv0jN%${4xOGChee$7nLgX(|0jLFl{~tO3KR9K}pHojBoPH9* zKVHBlKxf4NkGX*nc=q%x6Cmm7ch6}7o}GL4?7Kt@ApSpx1%UkB0>s7gCjY;n@E<P_ ze^KOb7C>Eq2mV3qe>ooh2m9fF!N1GM|A))*?Em3^ziI&>|Etdb@qfSqT!sI&0@AgI z`2RZaAIIZQ<p1dVxF79?{2%}0jkrJGG(rA1<NjhsfE)0CQZJylEP!Hv_+NE^yueSl z9sY3vf&L~JV97rh=9deI`Fr^0q41v~fd7fu-z>n-_r?E7TtJM5KzIS={|5hD$X}lW z#F`7h0z7v+@XMo^Umiaf=j+BMz8{+@c>G-XzboK>ErN{se*^!Jf587dT+g2Kiy46! zDuDkyf2JG3`=oFGQU4~%KZyLxr2p%SFQg4}{uf#MNcIa4ei!zK1_A6R^G~b$lEQx; zFTa@X6=a#eRRHPjotFLot1qR0^<~Lpf9-!1`)4rzxBCkGpW#jA{~40K4EAR<Wq9iq z#r}!;zdrtj{GI=~nK1&y{_nk>`Tf^2Yx%=N7x)+dhd1j-Z)E-W4Q?d-ck-77NSQ2K z%4FG5DwyBok2G)RFh!F8oax^N{w480SMYD)|2sJ|y^|~RJGn9i*ze1q+?g%^Hy4mA z+k4D@eEGxjKTnSL^Fsa%{(=9Tg8vZvKg^%oln3npC_njsUS<9g;eWo5^K&)(kqanT zz{L2ckn;aRg(SlNLO%Yn<RADiR5WD~gMV%jw*ZR$Qx&BG0RCkG(gcc1Q>;XqVw(Mk z{4Mjh3c#2j_;>!ds|gT~0RC|SB>$zj8H<-z@*l;8{K@|j<X;y4Hw#cUGt6%a!+*5^ z2LI)=l|U7;MdJd1|4`B5|Li3yW@rCH1rS{+M@i5BEAdwBU!ro(5&`^U0hs;dimrkS z$X!x0{?{e^R|}xcPc>qHU6^0kUp;@RYTEqU+m`>hfSMB6&;CciujIc_Dd1oH5B&2e zT)KAQ0RHRX0+{_vrT#xk-ZHq(Gh5oO#Ez5LN$jA*W@fh7%*@Qp%*>2pTV`fvW@aW? z7J1-IW|E=cyjQRL*;~q-Q(x6r)wOEv$IAb!d-a`0b^>tl-?*G5|CawZDKFqx^T+tV zshbspn~DFyeqw*fU;GdGxA2Akwpix}3t-J37yh@V`5zM2+9|XW{4Xi|hyTMI|H}dZ z{FSP-t3>~&a(f*Dm^6R50x10NP_;@&sVcEQ>V&FSqXNW)|2x|WfC>K_{MYDOtEL3} z*RCn}cjPblmqh+j-5&MpNE`wh*6nE(pk9sY_7eZs>)p7%)D-xy-=~>Q0GiDk_SFfX zk;?zp|K|xnzm|>qtN#Q1qsC}J+a~?nHA%Ao?P&fq1^%4|V*xt07$OVM918&dll-G0 z-C7RmuKa%(@b8s>eEjcD0KMCcKz-Vb?9&#F>f09h9|ioY{I99xe_)3(#{XjmbsUQZ zcM|*$G4hB1RsJ`5{Er3b%n88wpV|*6fUc9&|LHc#^?%@hSpdR+l7F25to+k+>O{{1 zOoRU?^`15b@|Oz`|1125|D~B&fa!f_&geS}LH<~Pnf+(a><9VJF%kZwxpM}hd2<KN zn>%pcyg^|9T*zPiKV<%VS%CRkEdQ4U7-Cm|p)`LME;1KjM!>EB!xxJDbqGL~|BqZu z{|EkGI%=^y0bl_lMlW&jFa961BoZTF{Ervl3J^VhY1DY{1Q0WRY0P+D{(Aj?upjte zX14(Nf4S!Z!s8|*>;H)S!wvrJ2>|5pBqI>HYMRRb0RO7#QSiU=f3pC%04#tpf8@GZ zQR`+!i~I%u(HrRhZ~_qd8~>C4&yC*5js@^!`M+HOumD@o0%@yV0k$r*{C|;keip}U zC;VURl7F56#Nq--{&$*u{LcwMR{(|o%!uW?5m$hS<$DPKBQ^I%#qE_5kOlaC{*MKa z3xNL*=oNsb%m0o4R~#}Ia462;KW-Hk;P47w0q78b1vsihfZ+cqa}_6m)yG!J0>J;r z)^Y`~L%^D~C)Tb*C#Cf#*R4B63uwJsK=8ktr#8s~oZhS}z!_cv82_K$vPs&y`5Z1_ z>n7&8ZClT82mT5FjsIl<T>h_lap$&63jen=FERJ<1b`Nh`2X_09TF!1DnNq&omUP3 z|2x^Q;sStw@jpeN-9G-u0_?qhY_CoL$M@bmz7Np?x{0^~oZ5fu<bhkK4%|L{02grk zj0yPH3E<$Ja|aaupQHbCNc=Bx1@K#d!x#a_{}0>=Kv#gH53eD}-?IRZt{;DN(**h7 z1pZCpe`f*g1aSA{<Ga8=a`5ja{D0c<|FcK*f6hFYTm|U7y#hEFuM@yI@xLqp<sbOp zEC8ARb7uiGC6WJygoI1zRl-FJ|KWcvssJT=GXB4!@IUFY@&A=%VZUF%|J9V#YspxE zRQUgza{;OH0@n%rQ~q!xRZ2_#F#<mRXSt>Rk4^yazZSKC{(KAOPt*V0@#X(_4EyiM z3)mGP73|j)02knNAME$?|G#Mw|GTL}fa!aW_HhJGDO#xgJWMeckYZPWlph{x`TL{P zzcU|W1X5Vw|9?D5R{qZd<UdK_r{n*BJx%@R(_}Hf`GS8vV@E0f#t}SER`Un!=chXX z=u7gC5=Q}CKoVB~AN-5<-67y-alXO7=K_4Yewr`PO#H<e0W5$uf__a%!UD($yh=(F z`G2CpzaxJK{~*2n^w{1JKJ))W0KfY)x46G_yN~(P1OL}=y!o~JE<0e%k0~(tC-YbA zuSw?rCgJ}#BL6qP)gd4Q$$yTwGURy6$p82JPySExpVL_YP53`!&UZ8B$Sm@=@_!~R zf`1qLYv!`@Pj2IXZz}eGTj4*kKP~|BH<A3q|9Or7^M0(_Pd?!P)6Drk%bZVB$$!4= zKJu3Zcu)Lq<X=F|pZ5xUg{<@Q^?M5c)%-X3hy4BUj|G7IaRE%=UoIePVRim(>cOw_ z{~|v4hyMxxdFNXU{s;Rl{4ZAMqvGoPSo5dI$0gwZA|Dg`1OE#DSzPj84CepDu-~S~ z|E~FC769xooxQYglK+=3^LgpAg#XMhN|*b*Y+3O?wVyH-z99T}68VGu6}-s;{FnFf zKjk0&B>y+scZ<kBP^y4}m`47B{~Q&9a)|#;w&bb+@P|ms{0;uytQh92{gD5Y{8!2w zz^n}ay9w~;Gwjz40RFK60Kd6_fNCQDiZ%nW0M!cy)+iKc;lCD=|C)sZYcfgxVSXR{ z*D4x_YC9DVs$DEd{I3cS3sMoNE{k^s5dYV+<iB3Y!1~B6Km+FjAb$`3iT#5bAu@mZ zKeh<|%c}e%{x=K26#tip|78K1mJey><A01m(~1QCAs7MUe}(@oI0487gtQC{Z5c@T z@74ZW28Xr^L7V_o`}g=i#DHJ?kF>W9t<)||`M=1&QYDr&_^({0Llq}w{=h%szvKUo zmj8E7$N!yc)aX*9dY76tx*`YvwQ6*&jcRqPBO}nQPA$U!?(lzoW^Ji{ot_5&y&BZ% z*`Q9ZhIIx1jST*ojX42`|9dy7-$(FYzi+dKlE}Yd-<C-4fBVD#ts3>`1R(xzY%L)1 zzk~&7-(+C>ru2UXAz1*(znS<S_&5F+{5uQ4(hap5)~)3*S%6lQ|7rfX{?7>I|E+!S z-)3ZA<A31a_<wZ2_M?G+@qc?u{;>e<k@3Ise`5b}vH+dO59>5;IQhR#<^O*E??V3X zP5_g}be%M&8_l1|W4jUlqbbbs-QoYKYX0|_IuT(3dQF=M^DF<i*k5zTRGYy6)IN~E zP5{RLGfDnUvuE|6J-fg7e|CS9%0F}G4wyUFo5ugL0P`S!%l{#Nrv(d!ELaHq4_UAP z_#e6u8UK^~a|qBaVDa!pOV9`t&3_60*9;%I$d!M@|D%@30*qb~H3lO9|D&ZA{wx2d z|6>&(EWpxOjKGBO*zw`96PCuZko-@8{|Wz>D*wj<fc@70as033e@eK^|5r|lTuJ{Y zJ^xz;Xtk!1Kk)Cu{~3{MS!PA9o9XyJ%JIL;|JToU$-l^-6Tn7H0TuxGca!jco?1Yg z=SKton-@fj{};wO3-CMsUl^n2Km0EXAQ}J1ivJ1!HPf_<R{#;qb|b+*i@|^7vc1j% z0RI>PzXh-&kjOuF#Q~51;||6W{*(Osv~0!U<tu=HT!5zI|G1S$xCMCpzv}3U)kjxi z1e^tM@DKK{KE6sW-~{k5{$FeGuX)P&|J3^Rr`E4K?Yjb;-niZ>K=8j=fX$ZwZwCIc z02^@u=d{58o6g%I02gq9D}X9MTQBZJ+b-_fdQts<Spb87p9_HhWdU|v*=yPl`Ab(1 z?zk!oApQsbIRVH5DEv1a-E#x}KMMcvkp&R>?=|hab#kAYKUe_B-w7AsSpZG|2X3D` zc<1~9xc~?MmjA>5cQ0W9fPa(nfBHX1umFPpt4GWN0RKm20d5=@|KAY#Qvu=xkjDSF zPdvHfbn+?iZ~XsM{4e-_#svN!oHG7DZR8L9yM-qJoB+<gczT8zkDi`;Nd<`cOz@w8 z1#ryoX8eU$kiUuiUos0|^U|wV7j+0A`A@u*ltliIE+r*jM#+-+KRM-!S%7P)z`wiz zE<i>g6$`)u`O^aW!;N(Cf8%vp_<tjf|NkTlpr0atGXg3CIsRut{<mKL5Ba}m0aCTd z1?Uz4`G0rUBY*AbEr8wvn79kLE5QBN2K-C|{`BzAQ9wUaet2m8A60;We=LCDUoHUt zf1L6UB;fZ1{6qde0srjs0)GA{`Ty6`B#gknWdxG{{Vd7g9~a<*|K~|&0hIRt_`))O zxd0aJg#SOm|De7n_H;kfd;x!u=sN@?;{|?ANR$Nt{#j%JEc{PoPyAIbAnCVPi3<M{ zZ36I#7XG`Lp8Wapzdxq`1OI>PK3dvO)bG-MZ-M{$^2QtA*cIR#Spbj!mH)pf_{Rmn z{38FiGO%ch{B1Gv&ygvknBT+|fXpBGmkj&8Y4D%Z%`9)_dd~#*n+p*9tNin}$lqB2 zBmX?v-tqL|J9+H!Z=R3d%_|om3jp>j{D=P`f1mPa&zvuN=KMbXFYr0d|11T*-~`~i z0to)!D+vF8^IkzuY4Bgj_`i_l|G>W_{{Ns*o(~G+0`g=n0{`c=nJ-&W!M_CgJNUQc z-|~MffFArp{;~kVeow-Fsn{nafq$@{1+kQH7U0v8C7q1_E%_Jlm;S6&>Cde2L+1Z^ znbMz^DeJIbMxadjFRbnJg=PL<l&fIjzrjD)U%tEx|9$+A1u!E}J^=pzx`Omgg}`qr zIQaK0fRFrxb5z6y1m~=X2>(MY{13@h5vlo;t3ntSz`OuUr98lY0L>qmKP*og{F?;` zfd5&z0!Zcp#QaiV<pLuAYUKX~9Q+4VGx+z1|G+<)fAvDZKjiQDpBYfANFajzWdQ(w zEPze`SO8mS{uB$UQ#`1yDnP=1_XL3E5B$%puM>bJ|BC&CoCRoT7Qn~+SO76U{r|?2 zkNnF8nFTQNFUNEzfMEC^?8gE$tDyY9Is9)Hz|a591HwrD5#-+r_*eLE3o|&Zwch_$ z^20w%n~+M9YyO0VwGFM@HmnllZ~R|H{4Z7MK=|+D|Bh8$_+O<{RiyC0vqbXm%m3{J zpzvQ7pnBJu)hYi2|J~};ApGwR|2z1vQ>#Z^Bma7}d(^MpQ-b{K0{?{n#{cztll&|E z_vQa)0s7bpz_S3&8+iR6Oa2M}5&S=(HOar`fHsW>wrwJ{YdQ$EZ#uX=v)SMdkiSpX z{~4n4PxGOj3I90(v>1lq|L(1ZOD%`@Xf?cNEBJo|GX5XlyUobnZAPUF|3~+0H(JR* z)A2v~KNi5je}}PyJB%ID0rJ-zDi;9xV*w^G(TL6y75;agII_#6QC%jY(S-lNf7i)l zx+(T|g8#?+`5y}){+~9n=d?+P@E`t{$p0Px%L0)6Pj~7&YdYb7zu7tg^i%SW;D3|& ze-17{`Tv|b1Ln<j;sgNs51NnW4_YvPu;72eV2k}7`455o#s7<p|5f`LzQ`=V!X=jf z8~-m<`G1620FwVvw1Ad`Yo@`!Vt)t!#QtNJMtkL-r7`2A=yAaR67qk5pB9kE|7HP} zISVi`e7O`6H_0?Pe1%Q`k-xJ5RDh;Ntil42{9FFNdRip>ug=f!L>Gux0Fh|j%qVGA zB>6wL09^s#|2a_`=0rR4mj#fl_A@Vfvy<_^!N2jpod9G3bO?y$7O)L1irKy>R<c8Y za{)V+#^3^WB3S^<T}w&+O~(IwB9=Mrj$F1!(h~p={y7B1EZ-Nkd>@AZ)BYIvfB6AT zKlWSyM@1mz|A*sNI32MT5L58K5*NVa3IO@T|ErE+0akkXzq&xH*PNgTv}Vl-pUeWR zJL&QNy3<&I4eK}o$OUX<ZaBSh!x^**aRtBvAd>%$=e#Sx7ES>0KjokE+c#g>zF96n zMqulOU0W_V{@>-`f7@kq0hjmexV(2eg8wc5-*ILC4)H$^0WAMF{wMhd{&!tF4F9w5 zzJ7Sm^`pCQ$N~WWXzxu90WSQvi3PZI68_(R8+q`*Ul!o(fjbEDcRGLYE|Lp4c<;g? z!T-g>_b(l~f9df3%aWJ>JNS1e0F{4^KDvHPx`EXHd3?*`|0lOjJn{4YUGe|ZJ2vl~ ze0ty0vj-=||FQt5#QzUZOOH;!czi~BBKT*<KNbIb7U20g^8bVv=db`4``d*7<9Pxg z7eMlF{Er17`8NUoC`l6eCtV`>7yK*#rvh|2MHb)+(|-kU7Xf(z<^NZe{ImSwn%)BZ z;kuXq|IrQsOt1U{^GmPOO&tOR|KfitK;9w1<A2EicIsblI}4Di{*R<Xz;}0b2#^=B zF3?|%`Tu(FwYPZuuUo+PwtxTN_4f}_*b&SR{Qm&_gZ*X=v<v=?|ET~u0spp$|K$ae z(~N)`K?eV1{!fzC|KSjT_=#-!H!gsvUoJpKfaOOY{ImR|J?W=(`uRnY%0Ds!i9aKe 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�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�<6sGxH7lnirkLNb337Bxt*5g;uS!r#VC&^z=AxU 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≪C~cO;75^=zfcta0RE%ehDEibqT7W>wF^bj z?Lw&E@svjYjwGCTKmEW8ptk@A=oz@53OIo0|4e{A<bUA5{Vw?b0QsLLKn(jI6CkGJ zHuxX-=QhW7M4MteZj9}?A-2={*iP%XwFf(`p*pWRNE5*CU}xWhoqf2L3E+9CGx9jp zrN#d)gn#ybTo*^GtG(d=xURPGU2WpJTE};_itmOj;s5w<<_X=*5^(?TZj#W=B%!-8 z@Q)I^8zch%Gyzs5_8|W!c3+xE{zr=vdn`;s<o^XY{&Rx=XD9cZoz#>3pF;i@Ccw1h zUQ<(gO-boBnd*%u0spDE|M!`Y+Gl)fpTAQ3j1wk6YM(K<{LB4M69D)>jN`wo5ovvg zqr-iF@&6w~j{Ko}^iTB5{U7-MQ|suTg#V*te!@TE9|IwObi5y)1B8zEA8>p?f0Dm| zfBF6Y1l|Hb{@Q3D`Cn&%aQ{C!bl}Nh15XYgn2uKf?EiGVLDVRE1wj7CD}ZsDr|AB# zd20ONQxgWCnn-0#9-J|io2Hd9eX!tvyaLFWt(7@fD|4P!=6tQp1@OQ2Pyb^AwD{jZ zC!74Q!~WOFHq&Xj|L0ii=Gf@w*bSi^hMaa}{JW6<PrD5{?LPE0-~Uew_{S>%zoEGQ z=i>e^9RJtT{XcIbCcrTA|5oyU{*K{!JBR20Jv@JxaQ`1s0RQ`sC<qu)5I6$&|3dM| zLiT@Qs9s^{$igta!U(-W;r<`3S9k#Tf4wuY9Pl3}_kSWLfPPW(D8fHFOko0)92-@P z1pl8LU6MY!<kaYrjM04j$NhiI*&Ocln6tS^@IUa+of%8=FB*5gc<j02aq#~+`2QTo z_?Jz93zz_ee|iN#@|Sm!@GtlOgrZ9m;QyZ!;PS+R%aigiPegf_C&{`pQFsNAeR)#$ z6*M`EqX}?z@+nH@f875G{}lW`1<5AB^{I!iPlf-52_W<Tjp<1@rYGY5e`7k||H=R8 z;LYi=+yVIi=8XNfregv`-I@`3YbN63Km0#4?Dovi+q2mJGvR-}|IZ4(Gb`xMtiU@h z{-3q)?(DsHXYaW?Tkiik?Eg7C?#|iHZM!#j%l$dPKl`61zy`$rmrZ~N@V^ZIGXFoE z@5}P1<3HhlzURXQkiW;n`M^K>f1&H61+I@4lK&qsaC)>50sqLJvwO0T{lADV|4$cL z)A65z|1Bxtf3Z3Fp920Nf5!h3!T)sp2mYTeGkmrb_-_d-0RE@vzi9aidCUL9?-h6p zuw3SUtN?liKodalKPCYA-*n{*dIezc0$B+DH+W%#3}4t9zO*x-FadynM*~^`_yh>K z8ohEgdg*TT%ERcjhtVrfqgNs$ngHI$?0@6ee(ZmK1@LCA@#}RaZ`PZ<*<kzz6JRr< z3GikcCV=VN?WS*cnzH{*OLv>G|IJGGnU(sR(gX-HD-AXiCcrzXS!sy*J7EGun7@lO ze-~v=6X1ZwyBLf2=%B^>L-4=F`*`5r@_mwJS+ZqWie*`<W!Yh>{HSHwG0U>!mgOg` z%1^@oR^=I1<(ZZ=0m%Q>xc^t=T36&*RpeV$6j)aP|3&b>bwvqY0a(lZZ&P{Ert&gJ zuK;)g+_3#{le=yE0o}2yBL4&bc2y5KOn}FB)lclJp4!R%Z(oi3KfMC5|M<cl_y3Qt z96k#8|LK2B0Edt79X^#gd@OhPME8I0gX5<U4xg$VscOg1=%dr8PnZCL|D8U47IFsu zKYnpy|2tQGktOp#@Gtj2PXMd{m-pPeuP&uuUFiP*jlv3G{KNl*|6ly?`s_P$`{$e6 z)9-FixJTbzg$cm^ce_{PcK5scof`Msa{R;p*K0fw?*CV6-7jMT)OyJM?{U6X@IUbH zQB>=3rWXG9g#QunFZVwtfG3XsGXK|$PSty!tQR53A04arJW?-0z<-*||DH(=qNE1T zgnIbji~Udd|G)lk@QP}{@gI4GH+qLPdJFiMHhLqT0N%k(-a(B%g#Sh#f5t!i9}~c5 zmn>i4e`k{~BL6r0ZsWE#`)+CW+1%{Ax!H&P@4K-X_@~zY@LS*Phv!;u%@5zzlpmhZ zK7QcI>~9f1e)#%Qzy8ht@9&m>fFHjp1Sp{2;D0;=gs1R>fAc8df583^fczQ%!u>x` zRUuHozq&%8hC*N~#lY4I6ed7h#lUvtf8qO|ppJ?N{txP`2>%ClRSfE;6xdxcNbr9z zrJz1a<o`c7_J8mIrQm_eL4%ZV{|^@Y5B#(L#q59aaAolbWwD;JSYJ7Kl!|z?ig=8Q zWSq?Z68L|jiew5mO+_+YMKVK00{_oek<3w%%%%IkWWFllAL00qmZ?fts7hCIhN@B{ zHL0<h)I?2crY1F43&H*0N-e}jJ;X*W#8xc?{<l{TaZ(SV`#%-xsvhb__zx9vUK*i3 z8leLIS80T;;Ryi$uh$6Mpb<v+*9hCJLHB>b|8o3?v;V_)w+i3WI(%>I@O`bq_c8th zT1UYDjQ<F6>j+8f2>4&xCK8u_$RE$JHjya2O(f*c_>YWg8x_?S&j>uD=@}8-4uwaz z4Hx_$O<Mr+4<-5259xmNJDw8wfB)}T0l{3*ep&%2@IZU={{d<r+TVUpjI7-;9d>bl z$8<nDV=)0b?uhNUJ+|Yv*p6FcJ8g~axJBmwPVhfXfP)>^AMAwI$^E|?{y#*~1UN(! z!21w?1qA#bB>ZCnxF7257S{#2#&vOt>*5^W#Tm!{c)I`F$9Hvz?`jv{)i$B4O+r^| zj{Kj{%_2eOf0_V^@IPgg&>g}5!UUlEe-gDcsmBryp8zd_|C4(xNbWJ8o0r^kZgS5# z9Qi+m{h!inIyWsv@IT3aa%%5M+(h_4wKwoTKDGB>X}!m#^%=|I_|NzMKBEp(z(3vp z@jTpj1V{cq0{{0Nc7)_Fq<i!a9ZI<W|EYacz(4%Y9s5(0q6sh%PspEw`TODckNQ&s z2AseI7|{R3KuY-jhy0JX0NMji3h^s|lS2l=|LKS(z@YRIgVING`2I(K(5X>_PK_QU zeEb9dpCbQjo|>SUF;O#Pk|z0ois1jjnbQYn&g2O&ODhxppQDvES1XJCpS4gsi|_wg zz(2nN$X>3Uy;3{dKpXzg{$Ky+Sm@+fG5*Q_)M<NN^1qYrY4(4v+mKxMA-U}TT(6<I z-b3?zhvxbX&094T{?A)8G;iIoJmLP&{?Fe!jE?`?hv#n}mM`-^?*GFJ_LBb#;D6vB z1&=5ckC6L+<e9LMXTnFGi5Ph%a^#sPy))5zXW;(>dPT8%MF;hY4(ZYHKVH8`hJXE{ z6#Zh9reDnXFFs26FFDSg99@jkN1x5$vPPdp*>e1!9&--<&l`I#f6UqZv1bd$o+})C zj{Fb#GyaQz9{=&>&xP~j2>%z*cs%h6Ku9?L(^Kfu_>xQGizxEHFaZiL^IL$+69oLr zCjeH!#9a9Q3cmlDl!ND$$-)H4yfP{CD*QhM69A=OqfT->0R;ccUjfMcKQ;9_!u@}0 z%8jW>H>Lsqi8rPt+?W=BV_MveX@_q9^nc9F=?4(wKl;{m_+OX+5w~VU+@29e!T&R5 z{=YLzd}k&m0PxTLpA~RtmOq70fLi>I2{8NbyR&yvb9UUDvz^27pYH$n=Wf0a{LkHZ zAHn}~3I7k~t>x(cPtEru`OouxIN#^teD8<zy*T#&eBd9i02u!Z+#ZqtT{!apW8i<G z<D-QRj~6;TS!B=nw|j#7Km5Ol{lCcS$s#`flmCH#_CF@TVjTZX|5<GM59Ci7%QGVR zw*>PqHK4OU$$tfhAIs5yLd$6a{I?SRU;dn50X#QY@!SyjU-29hz+?sez>{79taxs= z@`d@z7ZxjDSaQ||FRWL-v@v*TEBGH10QeXDZ}`gD@Rcj)hF1WFuRILl|JTUN=(RWJ zWAxh3==Cb2*Q<@*tTukV*7(gj<2UP#+5g6GHW|Og1lVHwcB_fp|0ZvDn!Md*icf$_ z_nK1sOxgdYrGciH0Pn<R?<8jM|2z1f?*C@*!_D7En7@z0{onlEeoO%K_c7-0W6j?m zGJhXu{yyIPeS-P>M2oUyF4dwejVA#6zx=pW`3cMNla}m%%km7%icG7DY^w_Lzg0!9 z75Tq_E3~O3{}cWz&stZ~{olIsg0<lP50`B|T(S9Z)#k%Bn-AoF8|t>rhdZ`acWgi4 z6~KL4zW>`+J+!TQWLx#vw(5y(HTmDJ`k7tzzjoFCalrozhmSAqKEAU5_}c#C8+$tb z%kKY-|Mw0b%V+|8s^BUeJ|XfySMBh*+TqhjN5cOn$IqXsPZTDA<Hygq|2tNH#sr|M zzBql5<y`sIsp5+>-~XM<z9RVF8UB~!AO3fF`^^RTfBnq`z53<?|05j#W%qx=zw1BW zT%UfYo_u$GO!#+w_}%rvch~#h-R{@8-uv!)x5n*Gjoa-Sw_7!CH*4H((EZ=-T8;bF z8uu$TZkKD^FV(tVtaZOo>kj;%uXR6L>t0gpQCx>SF#!r|JqqeP@@4q<$gT6pLG_+l zb)H%Eo*DI?z<)aV-;<C3p2zDwkCOjA57&D#{ykIcJ(KG_lkf_lL6p!SiYNbz4sq;% z(f$T1x<M4xAc}18ifHf(N92F6&_*vQ2mDJKz3BMg=oQ%L70~1z(CF>o=)Jdz+C$;~ zj|t%Yca!(dCT|@7cQ*NKZ}!>N<h`}YXKS+$&i=pn-)Cd9&jxONv(LI8zU!L();0UC z{o%XjhadNI0)YBL41R(1c>bRR{0o2ie|`)96Gna@z_0LIAP)gr0m6@;|4D)WfkJ?y zLZFgDfRaL>vO=JW0^wg(AxMqWPzY*80sld5$p1lY6@u9Rxc>)rApE!ZKe&rhP&dV3 zME+L{>ZKIiOG(_D{4W;#|EH38fHH#rg9j-EYbuLz{MS;Ju>ZwFl*Pl8C1`}QWF-8r z0{=@!DT~J_OUVDq65RhMs7Qc+!T(cLB#8Ylov9+3ts*7=t4imoNEWC{7phA5_#d)F zRk}<yWVvbxCV+ve)KE=oq#9zZD)>LtLJi0NQ25^(6F@DL{U73>M)-Gz{58UWf8?$n z3jcemhXViPfAuh5jW9m`!~fJ;jWG6qIQ+j^Bb@xN5w@*W`1V%eJGh;#BK~d_zN;1a ze{ZV@#Q2W{{!wu2$RJ{Wq_}mYq)nu>E$}Y{{6~eii4y#e2@uKhk8T@<cmlxxGz0|s zV++9l`+vtXY(KpV2;KiXp5*@n?LrQ~|Ac?Zf#1al{>S}4hMt7~7%Bh>{*P(D7ygf> z=kA#HyJBeqkpE-Z|FQ6YhwTSDY>(}*?O+G;|3M0`05%?^w*ch-Llpckp8%a!$HD)d z{V)OIXabP`<2rlAbr!{S_KZheJmR~00RQpq|M)I0@PB+4C-^_13-FH#V3*KE@INL1 zvPzKqKe3w`XUh0DPV8oclIRrx-T#wt|Ht<~-Rb@>_&>SF;w1Jzj{gGwQ+km9Q+mk! zpDe%s3;s{-H7&K*)YM*6QhQHH?KL^I*QB&w6Dh&}m;i$RdyhTbXUyT=V-DlvpFX3| z;Xe9lee{p?(L2(2q~QM}Gy#Br^8b-Ph6?yU`o|EC{r`u~u|Kts{i!97{15pbm*JmY z0bl|E|0ntlpjz<H69E3F2KGNWsQ-yU1AzaNn*C1>X8danIH@!6q%JpPU^-&|rw<=^ zYQ#YDKaT&vKLY+o56T!bC}XT<#yHIk_J77t|7&JW*36u$nK@17e@p<v|7@)+_<tVx zKWl+j)<UhU#oF16wX&CJWiQpvUZ$PBLgxP*L+xy1?Hm)G98;YfGo2iBog7P@(^fh; zHae$m5#!%Mm+<eTo9m*R>#8gF|ByV<kX)}Jg8wlA;QzeULk0im!~YwH<>UCjd076I zVVD5<@c)kCg8vJE|2@MC_6;xarwRi{6b6kb6#Oq8Q5Z7fOy~&mKjB{w6-AE}{9hE) z;(z_3IQ`;yJ@~&kNxwLm{h!MI#{@VsO7MR%{C{Fp2_OH@o*H#FV-)WHXET5L{~Y80 zT;3Sq|6Kmq^95th7mgwPpBc-Sf0_X2OU9l*i-hC<IQaj<1&SvCJ>~xY>)fTk1plAC z^cPk@@g=I|_)o6@;Qz}LQ2{j}|H=f&UwFd*vI#)`r&j=3S1I;C@IUF)H6)(^*C&(z zuTMUHeaf-xQ;uGra^(6HKK|qW&;GwL1^6fb;}am@|K?Qk|4s6L+)Ye?X$Nmj!~Gxr zrwIW6-<lE4_-FqU{=)_T-<c752mYTay)#pCXBNT)2);9u{XbLY|GTsHqC2?%&jS8s z{=YYS=RNX2+6MgJ2ma@5rsi%U{LjGzApbv@yYBwnwGZa5p@9Fns~*mU|B=tbc`g1Y z{6C^R5cz+;>*M)^|HtHi#y|YOz~RXP$0vgS7uu8j7a|*qCV(|Q`+2(1^64VE{OO1J zKa0#r{)<hYLjH?o{(rWZCcrZU{4X*1cL~cM_@`F<yR^msSOJ9pf0r%$Z|SoC@Wce5 z`#(LO(+XHl6TpZwUh#tc|H5R&3wi~x;-~+uR=%`aN&cq^u=1ttN_qw0fL783aAN<v z7`$>Zd`12@5GH`!|Aw>zd<<Xv(gb*euYfQC))>86YeW+O_kXm>_|0bHxAX~+@!M@C zZ+DoK?hyQMQo75e6rTX?HDUjolm-C*CZ$29a{rsY3o+ySzv(;pKho@dB>Zpoe!m&} z-;DilR)z@>Pv8H%Pckn{vM5WjC?o${lpnSzJ7QUO)S{g3{}$yZ5%6z8{?D>3&$g_{ zvHa=(d`p@Dg;wPMBCE<0tID%hmFKMB{|^_rOEw=aTYtD>P5!@bP2IGqV*gj&;R$fh zrV3#K0RInd2>;}NJNUoqA6xdnt!x6ku&sV!SN#&N00jTr@dU8{SZe?Ao!uw8|JxJ( z5ncgc0#w=){^kA${y%?2@V^83{}bfz!2ahSUz|RE5&ZAS{&)QF1vyoIajg7;2>|~) zms3u7mVI^N`@i$Mug<04;D6^gU*Uh}*Wa99QSiSD9sj>m|9yA;SMWb3z;~DbH~+id zuW^I_f&V)-uD5GkZ`HW6|1kkvuh+O;MYV31YX$$i!T&q~+}Qta#kKCmb#6s<?uB*k z1$FNEGy#Br_Z&*_zei?Wi~l{?|AhZz^&Us-J>>o;{HMtL@0key*NcGvILh;2gJ%pS zIw1FdWP>O9ztJ<i(JQP`6xt{XX%xx*FA8oH$?%T}(B$Rc<n7<&wYSM@4+Z~w?P~G@ z{{L?B+JTxe0lc?0vHzRBA^$DS-kT^K|GhUhdvD;@HG6~o>zlpTHv6po;j^aMXY~)C zRkQ-|^kMe<fckzve0&J}cnUv+--7mk{rms(4_f|+AHNa%!Fzf1JLu;hWq%(;|Az1% zsQjA@|0)W>z`x*sb%kK^zamWl^1mYCzpWztAN0FoP<zGT4vONATxUgbXT{(yz`s&( zcdmzGa8H^4@$nD&ANWW8F#(js1C_*sl*NOUCBVP7vRFr1qN^-{|A#6|hAT_i{}MfA z3H(1A_*a&WRTlg&nV>A0s4ShNBAKirouVQY?*B7Yq_b3{?0+fzKVLOufr@mIYKY+f zrR@KeYN5zLHN;RY#8@rFL@mTjEfmLpbG1<Re<<TW)J`qbUOm)NJ=94()LA{;MLo<- zJ={$_%tJlQQ$0+i9`2<c<_-LFIR38&{?)_Qs)wy3|A%kTfd7GiYO6;0HVv8ocecXu zKVlcRTfjg0Kf<3b|51UhBY=NQ0N|he-#U_y|K$Hr+2ubfqD^!}TRfwp+C<~{AKf;3 zf17At0p$Pv^f#CQ)Pc4U``d;C|MEg1|NR&Oc>XTM1US$R{+Gn?1YrM*V}1{cX&)5Z z9?yVSngISW?f1oYz;kbGhrO5pu^o0FY`;5}@J}72=MFjk$^VB?$1R6CVFGMA)NxZ> z$Bl&lPV3@2;klLr{>lGwz<(!Ss<TfV`QJOfvxx9dPmlP{?(tpR;D5$H{EwXCyEw*^ z{~Z#$*t7pzUIADocC}3CYLVE@BC)G^5={WQ|0hvKRCj}<ZU)JCc3+W9$Ny!?sK*lE zpIekHyZ<jp=`kPvPw7GaPw6o`r6-z|(sO2N&lxE_r>9czzkCApnw<8F|1km5dXJ~$ zfA4XJ$^RTp06P93k>OwOXrGZs`iubnIl}+ZzC(}n9g3%b|6}<62lD4v0LT8&KK2Lv zj}-v<4?ZsU|M7mB+@KSG!vA#n7yN&sfB%+F;x`}vg$Y3TXaA=U9*_?I;}w9;fOOpf z=|hmr|EJjhm;k5r22t=o-~Tf(0mcp@|D*Amg8wroGXAFs{@2W!J~(T};H;U0vt|v> znnPvJ9W3}id!bhLA}zuHIZL$!|L3gK&N0x2|8tCVe)=EBe@oo|bxy<o!UV9>IqjgE z3;a97|3g~*pXWIwS2QHgoAVix$M^sI)kE{w49#CR6#ma=|K|(--v<8=%in?f|FD8x z9NqsJ{{is-@D~4{kqjsQhfzflBZT`u{9m+xWYK|<MKL4k{(nfX7{%!oC+HQ+{ZGe# z_J7G?{gNa4B}es3j_CvcXHV*voE&vFeU#vTIsQkV%i;dV|6>IIpFcC^e9>5Rp=1p3 zf8i{5ZtR8g)Wr*91^-{T2>g#bfAOz#^3Gm_|EUuApYQ+d|MA6_#}{25e})n!z<A(a zC|_6s7y?%&<X)X{`pU$dt5o*YiNJsMHF{=To0R!0{)PKL<NsIx^8~;On38s5N-Fz5 z`NmX~cw?&E|5IrK!2h?V!v6<vPK&)YE#?;c|28JT^r+j@BdMSM54}zPM-plVV*Jkt zyfYI8+?nZrmm>e)oweuQ?A`Zf?YcYbZ^A#d<KFD;_hxUqH=F%GoBcm$6XAc(h6i&9 z|D51|;Gg{e0RErr`*5z$!@1s%=6XMz=k;iw=;1ukqj`e=fq&$N3Giq>`Tw!Z|BjCr zP)`=vKUrW$5&p^lPiX>JKV4|`WT6$|e<3pe2hT<3=%2;p|7VLB|M34}Bf>wPON7Y( z&la!51R(h@SxNY(39y`>%l=!koaDcBsm%X00XPBw<p1T*4VOPRqFxwt<o^{f%$C0} zU5*v-l3oF<cxlP_|LK3(1b9WS01RF^0skvsI~%-mHF)J_@Y;=D0lfA!d@VA3BQm5{ z06s=<d=20D!vDDc!~ceF)*_>~>y6)TG=7Ww|0biiGy&j$<G0(5;s4T|CZ&I~|92ag z?lF0{*W}$k_J1JxzckqNoy7FL1pep3OyA=bK!n-*C^NbLfq%0y-2V^KD}b_iWLB17 zUY5+In3biO!~f++%*)~bV;1Cpln(rJSr+A4mKB%)r>!b;Ei3XYEAlNX3oI+oSXG>{ zsx1B=|5skHs=R3R;gYr7|5ogOEAsy>o2uK~9h<7V?EeQgz<)LTPxpVD>L<2UPi?Eo z|G>X(^?$b2&pAv0y8qjLd<Fd5eSB;C@vR;E9}~d-(|fy5W%i%S?LJl5Q<Zj@0H4|a zpR4HjFPi}5e}~VXDVhLZ=n4FP{6f!a%Atzz-{ODV|EcmXj*vg+`2H($D*fsV{8QhY z1pi|KyyRYdb9w&F<-c#v|9yA)mjnLU|1M9yJ3p>*d0gZAfTQC-cee%;zy<hc|3m)B z<yws^{C}m^^>VG-rCPU(weY{&`C7MgwXSDt-AZa*i)&qh|1-5R|6>B=)w#p}r^)~B z*>&z&b?%vU9vSr>r|Lb@>*0To6ZIazzu^DF4en_Tz`uJ+gJ&{FAOAFX#y5CE{)~SQ z#y?Gf{S6*`{P&D(#Qk3s(I^UU^c3*V{ufCaMdC)8|AU%50~$sCsL5+zlZf%}wY!Oe z{LxNsN3+-VX3^GWZ=o&CUW|YE->U`x>zlpS{qS0g3Gf5>_lEh`{P2eVc><9C5zO!R z!<*SJV7}$)?Jb)FEq^2Y5dOa9zqb5f?FZ2cAoj!g^!!cuEqn5R!rv<dDJldhDFi7i z1OfjlGW-XtDFnm+JOP4RDFnAx2yUZDwN(girx^UZqPV@HxPxLa{NIW2FYc@a|BJgR zin}X`yDN%&Dj`WPB}s23G5a6*m-JJT^jDG$P?ii-l92zE1pnjy5C7x-kK@0T{VyG< zEY(w%j^aj>|D}H^ODCvECn!tde*ynE{!dd0nXZE4f5<GAkl89Bb5ug+sf5f|30a^T z!u}6kq8hSPcKiqaLk(3!jnqO-kZP!@T9~<7m<1jG!>rZ9Y}CSR)xzx5Lmkw^9M!_$ zf8gJR@E`839`4D(|K951K2(^WdiW~!@YNdOYt_ToX@tx1AF)XzVzWlX7LAB)s8s~+ z|9tt!@gM$=+}$d2Ppinitt0ofj`VMh<9}ozUH+pO|51|GQPMV4NSmloF04&-IONYo zLjGKI8^S-;Hj3p>{znIB2%v}q?NB%u#?R20b|@s~_m-qFJOQu*aQ}}*<o`h6U!H$# zd&Kysw*Y(C|5yRLfd7LXc5-z8Kg9R{Lmg!k;1~aIIMiu9{2$j5D`0J0r#0;VpA#Uy zlW%+{y8p*_g8YRE;F-|bBcZc<LT9&x&MpaEkaI#8Cj|ck|5R7I#ICl9U2Qn)#I7^} zlDb+XvHz30nR4*IF;4))<Zi+Qfd6R%kpH_cP42!V1@%~z(qkb<{!eB9r}mhW+7r!A z?Kvxz{h!AEPwP1?trwcY{o?;#6ViH(KinJP`=7Dof5^Z0m?OPMAMOqO3;yT(f1i;@ z`=Sv?`wr*ef0_Wt5RU(Sbs>Lwz`x*stz&->{&D%2htGb1f0_Sf_y2ytKi&e+1UT8h zACCVgg|Gq!^-o8d{RRBP|LNKT(%Ju~cmkXnIso7QoI=6`7&$0IZ(xT0po~!iQ6}#H zV+Li8<HirloS;egpQxENNi%D*X4cffS<?o~{15!kmia$x?%?csgR>WC3I5OF`@i7- zoE2K+f8ZbS{r|M7&S^94)8^WzE$IHAYfb*owbjYB*Uc6DFTelix#{M)>*jjm{;w<e zKi_9a{;DB3{*(XL4TJv+)(<V%IJ98X(1Ojw3S{^HVTC(}73>^VxNA7>|Al*o7w#Qi zh~q!q|Kb1PXM%?V|CDh54<8}>{wHc=QPhYtm;f;&i{bx+Ba07l@#O!KM7@$^y^<9D zk`%p?RK1ckeVPA(|6}@RkL#ZW{>lIPIQ~<aqt9iHI+s0){C|4%xm+~neBS8u`J-j{ zFB}8^Unm-Lp&0(>;D6v>?*9w$|3x%T{-g<T{?a%c|Ib|-hs(bZO@PaP6;m?*%O}A2 zGgrnJQWFZU@GAhuf8Nyzc~>W%<^=x({|NF&m;mV1^-1&z5T3aIb9e=C?E2)R=*HwD z*C!MHuM_@-l5b2&!YhEAQ^@}}fqyFQ)>N7Q@e1J9v;*k&wEgh^?P<|6|4)y&Jw5#P z^e_$+Amq*rDdS&!X9l7PaCc_l-I)Q5|9#|to&fh|k^k?(|Fa1H_h;?6KYRQA+1u{J z|FgH;hyN+||7^kk>mSTn`(Vx*p@(yD{O9{W{Ey>5@IM#$7xE<k&+~XZ&;8LnHyr;t zm&cd@^PM=y$MYSYpcelxuzj+?=E(wU1pITBvitu+bD99aKaT&4O#cD?@dW-C89zfb z0Sx6&;Gg|Z69E2~w{*pSOPBwLKN9|hXaYQ6#w}m=d<91<U>PRB3&Z6v;D2EPwD_N1 z0Z=b3;QtjbtvH(%xc|RGb}L`muYBdO@|ELC^1rjeYZrspuE0O%Zt&XE0RDgNW%$OM z^J($F;hWWlvR44>joxlBdb`nx{crSkixIs7*e*-}<I=y4OLrNUvj0ngfAYV{yFin7 zK_>6uf3XSt|DOH-p8Rk6KEm{Ur0M%8)A!M)^a>!xw2UTz+51CgjDNGTM6)uy0!TJ1 zOEE7?h5yav{x>f_ZZ7!0BHf}Q!=eKJ7l3RFy8okG3rv7Y!T*Jr0G5?SmX#%zm1nv0 zmLGol-|E8^s}EPLK3u~Dfd8#O+_L^~+q&uwg8!|n?paqou&x#+0Ps)#x2gVzduBua zN6&4l>Hcr~@uh7w@c-KO;~U_gE48KjKjEJ%7bXB!fZ%_-PgQoGtL#5lbD!)#qtD3U z3nl>LpC$nCkFS6j|LlKE0EZ7;<yX7{aIE<1ST2w6|Bmm-|Hu*eXa76B`X=k;H>Vfh zoS&ob@W1oF-<_X*cmC(Q^HYxe|J~&ws&RQx<8q(E1aOi29}~dkW{t~@8W;HgD*4}) z{qK6I*7aho>xEj^^R=$*f7g;a^8cAyw=;Ea1zdieTV9=8Zk=0Bom+OD8{^+Sv)=tw zoqKw{`^kFu6ZP)L>)nslyW{wOwBG%2y?a`{M`{E7?~&Z#k<{Rk$i+8!#5H&vYVbJN z;1Sz^3E**{!DBy9fT%_f-2WpQaQycSBmaAbG<r%KJtd8vz`wZBGq}++sFCm=*aZBG z_BD$3Hp2hZ?k3T$CehzbqMc2m9ZjO`O<voZL|dD@wl<3(f3%tW5BYm-;2?hvXMf}c z_OJQjwHh^hulnH)@C*5p{D0>C1DOB+oWgIx9OIvUx8Ps)_rD4MfbbuT*#BboKkolx zRR!`t(ohh$QiT7-trf(A|Jx~w;eX)2y`n^Z|Chl3z<*aoNjKnMNzy|}0{o-iN|HWG zlD<mPKa`|@DoNS@(gDD~l2lV!D%}5dl%=}L(jm$rLzJcL|B#W&ls+W|{>LbXjH9IE z;eQqBL>2NsnyL~qO(k@ON(lTvTO}0!pQ{==UnO*bDuVw*7psOXRSjLH8n#?DY^7?L zfohncYM7B)m@!WP;2&A4g;}YETdRfJa`tNB4r<|!>S4}m;Vx?7uIgdHKk{Jzdy)Sm zeAFX+)gxAEM3Dd0!`Es=tk;Oxpb@!IBXW~Q<Yp>jt48EDDq@F5#LiYxe^U{=TSe_@ z6-D@O73JR=3I30Q|HZANk%S`uhqjK!1mG`!q9a<9|ABw@|NiJUDEdH~{Ri42*#waP zh&(_mAR?x1B!c{7Xa$7Dw8IJzCO{}n02%`1|JZhTieqKT{D1KGK#GRIzJoLY@Z5_I zwcm57{q92@5KVwX9d;tY|8X6+;r<`j5p9X<xcN}Wjky2E(OZBGaUC%M*6{>@|Iw;= zegzQU$uFUkZ$c-Zgw8(koxKt|i#YOsB3=Q&|6N=$0TO8fI3>z*NTLZ~m(<l3!T(8J zt&_T1CBgsQ$p6V*&62yBvHyX8<79dTV3>mYf47y4{}n0Sm#1`JmePGG;lKOh)E<iv z`ycox|EKnt%gsscF*~j2EDo;#regw-|9ehN>xD1@;D0pnaIXnR1pm_n7<WY0*dx8i z9PK^&NT1P1`;0m&-2d_Y58eMq9_=&YXrJN7XaWp7MzR0<4#DxC6DEN6aUB2u&^iwM z<N4>{6TkW&m;XNpp8RtFUICowH}GV?0Vm=Aevp5E{5aXKA0`0&pFW^pI)4I0{zrpp z0-PG$|CCn$Q#u1Ex&JeU4Wxz-%or(8e_$s3KN|k$2>}29H7IlZpsWdl2>&hqpQ1_r zpQefXfA-A5*|Rk1_|NzM?D>Op77T{}a~5gA|2g>nXPH(GTA_7%rPgUf&RF}jiS}tz z?bBvDx#rrr{QXa^fPcCF^PF_^oOSbDbn{#p{~o$|p1S0JFWLP+-;X9h!RjITYx(}a zf&GsOK>i<Eux(i3_Mz~9;otE8u)^KL;QupwhXMa*0x9ypnDH+q{}+W0FA5uu`+rg7 z2;jdcdPMR55ydehXaWfSj~j`Pe`Nkol23p%{j)g!AJ#v6R1f!m;J@Sq{I5^=KPB@& z;h+4E<Nv7hr$=D|oX?fxzhKOT!qNEtN9O;MF~9hK%!PAf<j4Q97iIn*ci|F-z+V?G zjbs1w1h_oz9QD^(jwZkrp$YJR(G`9R@W1}gzdBwx{^S0i3;$o6fN~iB*^K|p>$C#M z|H1^gKI!E3$tSN*I&poH;QwPcWd1*LV{#hB{=Ydn<>r*+n^WNb#9LJSt*LP`|4%z~ zn_dCL-kuh7Tkt>dPyUa(Jq`GexIHcW_B8lE^bQ68)A9fAbi)7L89{eu1l^qxNX_)W zH*?>;nS1Ze+;eZ{Zgijgk9OXhMaTd9vw;6?_h-TXTkp>jCcvf#vp3$Kz5c=M^$%yS zdw|&g59h2V|IhJzGzZ6jyaE9JasT(?M33eY{yF!@^W7fHCV=zfc}Va-<A1*W6QKom zPZ!ueW&b~g{})(2U10go0t-rZ|2O+*p(zFVFEl~V7Bc=989iHMC~L9dzhM8bEm@8U zfSdon+<!}O|NrU#=S!D7U%K=;R>1P5)QY8qe+vFz#<jcxz~z7WOC0~rms8~b<*zJP zys}#H%6i2s`UGeN`+vnN`xP_+$p0(x3V_}M2ou14<!g_Xm;iMD7bbv@!5d#>_-2*h zf5W%*36SC24TeAck5>R&jY_v8yaF&T-N_SRw^8XHqj!6aaQ}Z7VEhgffc$UrPHg;6 zV*Flef>!|V!%S!bkpE5K|1$XhfGPXmwCo_h|AGHaDe}K5``@gb{BOqoH!DA8R(>4! zfAflTGxooEMW%U0mPJLjc}0!|``_Xh|65cR!~Yf^gb6_YxBPI?s`8TMhs*4L;2+(9 z|E;QSA?qrd09G>p-?y%QXjS#ds``<2^<(SmC)U+ZZK{F)XV%sK+Eo8%1OI<~K~=xB zq5J=98}k1fn@?|TKb6{kdWQ*MEBC+crwXppmOlYv|5w||{Qptrf5QJ~yU$-}2oV0i z*mDlm`0<tSU-iZQ!&e7X$yI!HD5tOj9Ll~r;Qs&at0VdUn<IL|E8x{PM@#_VpZ)JB z_rKG>-<{b1PVoPe?@o_v;D0BX|G$&}@6|Zpt#QWj|4xnbty*XDe=Yg{8me`<S_}WX zT;hK5ze`E23-DiD>vE>f75*=*a|QnM>s)i|Tu;}zq3k->tU9+$-2dy{PSv}m*SpF6 z?{=)-4fsD&?*{y*)w|*TpWNUE{3kWICpNezG`Iu*?0<Lmzx#m(_x%m-(GBiV4etE$ zk9&B7M_3~j(%=F7OB+2Pe{rJ+@E_dh5lF{>Pya^GecawA&pl0^yPG@({ImZ(w>Ke7 z0QjF{{BLd+0skADMeKjk`exC(X3<*8YwZsa%in8NvlsBciY9=U?+-5@${Rnt<$3+Y zzn9k!ge}nWZ29r)KoI_!@KpFsEC^rbeEd;Cte`;n|4sIv_>cG-`2RQfKUkTL|45?B zsVhj-6vX6z1&Pf6m;egmw&Z`Y{QfWLs3_^A2>(mEC`!93NihMsE5iR$KK@H_{|Em2 zDoN!2m-bhJ|3d~TOEs0?f2p=oh_-Twj&g`D`9EZsQpj-SkP&kKk5Ud9tsF9z{r{J8 z$av+D3CbapR6-}IgiIm)<M<E%ht5<9o23#uM<sNwO6WY*F!+C=YAF1_MCSj{<*MN; zTKumXW}+Hysuphc|HuE1Y7tIq;d1|nyQ#_U|9t$H;olGbSC3eu9=S$6Vx30hdiBT+ z8W9^cqBdzn!T(z{A_f0%Zxy+tRV3p-YIm#XJyg`bR?+Z(0HQB{2>-z>f5HDDkbmoF z_#cIl{P#z;-VgsrwK)(;@~8F#|7{M$2({fGLq&67e-zaYKO$n<A({ZO?IL372Zn(B zMF7cP8cRvo|NIKz_uzxS2Lb<w$p8L_+6NqJ?~fnsf877s|1<%19b*5-(FE8L*I_&S zAJ<_U`JYz6X2?HY7FGb?|2wXW@3=O;)0+5>tKt6y$`2DD9{%s-o!H4+@PA@wQ6k^} zF#!@gy8-`6lyg!Sr=%{9NnPN7hor9d?0?{&{GTlNpI!l&Cv`PT>4phln$pcAxtnoH zH=|_se`+^_)b1-&y2Jm7{GZx=2}ctkt^2~X9t+aCxA=cf8eRdw|J2OGJ!Ufg$^S=s zPCeXn%HdvU^5I^Sj*$N+!v8q_AL;eikzVls*rPN7@TB|y(cZxSsAIkLkM_aGKlJ?% zH{uxlPZMC+arXal;GfbxPU#%~18JY=3;b)Hpb4M_{Bv~nKS}Z@{4@Joo`U>k{!j1U z51qnuVE<DC`w92|Q=0t=|8oCl==6vGGlp<O2V@KzK>i;wFmuF!Ox*wV24?B={a=^> zE%$#+fQf_X_&;e7?*G|S2W3yy%$}~9Jwr2lrY8KKJ$rD@9L=1$gLBybm;i$RPcI!z zE!WCf&i*%G{~Kuu{wMsC|Fv_iv~#Vs^K5nU>~!+%b@Ci^^Bi^ZoOJSCbjbgF|A+tc zMY{Q3x&=PE`M$aZjQ@f)@c$4x{%;skxN!(x0TgZ-TDWy+;kKcL+v)y)=I^2K|C!yx z&g>Zm|DW+6UKBVCoe3IVBpzNQ8F5BBT!#N}_<wk@-2X-F|KivY#Ro^w{XcGGN&Lu? zgpnnT|FbE2XH!R(r0JbKtatVZ`Ts1A|0nba|Cj*j`sYsRpUcocm#HuJ|ETjh!2c+| z{EwpJfBtCTpE@(<V$tXe#bYj(jJbGr^o6ry(8creE{?f)Va!E5FOI!P_#X@WU${K> z{H6bgQ@f7JDq+KaKQ!prVml@#iefi*OLuqMHFo!mN<2YImtZ3)AYeDPj)@>CShW7G z``!<X@BGeL>#VcZckT5IukZh#>)xBf{a@C#iSR%0FN-Ds;h+4^W!{*CR{$C4#$@=P zCcw?f^!-nB7jI4x?*A7E|5MN1LUjM9R{-4U+k*e6CEcEOlA4}yXIlL2=_u~b^w>Ky zfd3Z%N3s7Sgb9EZfbW0q>4e<X3Av{ed{2k(|APN@;C~4w!2Ow``!oH~gPFnvIDVh- zf9wH8_%E2n{+})Q9}@unKTt3m6JX!NIeQ<@+4FD?-~Z>*1b8%O$0Oi>?zTsB3IC7h zZh16sGw{#;-}rdmhR5^Kx+n9<|H1@#vS9U-`SAaWC-X4@*#8T>pDgftvcU5xTIk-K z>$8Q(<=G-6OaRB{ixA<T6YvlJ+cx_jAO9fuUzh-pKm2b-{-+7>i~nf|82y8m8UC}> zke;&iUoGPV|Lf|#($#&%Pxv3-0=?FU|8?m}6F~0`y#mmCV@wm^Erx)Z!CQ0s_~)&q z{#$wq6F~640ZjmV!*}F=>OJ}2@V&F)J6FT^uJ{B9{x^E>NflxOEH^4#VO+S<xNwzG z;VR=oOn|lUzww9lCLcC%@ISo*zyvTU+G<*~&9n&q-wFSl6zw)C+GAR@*R&X~01lWI z9W*OGWLA9GlqSGmX2nO%=>Crh;A8&L*X*Mo{BQnIWDftAU;+e~mjqgr1mXS<|67!t zFfR$SD2XsHjkI9@Ta-q_|CXh37CZq2|67)wvMfDqReIK{>>T`WS$4sS{cly4YE_nI zU5+xW$}_FYFImz3Uzh-wZ7Kx+(*%J3Z7Qx?SKhFxxM@>y%chbhfKBB+?g9L7Q(0hB z3I9K`t$fV*e`@>bneC_Nc7*?zwx9m7`}E4L>Xpp@Rqx<`d-%T^_%CGqv;V6<I#4AJ z)umjS{b%^U!r^lz{O|CY{O|a=%Heah<L7DzlK*FZexV6aEyF)e0QjF1?*B9a%D*~c z0yO)d@X!8tF8=CVguc0aApAQQesg|L{&#uHz4`9)`n&V1Z!WLC3;uU`{vG~zf&Xa& ze0O_XLp`c-dsyREP~-Zb#ufO#2mjM2KyJYQ?OMV=``_(atvk9>>y}^Zo>%Lh%d!96 zvfzKb0;u!IApcYBe@p-m@_)U@`8v;Y@PD1)f6r6(9*GqE@0n2VA>cno=6@OfBN{xz z8az)lc!o51p<oUZfc)R+C28~$H+YE}y+w^)zVJVHoc!+v`Tx!Rh5LV#_u(e5gN@4x z|Bc?jKl|T%Pt$TC_W$yoO)Jp$AKqJktk~AHe9MpJn`r{T|Aha4{r_{th9AxT{|W!E zT>E3inx9BE0U&$~0bv5L`F|xney><T{pXLufBxt1Kt4?Xm>)lWc?y3QRsj7^za5j8 zqZH+iDaakill_nT|1lN0<Cp+ygnz2F{PEwpHuA^Y$sfn@zrDOq2YDa%zfWg*AM(Gv zPgjNG-4uMf%lq_@2mXC}Dfsjz|NHh)@WuVVzk)9s2>&bi4&sI=_zqJb`NRJs;D1G# z|FxBH{P!EH=r>N$Z@i-4L`A<zihh$7{iZ4c|9;bz{AMWm%~bMl@&7y}|M|-P3zYm9 zD#8E$OO*YWD*Njyi*Wo$hRPx%WswPIrYtg75&SQ*RuS2#i0xFw_9|ir6|tj=*jYu) z{ujHch&@!qo~mLm6|uLfc)6;0rK)(9s${jQWG%Oz@Gl|!bHe?f@h^q{cdAKual-L` zUn?ns{|^%W0}i(eIMOQMFYaiofMcx!j<*W%X-%>J0~!Bdf1tQ^AlQ$jT)^)^fxibe z;~(tj6(GYuCII8V<q7t;K_Xdg{X^RNHRl`J7Wq)^j)%58hE9<Gj{^TE+S3FO{ErC` z*8Wf!-~Yqf?+@#+Kdd93`@%Zxh5y3@{{#OWc7{_s!aHma@3@Wq5BzTqr#6KP{_nUU zq7zy#_#gNG$j)eWWam|p>Z^eNh|bI5e~$bg)!8GevoHY!{|ghqF-qMrTHPVKi+wcv z9}^(Di*-yFYux{1x>!(M%{kK;^1q4T|JZJZvE2+}yXnXN>i=#_W8wd9i{rX4!UTxx zz7Y85=>8wyeQtb@Iq^Ma$M={O-(x1HlhAWULXYVQ?0-xE_&=ei;D4R~J%NAnKkonV ze<CIT`#-VQXsS2xPySEpO_%>9S>%7lKl}fWp-F!Xf&VF*0E2{1;|KY_WdaO5gB3va zKhsaB-<f{>&LYPD*#Z41OaKjz{eO=Ae{N`hO7Q=P0q5EO=d}h9{znf)7qkbS=T`t1 z#t)<>Xk3`6aRK-j{6AGAdAdgO48}kFKU0Gyz??xB=MK6E|IcIpFQofFN?AHMW!aDv z-64YiF#+iQ-|YWX^C77gLsBhU{68!W{<j~>{vS&CM{dK?k;kxf&*ACb!_(n^;2*8g zq}I~$AO6oE|7*hk8Cx_nw{e31caONVX9WCzN$@}Le+d2`nRSHxpLKL3`(G>TKmM0$ zWuri?>>#@T!~Z#<qjFA+BK(JsV*ii696kDSEd0;-C;w}+|Fv_Iv~y2s=bk}~fB65x zn7j*Pa+Am8T^xhse_ra?{Is$8>G1#9{0ssA@c+2{tZ`Se$6d)82mfCI{&So05BcYh zzY6?c6$1YME$`Z-JlXM|Ujba7c$u1%!{IGJ7KI5wKQ6)lHzoo9zxqGz#^ltSQxM<( z@d{u{@~tWGKTQDc-0i7nZ%;jQdm1AD-zNN{M4kW%x2MHp0^AY&j|qVL|Mcj)h>rij zKMF(lbi(e<IB{<VO#qqybpr2E(tA3<zvTYE{`VvQ&-A@N3&;QCjQ^t#W+C!_!R#Xi z@c-;X1+xzp%m)6+{|{&Hr3C-a+4XP^@Gk`Xv;TpA^8cpCbLsy7cpm$I-g@Bw$-K4H z{54PJGydWK`S3rtVENPe-cRRy5&jo=JYC>UEp(INAO2tH%sDas+5eaTi|n2+vgK@E zEW-WY=J_J47mF>Mvv{%C{3Rve-}L1Y(|?wjaK`^E6@vd6|MWCKua@dlg8!H4y;`RC zn$mr(%h4+UdJFJIU-ylH9%Tss1OLtbH`RZO%s319U!PV0y#mmGC%gi%GkAyW4c<8z z&;)QYzyx^jZ1kS|Z}{HL@IAc(VE<zRcpDXB0<7d#8x^88M(ls%!VShB&_?4An~Xnf zHvX{1xM-_M(KeH!?IuM#O=SM(2~fPxw0OT6-T&zo0Q}GWZHfu-@i@N%Ape_v^fzPw zo0Uk-*#G7wLFOgF<|QHK?0<9I|KWcs+M+bZqBPc`#s6g|Ez6R~|7E8w%g$PsowH>B zTb3nTmR+<eOM(Bb%G0gb|5ogOtMY7XdIfOVx+2%QBHy~=igm?R>xygEmDjB+ZrD`b zw5cTj+f?3d_WykW|F)G6ZGeBe{{#Or|J#0gVT%b+MgF&?3Gmvk>Mi%)j_?0?1z=zG z!M?i4zPi}H`lEeyiG6h`qT@gCPr?5*0cZt${^UUZrwIW0JA9!DKvmNOpl20F`2UIt z;8^(;_@~(aPJ;hSzB-kBb4DK#;hzHjoBfXo;LH=i`Smx7{Qu46<#*}@_w2h1j{oS% zch^TX2>y44|L=46YFzKuxZbIS|J`oay4|XEyHV?Qox57=2LGcx?sBag!ttN|k5>Th z8FlXIb?#|(?x}U|DRu72+=V)i^Y!lM>OIcZdz`NK0R9F4pRD&l@q+&wJY(uTqw77Q z8ayK#Jc0l4U;H23;E947y#gCO0~r7CKjiPv`O*aNI?l2Gz5Z%M-bWe<|A!jA4>o!q zX!P3O1pj;QYx3UP1pj;QZt~v6?QHVi(X@O=lQ;ao?Z<M&{>KDZzUjyEKe>%RmLtMH zegCt3-H+vv|Jt7v{J;9=3YI^fD}a0<roI6F|F>t$BKW`m!Ee7Em*e;cZvoQ&aXC5R z@BEwpQ~tN(kiWuj!2faJUrEkKxc~oO{`dJ^-lvVcPg{APc3gXT-wyJ=ow&~OzUuP6 zT@-w~%KLPa_vQOP{O{XK!B_A<fBfUuUx6B+;HRPB2mcRN@EfAw2mhlHN`500{j?PQ zMk)G@R`k=B;opCpqW=U%fB1j0qW=^n|EYBR_n)EY&;Iv=|K}))<|>Kc{{>2-g-W7D zN}|O|z`tmjvPf51tVbXJh;jcnRu&s8i%gZpX3Am<WwE8Q*h)ogtt_@x7TYP4{~c8% zPAZaS|4ZP1PgMyL{J%m~@~i*XsY=&Vl8tK8O={B3YEm5k@%_(swE(n3Enufwz-~$k z|L;=^*sm6F00IAM<o_eB0vZ2-f42%ehFS;W%O9WCfxZ+j|AGFkgG8-^#1!uTLBKyI z0OTL|dvFjH6v9vVKLitiUjc-)32Y8SKoUYLKpff@KX?MP6@|*86~Oo>|DR|_{y#y{ z1i<}2tUXPDFw|ZMF9P8IL-_s&D<BNd4*SE~?+fp+FTDNU@D6*zJM2bu|L?Ffq9fWK z-huod!NLELm;jwNMReR4*=eKT|Hw}3IQj%Al3EqjX(b>3S44GM9@W`9s<T%V?*E-V zqC2}stGh>cc8gYbjaGMwR(Fn8cZybbj8S)p>4Jm_U=z~?(FBO$R{*hH;D58&uBNeF zObP#8jX3guTsQr=ZhCQi|Bvg2<3HX1<GU@6@4kp5|Hsn=!115)k5>RaW+$-!6X+EH z@c*y>Pxc`HpQI+8>^U*9=S0T;gv6e}zs&!*|0nj+PU@vCOn{_bqmp{D|9g*2>OF!Z z{GY<*pF8yjj{ieXv;R-`8O#j={!jPOINfKU(3w61&-58^rY{cu^rUD4^gG)Z{_l(M z@efwOIrjg#f&DN6Ab)gzNdI#P_#f8)JklimQzN-i11_M^11@L}!2SQi*nt<uk^hq? z421uaCk=%Elc#7T!~fIB{}+LOyaJe|f&2eO!T*>5^9Q9Y7?iSbP|BjgDND%zsmlhZ z=+gZ^Rex}*!QfQG!Kv`S>5x=p#{Rb&nr2Pm{!jRK7@CfphNim=rQ<*F@6P`B8lLVo zEMxhwj1|MuSJC}HbItI~we$)gbAx8)#^L1uO?3ay+^U(mUGvfo%}YBqFTwx2HQE0o zvJQ;MIyfTh(1@(VBgp@MlmD}ijm-8Lne96g_y27FQQ0CK{~7<%QQ7qUk5*2ImJI)4 zqb?KvM_rB_eL0H#AA<=n`f}XpT;M-JJNG2vANT*<)7)9@+;iG_=e6@LXy*a{?En1K zF_aAd@c&po{*S$q#R30(|G$zuj>;Q%C4b!2D+vA{ceUC7Gz6}p33vq{l#6!(*C*sM z{`m?2PrQ7CJ^=#zvu{kwx<U9C5+(rM|8Gu8ze%qE=q&*IKjqexi?{F!0RE@W-=+zG zw*Y4mPk__6r=Ge!H3{9B3jZhGnRb%!PvQO_cV}A6U77!*?oQ|Lf2Py@{~r8L!T%u~ z-T&|F1ablQb)@&%{||J;4|M4G&-px<dHli5WBC3D_%E3CH{pNQk%C!=xkClB4nCZ9 z;NdLbU-18)hqL!Qn!Wqs>|Ku#9shScnzQ}UoNbTiY^CG>+|7jlxqosS9?#wIc;5QQ zbJsmV^VY~B{I7g6ZzcTC@@M?dr{n*#1s(|gf3|=={&}_l_kZVS3!I)Uzyxr7w!q=} zLdf6#`9gd4|F09k>IMA2$nxc4WWn<1%ReRn9sf;VF2)2fL3Hz9(%dipe}xGE`7hOb zwN&>tYQaDGf7u&;VhFs!1c3i(0&s@9v;t@X=+P?xQ#}e3K)}DH{yR(n_@5?#{ySUt zzk@y|z<YiRfaCvrXM^`HjDPaK0VY5p-~S7}4GWhW7Or6b;}yVaqYsz>YjOWK`hd3p zz(4xaxCj#f{-+6GT(sS|XoqppPGkBCXb)Zim=x_ZDc)~VOrHRm6dy*W#ebO=|84q_ z{BKJ6n11v%W&fLfl$e!B%sxuZN&?N;|7Im2W+f-gO2V4`A7xP*Wlj@-{BK?wZ&8|H zQFhXzEYYIulm+?!j0H^qy8m02CtH?Zv?@=rEKjv;_P=HMCCl<G%kpf?iX5x*%T^V+ zRu%bH6<4e(u3EwW71ymQuUp~%UwO;A^0sy5UGBa$9seKLd@8W{^w75Qk<F*aHlLo_ ze0pNT_kWvDFKqb!Z(H@srV9RlW83V1+p71rjDNeT4|df>cGbmp)gSGuOAt+f&!u+s z2~fE`<KO;sr9I*QlRf+2{&Thc=g$cE$J62S7mEE)Pssn%SI0{7KgIZWEc+_tR0{u7 zg#Y4iPDPY}e<!;Ce+T}lx8I!Ke0P5R9r$<t=ezUE@6InMOaN#0zjL$yT`&P2*0?m^ z|6SStE_Z5NZ`Zoss)7GqZ`8V8uXVjv>&pIj&98I)AOF|E|8AFR-7@RkGV0vY>)g`n z+*0b?E>f5PZWrp^&ege}t#dz9=Pvj^soq_{KaT(L_3m-??lJIxgGW@oM`Q!V{`bJ~ z|3rgF2;tuYm;WH(zrjP==qctzjh_CEo{+y^qo)ty-}6|b=g~&bzZ<>KUyYvR|3>)V z>tK`jfhJG(zt`R-uRYwZCNISJ_uk&Ld^`N#1pj*h|3d74Z}z|U2Esq`UN7MP=khg} z0Kor`<*R=pVFJMa%U8$(>6b63Yd@YX3C?f%PvIZ@ihtoRc*_0e!}9kL%>Ns)AHVTO z`ipEG$kA_k;9t&1ks|!_{T~y+M@7z8RnA9E&Zm`}Pir~f)^dXXecQ_Ww&Mi<ca-<- zEbk}yUmgBe@MHh`^-%C-|NHf(<G){D1;2jW00n>czyBZwzrhOrLlyjo(FE|*RQT2Z zB20iWivD92Tm0`o3I12~pQ`9TjqoqhQSzUuB$~~!|3&j#{I4ux|BLzl5By6El_kc? z5));y;D2-WzqPW&Mnz&v$A5`%|97JMzr;mF>ZT&`;NX96Rq0AK=}J}UDpe_t|7%pG z>r?~QBQ@zpRq3C=ziI&dzf~=88}+OI1NW!}Ao%})TA*<JKin!1_&?Gr=&x2mM^S4$ zX#yN?9VqzUuXT`r>);muGydU!l7CAfzlQ|>9vsp}h$aB!ABs^x6CePE(o=e(jWkqv zw#5)Yq7(G=M<-|k_?=+?V*<ecVe~u}CaVSiN5b13375SBI27LgV0ilj;qBr7{Sg!< zfZ+dK5gm3%!v7t1M52z{f&WPI|CUH<b415YksUWhb^J3DE1=_s$WH48|3`LO8zuAq zs_4$EqB<{+mW2sG_kZ$#XZIL&w-|NT81{dRx^s-WQ;ci^*u``~w(x&!7wgzAR<ZmF zAhwG|Y!|Z_!ap*Jqm1IZ8pd^n{|(~1>QUWv|Mh=&_<wPHw}lDa7RGm90RP8#pNA4K z0R;bdpLMeP%#%IP3~u_#9@7$gOig6`C-$5S{}cWx;D3B#uW=};=eVR^W0QJ~0sfPE zjTTCT|9fklBK(v8Pf?nudJjL<dl)7F$N29v<n$i`{_zy>uW^PZ0IdLA{?GP7EPuiO zkUygPKl%S$|Gw=1zUKz^J*Uy{+@St=o*&dtm;hJ-!2boo|C$3XjOc%1<N!*m+5ck( zTo^kb8I2o|%>GZFI52sVMsl<NFHReHak|Duo&XnTYNX84fd5nGYS1eH`u+#_AC$6~ zN?kGt{!i6q{LB15B+Ynms>zTv(;;bQL((jUq+1Rl|Jw{rvmKgF-~X`x9fzhn(*z*@ zyA8|m7@FZZETh@~nX87u{~7H6%yq*vHw?eDarmW8!!K<f4*Xw2|N383xc_JE|Hc2n zKl?vh=6|hhU#)CEtsK!vl#TCyq*^%vS~<XfkXBAG{I8XBLMw;;e;NLd8g)5(R4$4g zMfi^&1^?$Jj3)n|(#~W2=h6LNJMSD%0J{Hc=U>$3`@hWpm;hHY#^h(h|6{LQ8ha(1 z%NZ-&|F7nbyP8MA|5r%<yaKL`yLN5d)obHv2$28B%lv<RJn%30KbKa(gxnhwF5j4# z1OMNc2>c5H|5-OC(kDQ&w*Zqen*E=O32<w2%B{&4DdGM<<-+YL=XnC0yFCTL|7UMc z0sc?jp~(Lf`9I<AwD`Nz;<#A&AIJZD)7k$#0q)I+XvY7Ed()f!KO^}548i|W`2T^9 z<i3vhzK)3euLJ-4K9~vr`xMMPUN95*XaCQn3Gi^HFaZud{MY~c9?nL11%L?v`J<hW zX76}B7x>@)csB6A_3<2h|Fik=9Qc3Z<2ipmnM3}6GFR~b+9z}2|J6_Cu6i;Lt$aFf z1vOtd{?i0_Hs1q1o$vl^zT30;jDPqa@+bdO&jtSj{|oJ2EVO&R(Dntw@qdvu<DdPH z39!hV67K(t%pm`N7MZ+UZ2Zq+lYi)GB#Tyn!7EB1y{4z$>!pbOFIxc^0z#Mov;yFN z!hf^>-;)1z-x%q>HP(A;!uTiu>%BGCqX}T4_s&B9omGqf_21hegZK9O?=b-!_21(a z0QukGy{o}{H{jo(&;uD3dU51`!@`w@_yp(!!UR}rNUi5K8nOS4iZ(O;W&Ss!39!q! zc$aa}9^>M@@V_xlfP==u1o(Kwr1&qBk4H^E9s~YOTKr!kGA$9C!v7@!T##8wF!{eU zRPeufX*fOsGAoTTD~&cUjWH{YGb@At1^g$Pmz_euzj@hNi?VYT<rgf<lP$_GT9&6+ zu>UQ~Gc3z9Eh}XH2mUQ9{vZ5rS$V^n@PEsy^0rmw9jnT_R+TvZ-?s+-D+{bYJ+vnL zlmD&R|2ChV1OHUjKZ5^ltKQh~1YrEXx2-O;tNvhH1^l=8pC$nO5B%E$|JCJopDP&u z<bSS;@elu_FWhH`YV^e(Ref=&`eIN1ryK<TSA2CS|LVa0#}oc{Ecu340FEEOIyL*> z@xwRd^!}UEJM<m+cVhg*|CHeWm*1U$|L5PGo_%+E`W^mvc~ax@=)2RS8kdJP&JSu_ z9@IGBuW`9o<4pH|!T+_cH_87l*K1v_lK)+C{D=SZ>s&6^x#iZmX4ko9)wv<yU+{lg zooi~HYf7Cf{GVLsdZEtke4XHbH}Zd-`>A?&_&<>*fLlVnTYSA+Y=c`2O#t^O;J@BI zqQN7)!9A=2{&x>;a1W;7f6u@MkAOx`X`{!l{s;bj$^V|s{`dH+(c=i=pE}g&d9cw7 z$NvLOxc_?s|9hJ}oBi*(gZxj=?M+_W&=0SzKRh=#d2jwfZTbQHd%^r0f587<>-o9% z2Ot08|K{L-uzw}x4ejHHFaes`@9q5)3Fa4m|N5W8-~aQ(KVauKgP)u)`z`#v<$uNB z<>e^$zps)UCE%a^@2e)~+Y0!XhySTI@)Y~uuf4oq2YJ7a@_wDj|9<N7eqH4K$o~p{ z-4*<L$outF@av`E_lJW2A2R>@_b2>Q8Vc~gKm0$0{O><p!CzCsUrR|eQo(<eqQADH zKk$!m{2#9<nxH6}s3@AOB$}cqnyM(8rX*tji)Jc`;s3cxVl+=lyg*63P)WQ<S-e<T zyi^JJ$MIjHPse|;5&Pd%S!$*%F;|vYDoZVuCFFl)iJda=FL6+j;QsHd65ygDaaEDJ zbDk<vFIDMsRp|;$0Ga;-)~E)oW&dwb4cMp}ut|;D!fjIx<l}$fE;VYmTHs!_z<p|g z`&$L>R|`DYiemo*|G4~<|BrFUTLt;H3ifT5Km0Fh9V~7gENLAqZ5<rYIwXMcAM|?& z3g$2Y@Crayo8ZvjQ4ob8K+yyM{_#A~R(hhX1oCeVD**Y2we<^Y=gav3|6w!%5GKG; z?r*#T2uJOYM6|~Q5bzKG(*zLkAJJi7M29`x?uZVU06S>{bQC7Qw#bfXYg7je0lWf$ z{{{TR{~Mz^u8-=tE~*oP|5u~vPOG>T?0@g*&d4*SvuAW?55~V+OlM307skKfe+PO6 zpl%<lZWpU=8>?;;t4{up;|T!&$8|A_>tY($6#@Uo@PE8)0_ewgL*)PXZp-4kEsYoM z|9Az^Z4pg??h6vS&p+8?KJcH=ea^}5a}v7GZpJ_SuXC~o@X!A5IW4g#O@O2xlM~7R zGyxI?|3m&gc>>7rPxpWJ|EN>F&`9{7<uBl0@IOs})4hTJp{IKT|K$HOLVX57{v6K! z1J5G(UsnIKeNn%2{qXEd6QFP3bL@XifO7-b{{#CG{?T9#_#ev0fB1iR{|n@Q#{b9x z$s_yI@n3fT|Hc2~2f+UqCk;%VJn-U_ffuK0kpHI*Od<bkq`?2Pxw(T<<_$_|zW=8# z8kC9&u$2A3Y!Ds)^#`Zn_-{BE{s;ck%?88&=@x_2tcIi`o1y9OzdZ;1<Ngo-yHXkM zL&^WZzxS|A-2Yb&ga0#E52O1(@V|ceCHVhO!T*|<whSl#Z{y?tF3n53G_&abuL=KW zAJ7!;|Jg@IP=AleK02c1{-5Jd_|Fk*QSiTjfB2v7|K$J6VOoTLy8pBPW6A%yaijAR z;D6wMbZ+A4yrj|aKLz}sCI8d?KUq5;UDVD`(U#r+)5hdyjDi2JWRAIVX^ianpFQ?! z&bX_W#}WPo|Ks?dKkgdc|7ikTL%@G??Emrk*D2sXUzh+lWcbGf$e{^9VFf_`)Xhnk zZcfVNfPeP?q%^F6Ta!}R|FQ{idvfya$>e{bJCoV}Q_kF;avBrh4r=lL)RT9nCfuF+ zi~sQoU|RIuX;GK}_ohcQ7j|zt@Q*_8(*y{<KRt;2KO^wLjDQC-B=G-(894s){U83< z@hi~rEzlACe~cyo@K3@2hq*%!XX5zJ_kX+sn6>xOEIR&kxc~2XJbTBZ+3bHD|EVp6 zf9lW2b1(sb{|!&(@bP~x`TyzM)lcWHqGbMG{&XJs{~6)mQ}F+@7XM=c%y)S<AM8ht zgn!B&0ska_%I3vFYxHuF6$kuV$ox+$!0hEBQ^fNB75|3+ET$O$GXK*A0RET!f`6I- zOJ6TpM$e_oUX%Zqz0u=n0xWym{0iVL{7(~L8La?Q-M41Ccnk2(9Qfxf_1;<Oy|dPP zXQTJd76Jd9gFa6HeN2Et7lT4qgF>1A4GKLC3cU;py$uRiAo$<#16pnPVGa9#ozaI4 zh95Q<75!;cv<dz<D%xUHwAH9+yHRoTD**VvnEY>Cybu02E<VuWf8&qv|KBDbkC}Wt z4*#3b{ol{@qu_r`0I6w7fN4pfX=#ut`TqnLW>y-(k^jxe|FLGJ@#bX-W@W&ClHh;B ze|d}lF##@Gu>UQ}(=5s}EGp0?%Ze<^3cCNp|CSZGmKAxH6;~`Pu3A=Hvl8zAl{c;a z$N%@NEALx<67Wy{=ivXR)>Y4}tDf6b0srKG9RIo3@V`yfJMO(rRiRCFp>1`MZB?;t zHTuYv+E$}7OaQyj<+h(I>^@f_+s~hn-RCO%FFXOhe767cg%VbP;D6!y2}9tkeI?~k z`GxS${s;c45=8i?ioYR;BEtW#{>KD>|EbsConCQ_fB4_&U;o!QKdy0p^xgSUjdKC{ zpSoY;e6PmkZjH;GTIbuf&bMk^Zq~X8{=Zi1a;4TKpK{Hub;+d(;F?4JcfC~Snpx+X zQRkXo=gR(fVgI{a5d2^7dbZB>Or7iLI=55xZb_VgfA~KR{;wzhM>n`dHMmDM!2j;> zzkvUc2KSH#H^@Jz(SwfvbpMC{Jw%Nj{*4}fjUK+7Pou}NMvtS79)EK@0Xz;jc^riQ zo7^FPw678Vr*=1a?&28#p4*!|w>5cgZNlZ>lk?j2!wd398#%^5{O`5yhxc0a(|gSi zuT?+2S9AD*Ry4Q#r?-&zPcJW$|NoEhfBfw?UnKWya?O8{^OX~R%lXRx#>x5q;(xpX zzy$DBk@HiP^HY=aga2E}`L&k!`(56zjl5r5dB1k@gnz#O`?vVNi@ZPTD(~M--oFP@ z@b9VM5C8X8@b9A_;`_g-zk+Chf@q+ENJBw1SV1&IK{QlBG)zIHi4;X66-8Q#qEU)C z{)@B~MPn63;}k`L|0gMmCo77lDv75lil-}z+5h5M<bTN=B?<69UrDk+NwN_5SCTAI zk}Ok(|0V2ysiCrz{V!$zOU()YQftmeS!$;uwO5wH|4u5>X8%jvRRTOz0z6d$$p0z< zD^wAV|G>X=t!m(UwLskeH>d{w$!$>$L|at@1^@4q;Xh~(;Xeog{|D594z>z9)G7#< zfAn{&VBG&P0gkl_KHe(Wr&X{Y``?c){~^FXlC%zywhqArApExu32GgJ`+sn2@;~q& z+Wf>1;QxeBo1ha^AR_s<2@Go!5Y|Q-MiW5h|FE{=u(l%3FHE)qe8SuMhPU+zZ+E=8 zW8v+N68_u$7117H0vzTJMzlW|Ngar6zdy3WK5lPhN2~zc|Isc?0D1+`VOvy(?c{%o z{2$eEQ#4P2=uYhaPV1tnwb7l{M3eu839vG{6D9!pKc<rxPXLb?-2W-pn9k(?SUUbY z#i~2TsyoE0+sBdr?P9yw#L@lV8vc*#Vi`yNH>U{z|92t(GyX9FaQsL5!YhD;uFDd- zE=}mRgj<vV|98hLfCVSv|L*fnlK<zD|9imy!u=ok*GcR#BeBQyMB)C=uK;lW2mX_K zPE6`Kfg7LH6VdViRIf3odTAr}zkq){wJ-rr_eLW)&C|VypC<ed!vr|PAOD>BV~7m@ ze*pi3&d^ii>>thkrxif20M7Lx|DWsA?;PWwpLG8}5B#(L&kyK(Uhw~*X8&Ua4C%-B z|9%&S_q(9kKbh|T{ek~vtpUkeGyyJZ54bpHz{RlxE{@|S47`Xi0c8FM{xvR6A4vGu z8A$%0#r~h8kvdlc{!d*nD0ShWv_*r``2L@^Y;YR<uQw<S{x_frK>jxwoNhWe-JG)= zl5P$EbM`|sP_zFtT!&`54b5;Hnu+7T=deuppFaL)|6>BIr7n^Ghc)|u_@ynHS-}5x z&8!`oS&aXzJ(^kMe@(&v*@rZ<4{NgjN5cO($4BJ&jL7jFnd2w;e`JmX{vUZcVC3Z> zt;@k$mqWBJhcf=dwJxKGQMr*?xzSpL|Jc#Faiehm#{|ebIVvx4R37gCr$*<U;n@HA z`1ps9|IPl_&IkU}fq!knKl}e`Hcf!5Ib*KojJ<k!?6usnSM$)gYm9&RAMz*v%kKZ< zu3aB@g&Hr!6JSE#jqwP_|2)|Qz$*X>_|L)f=7g-96M_Frc;1?r$z|Lk`KJlpo|Jlf za>{Lf1%T(j{-1n~{g3CFJ5x?`IQ}Qyosx8SYU16g3G9EK08?Y{O^v-fE#}^|XfEpB zw20=y?@v2%e;V)~itm5!PiOy62mS^BOL+nS|8)N^m?7Yw{jYPpK<8M2&e4ZDg#Ut> zM{xgtI1~8i`~S=Xj|l(!9#MO^U5{p=osWV4Sy%yl|DV0(@$AiyXK#8k8<&6hpYH!p z=B$4@XFYxVL-=p;|H`LxS3I4&oPz)7dOw@%^=zI8=l*P-8+tyE@c(?C^Yi)6<p24O z)B=YW!2bff7Yl4D!T$@aUo5bCxzO_E0%Y-WAu@lt(CnXuW-k}w@(=%;{Iked=+z>l zS71NzkF)>cmiYd^Snu^>-B<9x5Wv4==^MuX8~U;I&C;cBmLb^$c#9VS2ABZL@Cx9q z;j*_zz&~fA_s&%JotZBCU-zAb?mPDXduu()M(@3?9=!#y*L(l3|Md!8^b1`%cl|;S zeeyp|0R0ckX##v$Dfr(26QBt9|8<5%>kW%Ga+?f`&}KtSfZ}aD0d^P{?=&jjZB)F+ zsCchY@jfH+Ki&V0KOQpvcm)18hW|^Bnv@(jDe*BW@ii&&Gb!;mDG{5LNZ@~yk^mEY z0#q7gQW9)h5^7p{!n8EZv^3nTG}4ss|7K<E|FU?qvIO(8M4ABQ!UQ;j31D7+&b<7* zdHDtN@?>+G0I3$`>6XBMc_#dCQITaq{=aNN3I5Nwth{PjN&dI2L^mzj|CW6Jx2(L6 ztUf)!D*&rc53N2uw)*r0;T3?@r)O5={}<Nmf9tA$tgBvGSG~5bdTUdS-q}>Y2mZMt zn`%^SQ~lAVx`g^n{<r;HX3O_~Tf#pk0Ps)#xBEiJe>?WS9Zvu|o&a{AzuMvWU;UNv z|B2%XU|;dozWl4bfd8_u_NCu20qj41b3nj9``_WiH{@9O&GG$r$9LZx*#C}izB{u2 z9sl|6^zyso%NoKz`M<{LX^qp98Yl8U<y27P#Qt}>SA(4I)HvO#ae@DDayM$7uh%+X zt#!Uq>zq%y<N^P+E;)4+``;zA&LyMHCB4oit<EL2&gEjAOEP!9&gDFP|Kob5-sN<? z>nSd=-t}a?YeKy%j{od`_n3OOsCu`^2DgZMx9|oE{y)*+Cip*yCV-o?!5#jWG`fo# z+(nJ<z`uW^yHBJ0aqeiNJNk<|(&&D;(fv@P2k?KO(PMw3$G#?yy-gl_nml%MyP7<9 zaKQieA0Aubf8f8#bMp^R;D6H(&p&^7Zv5d1`Qy2sTl>Rv?GG>Nr`PJAo~wRh0#GX{ zZ_bP5@AZrPA^DbsAs~!`mOuXb1OK4qKY#np53&F8gTOCG|4G03f8uE%M}NV;QTPr1 zm!%}<&;AGg{hR&o*GiuJ-&)SEjhsLG-@l!_e+LTpe-YpR{nh0~UF1bF|0{@k$cuW) z!~g!x{ulRC5cgLQ1OEdR#2O0X!3yFb3Sz<k!xcm$6ma|(lm8XOz&{$JC>c+QCn`!N zDN3dwng1m^N(lIuHv3-!|1VUME>e;%R+27JhW{nM`rlYtYC^|<%7XoGMg9*U|0_%F zRiut80r0;I-T$SoDgo{)fgUP>UMd0JDgnz0|A8x216Gm$1Ihn{|DcVG|4od4_@D6~ zxI--n{zrS%g5m$Yg#VxeYQf}xwV*?4K}Xa=1pgmx6^!72pH?C8zi+D$|5hQQRv}{4 znv%8-4QL&T2@u#iRPaA0K*;Z*A^Z&eJ@f=>gJ;NzHdGj%zXyf23Fhzv_-`p7tgR%x zjWoQC1pW_iLlYpJqPGCy{30N{-M{{iXm>2K-LZ&vM<d$(9ohbG!T*u%k3_aV1ph}6 z{trZU*v}JSZ)AtPQSJ9eb=U*^M^W(q_UH~fqC0Gl>bNbs6NL#7-ElL%|B3E|6|f<? z<HqPt>&gEeF#!bs<Nm)ghFTHRX*uvub@q&<1png|fNN}Lm$=T(aq3QS>W*>jf8ak( z-8Qa^O}siLfK@yt^M5=|0Mqy`CJ9}P<GaxPKfbGBi~ke4>XQGvEj`&4{$C9IpQLdA zUwE?H{KRhaP9nblC(`|YR$}*=iQRRm9y5}<PfsHMBOL$f{?AQ3)nj5(4@>~^|0#OH z|6@<})IQx46JYe|UZXgz)4jCL^ululI@25Y*E~c1AASb-?>!X$Kht~2ncj5#Kl{g^ zvwwj7)ER!Bld+%W--qRoC+`0^`}gg8o}ak?!~f@n=YW0}2KGhx_~(Mq;C{(N`dt{> zFBzWzvH$V?4<-Qoe^IM{@~8n9NA*v}1c3jM;Q#Rh;Qy3K1K|G@o&YJ+G*YMI{y#7U z6JXXr!T+i3|I~RJ@IUa6`#<@A=^*mI?%;Ixf4boy1plYA|I^I=^?!!VV9IVthW!xu zKf`HghRaaF|C#PXGd+f7dJethJ@nG@p_$G1|4VCzT_XPv%VPg$@%KMjTZd<D8=k#= zIQ*ZzYk2l<P53_>{@+Lb&pycbKdhPamnQE2Ima}!kHP;VFZ+(j@f(5r|7G!r9LdPb zQmxAYTDd_Z;s0FVADz(34cE$z&?5XtYUPptwesS$@_>Kx|L8m%|M~u(e|mKOnbG-Y zN9Ug#edYY<{PWsZnvefiQgQ#+zLKVWC0+Y!hW6D=Z5;ovqHGTM#{_`?^Ekr)Si(P^ z*O1Kr*RGF+|F1Sj6X3@9eBd810`TMJ_`I9KD*)X8$^Urf+=Txp(ge6Q0shZKw<ci% z!2jq!{!h6*>Ei84eE*+(;m)M<cP5>?jR`R2Ec}0$q6q-}-=PxkPC0pZ>dAY!|5I`B z|GlY#|AGIgdsE5(_oo5>;rGb@CmzrQ2zem$f6xO=fay|dhNJ-Z{~4kJ3jX&inBh|Z z{Ldi&Kb&zC6QDqcKK^O;|G|ed(Sb)Z_dl8m{O^4<6aL@*c;>Fh?Egoz;Q#H9XKm%k z|4%5M0JAqdLBRi<bx-H4CH&7p!u@~cvpFpjfbq}%e?Hga*<82hi2M)yyFAAP!2O?c zcs>u=znE`F$tHl!iv`v%1^*NNEgAp+`u`vJf1wE_On`+(|130mwTS#r_+KRWU;ou& zMEGy^|I*isfq%jOxc>wHOW6NQ-Yi8l0p98^d#ktftseWICcv-$*L`cUj3$6N<KJT0 zdt|B0{>M|7{jbOV*L&|s6*}p?cNYAwSLmkyfhWKRPyG+@zqi4M75X1&0_cBO1^*j- zSZh$Uj$3a~w860GPs8F(hQ*r=i?<jSZ^ixJsCb9bum1nI*XZMZ?x4}fLq;DD8_@*# z+xX*A<B!LTWD`K<f8!FdG5lW|U{V@r0{@o=o0O9OP1ygYr4c5jQKqHQrtp7RoM{<8 z0ZK3}I|=`r@%KMw<!8*w&zhB=Gb=xD*6e@t@>KKkbn}XI_}{$Z65<Jv!~V~+s6baN zDz9?aEh=va{<o;S4gXtK-nIO6&+^lK%TEuiDj!;s{~uX?dTjaWi6#5rvg)~2)k_5V zTT!o(b=4c|s&~}C{{LWIU1Tlz|1<ng_kWw}G8-KKtIKUZSJ-^6wBh5w&F3m)_qp1Z z{cro_3;a)g{$f}C#g?AH{};O|3<25wpWXt%|2zTg%D&l`eRC+K31D9W|9=Jk?TfzI zf8c<B^8Yu7_un1fekc6D`R?%gyThyR4*z`T3Bdk;R^tf&1OHEJ93R&>KB{qiDD%JL zeZoI=r^fj<ceBO`69E3d_KW}XYMuH1@03&PoK60BzEns4&#ZG!t8-4Rb55yq7W{t! z_^)$0SMPEbuK>vZF7SU+y=$}oUE=Cp;u>6W|EJ@By=!E>TLj_XHLSt)M1w0X|0uY@ z4gL=x|GP;V+$D`}qDD8!->=clx6vI56F~6)-|YXxjc$j?|G>Zde$?c?xA9m1yYFoB z*xBU1y~$&Hll#^t_J0!{|2H?e|JmdL{ImZ(HqZos|2-K0@W1C8ZZ+gjuK*x_&lNwt zIM3xjJ-w+G!wWw=J%1wn7M}n4W6M8o`8UE3x!?Td<op@@0`mWT@-ArpPdR`2-~1Hh zC`FRLA5xa{SK)X9__vbxZzbp7THgP6IT8CG6F~64sDr$S{V(b)!@szzyr`SJs5|hl zK=o1({h=W4BQNf&AQJpPfF^*<|Cj*7xZw)o5enjwitxX9l%jaFq8Ruet0*3)D4sw` zCbR#iDoUm)N~SAGW++K!DoGgs(z!~~c}mg+N>ai9OW=Pc=`tm$o|05wNot@JV1$&V zm;mM~f$aYPOXUD7!he9Ra)7;ZfP+c^`#%8pe^-@2H^#pw`9IKGH4yk;p%S=CC1|y3 z;2PDSb*e$@3IEh4)u7F)L0eRVwyFkgQw`do8oX02XqQ^hZZ#bLgZHWh^YI_}4?d(8 za;R1C;a0&%=<*-(cdHP{|5&S#<Ai@o@INMi;D6!x&+<RP_zw+g9U9yk_zw+50{(wL zK@;Hj&@c-A7vztpumS}9<NhBI&Tj$W|FAZaa0~%V0LDK*{UUe*M6~mXZ08%%?l|!O zAOA<T|0}ZHUy<z(bHe?fUI9e4-yhX}AK{<<AJt*E;Qy!&I}rRI-C<jF$F1BJ_&=Io z0TBLa0<1?d9oNNlT7zOct&Zum3jU8poma$lS{~QgJFc@A``;t3vm56cr|uG`{;&Tr z0pj=-08IdOOaSY6b*p%F%lIx9z<)v)vv`^RF#(Jcx*Bo@30?IQy6VaN-*s7H*QF=B zEn)nV|4-un-)#Z>pVVz$V)r>o-RHpnD2e<(GpUD868ztT{GZfg>Zu-6+5eaTlNkRK zPxqJr`Jd`J?sTtlr{MpdW2j!30Pw#s0U-a8=nU}B{s;a!;Gg_|mhe9W&$GSZe<bt& zxjzP;`$Gf%KlcalF9iShKab;opMH3r??e8V)vu4>{|o&I{}(j+$r{uzd2nC&ANWtk z1Q_0*;#UBC|L+g{UmVS8_ZMCPq>LMoGJZhHgaPnB@SieeU@DqA5dKe{!Ohf2n>8?X zwg&kh_@Aedwm>6op+?#wjr7GDX-fvBFVjfV9R&ZU>kmpdfd2=l3;t*PXIKo*upFFW zH8{iiU;k%14xyZfWV#H&{h$3mG}CM7CA56#rIo`jtr|x7N9$z%&-!y%)}~=un}=m> z83zAnZ6BV!b2$5dcsBeG{O{My0saqa=Fst<{GW4FGY9xTuF3cR5tsc(To#Rh|1V2M z(D6TTWNsk*KQcFDWG?XktN)|u{+|~k_@5_$aQ{ylm49kf{^?QqXGZ0pL*)M}7r2X~ zucT<h|AhZE;D0pV|Fy4P(!QF7aQPo|?J}1;rrH0%KX;Y<e;pIx`q=A)|FJUs-xz!K z#<(jt#_^LUfG`AT0*ueSIsWp^2?+S7ZcWI(H9i~uzxC_=pC&;1?TKj=?*Eg3|CBou zFW!OwCjtN5<ny@y-<b^mw@iRjbo@t?;s3;YQ%>HS5>K`G9}{3I@E>^}$^0L7e_Ggs zsr(9HTF8TG!I%IKro;aMoU~xNq+q(3@sImI@_jhnhwwk+*hBcA@Bfcx{Pj@h$U~jO zk8}<_(mD8OCKCLQ3BdlJDf9nh-2Vyxg8za4El*~(;Qvp?zi|I&{{#QCSCjweta=Lk z&sp(o&T<O!pX>R2uIDqtzx(rf?$77C;`q-wKcDOTe4f+ud5*yUi}|S8|MP8M%(r<l z-}>czo0s#g`0~%k{{`kR=Ue=<fR6vf{sn^njlq7QR|^ea(F9=pFVcTS>Agmbe||0l z{@*NKDoeQhlm7|-Z{dG>1+esuF7VIkFQr!iGy#^rHCp=4aM?TH-(=}KQ%rzm@649H zGhg<O{r`?80B0kc0EPCth4y-d?EgY%yaLdpR{(DMh3@(vJoIJ$#{^iRU$k7G{jXmH z|F8MQ{~Ha8{xrb-zj(6&`G1>1@ixQa?S{oW4U2afecWyMagP!Cf1lCE14bYJ$Nxqp zM~yxnGyZtoxWvb}#19#jh~R&t5{WVH|G)Sj6TpNgfJteDX=x-)fU+3VvRL@vg#FJG zAPE!TKmIo>zli(4c}1#uMH>8XR*}K}&oZw-+2$3O%`0=wEAz}N@_+F^CcsVL-{KSd z{}cR=;Qs>P-{KP{0PrvKzh%|47XMpT{bNOu|E;Rt0{>Rk<bUhxLhI@l{1;o}{{I=_ z{tx_<|2dieF#&A8RM~z;)wW+gBbzT@Faf}RA({ZyUu~<<7rReiZ9jdrtNd!m__xFT zza04gN)w>un;rcBk^5i&+ZBFypyU5H`?ud5fd4n&?SX&xzda_vi|-E4zdJrB|2qQz zPuTwt$^X=Y8u*{OOa6DfUF&qK*6~&?{O@$V*6A8|rPe9G)+w*nDYw=!r`9Q_4*qv$ z|2t>YQR#I~srAkNuXj$a$MIkAzYE|0;eVH;dY8m{mxOwkc;LU@CAQurrrtHW!8MYL zVEnWHT|#IAxCS@41~$U~uF?iqaf6#!=6^T%ANe%89dC3y*64P$(d{qpNTVD3-|bM7 z+X2dbAN=3szK7e@1pHGwn%uTGxovH7-`3>51^w{Y{KI_{;h)<01Nf(a|8?Yl_ccE} zIM3BTJXZbig#1_j^jJaur<(Ea>GjjY^QVUgY5&(}%YXj*<3GRgpDmI9fAjy1CcuA! z{P7ol;(z7j<@^<X^Jo8K0*KiEB2_s`O-|HGPSjeC@c+BKs0{`Di`sL*e@A(7CwXya zd9k{@xQjgbzq`B`_2hcXi~j)r$^WwZ{{RI^i~onx{a-SiBmXN%Mkz{0Q-c3-{FkDM ziqgs4R7L4DMJfERqa>Y4$A9S@rGU9g0rQjs7AOTQR0>$66tF}oU@7@OKu;+^Un#&q zNecg)Amsqy-&{G+g76>6$NxY(_+KT^K_$?Mb5RL&RS9yVkAH$ZRf4=#f|jcUtxyRf z{Hp}5Q3+bh_+PK`tN(-H|81(l+f{>isG*?Us=>SI_z(Yw>{kmppcZlv_*V-#jLW}T zh=6~5|8tZk0N5Xj{OF1Me<=GuRMHBC;P~I{f8hT_Nb3{9txtshjs)|c2>ZPyo&b0S zAX@=J;cbG$+u$h_*zA9L1rX6j5<wF{6u}c9qOE^qTYtO)h-~M_6TnB90J#72D}cWv z+Z~O<TLAdK-I1tvm;i^O+8<*4!~X}O;r|Z%qS^n^9d>iOqC4yq?*Fn0&|zzIhb=K3 zH^+3`6w~of4ijK~Ec-vU<J#Dc@V_tt*#DiD$99(aKd!SU=N{J?xsm_r6@XJbQg@73 zcZgTFk5{*gSGPq8Gy$v<x**F0_CF>-0^R@V6~M_ZMkl)%p6p_9vWx!7u6ifC>T=6Y z!v9^DBz9e#*lkf_w}pv>e>5NdPwGB5iR6!F!T+32Qg^=pcZdI{o$4`#n|zA>j|p(P z$N1Ad(Kv4G>7HY7{3raA|3{taiB|x0{68b}zvkIqBhL03&J8<D_$U9PbJU=7e+X%i z{K@}}fBXRZ|KQmF!2g9leJ}Lwd!bLC3w^2c_}#BB@Q?3*E+Co!eUk@qeE%o>5AAnx zSig&!sQ*R2|KsDI6deCY^-sYB&>oO7W<Uym0wnYQM4AApQw9+Jrw&M+HXscXKxbgu z%z=Xc(^~vLU*`X`#Tw~LG=BAehT)(Lqd^(QgELG9Wta`lFdy9F|4bbJZ3k!C4bHS5 z{4f6Df7c=K|0RzhGW^5;D~4WLH8g9@u&gyh;r}eY|7UF^|7UL*mc5l?{|^)VpR;#( z&c5N~{{xyihsggq@c-Z3F-?5`bJ<4|_kWrHB_ndBBXR>q0ROoE=gRy)GB0doUiiqo z2(3IE|DzcHvirYQUV>KsNv-@ut^6b{8UD|VzH)BVmGh%y_)iA@xzy2D(?(xSA1xgJ z3IBrsbF{Ca%i7m~fAasBYx!fYUqNH9UnTidEPp(y8~h4@<u986H)#mq_@94s0`O0- z0Av$jJo|q<j{k!H@d|+60-)OyGUye+#Ejb$WfR~I;Xj3*<o{%u|M?XFCcxcEXNCL! z-6^N;PENWv852OjKm4D-6M*mkQ)2H;iMcl=`u@}?@;?=Ee=7SQ_y4J(4+Q^D6OR7@ z1=CTp|EG%zru!F6_bZqV|NA~9{~v#d2`~fS|IjBum;jH+|A!yK|1<#(Jkr_!NN3+; zoxP87{}=o}bLV4f$K#pXp3L0(WENuo&)WQS)}K#jZG1W#t*3DRpS||!Z1VrJ*}y+q z@l?S79Pek8*Rwg80FXbz{oj>yc|I4f00{pt<~qE<6UYB~_Alq*{%`wo9@vlIe`NJ? zz9of^f9AvgX8#BQ{|hhyj9=ji^Dlt>TQYdP5EGyo|BG~K0?-Or_IlCM*NcQFCcqMI zF`jP`CcrY90Ms(ze~B#pC2tK7@W1q((Xw~OOUeH<0hYcuTSj35SmG7HviDZHh1R-- z@V}jIp&ecU!2i01j-0b@A#&0C;HF#XruV^v^VH*40Qd?>uV|${wOYSujegNueR>73 zLBD7N{IAaw;D7zUgZz*0e?IOp{J7Wf<37WW`weLV95Tc!fD*d@!~eMd8<!k6D)BKY z@ii{-7yNGw|Cizupg`l&Amh?t<I+$r%%n8jq%6XuEYhSb%A_pXq%78i{f`M?QkG~^ zmSkFX%C!8nDZK)q`@d=V1+(&GQ}Ta`Sw)%|`5*UxB=|qaydp>D|4R7(ih1Q#^U7=H zl{d^QZ<<%$g8wZ(-Qno|Z}I7Y#is)J-vamlD)PTo)l<R$mQ^ni@Ne1t3c#}JE%0we z6X3m7b)i-D2PEA8;eYGTCDxxyxiag|sN9<F|2zR0|2ChiZN4DjpZrgKmStQ0#ir^D z{7?6P_P=fASE}MG{BK*1=QsGD@Q(?Agb7ge%?^F|W>?7J{{Ig5|8MrdKYC3Q0Qh%! z`Q08puW@+x-Qih{!_yjvCp8X_YaAZcI6SOzD5!CO{~y!}{s;ak`2S|D<BeL!>$Q&8 zY8|iEI$o)D%&&FKt98t+bIz@U|DCeyoGx)0bxtS^{;zYQ`#<5|`9i((Iqpoo^JxnH zcTTK#K3VUaQ11-?$JaZ@aM2Aekqs^pTv&t4i3XR@2Ke74sKGU;!3FrI3DD>&Zgdqj zy81V|`Zc=xHoE#Wx*l(I1^$mUy8hkh3jYiEKiuSYknz92$qnsma@)i0YH~w6o7@Ea zZzKP^ZQ(XGxzq9g2ZI0IH&F1u`???Qz`x-C)j!-<QJ$+w{_Ze8Cctve`=<wj`Qd+$ z|4#|{7yfa}@0K6G0sp^=<YdWy(_iF7!ry<Bqu(6iUqMc!C?^8`+5ciyd9kV-g8#*c zCV;%?cR4Zq-&S7KPF~FZmvoR9!~f0rmvohvbdwjO?(&iz^5S0d62bp{<RzE@{S+kl z{s;Ge4Fw5*|05ZqARVS48Kxi|t|%R$Acg<66r`8{+KN)#|Hl#jB@+|_CMpI@Rt%V; zD24y0D+bI^4A4;wn5h)V{ttxz=PLy+Pzr?q7b^uWRti|A6v+M$G*AjOR0=dw4m6<x z%$0*I$p3*>%0br3LAJ_4_R2wyDnX9QLGZteN)U46fPXKQV8Q<@Rf1PG`+uEE@H&;C z4XVL7{{N{Oyh$|}_y4V`!7~5j{;wLmOD$v%h2uZ@|Damv!B)V3DEdn+^l!D$qiUhY z)IyJ=R-rzOfB#k|xKMGc6Oz`z|A~OsR8Z?M$UnGsSO|3@v~}2t-@{JO6PN$6a9P3% z2o2}A0C*Dqe-DmmgMv_ao4^QJ0TFGbz<(rGKwEKSTQMd;Bn<(Y0PsKV|B>x{qUd=% zs_pS8o&Zto|EP9<MYV_jk3_dS4F5;9KM4Hu{eM3u0M%g+;lKT!==L)I$M7qFm=4=w zsjV>`Hph0r1c3iHqPUJ5;ySL6>$HyiPxxOG*J*WZr&YNB$93ZSKfMC*Lh+q20dW6! zkMHaj-`N%4|HLEUzq4b4x<dl{KY{TN|0k$hGyW}4s#`Gr;eXSU6#KucVPaQ<#4h@Y zUG+F!9RE4?f7eBcT^A;GTaeUMcK=W6_8<T2oa&BdaKJy^|4((t1ekof2Tg#}<o^lm z|M6#fj6L0B?3o^8&h*sgMxW_9`V38gfBk>97yLi`4EZ1UA9k+SP)g?i!G!<bgU%zu zzsC7y|DXS307sYq^MCZc@JGK3c+&A7@|R73Wc=>mH@RP*WZeJR|H%WJ@sImICIIj+ z_<wl66ik2-{VtB|pE9x^?*Eto@PCSSf5HE_|ECJ~|A_-q;s43-|9~{$f7$@N0!W)N zAeH@}HhUoapFVeB8t(ti{>S~F{XZyOS0i0_P=>w+@Sjfp9|Zqrnhwe|9|Zqr^8G*4 zdT^%g;7j(L!{AF!bo{>r{JRag<UWM_?>PkD|75KgnzeFB)~cb|Yldd89hwFIZy1)n zVQBWI;n{ruC;x97mc3&*wQG3Jp5cQ3bM_C<IWYWx{C`yQ@-fZJ$2H0Sewvs4HFL$9 zIR3N$N9F~N$O{^g7czqH|Lp$=_<v-6<VczSW3=+=`ycjy;wZvD-~X@R_<v^96*~UI z|D&!ZkGhgP`fAGPtEr=}!2ju^uaN(#YnMjD|JSk^|APPV3LsA#{=Y8s|CsAn#|Zwv zaeWNSe++&9bAu)T<bUnv*sBO{0pNd*zW=#34w3(FQI|Qs|C9V%{GWMy0s{WY|97Y~ z!vDlnzW?JDz{R^0>HdFr;`zIifPeP?q_g)X(I-InCZD=DCFvgdKk?q=gnN_Y`5AYQ z@qd3x%>8EnKOp~y!~YK`ng0u>1s6;U;sOh%3H}!sOcNKd{~u2C1OD*}pkTTWCcwk# z?Ee{z{~1Tf|1%CfnsJcQf&YPjw1?aESZCK09rFK^nLD14|Ah&_{-3$&>C9jKzwYU* zwa+NN|Ic3aZ1&1$vsXNuz5F?v<Mn)wH$UNj55~XS^Eoch=U@WB|IRPwI=z@H_#YF% z{>5Com-B#sp%(vJzMN<I&pZnR|No2s`H;U5@X!8VVDO5<3ecwj{)Nnb@;_Skdg0PH zh$aA@ODLKEi{CEh2_VRy@W1#ihJY@fi{I%kdCUHPXRzcQCIDUmAmgR)u>#<KngC1R zn<K&h%idcr#an<v+hwxge+T$~*#{@x56-$DTy#IUVgl%WaMz^?;Hmq;OYeiX-iH-> zMQEj7(JJ^~k0!u6z2fzH#T)dCH|iJvsb9QFzj%v&@mBqhTlMKJzz&1rT?QW!UI7UH zKVbOrATq!NC^>9Y@|R)B--abe4NHz2vi}WBh5NtAs8noJiU|;4REh}@Y*ZQo{~MK_ zFfN1tQKWHMl<~j*kC*wsJjtZ|lt~%+-=zGkN%?t`@(ZTr$#?}|T9Im6k%n;pH?7Dt zt+-@bk!4z$ZCaUQCfxrk^UW%+m{ndiga1F>F#mMZ{L?M&j`^p%=AZ7FlmCJL0(17i zIs9Ms#IowCMb$Hls^=C}FL(m{V^Q_Wvg);E)f>y|x0d98;J?NHMV8e?R@KFppFdj3 z{NIBAa;wi3)?X^EzR)K?)?cdd3IP7M{_>goV*UAxb;|^R|Es?uOaPltT;*3ARKfT! z`)UjPv;Q#x;D6hX-)xJ&*~<L?9mju~0Pnxsz58ze_PZVX-|p3S>L14ci|=;NYwY3w zr#1G!_}{*u29f{o*Vx~yb-Y{aaEJWw!2Wl*QR{HM*5O*M!_`^`0snOWuXDUy=a607 z;(tf>za#sf@Bj5q$#qW6{&!;kI|2Vm^-d?b_<AQ4OF2i^J4MyQ|IW?+cW&{2aD#JT zgL42)0B1>qv$(;<ztP2yYVp6zu|}7p<bUAb<w&C|@X!8t-QVQ8kK5bix~Iu?catmo z-xc`Z(d4>~azict-}J+EBl#clcU%9%Z5;*wyRD&c|94;W(|z?%_mw~0R{n5bfeG+~ zR)F_UcbFef#y_6!9u#2j?k-FCEl|JZk1ap`^S=uJ46v7%6U+S1<`?ka@)sHYf5Sf$ z$^Rz$kN;H&|41VEzqOnM_-FrP0*KqmOWM-}ki!3+<RzUsb$Lk_d71z{6r?@mr9I^( zsJFbd4+Z~A`pLupIQ~<E6bS$9f9Y`eUqL!TQL3dF0RN9s3Sj>Sj8hDlpcMFv{{yEg z2259i{{wZD;QxR*ih*;K0&)Bo{J)6sAGn0@AE>JosHfEIf2BZU<v>$qeEb9d2U#iy z!T&bwe>>$M2jyT)04K&j{O_(3;;s_xsS?co4_;3A4_>7byjmrAtxCu`)!_B2!SFxu zkG80WY$5!IY*!80p%${URVd+KH5C5m<9{e0|3eR{QUBxrR^)%+UpW5b@-J=`#+?BE zrR@Je_J3gOu;A9=?0;GTV1Jmb@bKReR=|k}e&Pr4A3^>P3I9DLq79Nw0Kxx}Z2~xH zWLs%e8$4+OaP0rK{!wlHqAA}ftN`{u<Dc&T(e3`?jzqUV9Nqp9cQBgn|K$G|ngDxa z+wY5QzbB^s?wAfcxg9Ybw!{B19k#;%z<+E<v?;dZpRweBngFpK*TtbuYvb7eah+Dh zcUl!k6JR;#71zl#p_6BPXOH;K?g{Mw_|7im|ISVc@PB9cAK9H$x0B%?{>Li-b;|^G zi<9bRC%c#>68=r#|3tq3lmEL4{?|?F3jfphKZ(Nqzw6>8_`fUskK;ex|4((FcdFZ* zq;9iMb(?jn`^;0_1pnhX{Z#j9r+Z92-5pH<{<(=~dQ3og1#kv$0eXx(({t>Zo@37T z)JBB=o}<t99Cfy**4bVNXMY6$(*z*@_k#b2o$EdHyzKZtnC}0*2cPe)!3~7}!Tt+W z^YQ<W{*3>A$vFP^5uSa7R{$h`#y|X@JfJV|e^G-Q)b}D9(vO1wf&bzB3SdM(;6Fu+ z8`VE`bidRw{i(72)5i6O|5GOnNNw@|6vjW@{|BVaklp{;{{!Lw^mzl*=MPL@sFBX! z{|NX03|);3J&jEGANPOZ6#(#$%m!sz41)hNtp;DR9z_1P8=Qp+!2Z7k|0DR{V@Q_g zkSwnuS>8jkRt(8nIW&9KknGhw0oDy6{BInVy>V#v=3x~4zn#k2f&2fkoZZ86_6)=Q zpYVTh_~k>xFCWpo{1^9kv;Td`|GDh{T!|+6pYX3K_&+anWZsDp`C%jS8UOHqe)PzE z#y|X@A1^!pUrE%ua!TvUX{{?~w631jx^h;y|C9f(UK}O(9}|F&|BU}k^8dB0(buv^ z%Z~qa|JNq@6aKYtT-65tZ(M`_A^$NqZU|43Ki&VEBmdtV`-}g_<&*zq_|LsH4*t*K zvTu*ix-~uv&)anT7s|LZA%pNgLGXX-oeA)N%H0VUX$4G7zDxeUaIbj++#~;=rf~nC zbc&vn;s2As|NY7F_b12QpMrq@m<N-iF##S-iFz<4;=$B#PUioDsUZbZ+5b~90RjuA z1{6$_7EF`C{|_mDO1S?|KmLe1`e??{N7LE=(~mrw(c=FDk7gWT{O^4{V=w!E_Y<96 z&G_Fg!~e`JPiAg@s<Zit;QyH$pU&Fwbk_Q(v&jEXXRU$%ar}Qa3z7c`|Fa=~#{X>3 z=W{%s&vt)42f_cYFXp&V<bU9w{QnZK0R9i>b{SSx!iIf+fKBPxJ&u8d2-qzucF^6i zNjt{Tv2%3nPGScsNQ;S-gkX2q%vcCWSTw%pb*;V8xu55KKfK5BKi08_nfv?iyw<vb zfAT-_em2eP*;KD*(>zK3Q@`W?#Wdmg@A7;)9sgfUcjgHo_}~7;bix02FK19MX4t+& zGj0B!Ve@h(@NfM$#qytN@%K#jzd7)4{!jDM(&8T>D~o@TjU{Dk`LCS?g$dwb`O49f z{O`<t_rKL^cdJ*P)N3#6*WT=ZvGr@Q)oWktH~!Xm3!wBrCV&mz0=$`P1OLCp1c3h+ z!2dQh0e<5!0hZal`@`-({$EWKpcwdHZ(qE@zIdbHfBWJs_QikM7jLyM-e#}#zdifk zo+iLPOaObD0EZk)4m*~>|Hm9lf`NaI{O^cY0HyGMI3|E&X{6wPr_$q2bpJo$To&(K zmf%eOM=6B=4{3t`oy*QRe-QkS32=cU|2xC~9~Ay~Ezfr?FK`k3Us2>*aT%`wT*?2} z-70RlD*f+PamTgto*SyT5C6Lp{+s>(%)JuP{okYNrAL**|Cj(CRj)j%UVBu%@%Z=_ zk^igS!~dQiOFTZ7cz!JP{0RJ`a^&@~!t)dP-;3~H<@xEO=O>asJuv}3en#{n0R9L5 zD?fX&|Gkv{_x|w3r}VQoPXM2iFUTACFaF|9{{QNO<3Hd3eHj1nzt2Bkeg38i;PZle z{?+H%SMgKa|G)Y?{_6Xf{O|j)T719S7u|#ZYkcoii*Hr?-Kz0r|NFuJSGg-SzJmWR z)%abi@y)OC1OD@BeJ_&#{j+QRvugb_YvF(Y3$^gS-}zd<b9Me_3I747xRZ4OD5cIH z_(zF#0r6ZM`ycmz_J1Jxzb+u69{3NG)dx!J1H$S9QD}WYaD8BKL*TK7pd<A`M;e3) z5O|;=2<>kO+}jYiry*!J;Xi0sW6+MqpzRGo+Zuy@@PClf|FbqWQtR3OYa4^sG|pPn z7_<sC&0g6wdqv|c;Qt5z&ss|OpY>bQ>?KXJ@m$<AYf;mj#Z9vpeVYyQFJ%Ao1R(h< z@eltu^M3a1@4xZK|M|!NxBu*?pN<Nt{B)G4&;O`Gi-6)SfWIsLQSGOrYAQ$h{(n?m z<*0_rG5B9o<rw?_SPK=3C%~~*s#II9ooaA<>R1QW;Et-nz<+1e;I0&o|APO6;s2g$ z!M)Uid#eTOs0Qn*1?#B=>#GGDs0H^`3xWUp(JO!u6Sa{3Y9RweA%jFAgGIqZL?OdO z@PFtCOaM{vXi?}GQK+dXbet%3yeQO69rypxNg~|;L#B#Cr-?#;^uHDPKg?Dm%uYSb zUOmhaX@ogzgt=&h@%>-op&?=aOMEmWz8VtpzlJ1GQ!-0SGD}ke|Ia1=OBZNL7ivlu zX-a>iB)<dyn$kbG6`InOTGCa7f7x0s**Y!RdM()oE$K!r*`M0Lzif-P{4Z_UR&Dt< zZTWU>`3`OQPHp)vZTW6(`Ce`LK5l;t`9W>@!4~pEeEi4dAO1hqB0QK2X%P<j<Ngo) zBbl=BmJt!k!2ZaeBlw9QNa6peR<fv{rBo})4~0dw3gxf@f)OS_bSwD(NVFpIKTUu( zGy!7T9EfSNpW7SL1~pHBoyXgt9WiaTA4hGsAz=c<w%u~P?dI6Fe^Tu>avNgXtrzb9 zaqZT`wMVPt+OLXhzf$l&zXiYqSQ^*<_qg^;PIN$+0E<s_SahPp!uSpgPIQ<L|HpTn z%gx3Fi0>E_-!U+r{Ez$+DDr<oC!d5)-U*$&5;}QuZi$@``JZ!6<Oz`28TWttB)kIX zj8_0QNu8~ex>zN3u}mWTo5TOfU1m^SrzgYzU8lnT$%6lR0;KT$Kc(CF6!@R<pW4kd zwcD7KZlhD__%BQV^8d+ShEYoYpKQiI{NH`R$?pA8+OH;QzZ!Fl|6lu^LOl#Q$REdl z0ss8$sdu_Zv;S!Y0RLwY<lnP5Ccv3qy}sAG7hVCJr3ujMEYj_DR<9Q(z&V57=lXJn zz0dXQea@&i{Ez$pIrzW7&iMh{ARY4m5X2K;c%SqUebPtvNgvfGeY9@+7~OREUw8#z z2LJ0`n5cVUlJ14cx)-L9|1;SC88h`L3;hgB{Y)$UOdI`7_J1bhKhwz|Q@H;t{BI!m zKg-(y{-;*}{<#15%?|9F9n?2_wqf=h!)#0d_<tdlg9)$%{x{6|-7sfazZ|~*UtHPm z;;McZ*BD(~$89jWxKV-s+%53GQSLV5T*3c4c>?S)&f9C8x8DTe{-3AtfB!tX|C{86 zn9u}}aPU9yPyX*;5Y@jRn*AR;pdfBQ!HEF{@f6`d>AU}d|H4xPDc~QS8&q^|P~rJO zMd^d!{~}!eoAIBG<Nx5xD3{9{d^sNzfV#pH0RE@g|Cj)@0=S~9L%Cs!R{+<BT~Z|Y zpI!mbTL6w;0bCz(@%ji%09papM`WQJR3`Z!_@~kd|J1pgJOLp8o0tIfJauza+O1J1 zsnMzE_UPo>qv;c%+hY=Mk4d=A{>NJYngC;BZ;v7WGydWKD4qb}cTJJ}?pT?^|G+;* z{=YXi_@2W5M-=`ackurB1NX-X{@+Iv0RA7p`~LWy=)w3M55{kQV1~9nF#C(}Z?@&( zgw4P|xAEbG4G$-<|0k?{IAP7h39BCg{}Wcy{U83Hxct$?KORq9#>ao$|LNl&h5sil zdNPUqKWV{}$@8By`+xH6r@;SY_&<;fcsj-Z86yAt68<S~PT~LObom$j@5ZkHNd7O- zG{!$(0Zez~99~REc8KxM@(258DDY40rwL$5>{o;#fE8f=kB~3{umun%0Pv6FKi&T= z{<TFo{=@$k|2iPce;qAfIa$7PwtVGc$@hOtdIjK46W}%Z--`Wj_1cGH|6>BY39x<> zX#FP0`pqosH?ytZ%&~qum;C>BzRlZ(++y2zXo>B+-)-M5wSA{}1z`Jbh3&glw(nNk zzFT8UuK?EB6|c7|-e6a}(T-jLY{mqz!vuK0)&Bi<`}aHS-|vL~xxMy3_}_v2f7F3G z=D_!V$I>vzQYlCNcO?HuIhIB{mc}@i#yXb8IhCDoDvNh2OK>Vnaw<!9Dob&q<9`}W zfDfmgKal^OKb*ty-}%D@=MNdqA2OYP@V`rWo=bVY3;W-N@Bc34mt8Ba!vC%n*In8F zt`)ajD{s42-f_eIpC-Tq?x9=dBe%-OZgl^D=0=hK-K$=@SN-i?^^ZH@|6lj2*9iW1 zXa9SAr29W60PxS1dVDPN`1rx&V>$9<|9gI_<i7jg>oX<*;h+8g*{kZa7x4ds|7ikz z`0RzszQF%90f2uT|KHOD5d81`_N(_By8rv2SB!u5KPJGB{`cYgKVAWdA6JVXRg2mG z;(OK9-D>e|RD=7!@6Br88#TVyYkaSf|9#p2zC|^@z(4!nH?PJow?^>4Uv{luR;?fK zpHb^~f$;AS|DUb(KU3#_y3YSpt$$jbe=3(;hx@;OVx50Noqv2i3W!B@0WtLf(e(jQ z^#PIfz<)q^eSo|^Kvo|B|4Zrvfd3HoKOg@C57!4AY6wIJ8x;QE$Nt~l5Qug)2JUDe z{BLg*{2%mJW6+jH;6Lck#-L3s|Ba17!2kNjptUps;Q!gH8-rFi&00wXt!N7RqiGh7 z|9CFtfd3`re<8vDg#U$2vlo7wHUHb}`E>uEJ&&9FZ8ie(+4-RU|0MYT|NLX~E@=K& zjQnFNKOq79g7)bz*aiGNrlLasR#oK~5^=yk`#%`?*Hj5+{|C2F32w>#ta7ZC%CXj} z$J(d{^YLH6e+cl8I;jSCQ4Q%z;r<_jepL<W$@NkV>8%>lM-9RMA^K_|@V}v2Xg{@3 z;NO`1AKG6nbf8-3AhpmTqR^qDP{IErMPZ{vVWUN1rlPR1<o~eoqA)X2*hEp-BvIHD zQP@;b*fdet4E3;?bo>vqRF_z)huNr0Y}F-p>Jod6Fb8#slZM1aUE-=Can}I;rMUll zX-K>^r0jnw{2!np4MLaz<bTOr4e5OLKk&a;Q?^)B`n#rVsith1rtA+**>X+UN-ZQ^ zttDHnC0(l}hyOQd$v0}r|Kzr4$+rOiTJo*<@`v#c{{#Pfw8Po|;qd<f?QnEZJN!@! z>M$MuBLx44w1{B*M})SFVE;!-TSm%SM#||4{6}&TQ9nm=@IQXziMIgqD0<4GTFIkZ z$v9yGghjWKaQG351pmjhIu_IV7(b83v_2Y5_y5Cu|0n++Z*zd#f4t2;1pgmbwCi}A zU9oNGEkJDB9qj+Dxc|q|@gL7EvF-khqc%1BKd#+6ZY@s$^8bl;@c;4?)F0@7{2$-p zxA+c=<2x)o(P2Tn;D34xFejk{`9GoKES>-X2^|r=0)YP$5&J)p{h!#$GqIC9`5*Ux zOn^?#NvN|^QfG%|{3pZzoo$l4SSNR};w+N8m~-s^F694|F7Q8&|C3XIe`-PsWtQ4) zJc9pIDfoXhCP3;hc+&m<B;kL!;QzE=hMxRoXj=CnX}=6kqvQXewC)4b*#Bwpe|PqO zcjHq%j7k2Kp(48cf1d!Sd+42_bWiu_bEXI6FZ6@|dlLT7_UuU$K)^qqg8zYk-CpMe z|2Izn^1seGBc1a`z0Vu#oHyw$_&*&JV31Dw;6CZV{}7$@VSUci{a@k#3#0p77}Mv1 zX&?Ci!Z_Uv<8?F4bTcOCW=z!0n5>sEMK7b-|1<P5%;A5%OiR5?E4@r>o&a|GS@!x_ zj{2F7?0;8-EH}=>0LOon?PHMb%lR1){?V+y*>n2lpm~Nl^9^$r5dL!(8}j|%FlVXZ z#Xq<e{RIE#uIZP%wqNf0eizpp<--4)jB+;{!T-7N|5l^i?M8V!jB<Ax=j}GmWB=#x z#{@9WJ7|)B*f{@)N&ZojeBeLWBtHble-rq>KxUFJ>t7%@DTomKKj2by|4T9bFU1bH z6gS`!`~MR8f54@r0fi|83R4H*_)oF_i_Q!zJUg)H+`uB>A6?+!fBN`m5bpn%a|Zo@ z{~=fM75>NZp9B7fT)8}iCcu@USFaAC32>FV{Dc3Ct_>|D{13+y6<i-Klz)9V%Hwjc z55LIe+!%qffq#7eb7N%Y%@G+lc>>%VnSPV~e{<xy8zb@Y&zV~z3IDg)|F;DH^Y=fv z|Fi#T0^A-g_&?$HXyBjxf9JpcziS$G*EI63X~Z4!f4IW`rqa8n<o|o7q4!ML|6}R+ ze}C-J`{NGZA9v_J{67x=7XbGExPAA>HT!?p1Hu2m|M+bW#*_aa0{>>4IlBMj`=5tq z8y=die>h<sdNg4Tj{lD)ta=RpQ{?~0@c*P`k0&mDJQ4T*CFse-#dQClwCFMX5ByJ> z|76lU^mG#4|DVGD!2jf+r;`J@fM=8apHA_6IvM^KKbr#l`#hWC1OGqA@qelpF8|M_ z;uQdW`SX05+w-ZI04~p`GXCLzngEV3rXd0U_AjR+yO+~#Ih&W$;eYFw)2;C&|Ie`G zFa-Dqy#laM;vXwu=0E1<|5_-s#Qoo#`aS_HUfEf^;t7CP0OWrJ|Kk;ao7HPKOA7w? zuzc-l$rFI_FSdGv{HzrI2mXVs-=bMIZw3DY|Kxvb3a<e03D6Q7ngHZ~8=3&iZHwXm zl{Uqz?26g{@5ukQ#T#skH`*3&vMt_h`yT$^@}vLl-tWTk-~Rnx`;vY3CHw754%n9* zv@bc#k^k*Wf*ndj?MuTPN+k}ZGKW$*7w*vP|FYwbrExp~;vLEViH<Y@;Qv%i04MVQ zDfr*%!&#>f=bW4UU(Wt7&vq`)aW22;%>H*K{}&?X^2_kQOT`tJifb<Hf0v4zE)}<2 zDsCg;{_k2z_kY()h5ubEpSV^&b!Gp%R=seodg(^}?M4&el^gK?5fcFZNAKJ}7IP); zA5kes{&y$;S6~9Tf5IyO^1sKYDvwVeJwAOxo}WMC6@cf*&x+Xpo|T_HE9eyf@b6hp z`1dS>|37<`excxhzW>AjUi|%!*Bg2Z;LZN`e)ZM+AByn*@~ihto&e9P#kl`J`|1Py zKdJV4RPFPy+UG&F&wawbkJA4>w`;_=YQ#4Q|Ke*kzKnk{{9jZfF02t>sudU1;{NZ8 z<3Ib~H@lX~B>(#Y|BB;3`QPtMogewXj{JYJ&M&3T5BN_a|NF()`JJfq$MHX|-v4;L ze@wkU``<sJ9?=Al*Za%r{U!DOVe|?>@W21DhJd5>fkzqw4mSiGtPeQQ5U{@?U|&PP z-iClZ4FP=o55)a{XG74AhQO_j6!8C7W8jv?K;VCKW8lWdzzvOokUtl=wlQ!`W8mt> zz*UX2aR0~Ue`RCPAKbF0Ahfh8==Y|eB~3xUaeVm?TGSM@@Ef(DY4(DqSztfof7aY@ zv*vIxKYsil@}D(Ju?6r$2-N@o_^t9&FylY?CjvjQU-^&x7m`26_*eVsn3_s3!U|AV z3D!`7|3kD?g0-oT7OEle|IaERKdXkcQVnjc8r()TMCt#~4yy2fXh+qMPO2e-|GTM% z0{`6={txY`8VdjGsD>h4wGj4yr~w`SL)ibJ#%f{k{{ZrT82dkr{g2~6g8wD#f5}); z82oQ0lKjX2>XPZ|683+XIs4!0NB^r!95p1)8d7KSzm)xt<G&RC_tB8~XaN6Ge+?=8 zAE+Unr6HTGA)TXv`#<?#IR3-`ziG;su>Uaun*G08D}0TX9Iexmuh)_*{U5$r3(5Zi z{<Y-WwZd`#->Dsr<Nt2LfA}74`F`z)eT@G@Eg}xLhyebNP!Y$d$Y9{VCHx-|)*>>D zKKnrm|A)7X3~w2QXJpH$NP1FHEeZe8JOQG94v(hfLNW9MD?l3avoxlaG`f|r0?7Z- ztwLg21s|s;{7?9gX?+A8rw$(n{ssTH#sm=jzxQ|>v?rFHyW`sIhX3Q*q8%u<?Y7vq zTlwQ3@_$_0KdE+`;@WNG*8j)<?N-ILTNU396JW)O_ABBQ6JXhi_Dkd2{~q6ANqqYy zjQ>UOKkol1fj<FC=rAXdCjk7P&@m{nW1!&w#EyQ69eoo!k^d7rBJZS*z`x*sOaQ_E zE=ipg{>KDJ>TI9f*$(0RpXAQu|CG*FDP73_DRlpznL@7srl)k7meO@<YS$?#<p0U3 zT_*wmsi>P-YFGGw96HJVKiO>z!U{OqZ6x)}h%}x6X}=7E|I>Z}{t@KQ`2U6cFW~<a z{15#9YJ94@QM3O~D<(kS)4v*U`lov!KK}R6JtIs2;rQR9H(maF_C5>z(~q9;|Jh!s z*I69@d-po0)9YLxPOmroe_pTGIrty<e|`&a-mtd<|LlKE0Nnr62lP%S|Leg2=|lU# z|I~;+7Z8sBqZIzXFt!i*ANc>T|1+oR;{Km8osa+KdYOp)uTTCL?*H(=gMOB?0m^pK z&%y+7H^}zT&j$W60pNeJ(*FSlIkOCNg8Jsn?wd0g{_mSJzwdwikK;f5zs&IB@_xB1 z40Bf+=B_p*|F7dVkpFYp|9OJ{w;AQJ|MPYlk^gc0-)jv2=O5$_o8%ucE;woo|5KqR z1z{!yQcn2zC!+tQD3eQ3jQ`{CfB(X`{)H#{1OJ7<KS~}@h%f<w|1|dh>4ETn5&VCi zOBe7zs3?=m8gw~ZiGSh#pEnr(zjBFV|6eT{O!!AvhFrZe<jU0{Gyy1@0AN480=PEx zGJYr~z_7yW^dg|(I@OGSOaS<wCII1oID-Fa0&p2OM_iyrBANi)xmzR7!T;RpTO&{5 z6QJ88({7JSrQrWjDEaoNq}!tsF#+z3j=w!R{?6zVcSe){?~XoxXLQWn(b0FtMBg0~ zb$1N>FWmp}l-(u#OVB;j|M>sD>Ct=e|JcJ6`~Uvf{r3g@!~f&<JQ%<G!FZ+r$8UdV zw(a5gtq;flMJXo0pAXG80soJv^^eTfJu+KEvHyh$@OT37j|BX)|0gVYJP|E^GI0?# zX~ENpNbvvMCzIwroz(1qOaO)dpHB9F2K-O<CHzz5|L0S@sHvXx<qze~xxSd<LMi<3 z^kNz!{J#`}{HF=Q|28kD!T;8O;|D!~f2)7!3He)a=Ksu4Uj89}#VY_|0?ecpU<v%s zd`12@|JTO+Ut9B6whI5haxj18VDZYy0xRIPljUn?%hxWJuU#$J{}!)3EZ%rnzVWnt zgSP-ajDLmyt=<G!z74Q?6KM4&$m;DZ>$kIU|F?cS&-(3r>$eNIMb_^YTfhCyh9<yL zWK9!bIp6<R+7_>}DPC=h2~fP&ws_rt{lD4n{a<$Px7xnnX7_%(-TR&JzwP_ob|rgk zOE3Y*|8|1^OAp(Z9<gWt+n0ve(*z*@+mru+{|NZsUYG!7xc}2D0LQWu@V^83KiRP? z#qmR`W7$c^4{1&xPB|+5@AM&^%W%T|zdYON2md>l=fnTb6_=dJ|3%Ifmz^uF3jTMg zxZzxJ6XE{vQgO$n;w~lt{O?-%z@_q`Yvm)?%E#>gXM+FTD#`z@jDPswmHm$i;0pX# zy><Ke7Wj9g3Gn_$|GUHgpHR8SrwaJrgYd8LzdQS1SOM;z$p0QypFOLT&&n^D0Kh** z_x~@RWgPn-6Ts{J7ccl9z5U|-<_jhO{7?8-`kz(+@c**f>-kr2`u?Zd=V`U~lWOnB z)!x9r(EVy}_P@`aYJ~59d~VhF+^F$k|BJ8I0RKPuzs9$qR-9ieCjZm-KfXB%|NFB4 zF#*KqYQ<-3ea`~_wc=B?ey8gEfdAAwU-rLWQk`!?onJyd{O=oA=Nnt^r}V#nRJ|Yj z-=FdCC$0AjBmet{*82t5`yZ?KKZ+XskKq1aA8@eYNB{fpY4G3O5U{Jke@8>W_Qrr6 zje*<P|63aaHa7<RN&XMm)EJ01GzP4rfd2r<U+MpVm5qTbn*vuf1um!if8f%lz~3qO zKM?pACcxsRphe&C@y{%r{TDRB|3M4r{vQPSD+>bYxu99!f`X`K;s4J+3V;8f|DgFl z#t-&CsE-x!z5n^g=6|Kce~3sW_y_-E0)&wNxt8qz)~X?>t!fA+Ks(it_NpNr2>+p- zR6{$fhIUa6?W!8e{txZ08v3iMfdA0ms#G5}_&-!nEmU7Etgl+Ap;}l!wJ;;KF!;Z} zTG#+l*g#R(AW_&55&R!EToeZUj}%GR{}NLX{4W_t_?Ju&NhXRUlSPs#BFR({`(GrP zDUw*w@n34CF0rQjztm1$>Yy%l(x6<_rR;wk|7D&UGH=4aOspaE)sXpX$O1HELELOj z*<20TJWbgGP1!<C`64?01OIZq|I3$Y%9m@&S7^#tX;G`S<b3=OU#}IuQ7e3tR`{QU z|M0)Kty<yRwJG?2mjeG0dkOy$m;n1*L>wgi(*!uuA`-`c#y|WY8Olin|F?*gAv*p; z{!x7S2mYz(=6;TZ|9?oB0Q95@K=LR5$F!2fv<gGVsnD2KA;&QRTBBneCIIB$JOK`2 z0>rjH5ZmTJZ0r58t@lCxLco7qn_Zm3|8ea9xVBsI3V{8;8U8;(ZHjBV@kF}~+`1F( z)}Cm$=0v;Iz<+%El^pp$o?Zbgi>H3)3GiD&d$cH_16r8SVLmr6p~GCk|A`%E0so0K z0Rj>``m_J}{@+oY1pId*|0i|wNb2Oyxg~dUN$TX1+{rn)vr}?s$K=iq$x8nx<NmMk zza{+70srLxlrGa#yG%>%GBvf!lvKt){GZx&BKaTpfB3)axRYJS!v80`nVzKkKkz>~ zt=q`7Ul9C1oCE%w{XZBJ;M6YzPyI50>fWC-IR*cBH#&`eMTW|Nf5HFyr+?Ky(?d_0 z;{K0U0B3vZDC&hDxcoQQ^Bg8X@1Ez7PEUpZ`Th_8pV#ko-k{g{zP$<m{dCUv!||U= zH{tsCP9La4{vV`sVX)4Hp*k0aal_gFz(4yx!?aJv*ghHKIHmtHC+TKR(aoHumpM&0 zbGlyU49353|F_2dUoXp6FUw9Z%U&<bK`+ZmKigR!{?B&R&vw_(_AtoyG|2Ym*#9}W z|HJ=5m;eR}|6>A>|NCBCWO#9L-;2K)UR+{$QSd)r0sN2u*Z0fa&@Xpmzq~*D<!$Z< z|L1Kr$`kw#{O^MQjq>*x<?l7h-*1$Ez&QVqG4B5b?EivblY$VF0>S?h6WsqV$xSYW zn_P+j{yE(LkM}QB`oA!te__IaLLC2<_y3}k0}9gy6rJXp{hvPYGP*G6a>k&`nS(9^ z|A>zNT<)MNd4mZ5`Gc+$kpHh1az%r$UMBfdO8nE0YeQiE%Zeut0Zf4F!_XyV$_X$m z?>d!x1Na|~r{Mpbo5Qnj4$rzd0`V&VyagDMuI&6x!aq7I`2RNiPxwD|d(=tpKmNai zR{*0EFaZ?)A02yV^zpm!KjB~L|1lAF$AsS<BfmFBc6W^Q-go@-{ogeBzUeVK{*OJv z{y%ho>_KinCcuNS`yPzj`vCqQxBJ1kT@S|Xd^m2$!*Samj&Jt=mWSifpXkx}jf{Wz zANWUWADgXtY=+}M-Txm?SV8`u@W<l`%edd4O!)or1RVc=!~I|3f5Jcc|0y5;3IF8( zSx+Ygaqxe@vq`xB1OM#*$>QgeA%En}{`Y)71$jK5;*MTSq2s^O|IRO_Iw^B_ITil5 z=YW4(o&b#hX*Pe;1h69fQ<ex5;2+%lrvv|d`JXY9R=|uILjTU3@vk}X&%yte=I}p- z2|)hm?95-;!~cp2@ER+?+2XYeNB4jD-xB_R?FIi^zVWtv<74?oZ2895@{K>o{(npU zw|YC<>g^n>w{xv%0<izzEwp~e6X4wv>vz9fv;VE%Ew?USZiD;(JMzCx@fw@rwKnAc z^|tSE|NqnWJ=$XX{x4hhzwP_&w(oZ$yOP~@@Auf1?6oV|XGi`=hk$>(lB4#eC|K!# zseLKJ1PHe;jj%6`bSUFbfXa?Ll*Kxfo#2%I|G@tLK>l|m|DWawaL)0=dB+dwjvq3d z$}>4kfE=gti%#Wvg8!Z1|B6EA3c>$ZoGY$zg8y$h)BXRBOXXdc%6l%A_g&ckF3tY0 zdg@yB%(dz{2md4B|6lI4EBs&e2KaaT_zw8z6#jSnROYS-{wMr%RqmgJKDvKGpUM9p z@gm@}2m2orz@w5TfCunjfeG-%gZ%%6Qu^Ps<csHfuK0^5`yUg)>&;iM*I&I}asPhx z`sb_H-(S7>{_p*w+WUF6_p@s6X8%8;3E=&p+8h2ycdNbcRD0h>HO>C_xmM$ImAhQy zL-+q$y8rX>AO06#tQF_finD9QS+(NKT5(3L82C@G6`u$GDe>uA-&1wIX?4CQ>wMw= zWV-+RCbIwI>wHht`Nh@yvH$&|>-~WLNb<j5c)g#z-cMHVCn5j)0skS~u?F)0k$Qg| z{|`6#AK>;k`0r~_;D2|6|ISALo$!ByKPCX=|5szc7KQ&Y0RlF1O8*C}X{1&+2CQlX z{sUG}fq$T;z-8=zVFD~^3Pis(1ukw1TqK0c|F^*TO@WZVfd6?k0fOdy1O62O|4RQ0 z?EnAqRQV|c{q+5bEkJ*1{v&><s)VSh;2Dh6ej@yfR6^8MLNruDH97cSOC_`gQpNE< z^k<dORw|+Je;d_MOn`Q(q3u<1{}1b^8rDfQtg~tu`#+5RAJ$zp>{r#Wo?LI$Fda4c zKTKB@{tr|7Ut*+28LLUi|7wzfBFSKpWQa&IR3w4_hl?bb0HZ~cF(Rp{NIH%)6G?yY zzjT^NI$b24p)NI7ms+UH;D2j%sg1hKPF-fNE`$Fa)uqlFG8YXQ`(NgzDfd#~U+$|R z_apqv12yEcG~}~2<Z~$5d`<ZR4LK$N@XyEp@ZUAVmukxY&<tO$6~00<e3e%CYE9h# zBi3n!qYc^-8?_KkfGt`PTeQM~|7}_kxc~3ej@YFgv76hg9og*vgW8dYS|9=ck-)!D zXp1O><G-Xul(a>ZtVNU@DK7tl{G+2<QqhWd2>cuo(~?#|Ov{KE+5(V&I43{e3csbt zTghU6mK<+|A9xBA08dN+q2Sn7$GD@ht&ebrVp|`IqZa}63LuUqz}`5;1Q723yXg4e zX6K1Ecm=TSM4N3V+HQmYPf%Nce@uXQngD|T*T=U*>*Cw3jc>Omo+iNR1bPdwGQQpN zg!br<1it?#&;$_tzc{hOqQnjh6Y2gxKe5BSMD~AThuMi8;Qyec4k$3GV?Yv30N*6a z2PJp(PVVTL+zAuFJ-HL`@5;F(cXm$h<do9MF{KmvKc%x>N@v@Y&NeBXty6LQ?`)Z> z^nWV*KlMldcbR;$>m+W%$*zd}f0F&5*3Fa~lScj@1^=If|GSMi)ou7GOn`1fPa(zq ze=zWW8vgG-;57P`Ccx?LCa1d_6aLBn{myjn2mhb>weOi<4U|v)Gr#JcMLl$XNat)1 zMdy0-M$Py?*Rv<pi|gI<ybjl==XqU3_kY3v>3wMeq#O25@7FussCW90{vXi$!oc1a z2KUA*0EPdD>tvu2IvFE%GDi2w7}Mvw|Ht>qH0zT&p-<+-KIH$&eQ^J0|LbPW(9N2u zm&N|iqVIp2{g3;<Ubdqi`(H2H%^+L2|9cwbc<JZ(=;w$Ha(oSP{0(y8|3LEp#W{U1 z&M~++*Wlv(z8A^=eRCK0&0Rvl|GCQybC(;^{eP8k|2GuA|H<3XFAx6T#Qy)QAN-%c ztzZ83e)&6$^6CE1_}@qVFF42@HWKdt1;NIbLX0nk8efta7f4Jl$xQI^58+?w|H2p( z@_(EOj{j6b|DweHMM?dO`1nuw7yN%}K+%~2bo}S<e;EJp|G+C51L6NGSp%=&_)qu$ zL06E%|G+=_|El1B;J;`H{D1Ar;AZ~|D}detTpN1j8lE%+=taPFd;&BS$N$3XLoX>S zxG^*zF9L21%ew*p4}<@yo5KnJcm+WIrwO3&|E=Nt7GOj=UH-Y-BhKC)dFJ+r)9^px zpC$nNe<b<;&Pd$<lkbd7x-%+)J8@@J945fsQE|BcbJ2JOaCdan-O-VE;s4PQ_r`?7 z|M$rM()(j1_s7uv|31F|Y4*SA(fg){@0%V%4`>1$Q22lBo(E%hKODR3!Ps37$01Ar zrT@p_6~LB9<2OGV2mEg$|5F<tjc5FiU;B7G{J)wefZ58&W-A_>Eq`M6#}l(<PiO)x zf&ZV-^S7rH$p23#EPNv1f8xBS6LI;U`*h-*rxRyW<o`gDKjr^y65;>(B*y<_@w3U^ z&k^1KJ)cho{>lHqKQ*=a{!jRSImL<OPuX*JFQ-y}Pqm>4|JHv`v!dsB|3m(ae>@@o z>B?rz_?N<4fEoYJRQlgy#=n*`ULm{%ur_~X1N_gV>=60?HF7k6?ZjaMxSGFqF@No5 zfeG*iuK;lW_qI^vWBC>nz|Zn6@~2k-Z-Xq^|CVoOTfUuZ`F5Vw+xb@S&_b(si>%)L zhRFZLOSwPbf9v8E`2Gj}w=P~|P5xhRQ@p|Y{YD$=Pn-An1W54zR@)Nze}`=e`QNr= zkKOydw(Nh~k^{CShwMt=f0_Vx3jc@Ml}g}$yJr8FMcS7|Ih4iNEBqhF{*TA~-=Qqo z;X?{{(t-Sc+5wfHas0skFHd(Yzu;J&=~$lSRG#I?{&!^mJJKtFOHLJqP8CH?bpIFp zf8D9_x^v}CgpYrmEAKd0-sA2&S3YpAe8fF=se0l}`2W%Wf0O?|B1`}r|LOkE{(tNG zvDo$Fd$*78@pQ!}K%Yu^0?_^6?NhnirwZi$sgnIK;Qy2R=g*h`!U}L_|GTsQ-7x_w z&=+^%6~Kot9%WqV7mv~}<bR$39>rfg-hJ@^{@;G_c=OfsHTUmV&wseTzk0s>>h<EQ z=ku>#|MkBY``_z9wb%V>uY3RTzxPeL|9fAr@xE5$eYM8>N{u)B-@CBJo4^0@$*=Xv zt@UC5`@sL%wLY1(J{P$2wLa(R{x3cw_`eqZ7pHP5bz&U<6YInYbz=A*$N#u`-{W-u z_l>UiRr=poUhga8B=x@Rf8UUL-{5-Rquk*Jzr*!@2MPav`y2fBaeVyu+tuK=6Zii{ z|7{I^TN?tlHu$su{r_zA-_+>8kz3#BkJdH%uWj^S&8=$mXaD=N|NZ}H3Ru<@u$02_ zKVV5yz;8_fiz)a&U}00h0uK0}*Az6rDTw7CIOiLJ{{v?!<I8_w;I|*c1o-hE@%#Te z3WWa#{|c~IQ3+L=KNSD?(@&vF{L>GL{~J}6P&JhhBvJ`gR|!*B3Dr;u!S_Fy0KmVt zN*MWHC5-(a)=DL;wQ5*f)lf_T_J3FhRS6~l`(M&UHLR;D{4e=MRnlEm0{{0=mGn{z zWB*I~s7dswFatG7Up0xLnuPEF5)<;jbf8E&P)#~mjV8cQk#v|yIzl8JDUy!n#)@R{ z|9Fv<{V$y;l1>&$r;23L)TJ{-vYF~Ka}oS6wN#g}|K+yoa`wN>NkitWE_YFvxoODU z`S|apE*EQ1ej4Ha8u9>*aQHun<R3nllEeQCHN(*&@_+aeP4fRT%?R?pX820Yh*iM9 zW(4~`0>}RiS`nMHBL38h*sK)^|No^Gxs8h0p%uAPJ93v+<Q{Db{@<q^wO>0D_&=x} zbr`jX#PR=_cGR&JQ6bu#!v9gt{>KCeZy6my!T-@h@PACpm>8M>QFtDwXXNppqkw;9 z@W1>x7uyOyWQ>1lEKPv0SXu$0v8_Vk|5$zz5Z8()Kx^`UT<gQJ6#RcEuFb)?)(7DK zIIMs+Gy&q;>=9l8oM^L)!vxqK-*!7s0P=r4wHXrt{*Q0FDZbst_;wo-+OAJ%Oa4z# zOn_B_{}b9RPoxPz{s;aO>A3_Ywg>*n|4BRnlF0w_l4t_3{{{S$|NWCY`X_btOYZ2K z%=drxzgKc64-Wo!OQ8wilG4dJh5U~kQrQ2gGy%x}`1l7C0RB(yY@XW1{A8DzC%epm z|4;J$KdsA@lU*jKb%FmU0{>~`e>6T#@PF5_g8xr-#ql5hrwMS1{hvk?0QesU|DXB= z_(y}t|5yPee<9%C_)K>rbQ<{YZg>X$+V^aCgbAR37RP_`zb+=gIr`D(Y>z(YekJ^$ zqk#Wj=X&;1JbU&!|AYU}<NKf9J=1l1rj!4BrE~Cqx<N1apEB%~-me$@e?jU03v~bQ zox%Rkfd7Z+WDM2G81~)&nWJ?S{uf>WDE*%`3I6YsIawF}&zh#2HC^z(F8rTushe%B zmu;<^ZS(#9pX~(y>*cuU;r^fFu7~e`ay<3e{{|Pu`tbinKmCi!`~St+m;eSB=NaVA zH^^ORpz!~1eRF^Bn@j%hEBHTem0{j$!@M<yd20>x)*I$+FeLmd?*IMr|LT{&mHof7 zU%{?^bo}3AQ~>-7{y$_?aM<|LQKL)8jN$(R!T(_<m!!t<f1%vCFx(jaFN`uNj5aAe zP8E^=O^Sg31d~GY|A3<8{zWMRic$v@r46`zs(;a`0hi(bGXpN48*ur&aQq*5<-&j~ znF9#_<o|(JE+X>()x3eY|6eT_bTxm_)k}k}77n^b_{Z^|x^|VjHssp1!3f8HLH<{+ z5597J$YpA%@T3*MVFCdE<bP^d{!QfsxXCNv<}gfvoLj@PZw=4B1^*Avyfr)n{=YRm zof>goIRVbz9zp)ULlYnkE8xz^lXpg@-X58H2NPgq@|{shKlnfX&M4qt@IO8Q!uLP) z3DCV!<o|o4;s5Y^6ukntKU#W!H2MGj81nyp_<zhXeE)Ob^oZd92k^h?fd{7hDct|Z z?s-W5rwQ<Itn&UpZtJ75TOW@7>*2U9565kOM92S4kH-o4U;lVK0{;2_KYsP&@&EDv zWBA`}=@T;n|M34}_#gP^%m0F>6Xrh^{ErDRan7@evz|^2dWI&UfM*lof4^rF@%<0{ z?@P!3Nj`-C$zGht3;2IB@bCU&vfGQvjQ`2_{>Pc*F9iHgVgFB2;Q!@R+m{0Vr&|Aw z;Qy&s|4hS|KbHSYWBCiu>E{1Vn~8V=(D9%AKON8M^aCpZ_;2>VVgk&3Wi#`&4Nn03 znXm0;zINa+0h~D(^Ec#wbN0VEPXML=fq${ZTVD(EKYapZ`8E*#2mUSI!T)m<{(rkb z>Ho#-|0P!Z3c#v(8T)^wRq;ye;#Jl(0oGc-N9(QMZ?GxeWc_{<{BQGqi#1OGYux`! z$p5w_yKHCzkpFE<_6z>EEj?^odc?N$7_uu3;Usnn|I6_Tz>fWIUltAj+m#)+FN?D; zJ7NC;{!g&~km&G%CV>41^1uCuQ;dK3|Ey#AdB-38?^vGgP?6(Up6ghVhY8?VQQ-K4 z{~ar?I96PBuDI@0A^886bEU%nPL=nZD#`y&l@H1PRgYaNpEy@O!vt`tdhT5H!lmk^ zOV!^lbpNOCe;EI-T|Pqol*`9ruEgbIiQC5#SN6Z#N5a1=<KOjDr5jb{`kDRz`I8&` z|M{~UPXM=%pMih3Dtf~I!UTZ-J<7j$eE8!2ga0uBJl=Ecf6sScJl}rteDekV_jvWy z^9TQXu>bM>5B03t>uI&;lWNb$)$qU9!|G=Ld-46>>vpx*ts1YJHQwxhFQxyzF4uS! z)p!-w`dq5@DX4}2z1jahIkoV=PZs+>gZ%Fe|DUV%Ia}*<rcQji&gWE}IIR}`_er7P zf3ed4;<$P$rrsAt*Nda-#S!(s=tuu!0)*DX|KelyV)*|^z3<_A@xgju;Qv5_@4g1# zy_Dac2EW}6zB>i~<M`j;zqJwg_uJCwzopR+_}|p%2mf#2);IbA|7#oll>YZy(dfUj z(SJpg|MDjI-+yV7ALNe-@OzU#@UQg0|H3AJ0sjlW1<d~zFz;Ky+;4$%oBU@J{sSO? z;R)n(0ZRM_1Q7f2{4wD#0`-6VE&RvAUsQey{fYb^s;Ux(-`E0*Xa&%}Qv4DB!B6nN zBH*9>AEv27X{m&<|HE3UQow&JRrp`pMpfEQHLSgwq&?wZ(ot2?iR-E=LCyXL{@MQ$ z9aTyfsY&$JBnE2IzG_lKHEBOO{!2~Nr11X$k#rFJFOm*XBm55+$wr7|qeL?Je~d_G zO8%FP7s<>-vI!#DB#~^2NH$enHccd(p$`Ac&FT0rvr?Di_-{-1f4PIY+)-Wbq%Md5 zUDf68>T(Ztxu=F4{`bKIP>28J?0?`te3nK8`#)m7M#OyJUjz6LU#uDan`XrCnh{Gi zBiR2DjDPq)0{&mCiTgkNPse}uf8=I5{zoePA4&e#irlTl|6c7V`2T=*6!3qD{eMI| z3IYGYz&}p_9RDRPVk9l1rJTG)w7g|>c#CLEfXJ3HQCxJ(7{vak32>Z?X&H4K6M$BL zqS&7!j{h7U+bSF@AogcjY%2u+OO%Dh(Gb822m$_;9gS;^XaaEb3gATR11H+-=k}dw zvzOa*qRnpLKb|JQj(BQYd|M&G|63B;Zc+HZ?Z)`F8xZ_Y(FDNpAFWJmw=$vKip2KI z6Wjlh*nS!C&tV0?|BGn?v|oslIxI-)Fdq{D{!i*KC#l2iqz<!i{7>!}nB0N<pRDvh z;~)2buau6SDIGmhI=ZKHB>$&;_rGImXNT0z_P~E?C%e?nwyB+M2>+d}PIk6D+1cVG z{NI`Uf0F%=32?H@RPujUGzs|U%+lEZX~2J1Q#?;~9doMN=u_QBaU)I(_y2Cg==e`T z{zFdxG8p*h2Auw-KRQF1oMHc;{e_PI93}w!AFlwq8^HgZVgeBU717yW8T-FS&vQL` zo<}`<P`!Fm{0ad6r*wO!>-9nxFai4Zx_}j6*y}<+&KMJ**9DW_7jXO^K>p7d)EoZK z7}8tee@p=3{y$0w6Cl&HPv%%|e4i}7|7T6o#RSNjted6ufA)+%Su=IB%ypanpJS_= zZL61Uua~X3|LbMD=;gTS!T&krfBhV9y8pxf7k%|F`Wsvf<Z%CI|L4xb{of#WfkCct z|7ZW_E$s{c=PftPThaHs|JNDjp$&%l8x8aSG|b<^_=o>-{NLWMfc;;vyI+Ce{{wvd zKV)?2uu%c|-{?}X5gq@-=>8A?7s`NtlS1G>68JYJ|HtqIh%+gI|Ks6*KK|4Fzkg9` z|Du!qi_-eT|Cdj5X9fQcxST#ff&WY;{&NKXL;eG=<|Fn$CV=37u>bNP>Wb3;S0R6j zR>1YaSE(WJzj6W$DY`zS=*Cb~cw^`#?)wC|IW+Ia(7c<&a^Zh;3;qZGsjOSWQM3P* z6JYqc+ar+Re@uWgcSf9|$p16};D3(%e|Kc!-H{1*N5$V8$@s_pe^l(<Q85Vkzc)JS z-YD`v<DdKw{NojXaQ`R&j|sUyhW$V0=zU~*<iVK34@?ho`yZO_e>isE!?An+<NvWc z9**7qaO^ht|IxU=9*x`b2>!?Ye;oP$@wg3-$D?)Z|22;Z|7hjo@i_jkcrspj{|Elf zet&AV<cS%M{|Lu_wBV`PeDeQ<xz8rdeL7*z(+RVmO+@VfiGhTF3jRlY{|Ejl@8^@e zUQF_&fPaed5B~%Ilbt#E-;rbgPqBYF#qMuJ$A4SJ{h$0#`2TyVCHiNY<v&v`{+VXZ z%@m&hPMbl2{nT_kU*S2EGoSGaS#ae48LzBozDAe;wjBJA6@Urgh=d6+6aIhWYW~Iz z_&0y!ZvMv8{H>S8TW^cEJ{E5U|6>C9Tf7b6f-Eor;Qx1XEZ@zwd^gYX-F(Y;3oPF) zw0yV7^4)Ki@0M7;``zl@Qmf)WxaIJ_Rq-k-;S~V+e;xdfR{-$8_4_}q;s25?Ht)B= z|28FPhYkDRreu#z$v&IX{kEkCY)cQZ|Btf&gKbMgY)eCJOYsUoYFj3=E0f!mk^i}9 z+p-wDvRM1FSi2A8fBO&cf0F%&WP9>|sy+MPo?Zc*btpgQP=4ONJl&!Ef<t+RLwS~c zdA1|`Uvbf~f+s*lzGKBD$BIJ7iXz8~%Yy%bf5*xjPSj1O%G*wrcbqEk3jTLu|2wh& zoyq@C;eTiLzjM_~XZFAI$A6rwUb%b({?Qvu0GE&Nl>UG3^0AcqROb4z%oWd1AK-tk z5);6c{9onv>7yI@{}b>}eN=`CP^rkB@Bi-QpWVy9xPSQKR`$icl=3M3s__52FYfQY zdc5V{eD!$!)&131kAJy;zIy!q75?{lQSJGhd&c-@|9d{F_GJHi;{JcPhPqSZb-PCJ zzt@c#uj@7Nzt<Ix{qKFL#;c&lJHN&&m;CR2vDQ1M);qh_JFC_^gG;aTIbY{<uFmId z9sCdc`=r(RoUHQ^{GVLslT_!OSmzU8Cq7Xpj;j;L){BqR1Q5gjk>r1II47$YOSrIl zG4LPE{y)+nKGNWOsNVNb1N`s1pM(GRaJ$(5I~shqp+?;Q{n-D0o5}ywhDJZgAFU(* z`>i4W`>o<uH2N)X^jp#72mCK<^jq5G|9g|)62d>Vm|N6D{^tqcKd*`V=0CS7U`|uO z>~GX8F6di;5WxR`n7`To{{H{j0?mK_pC2keh5hss<R7NO{^#RA{YCLd#lONR2*W^N z|A+DYAO4qU5dI~=KWd>OK`m90aQv6>{a?~fm1>U_K>nA)|D9E(T~wuARi(dhxc>wH zJyoT>RHeODr8=roT{WqmsuZsPl>V0)smYAhWF~4d^1qsFkeY0Wnrx_=Y?w$k9QS`U z_#gLw8T`-pfAaqXk$j>^K1n2>B9c!P$)~ByXQ<0(iewh*a!d7a_}^MR+*Uo@UOn7F zJskdbRu6Yk4|i1$cT@O3+*^bFuMzI25dr@PYDBRA!)Md+pZ%{v$N$Be5y1Zv@_!`! z|A%Jea?Qw<nvuXi0{+)(My^Njzh>m0T2TW2;s33C|KFh%wFAe0?WjH6UhQby{|{(K zAJmS<1URf6&9VQrql2}h;s4MU(arLgwTO{(5iMd+Bx*?s^2hUd%j3uC8565`M#uh) zqNrAw01@!NGWfrF0!ZS1md3S`D8mW}J%I_(I`~AZV<+%zee^`@Bgzh+fdAVdo&c@) z#iKTR<6G~EZ-ayhurt2x4&49Y{{(7lLfgN9|Ae-iIlKbcm`H6%Y`Z?O?Yczr|C+@1 z6i)#7ANa>}Sz^0oNi+eLB(eXK+AmIOzbFa*Z@(b9{ruz(^O8HvP3|x!xx?(_4zrRw z1SMkvbO<2-ckoN;;G5DxoYK)Jg}(pshW}I9|EZnaQaib(c5>n9`=8WK4ym2&Pg1rg zJK3C6`acz)0Cl!V>ujFJ{!i;NJ*~^Mv@TOQeE&nQ08Vw8nAQao!0c4l@u#|uWBHq& z>Wbk1F{iqYI^A_7)eRG1_~~xLxS?md4LMB>KGSW`nP1QVj`0uw|6+Xh7o)S?jW7Yu zc1L~T|8pdNgL9NV&i;J)#}k)-_W!Rs=YQ=@@dP;EqZijRy(j7+1pKGt_%HaMUIF0# z-}8bVr{5F!zkmq<{~PwozyvU&GE919^zW7N-T%EahUjDt?VUMHCv&(?<_Mk4kvf@z z|Hse-$QrAYIS&5U$(qoIg8!%JW}~Tng!_Ls{BNO~jjZqrfbRb}_DC20&*A$&`QKIW zzurYpy^CIY7k%_DiuG{(&*l4nZlHedEdAWs`nkgWe}Tcph48-tzW>QvVvzT{K_2k` zN8kMAeSh?S{#wKQb%y!y|0cozhB*EgY&9&{&I$hC)30E!(WQO;aR0w_(C8BUe?;m3 zV@8D`M(}^3#Dwrq{x>d+Fed*;85hPF7acb)iZy2Z<Ni-wPBJ0<C-=Xc+W+!N#=qcy z9RJVuzjD6+6#@S^{%25Evj$wv9&i=Me@uYffme|*0SX3QyEO1x;XuCsGyVnt^8~nl zeK3OjmH4L#Ao%~vjUksg_WzK=8;UO796}S|=8*iGL-7g#_|LsHRPaAd050p+u*_S- zaQx4>HSEIe;fP)V-2SisasTJi?u<Yu(cKX#cSa=N#m7H{f5HC=cgg=W0q%{8y*KLk zJv#o=CqVH3eM-PT`Jaye6yN_xhdvk`{9w#cbbri|`@lc-ga1wUK19O(-<0nEk4(w` zj|BgZ{p-=#Esw?u{s;ay68^`ne>`s8<8f;rkAwf$JQ=s@3GV;!|M=zT$@pbY$K&|F z^eOxQDg1A?_^H_<3jU|&KbtTQ{(lDl1OF3dJ)02pY(gLx@O+}*a~%KaDdv1$O!R&M z{7;1cy`E3<crnTS#UwY*^~EIDmy=vxOmcZS+4<#Ur<ao*Uru&-Ioba2DHQzwa*FNW zl=a_JZ1DVNiWLR<Qx=Ng|EU}w|B3z6rYoEF@3d*O0%lBqMdAMlF#Q$61hAY=(FB<B z8rjTvZHol|&tU)0eB(6pjWeh4|I9b;Gv9j5d`lC+{H?e7TOaeczMLQ9KhWYGnq|SS z04(0kwRks=n{NUC7caJahn83t(<=bW;-!`}0hU`9ucY3uvU<P9>it@)_v@_QueW-? z5%C1rjQhWJ$yS;GCEKk_c379};`UgV?6oP~XH#;(rt~2EZ&P~2ru3){y#fffEyDx| zvn`Xr|F&gv+p=)mvPj#qDBH4VyRsNtdIb<`S9ZegL%iLGL@wFxLyBE_s$F@SJ$2gt z!x{VXv-a$N`|=C+<r(($2~f5}IsBjNK;=19<U3RpI8+omR1`T>Tz06qiu=Dq#dU|u z8;%t>94l`+lK*czR^CNURrejM9ynG#bgFvfRP`ACcOv{hbE<mIy>zPj+X?vp_=<b& z{1Lrz{=xswA4^<5A^4vrfXk;3E}zO>K2;!002lVZ%cqZc1>o}elk4ZtiavdI{Yc^d z?^gB2t?~<=IR0Y-xRrBd<bMhipafw8e04A8-hOol{@;9c$Ne7@fc@|O&sX<m|MLX! zcv|fN{6DGocwFuAsM_OUwa0^M&-*oA_Z0s3yj4Tptns{2<9WTt^J<M3!UVWn<5^ha zMgFh#&a3gtBm8@zoLaA}TCYsO|8?FM>b%a?dY`NFK10F(-t2$x)H?5!I&a3mcS4<a ze4RJ@-zT=tC#KFPy51+M-Y2r&N5H?lUM#Ekk<|NyHHhK=;0E&l(FT0~BR*0uKGYyS z*dP}0zpp{Or$M~CLA<L$yt6^PgWJ|1-r6Aki~R4qnNs+FqhbR10{?3peS!bgjlQcI zeS!ZKjlRnpegA0m74XmZfB4^z{qLvrzu$r;Y98f3m+<dD=bQg*^1uJAZ~j5b0>AkO zC}ZbC`^`c4&A){o!e9Qce^>cQLii`}3qO=k75dTqM^zPx>Q9&e5;YZxh(7+IG*qPQ ze@p<0Hu+!LQk80@Ds8QT<G%#8CI3s?t4cel$~sX}rT=B!*#Ez(N)i0uTUCbO|30cR zJvFJmn$$o|)>lo|Pff1$zr4Sie4v_qkeYl5B^#zD8?GiBp(Y=thWmfB|K;OFavc8! z|4#<~Me^w)`3#ZVTolg!ms_caTdU*apJxAu3;uUgk8oFy@K6u;QjhRf4;QOP_-aJJ z{{b42vos@vG$LkeM9$HOn5&87f8+wqh(#Ka@c&}XNZ=p$|7Dty@c#;h|D#rGMy}C} zg#R~aMQzZG+@wX}<Db8@qW{v0g8#Pz|5{PIw4%xXT9AL#KCS5ebo?j(A0qt69MO(B zrX78ZpTRBQ|L9O{;qo6NZ4o2*KfJ~9aHapFTEs-RI3C?Xkbi7!%i}_r0CBVel=!C! z5E=J#q!Rz(v3LtW$>M&NpJ*kEYb8CQ2rD3z3ps%mK={W5fd7RF0Q?`0Z+!^S3TS;G zf!d$YW?up(K$|@Y)b4~fyAs;$OlY$`p)J~$&;}C#{znS`C$!y^)OM4?|Lw^CN$u7q zVgj^Voz!kMUI8SwTaiRx0WC{n|0lKoJ-Pkw0{)ZX{|<{7|Lp(v<o^`*e~QxosU7@N zI{Kw_^iAz3PG$e6cJ$(C0<iyu3E-UC$>}6T6M+41$NslI*%{&fZ^4<Tb(xvgWyYz_ z(~;8uQ_}boAo%}OmkFof|1RYJ(_P1&?rMt2|6RwN?mFsJ*O6zsjyR+6KTUu$-G;LK z2ebSKo@M`^?biS7FD3~1r&j>*KTQBbp>yPangGrIKmV&P2mj*-@Xz(of&bHg74Y9H zy+=<<m;k+cUg+85La!bdcmm)PpbLF^UiiWP8JGa<{|w<30Pt_rE7PP`X8+!qm;ikL z&m7!4b4YLYfA6f}z2X0?k-Y`~XN}RxGSz|qv&QMb|Jf6CvL^P)p42CMav$J7XKJ79 z>3y<i=;qAqlP%o;+5b5<x;b{_|BH^Cvo5~>f&VYM>0R{D%k|RB^@jiTb8-BK|NZrI z1N3u)zWYCKo<1G_7Z~I%GRRwOpz!}v1NOf`{))c&tNP}z?wh~1Z^6301?&3?{x8^! z`#=0|NdDi}uV9CvaR0xwyC3j>3HU$Iukc_$_`mRQzrv&aaQ`R#hZ+?kiBX}{s7P*9 z6mDD;VN@82<NuHTH!g}dCj2LI$tIUmOfILITuC#*@&5`R|F4|sPyRor^graE$@qu= za|T|`8F2050Kz|_`~SdeO8;X5T)T`0UB5Eu`c*WTo=W^*zdq>N^+8u}45C*6HwItf zF5eh@`R3pvMeP5ZLke#W!31FZ!~a9`Zc#J=ZVk<$Fad^U-x{iz0Jn!_+@=Wt{G;<U z0fwKuGvcfQ|HDt;8Gh>S@U*+Y|M1j1<o}erJOSYUdlcRO?~OWfZzS*^dvD}%;2+%| ziTi)l{ZSF{|9v|C%kGat3jaSC1^kEHA02#u^sxt{F#-7aKjzQ_WP0%7nEemO?0Yz7 zFSq-l>8?knjDOSZk4(2wW4AsYyXCRzX88Z{*i97tKlZ!-pU?zY{bbxqMTCFy{}aLg z<LUm-_+R{V{KBVZLi3-Q&7=Fj8TtR2nZp0i&EWrl=M(&&Pw=B~{8#wj8~&%`|3ps; z_@C&8UeW}B|6N{AqT~O|NsNDblK)@A|C8<ho@`4`l0Sm{@wEI$2>73(^grQ$=08(r z(sSzcf2aP(|F5P^$Nm4+^l9{*$&vr5*X)1b|CROh*N7&-bp8Zr#%l*mfEjNb1^>@@ z<2sXaWB+3Uc$&ZQnn@GDXC_Yod;(<t&Yue~e-}g(;2pjKQu@DmzD4l@i{eGxZx+Q% zEQ;a(W$?eH;Q#mJf6Mo)oBeP3egjQ_l0U6WHd~e86~I=jl5JLm|DD`!>ykazrF*SQ z_gR<jhyQJq{<khYW>XeyQyOAZ7G_f>u_?nVfM)*-6ClR!!*SaW&HhiY{g7x&_y1H| z>ZIL=G&}geocwS1ga7TyGwsW>>?$w;F4|Y*+AHvX3I4ao1gO01P<h3nlKhYRzeD9s zhss;<zhmVchswJSRree#+5eRf9ohd*RZktOo?-$xRy}vDdf`;{(&;1o|F`qUf1RlB z{&(j4ztg8;=TGk;e`of;GvWV(^QUs>PZbFGcllJMz&}lZPcEN7yL|ercz*osLjM2a z3jgDY2>|?8d~q%3%D%X=|6NPJxR!i%d;bOacVqv%z5R+X0o;Ip_P_hT)$IRj_m^MY zUsO}isy&c^|Hswt?0?S()gJe2Jnq$a-l_JyQ{#D?{O|FD|1kkPf&a@j9!0fYmukK8 zYdrI7;eSu1|2?y6Ju_>)GHSijxpQ@1XY0J!|6Xb2e=p#l{qOZ3|JQp1|FQKxG4(#t zb>5Nn-Vx+~A9=ku@Gqs~zfV}bPiTWUq(OX)JK7*V+#vYhXMcmwz6PJY|M9=ijs~CY z4L*GT7jJD8Zvp-reE)0|Z))`2*yy{V(RY2L@480unnp|jG4PL8Hi{Yl;$`H2-2eTS zHv0YE==)of?_vu0_g&cJw}|BLJD>7HGy%T(&293V^UZhGH$UJX&!BI9f#3WBDEQyc zpAv-c=l2ca_m4k>e{BAv@UMjbtoeUM{#TK(^XaLoD&<80{7ZhK3Gh7u|LlK>x{4HO zs7N$bq*@&CPySbtwN!!sWvwat{--T{0tEb1eE*kqR+V+-eo>WmSC##$D(k`Z68x_w zWB<$a)nx2{Is0F3tR^>63m>5L|6n!wP!9Mf|BK|KMd7BR@UbHKIFa0p{2wt%6pp5d z!l#PDr;Ea8io(s+BP`UzE!87%{I^k$v{jF=SC4R1k8o0tbXJdWQIBwC|9h%Ou>T_j z|NFE5gD?R!BH90u^E4yL{~D2tG~xfKC4~Q|Wg1a`Xhtp9j9Q@?wNf)`m1fi$&8T&n z(d#v%&_=DOO<GZW|Bu?D6}?p}dYe}CcCF~0z`s`XZf>tuH2Gf(mw)&_2L1>Bk0|gT z6RaH*q8$_3A|{Od5BwjOag6`t5iO2Ka*Ti6{9})|Ao=6|k7pc*R{(K8V+BN0KSwFU z3W&fEi2FI5lMDWjrxhSf0Lh6~VH{oo&|84`R`eDi9<@Fi-}(qAOn`&&tq;Vv*{}3J zCII<AvGwjmngH<s4o>j@*2K13xXp=e|4gFb|BXrQHYBxM5ByVY*8u-X?N%kVTbbN$ zMRL34N$vhfZnrGC{ZimRxg93JZ^`W!!~Y!a|A_AYDdc}N3;s{(5Xc3jcJxby|2x3{ zGyw$vpX65nsU6)@JG!0hNcaDfot%OHlM4LXpX_X#M%kowwodD8mDbskkN>#;qZx=N zz|>P+rkv_BnWOtZ`M-<VY52d(xYJ$6ouLVUfdA3(KaT%rP&Z6~;T#?RIXeEI?KY5~ z1J3?}$p4(tIllj&>)wwu{O<qm`sXOUbKP~%Bf@_l0sra3{hy!dJ$j}8+VcYWzlRXv zU+_OB0PrvPUpWB?{{}rXP~TqgKjcsNH&*(8K<~_fy)y^({*V8M(FB11vqtG;jn?^( z|HtzLn5dIINhf=<PWBXq|8r*a$(gB}W8NpnQa8s+H^*A{BK&WwdlCM3Q276%i{3@} z-(4?P;eY*HA3gXV$A60bpEpZCZ?=BkTz&XIZ@xkPLjC+j`uU6X^M0fIfBsT~eBA$6 z!2bsME6M)_O8*yZG^GACEZ8F8AO1JIME*A<{O=L`-w*!3bg*CHVTJz-gUSDeVVuOM zNM=+>{x>R$G%AWRE{ZlT`hNc>|6fLl#+Q?gucR0g{!fzssnaIF{}te0;s5?uF7&^e ziQxbK%KQI-Yq?zBz-z#N{=n;(29W$w5&Qqj!0QO|zc%Q`b$UYn)D6M^-|<fq;3kC$ zz$-u@|H513|AJd+Xg=eg{C|50{7>B`{Ab@Dnss|v*6pF0T*jTD>34>u-yU}U&Tw?@ z&hWE$hM&1J4ER5Nm;8@#{70#Te=6zTh{Ss%64?Kk0CD7h?*7P_`y-?86aIz!f5d~4 z;rB<$+5b|S0EB;`;0J>LM<01O=J3NYhaQdr{trGJ&Hf*)^#7RMkH(PyAF=-*n{Gvq zO#gapy5%wX|4*I(?EkUro=|I_j9v3&Ec<^fCcug(<Cb&Fo{U@iblmUM_$5!r|Mqk| z{Ez$p!l&aGJToKzbC>|LpP9{iW)}3!ED-*GZYKC&m;mAz6T~kj^6?+{e;ohG{~j+U zlK)>)bou9;Uj9Fv`ek%fcl*YDH<>8zPMj#NA-KfdGnt9t+R{>>rBI+0DAE>+J4r_4 zu2|d&?yey&NIX2p`P(xoz5e&J?zQf<zH6@`SFiV<^VoZyH~D|Q*YkN^&*yu*-~#^V z!~d=?7P!1rgcE@CKg0h*hnLD;Ewq2N(C!uRzYzXc^xE3`^+KE1HZ1bL&1*ZGH^|=h zjf3qQ=6{?3Z=6}=e_Q5%+czGz@c&zc6TsW<t&iPXUz`AT@A&o<?f<~P{kuTmpS8#y z{(rZ`{vA$$Wvmqr<ty!R0=!@2fL8zt|9|&i|I_~OSh2~e;%6uF{}$G-juqRSP~{FM z=6@&nzhbv@<sRn$eK-M}D-Sr+D}aCf?^1QdrRu0l)iIZ<<K+LU|M=gv`hsh9h--D2 zYmLaQM&ec@bz}Z_tBG){iFB(`_#gW}{O?|yfL8$Uzk6+p8~H!Yy*9(W_9F04)!`GM zOpiMFKZlj;QI}8n=k|Zj|Mj&0GymfRxamp$rxU=7_J4HWtNwvk!$YrzM_z>gC*F;0 z|8Io<(MyK^*YH2<op<9quf}qp#`oTh<bR(JmEP<G@cB@U6M*@@*85|<&xd*+JU=%0 zd~Ea~{B!-s|2P5Qf8gJ@{*xc@&-uURlOGqZ0P_DQe&uJsickFapZMjUDVzYz|NPhV z2@vytlm81A@c)$j@Bg^T|4|eF5#gWzpvj-@|AISB@W0@8v*1><;3napDr**$HVaCc z1;x#Rq8346v!I|^nBO8`{ueU;3o}~;S6c+k|H4Zx!VD@P9j^e`36R_h|07{Mod5x` zt-_erfaunMsMdgpR$+K+fV?$8))pvj6^h#eQCM4GXj>rjf8hDHz;kVZXW9Z!w*{SU z4?5W%c)UFb9cvFf(jJ7A{tx`CJqZ2T9(14`{tw>U9`r|h&>q5n@UD&^hX3H-I)Zm} z1aI#M-qsPcmHba_=?DV;(NC<69XJ8#3iz=jcztIu{Lh^L>&X9<(*KLV{?%Vd{;N76 z|HUi6EQ0*;1Ni4+^5^`|seaL-FI-*7|9|~~{~rI1$~Whk`N4jY|2KH5oW~(RKe%uO zs3?B(RL&zcmb%IXw*Qm=wN);lZot1P{LkT^{NG3Q0_v-Jf$jex15`r>s)h_w4H=>u zGE_BW7>o12u4;%LOP_bakQZXa3mL@=f&Wc;p=P{Lb6%(gFO>N|bQ~{q0tNqvPGL<` z3$^5hTCw2&*=nKi|2*dZg=%5QMlH-%J<MJ$4E_iHng2!bzq`7~Q(fexF5>*}r!L~F ziv$$Le^HRSC|F&zNJF$lL%d7_<G*-?hIo~Rc(sOjjfVJJ4e@sx;vY1{-)o51Ylt^! zQkyi$|4RHz6#mEfuO<0SOY%Ewx0V$9|6VOA{J&pIx}W?nh5u>)*ODI6k{;HQ0{_Rf zWo-PH!T+bUW$3iF?2NYTY&Y3CZQ1#5a`-=_n;eC9lZSPai@M3h-Q*IMw3}SojZOf0 zcX@dCa29?b?hwEgfD=F((OnYJT^!Lv%$}l%9w-dK|B*epE=2Y`AKCL93nu{iKa%`^ zI;!WXs9vX{dXoR66djG~#l`mjUWcN4{S)2mV07<;82{n_XnG!qrW0UaH1_}Adt&<h z5z`0HT`cYd_${Un{J$-x&o=l!w(r*1K3ik^ZiyxTb0@$i?EkTSH?Y>n_FW&>_xreh z=)2f{-^KO&Hm={=xPEKm`r!mv3IE5_2>|~uji;8x_s0pq;Xf#0KwtvB0uUrn{s{y4 zi39zB|3r%Rf1Ch`13eN4x+e~FOC0E$IM5|&kaN;Nr=&rSNrN1c2H7VO{*g`6AZymb z<iQJ)2a*4i2hU9&O#6Szkl87NXQm9EK@G7=88V&4_J6zr7y|!KP8l*ebts(xsY55E zlK;_Iltzt78#X#^s0Hw^%q)GFN&0Zp^x=3KWB*SdZlnzUhx`pPzVbho|BE9ae+u~L zQuu%5SN_-2xuidmG8lQuQ0I~nYZT{yoy(>=m(6r8cbx!Zbgzujy*yU;$~fIC<8`l0 z)Vnf?1^iFZyGs7o<NSYhhW^!=`d4S^U!ARg6|Vr8|1%fpXD-yIR{%Ep`2HXJKm4EN zXprS>kmX`P`+t}Jy$!Q`jIw<V;s0!Z!)&2q|A+r`f{k*R|8wB~Wuw0Kf9~2*%>Tx@ zKN#n(H_lb~A146tZ=Cmwao$#Ah5vV$0RQ<rP4ah{=I=7e+hdv!{O^PR&GO0rruhd= z3l5nU{9{^h*tFm%^Z#+||K^<k3(uJ01SmXb2LH4D-@Hg<UL-b$|BGZ6MRJRxaEqb{ zi=rr2v_)|Y`JaOS6GoRLG5;qM{!7xvl%$U-$rw`t|6fx2|LU01OvK@TY-!He(!8;y zz&}3z$sc#Ea4c2C;UE4VSH}ELCji5LSs6P4u>Y4$C@mWg{Fhv(Cx?ITEkMEb2{iuS zn1Go7C+6Oua&An_zKIin@Q-N!@ACgGIsq=;nv8G)F#k_ZyEQrW*5nkN0JkS|{!gS= z05}1r#NVDm{=Y;1SDpY<*(-pl;diIX?@W~`{Eri0n&|E{!av3Qf6wy#J@Wrq?Em*I zPv5hI|4-bfj^CetjD-{6F#P{uI_>`ttp0ug{A2&OqE`S9t@b^z+WT+@!U+KX?_&M_ zaK_F@Gj=?hx#Q7{ul@haBjBI&|4jIQ)8m<&9>f0_|7ZR1c-HzSv%Y^ad)<@S-#r2T zXRm!Sd(D&Ct64PuKb^DU>73=PrBCN9c{T_5M~j|O@PFX5xdDpi37!N0bNSB^`QMiX z{QHpqN&d)Ffq%%K@bC6=z6(YEcV;=gT!0)|4zCt~{kQ@!{@c;=uQ&m0UM;kFWsN8N zZ%tQ#HSllE{BQln9{y)1fWrSaZ=7uC1aPrIZ*c;++rC8}wr@Rc-+I};!wKMH_YV2O z|15vIcZf~^yLW+hI04Fo?aLS0moK(2Ut(Xr)V_SVefbL3N{8}QbOKOo9o~QEK(7G4 z=k|ZciVcnx^a{YS;wQ(7&5jknI96<Ntk~*U@vBqic1QTX@;9f-olcd%J5`eZohtuu zs@%sq;8OLMbLHR8RR^7`4mnr-<6L#vx$1~BPJrqYtWz%4r(M|o?^1ovh4X(+m}|Aj zwMOh(BXO;fxz@;CYr=5?xYkCw)keG3#<<nSxz)zIG5@>OCcD+9uoEE7jq`uqCHFe= zzk6M#dtH`$UAB8&j(c6MdtJVJU4eUjfqPw{2lKy2eW^$NHIMr1Na=st|2-S-dN$ni zY`E{)@W7M#-?QPdXTuXuw*PxIJojpR!NU0e+N<#m>#Y~_Kk!d6{KNm=AF90x|25v+ z{{IoL02KcBCI8b2z^;IgJ|8~%G%9QO=!=y8_pSTnTg!s~t3UYy|5cxSD-rqM@BJsg z^3Q(n6k-2||M{;z`@Q<ie@Xb~KX2kcYvMm`;y-EP!~c(&{~wb7`S+Xo_nQ6hH2L3d zrhxw&&Hm^={%;Ym@n2BTA|U^>vT6SpaQ?sCBDmZlyx7X{PyQFCwhB{P1DOAX2@3xU zV_UKR3xWTrR$)YIKzJ+mfA~K@+7=*g3lOyhgtY~Pv;|yf3pn2vaIP)jY+C^Nzdhh2 z^ZyC*f8bH(|HI_}z(ehUf49T`fq%9K9%v8T-yXQHJ@60Ko{k{$e>?miw6h}!_}|eH zw7nw;<3HQ~gMR6tHg^R5+!6FsN6@B@pp6|t8#;rq{KNl0pw8g$JA;A$b)CWAbq0Ui z8N9YLcunV`HJ!n$JA+qs2Cw{rF#ZR#{U82cwCu~GrC$~;p*Z|6TC8Aym;e9&{Q&j< zAO9z^J%RrMz|WbVod6e9RW2y~ufV^m%6Y{5<^ufB_J8>Q0``ARhJS695c0oD2>joZ zPJoc!sv&(?eN{v7@lStM&i|o<R72taA*!K6RYP$Cj8F|7sT!ig3)NK()#HU4@<I)G zp-TUUn)1TB{6B^lHkKDUo)?BD@<KWPPvwOoOSModwJ@9jv(>|x|HH8VFHjdPQ21YD zr;a%Pi=5TPE;Rm&Jk-TX|BHRq#eV8y&i_JnQJ{t>NJG2`{#O?*)exhv{l8X2@~wts zordIlO8ldyWTS>;BaQzOZv5Y(3H(d9YD(DtFWI3f*{LOk|927oWt{)_Ysn61$r%1+ ze{0DOY0DV?Wrwl+YXSd|KXp=Dev<kBjJ6#9Kc_7}k7)TP{3GCB+%23%{+D(OhyUf> z!-4<*`d{%DAfmer^5@<HM0S@%awk9!aiqfkp%FboBmVXOg{YngSHM{mr3n5%9S#5Y zI*Aj2`Ttl{uVc}@j<Sx>{!jQn6xHis48kh_=KmPx|CrwUV|wq4>CNGPPi*hq@PBOY z-(&lrow0p>i|w-=#r4@1*9Rv6@c&C(-(T4Nk5>S+|Hmo%F&_RW{FDDte7|qw`>l=d zw>rMxn)v=Jf&ch^I02Re{|R0G?~hjiL5Wmg;(!3)KT+xbgaLku1AP+*kpB}0cqI+= zOd9Bsr1XCh{6Ek+X^>OWK*!`k4#~{_$?W?d&i~1S2>&Q$Fq)e(WNr%lkMaLM{<lgU zVu|rTm71D5WD09?+K`E<LncrP|BnOy@%>Nw(9!7%|68OFGfy7|{F|i>Gi4_L`9EXW zsElFo|ELUh1!Tbg!wvAv7_Of&0@0U0>;%xci1D8qi7r9@Ed02nt4xpipW*+q;YjTN zl(Eib6BauGu9)lK`=2YLb>ROiV|A}`{-40`kMSQ()w_x;^{!5*GH2+)|CuxOy8NFx zUmyO@TBx68t)FRQkY#6(1^)y8P742Lxf*1<8Dw+&Kl$Gf{?GO^%;q!y3k~TLAcg;p za+Vn70RPKJ<*qQ|_WxYk|3~G}{!jkTTR)2Yzmf2t_mgqn&&>Z@=mf~$W}Ls>IR7`3 zJox{2ll<ML`Fl*1{x>Z+U|InG|7}`;6M*yo5wpT$riJkTNwdOJW`(EC3eK1no;52x zPyR0oF)Io)<NRMl{x`=7P|W#1(xRBdKm3nZ0JQ&G6a)Xv|0SuTOUVDDOES=y(o3Te zUICN>|IGi_vc_D?9s~Se%N+y%WBk8Xz~s+8|F8cU`^(D4VgJ8YHV*Qqu8#-)ORm!i z0Qnc+7+-XQeFb!5LIE`q&-|N;6Cmg2L@vAnptk_<Ke{y$<Np<g|I4=~VgILB0Jjn0 zpSnFI_4Z_xe0y>dMfgv+Gdcdwl(;)n;Q!b=Q<(p!MBSYdad&FOovC=r?@p87ohrRI zmA?N$_oj*NaVLOf$h~P7?oA{A-<wAMXPvrlsr0|)vHO-s?^|O0SNQ+I^n(wk|NUS( z#((%9_}|ak`_SqSYR2wIR$c!8jr>n-WBvMQ2KN779?yXPe|`-7&)mfPzmfbu>&GWE zf&U-K|Fhu#bx&sD1X%lI7EXZGPiNr-SoL)F%BQneJe}R;f1Ch|5#fIh_Wz(~bKrkE z0iMqhKA$UmHrJow-;X_gpU=e!puqo&d7jTHj~8gZ+sk?G^qlXCX#bxN{5vV0gn!7N z!v6nifgQU7>}dI4fD^#x^#U8r{tEmn{BQln#+qIP*kb>;rtH}v;As8Ek@LUJTW7-m zTUVR6Zt%Yig%iNb=AEa_J8#=}-tfQeJ9-7c@b7O|F0kYLU;ZEe+bR6dod7HC->-5g zU)|+@dpZH&{~sJH);m=E2>&}&Z2XV^EAbY9{EzQ{9GU+e$^W}>0x<vYb*kFuRCU0q z>Q5(}080NmG5<SN9d*Jhfa(*@)hC(%&oKO-cdohMQXT426UzDDrA7+>yD<N|)I_+{ zM!MhxsQK6bZncTb|2P3s-D=_gblU%!|J}&{S8)QkasIDo{;$s`|JRfMJ?cx`>r364 z|K00vcr@JfsK4papzyy(!#$6N`yR~y9u1FKPdpl)c{V=tYJBe5_`<XCrB~xC<f%9T znEyYN<KrLi#tQEb6<!}Iy*^a2=mdcOz1jCa^a|js{oniJ2k(y`kq=Uy0N(ftsNs_j z^FN+Gb)S5c{`Y16_pSO2{8JU5{oa4}E&uHM?z8XP&wg(|`@W(4UX%a*UN-SxH2DGl z&zk&{{`Y&-<j3&u_n^t|UX$P5CjOl!zuQgzx0?936!_<tHS@1E`=gQ;|6+{)E&c`A z|6Ba?S_FA5{y8oF*)0O*e}A_BGyk{vXP{PLdaEF{Rgl~&OllP-whH1|ajo#bAes_J zlK%zaZ9;jQ0Qi@X|AoLm3MKywng0Ws{{v371)OLLJVE<^02}|Y{|Ell9sv9wB>xBe zNp<-jAOGM42-r>j58BlcxRZka1F`&X?+DyV`+wk;jzFdV1ApoW1pYbyL;f4M@t^!3 zw5~JgI~MT&ZD-J$&LGHtb!X73&PA)f1h4uM#PA;s_Agi9KbYY^c=4BD4E`WJQ+;so z7xaI5|MlOw|DfwHT|Xdy6=m!SpnrbzO$hrPLjMyT0w@GOa1^MqF#fasKSWc7(ozXw z{s;c4o~jg10QevHNBvYo`>Tes{XcZDD#h?0He5B7`9D-gmHe--O87TWh5tiG@j{Jx zp(f;ikvT8Sf)_T1CmPEO8^;q(;E5*k!Y1*;CiB9k@<h{kVV1nG>1ts!)kL$@;Qz2W zYNB~+qWNm@zi6SF$VN?Mt1hxv7dfbjoYX}wYGU^BkJv*E{ug_x1OF2EpRX?VR~HM^ z#eo`<Kn*eczgS(enD8%M#{9ohL$X>!x<*6twf}$AkfKeR(v6yupERYLDGB`ltELof zXYJIK?bMV4|GNqQ(m%9hd$nXr{{#PW^1qhsA1&EoE!hz**-;w*<;S(<CkX%4Y1Ub7 zxzhjg5N+l7uT9H8{4Zg_|1t#scf;}@f$=}0dqhO{@W^g>${GIQe<Y3UA%*{=@a!Q0 z{#jv>J-9-ndW7N=pr{@fsGjGedY)tWKNC$S0G_9#d!CB!c`~{eI?ht~KZdS=!x;Z# zs6+67Eb9GtOz*#9djE+N0RE4q6JT#FwI`<c?zrB&f&VzA|Kr#R!1*61KwRG~tj%$K ze~#<>Q+(f_nEyA#_1ysf$M^dozTfxp{no|z`!0b_0Qi3mI{{Y3_gk6JZ$(1?<%twd zfF%k27bo;zl-NJG%m0Z3gz$gT0RKen{}l880PiIDe*paN&T>l{=nDTQ!~X-Fk_S2_ z4RlBzXrD6BK6#K`@*tb!LDsAVDT5I3Kac!Bcn;_PROJbf%JzTwpW&bL|KwDR|3fCF z4w;xXWCAsGeA<xlZ2710KOOr&od6vE$^RLIf9C&Tz&{tA02#v#SxWrF|HJjrMZ{hK zbou`h^Z%uhBPgAbmvu(q1h@?R>y5muKk~8x%W&l7Q92aof8gI#=Zcxm6$=*a|2kL3 z>Tvu2)rq>)B;Bi%b%Fm(_<tJ1KTd!ddcc3?EWOOx`k8a}Gw12U|5@-q0{(6FIsa#I z`@fSxwu=Gz-<{=YnB!%T?PHju^nZ>3CxBs2pivI|zlgQOD0it*?sC>jqukY_;Q!oj zN98HM|AGJWHW=q`7?lVA1OJ@=vHySN|NNcC1-p#%cbnw@VN$Tyq+p*(!G4p1KTY6& z!aukFA2BUFYRdV)Q0f07;QyRi(Rs6?3ues!iv7PxVqPRQFOr)Vhnp8iSQJN@7e||y z#F%6MFNrfRj>rCQQIcd)l03R3#iAr-G~qv;`TyeRl8d8DFOM$0qQpP;|Lif>a#*=z zuH}xsmN&MnU<^0@mlcgGD;`T>{4W_>RywZi+BnFc3;1Vs;h#=`VswKd|Ff9?Y5ynx z(+Myk_kaCA5%|x%3I9(d|0}ylp8&!ClhP^ppYV_UKjjWP0qy|*RQ#REad##&{KNlK zqVJIZBiRW+`~O|+|5K%Rr%LWk6;qu5r-s~{3jANVPba{+`_nM~pSeHn^nJ@y_otnt z6TtHLeWm{&Oh58~?f**u(+Thp{-4hLKYicB>G1!ahgQ2EP2cs%>i0)hJ0Ds7_Q;C! z|Mo8bKc4Z+qZv2>;D3bif8&#xO8k@mfq(M<)0y9q|AGHmYo1cTKU(p0*7B#bmOY!b z?CI>K=-KSW)SN}nW(Pl;6ZCveAWO*n@Be%b;!|^R0>J-1=*3(wY98_={Lk}vIS=y3 z3BdWE;UE5|Z~`F5m-E^3kMSS)pKteiK289e*TDY*Ti~C5bIU(H7jmxv-dNKKK-t3o z3*T}lfP>9joB*`{Gyh}%cd@1uK;eIzx4=J60K5h8VfopzR{*xO{|oHOg?8lucIAO~ z<w17k!FJ_~?8+D0l`pY-ztsNya{Koy?BB!xXtn+OHTLh<0{^Ua4)1?(VE%Wg*kDg5 zz)$wdR{#!p3sAY$k@kP|n`7lp_}{T|mt*B_N9_Mqd$IpJR_%xX9q9!4+o}4XQ`JB4 zzf(2#|6|V8$DNt~ovTkdSHu5jovY6~S6^_h3309ob*>3>sS&%>NN@tc|IRhxE;Yb^ zq)Sb-Yi+D+ZJcXuylZWOOKqZSZL(`^ife7EYi&CG?^b)!weFHz-DUXSt?sHD=l}W~ z_xe2dx;!`Xe<7>by}rba{9oo?e;xjJufOTua0~wTXt?9iaMzvr-<?i?haL@&JQ{%i zCmxN@JaGavDE#k9_<!ZW?f)O%dVP53^`YGB!+S3U{>lHIAF91R)Of=GA8WmE0(`7z zHF$q)Wb*&urS!k|hmYPLKH&tQCtd_F|9j&J{Nn_u{p3^g$p`qa{!I9<`s~B-5C8kV z|LlVkfcYOMz`yu^)dc_hy=d}%PA35Mq{;Vj6X$=z|NSOD{EzN5``vB^{`ogqH=6yJ z|M?}&RB?-cVY7c>3qPOy@1LvizkgPXe`X8+N{c_b)Z%}U@b6FfZxN)l`X|!~;LrI# zuGJs-k753gY86Db3Bp^2@>YSYRe+CwB=r4{P}C+2Z4-vH37P+eXWOXLZRG!x?Exp+ z1K|Io?ZPAN0f*ZI;Qxc|Lg1hC|AF>^{q4fN?Ewt`fqU8mcee-Z>Im4`PX7O`BM|=I z-VyLC`5y)RLjDij+!6RQ;h$pTf8dWDf$OQD?@?!<68}Npb_N3f%>TeYwXzfV4_w|E zwERo(vd*Aoczy|9`UU<EV)%#ugTVepB>$iwdVU@L()Gu#A7B3m+;99(pg!52@m~3x zwEy*Q_P>UxeiNdq62c?@hpJN{8ifB)q^%O#jn!Qxw1-M)Pn-ZMp|t<2g!WYl?Z@h` z5;{PI#{WU8VaoA8bhv65^M9C*YM34`OrIBKzzZ{CjpBuw@I<CO5&Un#6OE>@|BJ>` z*#AY7d7>%2uxaFfk)@i*iYJ=Mga1Xd)x=8wix;YiZPdiJYGOMzvAvquK~3zWCUz$O zi`~@7|G>Yuy4Z)te+ge*0{;uuB?0P^AazNwhGY@>U$RU?vRqTLLPN4rL%K>svPMI? zRzu46e<}9=^%~L*6!w3G|9{bxZXx{3wrR??Ysz*I{$;;w%64hW_Groo|C+LWnhO8_ zr6v1IOMZ~>FGokT<VUsS9RA^dCH}+DXosI=ozo7#pdB8<3e^q|(+(GDWBiZc{4ebm zA?p?)r)PM0w+Ix$0{$a$0w|J4bw@G;`NRKF^b{)-MfC_{g+}+l6%Z2L<3e;#bUwQ0 zIo8=|h5wZ&09^scV|pHs>2(bFXC02|Ma8lcfb)NB@4sSu{~6o+0PxQO{{LX@j_ZSV z#r4JsuoL)?>$4+HvH#O6fVe(e<NIuh??e8Nr#3<U34J%l({p`%-yag_1X!0qC&0G} z)S3i(1+XfC`Jdrm;s3<`i&^kLqWvHKPwFq^{GT*{pESTPX@C!l`G0^%(g6450dC0y zU6aZGi1z;!yaE{LkTM7-fL+QU+mu1pDT5ZWnE!DC44RudXin<j*}#7)?f)}V2V1eG zrw+DE9ZdL7qp<v=Nvw%!LnovU9iKjQT>8+lEVlo{|3fXPVdfb_$^RL{OjyS0<bN#x z@W0_juHgn3Dd3;{e~ID$67&D15jrIQe;aXm#0cP@(nah9;QSB#BO{yuBRT(HF&%k@ z`Twf9&Q%MYtD|+Vj?ul!_W!Hnb*YKEnUi!gC+lWT(aoHumubne(#y2M{;!us{@2Tz zqn9<0rQH9sZS=Ek^|S5tvmFewf&VW5)BbOe?P&o2=Xe{y|2ck!IsS(5e-8W~U<m)` zE;7trY?!;mFn1Zl{|ckLRYrNMjq=tQ<*ha1{Ga#3DDwZ0qw+V7%HK39|L0Npn~n2- zG0q46e`Wjs4($KN1;3O33w9e9aQ+AW75+CV_}irLkV)Y`CWS{#6#hS9T6EI1=#**E zX;bn)+y4pwp=QOj|C{0apJJ(5vCOPk;eYeuNb-MijCo0{Is9J|Z(gGCzeOqYe`%UU zY5M5W3|juFE2B%Vj=qL6M|0yp`JeF5{15!&6+j`K0A)oS{vm(D|MhEQua}Lxew`{~ zUAsOGVf?4(4fYCv;h#GJ@GN8%+#C=8)03S5xi=@|-kLzK0B%jlzBLh%|8GsaidO*W z_QcE7q>C)h|7o`;q14-xQtnX6cP1yYxcxu=?&P?;Q)2H<iMcx^`fiv1@fKi;{2rqH zA2I(=72TT}c8~l|`~UrE=kJsM&*BxpgK1|TOvC<v>Vf5n2bRYlSRQ*|dGvwhkq4HC zA6WkL!1B;T%YzT6|IPaI;q*V*_z(Q=Rr-I=Bb)$M+zG(^j}yRZ+as%AA6adEY_;Xl zj4jyz$^R7d|BMY!W@7wj`~S@EpHMXZKb`sQ(^+d7{#P^nuX;Lb<<nW%|ABv;085|E zTEhI#@IO2F`Rt%)vjd;cX84~YcuukXe-6X{9LOJeEBrs#^Tk|`7jxZT%ymPA|9Key zU0%*3|G%2&gkH{bd^I0Ayqa(SRkm~j!2I*!e_R39Z2!k|p(4czu<(ub!Z$W7?gX&6 ze(S(;w8j<i*2(&<vo-l2R{-<>J9nFR9?JdS$L1aKwV_u4{<h^@H~|7|%L8q@{QrKj z9ktYs`QPsS3cL3!?cT5A{BQUETl<Rd>?_vUSA1_@@q>NEkM<QC94a>1SKt$%pY1C) z+gJSJP`SmSa;rn-uMX@JAa(-$?pTF(J67#+tlH~XMgDiJI-u}>)gkhKHTmDE`lwU& zai{7NPSvMaXPm0fI#r)@sv-Yl|L6SgTqAL=k+H&^Ya*O$qFidDool0AYGYk$<6M~k zU22nD=mbc0txI#QOLwh<|IuaFx+|`AS6%BeUF)*l>T=xh{ZBpl->tsTt-i>uzSxcV z-;Md-t^T@O{SCK<n{Exa-5c(>Gyens?hOyz75;zh(Fp%P#R=en{lDRbM<W9MU&H?% zjc<`><2%m}=)LEM3QrpUD?OS2fqz!5=Z8Aa5A|Lj8<aHy|6XkT$CG|A{ChWk0{a!! zfAX$l)qe8E2~hpXyXLb`^=BWp|KkMksUZCOl(XJ__Idl+=MC#slh4b~zAq5@-}hOQ z@6#sV|KoqQ|2LEW(JdD6f1UjAcdgm4wAl~-FKXcf|IGjVycT{AE4ziC)xytg!T!&` z+`_-q!iWFUQ7b>S#h>}#KdIF}q18XW)t~v_pZwqEAIbb5ffInnf1$KhAZZhb+XP{4 zg3va>g*L(YHo-a88S=mIB<py)@EGm?0Y}<}huejR+J#F03;%2v9%vWtW9@Ah?m->E zzmWXj5%60_z>bap;C~zWKLGgOLjDin@c&b%!v7mO1ApucTu%kz3H+}k{|93B2maTR z{{vTd2CnK1TuA}{kbltf&cJ2pOVH9UK}`ONC&T~O{^!8|_48}(bAQKQy8eT%-zwjP zDpCpkhJND~;Qm5C*oy$}kMvJfl~CR{p*$u2H5mT2RKm1b-BiMq{txQ~|Eq-dQ3>m# z8V3LOR|)H{8a7Zhbf9Y3V1@s~hN+5}|3xEJMLMb?UDYss)i489k)bM`0LJ8hu_;f? z{4ciPiO2H982`uf#Mu8Q@x;vkqNzMF{6C#1n!yvp{|x`)xwQXF=BvT~5^M6m#GVp6 zs!0_7SCf$c)g@l)5^r@0{Ll7(sX$#SRF^9JuP#}nAz|Y`_J8S04cRIUDfa)h8nSOS zWZ!83|FZQI@Gsk_A^Qoj{r?wD`BuWe9RA;-DgRAVhHwJx)|Bto1pejwwB-9W<p;Fn ze`?7Y{=*Lv{=*Mb@*~=G0-Vqa$M}CrEBusp_-QSL|IcejT%h3ph%l~h;Ub#-BP87- zfq$j{Bbodo3IE+Afd44eJre$p>W&|HB6%cE0N}qn=YMH5y$cXWQz90w06GC;dWOW% z32;6}aRQM4W0bD|VtSs6>3K4i3s*p|qp@@a9EqiH0vw9%eTegaT(7@ld;JwhC&2!= zKKtW(?_>Re@&9Z8$CLkmi>DKS@E=cYjqkf9zVBw702u!h=oP>w_@A{tp&$AovG4cr ze_~&}0$7_!(Fu^)Z&hNym5KdUB=%dzTAI{<NmBpCNrZp$e^URz<o*H4Z2wOlz)v3F z$AbU8leztWfM@amkK}>wO8-0K6#&COJ^`ZrANWrlXq!s@w@#(;e?jV?`Kg2Er2zk| zv_a(mH0J-b!B%O5r>70JOdC86r8EDh51E|K{GUE#0t^196Ch*A*o>iLG6?^pGlrU{ z4`ulO%KsOK8ebeX>LQkZ`UJ=jU4r~^1q?SJ_A~tB$ED%A@IS-9&Si#wJR$!}!2d`V z`F|u%fGc_<u>W6C?*CVeMpDKjuOgF?SItJ!{;%-APUaXL&i|Rf{{-Dk)aC!Fx>?h7 z=>%Z@&zhl^g%e<ozS95tS@ZR>@%;~n|F8U?<D`%MKbw93ljC8K!};ImfBl~uXp|dd zm>X<JC%_V;yrqVD%MJ7X$N%3N5&nM|mA~F7Z$p>=jmiI8j0?7oBL8nUF6i?A@5Y6D zj0^uT=Jx->1Kj>^Qh1QzpZsrHbkwBim`TwI(?a+k_&<ZpiqD%BbK^hrf3euCSYihM zm&naZ!p%w|%z*!rF8ss)@#duo=B0_|rAg)t{}!dG7R>(^r5P5bH2zy$yKJF20m%QO zujL@Ze_0;nKZeHtf-z-<W6Fxgl$DIRj@iFt>~-@0*z4EET`%KKfU)rZ_3QM6{L5~z zE8qrBfN>>M*DHYWMK`I!o8vkB=ikB!FrMB5!2eACod2_KPvHE2^)~bWE%N^*YGTG6 zdIdoKzcVS7@Q?i;{-2a|cM?v3gu9c0fBFRI?qufw$>jfglOyj<j-aN5lmDm4?oE;2 zo5K7*MRb2k*!?M?_t`6e`%}-~pL*`W)U)&oVA^T;|G~7A%>Ot6$o~(g9YOH_!)b@G z|39?+`=RAu4=v&U0}n0tKeXihzxR<9!~b;n|M$n!Y5#vbW5;8w?T@XtJ+}JwG5kMc z%M&a5{^!YzpP$V5iM8<w{6FJIYUU5<=?wTE_{aDU|FiLb=IW<2S3R8x{4akxb2*Lw z9R9!Z|8vg&a{`{vW*`6H`yb$cw*QOS{1<clUI71G@c$gI7jryc%<-V+y1%3o0J*-L z>q5c*gnvgm0XY26b9jZY`Om}nZ%gC<e8NA;e?Gzqu<-T#g>UA={|nww3*RhU@MfXX z|F#S93V`kZ3-J}uTZe^o1pxm}3*T`kfUEU8<i_w%{<o%A0KmUDd-~aw^KIVw+t3Lh zuqhYXln2<92ilYe+2R!d^S|wTyaHGT{M%Nnu%#1Vm0iVZ`-(Mo6>H&tJL-Eo^8b4K zN}K>2;eQACzY_g|y8LfnNuK~YRPFrA|9?1C?Q>B0|1XDXbkLFc-?93LWA#zT>SK=8 z#~rIrI@X+WsyXdcbJnTmoO8{2oB&SD|4ua`=NhRKC3CLDD}V@R+W(`RYh&PlXYzkM z_J3#ce~L?8stfbK3-iCrzy8m1tIu++&vC8Kb*;}wZuJGObOONtrL1d&{{{sA-|F(e zTf;pB|GPCjbi@AN_{5$0-@Wmfd*gG4|Ch}FbON}O|KE84|BdDFzsH9Pj}MhB+W$R1 zR+Il}|F84>Snv6<0Z(=UG<uT%=>$;v|C1L^fW}W=sDV}g$%~x;Uhsd-C$Advzc=$g z@bBH_|M#E0%bUEv^1tuv&pxl3;C~<ZANW`L-{*0Y@1rK4ht1gkeeXB>-fQ-~tMI?? zt!Cew&AvC9eU<+Ah5w72{fe6Th0T5iEq?heet9i^od1FUtQJ4u{|fovkNKaU(aKM2 z@lS2x|JVQg*j6gKl^@mWAJyg`-s+Dpe~_#V`1cpL`HRT^{vmAwbiU31T$}&dHviLY z{-@gfPqqtBv<r@r{{=_d1&7-O|FjE~{ulh!E&%>9{<HmG_(!_{{@)G!w{!j%?&uJ1 z?+|Y55dPXB1pXEN?-XwC6#m>1K;wU>aARj6^MAk(oe203_>SWIAF#GFU=2n7U)>q7 zvNK>sCzk)f<zE7plK+AKz$L6jUji3@2?GAPg1-a?eF+RC)#J(i==%MC|M@@vCHGHG z`;b4E6904puycUB1wvI+!c<klAb*ViZ2uQ&sDvR+l`!~UOGVU;g8##MuzIQB1PJS` zBEkvKS4GrMC2RosU&Q$zC%{lu_#fZ@h(@T2IsfbNMEa^C@;^^x#1k3wL?%25_J4Dp z1o$7#6OUmhz<8cy0#CyHFPXxVOjQ$G@+8yM#52?+Gu0%sX#9u&CG*t83)Cd=zm1xd z^S^_dg!y0Mq9$=wlenu%Jk%8a$M-*M|5x}wP+b<JAr01$F4mAP(U5W{02}{ht2Jaw z|I0Z4|EM9~pb7uWH)+Z?Ys!HCEt>LQHN$~_oB+)K@|~LUU4(!69!>eb{?~;6BRKyb z(hBGNe?%+%s8;wft?-jt5$Kdw#A)q_vsw}7v?H<npQq>qfd50gMTB*W5Yh7Ah5txd zw@7(6;9pT>x5%h&QIJ2YOa9@}%>U8sEkJa4S#)>cABTV#Cjj$5cLIdPaQ^QB|A)l% zya4~R&c*aR3;(lD$M!r8|Ht$^!A^kVz<(^A0EjyQ{=q8%@;~)=9P@u%?*s9@4*>u1 zbOONtdsz4iXjgpi-xGT8jPLzhLZ2P+eYVH<*#`e7^x2xwXG=n#Ur=J7pW*)mh5u>) zXOaIC`>spu_g!MYZ#n-n{KNl<{GZ%!X<|Rl|BI6PqaaoQ#{cC00%`z1h5YZEGQc;P z{Es|Sfd2s=DFfV72D+sTbV(unJHh`b75o1{`_zGUY2<$!oB(Nq7UBd*8#F&{(7aUI z|IzI9!L!l_&rBaQBW>`E^soG%K6onp&+t$FXOaIihKx@iG7e=70shBi3<3U;1x^4O z|A(5QOG8aA4mG(n%$S7}fUW?@|I#o6iu|vCd6+)Kzusl|f4I)&;X3pr`BPVb{}Chb zyu!Z!xuP@T3iCfsfU5>0t{9F~G-~8kWQ_5D<W*#*bJct#_X;4B_J5tsaXRon@SinN z2ma6E_J8L8EKA+2>AG1~x`cm({U6QK%Le`z!2f#L)_UCjpJT6|W3QLvsGs9(kmI7C z<7$xOW{~5q@P97(-yqk|AlKg@S74AUG|UY&%nLGr|MSTIhPev=8|JMv?ArhH;s5V( z0vN&n`5Rc+|9=`)uz6I$FGdAhMiu-zs&M-#_`d-AKl}ctfcd|0pK;-SWK#I2Ng>96 z&i{u^ijFY+A2)^ni%yzw{x3djT71s5_=0J1h-vZv_+Ms9{tq`Vf&ZiE1fcPs`JYYz zh5yY<QxV304*wR{E)o8zt1S3GdvqE6pF6q?<<SWM{}cY1|F4t($6PO^Zd@C~_W!Y9 z|MeU6EJHWYxU!pLuQB|?|J2QK#W%-uariH~H4gqS0RC@HzzG2SWB;dD0JQ&4$i6)x z>(+!!oB+2c!2eh8Ou#Du$e+41=_34pXJR_TKm5;50Hy!$PJ;gt@X!1|Ip!|>Ke@~Q zz(41I;2%lo1mOHX75=}#BLCl?diKH8GY_UJ{Xgx*gK5VfOgr{q8u|ahw8Ial{qqp} z|1`V;Q2O7J{Qt;u-y_StkEZ|eX!@Q<!2k4JkEfIWA5Z`7v6aIAPo~5FXv<@(U!GWT z{>KTh>B)?ZPpmlquYWRw@c(oMef;xu#<x#ru6;Ul&C?mcKj;4y&t{_K&t@ve|5=Nl z&sxNy@&7qD{?8IVpCusq&!UfiUd;BR=J>vtjS~R)@AALr%Q=L9_H=tm{zuN})m$3? zSq`t~+P|7-|C&w!yVvt<U*kz90Ky4?;QxiM=aK)p6M*@jT>;iO0T#T$(`LaN+XZit z{erjn5QzN0fSyj)@c%n!>vt}k{};Y<vwr7p{m#R>ocjvM+qxY2+LZfQm-DU5aRLae zyZrw?$mTsxfJMMRvU$JM=KV5;|CP2C<bS)0HMSLN?JB;tt60bR->zc49bN%c;uD}v z_LV=`S8lee+-zUD#ja|LedVwAmD}KdhsxjVt9Ck6{%&8j%f4#2ebpcKReRxohpGb( zRevEz^8X>n>VF)n4|D!^pjQAVofQ5*1OGdb|3lz^r<ySM-?2uF6TrDv=2R2zR7?JM zt|k9FGygl)#ygY$6XAd7x)hh%ROh;Mm%0p>x=ZlC3%CE*XS&vBxzy*l)aSa?=dlx@ zz@@&>wZ7Q3zQnb@)U^TrFXR00O8Y-ffIDstcbWh1yET&k-5VddH9m&_-5Z~B{&#PD z!FuJ+_J8=FPJj<M0m|L~^?#N7hboT`9R6!OJ_7$;{%`R3*ofeN&yOGf?ZYR}4-Eh8 z1n|TO!2Iu3_X+;@s{P#MfA1>7zZXt`iqGEfKYNvb_I?NdH+jEp@_EC;{*PX;o;UeC zYw~&8<o%?{`*D*G^S=-Izlrm|@117f+s$A5-}hRx4=Qc(D{1j9YW6E^A^#)zKbKAb zzw8#jO!B|ql@>qv|6;3OMhic^#V@VJkNKaU)XGn6<tMcI#kKNLOsjuPn?L*?+2$WX z{`Z%$;C~S-w2dFq=6|8hU+I7T={5oLzyI-e0Xq7X{|~nN|J_db|C9VL*xxSL*Dl!G zE`a}cw+nVr!krxy{NHr~Z0!(k=@4x05N_@e{L~@bggU7WodG{~3fB|<DfoXK`Ckb6 zEAbxy`LANF=oBu;3GgLg*%u+?j}w6N|6;;_AWi_VKln>P(3b#aelVUZAVBe>>n~sb z{eS+~u79e06ZXwFVgEi=!a#lev+FPHH?9EA|2P4{)F_drD*P{k|20)aO8<+P|3y7j zM7>z>Kk(mIRn%WqG(d$Kq$(P$DjK3H8mcP7{?G6))={POcw&83u>s*<Jc=ha=83WY z;{;IpUjqM+<4KtR#gll1fAT+1LjLDTl>V2@Vfde~CT0GYTB}Lz)TH)mQU^7ulbY07 zP3od1byJhNt4Tf8rCw@MZ*{4!y3|iy=C3XjsLKM>W#oT#*&=n>5_Q>9b=fj?*>bl3 zuhEpPVgCP4L$*#s_Jf9ey@nkAC;V&3f7X<5)|7Mp-=e^O_zunRofP~ZzK69}D}0}3 z_yH~IFRk!{+Tp<eAuah~t%xHO;r}?p|4D7~|CxXNA9-Fo@`83`h<0SCcBDv|L_3n5 z01<L+4*yXR-LU*eMMC~~c8`qi9>v0s2xW8v!2c+Q{4c{Zrn@Ajha|eYIHm`eD5eKa z0J;Lm|2;0mDmoY26P=Cid4`1(;FMzj?|D3~=keH{N8@^N;RN_6jye?A>mc_3_+Ed- z_eSLZ_}=?D|Ht?KBc4ux-SNG5CG^<^|5JT-BryLc^x2j`Cjk7<odBD00wnhRDY5US z#J(F?>l6Eu|C1120rdMeso&b9eruBYt!AxE>W7vm^;?$Ie`#|6CCU94C-+~J+&?(E ze^4^F|MwT9Q2r_X`6>PVIRB>%@JeC+#|e-!&^={<Tj~JUlmX7E1D#mp|1^dFZPEz; z<o`6K|I-G|O&c^PZP0A&|KxwliZwlbuw^>NfB1j!6qGS|a>iize_{qTo(23f{|^~` zk@^4PP;(af|04W9%<ST@F8>={8is&>rT>R1@DKU32>+Ldk5oQKTp7;fKVmrfe<Vep z0O`^Ge?_1CPZ^H5YBZ8!CqSmj$V^iT_|LS^$sA4lKL!7f)5)5^ny8aCNe3rD)>M1~ zq|5m~+e$ZkhHmyu-R#-A*>m)==Q97({!jkTvC+%1(<A&l=;t`<VgJu{(a&|&&vnz! z^)R5k4062<a{uf9ya0o|Aj3TPALGB$|M@En^H&<?uQtqIYXtmL>x}Z@e|-G2!Kh%P zQNbpof}f1Y|G@v&QH9$^6~O=7M-}cIRfzF_w_^WS`2T=0{9p99anT`@qJK<^IR9h+ zKaTz1r1+#s@oCfIGbZH!^IiToEe<m+7MqqxOiO@&<^B)<mqweF#+a4Hnw7?xm3HAD z`+qX||5}>)wRDSX85Y+rvgIH6zrw-^fbl<@odAS?R>9~pR5-e<X!Lc|<$uEem>XrR z8)I*<;C~zf>;xeHU%NRL_`i0O{9i);#}zP+^MB#3aR~lrCjk6UCqUlq@$i4nZRUTR z01E$4VE&(Q<qq&qC&0x!cm+VE-<e3S0PapqxjQNOF5Ca{3V=?4N%40l#oe0}dl&wn z6n$?}6gvU1|A(XdljZlP$nH;(-k&15KSg}MYyY2e;r^5h52hm8|5-QzPCb}<^5N7I z)U;y{r~Z%s4?djs_oHclJ)HLEBg+E_`#=2u*z%7@mb)KQUH;$kcskntcslL>Ppq~+ znNIuv6RV$DKRvNh`rm5(Q$+Y@{+|K=qqR?Gta&zL^|Ki?{&V=pD}XNlKcC6rAI~6G z;PY7l&u0l=%n|_q6pjCoKf^!s|I684FJ?pj9>jjijph1s4sxb|e>4YA2bTS-x$wW; z>$#l&aRS(|tY6PVI00z+e?uq0f;ZHBdM=#*X2E=VGXKA|f&Ul2v4j6{1#tdf@YZp` zJ9-7MkWK*Cg_PUEckT<B|E<ftSU%R}$d~yaCji_3-v`*d4+Q>g-UqW5+bI2S^M1Jv z_Wz1iwo3ooR(xw)@ttkOI@^lxZ7Y7Tt@zQdVuM{J`QNVcXZYW)@)x_xE%sGg?W@TD z_EqRV{&)D-|9`Um|8IxtLk`UU4%J5-s*l0{j@2iy|2we#-?8SbW6gQTnh;0ke@Etj zN4Ebv)sp|6Y9pO$qnw!ko$BJ8>f)X25}fOjfPYpR{O`>C?_77ux&DeXzW=Gubot8v zF7^2?_2hpS=6{#^QkVK`t_@|b4L4XfT^nw@Hr#P-yzACT`#<@=@u3^@zgy!Ix5lS# zjn7#x+&-Y!?x^vN`v>&So#7w;cW3**`-e*RkIerc@d}`p^FN**AL~6nD*W&9@q@?5 zj|eA#$Hz}}2q;eg;Ge2z!T)u@Kdbt)7phX?zv8nO^S{@-&))d>hx7mICU5kT^}NX& zJ!|sr^8Z8Z|4rTxntkp!``l~xx!c_3f1jJpKG#`g%>O0LzQxV(zi(lSZ$XQ1ev5Bj zi*Ig=Z%&JER*P?Di!b@V)tB~v_`lUJz11(R)i1Rb`@dfjE56ka#kTszwED6ApC8%k z7v9R3xAA3dd<je3#t&=bGyn6?xAD)l@z1vL&(QwQKh@4Z+3tV5&Hq@N|Iv2;!>mK? z{s-Fyf4BSp$=cuUzpveYZ@d2=?fx|WxBJ8YJ3FY~It1H01lu|Uzjg?=b_js~U&#N0 zpB4TWZ0x}J5B~%I)DNA)?>mL-I)%Xhx8#3nO{Z{mr*KuLaAl`(1&#j!%R7b3DD3|M zOFD&1z6300E&39`$sdD1egv`tz5w(8AHsEj{}<!ENaY)(U_bp(5h3m_V87`vs^4(< z7cu{bsjJ`>fSBQ5%=|CzrXudHBJM#c{NGnaO#W99GyjVRsE7xtiU+HThp38~|0Tm! zB{%_qe_ftLPnG#!Rbt4K81W=H0oeX8Hs|5vAL(eGbSwq`OWFP}naun@jqoqEQj^Z$ zNoVq~|HJ>XxoT48f5Jc8|7G@SGRLp{?@Ioc!T;XsG9Psr^S@N-e|ey~JosP#%i;eO z>avyUa*Y3LH00lDhBN<%WB>nABb@es@_+cx8sVJ(w`zp{s)7AqzC%Od|6Q69od5S~ zM(op!*sm3FKr{SL&i`5w2Wk9|III;3{~y(gJgyaajQk&YN;~qjR^(Z23j6<g?Whad zQK76b?Wi#3e~EUKSUXat9VOR}!uTKFEehj5<R95Bn)82jw`f*WOt+|Limrf|Zs9TA zB4WCSqgZwV#NgRO5{oN9iT_yo5f-cPe`suvkhmV9u{|%u^*kTj<6Im&0pfa|jq7<P zuIK4E#R+hN`Tv;m1UM4c>u@}U6X0Mx#hm~L;(HxP=(Qik_uiYp{2$+YcLKF5vCr=b zeRd}H`7N=}j>JCO6Z>pS?DK0Py#m1akI4T?ec=C%D2YyhAK`z(KeaB2`9GQYKbcN| zmC5~9u$JQ$fYSfKe{f3wpcLl+l>Wl6{O_C6AFlv>IRB@z6Cf4){{UC`KW%^uhyOIT z|6}~;_W!g&HfaON|LKDkqz{^(K4@M#^M5+_fB1h8@K57^`XH-}!3zIp{MY{s|K$IR zgU4SSGVUTi{uwg%;*c>HhvEdV0RArxHRGb?pI!kNUmiN@(y&pNh8kTS%K6{m@-V~8 z!|;UvG5d4rUKy@)Wf*%7A9;m>|GDSztHXz19Z6yQzsiOEpPc}ih9ff#M`Rj}%w+pN z`5&3-WSNc3G9Q@*|D&-wS-}5zolN*2_(zj<vnT7o|Jl=Yvn_SAr|bUf|5>^@b9CYV z9N>SxUJhOXaQ?T|%e80yumAOPJ@xav^z(cS@_hC4u>bQ7@&pEXLW8_O@_+s!gS^Ft z`AZD&{ZIZfL-PMBrT^C&7JO%z|2_G?fbIVZ|Nm@MxS5Ur@c*wy*#8T6j4EROFWNP# zXpeExAI61yjf=4VA22TZ%b5Is5GR0f@nK`^|Ha2lijSKV!~dtKlC$u?Ny&MWk_#r- z|4YJ5OGM=VVx|8}!%gx1Pid4X#rZ$ptTX|cUrRD8O*XrhVty^vtW@EDbMpTsi?S=M zs}^Nh@V`Y_wgvY8>$w*2|Mh%UA(Mac=<BFt^o>&LU;N_)xPjO!fE#1zMZisV0^k(@ zs}xtj&9Nmo0d7%6xB~E`#ut+R$I<?Oo63d%DVzY~@d|+3|LGL~+yAfJnQ)1M|0iVJ znE?E!-<^<pXJYEzNu2-b1h_XT;ohWp7Wx0)q?mi~KlcAgidO*laRN+{-=7TsOYTqR z!uLNY^!}6(^8b|c52l`fFy-unDQ6x`IsI_TsfSZfJ)FY)KULv>`UGeyegE@t>ffCI zAHo0A4m_H+|M9eakEiW@WckNq%RS`(uKnNgH~9a_^leWpx6%GTeJkOA`euqw0Oo%y z+W!gvlyd(E{;j@!YDNCX{ty2@o1yUk^BK#Y&0P9y=91?WxBmwN|1V||{$I?*_>YwM zpXK*r)>r<Y?M?WnJYLRrr{MqDuGAdoSIqw;|2d8%|2fG1^&ES8(klSw|GCWnbFJSH z{)zn*z(0@SpPuml{I`ht|Lwy0Z><+F|IdGGGykpa{I_=V-{D1o{epK6@IT9W!8>R8 ze*v8U@W1E6a*u`OczP`?_g<**zn}GcdIezpUSRV+!1}$=nofXVYig0g{}sz@D#-sf z6?g@(+O}ei4ZQ;R%Kw!=*jD~%SGf`XN49hVY_=u;Z$-9MzuH%Aw`2adtJ-N-wabp% z|Euu|fIb1TuO|Q7S9kdzuK@n_zXS8XL(Lh7nzIfy=MntxSQAG6uN8CtcdV5=D*PV} z|2tA~&UNul*#GO2oa&OD=mbb}V*YokyXahZ*|`q>zv5D#>0F=Pwf_VE&hURjkxN6d zOMQt;Lkaxv(op8Y{O{6m(}nXt+y7k~u>Yfnu8ogbPh1<Hx;8#@ZG7(9_`<F6rEBAB zoB*u1Zc6{VG5-_(KUBJXsCN5+<-gkfW3BtgI`@zD2>y3x{&%NW03SR)Dew>f(=7o1 zH-7R!%>VSn2~fwv{*S6Zdn)~p{okwNvnTVv=ey510X*L}dA(sV|9jyCQ2O6X>3?tF z|6!BYgC?K*P2SA^KDV2_(M`(d2J=4~|9uqxZ}BZ`_Q`KS<o}!&pKS8KPiBkH)fQj! ze`}ZjeN$U~Qz-I(BEvuYAJ^*3{O=dp>KoC<N6i0zk~Tkao1f_a!T)}z+x$+o@lUq# zPqh0TYv%+1UH<=v{LhE~|7zzSXy@;5=L7$H+xdG~yW06X+x-#n&;0M-<^Qc6{=om{ z4u9r<!KM!XjU9pwor3ipg7uw(A36o!cM8^Z3V?s+e*xsr60GW^R!}$ru>T7n|7G<3 zj}ZP}^aTar8O#d$A`JW@3{WN{#tYe#y8^i1cz*qZ`)Ai*xc>|O$>dM||K=NU*KhhK z`Cp`}B34m^-y)uhSd9`f{KNm)|ABvrwu%^a`M;-%xR;8!H{l;i`l*T$@IO#hGDuZ2 zSXDYyRWghx8K%nlUouivqN6I&r=$ivh5wCt68PVYC$&(OTJSLblmEx_WX%84Nj&Lf zo^%RNI*li_<ovHDov9|BttNy2=c&o(tH~Cs$*t97wk+m<nUk8#Sxx4mCUaAhd8otx zGUk6d#(%!LT%aB<RF?;+%Y(@O@<r<MCF<cz)#c08<tx;~S80T=){v9`HQ;~w_Zs1B z{}11w5wVF1->ebwi$=s2jd1vX8_7R{jsFq9YevHVyEP;K(2Rut_Y(di@a50nnvs8N zMIO?O{6~v||AGHw%>O5}BFX<+k!Q4`&S(+-5%3>E_{aDU{6~pc@V^xJ?-niBj+S@B z@*m9w|3|Ta|CnwuO#V@^-KZG&UlII|{U1*m$sf-i(%9}2dg2!7A&%`Kg8$<bg~s&= zVXpwr$M-lNM<)P>|1<H56X0ZAPx60!&*KSr_Bx6ZdL04&6MFp<-|G<b|G`8$0sc(r zbs!NZK<|C5KN5QHVeL*N|L;uf-Q|DapZuRhC%_i?KdH}V)=x=&HzhIuC-q&Q+;@GK z|C9TEm)v(PYYqIL+;3H~;sl^ifKqS*^jn-l1*h~2O6?bz+CKoX@gMuYA4-M)`}?H! z_fG5Yl{&zK<qrIF{!bg=oHo!YZGdCiK!@~!_UQxY`=9iI<o|T|f1twu83X6051NxP zXpX}FI01lv$}(dxn#RKTuh{=H22acwJmKPy@s}vbpWz?=A2RyV5Q|Gn|6d+zdYSx> z;D6&wI04B2h7`m9m0<=~IRE1W7^aH||HE(s=rHzoodCE3h9l1ZS9L~Q)frAFfZm8q zeU`xp=Km4!f0prxOk?tYmgz`^|1EF=jLaINlRb7McLHQj(8->p1N@_$DLVi9ALBo_ z|IfnyubVSh7yhRf=;bK=kNrQ_K`+-)FV{(r+yC=i_43^Hay>Zz>%;%~e){=*{d}eW z^MefXf(`N)8x$-tAp9>^_`hJaVZj>1f^Q8A*0Fvtg#QbEr2W5elVQQn*#F^wqeAqR z|BHS%D%?G)2>oGPw2%B>bYN7`pUnRZ|L}kDSN<<KWn6rk@Lzn6@Lw8YQW|Q)`M*SL zT8i<X_J7mT2xN9G%8c9puf>^`!vFDR*AmU(|7!~WbNj#fwG8;*yzH{M!vC2TWeE5u z|69QS*YhlH<Xc=X7)>cpfE%3uvHWx6|Mf99(2X%SZ{iiem>W08Txa3?pR$`{$p5#- zl-(Lzs)*!Yd}}Pj|JcIYW9b#Z?Q!|H#{vKO%>Q%(+!@FGKR)};_)LoV|IUQVESv!F zKLY+y+Fke``#+U*50U>_6LAG7{SW+4in>2J^8O@@|KaQ@zduR(fc!6hFj@3q3JQHN zIpo1)`2WI#$>$zU{>uMTxc&e5L(czGk35=6{(m$T{y+GL?f;Lb{q?W^+5WHaKlXpi z-yd7<d~EsK6U!Y>EVt7MF#Xpj@W162;Qy)R&rhcR^px84)N13?fBpacQ!51glmDO1 zSo_S1!$0}|`HU6MXDoj{bJ_D5ODOXHq8Bq3J)ar;d}h$|nSn3J{{j~CKjGi+<xJlf zvwU7s-Y;i)y`1Gqk^kLZ%?AF-|F34dyqfJy(G|e_j}w6W@9=t#-K#lvc)o`G=i0oP zWAhsLpSzHnhbsWj`ETaJ|MTC>oA-9^ytnh_(Qm~GFb`M2TWhWb?|^^i|F`yZ0{qwi zz(31v!8`W_<?itR0tzPpxBvStg#X`@|E=E#EM)$-ejmj7-@0Ovb;VK}YPmH|fQpqi z6{~D2R@+ppwc-3<xz46?oh|u)Jx&1I%8j<n|F)Gs!~eEbTWqUv0{m)MwGIBatNIQ8 zx3Bu$u6nm!)gJrmy{!Fq)d%dE|Lv;(wy*xjzWT5|{9kj_q2{=K%?bOOlfb|Izy81A zz+M4x{&%RAIM&J>$p7Iu0UT?i9O|MSYh&Sm$GUjOx&)`XMEKvaF2$)X&5_E0|DEbC zIn`Zp!YhFKOsD#6oB&Ssxz6>uPWAcB|Apj#;J=~Nr9t6;oB*8vog41BG~RV-yywz* z-?j09EBXHs=YJRY|AWH+t{+~yHNJ8s|G#nl0RPho0Q|Em+&)&heL&T2g#Q}%4>dRe z+?fB}J~lx9TyCGp{~n({QRM$m@IT?7`5*YF>OXnZefF&V?15?s|5Vjy&&to9z(4c9 zNBL*?-}7CQ7xTa8>n5*PO`b2Cyk0bUJ!d^_@_NF0+~oDB+52I$H}HSI8UCm4G<)4@ z_C`1Xu>WKHFKfZaKRzWbKE*9QMJ?V1Ej}oZ#r*G+)#9Dm>T{*l=W?s>r52xytv>0k zK54DKh&ut2T745+edAkwf&W<Yzi(8lPgEQH?-$<YD{J+Wwsra6FRaZsq|Ntyn;$yM zg8$LUcE1yCe#hG2f8_U1yWgR9K4Sjo|4I1w+eiNA|G~luu&cxWcbotn{2d+q?H&AW z9q>ON^54?o{|oD9^1nauzo|p8u~YD4hd=QDU;hif?WERr3RZXG3LyNi?DS{;_g~g2 zKuf>i1i<o-1i=*WF9`Y~fc*cD{{@0Cs7v_x@jw6M{_=nSGv<FW<j?RA|NoofFTlU@ zkGKU8^S@YKMU3%ZLq(#gBGFQu0FrJhlI|*!9;{v}lHMwkJ}MICe@TB;$p94z^FQ`~ z3H(ndfT|e#|43D-j;d5wRjQ{dh5rp%qg16Ps!~&)6#h4d|5c^re^uEyIsv2;dGNn% z3QsnbC$r?qX#eNQX7FUQcrxaH`8+k*d^Pz(HJOc?+*VC)rzU6qmpiG+UDV{RYI1iq zxrdtEQ(f+@F85Ur_fwbqtA`8J<wEuFK=tq-_3%ZMe5rc)GWGD~>ftNlfA#P+8sTdR z{}JmnBEHv%SWn}B1n2*sG$MZf*Z&dQfPamM-!vn3YQq2F@c$mo2>5>=>wsqDpPG?> z!T*}f|C*79H8K8k_>W@vk2<9lbsG5BjykIyb&i7nqnZDs!?dGC6qf&JDU0DhI$WFZ z&zAofhW{AIpM?_uZvlY+=-BR2vE3tC5wYF7lE>1E0J;Kz|2R4UByl~&EKyt!ge!pj z&$<xT<3fCobF8x*{^NU|Vx5fdd4l2pctWpZ3C#Zqy$-|w3B3*_^g77;JF(YaiHZ|o ze`4=_iM{u-_9XUZ{_p)e{GZhOx5VB%l2D)Rz<*Motx0{hBys-lyE%#4l-y@ya-R*! z{Wie=$$fuF?)!am-*xbRQr~YC{_ndwx$ml!zAIAtEoUu*{~7)l!T+i7e}B&Z!qonP z)c*dd{rRcP|7rbw(%}CAUTFh7(*}5?4RBBU%KzyDoYDt4rVp@(|I-HAr4O`C8)%ab z{|{vTA2>f_;5?=OXJ@eeKV#5LhJW~fI!=I#gQjH+ntE~2l#7EWvnE{}Jn_=t3Dl5r z@IPzJCBi@RKTd!l=9h<<T^<7eBf>xSe`Rz6T%jvKANapAOivkye~kaSSBH(fGHm44 z;UidV`3L^d2zCPK49`S*$_z$i8B*B)vqp``GR6tO@c)(nvqz829y1dD&mK22d;Cc9 z|3u{pK>pXk{-0y1lVhcuGeb9Lrfv?~|H=RJa02M&F3`<gsGDn}n~VM5j_v>W_{T{v z&sh)O|Kz#p<$35S_J42ve9r&=hVXyBP(Ppce}jDHf9(JHOAQK^8x*WCC|GGg{>S*w z_W#0lhJ`;E7Opoe{L!#*qhaAsMum#~->7h_QPDP|qU}aSJB+aZ!~b3Tf6=~CMf*p= z|HXfeDn4jj4FCT_`+xCK<C0^>CC80RP8yeB{69k}_Wux*68JyVq*P>5DmE#VlK)G? z&B*_eH2z<Urv3j~oY^(tKY{t5@Nb6kzbwtHEZwXu1DTgy;{0!3b`@D%&oaNBZGJt+ zoWp;Y|8EppP{pGuHvZqZHkv9Mee?S0n>7BD{JH-1Kje=S;1*5*@;~=1xiywffZJn> zsBwiX?gU_0z_{Go6ixu(pYuP)|EqV#qsw<Epi6frTx2o)Pe{8rAr)@{?oCX&H!+#~ zKQWQ~5ByL3|8Z*H-BA^8*ze7x(h0q#C-hD#Exq^5ObUnv0Yw2RiV7lvNU?z+iUKM% zWlDN41W0d$9w79ZULif6>%R9);P*WLoO9OtuD!<K3;5jE-Z3}kM&FpLyh$l;!vFK& z|0wo9@E`s^{<l0?VR@p$O6C7s?EhPqM{m*okB-p(Z}rD*tHZage!Fdr4&E00Z?pfl z^)Gj<f4*(~(;b^1Iokj4*zCDu!{7hdd{>EVcUIcK|Jymd0@%j*-&$!4|9_>zzuo6| zDc=9>Hr%yaf7k9)YW})=^MU_Q$p7<K^A#ZYANUvizx@6J^#1(??>$(+_=o=&zOD8@ zu7EI#{2$Ez7w`}NON9OZ(W1adix~flfPW#J06vcvdp}z2^?0!tJ!$`E{L_>0{{;BA zN9=#P0-QOV07&pZ9|E`qoH%F4r!J09T{$<WXUN^@8NCAF=oNqyg;xN6&d>dwp9cW{ zToC(T>P)WyLY$w6x*$3MRQ`9VTIN#qu4~nM+;Z2d4{!pwR;?8L?^^YdYt_fDcm+_s z#;tm-TlG5l->rJRTlGe_>d)NX^ncA)?0=j9+uUouaj*H7+v!mY|L=0I-R*(>zjm)j zE%yH(J!*f#{ty3q)E@AF|LYEV)cxjJcUbVhXWd`$zh~Vs&-%Z;sDHicPk7az@~S@# z|9i3jz3L;q>SbOHa_@SDcZ1TqLFIq%h6FCjyCK=TA=SGv&8IQlr!m8)G1I5<9CzNQ z@gn@sk^g-f3w@djeVdAXn@W6}N`0Hke48%$HkJD}UGZ(Y3jg~yUH5Ie;oE%Euerjn z`IcYvZ9jSiQ0dov&kz1@!Tt~YKLq|c@;~?7zXjn0s3!kY<o|%yx&XpIYQPD=H3htE z4rpx&e2H2EU%m`%RoC(|uvuNx%fO~rfsL==e~SGdRQn3S|3Rpld+`eX4|>+d{(mKY z(gy#F+5b2J#O#0Zy>{{4b~*vr|B{M!$xROUzuqok|4S~nOUlXrlClnIX@|6=Lt5M+ zRr_C>*FoiUNH2Cs3IFu{5Bx99?2u-3_W3_JxidJCi|-7M>kNkfV>^SRJA)OSA&RbG z-v5Im;Qy|Wv)t*f5a9oW%Kst9yF!n5g&ge)`Kv4B2>jm#|A!pz3I+ZTc847#|A+4H z4*jJ&6yrbpKdjIHyL*6t_J2><j@SMV+eZEm+u9Shr6-KX|FAE5!Z!DYVf_ERcgd#S zu#LS-HuNsR^1r@!$-3SpYdNrgP4AM`9Ps}UjsHtl^}_#4R`f3Upm!-+{@>E~dzZY| zOD6#EFSLxVfTfuC@q?)^!2bW=lbwI&t+$Xs{WBVG3E@BK@9h6G^cLW)Gg=yF@Crav z<BYb(S#6CoIvQtnHO}gBz<+;@v+Vz~gBbrf0oea%hl$P(7o8m;Iy*|^>?k}%XU35K z!^erj$BV)ZMB(s1G8ToKio)T4b5S__KN0>H!T;e?Md9%ObWu3(|L}jrT+MJx%?Jel z+h|7EYDO&3idd)>u}Cul{&(R0-&re?_x}i-0Pw$;R)n`!q_0+_pH^f5(kA~)v?GGG zBL)Af_y5=aUrysc{2%q9PSi)*QSkp7?WnanQR{SMYX8eV*OjsVWnbzbjQ=w94bqL; zPWYFx|795eck}+gPgjl;0RI13SC00R|K$hu<cD<SzaiE5FF!)~R~*$-9Me-A*Hiqh zr{M7){#W7ubU)=8lD`uE5AUZ8$N1k*8A<qu{82Q1DEdb$`$tF96IXyDy1$bA-(Mcn zUlB7v9y36Oa00~86#)OE@R$J+F$2P52ha%+J3u%APQ{Y{f&Y`Sd;-J{{5O{TFPs3! zVh0|L8-!N?f5r{^D{jz{xIur={y&)gKj^pkLG%g${*R{)#1F>)Pp<%k69BIO;s@gd z5d6O<VF*ruUGYP{OHiKxz<=Tp@_!<o09z9&;T6D_NkhL#7)mEV5>5d9jY;Hx^l1{E z0Pz1ONz}(l@c*!nl7@YlJZx3+u$9T={|}OfEl(!@zn4NMz_OI#Z>J1jn!^5186K80 zJcJ|vrw$jV4k!PojtEE{;h#Ff5Bop+-;4Y|!ZU4zN9qXow2^LU<bULxI?^e9q+|L> zhqRH{|H=O-ebmDAQS%Y}pFYYqW0XzCXzPs8RvF}f;D27m=(*|S|Jf9s00{m^(=x|Q zRpEau`+v-&O!V6S=2@y&0H#@EP0x*`{r}upoB%LC`TyKFL*SnpkLQH!aX0}~{?8si zPT2pm4aooJjo|+Y=aI>T^Xe1eygB**!o&&Z)%*X2sRkE#|5u#=vkY+pT%2QYah~DD zc?K7Ne=Ea_)`o<CJNVx)XMrL7pR>p?hxh*+N246I|8w1pa@~#K|6ETa?Eks&zaJN1 z0{>I^{zt0X|MO}8H_3n7B>x?g{C7>r|L@cOpWo;I)n)}Bn-;7wD_Cn*u+FSty;;8C z|If?{+5d%KniYO!R=Cx?5aa)A|C<+mXI}KZdEsu0!o3zn`z(qu{tN#9#X|6Z@j;7X z!T*2s`F|q5|0zB`spOxDCI3z=IWe*1B;)@K{67h=0PyioY1HIW8R4Ib=3=Lm#ZAWk zUzRYXENMzvpZ`;*mZeWAOP_ivb4pp()Jx~4Udo=T@;^?1oT<S7rMzk7`7Hm!Y2}5$ z|FrUAH2revG~oYo*|f`-5d2Rkz~#%+RVToe>8cap3h+<<FS|OU^y-WfghSx!OyIwm zpEv>N6~NV*`Pb+bKpvjgX60T}`JYdKS?90M%Dz7P-1XU66#S1XV0NGXQ*X>B|I-No z|IbnTe{S5(IkD8-7#05e{69D9=3LtUE9OO1@cv(c{eRvmyaKp2@8m7o|Np&Z`8Rj0 z&;Pfrj@;(&e^mab6F}wv+t&N<;1vMyPyKkudLOsvj`f~O>)kj32>;~&9hElUR@%V- z-&ERctF)o<|E|pz!oTg8cWp8LqtEZ!es<S((>>db_iWeSvl9aT*WR;(|7rifKYula z@qhj*ZpHoiA3UJQ{}0&zI05ke5BYzAu>XfWTnPE&1i&i*Vf>doT*%}9!k|a=3V`tc zXpukX_XsDzA_4#8|Hl;k@A3F`?(jdy{s;T*IR~ew_5%KK2smN<=T`s@PaPbdIy%q^ z0Q|H6pSd_bbK_M0ccc@*i+b*ZoS*wSQT|SJ0t7id7yK`AdM<T-A$55X;!K4(zgXh( zVk!22=NHSItKPvY02ev|-gl|O39!P2TE%_nQnlK(`eWB>oB-s1*XmDQtJk|$Z*Z&L z<XW@It>$yLn$2!CU$~S1g;xNA|F^r>;sn^~PW!*g|L*L6clN(K@L#u|{9pI0M;%Up z!ya|Nb4SSk^+!G6|GMKi0X*yf@vJ}LS%1>A{<P=+_&>_CLFV0{@M=(cHAG|o_iBjq zZix44NbqVP|9ds0cr~Qq6@WM4pZxFLnC;yN|I_~O)0E5M1So+2eVU4Wno4}g|D`@n zmwcMbeVQ-(HnabmulqKu{O{X*%eVQCFX12Er4yj}zF*5jj`n{)3jTlQM?LpzdEwtu z<&W{dRk#9F{`YTf;F|nfoA3(2|0P}lwD`BS1iWkwQ2Rds_-}bh&*ql_sEG<}d>Pn) z$p3+L^a>ylCqT`sK;XaXRbW+H(2KU9=iJk_ASC#oPk^8YZAg5tE$Cjmg#9nR-7dM+ zE{6Xr+Qm1xYwhBzwEt7(9b&crB_$ma_P?~SLy}MUm*lGbe}PT_eEcKH>O^=20RKyQ z|Cc6rN)tP!2^{-h3j8ZOrHW3etWz3=x&;3RpXmxgr@MmH{ty1U3;quV{*S5r9}N8e zj=JIhkb~VJ2PpVI<Y)4KDEmKTZ%@dc?$A9wA>a3e?&=Bst|t`Z|BjwejQ`tvLbq{S zdqUAy<o~cQdqO{l|9e6|>kZx5gTglShOO@n`?Plno{aynPkO^X?p^Y6Zy4k+oB$v8 zhOO!iTiF}7qBraV@_*QJ^8XU@|9?v$e>~rz2><x8l!Ez}EO}kue+sw2oB!1JTljza z{!iBaS$00Ce-^z(Pk>**KivW%5&cE<7VuBu3eeUF2maOj|Ji;TXMunA|Ji{W;e#~7 z2Wy-iqH$KA8>SIHTm$|OA1Mll|Hp{J$IvH0XMz9mqO%5~2%G>$qHy@%g!~`Q{*Ra_ zikM81|EFt)&!F)?a+YSq9L?~#jDIWgKky$pUo&z6hZDeFE5boD65s!@|0CVBBHgtj zJ+vadv?AI6QG)*iwW5NwBc)nV!CLTtRH$~;5^Wj2|5>Ijdq-RLo_5sx+EE{9%T{Pd zt<si#s4ZKq9rdxc>=T`+wc0Xa|KFe^+o%Kl%QoxCzvQ;)$k5k1vTZuD?YgoZI<lQQ zvhQ@|yL9F1kALKQb>%<mDt^*c2>w5yt2m&i_P?I|u%7&PJ?#G&{}u2*I;N*o`Cm_Q zLQi=D{?}8S){DmS&;E~Q{3|2-MMskVm9l;+|0~|`KTd!cIs}w46!5R|e{6qwY=2w< zH~}JA{t>YQBI1MwhQ|&(!;$}E3I8YKRGkn`fVhFj;|3m!A9xJ@=l+VPD*z_|qECS0 z>G@m2;6w3)4*uW%PZ<0YN*w${!r*-ggZCy3A^#@~`95LDF8DuT$j-zeJGgHXhkgV9 zCl38u@PE?KuM&rTnK<-|B*H)WKWXTuBsu}sqhvY()+Xt%f&Y`${!fPg^>G4_|C8VF zKVAW(2>u^N{%8D$0{^LW0!ULSoB%<oBZ5+gtNfoz{>S)_ywchKY4HCDxAc*&=_6gz zMmneQ{ty3CqwLdF_$U8oP<9!D|3_J8jDr8^1OWasY5!;Z({mQe96ddA%=FCB<bMwM zC;w+r6FG~lvB>-!kN<cQ{>K9U<o|QyjL(f_{Eub)3nu{ifBbn4_|G0cK6?UnUhRLJ z0KoqRlkwz#1pJ#%xInJ}CR~^_;lktz7bi~;{7?8ty#HSm{681|H_Wj#!1q5FZP@>` z|C9eI_<ylcj)M{TAF20$_&?9XDA&_C*Ngq{Yn<n2oX7h={GTT=&I_jfKR?tsKg>A) z4gcrAXIk*S3H)E6_J6@@Q<eYMn9}&aUcLW+ChY%=|F6u7wwM+2{$I4+yy#ntqMa)L z7wtAL-fLd`gL%;p7R5jD{!jk5DE`%g{cllx*rHhQ|6dbJj!rB&KC$@kiR^!T0yMGo z)I^N`rDrCUhEFPum{b}$>9zlrlgeTyQ?Zlb|FZbW|KtC($(Pb6mt{-={x4;5*;5Gr z>ixewXKH!gRKkD$w95rkFT?-9zu^B8;C~w7ziiqS_@D4U{mSKO@V}}n)62O_^yLqy z@;~rDLy*7l#34ZbzlLVv1c3bWuFcGW|F6%?xsLsx-U7h?!U+KXpSwN__|Ld8D;+1m zjoE2j-w6Q!C*7QraAQt9Qu%)l{2yI0hxh-v@|$yIH_87|6>}ph=7!&b|0($YG~@r| zt$Dz|;Q!;d=N-FkiH_d3{FB1?Z>iq@tq$F`I(WzG*E?1R?pVS9wEwI8Z}r0+>%DiZ zRQ|8D-c@OXZ~~D3?^<uC6Ts%1yYRma``<?Gf7{K#|2><}?%8g-3;zTEbOL;O&u$&? zf1mvS@qIhA`o7&q_vZ`#UwME23gG|#{N?b!3jg!peK7x>2Md+~{}18+1xp?-Sn^;2 zp8yL&u>U_?DCKYhh^a+^D*rEh)Biq?7kWQlguJN5o`nBJI04-G3UGV8*zL(;S5<_6 zmnV?_V)Fk}dq>syPp<%gfBV<|cXoW{?C=av_}^9VzvD9x$LB(xPS3sB|GrMo5&7To zMF36!_}}Td*y*{%`31rW5bQ+$4~74^x1Fn&Ilp)ZuK?hGXKJ}i)d$Xf{;&SXg@XUr zxKyukRr!B|TMgRiR`Z!_&F8M<|1Xhi%@*!!x0-L<YPZw=U%S(-_B-x-_u4)1zkBTu z@V|TQPwf9+-0Kdw*Zt~F`~M-2y2I{t0vz$E`_n_U|HJ>l|G#hg-=pEIXMMP5eWYgt z{4e(;|3`Z^M0>ISz105q68ztYR{-hWjTtxryc)B-=>)hyHPQa>-IV9kl<(67{}-|U zaRLDU2;+abui*dYYrgD%pXQss%@sc6|JyhLe3~nLTkiU{sQmBS^3b>C5##>}{LlD@ z|6lmEBKW`BzZKOYzt%ec)_S%78~tAb|2P3?|A+tmU$*+ce2Ejlzm;SE6aKkCmH%G_ zG`tF6|KkJ*5d4q*pZx!d{Ewb-?Ek>WZ9$LPf*!U7K5PrR5B#@@@3sY2wgpwT!~YbY z0OFgk{V%@K9(1`~T;5LpztkZq?GXGg0saff|6=yPB&S1sp+kJWLz3MgKGz}5>X2l1 zV*i(>b-@49lul_<rzEjclF%uM@06n0PWWFU_+Q>7m36`Yl8CP0@Gj|@E}Q_;lU>pi zUBT$zF8E)1tSk6fm-Mgh;6J;9|L7L{AN*TaFz|n{E96%`0e<NY`K3Gfr|ys+yMy<2 zhwLN&6aK&N31R$)?&t~mwkH$`{{NcszojPx@<(6vgnUjXK*%QGzc*|{Pw4vI&`-(# zp=*1?*7b%0|7&_fSJMdq|EpsBhl2g=|Iqiz|6ywU(+R-%$1@D(f13(}{FnY07Dn~) z{>>l4KfU>{egAXcKSBF%X%PD<jn}`~{OZ5+Ke7MMYQ1$<OCwy1_J8;v`+qq0|9%?b z{kZ`e;qX6V|A!CN2-nvLA0~qT3IFVW;6EJWzp(#LApA!diXx0e5hkJtQ&EJOD8gJs z_@4y)Yeq~FMNC8Rzh=Zt%?OPDXr5*yveJyS(Ts%u?F9U5MlRBfwAYM;|D7}=;eS`H zNH@*b{`b*}^3@Xj9|ix5wW6fj@P8EiA4dL<TB<FB|KBD5%a&`)*#9!M|7Gz18XXz? zU$$OHzClO6Nk{&<jvW5~LP!3Uj(m%be5;Opn~r?Du6(<W{99f5PF*?t|2?-ySFul5 z@q?~H?SI97;9pnqtFGc8E&mF}zw!?~CGh{Jp7Jj}<xxE)@Bhlb^_2e-{*@>7l&AVB zG5+(HKhbCV!T-?_{i35dSwEWn<^7@+{i2l!=I;mj$8dB4aH=bS@elvYV+Y7$2Sjm^ zYX67F4M1n(2Aqi-h)%~1JjDqoz`t<=(LZqm|BfGYoI4gj=qN`gK>VO1@q_*V{u8L* z;s+nX36L=OV8Y;E69ykh7`#7W@Gl92e`fsS1o#0bKqCA<cu(Ts-HAiKPaLu<amaTZ z{QoWYP0|qZe-iKi@IMFtqs@K(PaX>VlmC<T*Cp$(P1awN%qKvy{_14?kCOFQCF`$D zVgIM_{-478f6B0TQii>aQim;}hKF)E0R;Su)5!mUX(IyCM);?V@Pq%;M);(S@J<`y zmB#*0SNY!s{!bt2oKE{cg8%K)M=nkuxhP}QqKuIX8UKR+ZD{{z|7VV}<lz5#nWN`q zj-H)K@}J4g$Q(T*YxMN2(NnX=2nqO~)aU<mV=(@kof`xB6aG2IKm0$|D0{4-s&NL{ z6pjDn|M5cO&W}fge^tOgG9G^cnbHYx!EC|>_CNN2!T%SgOt^@qPPjPT;NlDp_@7PX z%;hW%a;yw;tPOH(40G%_;D4cEF8SXu*WM8L&vi1&bvDX%<plqG8RdB!<@p%l`=2~N zBYgj#2mFiK|5BU)#w!0~{8#P&rUmbr!2bpC|4OrhRi*_WnihN{_}{c}t!d#pIspnd zm=$g`E9CvZaI+cqf5QJ(v!ZQgMc<egZ8t00VNU+vMf-oz9+m%#e<c4G|7=mbe`2xV z|3ldSElLhgEcwHt<Ot&*{y#=1fUy6Uo*@613jROa=l@B(|4%B5e#8HS|H);ElgpAO zmnBawOPPErmHbb^|Cv+D&rK=Mo>G3EPJr@@QwjelmrsBK@_%{Zw9AE4FBea{Trv&g zKcyP~r(G$ZcI7hsKmGC*RRaF;ymXbq_%H1Lcm)9V(^~-gF{9|}jKXU(5&M58<d1SW z_W#U_*JoZ}{ImaO0skoL#;lARI00V!Kjr4^l$&#sZ_Wn(6S;(&bONYf0n8!)SIkvZ z%#~Nnm2r_3b5X>txo0cpp1Cy-!T-Gf!~gUCxi#<aTl0?Jg8%0M|9?@~|ABwY-)aB1 z{OykAq1%=R?^pu=?0>6Y?pXbN$Lgm$RzKdc+E;0{x6+En|4M6&|GO%!dH=WGQEB~c zCHeoGyVl#_|GRzuxB2p}%@=oVHs7`R9Qfxp5dLk~-?#hpzTLX}wrk;k#y|Z35%=MJ zJM8}}AJ~!q3IFroe=z?&3giF$Wz>SV;eX(t3w;RuQ&RM3f#l%=@uP((@DW}CEDYfM zA1(BIw9xnQBH*7>`QMY|Pq|Zz-JdM#!@tXu#mHHm<I}~Qy~9%^;NRZinS;YKN6yLN z8NvzR;_%Fsb8~#|?(l~H9iMwUKKF5a?#uZ(;uQc+fER&IFM^z2h@D<YoL)$sUIYXG zI02mS3ZQB!$0tD5JI+<_3jTLy|2tQ$bg5p&_$U9nRDS~hyHu}rsb1$ouK+e+{CBN} z|IudGnlD^yzCvy_TU~45|81_d+qoTXbOP*htNq@sc8^=#UbotP?se?{x}V+aUi;s@ z?l*VA|Mh=()c@&G|Ca||0n{J&sQ=re{$K8-NBt>}`ZFs3HwgZh@d=>xY=}YF|2^UV zM%w?q8k4;mQ@r5+hIFsS3@`S-SK~Ra#`EyMSJOqD0Pw$eQ@(dofp=4(cT<sfQ?Ykb zsdrPEche>BrgHD*%RbFlxobYnH#qXY58<Eu@6&S6w;A2{ZFzwGAO81kdF<Qr#JA-s z_sqBDxo^u0-<B%B)*24@C;$7k*88<K_`Sp{fJQ&^e>1|z|BQd~KL!6Y{`vVTp!pT; z|BbIG;2%N$jDPq)fcJmkKcK2DkoW(<XKmCI?lH+<75sm{J@9UunEfAgr#%SxzttXe zvpwhrcdb3>DtEa(i2WZ_)*&wK5SO%zi#o)G9pZuxG5cSf+X4SeE|UMn?0-pChd8rS zlFp@eN>Vx{Z}?vl*C~nZl&JkLk#$P2|3`FU|CgR6|5K;P|5D)ppDwB3|D#>O<bUA5 zJNS3*P<Jr;m4p1z&)va4lK+AKVBY^jcK3wr>W2SAcJ_p@|3kj%p}y`3+1e8V{C`FM zr#6%SLq22w1OFR($^X3n!~da>|0mqXy`dj*ANGc>>J44l8@hty<sYvAfdA0<{tJEg zzc2*$qh%cAk0Adg9Q(h|^Z#FekpJHbS3kow=yx~{0lEeF@2b<_t+OJqUlgwS7VsaA z{a<(mz~BEw=xIds*N7OvsrUczAsP`wH6rviB8F*1!2csOB1VcLMu{TEaN|Ugy#EXS zk2DfRnusDzMUiHrNcMju`#*AuC~}%+<P5FI8JdysKkxrh^E9I@+5gs>QMQ^<y#Gfn z)Ql4R@2D9?{@29!Kfr&KyOzvbTjr$|CHOx;TNa=tWB<#fS~8pfq1v)AE!k3}8vo^L z|I1fu%U5a3Kh&15)+YadqJ!~Y{;4+nkMUozNk<|0|4SXkS2~KVI*PA#6x(zZ-{>g5 z)luxwReVRuck3#5>nhm)${%!<g8zTfRl@(j>M9TFDG%u?f74YS)>Hhhr#M3Xr;h1G zqrdw_A1C}r!~ZAsqEGdUK1Jg{KK>E#9~03J!T&KbDq7wzhVdU0-7hA(KgH&ciKQP( zJY)GS06!srd<z8plmFue$l~bv`UHr_2{7<XJgxw>|KkUqil<iqC*c2h>Yw<5?0-B5 z9!nT_G+_`@`9ERM9|?mF!~fi&ghBt~|HQ$+B=QNM_W!=bA$xHJ^!Y!DPJo?BLv|z$ z`8H|D_T-`8BoEz|JoM}2p<9!OZb=$S-~S|2wErh#{~x+BW$1<!{q-sOpQe!ifq#|% zQ}kD->VK4?zbX|CTahyCgVbTmQ--|{|EFUAANEe_ux0H3rD?;$(uRem(FqWo#`}NT zaQI)G2LBHa;QZ1@Am4QIKk`f;;Xz^iAK{uY(j{XAP5`G23ZDSM|MnU1Kkz?t0Y|R@ zGDq5Gj<U%dWt}<7O67mxe-uuD*;#1RtgKPw|11^$r)7;s@c)#o(NoTinS5@{ByM8% z7>lei82`<)$Czca|Fg%MW|RC)vI+l2I04R&H9S8Kk^j$+o1hM_0LGyU<o|IO4A6Lb z8jYva{>KS$(QN!h^YIrgCR}9y)A%p=f7*l`G=0LwnFbjDb9n#HnPZSM&j9;>uG;^( zb_R3;;1vM-KbQTV=U|xUWC;J~xfs$3;6eL;p4$I;zD9Ze#`yt8`9Vhc@W0eJ9|ard zh0y+Au++HVZDV}@Q}C_{`F}b5Z&I+*v|yD9;h*>a!ZqywPfZKgn-*>`E!<>Q^qFbV zW-~<J|7<ZUg8#pU|IKLs-(g<-op~|)zZm;JPJn&%3ZUdCbNIhxzd8J0g8d)<KWtI* zy9N8-qU0}&(xVoo$0wHlJ+btkiKQ6-PqP2dOe{rbCzVA^EQ<pECzZ)3l_}W&!U+&J z3FH4Iwf`>(_=o@T3Ls-jdFEu=|JD94zX1PFDbJZwo;&4o-V|E?3#O3#;s0Xzf9mBD z1pH4G#(&1Y;Qwh?{%`-QPXNeY^$F0m86`;Y|Fs!~bOOvMygsAg`po?6GxM&K|LGOL z^_ds>3IEdxaAQ_BmxcZR21Ty`sM%>ZXQz_?XS4rj!~ej4LdBf;irH}$vtuh}$K0F~ zeN*uN9C^hY88tWR)*Sdh{1$bFJAG>|#{ZMI=bpGdSMdMex98y%z)|k6+w=asJ&*lw z3I88@?SIStcc@?PSgQPAY4rp9A1A=>N~`ZFyaKS^dDm(u{Ez+rt~LDs^*!sa?^<uY zM<>9S_sIX7?@`$QH&M15?gRg}pWe4!cTd2-?I-tbdHlEi=)Ubo4{YD?zuoc&2>!Qw z?}6RB5AEK0Xt(U){I@y5|6vd3v;XIl{~yr_AbAA;F9@Q5{{`?r<nQ-*f$wAZpMw9r zs6~wbg?PF@SqS+v{ssRpV)-v}ezM5vDH7zr*zt+IBjJBBp8)pu^uxja83p{?(;-0q zx2JFdkpHp&;{@P5;eQ9!3E<=S!Wa9$5d81>LhSfLLRCo}t3sTr=o28PswM3IWlmLZ zJF)+rX#aoTxq7)v^$Nm&)hg%e4{-uGSFaZQ@2vK}OU(wC>WwZn8-@KJ{&!KG09#yZ zaRO|^{_j@%t!wQL*Vq2vE%@K9?guxV0ChjR)&1gDx8JSqSGT%@Zgq#;*#GYJf4H;% z-RqCK*B^ub-Ru8xuRq~Yf6~4F6u$p)$Nt|C;n5I*{okWO=Fy<=Y*2bMM0+&Ecr?U$ zG{$>0BzQI?3jX(OO!aC^^L*|9Y_F!*{`VsP=Xo_1coF`Kyqn?wGOy+`@8(P1&FufC zE8fl5xEtQhH+`Bbyqj-%x4ia0P5_@4^1n~ZL!XvMJ}r-Z1pl`_^8x-_UvO2vt<`=l zbOQLc*7~ylY5#xO=-1ll`?3iqfFGRzD*yYve2L(HzgGJA2mbeOe(B$YC*j|p{qNuK z%D<lc@6RWIf6XftP~C>_f8hUs=WPMcIQD<Q<F<fDZ2=G40v@yl+;0oK-xhEWCqR2( zWqaUluA)8gW_#d`_Q31yf$aalEA4^h<p01+?eKq4X-7~=M-cp9)DcwB5ybuv%Iyfk z{(rF}=zK>I`#&g?{4Y-LzzHBu=@ciE|HX-&V&4A=|1q6nWtRjgx+JnLNn{uNFOBGu zob8gF>5>5dr@AC3x+MR0N#XzFU6Nzn(xcsyKf9$zx}|?~OAk}Qzjb5(m%{%C2>(*_ zQ@8Yo?qIaHTe_zwcz1X3_ucS+u-gB@+k1iq|8INk|6t%B<Np^u!Jnbt;Eg>Y@c+i% z5G?<n_J*wM4N?0)<m29u)$|G=<ip+&;Ga)`5cvOt-jL<JA@6hV{TBxRztbDa_z#8o z+5e%C|J(nCg8gd$hlbKC06c{s!U@p#pKt!L?|&2i6;FU)T}0mxIsx8H0~bNKNFxF# zfTl(SV*KM1ph({TBl@ZRKTsoL5I0yO0>S^oG$Psm5hFzKe<b`rTJ8UFqNoWJ_WwxZ z*Zz+(7e!i#;Qz?Un(Tj3<aC?>B7FQ4Ia@Pwu4WXn)Rb9iM%ie}>@;QbHKP`2$`)$M z7HLM=YeqS0!T&NBO_{4!l$%zRhnCz6Cjj|h=Bp+1*OJ5kL0WP#@UJBc){=#2$=Uz% zWm>|=Kl1l!{|EjRE9v7O#cFNE$J+9>I*K(qa`=C}wqgVDuMPhT`@iB#9VPs~g--y% z|2uS)J9U)b=_+^WD&YS;I?6q|O6>nXlK+*!KRTcr4gVj~jaK`g#{VOF(SPd2VEjL( z7eoH%;QtePF((NBF*pHE_lrK$FXk-CKPIwYY!n6j#{&OCivBUmexQCVmVY*XES_;3 z<R8~RI*y(S_&>hCg5@vZpZw27#1BB>z<>MzoB*fe2cC`}0Q{dypcCK(@Si|W`2TM@ z0SN!c69)+=z@In)5(XV%|6~8B6CjZ~lr-p9?f~Qem!!czbNB@4$Hc+=fd3?Z1&};s zchZnu@PG1<@8JJrIsvvP5BVl}h|2#dL$;(0{VHY1m+b$|DMLR`9{O3z&`l}&8&ZbC z|7cx`{@N7%H7WX^r09Q~s=qo#|3eP`Uzy7OPaXDt8uczt0Qf(Z_J8<)3Hg6mX!@{_ z^x?tj!=!1$CFyhm!2f~i!~Hqn-v|CrA5P!@WQ_307~!5i!YyM2p8zAAGe$UNj&Owk zGe+8Hvi~zjE<_n4A%A4Y__xU#X`MAv@IUZBFAM%3H79EnPJmfig#Z8X|GCkO|Iw4P z(U^(nR9RsE&!)_>$3Xr<#y9~4{}cWx$lrjU<o^rf#v}d&i2Q$H0>>x7MMFLTjK^Oz zp;Z1i8=qr=6JR_}0Qeu}@cu9OA16TW%n9&6;UD||JcC@E0Pw$!K`yd2$h9-foo|r4 z&@gY2A^cDHcQDL#GR$)}g#Yv0jPl%#@;wa6|H#KE-`6PL&xrkRoF8OdATfgf3xNMn z;{vt+3*Ip<c-Oe_J>$aVCWRju7p^p6|C<!9HYxnX<p1!0(MHpv&&-NGH!b?YtmsSA zB7Fa&+W*apx0@C3FeCqeXIA_@<A0BN$v(4^AI*x%|K{+2$pQ0{gBGQS%u5fOm;P>1 z`iDj7pBAMm|69QSW&c<R{x3T<sq{4PKaubsF{vzaVwr3r{C^1_{}BEsmBmgfi<@*Q zflHiRo`NQor%uBDU!Fd>JYzEaUw#fvxtu*2`+xa`Ddhj$*Z#j!$X7to)GI|(;QuS| zf9cdKW!$BySIej3%O7<0>h!BuaRN-ca&_8ebY)sOkN@gd0C)>9z4Y1)ME<`vz4+RU zA`bY+2>}21od9_^X5`}gpBpo<|6jZ@^TLf;7jDdi|Igi+dF}@7|0@6AoRxlaR@%*3 zsW)c{{^t{5R$|5MgqyS3|8vOy6~g|H6JU;_Vz%to9N<5yVooIEAO1gkYYy;#`u5yY zI00_Y{rA?~e{RqHn<D=oyFK@>J9B~mBX{8cd4JroJbZ`te{`^N-T}t{{z~?LrR7hR zmOobV{(skUkJ|scDy_b&w1WS4+_n1lu2rA^x88&Qt+(8>`RblEPJqq#tUteJ^Z9+7 zP27fiHtX-(!2h4#w^@7NcFhAD_#Z+3@IT@If!)dnwkv4=xBK9M-TM!0aRt0f{-3{$ z{BQU6L%XF9?Up>8k3zYShx3CU&X+!#5B&G}Kj6{)fXDOwA20BKw1EA;z~?c-$3F|$ z|B(Mek0+EG{|nuoEOJ%n{B)u7Q`HF|jQ<W#7ulm{ixxj!y!hE-_@AHl@IUa+;R<k8 z`Tx1A{WCXvdIjKaPbYw<!*egk7dQd<6~GHWM=HR9u7E)Hzu4i0!~y=tCqPx9+!Cj% zr5yR+sp?&)>i3+g$^XvPA2?U9aIRhn|2wn)ovS}_=KbHfX01!jr_MF&fq$2pP0lr& zTxvddsoCsO`z41@fWCIA-G*FizjdJ#V5e*CF4wwUuC=>eYxla<?Suba>wa{r`^k+? zfc>s@2iX5O0e*9<KkQcjhg<!hZuNh;k^hf#@c+L!0pNf4hSTm1XWZ+<-5Vm@8zSL< z_XfF#;QvO!|8elYM`NOAW3p#s3jFWUm=6DYG-Y}=W_dP||1ti1HsyFxz<)mbztF3x z7-9eS#Qv}LzjyN$FY^C&@8%m`%{OrZcwzr<x$V<}@xRi$<u3g1-E!Ys?SJo<C-A=y z?f=hwT2=n{X|3{Ut@drL@oB9^@V}30|8Mk#|67}UUpB-4zAsyl-^*6=f9p$M_CJ2W z|Gt9%n+X4YH~|`7`LX|T0>J-%xB|%kZScQ8UIDyl^H=-d|7lymlQzNs{%Zf@1n}qY zfA9%VpZ^2ke{{V);97g&)pqj#<&MDe4#EF{r5%CA9f81qq00Y3d4zxJg3A9v=Q@Hi zJA*RF|Kc?EKTZJle^7j<IG)G<80`ODbOOl9|KdnG0mR|#|I=M!;Qyq`{}PP<@c+>+ zDI))Ok^g_^6W~y{^kBE-*KX+n#{bXk{~x<0`?{s%|8D8`s7Lx;k922`^xK}`Z+oQQ zkpF|X^+>n&1f#EdfPd-co?!Gj`Cq!RCwNnjbbW8|r#&HPU2pJO@_)#h-r$dWgFhnw z6aMjIRd2}3Uf@3%`2V0cczG{A{t0>SKkD88g5UWs7}{S(g)IFKS3t;;|3a7i7Xs~v z@srsf5~A`yeh9z&{?bSNzJJ1B`u_E;x4?d??}vuQ|NIvI6;JqIz`vG8q&A%Z5$yj+ zJq@ZqH$WqD5I0yOaww-Sg8w6jYebIFh-CjqjuAzU6-8qI7yNG^iZT>M8Hu7yL{X+9 z;GeP(MNJY#O%_E>)r^{^88uxqYNlq?EX}Cdgn!vQO&R-N2LIdg2_X1?v8K#kQ|6!< z<*X%h(SrYFZkjR=EsX#0za04YBmBz)3I9~EmK^vGCI8EpYRTW$mcOHg@gM$|f1s^c zLF2yy{{M*luUMn4SgWmAr>*Go|K~c2&Dx4Dbd<dRE4S(>vHyRgquj2eRQX>=xl2d6 z8~E2z?$s5>f921*(E|S2|Ir6^qkq$lKCBo0yI%AkdeMUaj}rc4j_bwztrzo;Ud+G1 zKjhDy?ibUC|A>CEg8v!+@PDkLU#zlUY;?ca7@_{LasA`s=&ABQ{}BAIjPH*W@%`oT zI0PtJ{D3GfQtkingaKz02BOpIZ~~m<Z~~xz5(fTF_@|B~4mz4R=&!^<e<lt(!u_5& z2pwks;{-UEH2Bw~!3Vhg0{)W*|CluR2X0@|;JwL%_aqPAojl}w;6HiDP7Wu)8~z`% zHDxFw|ECN^@IUa+{vWy_75*Q(K6U82)S+ur+5f3@0$~3~AJYD>zcN*SMXLUCyaGrY z_8v+d_D&l0cACon!YhD~^kL+G;GYXhSNY#BeK_(-AMTwo+$&?a%KsVce~kZ}Q^p8K zoB+Uo=E%hy`9E{y0>S@TBW*HA!v9v(D9bFuKlwjv)SPppW}h29>)hy>=SI)qrk@)< zjhmW1dJ5s6{f`p><3IO?|Hqh~A8W!HpU3h)j>mu12`~Zvzc6;fg|Q_63&Qx%`@e7k zT%0iOqQN-$|Dq8moB-JW5$*qc0!*5aGiiLz<ni!-&Q#U@pF3kh&ddq9v$?qjxd<nK zl|imG``^wm&(0ukzCqps1Nc7={<r57fc>BEYDl>o!vFbRM%0`B55)d&1pgNV8&hxk ze;N6|;C<sl^npp?3gg06CWRmN`QM~ytx3_RCPnK_iZ+-OZG!(z+5f=5Y0(zbqOGRI z+f0kUF)jX9@V{B{F8JT9c#m1}UbB)P;D6fxOMWpgW&acY$^RDrr~i*xl>Kc1|CgPx zC_8CUc4}hTnTciae>k52?Eg#T|B08_|CeGXT@w7CIO$T-r1IoR?0?3;;QuW4fA-|d z=ediMFJGK;Ss4HGA%BejQ*Z)Yf&Ur*SAc)P{{sHYr(V6xUBwAN_*eO#uYmHad<9&a zcIn#mGOqL*u7K&}|LauI_34F_@Csl?{`DDoi2Oez7yiE?_#Y?0%=3hQD(mLVtQ#{k z82^I*aRQ{=oR!QaRj~gn1po8?UoktnVz#nkw&K=oMa3Ms;D7A@x8_9LniGC&&KYzY zC%~Ljx95=mIh+8;Il=#b-C_UVnfLphd57=J`>oRQQ02Tsm6pF&S{|shg#Uk5;otIy zyOuvxTJF7ztajhE`u?ufuDe#>Vf=sXf2(cxtPx%TY~jAVXZ^)JYxsZjeVfnjTf_ew zIrcwJfY<*2_<`+e_#fl{1KU*(Y}x;|A3U)A;Gr%2|NcW7|B>K-yaHhV+l4){ga1Pw z%@5|-|MSI<s6g}><NpHx$MXgJ`x5>a0RQa&1%&^{3mE_KKjo@wkqgOxq4Sf4JpR)w z0Lb5wpX7f!0U-ZHz&~fd_?ZLexcC_oP5@VX_@AN^0RFds?rHzr%i)E$J>CMm@NszI z>+r(Q;e|i^@9-j!WB<R9I#dPY6@X(^sAJU<MB{(;GVUFxYSjtgRQ-Wd^$Mrzl~m0~ z$hl^<bIm8tHEZC1=bCl!zjMt7;QxR9|CLMa7MI$s?Ei0EYPXaB>vp=-e&+)J*X`!^ zxz?c{UF&{wt^37Q<^NyZ>JPfrlmFf8;Qu3n|J~}3yVd{gM*IK2ZVe~g8`S=9_#gkf zHz?g3qut^E##q|_8_EA3jmaL3DISe!T!u$urbiR`-?QnwXVV2wIstM$oANxH@;#dh zJevwVn~FS}O1zp%Jey0snlE`ZmwPo|_G-Qg|9h$Zj}rj?_iDL~R{-ARe*ypGfA5xu z-Yt*df2#GV5AXjt0T}<}e*ypeg#YV&TN`}%;~(t*oZ$af-<Rm6DqI1;KlRG53B9Bz zP5}15Up>j6s(s~G^UAN9t7`Ly|Ist<X`BC(Hvh+Mz(4h%%^&!`*Y1C}-M_Lu;7)tM z?e>6M?Ew|sjrIWS|2P2z|6}|o|91qIbp)2E{2y4@5m?X>nAZ`Q+Yy+<Vf;Ve8I;`_ zl+`KtKPbI3D77;vr86kGGbpJuD6td%4~pvyitP-F#{S<aR&<HwonrRCIHF5@wo81b zOU(WkpX?H!=o0_aCH}ihe5@Nu{_4X1FFDdJ`J-EMxLfjDx8xAvUvi*ZvcFsMOSk0b zZVB-JL$?I@-`g$O-Gg5He}~HdI01lvYD<sws~#!*{{@`@($9OOg8w)4NH>uGgBkzu zfAA-af3^REKkN-&)f>FBH+Th|0PsKXAN+oA@O$uoZ^*mcvfdB`_M@d7*e?Xev*ZQX z|G$3<7lH8qzoikW623;{TW{gF>WLqe@JEdZ{19nGYQ7Z#{ImaY0z~R)MCfWn>2duu zqJV$)f7Bq2sKFXhLo}j>YDDR4M8W?fG@?d`qDE;%qA?=bSdoms|B+1)$=LrgW06eo zznMq||4$UjCW&N|MY1U(8Tnr%o5B8{qbZxKDW9h)x8iIx<#w9#`858^7ir4vHRTSP zGDl6Blct>Ze@&UYrreYKFZa<>@c6I5{vW8N2+~qWwG_cxicl>@n3iG*`+u31;vH@H zU$I<U$^KX36~Kqu%GKJ+kF}MbkpGqN|EJo@jXKIr+RD$gm759w)D|81KYAPCKl)n= z`+xK<o#@?^a<5MGKHcaab)$dMjb{JH>{spo82@7q>&E=98*_yFOBdsRAO2(i(Tn|; ziaDtldr~jvv|cRye^xIxoMZoE`Hz!Rz<->Qi|$V+Ky1G_#Q2Ym?;jV>S3o=+0`Pw{ z<6k%d@WhJ%dBOlHegN<vnLtHwd;$zOn>gT1;(*f#_)i>oDskY6MDqW?iG3%)pks*x zk0uSo3Gip)Kso`E2K~X|1o$m!&>`|ag|`5}ziR(a9`sZ4;2)Fe1lX56WN*q4_#eUl zyVNJZj+7zartk@nGGto{`F~3)_0^mHPsRQ}bYm)?0I5SiP1T40*QV*ONz?x%jlcg% z)BiAy{hy}4B3*xZI{dHyUiz?ixp&fsy`8T1e>&~|p&8i!hf6btOEQKBakT$u5dMAP z{|q$3J9C6rChz}v1(1pFe<<h75#;|YG}1n6<l?N6i@1eZJpN~mw96W4dk+2|WqocG z`Tra>?;PP@i2Xlm#yK=v<^Sx_Q?tj=$3J`mOgcY$;`z}Q=SLI%&yO+VOwW%oIX}jj zGrB-u{;2$af#gs7KlvZ{A4^>X{)NVmyU3paz4pKHxQoW)b4<qJ<DVSUaXGyI=S&<= zO&Xs&d3^4a@$i4{v<bNw|KIfgoC$ezC*;kW0RQK)|MP4NUi*KcLH=Tce0u}o`=5L# z!+aORd^e*v{BKwQ|N9vg_;Y>!m+}d~{x4i=T==#T_WwfopZ0(D|4NghRmMfDO^a5W z6n#vu0LcIA$p6I~O^P>}6n|y{{}+E@TKuJH@m8~9!T;Oge^c!LB^dvAnU(A|E7@a) z@xPe-Z&v!VS?MokrTfiFe>E>XXkPl81^eGzwf`TrC_83eb`1M}pZ_P8ot}8<j73>E zns_O4;-#pGmt+$!$tRNkW4O49<?$2C6DF1m{-^POa(UV$9{(p@&f?BZ!uU`Azrgs< znS41HO}Uak`AWfL)d^5M<x0tvE2Vgn|F2$}a;4AzSEgP?R}tZ#pHt}-z%}51S~=tY z5}w!j1h~%rzdpT${a<{2MiJw`@WzY+F8>Cd0Kh+@R{%HxZq7W9@Cx82p8)Lt%$qm? zW~Nun1pd=1W~EllN~xHYTrrFNKP%zZtoU2AgztZ1Z_SRmHCqY%bJ+i7w`ND(o)dYS z@E?AA&e_}S|J#E9=bX4b=ifVXX#c-6_xPQ;$L`SnPp<&5|KFMWM<x6J4)8yZ_J77d z`Ty=b^wVAJ|Caj*|CW31TJFAU`TbqXU3V?NyJx8y|L<9CXZ&xwXT|=v`syCC{^GvX z=KI#4-?vu#-+IG+?EluEQa0=E+pM{7^T`97)fD`1^Wg)VRS#@dKC~hH)AA4e+rIbE z_FW48w|$$kTk?qTPapq0vI}`+2mebS*-0qEf6!yQAo9Pk{|o+~uk!zs1zt}Ucyb<3 z7PvoAodB*+7PvlLfD^#w3E|&~$A8G*@##Vi>|ZF1|Fr)z{ue!4v`BpdEP8Ig2v@*! z$HmW`?4LU?e(o&zfAMSo3nzfLJx&1jzx@kedpZFE?ECy*CC2wZ^a`LV#DPwLFo&uz z$Eu}{Rc}+(%N(oUb*z5RvHE?->gA4V|2xtv0O0>)r<zZk*#A!Kf2W%DPBj~yYBo95 ze&&o<0JUE_(<=b-zjN)^&b8Z|Yrk>k{okc_C;abH_q|Kq9@o0PF0cLnvkUxRf55fw zSJ(Q3uJymU*8h(E-?jdTYyF?D^+#RnkGa+#cdh^1wSoNa)^O5|_W!eP6z%_R4N>k5 z3O9=V-w@~Ch);kL+}Z!`<o{In#x!^A|LlK{rgJy}JlOvpO*wu3_i8TmY%cO_Cj5Ig zmvJipdp2J~UfBOzP=!~^YyW$--1Ta?=hbrGtL1?g{NMV>yY;c)fA7|3-mTBQTVHt7 z_+RDSTJ7Ch%hh?e)?@$odD-CeveD;d6N3MJUN-x@Z1H*7%Dwb?`3n2Ls+L#qzi;y^ z-zKi{l`o$FzVJT+{>lGs*#G^i+x)6t`LX}~;D6x%X`3JLj~=!8J#6=X(C&Y~-Tz)& z0Q`^cwEMIF{o((c9Do1gf2BR(GNS!I;8I6GX-7awM*#2t0fij_`5ggy9Rax=0XZE3 z7drwjbOdI12A(7T2WEB#W^@Lobq2Ek1Cu%f6FUPFIs@7Nf%y0*x-&@G6$JdtyMm%< z|L^mE(5bGVlU+e4x`O`Uj&}te>k=RB7Q_EXy2MAi#lMsP#fQ4ZJpPOKcT>M~i+}1C zv;W0=yT!XH$@e|t@46)z|9AFCzU`50?~!2nM_;S_F9H6)?2&Blkud%xn|dT0dL-*n zuk=%#05twf*Yrw1>6L!mD_z|iyt-HVQ7`;2UD+#LLE!|DF7K5B|2P5O>y^ISD}Cob zB<%lq1rWT1!U+%z^Yii_9P%F(ObM75eh7bg^ND}$`_DIj<B#n8sJGsV611;kzxoj1 ziy#X4C;z|2Cjj|Bit!Ks%liD^UqgllXaN5*1pE)tkPX$4vHzpU{~A%FZ~};;*#A-E zM6&TBIs0F3D1!gxCL)=sNXGt`O%%xm|4-GFO%uuB|CyT9Y)$!GO$GLUD@}#9rrcIj zVN3p(FVIvh)>PPQDjYNwj+zQ*ErpAg!c9x=uBGtQQg~@8d}#ky@cyp|)KW^cl!E_5 zRQ^{i)mALiR=lgNcux!dSA3wYT%oPt{U831hX2=UM<d{Wy|!|LHv3;kxmg?dk7oZz zf2|X<O(%N0P7M6NQzwS~AM?FV^d6n)y}B_!=*0Y}8zcCCzitf1{{y-)2X$lE|FQ7@ zAMF1>bz_d|#vaoZ#{W3@AIm@EKlYSf>>0hdvwCsidT|kYaglm)QHa0)5%zzK|Iz*8 zqx;3haKL|jzxX(Q!v6_;0>J+XTs)lsbOj{zS0n)c{pE>#0wfNQaZ!E#PozTt_&<wh z5}g3R|EZ*bCzJRDfd3N*{*9986@beB$pimN8c6<6rYqq0q(O(12mO{zp8y?9rW4=* zPJrY=za$U(Ie9SoKZQ<!eJMBr2JcCszE2tQ9k(-O2>CyC$o7;W-=vcNzfK*xmHa>C ztJI-iqz(BZZRqC+{!eB9rwv`7rvGW$(6yA>|2P5C^*@6D)Ad)f|3Bap;Qe%*0Q$iH zvJCS7+Zn@_WDE;q|A%A@3(goO%^W7l94?0cGlvIcP&fg6Gl%=a|Cz&8{?8=*yTSii zlylYyC&K>-2bKRv!2b)+QS)&Eu>Wn~|8pa)&yBPK{<B8{|MRj(s_{Q+R`#fw*`sD; zk4Dq8M^8IHdMZ+l|Dz{mk5>DCjKz7C|ABwg3)uh1m|PfRd|`~yg)xRW0q8l#;Nn<> z<)6AJ;2-`UJMQARu{q<$UL23cVgJuDpzsPH$7o!R3H(1k*JNC->9|}o4zB<({`3A1 z|5H=P!~c0R#^d{++*!Q;lm89i|2!*$eCr8$wg&k&6X5@R?EecX!T<RV2KkN#`OfTr z_5NSrX;|Pz{x9$~EWim6U{nxjR2XE4{l75SxG>nLFx03p%(!T&5&U1c%(#fZ|0yE> z8y8{!Uuj(QkxB7t<KmBvi$5{$+yBY`=rhye&E)@*FHMTKm==G{`#=1@-LzyUx67>b zdsCbMrTffE1^@rVCjj~1jQoGdyo|p8F)ux0Uiznb>0gBZvg791|1bS(j`9D}DeV6i zW$gb;5f+ysEiOe_l*=qGDcJwf<p1(M|0hi>$NtYB|B(OFCSA^$bUE`)|4(B7PrjTp z`AY6&0srtnjsJy{uk`u9bjsDTDOby<-~_<OKdSNn%G7JugcE?D*QQ>%HWmJ-u1_t$ zj{P70pH_ww;QF*uoB-FSm0X{O{lDbKw4xi+QQ?j0@IUZhaAP|5|GXR1$^SQ}=iHoe zfx`(v{=Yc``#<nc{;!~b|33fY1W2lwnOLFr|E*a9{-bZrMr!{9|5W7d*%3GaZqH`_ z&pxg8Kk$$Kxuf#`QNsTm`2Ps-&mFFu`&;E)!T-Nj&fCxZQYrX<9_|0+|9OJ{cio#O z_<!d;s~z_&x0C;|{{#P4Tkl(LCHz}`dCyAie=GLC^~U>F8}3`Le?b0U_rQAX1M4*p ztl|HUA6NtbXw^e&_<sfb|B%Q3hc<owf9H`c`Tvpa(ucN79#Nqj``-@!M`FmIg8c3H z;~#wg1OLzWd1B{7&-vcu|M{Lz=6i7PzmOZ@pH2XmrwjPYAG!h@pDl2Bwou6a*+P!+ zzv$UQj{MIF_$U7_;uB!;a~IBa@pIS3FWeTta9{kwWAO`5WdFizF`WRwzps52p8ody z3c$W9(4k7~P$jXi!dF1S@V`Sft^j%q;84BPp_=^fpz=TP|Gq;FodAy2s~l_4M~*eC z1^+wMtcCxbYCd(URr%k!hWzhTyBYp>uKmhc?SCiszjNIV_}{s1moxj{nf>ov_k&CQ zkIr>JyVU>UQh&gu{#Td!L+t;<uJwPoP-_1-2>$<v{eQ}>;S3iJ{{#PS4KmjTIsEV5 z5bf3&<JK7K-Wc!B{&#OoMsDQ)bOisqH)VM=o^x-?c5k}i(R301cc)hXy#F^BdNdb# zG?yU8|0R#+a?j=~9Q=RXll*@Z{`X}6d$rv0YN-_b@7Z$S6aH^~=!N~i72`kc|APO$ z=mZe(5C7K)Cjjv8{Sv|dsL7iG{>lH|FI&A|0{<_4U%m8cMX!(w|7!pHG`{j_c;$=g zQJb&Y|2P5ss@i<fi#D79@IUpm&6oY}NB+nDPyY84_J6hi{cp9y|Nb}I{cg1TUvKxj z*6x3`-Tz7l{2w6rzl=|S;*Nl#4*1_+@IOv~oDP5Te`f&vpVblghW`UnI|EZX1Cu-H z1W@_ED<Gybfc)PXB<~88k^h4tx`M*Hg3fjYp6&`{{|CbV|8@oa-4%2k`#=2OCH}LU z@c#$-U;JBl5c@yqK(`p}?+*I8JLpI9f6%^e^8X(8|E_MycRiAw-QpeOfAKez<ZDX2 zrAP8r5Bx9Q+#~*+{4e>e2mY6C?8W#`{$JN4S=TE8{@3(MKJJx3{)~Ugs$S`;UJ2u$ zPJj<o{+9^&C;#_K-|h`wM&JKPm;5IUQ=I_PP&xsqH&ie1UMl?$^-&)``u-yPz3*T9 z{*&cT{_p#tLASsg|EU50QzDHhO^*F91OD0nGCd8dAK_m%P$V13{vS*y0Ps%@BmB$I zNDbL2k!-YT|0n+&aE2l|`(JJ<lADX<79u(PKbf1NDW4{iPbd7#f&bZ>3f}(}?0?{2 zVW+78{ugR07WMgGOW~}kaM4t_X(|N&duu6uw3NPDaz8C)fR+;e7nA>$!CJ~tEoGRN za*3AmZ7t<8E#<pf%J;RE*#B2(WBiX^r5*i|b~OC|3FChq`9FGtcJxM_=uO(upX)?_ zp%eX;ZuAzN=&d?2?Ee_}e+S_|W*4_xCuWaMOrQUM){Xf^7vn$tAA6AdO*i(iZtNf2 zpSrPs>BW-&`^EmPM`8Rwp%-^jFYc6H+-beIKK}#%LNdKLVgFb5i%0DL_?Uk2v0Plg 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�{-*p1h_xXay@rnp5<EhKVAXc4gBX@ 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%0DA&} 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%0AF=<V!bZ7`xc^6p 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%0ANS|4+2<e?sg1@B9BNp~dv{|Ioe_ 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∹+?5uoyamk-6S^$#Lg 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 PqOWBT((4`I%MlGw4RxyNwa1lNR8K2|eJu2`u<j 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�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­U*XT> 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 T2cA3d+=1r~{MYZmUw{1vr2QLC literal 0 HcmV?d00001 diff --git a/glBitmap.pas b/glBitmap.pas index 4986ed4..5f18496 100644 --- a/glBitmap.pas +++ b/glBitmap.pas @@ -1,237 +1,49 @@ -{*********************************************************** -glBitmap by Steffen Xonna aka Lossy eX (2003-2008) -http://www.opengl24.de/index.php?cat=header&file=glbitmap - -modified by Delphi OpenGL Community (http://delphigl.com/) (2013) - ------------------------------------------------------------- -The contents of this file are used with permission, subject to -the Mozilla Public License Version 1.1 (the "License"); you may -not use this file except in compliance with the License. You may -obtain a copy of the License at -http://www.mozilla.org/MPL/MPL-1.1.html ------------------------------------------------------------- -Version 3.0.1 ------------------------------------------------------------- -History -20-11-2013 -- refactoring of the complete library -21-03-2010 -- The define GLB_DELPHI dosn't check versions anymore. If you say you are using delphi - then it's your problem if that isn't true. This prevents the unit for incompatibility - with newer versions of Delphi. -- Problems with D2009+ resolved (Thanks noeska and all i forgot) -- GetPixel isn't set if you are loading textures inside the constructor (Thanks Wilson) -10-08-2008 -- AddAlphaFromglBitmap used the custom pointer instead the imagedatapointer (Thanks Wilson) -- Additional Datapointer for functioninterface now has the name CustomData -24-07-2008 -- AssigneAlphaToBitmap overwrites his own palette (Thanks Wilson) -- If you load an texture from an file the property Filename will be set to the name of the file -- Three new properties to attach custom data to the Texture objects - - CustomName (free for use string) - - CustomNameW (free for use widestring) - - CustomDataPointer (free for use pointer to attach other objects or complex structures) -27-05-2008 -- RLE TGAs loaded much faster -26-05-2008 -- fixed some problem with reading RLE TGAs. -21-05-2008 -- function clone now only copys data if it's assigned and now it also copies the ID -- it seems that lazarus dont like comments in comments. -01-05-2008 -- It's possible to set the id of the texture -- define GLB_NO_NATIVE_GL deactivated by default -27-04-2008 -- Now supports the following libraries - - SDL and SDL_image - - libPNG - - libJPEG -- Linux compatibillity via free pascal compatibility (delphi sources optional) -- BMPs now loaded manuel -- Large restructuring -- Property DataPtr now has the name Data -- Functions are more flexible between RGB(A) and BGR(A). RGB can be saved as Bitmap and will be saved as BGR -- Unused Depth removed -- Function FreeData to freeing image data added -24-10-2007 -- ImageID flag of TGAs was ignored. (Thanks Zwoetzen) -15-11-2006 -- Function SetBorderColor implemented (only used by opengl if wrap is set to GL_CLAMP_TO_BORDER) -- Function AddAlphaFromValue implemented to use an fixed Value as Alphachannel -- Function ReadOpenGLExtension is now only intern -29-06-2006 -- pngimage now disabled by default like all other versions. -26-06-2006 -- Setting up an anisotropic filter of 0 isnt allowed by nvidia (Thanks Ogridi) -22-06-2006 -- Fixed some Problem with Delphi 5 -- Now uses the newest version of pngimage. Makes saving pngs much easier. -22-03-2006 -- Property IsCompressed and Size removed. Not really supported by Spec (Thanks Ogridi) -09-03-2006 -- Internal Format ifDepth8 added -- function GrabScreen now supports all uncompressed formats -31-01-2006 -- AddAlphaFromglBitmap implemented -29-12-2005 -- LoadFromResource and LoadFromResourceId now needs an Instance and an ResourceType (for ID) -28-12-2005 -- Width, Height and Depth internal changed to TglBitmapPixelPosition. - property Width, Height, Depth are still existing and new property Dimension are avail -11-12-2005 -- Added native OpenGL Support. Breaking the dglOpenGL "barrier". -19-10-2005 -- Added function GrabScreen to class TglBitmap2D -18-10-2005 -- Added support to Save images -- Added function Clone to Clone Instance -11-10-2005 -- Functions now works with Cardinals for each channel. Up to 32 Bits per channel. - Usefull for Future -- Several speed optimizations -09-10-2005 -- Internal structure change. Loading of TGA, PNG and DDS improved. - Data, format and size will now set directly with SetDataPtr. -- AddFunc now works with all Types of Images and Formats -- Some Funtions moved to Baseclass TglBitmap -06-10-2005 -- Added Support to decompress DXT3 and DXT5 compressed Images. -- Added Mapping to convert data from one format into an other. -05-10-2005 -- Added method ConvertTo in Class TglBitmap2D. Method allows to convert every - supported Input format (supported by GetPixel) into any uncompresed Format -- Added Support to decompress DXT1 compressed Images. -- SwapColors replaced by ConvertTo -04-10-2005 -- Added Support for compressed DDSs -- Added new internal formats (DXT1, DXT3, DXT5) -29-09-2005 -- Parameter Components renamed to InternalFormat -23-09-2005 -- Some AllocMem replaced with GetMem (little speed change) -- better exception handling. Better protection from memory leaks. -22-09-2005 -- Added support for Direct Draw Surfaces (.DDS) (uncompressed images only) -- Added new internal formats (RGB8, RGBA8, RGBA4, RGB5A1, RGB10A2, R5G6B5) -07-09-2005 -- Added support for Grayscale textures -- Added internal formats (Alpha, Luminance, LuminanceAlpha, BGR8, BGRA8) -10-07-2005 -- Added support for GL_VERSION_2_0 -- Added support for GL_EXT_texture_filter_anisotropic -04-07-2005 -- Function FillWithColor fills the Image with one Color -- Function LoadNormalMap added -30-06-2005 -- ToNormalMap allows to Create an NormalMap from the Alphachannel -- ToNormalMap now supports Sobel (nmSobel) function. -29-06-2005 -- support for RLE Compressed RGB TGAs added -28-06-2005 -- Class TglBitmapNormalMap added to support Normalmap generation -- Added function ToNormalMap in class TglBitmap2D to genereate normal maps from textures. - 3 Filters are supported. (4 Samples, 3x3 and 5x5) -16-06-2005 -- Method LoadCubeMapClass removed -- LoadCubeMap returnvalue is now the Texture paramter. Such as LoadTextures -- virtual abstract method GenTexture in class TglBitmap now is protected -12-06-2005 -- now support DescriptionFlag in LoadTga. Allows vertical flipped images to be loaded as normal -10-06-2005 -- little enhancement for IsPowerOfTwo -- TglBitmap1D.GenTexture now tests NPOT Textures -06-06-2005 -- some little name changes. All properties or function with Texture in name are - now without texture in name. We have allways texture so we dosn't name it. -03-06-2005 -- GenTexture now tests if texture is NPOT and NPOT-Texture are supported or - TextureTarget is GL_TEXTURE_RECTANGLE. Else it raised an exception. -02-06-2005 -- added support for GL_ARB_texture_rectangle, GL_EXT_texture_rectangle and GL_NV_texture_rectangle -25-04-2005 -- Function Unbind added -- call of SetFilter or SetTextureWrap if TextureID exists results in setting properties to opengl texture. -21-04-2005 -- class TglBitmapCubeMap added (allows to Create Cubemaps) -29-03-2005 -- Added Support for PNG Images. (http://pngdelphi.sourceforge.net/) - To Enable png's use the define pngimage -22-03-2005 -- New Functioninterface added -- Function GetPixel added -27-11-2004 -- Property BuildMipMaps renamed to MipMap -21-11-2004 -- property Name removed. -- BuildMipMaps is now a set of 3 values. None, GluBuildMipmaps and SGIS_generate_mipmap -22-05-2004 -- property name added. Only used in glForms! -26-11-2003 -- property FreeDataAfterGenTexture is now available as default (default = true) -- BuildMipmaps now implemented in TglBitmap1D (i've forgotten it) -- function MoveMemory replaced with function Move (little speed change) -- several calculations stored in variables (little speed change) -29-09-2003 -- property BuildMipsMaps added (default = true) - if BuildMipMaps isn't set GenTextures uses glTexImage[12]D else it use gluBuild[12]dMipmaps -- property FreeDataAfterGenTexture added (default = true) - if FreeDataAfterGenTexture is set the texturedata were deleted after the texture was generated. -- parameter DisableOtherTextureUnits of Bind removed -- parameter FreeDataAfterGeneration of GenTextures removed -12-09-2003 -- TglBitmap dosn't delete data if class was destroyed (fixed) -09-09-2003 -- Bind now enables TextureUnits (by params) -- GenTextures can leave data (by param) -- LoadTextures now optimal -03-09-2003 -- Performance optimization in AddFunc -- procedure Bind moved to subclasses -- Added new Class TglBitmap1D to support real OpenGL 1D Textures -19-08-2003 -- Texturefilter and texturewrap now also as defaults - Minfilter = GL_LINEAR_MIPMAP_LINEAR - Magfilter = GL_LINEAR - Wrap(str) = GL_CLAMP_TO_EDGE -- Added new format tfCompressed to create a compressed texture. -- propertys IsCompressed, TextureSize and IsResident added - IsCompressed and TextureSize only contains data from level 0 -18-08-2003 -- Added function AddFunc to add PerPixelEffects to Image -- LoadFromFunc now based on AddFunc -- Invert now based on AddFunc -- SwapColors now based on AddFunc -16-08-2003 -- Added function FlipHorz -15-08-2003 -- Added function LaodFromFunc to create images with function -- Added function FlipVert -- Added internal format RGB(A) if GL_EXT_bgra or OpenGL 1.2 isn't supported -29-07-2003 -- Added Alphafunctions to calculate alpha per function -- Added Alpha from ColorKey using alphafunctions -28-07-2003 -- First full functionally Version of glBitmap -- Support for 24Bit and 32Bit TGA Pictures added -25-07-2003 -- begin of programming -***********************************************************} +{ glBitmap by Steffen Xonna aka Lossy eX (2003-2008) + http://www.opengl24.de/index.php?cat=header&file=glbitmap + + modified by Delphi OpenGL Community (http://delphigl.com/) (2013) + + The contents of this file are used with permission, subject to + the Mozilla Public License Version 1.1 (the "License"); you may + not use this file except in compliance with the License. You may + obtain a copy of the License at + http://www.mozilla.org/MPL/MPL-1.1.html + + The glBitmap is a Delphi/FPC unit that contains several wrapper classes + to manage OpenGL texture objects. Below you can find a list of the main + functionality of this classes: + - load texture data from file (e.g. BMP, TGA, DDS, PNG, JPEG, ...) + - load texture data from several other image objects (e.g. TBitmap, TLazIntfImage, SDL Surface) + - save texture data to file (e.g. BMP, TGA, DDS, PNG, JPEG, ...) + - save texture data to several other image objects (e.g. TBitmap, TLazIntfImage, SDL Surface) + - support for many texture formats (e.g. RGB8, BGR8, RGBA8, BGRA8, ...) + - manage texture properties (e.g. Filter, Clamp, Mipmap, ...) + - upload texture data to video card + - download texture data from video card + - manipulate texture data (e.g. add alpha, remove alpha, convert to other format, switch RGB, ...) } + unit glBitmap; // Please uncomment the defines below to configure the glBitmap to your preferences. // If you have configured the unit you can uncomment the warning above. -{.$MESSAGE error 'Hey. I''m the glBitmap.pas and i need to be configured. My master tell me your preferences! ;)'} +{$MESSAGE error 'Hey. I''m the glBitmap.pas and i need to be configured. My master tell me your preferences! ;)'} ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Preferences /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -// enable OpenGL ES support +// enable support for OpenGL ES 1.1 {.$DEFINE OPENGL_ES_1_1} + +// enable support for OpenGL ES 2.0 {.$DEFINE OPENGL_ES_2_0} + +// enable support for OpenGL ES 3.0 {.$DEFINE OPENGL_ES_3_0} + +// enable support for all OpenGL ES extensions {.$DEFINE OPENGL_ES_EXT} + // activate to enable build-in OpenGL support with statically linked methods // use dglOpenGL.pas if not enabled {.$DEFINE GLB_NATIVE_OGL_STATIC} @@ -791,14 +603,6 @@ var {$ENDIF} type -//////////////////////////////////////////////////////////////////////////////////////////////////// -// the name of formats is composed of the following constituents: -// - multiple chanals: -// - channel (e.g. R, G, B, A or Alpha, Luminance or X (reserved) -// - width of the chanel in bit (4, 8, 16, ...) -// - data type (e.g. ub, us, ui) -// - number of data types - {$IFNDEF fpc} QWord = System.UInt64; PQWord = ^QWord; @@ -807,93 +611,104 @@ type PtrUInt = DWord; {$ENDIF} + + { type that describes the format of the data stored in a texture. + the name of formats is composed of the following constituents: + - multiple channels: + - channel (e.g. R, G, B, A or Alpha, Luminance or X (reserved)) + - width of the chanel in bit (4, 8, 16, ...) + - data type (e.g. ub, us, ui) + - number of elements of data types } TglBitmapFormat = ( - tfEmpty = 0, //must be smallest value! - - tfAlpha4ub1, // 1 x unsigned byte - tfAlpha8ub1, // 1 x unsigned byte - tfAlpha16us1, // 1 x unsigned short - - tfLuminance4ub1, // 1 x unsigned byte - tfLuminance8ub1, // 1 x unsigned byte - tfLuminance16us1, // 1 x unsigned short - - tfLuminance4Alpha4ub2, // 1 x unsigned byte (lum), 1 x unsigned byte (alpha) - tfLuminance6Alpha2ub2, // 1 x unsigned byte (lum), 1 x unsigned byte (alpha) - tfLuminance8Alpha8ub2, // 1 x unsigned byte (lum), 1 x unsigned byte (alpha) - tfLuminance12Alpha4us2, // 1 x unsigned short (lum), 1 x unsigned short (alpha) - tfLuminance16Alpha16us2, // 1 x unsigned short (lum), 1 x unsigned short (alpha) - - tfR3G3B2ub1, // 1 x unsigned byte (3bit red, 3bit green, 2bit blue) - tfRGBX4us1, // 1 x unsigned short (4bit red, 4bit green, 4bit blue, 4bit reserverd) - tfXRGB4us1, // 1 x unsigned short (4bit reserved, 4bit red, 4bit green, 4bit blue) - tfR5G6B5us1, // 1 x unsigned short (5bit red, 6bit green, 5bit blue) - tfRGB5X1us1, // 1 x unsigned short (5bit red, 5bit green, 5bit blue, 1bit reserved) - tfX1RGB5us1, // 1 x unsigned short (1bit reserved, 5bit red, 5bit green, 5bit blue) - tfRGB8ub3, // 1 x unsigned byte (red), 1 x unsigned byte (green), 1 x unsigned byte (blue) - tfRGBX8ui1, // 1 x unsigned int (8bit red, 8bit green, 8bit blue, 8bit reserved) - tfXRGB8ui1, // 1 x unsigned int (8bit reserved, 8bit red, 8bit green, 8bit blue) - tfRGB10X2ui1, // 1 x unsigned int (10bit red, 10bit green, 10bit blue, 2bit reserved) - tfX2RGB10ui1, // 1 x unsigned int (2bit reserved, 10bit red, 10bit green, 10bit blue) - tfRGB16us3, // 1 x unsigned short (red), 1 x unsigned short (green), 1 x unsigned short (blue) - - tfRGBA4us1, // 1 x unsigned short (4bit red, 4bit green, 4bit blue, 4bit alpha) - tfARGB4us1, // 1 x unsigned short (4bit alpha, 4bit red, 4bit green, 4bit blue) - tfRGB5A1us1, // 1 x unsigned short (5bit red, 5bit green, 5bit blue, 1bit alpha) - tfA1RGB5us1, // 1 x unsigned short (1bit alpha, 5bit red, 5bit green, 5bit blue) - tfRGBA8ui1, // 1 x unsigned int (8bit red, 8bit green, 8bit blue, 8 bit alpha) - tfARGB8ui1, // 1 x unsigned int (8 bit alpha, 8bit red, 8bit green, 8bit blue) - tfRGBA8ub4, // 1 x unsigned byte (red), 1 x unsigned byte (green), 1 x unsigned byte (blue), 1 x unsigned byte (alpha) - tfRGB10A2ui1, // 1 x unsigned int (10bit red, 10bit green, 10bit blue, 2bit alpha) - tfA2RGB10ui1, // 1 x unsigned int (2bit alpha, 10bit red, 10bit green, 10bit blue) - tfRGBA16us4, // 1 x unsigned short (red), 1 x unsigned short (green), 1 x unsigned short (blue), 1 x unsigned short (alpha) - - tfBGRX4us1, // 1 x unsigned short (4bit blue, 4bit green, 4bit red, 4bit reserved) - tfXBGR4us1, // 1 x unsigned short (4bit reserved, 4bit blue, 4bit green, 4bit red) - tfB5G6R5us1, // 1 x unsigned short (5bit blue, 6bit green, 5bit red) - tfBGR5X1us1, // 1 x unsigned short (5bit blue, 5bit green, 5bit red, 1bit reserved) - tfX1BGR5us1, // 1 x unsigned short (1bit reserved, 5bit blue, 5bit green, 5bit red) - tfBGR8ub3, // 1 x unsigned byte (blue), 1 x unsigned byte (green), 1 x unsigned byte (red) - tfBGRX8ui1, // 1 x unsigned int (8bit blue, 8bit green, 8bit red, 8bit reserved) - tfXBGR8ui1, // 1 x unsigned int (8bit reserved, 8bit blue, 8bit green, 8bit red) - tfBGR10X2ui1, // 1 x unsigned int (10bit blue, 10bit green, 10bit red, 2bit reserved) - tfX2BGR10ui1, // 1 x unsigned int (2bit reserved, 10bit blue, 10bit green, 10bit red) - tfBGR16us3, // 1 x unsigned short (blue), 1 x unsigned short (green), 1 x unsigned short (red) - - tfBGRA4us1, // 1 x unsigned short (4bit blue, 4bit green, 4bit red, 4bit alpha) - tfABGR4us1, // 1 x unsigned short (4bit alpha, 4bit blue, 4bit green, 4bit red) - tfBGR5A1us1, // 1 x unsigned short (5bit blue, 5bit green, 5bit red, 1bit alpha) - tfA1BGR5us1, // 1 x unsigned short (1bit alpha, 5bit blue, 5bit green, 5bit red) - tfBGRA8ui1, // 1 x unsigned int (8bit blue, 8bit green, 8bit red, 8bit alpha) - tfABGR8ui1, // 1 x unsigned int (8bit alpha, 8bit blue, 8bit green, 8bit red) - tfBGRA8ub4, // 1 x unsigned byte (blue), 1 x unsigned byte (green), 1 x unsigned byte (red), 1 x unsigned byte (alpha) - tfBGR10A2ui1, // 1 x unsigned int (10bit blue, 10bit green, 10bit red, 2bit alpha) - tfA2BGR10ui1, // 1 x unsigned int (2bit alpha, 10bit blue, 10bit green, 10bit red) - tfBGRA16us4, // 1 x unsigned short (blue), 1 x unsigned short (green), 1 x unsigned short (red), 1 x unsigned short (alpha) - - tfDepth16us1, // 1 x unsigned short (depth) - tfDepth24ui1, // 1 x unsigned int (depth) - tfDepth32ui1, // 1 x unsigned int (depth) + tfEmpty = 0, + + tfAlpha4ub1, //< 1 x unsigned byte + tfAlpha8ub1, //< 1 x unsigned byte + tfAlpha16us1, //< 1 x unsigned short + + tfLuminance4ub1, //< 1 x unsigned byte + tfLuminance8ub1, //< 1 x unsigned byte + tfLuminance16us1, //< 1 x unsigned short + + tfLuminance4Alpha4ub2, //< 1 x unsigned byte (lum), 1 x unsigned byte (alpha) + tfLuminance6Alpha2ub2, //< 1 x unsigned byte (lum), 1 x unsigned byte (alpha) + tfLuminance8Alpha8ub2, //< 1 x unsigned byte (lum), 1 x unsigned byte (alpha) + tfLuminance12Alpha4us2, //< 1 x unsigned short (lum), 1 x unsigned short (alpha) + tfLuminance16Alpha16us2, //< 1 x unsigned short (lum), 1 x unsigned short (alpha) + + tfR3G3B2ub1, //< 1 x unsigned byte (3bit red, 3bit green, 2bit blue) + tfRGBX4us1, //< 1 x unsigned short (4bit red, 4bit green, 4bit blue, 4bit reserverd) + tfXRGB4us1, //< 1 x unsigned short (4bit reserved, 4bit red, 4bit green, 4bit blue) + tfR5G6B5us1, //< 1 x unsigned short (5bit red, 6bit green, 5bit blue) + tfRGB5X1us1, //< 1 x unsigned short (5bit red, 5bit green, 5bit blue, 1bit reserved) + tfX1RGB5us1, //< 1 x unsigned short (1bit reserved, 5bit red, 5bit green, 5bit blue) + tfRGB8ub3, //< 1 x unsigned byte (red), 1 x unsigned byte (green), 1 x unsigned byte (blue) + tfRGBX8ui1, //< 1 x unsigned int (8bit red, 8bit green, 8bit blue, 8bit reserved) + tfXRGB8ui1, //< 1 x unsigned int (8bit reserved, 8bit red, 8bit green, 8bit blue) + tfRGB10X2ui1, //< 1 x unsigned int (10bit red, 10bit green, 10bit blue, 2bit reserved) + tfX2RGB10ui1, //< 1 x unsigned int (2bit reserved, 10bit red, 10bit green, 10bit blue) + tfRGB16us3, //< 1 x unsigned short (red), 1 x unsigned short (green), 1 x unsigned short (blue) + + tfRGBA4us1, //< 1 x unsigned short (4bit red, 4bit green, 4bit blue, 4bit alpha) + tfARGB4us1, //< 1 x unsigned short (4bit alpha, 4bit red, 4bit green, 4bit blue) + tfRGB5A1us1, //< 1 x unsigned short (5bit red, 5bit green, 5bit blue, 1bit alpha) + tfA1RGB5us1, //< 1 x unsigned short (1bit alpha, 5bit red, 5bit green, 5bit blue) + tfRGBA8ui1, //< 1 x unsigned int (8bit red, 8bit green, 8bit blue, 8 bit alpha) + tfARGB8ui1, //< 1 x unsigned int (8 bit alpha, 8bit red, 8bit green, 8bit blue) + tfRGBA8ub4, //< 1 x unsigned byte (red), 1 x unsigned byte (green), 1 x unsigned byte (blue), 1 x unsigned byte (alpha) + tfRGB10A2ui1, //< 1 x unsigned int (10bit red, 10bit green, 10bit blue, 2bit alpha) + tfA2RGB10ui1, //< 1 x unsigned int (2bit alpha, 10bit red, 10bit green, 10bit blue) + tfRGBA16us4, //< 1 x unsigned short (red), 1 x unsigned short (green), 1 x unsigned short (blue), 1 x unsigned short (alpha) + + tfBGRX4us1, //< 1 x unsigned short (4bit blue, 4bit green, 4bit red, 4bit reserved) + tfXBGR4us1, //< 1 x unsigned short (4bit reserved, 4bit blue, 4bit green, 4bit red) + tfB5G6R5us1, //< 1 x unsigned short (5bit blue, 6bit green, 5bit red) + tfBGR5X1us1, //< 1 x unsigned short (5bit blue, 5bit green, 5bit red, 1bit reserved) + tfX1BGR5us1, //< 1 x unsigned short (1bit reserved, 5bit blue, 5bit green, 5bit red) + tfBGR8ub3, //< 1 x unsigned byte (blue), 1 x unsigned byte (green), 1 x unsigned byte (red) + tfBGRX8ui1, //< 1 x unsigned int (8bit blue, 8bit green, 8bit red, 8bit reserved) + tfXBGR8ui1, //< 1 x unsigned int (8bit reserved, 8bit blue, 8bit green, 8bit red) + tfBGR10X2ui1, //< 1 x unsigned int (10bit blue, 10bit green, 10bit red, 2bit reserved) + tfX2BGR10ui1, //< 1 x unsigned int (2bit reserved, 10bit blue, 10bit green, 10bit red) + tfBGR16us3, //< 1 x unsigned short (blue), 1 x unsigned short (green), 1 x unsigned short (red) + + tfBGRA4us1, //< 1 x unsigned short (4bit blue, 4bit green, 4bit red, 4bit alpha) + tfABGR4us1, //< 1 x unsigned short (4bit alpha, 4bit blue, 4bit green, 4bit red) + tfBGR5A1us1, //< 1 x unsigned short (5bit blue, 5bit green, 5bit red, 1bit alpha) + tfA1BGR5us1, //< 1 x unsigned short (1bit alpha, 5bit blue, 5bit green, 5bit red) + tfBGRA8ui1, //< 1 x unsigned int (8bit blue, 8bit green, 8bit red, 8bit alpha) + tfABGR8ui1, //< 1 x unsigned int (8bit alpha, 8bit blue, 8bit green, 8bit red) + tfBGRA8ub4, //< 1 x unsigned byte (blue), 1 x unsigned byte (green), 1 x unsigned byte (red), 1 x unsigned byte (alpha) + tfBGR10A2ui1, //< 1 x unsigned int (10bit blue, 10bit green, 10bit red, 2bit alpha) + tfA2BGR10ui1, //< 1 x unsigned int (2bit alpha, 10bit blue, 10bit green, 10bit red) + tfBGRA16us4, //< 1 x unsigned short (blue), 1 x unsigned short (green), 1 x unsigned short (red), 1 x unsigned short (alpha) + + tfDepth16us1, //< 1 x unsigned short (depth) + tfDepth24ui1, //< 1 x unsigned int (depth) + tfDepth32ui1, //< 1 x unsigned int (depth) tfS3tcDtx1RGBA, tfS3tcDtx3RGBA, tfS3tcDtx5RGBA ); + { type to define suitable file formats } TglBitmapFileType = ( - {$IFDEF GLB_SUPPORT_PNG_WRITE} ftPNG, {$ENDIF} - {$IFDEF GLB_SUPPORT_JPEG_WRITE}ftJPEG, {$ENDIF} - ftDDS, - ftTGA, - ftBMP, - ftRAW); + {$IFDEF GLB_SUPPORT_PNG_WRITE} ftPNG, {$ENDIF} //< Portable Network Graphic file (PNG) + {$IFDEF GLB_SUPPORT_JPEG_WRITE}ftJPEG, {$ENDIF} //< JPEG file + ftDDS, //< Direct Draw Surface file (DDS) + ftTGA, //< Targa Image File (TGA) + ftBMP, //< Windows Bitmap File (BMP) + ftRAW); //< glBitmap RAW file format TglBitmapFileTypes = set of TglBitmapFileType; - TglBitmapMipMap = ( - mmNone, - mmMipmap, - mmMipmapGlu); + { possible mipmap types } + TglBitmapMipMap = ( + mmNone, //< no mipmaps + mmMipmap, //< normal mipmaps + mmMipmapGlu); //< mipmaps generated with glu functions + { possible normal map functions } TglBitmapNormalMapFunc = ( nm4Samples, nmSobel, @@ -901,426 +716,874 @@ type nm5x5); //////////////////////////////////////////////////////////////////////////////////////////////////// - EglBitmap = class(Exception); - EglBitmapNotSupported = class(Exception); - EglBitmapSizeToLarge = class(EglBitmap); - EglBitmapNonPowerOfTwo = class(EglBitmap); - EglBitmapUnsupportedFormat = class(EglBitmap) + EglBitmap = class(Exception); //< glBitmap exception + EglBitmapNotSupported = class(Exception); //< exception for not supported functions + EglBitmapSizeToLarge = class(EglBitmap); //< exception for to large textures + EglBitmapNonPowerOfTwo = class(EglBitmap); //< exception for non power of two textures + EglBitmapUnsupportedFormat = class(EglBitmap) //< exception for unsupporetd formats public constructor Create(const aFormat: TglBitmapFormat); overload; constructor Create(const aMsg: String; const aFormat: TglBitmapFormat); overload; end; //////////////////////////////////////////////////////////////////////////////////////////////////// + { record that stores 4 unsigned integer values } TglBitmapRec4ui = packed record case Integer of 0: (r, g, b, a: Cardinal); 1: (arr: array[0..3] of Cardinal); end; + { record that stores 4 unsigned byte values } TglBitmapRec4ub = packed record case Integer of 0: (r, g, b, a: Byte); 1: (arr: array[0..3] of Byte); end; + { record that stores 4 unsigned long integer values } TglBitmapRec4ul = packed record case Integer of 0: (r, g, b, a: QWord); 1: (arr: array[0..3] of QWord); end; + { describes the properties of a given texture data format } TglBitmapFormatDescriptor = class(TObject) private // cached properties - fBytesPerPixel: Single; - fChannelCount: Integer; - fMask: TglBitmapRec4ul; - fRange: TglBitmapRec4ui; + fBytesPerPixel: Single; //< number of bytes for each pixel + fChannelCount: Integer; //< number of color channels + fMask: TglBitmapRec4ul; //< bitmask for each color channel + fRange: TglBitmapRec4ui; //< maximal value of each color channel + { @return @true if the format has a red color channel, @false otherwise } function GetHasRed: Boolean; + + { @return @true if the format has a green color channel, @false otherwise } function GetHasGreen: Boolean; + + { @return @true if the format has a blue color channel, @false otherwise } function GetHasBlue: Boolean; + + { @return @true if the format has a alpha color channel, @false otherwise } function GetHasAlpha: Boolean; + + { @return @true if the format has any color color channel, @false otherwise } function GetHasColor: Boolean; + + { @return @true if the format is a grayscale format, @false otherwise } function GetIsGrayscale: Boolean; protected - fFormat: TglBitmapFormat; - fWithAlpha: TglBitmapFormat; - fWithoutAlpha: TglBitmapFormat; - fOpenGLFormat: TglBitmapFormat; - fRGBInverted: TglBitmapFormat; - fUncompressed: TglBitmapFormat; + fFormat: TglBitmapFormat; //< format this descriptor belongs to + fWithAlpha: TglBitmapFormat; //< suitable format with alpha channel + fWithoutAlpha: TglBitmapFormat; //< suitable format without alpha channel + fOpenGLFormat: TglBitmapFormat; //< suitable format that is supported by OpenGL + fRGBInverted: TglBitmapFormat; //< suitable format with inverted RGB channels + fUncompressed: TglBitmapFormat; //< suitable format with uncompressed data - fBitsPerPixel: Integer; - fIsCompressed: Boolean; + fBitsPerPixel: Integer; //< number of bits per pixel + fIsCompressed: Boolean; //< @true if the format is compressed, @false otherwise - fPrecision: TglBitmapRec4ub; - fShift: TglBitmapRec4ub; + fPrecision: TglBitmapRec4ub; //< number of bits for each color channel + fShift: TglBitmapRec4ub; //< bit offset for each color channel - fglFormat: GLenum; - fglInternalFormat: GLenum; - fglDataFormat: GLenum; + fglFormat: GLenum; //< OpenGL format enum (e.g. GL_RGB) + fglInternalFormat: GLenum; //< OpenGL internal format enum (e.g. GL_RGB8) + fglDataFormat: GLenum; //< OpenGL data format enum (e.g. GL_UNSIGNED_BYTE) + { set values for this format descriptor } procedure SetValues; virtual; + + { calculate cached values } procedure CalcValues; public - property Format: TglBitmapFormat read fFormat; - property ChannelCount: Integer read fChannelCount; - property IsCompressed: Boolean read fIsCompressed; - property BitsPerPixel: Integer read fBitsPerPixel; - property BytesPerPixel: Single read fBytesPerPixel; - - property Precision: TglBitmapRec4ub read fPrecision; - property Shift: TglBitmapRec4ub read fShift; - property Range: TglBitmapRec4ui read fRange; - property Mask: TglBitmapRec4ul read fMask; - - property RGBInverted: TglBitmapFormat read fRGBInverted; - property WithAlpha: TglBitmapFormat read fWithAlpha; - property WithoutAlpha: TglBitmapFormat read fWithAlpha; - property OpenGLFormat: TglBitmapFormat read fOpenGLFormat; - property Uncompressed: TglBitmapFormat read fUncompressed; - - property glFormat: GLenum read fglFormat; - property glInternalFormat: GLenum read fglInternalFormat; - property glDataFormat: GLenum read fglDataFormat; - - property HasRed: Boolean read GetHasRed; - property HasGreen: Boolean read GetHasGreen; - property HasBlue: Boolean read GetHasBlue; - property HasAlpha: Boolean read GetHasAlpha; - property HasColor: Boolean read GetHasColor; - property IsGrayscale: Boolean read GetIsGrayscale; - + property Format: TglBitmapFormat read fFormat; //< format this descriptor belongs to + property ChannelCount: Integer read fChannelCount; //< number of color channels + property IsCompressed: Boolean read fIsCompressed; //< @true if the format is compressed, @false otherwise + property BitsPerPixel: Integer read fBitsPerPixel; //< number of bytes per pixel + property BytesPerPixel: Single read fBytesPerPixel; //< number of bits per pixel + + property Precision: TglBitmapRec4ub read fPrecision; //< number of bits for each color channel + property Shift: TglBitmapRec4ub read fShift; //< bit offset for each color channel + property Range: TglBitmapRec4ui read fRange; //< maximal value of each color channel + property Mask: TglBitmapRec4ul read fMask; //< bitmask for each color channel + + property RGBInverted: TglBitmapFormat read fRGBInverted; //< suitable format with inverted RGB channels + property WithAlpha: TglBitmapFormat read fWithAlpha; //< suitable format with alpha channel + property WithoutAlpha: TglBitmapFormat read fWithAlpha; //< suitable format without alpha channel + property OpenGLFormat: TglBitmapFormat read fOpenGLFormat; //< suitable format that is supported by OpenGL + property Uncompressed: TglBitmapFormat read fUncompressed; //< suitable format with uncompressed data + + property glFormat: GLenum read fglFormat; //< OpenGL format enum (e.g. GL_RGB) + property glInternalFormat: GLenum read fglInternalFormat; //< OpenGL internal format enum (e.g. GL_RGB8) + property glDataFormat: GLenum read fglDataFormat; //< OpenGL data format enum (e.g. GL_UNSIGNED_BYTE) + + property HasRed: Boolean read GetHasRed; //< @true if the format has a red color channel, @false otherwise + property HasGreen: Boolean read GetHasGreen; //< @true if the format has a green color channel, @false otherwise + property HasBlue: Boolean read GetHasBlue; //< @true if the format has a blue color channel, @false otherwise + property HasAlpha: Boolean read GetHasAlpha; //< @true if the format has a alpha color channel, @false otherwise + property HasColor: Boolean read GetHasColor; //< @true if the format has any color color channel, @false otherwise + property IsGrayscale: Boolean read GetIsGrayscale; //< @true if the format is a grayscale format, @false otherwise + + { constructor } constructor Create; public + { get the format descriptor by a given OpenGL internal format + @param aInternalFormat OpenGL internal format to get format descriptor for + @returns suitable format descriptor or tfEmpty-Descriptor } class function GetByFormat(const aInternalFormat: GLenum): TglBitmapFormatDescriptor; end; //////////////////////////////////////////////////////////////////////////////////////////////////// + { structure to store pixel data in } TglBitmapPixelData = packed record - Data: TglBitmapRec4ui; - Range: TglBitmapRec4ui; - Format: TglBitmapFormat; + Data: TglBitmapRec4ui; //< color data for each color channel + Range: TglBitmapRec4ui; //< maximal color value for each channel + Format: TglBitmapFormat; //< format of the pixel end; PglBitmapPixelData = ^TglBitmapPixelData; - TglBitmapPixelPositionFields = set of (ffX, ffY); - TglBitmapPixelPosition = record - Fields : TglBitmapPixelPositionFields; - X : Word; - Y : Word; + TglBitmapSizeFields = set of (ffX, ffY); + TglBitmapSize = packed record + Fields: TglBitmapSizeFields; + X: Word; + Y: Word; end; + TglBitmapPixelPosition = TglBitmapSize; //////////////////////////////////////////////////////////////////////////////////////////////////// TglBitmap = class; + + { structure to store data for converting in } TglBitmapFunctionRec = record - Sender: TglBitmap; - Size: TglBitmapPixelPosition; - Position: TglBitmapPixelPosition; - Source: TglBitmapPixelData; - Dest: TglBitmapPixelData; - Args: Pointer; + Sender: TglBitmap; //< texture object that stores the data to convert + Size: TglBitmapSize; //< size of the texture + Position: TglBitmapPixelPosition; //< position of the currently pixel + Source: TglBitmapPixelData; //< pixel data of the current pixel + Dest: TglBitmapPixelData; //< new data of the pixel (must be filled in) + Args: Pointer; //< user defined args that was passed to the convert function end; + + { callback to use for converting texture data } TglBitmapFunction = procedure(var FuncRec: TglBitmapFunctionRec); ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + { base class for all glBitmap classes. used to manage OpenGL texture objects + and to load, save and manipulate texture data } TglBitmap = class private + { @returns format descriptor that describes the format of the stored data } function GetFormatDesc: TglBitmapFormatDescriptor; protected - fID: GLuint; - fTarget: GLuint; - fAnisotropic: Integer; - fDeleteTextureOnFree: Boolean; - fFreeDataOnDestroy: Boolean; - fFreeDataAfterGenTexture: Boolean; - fData: PByte; + fID: GLuint; //< name of the OpenGL texture object + fTarget: GLuint; //< texture target (e.g. GL_TEXTURE_2D) + fAnisotropic: Integer; //< anisotropic level + fDeleteTextureOnFree: Boolean; //< delete OpenGL texture object when this object is destroyed + fFreeDataOnDestroy: Boolean; //< free stored data when this object is destroyed + fFreeDataAfterGenTexture: Boolean; //< free stored data after data was uploaded to video card + fData: PByte; //< data of this texture {$IFNDEF OPENGL_ES} - fIsResident: GLboolean; + fIsResident: GLboolean; //< @true if OpenGL texture object has data, @false otherwise {$ENDIF} - fBorderColor: array[0..3] of Single; + fBorderColor: array[0..3] of Single; //< color of the texture border - fDimension: TglBitmapPixelPosition; - fMipMap: TglBitmapMipMap; - fFormat: TglBitmapFormat; + fDimension: TglBitmapSize; //< size of this texture + fMipMap: TglBitmapMipMap; //< mipmap type + fFormat: TglBitmapFormat; //< format the texture data is stored in // Mapping - fPixelSize: Integer; - fRowSize: Integer; + fPixelSize: Integer; //< size of one pixel (in byte) + fRowSize: Integer; //< size of one pixel row (in byte) // Filtering - fFilterMin: GLenum; - fFilterMag: GLenum; + fFilterMin: GLenum; //< min filter to apply to the texture + fFilterMag: GLenum; //< mag filter to apply to the texture // TexturWarp - fWrapS: GLenum; - fWrapT: GLenum; - fWrapR: GLenum; + fWrapS: GLenum; //< texture wrapping for x axis + fWrapT: GLenum; //< texture wrapping for y axis + fWrapR: GLenum; //< texture wrapping for z axis {$IF NOT DEFINED(OPENGL_ES) OR DEFINED(OPENGL_ES_3_0)} //Swizzle - fSwizzle: array[0..3] of GLenum; + fSwizzle: array[0..3] of GLenum; //< color channel swizzle {$IFEND} // CustomData - fFilename: String; - fCustomName: String; - fCustomNameW: WideString; - fCustomData: Pointer; + fFilename: String; //< filename the texture was load from + fCustomName: String; //< user defined name + fCustomNameW: WideString; //< user defined name + fCustomData: Pointer; //< user defined data - //Getter + protected + { @returns the actual width of the texture } function GetWidth: Integer; virtual; + + { @returns the actual height of the texture } function GetHeight: Integer; virtual; + { @returns the width of the texture or 1 if the width is zero } function GetFileWidth: Integer; virtual; + + { @returns the height of the texture or 1 if the height is zero } function GetFileHeight: Integer; virtual; - //Setter + protected + { set a new value for fCustomData } procedure SetCustomData(const aValue: Pointer); + + { set a new value for fCustomName } procedure SetCustomName(const aValue: String); + + { set a new value for fCustomNameW } procedure SetCustomNameW(const aValue: WideString); + + { set new value for fFreeDataOnDestroy } procedure SetFreeDataOnDestroy(const aValue: Boolean); + + { set new value for fDeleteTextureOnFree } procedure SetDeleteTextureOnFree(const aValue: Boolean); + + { set new value for the data format. only possible if new format has the same pixel size. + if you want to convert the texture data, see ConvertTo function } procedure SetFormat(const aValue: TglBitmapFormat); + + { set new value for fFreeDataAfterGenTexture } procedure SetFreeDataAfterGenTexture(const aValue: Boolean); + + { set name of OpenGL texture object } procedure SetID(const aValue: Cardinal); + + { set new value for fMipMap } procedure SetMipMap(const aValue: TglBitmapMipMap); + + { set new value for target } procedure SetTarget(const aValue: Cardinal); + + { set new value for fAnisotrophic } procedure SetAnisotropic(const aValue: Integer); + protected + { create OpenGL texture object (delete exisiting object if exists) } procedure CreateID; + + { setup texture parameters } procedure SetupParameters({$IFNDEF OPENGL_ES}out aBuildWithGlu: Boolean{$ENDIF}); + + { set data pointer of texture data + @param aData pointer to new texture data (be carefull, aData could be freed by this function) + @param aFormat format of the data stored at aData + @param aWidth width of the texture data + @param aHeight height of the texture data } procedure SetDataPointer(var aData: PByte; const aFormat: TglBitmapFormat; - const aWidth: Integer = -1; const aHeight: Integer = -1); virtual; //be careful, aData could be freed by this method + const aWidth: Integer = -1; const aHeight: Integer = -1); virtual; + + { generate texture (upload texture data to video card) + @param aTestTextureSize test texture size before uploading and raise exception if something is wrong } procedure GenTexture(const aTestTextureSize: Boolean = true); virtual; abstract; + { flip texture horizontal + @returns @true in success, @false otherwise } function FlipHorz: Boolean; virtual; + + { flip texture vertical + @returns @true in success, @false otherwise } function FlipVert: Boolean; virtual; - property Width: Integer read GetWidth; - property Height: Integer read GetHeight; + protected + property Width: Integer read GetWidth; //< the actual width of the texture + property Height: Integer read GetHeight; //< the actual height of the texture - property FileWidth: Integer read GetFileWidth; - property FileHeight: Integer read GetFileHeight; + property FileWidth: Integer read GetFileWidth; //< the width of the texture or 1 if the width is zero + property FileHeight: Integer read GetFileHeight; //< the height of the texture or 1 if the height is zero public - //Properties - property ID: Cardinal read fID write SetID; - property Target: Cardinal read fTarget write SetTarget; - property Format: TglBitmapFormat read fFormat write SetFormat; - property MipMap: TglBitmapMipMap read fMipMap write SetMipMap; - property Anisotropic: Integer read fAnisotropic write SetAnisotropic; - - property FormatDesc: TglBitmapFormatDescriptor read GetFormatDesc; - - property Filename: String read fFilename; - property CustomName: String read fCustomName write SetCustomName; - property CustomNameW: WideString read fCustomNameW write SetCustomNameW; - property CustomData: Pointer read fCustomData write SetCustomData; - - property DeleteTextureOnFree: Boolean read fDeleteTextureOnFree write SetDeleteTextureOnFree; - property FreeDataOnDestroy: Boolean read fFreeDataOnDestroy write SetFreeDataOnDestroy; - property FreeDataAfterGenTexture: Boolean read fFreeDataAfterGenTexture write SetFreeDataAfterGenTexture; - - property Dimension: TglBitmapPixelPosition read fDimension; - property Data: PByte read fData; + property ID: Cardinal read fID write SetID; //< name of the OpenGL texture object + property Target: Cardinal read fTarget write SetTarget; //< texture target (e.g. GL_TEXTURE_2D) + property Format: TglBitmapFormat read fFormat write SetFormat; //< format the texture data is stored in + property MipMap: TglBitmapMipMap read fMipMap write SetMipMap; //< mipmap type + property Anisotropic: Integer read fAnisotropic write SetAnisotropic; //< anisotropic level + + property FormatDesc: TglBitmapFormatDescriptor read GetFormatDesc; //< format descriptor that describes the format of the stored data + + property Filename: String read fFilename; //< filename the texture was load from + property CustomName: String read fCustomName write SetCustomName; //< user defined name (use at will) + property CustomNameW: WideString read fCustomNameW write SetCustomNameW; //< user defined name (as WideString; use at will) + property CustomData: Pointer read fCustomData write SetCustomData; //< user defined data (use at will) + + property DeleteTextureOnFree: Boolean read fDeleteTextureOnFree write SetDeleteTextureOnFree; //< delete texture object when this object is destroyed + property FreeDataOnDestroy: Boolean read fFreeDataOnDestroy write SetFreeDataOnDestroy; //< free stored data when this object is destroyed + property FreeDataAfterGenTexture: Boolean read fFreeDataAfterGenTexture write SetFreeDataAfterGenTexture; //< free stored data after it is uplaoded to video card + + property Dimension: TglBitmapSize read fDimension; //< size of the texture + property Data: PByte read fData; //< texture data (or @nil if unset) {$IFNDEF OPENGL_ES} - property IsResident: GLboolean read fIsResident; + property IsResident: GLboolean read fIsResident; //< @true if OpenGL texture object has data, @false otherwise {$ENDIF} + { this method is called after the constructor and sets the default values of this object } procedure AfterConstruction; override; + + { this method is called before the destructor and does some cleanup } procedure BeforeDestruction; override; + { splits a resource identifier into the resource and it's type + @param aResource resource identifier to split and store name in + @param aResType type of the resource } procedure PrepareResType(var aResource: String; var aResType: PChar); - //Load + public + { load a texture from a file + @param aFilename file to load texuture from } procedure LoadFromFile(const aFilename: String); + + { load a texture from a stream + @param aStream stream to load texture from } procedure LoadFromStream(const aStream: TStream); virtual; - procedure LoadFromFunc(const aSize: TglBitmapPixelPosition; const aFunc: TglBitmapFunction; + + { use a function to generate texture data + @param aSize size of the texture + @param aFunc callback to use for generation + @param aFormat format of the texture data + @param aArgs user defined paramaters (use at will) } + procedure LoadFromFunc(const aSize: TglBitmapSize; const aFunc: TglBitmapFunction; const aFormat: TglBitmapFormat; const aArgs: Pointer = nil); + + { load a texture from a resource + @param aInstance resource handle + @param aResource resource indentifier + @param aResType resource type (if known) } procedure LoadFromResource(const aInstance: Cardinal; aResource: String; aResType: PChar = nil); + + { load a texture from a resource id + @param aInstance resource handle + @param aResource resource ID + @param aResType resource type } procedure LoadFromResourceID(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar); - //Save - procedure SaveToFile(const aFileName: String; const aFileType: TglBitmapFileType); + public + { save texture data to a file + @param aFilename filename to store texture in + @param aFileType file type to store data into } + procedure SaveToFile(const aFilename: String; const aFileType: TglBitmapFileType); + + { save texture data to a stream + @param aFilename filename to store texture in + @param aFileType file type to store data into } procedure SaveToStream(const aStream: TStream; const aFileType: TglBitmapFileType); virtual; - //Convert - function AddFunc(const aFunc: TglBitmapFunction; const aCreateTemp: Boolean; const aArgs: Pointer = nil): Boolean; overload; - function AddFunc(const aSource: TglBitmap; const aFunc: TglBitmapFunction; aCreateTemp: Boolean; + public + { convert texture data using a user defined callback + @param aFunc callback to use for converting + @param aCreateTemp create a temporary buffer to use for converting + @param aArgs user defined paramters (use at will) + @returns @true if converting was successful, @false otherwise } + function Convert(const aFunc: TglBitmapFunction; const aCreateTemp: Boolean; const aArgs: Pointer = nil): Boolean; overload; + + { convert texture data using a user defined callback + @param aSource glBitmap to read data from + @param aFunc callback to use for converting + @param aCreateTemp create a temporary buffer to use for converting + @param aFormat format of the new data + @param aArgs user defined paramters (use at will) + @returns @true if converting was successful, @false otherwise } + function Convert(const aSource: TglBitmap; const aFunc: TglBitmapFunction; aCreateTemp: Boolean; const aFormat: TglBitmapFormat; const aArgs: Pointer = nil): Boolean; overload; + + { convert texture data using a specific format + @param aFormat new format of texture data + @returns @true if converting was successful, @false otherwise } + function ConvertTo(const aFormat: TglBitmapFormat): Boolean; virtual; + +{$IFDEF GLB_SDL} public - //Alpha & Co - {$IFDEF GLB_SDL} + { assign texture data to SDL surface + @param aSurface SDL surface to write data to + @returns @true on success, @false otherwise } function AssignToSurface(out aSurface: PSDL_Surface): Boolean; + + { assign texture data from SDL surface + @param aSurface SDL surface to read data from + @returns @true on success, @false otherwise } function AssignFromSurface(const aSurface: PSDL_Surface): Boolean; + + { assign alpha channel data to SDL surface + @param aSurface SDL surface to write alpha channel data to + @returns @true on success, @false otherwise } function AssignAlphaToSurface(out aSurface: PSDL_Surface): Boolean; - function AddAlphaFromSurface(const aSurface: PSDL_Surface; const aFunc: TglBitmapFunction = nil; - const aArgs: Pointer = nil): Boolean; - {$ENDIF} - {$IFDEF GLB_DELPHI} + { assign alpha channel data from SDL surface + @param aSurface SDL surface to read data from + @param aFunc callback to use for converting + @param aArgs user defined parameters (use at will) + @returns @true on success, @false otherwise } + function AddAlphaFromSurface(const aSurface: PSDL_Surface; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean; +{$ENDIF} + +{$IFDEF GLB_DELPHI} + public + { assign texture data to TBitmap object + @param aBitmap TBitmap to write data to + @returns @true on success, @false otherwise } function AssignToBitmap(const aBitmap: TBitmap): Boolean; + + { assign texture data from TBitmap object + @param aBitmap TBitmap to read data from + @returns @true on success, @false otherwise } function AssignFromBitmap(const aBitmap: TBitmap): Boolean; + + { assign alpha channel data to TBitmap object + @param aBitmap TBitmap to write data to + @returns @true on success, @false otherwise } function AssignAlphaToBitmap(const aBitmap: TBitmap): Boolean; - function AddAlphaFromBitmap(const aBitmap: TBitmap; const aFunc: TglBitmapFunction = nil; - const aArgs: Pointer = nil): Boolean; - {$ENDIF} - {$IFDEF GLB_LAZARUS} + { assign alpha channel data from TBitmap object + @param aBitmap TBitmap to read data from + @param aFunc callback to use for converting + @param aArgs user defined parameters (use at will) + @returns @true on success, @false otherwise } + function AddAlphaFromBitmap(const aBitmap: TBitmap; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean; +{$ENDIF} + +{$IFDEF GLB_LAZARUS} + public + { assign texture data to TLazIntfImage object + @param aImage TLazIntfImage to write data to + @returns @true on success, @false otherwise } function AssignToLazIntfImage(const aImage: TLazIntfImage): Boolean; + + { assign texture data from TLazIntfImage object + @param aImage TLazIntfImage to read data from + @returns @true on success, @false otherwise } function AssignFromLazIntfImage(const aImage: TLazIntfImage): Boolean; + + { assign alpha channel data to TLazIntfImage object + @param aImage TLazIntfImage to write data to + @returns @true on success, @false otherwise } function AssignAlphaToLazIntfImage(const aImage: TLazIntfImage): Boolean; - function AddAlphaFromLazIntfImage(const aImage: TLazIntfImage; const aFunc: TglBitmapFunction = nil; - const aArgs: Pointer = nil): Boolean; - {$ENDIF} - function AddAlphaFromResource(const aInstance: Cardinal; aResource: String; aResType: PChar = nil; - const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean; - function AddAlphaFromResourceID(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar; - const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean; + { assign alpha channel data from TLazIntfImage object + @param aImage TLazIntfImage to read data from + @param aFunc callback to use for converting + @param aArgs user defined parameters (use at will) + @returns @true on success, @false otherwise } + function AddAlphaFromLazIntfImage(const aImage: TLazIntfImage; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean; +{$ENDIF} + public + { load alpha channel data from resource + @param aInstance resource handle + @param aResource resource ID + @param aResType resource type + @param aFunc callback to use for converting + @param aArgs user defined parameters (use at will) + @returns @true on success, @false otherwise } + function AddAlphaFromResource(const aInstance: Cardinal; aResource: String; aResType: PChar = nil; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean; + + { load alpha channel data from resource ID + @param aInstance resource handle + @param aResourceID resource ID + @param aResType resource type + @param aFunc callback to use for converting + @param aArgs user defined parameters (use at will) + @returns @true on success, @false otherwise } + function AddAlphaFromResourceID(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean; + + { add alpha channel data from function + @param aFunc callback to get data from + @param aArgs user defined parameters (use at will) + @returns @true on success, @false otherwise } function AddAlphaFromFunc(const aFunc: TglBitmapFunction; const aArgs: Pointer = nil): Boolean; virtual; + + { add alpha channel data from file (macro for: new glBitmap, LoadFromFile, AddAlphaFromGlBitmap) + @param aFilename file to load alpha channel data from + @param aFunc callback to use for converting + @param aArgs user defined parameters (use at will) + @returns @true on success, @false otherwise } function AddAlphaFromFile(const aFileName: String; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean; + + { add alpha channel data from stream (macro for: new glBitmap, LoadFromStream, AddAlphaFromGlBitmap) + @param aStream stream to load alpha channel data from + @param aFunc callback to use for converting + @param aArgs user defined parameters (use at will) + @returns @true on success, @false otherwise } function AddAlphaFromStream(const aStream: TStream; const aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean; + + { add alpha channel data from existing glBitmap object + @param aBitmap TglBitmap to copy alpha channel data from + @param aFunc callback to use for converting + @param aArgs user defined parameters (use at will) + @returns @true on success, @false otherwise } function AddAlphaFromGlBitmap(const aBitmap: TglBitmap; aFunc: TglBitmapFunction = nil; const aArgs: Pointer = nil): Boolean; + { add alpha to pixel if the pixels color is greter than the given color value + @param aRed red threshold (0-255) + @param aGreen green threshold (0-255) + @param aBlue blue threshold (0-255) + @param aDeviatation accepted deviatation (0-255) + @returns @true on success, @false otherwise } function AddAlphaFromColorKey(const aRed, aGreen, aBlue: Byte; const aDeviation: Byte = 0): Boolean; + + { add alpha to pixel if the pixels color is greter than the given color value + @param aRed red threshold (0-Range.r) + @param aGreen green threshold (0-Range.g) + @param aBlue blue threshold (0-Range.b) + @param aDeviatation accepted deviatation (0-max(Range.rgb)) + @returns @true on success, @false otherwise } function AddAlphaFromColorKeyRange(const aRed, aGreen, aBlue: Cardinal; const aDeviation: Cardinal = 0): Boolean; + + { add alpha to pixel if the pixels color is greter than the given color value + @param aRed red threshold (0.0-1.0) + @param aGreen green threshold (0.0-1.0) + @param aBlue blue threshold (0.0-1.0) + @param aDeviatation accepted deviatation (0.0-1.0) + @returns @true on success, @false otherwise } function AddAlphaFromColorKeyFloat(const aRed, aGreen, aBlue: Single; const aDeviation: Single = 0): Boolean; + { add a constand alpha value to all pixels + @param aAlpha alpha value to add (0-255) + @returns @true on success, @false otherwise } function AddAlphaFromValue(const aAlpha: Byte): Boolean; + + { add a constand alpha value to all pixels + @param aAlpha alpha value to add (0-max(Range.rgb)) + @returns @true on success, @false otherwise } function AddAlphaFromValueRange(const aAlpha: Cardinal): Boolean; + + { add a constand alpha value to all pixels + @param aAlpha alpha value to add (0.0-1.0) + @returns @true on success, @false otherwise } function AddAlphaFromValueFloat(const aAlpha: Single): Boolean; + { remove alpha channel + @returns @true on success, @false otherwise } function RemoveAlpha: Boolean; virtual; + public - //Common + { create a clone of the current object + @returns clone of this object} function Clone: TglBitmap; - function ConvertTo(const aFormat: TglBitmapFormat): Boolean; virtual; + + { invert color data (xor) + @param aUseRGB xor each color channel + @param aUseAlpha xor alpha channel } procedure Invert(const aUseRGB: Boolean = true; const aUseAlpha: Boolean = false); + + { free texture stored data } + procedure FreeData; + {$IFNDEF OPENGL_ES} + { set the new value for texture border color + @param aRed red color for border (0.0-1.0) + @param aGreen green color for border (0.0-1.0) + @param aBlue blue color for border (0.0-1.0) + @param aAlpha alpha color for border (0.0-1.0) } procedure SetBorderColor(const aRed, aGreen, aBlue, aAlpha: Single); {$ENDIF} - procedure FreeData; - //ColorFill + public + { fill complete texture with one color + @param aRed red color for border (0-255) + @param aGreen green color for border (0-255) + @param aBlue blue color for border (0-255) + @param aAlpha alpha color for border (0-255) } procedure FillWithColor(const aRed, aGreen, aBlue: Byte; const aAlpha: Byte = 255); + + { fill complete texture with one color + @param aRed red color for border (0-Range.r) + @param aGreen green color for border (0-Range.g) + @param aBlue blue color for border (0-Range.b) + @param aAlpha alpha color for border (0-Range.a) } procedure FillWithColorRange(const aRed, aGreen, aBlue: Cardinal; const aAlpha: Cardinal = $FFFFFFFF); - procedure FillWithColorFloat(const aRed, aGreen, aBlue: Single; const aAlpha : Single = 1); - //TexParameters + { fill complete texture with one color + @param aRed red color for border (0.0-1.0) + @param aGreen green color for border (0.0-1.0) + @param aBlue blue color for border (0.0-1.0) + @param aAlpha alpha color for border (0.0-1.0) } + procedure FillWithColorFloat(const aRed, aGreen, aBlue: Single; const aAlpha: Single = 1.0); + + public + { set new texture filer + @param aMin min filter + @param aMag mag filter } procedure SetFilter(const aMin, aMag: GLenum); + + { set new texture wrapping + @param S texture wrapping for x axis + @param T texture wrapping for y axis + @param R texture wrapping for z axis } procedure SetWrap( const S: GLenum = GL_CLAMP_TO_EDGE; const T: GLenum = GL_CLAMP_TO_EDGE; const R: GLenum = GL_CLAMP_TO_EDGE); + {$IF NOT DEFINED(OPENGL_ES) OR DEFINED(OPENGL_ES_3_0)} + { set new swizzle + @param r swizzle for red channel + @param g swizzle for green channel + @param b swizzle for blue channel + @param a swizzle for alpha channel } procedure SetSwizzle(const r, g, b, a: GLenum); {$IFEND} + public + { bind texture + @param aEnableTextureUnit enable texture unit for this texture (e.g. glEnable(GL_TEXTURE_2D)) } procedure Bind(const aEnableTextureUnit: Boolean = true); virtual; + + { bind texture + @param aDisableTextureUnit disable texture unit for this texture (e.g. glEnable(GL_TEXTURE_2D)) } procedure Unbind(const aDisableTextureUnit: Boolean = true); virtual; - //Constructors + public + { constructor - created an empty texture } constructor Create; overload; + + { constructor - creates a texture and load it from a file + @param aFilename file to load texture from } constructor Create(const aFileName: String); overload; + + { constructor - creates a texture and load it from a stream + @param aStream stream to load texture from } constructor Create(const aStream: TStream); overload; - constructor Create(const aSize: TglBitmapPixelPosition; const aFormat: TglBitmapFormat; aData: PByte = nil); overload; - constructor Create(const aSize: TglBitmapPixelPosition; const aFormat: TglBitmapFormat; const aFunc: TglBitmapFunction; const aArgs: Pointer = nil); overload; + + { constructor - creates a texture with the given size, format and data + @param aSize size of the texture + @param aFormat format of the given data + @param aData texture data - be carefull: the data will now be managed by the glBitmap object, + you can control this by setting DeleteTextureOnFree, FreeDataOnDestroy and FreeDataAfterGenTexture } + constructor Create(const aSize: TglBitmapSize; const aFormat: TglBitmapFormat; aData: PByte = nil); overload; + + { constructor - creates a texture with the given size and format and uses the given callback to create the data + @param aSize size of the texture + @param aFormat format of the given data + @param aFunc callback to use for generating the data + @param aArgs user defined parameters (use at will) } + constructor Create(const aSize: TglBitmapSize; const aFormat: TglBitmapFormat; const aFunc: TglBitmapFunction; const aArgs: Pointer = nil); overload; + + { constructor - creates a texture and loads it from a resource + @param aInstance resource handle + @param aResource resource indentifier + @param aResType resource type (if known) } constructor Create(const aInstance: Cardinal; const aResource: String; const aResType: PChar = nil); overload; + + { constructor - creates a texture and loads it from a resource + @param aInstance resource handle + @param aResourceID resource ID + @param aResType resource type (if known) } constructor Create(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar); overload; + private - {$IFDEF GLB_SUPPORT_PNG_READ} function LoadPNG(const aStream: TStream): Boolean; virtual; {$ENDIF} - {$ifdef GLB_SUPPORT_PNG_WRITE} procedure SavePNG(const aStream: TStream); virtual; {$ENDIF} +{$IFDEF GLB_SUPPORT_PNG_READ} + { try to load a PNG from a stream + @param aStream stream to load PNG from + @returns @true on success, @false otherwise } + function LoadPNG(const aStream: TStream): Boolean; virtual; +{$ENDIF} + +{$ifdef GLB_SUPPORT_PNG_WRITE} + { save texture data as PNG to stream + @param aStream stream to save data to} + procedure SavePNG(const aStream: TStream); virtual; +{$ENDIF} - {$IFDEF GLB_SUPPORT_JPEG_READ} function LoadJPEG(const aStream: TStream): Boolean; virtual; {$ENDIF} - {$IFDEF GLB_SUPPORT_JPEG_WRITE} procedure SaveJPEG(const aStream: TStream); virtual; {$ENDIF} +{$IFDEF GLB_SUPPORT_JPEG_READ} + { try to load a JPEG from a stream + @param aStream stream to load JPEG from + @returns @true on success, @false otherwise } + function LoadJPEG(const aStream: TStream): Boolean; virtual; +{$ENDIF} + +{$IFDEF GLB_SUPPORT_JPEG_WRITE} + { save texture data as JPEG to stream + @param aStream stream to save data to} + procedure SaveJPEG(const aStream: TStream); virtual; +{$ENDIF} + { try to load a RAW image from a stream + @param aStream stream to load RAW image from + @returns @true on success, @false otherwise } function LoadRAW(const aStream: TStream): Boolean; + + { save texture data as RAW image to stream + @param aStream stream to save data to} procedure SaveRAW(const aStream: TStream); + { try to load a BMP from a stream + @param aStream stream to load BMP from + @returns @true on success, @false otherwise } function LoadBMP(const aStream: TStream): Boolean; + + { save texture data as BMP to stream + @param aStream stream to save data to} procedure SaveBMP(const aStream: TStream); + { try to load a TGA from a stream + @param aStream stream to load TGA from + @returns @true on success, @false otherwise } function LoadTGA(const aStream: TStream): Boolean; + + { save texture data as TGA to stream + @param aStream stream to save data to} procedure SaveTGA(const aStream: TStream); + { try to load a DDS from a stream + @param aStream stream to load DDS from + @returns @true on success, @false otherwise } function LoadDDS(const aStream: TStream): Boolean; + + { save texture data as DDS to stream + @param aStream stream to save data to} procedure SaveDDS(const aStream: TStream); end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -{$IFNDEF OPENGL_ES} +{$IF NOT DEFINED(OPENGL_ES)} + { wrapper class for 1-dimensional textures (OpenGL target = GL_TEXTURE_1D } TglBitmap1D = class(TglBitmap) protected - procedure SetDataPointer(var aData: PByte; const aFormat: TglBitmapFormat; - const aWidth: Integer = - 1; const aHeight: Integer = - 1); override; + { set data pointer of texture data + @param aData pointer to new texture data (be carefull, aData could be freed by this function) + @param aFormat format of the data stored at aData + @param aWidth width of the texture data + @param aHeight height of the texture data } + procedure SetDataPointer(var aData: PByte; const aFormat: TglBitmapFormat; const aWidth: Integer = - 1; const aHeight: Integer = - 1); override; + + { upload the texture data to video card + @param aBuildWithGlu use glu functions to build mipmaps } procedure UploadData(const aBuildWithGlu: Boolean); public - property Width; + property Width; //< actual with of the texture + + { this method is called after constructor and initializes the object } procedure AfterConstruction; override; + + { flip texture horizontally + @returns @true on success, @fals otherwise } function FlipHorz: Boolean; override; + + { generate texture (create texture object if not exist, set texture parameters and upload data + @param aTestTextureSize check the size of the texture and throw exception if something is wrong } procedure GenTexture(const aTestTextureSize: Boolean = true); override; end; -{$ENDIF} +{$IFEND} ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + { wrapper class for 2-dimensional textures (OpenGL target = GL_TEXTURE_2D) } TglBitmap2D = class(TglBitmap) protected - fLines: array of PByte; + fLines: array of PByte; //< array to store scanline entry points in + + { get a specific scanline + @param aIndex index of the scanline to return + @returns scanline at position aIndex or @nil } function GetScanline(const aIndex: Integer): Pointer; + + { set data pointer of texture data + @param aData pointer to new texture data (be carefull, aData could be freed by this function) + @param aFormat format of the data stored at aData + @param aWidth width of the texture data + @param aHeight height of the texture data } procedure SetDataPointer(var aData: PByte; const aFormat: TglBitmapFormat; const aWidth: Integer = - 1; const aHeight: Integer = - 1); override; + + { upload the texture data to video card + @param aTarget target o upload data to (e.g. GL_TEXTURE_2D) + @param aBuildWithGlu use glu functions to build mipmaps } procedure UploadData(const aTarget: GLenum{$IFNDEF OPENGL_ES}; const aBuildWithGlu: Boolean{$ENDIF}); public - property Width; - property Height; - property Scanline[const aIndex: Integer]: Pointer read GetScanline; + property Width; //< actual width of the texture + property Height; //< actual height of the texture + property Scanline[const aIndex: Integer]: Pointer read GetScanline; //< scanline to access texture data directly + { this method is called after constructor and initializes the object } procedure AfterConstruction; override; + { copy a part of the frame buffer top the texture + @param aTop topmost pixel to copy + @param aLeft leftmost pixel to copy + @param aRight rightmost pixel to copy + @param aBottom bottommost pixel to copy + @param aFormat format to store data in } procedure GrabScreen(const aTop, aLeft, aRight, aBottom: Integer; const aFormat: TglBitmapFormat); + {$IFNDEF OPENGL_ES} + { downlaod texture data from OpenGL texture object } procedure GetDataFromTexture; {$ENDIF} + + { generate texture (create texture object if not exist, set texture parameters and upload data) + @param aTestTextureSize check the size of the texture and throw exception if something is wrong } procedure GenTexture(const aTestTextureSize: Boolean = true); override; + { flip texture horizontally + @returns @true on success, @false otherwise } function FlipHorz: Boolean; override; + + { flip texture vertically + @returns @true on success, @false otherwise } function FlipVert: Boolean; override; - procedure ToNormalMap(const aFunc: TglBitmapNormalMapFunc = nm3x3; + { create normal map from texture data + @param aFunc normal map function to generate normalmap with + @param aScale scale of the normale stored in the normal map + @param aUseAlpha generate normalmap from alpha channel data (if present) } + procedure GenerateNormalMap(const aFunc: TglBitmapNormalMapFunc = nm3x3; const aScale: Single = 2; const aUseAlpha: Boolean = false); end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// {$IF NOT DEFINED(OPENGL_ES) OR DEFINED(OPENGL_ES_2_0)} + { wrapper class for cube maps (OpenGL target = GL_TEXTURE_CUBE_MAP) } TglBitmapCubeMap = class(TglBitmap2D) protected {$IFNDEF OPENGL_ES} - fGenMode: Integer; + fGenMode: Integer; //< generation mode for the cube map (e.g. GL_REFLECTION_MAP) {$ENDIF} + + { generate texture (create texture object if not exist, set texture parameters and upload data + do not call directly for cubemaps, use GenerateCubeMap instead + @param aTestTextureSize check the size of the texture and throw exception if something is wrong } procedure GenTexture(const aTestTextureSize: Boolean = true); reintroduce; public + { this method is called after constructor and initializes the object } procedure AfterConstruction; override; + + { generate texture (create texture object if not exist, set texture parameters and upload data + @param aCubeTarget cube map target to upload data to (e.g. GL_TEXTURE_CUBE_MAP_POSITIVE_X) + @param aTestTextureSize check the size of the texture and throw exception if something is wrong } procedure GenerateCubeMap(const aCubeTarget: Cardinal; const aTestTextureSize: Boolean = true); + + { bind texture + @param aEnableTexCoordsGen enable cube map generator + @param aEnableTextureUnit enable texture unit } procedure Bind({$IFNDEF OPENGL_ES}const aEnableTexCoordsGen: Boolean = true;{$ENDIF} const aEnableTextureUnit: Boolean = true); reintroduce; virtual; + + { unbind texture + @param aDisableTexCoordsGen disable cube map generator + @param aDisableTextureUnit disable texture unit } procedure Unbind({$IFNDEF OPENGL_ES}const aDisableTexCoordsGen: Boolean = true;{$ENDIF} const aDisableTextureUnit: Boolean = true); reintroduce; virtual; end; {$IFEND} {$IF NOT DEFINED(OPENGL_ES) OR DEFINED(OPENGL_ES_2_0)} ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + { wrapper class for cube normal maps } TglBitmapNormalMap = class(TglBitmapCubeMap) public + { this method is called after constructor and initializes the object } procedure AfterConstruction; override; + + { create cube normal map from texture data and upload it to video card + @param aSize size of each cube map texture + @param aTestTextureSize check texture size when uploading and throw exception if something is wrong } procedure GenerateNormalMap(const aSize: Integer = 32; const aTestTextureSize: Boolean = true); end; {$IFEND} const - NULL_SIZE: TglBitmapPixelPosition = (Fields: []; X: 0; Y: 0); + NULL_SIZE: TglBitmapSize = (Fields: []; X: 0; Y: 0); procedure glBitmapSetDefaultDeleteTextureOnFree(const aDeleteTextureOnFree: Boolean); procedure glBitmapSetDefaultFreeDataAfterGenTexture(const aFreeData: Boolean); @@ -1332,13 +1595,21 @@ procedure glBitmapSetDefaultWrap( const T: Cardinal = GL_CLAMP_TO_EDGE; const R: Cardinal = GL_CLAMP_TO_EDGE); +{$IF NOT DEFINED(OPENGL_ES) OR DEFINED(OPENGL_ES_3_0)} +procedure glBitmapSetDefaultSwizzle(const r: GLenum = GL_RED; g: GLenum = GL_GREEN; b: GLenum = GL_BLUE; a: GLenum = GL_ALPHA); +{$IFEND} + function glBitmapGetDefaultDeleteTextureOnFree: Boolean; function glBitmapGetDefaultFreeDataAfterGenTexture: Boolean; function glBitmapGetDefaultMipmap: TglBitmapMipMap; function glBitmapGetDefaultFormat: TglBitmapFormat; procedure glBitmapGetDefaultFilter(var aMin, aMag: Cardinal); procedure glBitmapGetDefaultTextureWrap(var S, T, R: Cardinal); +{$IF NOT DEFINED(OPENGL_ES) OR DEFINED(OPENGL_ES_3_0)} +procedure glBitmapGetDefaultSwizzle(var r, g, b, a: GLenum); +{$IFEND} +function glBitmapSize(X: Integer = -1; Y: Integer = -1): TglBitmapSize; function glBitmapPosition(X: Integer = -1; Y: Integer = -1): TglBitmapPixelPosition; function glBitmapRec4ub(const r, g, b, a: Byte): TglBitmapRec4ub; function glBitmapRec4ui(const r, g, b, a: Cardinal): TglBitmapRec4ui; @@ -1348,6 +1619,17 @@ function glBitmapRec4uiCompare(const r1, r2: TglBitmapRec4ui): Boolean; function glBitmapCreateTestTexture(const aFormat: TglBitmapFormat): TglBitmap2D; +{$IFDEF GLB_DELPHI} +function CreateGrayPalette: HPALETTE; +{$ENDIF} + +implementation + +uses + Math, syncobjs, typinfo + {$IF DEFINED(GLB_SUPPORT_JPEG_READ) AND DEFINED(GLB_LAZ_JPEG)}, FPReadJPEG{$IFEND}; + + var glBitmapDefaultDeleteTextureOnFree: Boolean; glBitmapDefaultFreeDataAfterGenTextures: Boolean; @@ -1360,16 +1642,6 @@ var glBitmapDefaultWrapR: Cardinal; glDefaultSwizzle: array[0..3] of GLenum; -{$IFDEF GLB_DELPHI} -function CreateGrayPalette: HPALETTE; -{$ENDIF} - -implementation - -uses - Math, syncobjs, typinfo - {$IF DEFINED(GLB_SUPPORT_JPEG_READ) AND DEFINED(GLB_LAZ_JPEG)}, FPReadJPEG{$IFEND}; - //////////////////////////////////////////////////////////////////////////////////////////////////// type TFormatDescriptor = class(TglBitmapFormatDescriptor) @@ -1377,7 +1649,7 @@ type procedure Map(const aPixel: TglBitmapPixelData; var aData: PByte; var aMapData: Pointer); virtual; abstract; procedure Unmap(var aData: PByte; out aPixel: TglBitmapPixelData; var aMapData: Pointer); virtual; abstract; - function GetSize(const aSize: TglBitmapPixelPosition): Integer; overload; virtual; + function GetSize(const aSize: TglBitmapSize): Integer; overload; virtual; function GetSize(const aWidth, aHeight: Integer): Integer; overload; virtual; function CreateMappingData: Pointer; virtual; @@ -1895,20 +2167,24 @@ begin end; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -function glBitmapPosition(X: Integer; Y: Integer): TglBitmapPixelPosition; +function glBitmapSize(X: Integer; Y: Integer): TglBitmapSize; begin result.Fields := []; - - if X >= 0 then + if (X >= 0) then result.Fields := result.Fields + [ffX]; - if Y >= 0 then + if (Y >= 0) then result.Fields := result.Fields + [ffY]; - result.X := Max(0, X); result.Y := Max(0, Y); end; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +function glBitmapPosition(X: Integer; Y: Integer): TglBitmapPixelPosition; +begin + result := glBitmapSize(X, Y); +end; + +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// function glBitmapRec4ub(const r, g, b, a: Byte): TglBitmapRec4ub; begin result.r := r; @@ -2477,7 +2753,7 @@ begin R := glBitmapDefaultWrapR; end; -{$IFNDEF OPENGL_ES} +{$IF NOT DEFINED(OPENGL_ES) OR DEFINED(OPENGL_ES_3_0)} ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// procedure glBitmapGetDefaultSwizzle(var r, g, b, a: GLenum); begin @@ -2491,7 +2767,7 @@ end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //TFormatDescriptor/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -function TFormatDescriptor.GetSize(const aSize: TglBitmapPixelPosition): Integer; +function TFormatDescriptor.GetSize(const aSize: TglBitmapSize): Integer; var w, h: Integer; begin @@ -4989,7 +5265,7 @@ begin end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -procedure TglBitmap.LoadFromFunc(const aSize: TglBitmapPixelPosition; const aFunc: TglBitmapFunction; +procedure TglBitmap.LoadFromFunc(const aSize: TglBitmapSize; const aFunc: TglBitmapFunction; const aFormat: TglBitmapFormat; const aArgs: Pointer); var tmpData: PByte; @@ -5005,7 +5281,7 @@ begin FreeMem(tmpData); raise; end; - AddFunc(Self, aFunc, false, aFormat, aArgs); + Convert(Self, aFunc, false, aFormat, aArgs); end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -5036,7 +5312,7 @@ begin end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -procedure TglBitmap.SaveToFile(const aFileName: String; const aFileType: TglBitmapFileType); +procedure TglBitmap.SaveToFile(const aFilename: String; const aFileType: TglBitmapFileType); var fs: TFileStream; begin @@ -5067,13 +5343,13 @@ begin end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -function TglBitmap.AddFunc(const aFunc: TglBitmapFunction; const aCreateTemp: Boolean; const aArgs: Pointer): Boolean; +function TglBitmap.Convert(const aFunc: TglBitmapFunction; const aCreateTemp: Boolean; const aArgs: Pointer): Boolean; begin - result := AddFunc(Self, aFunc, aCreateTemp, Format, aArgs); + result := Convert(Self, aFunc, aCreateTemp, Format, aArgs); end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -function TglBitmap.AddFunc(const aSource: TglBitmap; const aFunc: TglBitmapFunction; aCreateTemp: Boolean; +function TglBitmap.Convert(const aSource: TglBitmap; const aFunc: TglBitmapFunction; aCreateTemp: Boolean; const aFormat: TglBitmapFormat; const aArgs: Pointer): Boolean; var DestData, TmpData, SourceData: pByte; @@ -5158,6 +5434,73 @@ begin end; end; +////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +function TglBitmap.ConvertTo(const aFormat: TglBitmapFormat): Boolean; +var + SourceFD, DestFD: TFormatDescriptor; + SourcePD, DestPD: TglBitmapPixelData; + ShiftData: TShiftData; + + function DataIsIdentical: Boolean; + begin + result := SourceFD.MaskMatch(DestFD.Mask); + end; + + function CanCopyDirect: Boolean; + begin + result := + ((SourcePD.Range.r = DestPD.Range.r) or (SourcePD.Range.r = 0) or (DestPD.Range.r = 0)) and + ((SourcePD.Range.g = DestPD.Range.g) or (SourcePD.Range.g = 0) or (DestPD.Range.g = 0)) and + ((SourcePD.Range.b = DestPD.Range.b) or (SourcePD.Range.b = 0) or (DestPD.Range.b = 0)) and + ((SourcePD.Range.a = DestPD.Range.a) or (SourcePD.Range.a = 0) or (DestPD.Range.a = 0)); + end; + + function CanShift: Boolean; + begin + result := + ((SourcePD.Range.r >= DestPD.Range.r) or (SourcePD.Range.r = 0) or (DestPD.Range.r = 0)) and + ((SourcePD.Range.g >= DestPD.Range.g) or (SourcePD.Range.g = 0) or (DestPD.Range.g = 0)) and + ((SourcePD.Range.b >= DestPD.Range.b) or (SourcePD.Range.b = 0) or (DestPD.Range.b = 0)) and + ((SourcePD.Range.a >= DestPD.Range.a) or (SourcePD.Range.a = 0) or (DestPD.Range.a = 0)); + end; + + function GetShift(aSource, aDest: Cardinal) : ShortInt; + begin + result := 0; + while (aSource > aDest) and (aSource > 0) do begin + inc(result); + aSource := aSource shr 1; + end; + end; + +begin + if (aFormat <> fFormat) and (aFormat <> tfEmpty) then begin + SourceFD := TFormatDescriptor.Get(Format); + DestFD := TFormatDescriptor.Get(aFormat); + + if DataIsIdentical then begin + result := true; + Format := aFormat; + exit; + end; + + SourceFD.PreparePixel(SourcePD); + DestFD.PreparePixel (DestPD); + + if CanCopyDirect then + result := Convert(Self, glBitmapConvertCopyFunc, false, aFormat) + else if CanShift then begin + ShiftData.r := GetShift(SourcePD.Range.r, DestPD.Range.r); + ShiftData.g := GetShift(SourcePD.Range.g, DestPD.Range.g); + ShiftData.b := GetShift(SourcePD.Range.b, DestPD.Range.b); + ShiftData.a := GetShift(SourcePD.Range.a, DestPD.Range.a); + result := Convert(Self, glBitmapConvertShiftRGBAFunc, false, aFormat, @ShiftData); + end else + result := Convert(Self, glBitmapConvertCalculateRGBAFunc, false, aFormat); + end else + result := true; +end; + {$IFDEF GLB_SDL} ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// function TglBitmap.AssignToSurface(out aSurface: PSDL_Surface): Boolean; @@ -5755,7 +6098,7 @@ function TglBitmap.AddAlphaFromFunc(const aFunc: TglBitmapFunction; const aArgs: begin if TFormatDescriptor.Get(Format).IsCompressed then raise EglBitmapUnsupportedFormat.Create(Format); - result := AddFunc(Self, aFunc, false, TFormatDescriptor.Get(Format).WithAlpha, aArgs); + result := Convert(Self, aFunc, false, TFormatDescriptor.Get(Format).WithAlpha, aArgs); end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -5990,81 +6333,23 @@ begin end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -function TglBitmap.ConvertTo(const aFormat: TglBitmapFormat): Boolean; -var - SourceFD, DestFD: TFormatDescriptor; - SourcePD, DestPD: TglBitmapPixelData; - ShiftData: TShiftData; - - function DataIsIdentical: Boolean; - begin - result := SourceFD.MaskMatch(DestFD.Mask); - end; - - function CanCopyDirect: Boolean; - begin - result := - ((SourcePD.Range.r = DestPD.Range.r) or (SourcePD.Range.r = 0) or (DestPD.Range.r = 0)) and - ((SourcePD.Range.g = DestPD.Range.g) or (SourcePD.Range.g = 0) or (DestPD.Range.g = 0)) and - ((SourcePD.Range.b = DestPD.Range.b) or (SourcePD.Range.b = 0) or (DestPD.Range.b = 0)) and - ((SourcePD.Range.a = DestPD.Range.a) or (SourcePD.Range.a = 0) or (DestPD.Range.a = 0)); - end; - - function CanShift: Boolean; - begin - result := - ((SourcePD.Range.r >= DestPD.Range.r) or (SourcePD.Range.r = 0) or (DestPD.Range.r = 0)) and - ((SourcePD.Range.g >= DestPD.Range.g) or (SourcePD.Range.g = 0) or (DestPD.Range.g = 0)) and - ((SourcePD.Range.b >= DestPD.Range.b) or (SourcePD.Range.b = 0) or (DestPD.Range.b = 0)) and - ((SourcePD.Range.a >= DestPD.Range.a) or (SourcePD.Range.a = 0) or (DestPD.Range.a = 0)); - end; - - function GetShift(aSource, aDest: Cardinal) : ShortInt; - begin - result := 0; - while (aSource > aDest) and (aSource > 0) do begin - inc(result); - aSource := aSource shr 1; - end; - end; - -begin - if (aFormat <> fFormat) and (aFormat <> tfEmpty) then begin - SourceFD := TFormatDescriptor.Get(Format); - DestFD := TFormatDescriptor.Get(aFormat); - - if DataIsIdentical then begin - result := true; - Format := aFormat; - exit; - end; - - SourceFD.PreparePixel(SourcePD); - DestFD.PreparePixel (DestPD); - - if CanCopyDirect then - result := AddFunc(Self, glBitmapConvertCopyFunc, false, aFormat) - else if CanShift then begin - ShiftData.r := GetShift(SourcePD.Range.r, DestPD.Range.r); - ShiftData.g := GetShift(SourcePD.Range.g, DestPD.Range.g); - ShiftData.b := GetShift(SourcePD.Range.b, DestPD.Range.b); - ShiftData.a := GetShift(SourcePD.Range.a, DestPD.Range.a); - result := AddFunc(Self, glBitmapConvertShiftRGBAFunc, false, aFormat, @ShiftData); - end else - result := AddFunc(Self, glBitmapConvertCalculateRGBAFunc, false, aFormat); - end else - result := true; -end; - -////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// procedure TglBitmap.Invert(const aUseRGB: Boolean; const aUseAlpha: Boolean); begin if aUseRGB or aUseAlpha then - AddFunc(glBitmapInvertFunc, false, {%H-}Pointer( + Convert(glBitmapInvertFunc, false, {%H-}Pointer( ((Byte(aUseAlpha) and 1) shl 1) or (Byte(aUseRGB) and 1) )); end; +////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +procedure TglBitmap.FreeData; +var + TempPtr: PByte; +begin + TempPtr := nil; + SetDataPointer(TempPtr, tfEmpty); //be careful, Data could be freed by this method +end; + {$IFNDEF OPENGL_ES} ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// procedure TglBitmap.SetBorderColor(const aRed, aGreen, aBlue, aAlpha: Single); @@ -6081,15 +6366,6 @@ end; {$ENDIF} ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -procedure TglBitmap.FreeData; -var - TempPtr: PByte; -begin - TempPtr := nil; - SetDataPointer(TempPtr, tfEmpty); //be careful, Data could be freed by this method -end; - -////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// procedure TglBitmap.FillWithColor(const aRed, aGreen, aBlue: Byte; const aAlpha: Byte); begin @@ -6121,7 +6397,7 @@ begin Data.b := Max(0, Min(Range.b, Trunc(Range.b * aBlue))); Data.a := Max(0, Min(Range.a, Trunc(Range.a * aAlpha))); end; - AddFunc(glBitmapFillWithColorFunc, false, @PixelData); + Convert(glBitmapFillWithColorFunc, false, @PixelData); end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -6324,7 +6600,7 @@ begin end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -constructor TglBitmap.Create(const aSize: TglBitmapPixelPosition; const aFormat: TglBitmapFormat; aData: PByte); +constructor TglBitmap.Create(const aSize: TglBitmapSize; const aFormat: TglBitmapFormat; aData: PByte); var ImageSize: Integer; begin @@ -6342,12 +6618,11 @@ begin end; end else begin SetDataPointer(aData, aFormat, aSize.X, aSize.Y); //be careful, Data could be freed by this method - fFreeDataOnDestroy := false; end; end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -constructor TglBitmap.Create(const aSize: TglBitmapPixelPosition; const aFormat: TglBitmapFormat; const aFunc: TglBitmapFunction; const aArgs: Pointer); +constructor TglBitmap.Create(const aSize: TglBitmapSize; const aFormat: TglBitmapFormat; const aFunc: TglBitmapFunction; const aArgs: Pointer); begin Create; LoadFromFunc(aSize, aFunc, aFormat, aArgs); @@ -8870,7 +9145,7 @@ begin end; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -procedure TglBitmap2D.ToNormalMap(const aFunc: TglBitmapNormalMapFunc; const aScale: Single; const aUseAlpha: Boolean); +procedure TglBitmap2D.GenerateNormalMap(const aFunc: TglBitmapNormalMapFunc; const aScale: Single; const aUseAlpha: Boolean); var Rec: TglBitmapToNormalMapRec; @@ -8992,10 +9267,10 @@ begin // Daten Sammeln if aUseAlpha and TFormatDescriptor.Get(Format).HasAlpha then - AddFunc(glBitmapToNormalMapPrepareAlphaFunc, false, @Rec) + Convert(glBitmapToNormalMapPrepareAlphaFunc, false, @Rec) else - AddFunc(glBitmapToNormalMapPrepareFunc, false, @Rec); - AddFunc(glBitmapToNormalMapFunc, false, @Rec); + Convert(glBitmapToNormalMapPrepareFunc, false, @Rec); + Convert(glBitmapToNormalMapFunc, false, @Rec); finally SetLength(Rec.Heights, 0); end; @@ -9198,7 +9473,7 @@ end; procedure TglBitmapNormalMap.GenerateNormalMap(const aSize: Integer; const aTestTextureSize: Boolean); var Rec: TglBitmapNormalMapRec; - SizeRec: TglBitmapPixelPosition; + SizeRec: TglBitmapSize; begin Rec.HalfSize := aSize div 2; FreeDataAfterGenTexture := false; diff --git a/readme.txt b/readme.txt new file mode 100644 index 0000000..0d5f495 --- /dev/null +++ b/readme.txt @@ -0,0 +1,229 @@ +glBitmap by Steffen Xonna aka Lossy eX (2003-2008) +http://www.opengl24.de/index.php?cat=header&file=glbitmap + +modified by Delphi OpenGL Community (http://delphigl.com/) (2013) + +------------------------------------------------------------ +The contents of this file are used with permission, subject to +the Mozilla Public License Version 1.1 (the "License"); you may +not use this file except in compliance with the License. You may +obtain a copy of the License at +http://www.mozilla.org/MPL/MPL-1.1.html +------------------------------------------------------------ +The glBitmap is a Delphi/FPC unit that contains several wrapper classes +to manage OpenGL texture objects. Below you can find a list of the main +functionality of this classes: +- load texture data from file (e.g. BMP, TGA, DDS, PNG, JPEG, ...) +- load texture data from several other image objects (e.g. TBitmap, TLazIntfImage, SDL Surface) +- save texture data to file (e.g. BMP, TGA, DDS, PNG, JPEG, ...) +- save texture data to several other image objects (e.g. TBitmap, TLazIntfImage, SDL Surface) +- support for many texture formats (e.g. RGB8, BGR8, RGBA8, BGRA8, ...) +- manage texture properties (e.g. Filter, Clamp, Mipmap, ...) +- upload texture data to video card +- download texture data from video card +- manipulate texture data (e.g. add alpha, remove alpha, convert to other format, switch RGB, ...) +------------------------------------------------------------ +History +20-11-2013 +- refactoring of the complete library +- glBitmap is managed by git, so this history is not maintenanced any longer +21-03-2010 +- The define GLB_DELPHI dosn't check versions anymore. If you say you are using delphi + then it's your problem if that isn't true. This prevents the unit for incompatibility + with newer versions of Delphi. +- Problems with D2009+ resolved (Thanks noeska and all i forgot) +- GetPixel isn't set if you are loading textures inside the constructor (Thanks Wilson) +10-08-2008 +- AddAlphaFromglBitmap used the custom pointer instead the imagedatapointer (Thanks Wilson) +- Additional Datapointer for functioninterface now has the name CustomData +24-07-2008 +- AssigneAlphaToBitmap overwrites his own palette (Thanks Wilson) +- If you load an texture from an file the property Filename will be set to the name of the file +- Three new properties to attach custom data to the Texture objects + - CustomName (free for use string) + - CustomNameW (free for use widestring) + - CustomDataPointer (free for use pointer to attach other objects or complex structures) +27-05-2008 +- RLE TGAs loaded much faster +26-05-2008 +- fixed some problem with reading RLE TGAs. +21-05-2008 +- function clone now only copys data if it's assigned and now it also copies the ID +- it seems that lazarus dont like comments in comments. +01-05-2008 +- It's possible to set the id of the texture +- define GLB_NO_NATIVE_GL deactivated by default +27-04-2008 +- Now supports the following libraries + - SDL and SDL_image + - libPNG + - libJPEG +- Linux compatibillity via free pascal compatibility (delphi sources optional) +- BMPs now loaded manuel +- Large restructuring +- Property DataPtr now has the name Data +- Functions are more flexible between RGB(A) and BGR(A). RGB can be saved as Bitmap and will be saved as BGR +- Unused Depth removed +- Function FreeData to freeing image data added +24-10-2007 +- ImageID flag of TGAs was ignored. (Thanks Zwoetzen) +15-11-2006 +- Function SetBorderColor implemented (only used by opengl if wrap is set to GL_CLAMP_TO_BORDER) +- Function AddAlphaFromValue implemented to use an fixed Value as Alphachannel +- Function ReadOpenGLExtension is now only intern +29-06-2006 +- pngimage now disabled by default like all other versions. +26-06-2006 +- Setting up an anisotropic filter of 0 isnt allowed by nvidia (Thanks Ogridi) +22-06-2006 +- Fixed some Problem with Delphi 5 +- Now uses the newest version of pngimage. Makes saving pngs much easier. +22-03-2006 +- Property IsCompressed and Size removed. Not really supported by Spec (Thanks Ogridi) +09-03-2006 +- Internal Format ifDepth8 added +- function GrabScreen now supports all uncompressed formats +31-01-2006 +- AddAlphaFromglBitmap implemented +29-12-2005 +- LoadFromResource and LoadFromResourceId now needs an Instance and an ResourceType (for ID) +28-12-2005 +- Width, Height and Depth internal changed to TglBitmapPixelPosition. + property Width, Height, Depth are still existing and new property Dimension are avail +11-12-2005 +- Added native OpenGL Support. Breaking the dglOpenGL "barrier". +19-10-2005 +- Added function GrabScreen to class TglBitmap2D +18-10-2005 +- Added support to Save images +- Added function Clone to Clone Instance +11-10-2005 +- Functions now works with Cardinals for each channel. Up to 32 Bits per channel. + Usefull for Future +- Several speed optimizations +09-10-2005 +- Internal structure change. Loading of TGA, PNG and DDS improved. + Data, format and size will now set directly with SetDataPtr. +- AddFunc now works with all Types of Images and Formats +- Some Funtions moved to Baseclass TglBitmap +06-10-2005 +- Added Support to decompress DXT3 and DXT5 compressed Images. +- Added Mapping to convert data from one format into an other. +05-10-2005 +- Added method ConvertTo in Class TglBitmap2D. Method allows to convert every + supported Input format (supported by GetPixel) into any uncompresed Format +- Added Support to decompress DXT1 compressed Images. +- SwapColors replaced by ConvertTo +04-10-2005 +- Added Support for compressed DDSs +- Added new internal formats (DXT1, DXT3, DXT5) +29-09-2005 +- Parameter Components renamed to InternalFormat +23-09-2005 +- Some AllocMem replaced with GetMem (little speed change) +- better exception handling. Better protection from memory leaks. +22-09-2005 +- Added support for Direct Draw Surfaces (.DDS) (uncompressed images only) +- Added new internal formats (RGB8, RGBA8, RGBA4, RGB5A1, RGB10A2, R5G6B5) +07-09-2005 +- Added support for Grayscale textures +- Added internal formats (Alpha, Luminance, LuminanceAlpha, BGR8, BGRA8) +10-07-2005 +- Added support for GL_VERSION_2_0 +- Added support for GL_EXT_texture_filter_anisotropic +04-07-2005 +- Function FillWithColor fills the Image with one Color +- Function LoadNormalMap added +30-06-2005 +- ToNormalMap allows to Create an NormalMap from the Alphachannel +- ToNormalMap now supports Sobel (nmSobel) function. +29-06-2005 +- support for RLE Compressed RGB TGAs added +28-06-2005 +- Class TglBitmapNormalMap added to support Normalmap generation +- Added function ToNormalMap in class TglBitmap2D to genereate normal maps from textures. + 3 Filters are supported. (4 Samples, 3x3 and 5x5) +16-06-2005 +- Method LoadCubeMapClass removed +- LoadCubeMap returnvalue is now the Texture paramter. Such as LoadTextures +- virtual abstract method GenTexture in class TglBitmap now is protected +12-06-2005 +- now support DescriptionFlag in LoadTga. Allows vertical flipped images to be loaded as normal +10-06-2005 +- little enhancement for IsPowerOfTwo +- TglBitmap1D.GenTexture now tests NPOT Textures +06-06-2005 +- some little name changes. All properties or function with Texture in name are + now without texture in name. We have allways texture so we dosn't name it. +03-06-2005 +- GenTexture now tests if texture is NPOT and NPOT-Texture are supported or + TextureTarget is GL_TEXTURE_RECTANGLE. Else it raised an exception. +02-06-2005 +- added support for GL_ARB_texture_rectangle, GL_EXT_texture_rectangle and GL_NV_texture_rectangle +25-04-2005 +- Function Unbind added +- call of SetFilter or SetTextureWrap if TextureID exists results in setting properties to opengl texture. +21-04-2005 +- class TglBitmapCubeMap added (allows to Create Cubemaps) +29-03-2005 +- Added Support for PNG Images. (http://pngdelphi.sourceforge.net/) + To Enable png's use the define pngimage +22-03-2005 +- New Functioninterface added +- Function GetPixel added +27-11-2004 +- Property BuildMipMaps renamed to MipMap +21-11-2004 +- property Name removed. +- BuildMipMaps is now a set of 3 values. None, GluBuildMipmaps and SGIS_generate_mipmap +22-05-2004 +- property name added. Only used in glForms! +26-11-2003 +- property FreeDataAfterGenTexture is now available as default (default = true) +- BuildMipmaps now implemented in TglBitmap1D (i've forgotten it) +- function MoveMemory replaced with function Move (little speed change) +- several calculations stored in variables (little speed change) +29-09-2003 +- property BuildMipsMaps added (default = true) + if BuildMipMaps isn't set GenTextures uses glTexImage[12]D else it use gluBuild[12]dMipmaps +- property FreeDataAfterGenTexture added (default = true) + if FreeDataAfterGenTexture is set the texturedata were deleted after the texture was generated. +- parameter DisableOtherTextureUnits of Bind removed +- parameter FreeDataAfterGeneration of GenTextures removed +12-09-2003 +- TglBitmap dosn't delete data if class was destroyed (fixed) +09-09-2003 +- Bind now enables TextureUnits (by params) +- GenTextures can leave data (by param) +- LoadTextures now optimal +03-09-2003 +- Performance optimization in AddFunc +- procedure Bind moved to subclasses +- Added new Class TglBitmap1D to support real OpenGL 1D Textures +19-08-2003 +- Texturefilter and texturewrap now also as defaults + Minfilter = GL_LINEAR_MIPMAP_LINEAR + Magfilter = GL_LINEAR + Wrap(str) = GL_CLAMP_TO_EDGE +- Added new format tfCompressed to create a compressed texture. +- propertys IsCompressed, TextureSize and IsResident added + IsCompressed and TextureSize only contains data from level 0 +18-08-2003 +- Added function AddFunc to add PerPixelEffects to Image +- LoadFromFunc now based on AddFunc +- Invert now based on AddFunc +- SwapColors now based on AddFunc +16-08-2003 +- Added function FlipHorz +15-08-2003 +- Added function LaodFromFunc to create images with function +- Added function FlipVert +- Added internal format RGB(A) if GL_EXT_bgra or OpenGL 1.2 isn't supported +29-07-2003 +- Added Alphafunctions to calculate alpha per function +- Added Alpha from ColorKey using alphafunctions +28-07-2003 +- First full functionally Version of glBitmap +- Support for 24Bit and 32Bit TGA Pictures added +25-07-2003 +- begin of programming -- 2.1.4