@gtkx/gl 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/generated/commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAigF,MAAM,YAAY,CAAC;AAC3hF,OAAO,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAElC;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB,EAAE,OAAe;IACjE,qBAAqB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,OAAoB;IAC9C,eAAe,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,OAAe,EAAE,MAAc;IACxD,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,EAAU,EAAE,IAA2B;IAC1E,wBAAwB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,MAAmB,EAAE,EAAU;IACtD,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAmB,EAAE,KAAa,EAAE,EAAU;IAC5E,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,aAA4B;IAC/D,wBAAwB,CAAC,aAAa,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,KAAa,EAAE,IAAY;IAC3E,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CAAC,MAAuB,EAAE,MAAc;IAC9D,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAC,MAAuB,EAAE,KAAa,EAAE,MAAc;IACjF,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,eAAe,CAAC,MAAuB,EAAE,KAAa,EAAE,MAAc,EAAE,MAAgB,EAAE,IAAgB;IACtH,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,MAAuB,EAAE,KAAa,EAAE,KAAc,EAAE,OAA+B;IACnH,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAuB,EAAE,KAAa,EAAE,KAAc,EAAE,OAA+B,EAAE,OAAmB,EAAE,KAAmB;IAC9J,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,KAAa,EAAE,IAAY;IAC7E,sBAAsB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe,EAAE,WAAmB,EAAE,KAAa,EAAE,IAAY;IACzG,6BAA6B,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,MAAyB,EAAE,WAAmB;IAC1E,iBAAiB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,OAAe,EAAE,KAAY,EAAE,OAAgB,EAAE,KAAY,EAAE,MAAuB,EAAE,MAAsB;IACzJ,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,KAAc,EAAE,QAAgC;IAC7F,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAChD,qBAAqB,CAAC,QAAQ,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAA0B,EAAE,YAAoB;IAC7E,kBAAkB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,OAAe;IACrD,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,KAAa,EAAE,KAAc,EAAE,QAAgC;IACxF,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,MAAqB,EAAE,OAAe;IAC9D,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,KAAa,EAAE,KAAc,EAAE,QAAgC;IACxF,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,OAAe;IACzD,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAmC,EAAE,EAAU;IACjF,uBAAuB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa;IACzC,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,YAAoB,EAAE,MAAc,EAAE,MAAgB,EAAE,MAAe;IACpG,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,KAAc,EAAE,OAA+B,EAAE,OAAmB,EAAE,OAA+B;IAClJ,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,UAAU,CAAC,GAAY,EAAE,KAAc,EAAE,IAAa,EAAE,KAAc;IAClF,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,IAA0B;IACpD,eAAe,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,IAA0B;IAClE,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAA6B,EAAE,SAA+B;IAChG,uBAAuB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAW,EAAE,OAA6B,EAAE,SAA+B;IAC9G,wBAAwB,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CAAC,OAAuB,EAAE,OAAuB;IACtE,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,GAAW,EAAE,GAAmB,EAAE,GAAmB;IAC5E,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAA0B,EAAE,UAA0B,EAAE,YAA4B,EAAE,YAA4B;IAChJ,mBAAmB,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW,EAAE,MAAsB,EAAE,MAAsB,EAAE,QAAwB,EAAE,QAAwB;IAC9I,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,eAAe,CAAC,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,IAAqB,EAAE,MAA6B;IAChM,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAC5F,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,oBAAoB,CAAC,eAAuB,EAAE,eAAuB,EAAE,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,KAAY,EAAE,IAAqB,EAAE,MAA6B;IACvP,sBAAsB,CAAC,eAAe,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACnI,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,MAAuB,EAAE,IAAgB,EAAE,IAAuC,EAAE,KAAqB;IAChI,YAAY,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,aAAa,CAAC,MAA2B,EAAE,IAAgB,EAAE,IAAuC,EAAE,KAAwB;IAC1I,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAAC,MAAuB,EAAE,MAAgB,EAAE,IAAgB,EAAE,IAAuC;IAC9H,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAyB;IAC5D,OAAO,wBAAwB,CAAC,MAAM,CAAsB,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,2BAA2B,CAAC,WAAmB,EAAE,MAAyB;IACtF,OAAO,6BAA6B,CAAC,WAAW,EAAE,MAAM,CAAsB,CAAC;AACnF,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,MAA2B,EAAE,KAAwB;IAC5E,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,KAAK,CAAC,IAAqB;IACvC,OAAO,CAAC,IAAI,CAAC,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,MAA2B,EAAE,cAAmC,EAAE,MAAmB,EAAE,IAAe,EAAE,IAAuC;IAC3K,iBAAiB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,UAAiB,EAAE,KAAc,EAAE,OAAc;IAC3F,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,UAAiB,EAAE,KAA+B;IAC5F,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,UAAiB,EAAE,KAA2B;IACxF,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAuB,EAAE,cAAmC,EAAE,MAAgB,EAAE,IAAgB,EAAE,MAAmB,EAAE,IAAe,EAAE,IAAuC;IAC9M,oBAAoB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACnF,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,UAAiB,EAAE,KAA6B;IAC3F,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,GAAY,EAAE,KAAc,EAAE,IAAa,EAAE,KAAc;IAClF,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,KAAe;IACtC,YAAY,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,CAAU;IAClC,aAAa,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAc,EAAE,cAAmC,EAAE,MAAmB,EAAE,IAAe,EAAE,IAAuC;IACnK,sBAAsB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAc,EAAE,cAAmC,EAAE,MAAgB,EAAE,IAAgB,EAAE,MAAmB,EAAE,IAAe,EAAE,IAAuC;IAC1M,yBAAyB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACxF,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,WAAmB,EAAE,MAAc,EAAE,UAAiB,EAAE,KAAc,EAAE,OAAc;IAC1H,yBAAyB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAAC,WAAmB,EAAE,MAAc,EAAE,UAAiB,EAAE,KAA+B;IAC3H,yBAAyB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAAC,WAAmB,EAAE,MAAc,EAAE,UAAiB,EAAE,KAA2B;IACvH,yBAAyB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CAAC,WAAmB,EAAE,MAAc,EAAE,UAAiB,EAAE,KAA6B;IAC1H,0BAA0B,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,CAAQ;IACjC,cAAc,CAAC,CAAC,CAAC,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe,EAAE,KAAY,EAAE,MAAmB,EAAE,IAAe,EAAE,IAAuC;IACtI,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,MAAmB,EAAE,IAAe,EAAE,IAAuC;IAC1O,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAC5G,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,KAAqB,EAAE,OAAiB;IACjF,OAAO,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAe,CAAC;AAChE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,MAAyB,EAAE,KAAuB;IAC1E,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,SAAS,CAAC,GAAY,EAAE,KAAc,EAAE,IAAa,EAAE,KAAc;IACjF,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,UAAU,CAAC,KAAa,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU;IACpF,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IACxC,eAAe,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAqB,EAAE,KAAY,EAAE,cAA8B,EAAE,KAAc,EAAE,MAAa,EAAE,SAAkB,EAAE,IAAuC;IAChM,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAC1F,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAqB,EAAE,KAAY,EAAE,cAA8B,EAAE,KAAc,EAAE,MAAe,EAAE,MAAa,EAAE,SAAkB,EAAE,IAAuC;IACjN,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAClG,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAqB,EAAE,KAAY,EAAE,cAA8B,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,MAAa,EAAE,SAAkB,EAAE,IAAuC;IACjO,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AACzG,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAqB,EAAE,KAAY,EAAE,OAAc,EAAE,KAAc,EAAE,MAAsB,EAAE,SAAkB,EAAE,IAAuC;IAC5L,yBAAyB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AACtF,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAqB,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,MAAsB,EAAE,SAAkB,EAAE,IAAuC;IAC7N,yBAAyB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AACvG,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAqB,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,MAAsB,EAAE,SAAkB,EAAE,IAAuC;IAC7P,yBAAyB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AACvH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,KAAc,EAAE,MAAsB,EAAE,SAAkB,EAAE,IAAuC;IAC1L,6BAA6B,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAC3F,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,MAAsB,EAAE,SAAkB,EAAE,IAAuC;IAC3N,6BAA6B,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAC5G,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,MAAsB,EAAE,SAAkB,EAAE,IAAuC;IAC3P,6BAA6B,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAC5H,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAmC,EAAE,WAAoC,EAAE,UAAoB,EAAE,WAAqB,EAAE,IAAgB;IACtK,mBAAmB,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;AAChF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,SAAiC,EAAE,QAAe,EAAE,IAAW,EAAE,IAAW,EAAE,IAAW,EAAE,OAAe,EAAE,SAAiC,EAAE,QAAe,EAAE,IAAW,EAAE,IAAW,EAAE,IAAW,EAAE,QAAiB,EAAE,SAAkB,EAAE,QAAiB;IAC7S,kBAAkB,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AACtJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,sBAAsB,CAAC,UAAkB,EAAE,WAAmB,EAAE,UAAoB,EAAE,WAAqB,EAAE,IAAgB;IACzI,wBAAwB,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;AACrF,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,cAAc,CAAC,MAAqB,EAAE,KAAY,EAAE,cAA8B,EAAE,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAa;IACjJ,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACzE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,cAAc,CAAC,MAAqB,EAAE,KAAY,EAAE,cAA8B,EAAE,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAe,EAAE,MAAa;IAClK,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACjF,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAqB,EAAE,KAAY,EAAE,OAAc,EAAE,CAAQ,EAAE,CAAQ,EAAE,KAAc;IACrH,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAqB,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAe;IACtJ,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAqB,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,OAAc,EAAE,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAe;IACtK,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACvF,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,CAAQ,EAAE,CAAQ,EAAE,KAAc;IACnH,uBAAuB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAe;IACpJ,uBAAuB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACnF,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,OAAc,EAAE,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAe;IACpK,uBAAuB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC5F,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAAC,CAAU;IACpC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACzB,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,CAAU;IACzC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,oBAAoB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC9B,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa;IACzB,OAAO,eAAe,EAAY,CAAC;AACvC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CAAC,CAAU;IAC7C,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,wBAAwB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,MAAmB,EAAE,CAAU;IACzD,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IACjC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,CAAU;IAC1C,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAAC,CAAU;IACrC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC1B,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,IAAgB;IACzC,OAAO,cAAc,CAAC,IAAI,CAAW,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAgB,EAAE,KAAc,EAAE,OAAiB;IACpF,OAAO,sBAAsB,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAW,CAAC;AAClE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAC,MAAqB,EAAE,CAAU;IAC5D,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,wBAAwB,CAAC,CAAU;IAC/C,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,0BAA0B,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,CAAU;IACzC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,oBAAoB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC9B,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAkB;IACvC,UAAU,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAmB,EAAE,IAAe,EAAE,QAAuB,EAAE,KAAc,EAAE,GAA2B,EAAE,OAAgB;IAC5J,qBAAqB,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAmB,EAAE,IAAe,EAAE,EAAU,EAAE,QAAuB,EAAE,MAAe,EAAE,GAAW;IACtI,oBAAoB,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,CAAU,EAAE,OAA+B;IACrE,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,CAAU,EAAE,YAAoC;IAC/E,oBAAoB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe;IACzC,eAAe,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,sBAAsB,CAAC,CAAU,EAAE,SAAiC;IAChF,wBAAwB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,CAAU,EAAE,GAA2B;IACjE,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CAAC,CAAU,EAAE,aAAqC;IACjF,qBAAqB,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc,EAAE,QAAgC;IAC3E,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,MAAc;IACvC,cAAc,CAAC,MAAM,CAAC,CAAC;AAC3B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACnC,YAAY,CAAC,IAAI,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,CAAU,EAAE,QAAgC;IACvE,gBAAgB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,wBAAwB,CAAC,CAAU,EAAE,GAA2B;IAC5E,0BAA0B,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,CAAU,EAAE,MAA8B;IACzE,oBAAoB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,IAAmB;IACzC,WAAW,CAAC,IAAI,CAAC,CAAC;AACtB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,IAAa;IACnC,WAAW,CAAC,IAAI,CAAC,CAAC;AACtB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CAAC,CAAW,EAAE,CAAW;IAC/C,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,KAAc,EAAE,CAA4B;IACxF,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,CAAU,EAAE,CAAU;IAC9C,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,CAAW,EAAE,CAAW;IACrE,mBAAmB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,OAAe,EAAE,MAAc;IACxD,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,OAAO,CAAC,GAAc;IAClC,SAAS,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAiB,EAAE,KAAa;IACrD,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAa,EAAE,KAAa;IACjE,0BAA0B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAa;IAClD,0BAA0B,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkB,EAAE,UAAkB,EAAE,UAAkB;IACtF,iBAAiB,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAkB;IACtD,yBAAyB,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,IAAmB,EAAE,KAAY,EAAE,KAAc;IACxE,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAmB,EAAE,QAAkB;IACtE,oBAAoB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAmB,EAAE,KAAY,EAAE,KAAc,EAAE,aAAsB;IACzG,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,+BAA+B,CAAC,IAAmB,EAAE,KAAY,EAAE,KAAc,EAAE,aAAsB,EAAE,YAAoB;IAC3I,iCAAiC,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;AACvF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,GAAmB;IAC1C,YAAY,CAAC,GAAG,CAAC,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,CAAU,EAAE,IAAoC;IACxE,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,YAAY,CAAC,IAAmB,EAAE,KAAc,EAAE,IAAsB,EAAE,OAAiB;IACvG,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAmB,EAAE,KAAc,EAAE,IAAsB,EAAE,OAAiB,EAAE,UAAiB;IACpI,wBAAwB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAmB,EAAE,IAAsB,EAAE,QAAkB;IAChG,sBAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAmB,EAAE,KAAc,EAAE,IAAsB,EAAE,OAAiB,EAAE,aAAsB;IACxI,uBAAuB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iCAAiC,CAAC,IAAmB,EAAE,KAAc,EAAE,IAAsB,EAAE,OAAiB,EAAE,aAAsB,EAAE,YAAoB;IAC1K,mCAAmC,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;AACjG,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,+BAA+B,CAAC,IAAmB,EAAE,KAAc,EAAE,IAAsB,EAAE,OAAiB,EAAE,aAAsB,EAAE,UAAiB;IACrK,iCAAiC,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,2CAA2C,CAAC,IAAmB,EAAE,KAAc,EAAE,IAAsB,EAAE,OAAiB,EAAE,aAAsB,EAAE,UAAiB,EAAE,YAAoB;IACvM,6CAA6C,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;AACvH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAmB,EAAE,KAAa,EAAE,GAAW,EAAE,KAAc,EAAE,IAAsB,EAAE,OAAiB;IACxI,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,2BAA2B,CAAC,IAAmB,EAAE,KAAa,EAAE,GAAW,EAAE,KAAc,EAAE,IAAsB,EAAE,OAAiB,EAAE,UAAiB;IACrK,6BAA6B,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;AACtF,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAmB,EAAE,EAAU;IACjE,uBAAuB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAAmB,EAAE,EAAU,EAAE,aAAsB;IAClG,gCAAgC,CAAC,IAAI,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,2BAA2B,CAAC,IAAmB,EAAE,EAAU,EAAE,MAAc;IACvF,6BAA6B,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oCAAoC,CAAC,IAAmB,EAAE,EAAU,EAAE,MAAc,EAAE,aAAsB;IACxH,sCAAsC,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,MAAM,CAAC,GAAc;IACjC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAClB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,OAAO,CAAC,MAAiB,EAAE,KAAa;IACpD,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAa,EAAE,KAAa;IAChE,yBAAyB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAa;IACjD,yBAAyB,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB;IAChC,sBAAsB,EAAE,CAAC;AAC7B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAmB;IACxC,UAAU,CAAC,MAAM,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,MAAmB,EAAE,KAAa;IAC9D,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB;IAChC,sBAAsB,EAAE,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,SAAS,CAAC,SAAwB,EAAE,KAAwB;IACxE,OAAO,WAAW,CAAC,SAAS,EAAE,KAAK,CAAW,CAAC;AACnD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,MAAM;IAClB,QAAQ,EAAE,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,KAAK;IACjB,OAAO,EAAE,CAAC;AACd,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAuB,EAAE,MAAgB,EAAE,MAAkB;IAChG,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,2BAA2B,CAAC,MAAc,EAAE,MAAgB,EAAE,MAAkB;IAC5F,6BAA6B,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAyB,EAAE,KAA+B,EAAE,KAAY;IAC1G,uBAAuB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAyB,EAAE,UAAiC,EAAE,kBAAsC,EAAE,YAAoB;IAC9J,yBAAyB,CAAC,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;AACpF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAyB,EAAE,UAAiC,EAAE,OAAe,EAAE,KAAY;IAC1H,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAyB,EAAE,UAAiC,EAAE,SAAwB,EAAE,OAAe,EAAE,KAAY;IACtJ,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAyB,EAAE,UAAiC,EAAE,SAAwB,EAAE,OAAe,EAAE,KAAY;IACtJ,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAyB,EAAE,UAAiC,EAAE,SAAwB,EAAE,OAAe,EAAE,KAAY,EAAE,OAAc;IACtK,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACnF,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAyB,EAAE,UAAiC,EAAE,OAAe,EAAE,KAAY,EAAE,KAAY;IAC7I,yBAAyB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,IAAwB;IAC9C,WAAW,CAAC,IAAI,CAAC,CAAC;AACtB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CAAC,CAAU;IACjC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACtB,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAAC,MAAqB;IAChD,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACjD,uBAAuB,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,CAAU;IACtC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3B,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,CAAU;IAC1C,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,CAAU;IACjC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACtB,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,CAAU;IACvC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC5B,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,KAAc;IACtC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC3B,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAC,CAAU;IAClC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACvB,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CAAC,CAAU;IAC5C,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,uBAAuB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACjC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,CAAU;IACtC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3B,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe,EAAE,KAAa,EAAE,OAAgB;IAC5E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/K,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACzD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,UAAsB,EAAE,KAAa,EAAE,OAAgB;IAC5G,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAChK,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACzD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,8BAA8B,CAAC,OAAe,EAAE,UAAsB,EAAE,KAAa,EAAE,OAAgB;IACnH,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kCAAkC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACvK,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACzD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,KAAa,EAAE,OAAgB;IAC7E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAChL,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACzD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,iBAAyB,EAAE,OAAgB;IAClG,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACxJ,OAAO,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACzD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,YAAoB,EAAE,OAAgB;IACxF,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACnJ,OAAO,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,QAAiB;IACjE,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5D,oBAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,IAAY;IAC3D,OAAO,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAU,CAAC;AACvD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAuB,EAAE,KAAqB;IACjF,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,wBAAwB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9C,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAuB,EAAE,KAAqB;IAC/E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAuB,EAAE,MAAgB,EAAE,IAAgB,EAAE,IAAuC;IACjI,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAqB,EAAE,KAAY,EAAE,GAAsC;IAC7G,uBAAuB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAgB,EAAE,MAAyC;IAChI,2BAA2B,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,4BAA4B,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,OAAgB,EAAE,MAAyC;IACpO,8BAA8B,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACrH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAa,EAAE,OAAgB;IAC9D,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IAClS,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3E,OAAO,CAAC,MAAgB,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACtG,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ;IACpB,OAAO,UAAU,EAAe,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,IAAY;IAC1D,OAAO,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAU,CAAC;AACtD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,IAAY;IAC7D,OAAO,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAU,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,mCAAmC,CAAC,MAAyB,EAAE,UAAiC,EAAE,KAAyC;IACvJ,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,qCAAqC,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACvE,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CAAC,MAAyB,EAAE,KAAyC;IAC1G,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,2BAA2B,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACjD,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB;IAClC,OAAO,wBAAwB,EAAyB,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAqB,EAAE,cAA8B,EAAE,KAA0B,EAAE,KAAc;IACnI,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,uBAAuB,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACpE,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAqB,EAAE,cAA8B,EAAE,KAA0B,EAAE,KAAc;IACjI,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,qBAAqB,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAClE,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,2BAA2B,CAAC,MAAc,EAAE,KAAqB;IAC7E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,6BAA6B,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACnD,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,yBAAyB,CAAC,MAAc,EAAE,KAAqB;IAC3E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,2BAA2B,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACjD,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAc,EAAE,MAAgB,EAAE,IAAgB,EAAE,IAAuC;IAC7H,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wCAAwC,CAAC,WAAmB,EAAE,UAAiC,EAAE,KAAyC;IACtJ,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,0CAA0C,CAAC,WAAW,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACjF,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,8BAA8B,CAAC,WAAmB,EAAE,KAA8B;IAC9F,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,gCAAgC,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC3D,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,+BAA+B,CAAC,YAAoB,EAAE,KAAgC;IAClG,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,iCAAiC,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC7D,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAqB,EAAE,GAAU,EAAE,OAAgB,EAAE,MAAyC;IACjI,wBAAwB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,YAAY,CAAC,MAAqB,EAAE,KAAY,EAAE,MAAmB,EAAE,IAAe,EAAE,OAAgB,EAAE,MAAyC;IAC/J,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,cAAc,CAAC,UAA4B,EAAE,IAAY,EAAE,OAAgB;IACvF,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7I,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC/C,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAsC,EAAE,OAAgB;IACtF,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACtI,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAClC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,OAAgB,EAAE,MAAyC;IACzG,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACzD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,YAAY,CAAC,OAAe,EAAE,KAAyB;IACnE,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACrC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAgB,EAAE,KAA4B;IAC/E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9C,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,gBAAkC,EAAE,IAAY;IACrG,OAAO,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAW,CAAC;AAChF,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,gBAAkC,EAAE,KAAa,EAAE,SAAkB,EAAE,KAA8C,EAAE,KAAc;IACvL,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9F,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAAe,EAAE,gBAAkC,EAAE,IAAY;IACxG,OAAO,4BAA4B,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAU,CAAC;AAClF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,+BAA+B,CAAC,OAAe,EAAE,gBAAkC,EAAE,IAAY;IAC7G,OAAO,iCAAiC,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAU,CAAC;AACvF,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAe,EAAE,gBAAkC,EAAE,KAAa,EAAE,OAAgB;IACvH,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/J,OAAO,CAAC,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC/D,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,UAAsB,EAAE,KAAwB;IAC/F,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACtD,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CAAC,EAAU,EAAE,MAAc,EAAE,KAA+B,EAAE,MAAgB;IAClH,0BAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB,CAAC,EAAU,EAAE,MAAc,EAAE,KAA+B,EAAE,MAAgB;IAChH,wBAAwB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,EAAU,EAAE,MAAc,EAAE,KAA+B,EAAE,MAAgB;IACnH,2BAA2B,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAAC,EAAU,EAAE,MAAc,EAAE,KAA+B,EAAE,MAAgB;IACjH,yBAAyB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,MAAmB,EAAE,KAAyB;IACrE,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAAU,EAAE,KAA+B;IAC1E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,oBAAoB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACtC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAU,EAAE,KAA+B;IACxE,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,kBAAkB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAU,EAAE,KAA+B;IAC3E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,qBAAqB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAU,EAAE,KAA+B;IACzE,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,mBAAmB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACrC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,0BAA0B,CAAC,MAA0B,EAAE,KAAgC;IACnG,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,4BAA4B,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAClD,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,KAA0B;IAClE,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACnC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,wBAAwB,CAAC,UAAsB,EAAE,aAA4B;IACzF,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,0BAA0B,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAClE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,OAAgB;IAC5D,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACpI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CAAC,IAAgB;IACtC,OAAO,WAAW,CAAC,IAAI,CAAW,CAAC;AACvC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,IAAgB,EAAE,KAAa;IACtD,OAAO,YAAY,CAAC,IAAI,EAAE,KAAK,CAAW,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,UAAsB,EAAE,IAAY;IACpF,OAAO,oBAAoB,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAW,CAAC;AACrE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,4BAA4B,CAAC,OAAe,EAAE,UAAsB,EAAE,IAAY;IAC9F,OAAO,8BAA8B,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAU,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,KAAwB,EAAE,KAAc;IAC5E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,WAAW,CAAC,MAAqB,EAAE,KAAY,EAAE,MAAmB,EAAE,IAAe,EAAE,MAAyC;IAC5I,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe,EAAE,KAAY,EAAE,MAAmB,EAAE,IAAe,EAAE,OAAgB,EAAE,MAAyC;IAC5J,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAAe,EAAE,KAAY,EAAE,KAA0B;IAChG,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,4BAA4B,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAAe,EAAE,KAAY,EAAE,KAA0B;IAChG,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,4BAA4B,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe,EAAE,KAA0B;IAC7E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,uBAAuB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9C,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAe,EAAE,KAA0B;IAC9E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,wBAAwB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/C,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,KAA0B;IAC/E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,yBAAyB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAChD,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe,EAAE,KAA0B;IAC7E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,uBAAuB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9C,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,MAAmB,EAAE,IAAe,EAAE,OAAgB,EAAE,MAAyC;IAChQ,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACzH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAW,EAAE,KAA6B,EAAE,KAAa;IAC5F,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,wBAAwB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAClD,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CAAC,GAAW,EAAE,KAA6B,EAAE,KAAa;IAC9F,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,0BAA0B,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACpD,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAW,EAAE,KAA6B;IAC7E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,wBAAwB,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC3C,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe,EAAE,KAAa,EAAE,OAAgB;IACxF,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC3L,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACzD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,gBAAwB;IAC1E,OAAO,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,CAAW,CAAC;AACvE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,IAAY;IAC5D,OAAO,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAU,CAAC;AACxD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,uBAAuB,CAAC,UAAsB,EAAE,QAAe;IAC3E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,yBAAyB,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;IACtD,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAa,EAAE,KAAa,EAAE,KAAuB;IAC3F,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,2BAA2B,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAa,EAAE,KAAa,EAAE,KAAuB;IACzF,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,KAAuB;IACnE,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,KAA8B;IAC3E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,KAA8B;IAC3E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAa,EAAE,KAAuB;IACrE,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACzC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa,EAAE,KAAuB;IACtE,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC1B,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC1C,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,KAA8B;IAC3E,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,IAAI,CAAC,MAAkB,EAAE,IAAc;IACnD,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAc;IAC/C,sBAAsB,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAc,EAAE,MAAgB,EAAE,MAAkB;IACxF,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAyB,EAAE,cAAuB,EAAE,WAA4D;IAClJ,uBAAuB,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,8BAA8B,CAAC,WAAmB,EAAE,cAAuB,EAAE,WAAkD;IAC3I,gCAAgC,CAAC,WAAW,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iCAAiC,CAAC,WAAmB,EAAE,cAAuB,EAAE,WAAkD,EAAE,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAe;IACnM,mCAAmC,CAAC,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACvG,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAyB,EAAE,cAAuB,EAAE,WAA4D,EAAE,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAe;IAC1M,0BAA0B,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACzF,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,KAAY;IAC5D,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc;IAChK,uBAAuB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAc;IACnC,OAAQ,UAAU,CAAC,MAAM,CAAY,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CAAC,GAAc;IACpC,OAAQ,WAAW,CAAC,GAAG,CAAY,KAAK,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,MAAiB,EAAE,KAAa;IACvD,OAAQ,YAAY,CAAC,MAAM,EAAE,KAAK,CAAY,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,WAAmB;IAC7C,OAAQ,eAAe,CAAC,WAAW,CAAY,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CAAC,OAAe;IACrC,OAAQ,WAAW,CAAC,OAAO,CAAY,KAAK,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAC9C,OAAQ,mBAAmB,CAAC,QAAQ,CAAY,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,OAAO,CAAC,EAAU;IAC9B,OAAQ,SAAS,CAAC,EAAE,CAAY,KAAK,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAC,YAAoB;IAC/C,OAAQ,gBAAgB,CAAC,YAAY,CAAY,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAC,OAAe;IACrC,OAAQ,WAAW,CAAC,OAAO,CAAY,KAAK,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAc;IACnC,OAAQ,UAAU,CAAC,MAAM,CAAY,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,MAAM,CAAC,IAAY;IAC/B,OAAQ,QAAQ,CAAC,IAAI,CAAY,KAAK,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CAAC,OAAe;IACrC,OAAQ,WAAW,CAAC,OAAO,CAAY,KAAK,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAU;IAC1C,OAAQ,qBAAqB,CAAC,EAAE,CAAY,KAAK,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,KAAa;IACvC,OAAQ,eAAe,CAAC,KAAK,CAAY,KAAK,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,KAAc;IACpC,WAAW,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe;IACvC,aAAa,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,OAAO,CAAC,MAAe;IACnC,SAAS,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAC,MAAuB,EAAE,MAAuB;IACtE,OAAO,WAAW,CAAC,MAAM,EAAE,MAAM,CAAc,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,cAAc,CAAC,MAAuB,EAAE,MAAgB,EAAE,MAAkB,EAAE,MAA2B;IACrH,OAAO,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAc,CAAC;AACzE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,MAAuB;IAClE,OAAO,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAc,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,MAAgB,EAAE,MAAkB,EAAE,MAA2B;IACjH,OAAO,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAc,CAAC;AAC9E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,QAA2B;IACrD,eAAe,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAA2B;IAC7D,uBAAuB,CAAC,QAAQ,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC3C,kBAAkB,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,IAAmB,EAAE,KAA2B,EAAE,KAA6B,EAAE,SAAkB;IAC/H,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAmB,EAAE,QAAkB,EAAE,SAAkB,EAAE,MAAe;IAChH,yBAAyB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,4BAA4B,CAAC,IAAmB,EAAE,QAA2C,EAAE,SAAmB,EAAE,YAAqB,EAAE,MAAe;IACtK,8BAA8B,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;AACpF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAmB,EAAE,KAA6B,EAAE,IAAsB,EAAE,OAAmB,EAAE,SAAkB;IACjJ,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,2BAA2B,CAAC,IAAmB,EAAE,KAA6B,EAAE,IAAsB,EAAE,OAAmB,EAAE,SAAkB,EAAE,UAAgC;IAC7L,6BAA6B,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AACrF,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAmB,EAAE,IAAsB,EAAE,QAAkB,EAAE,SAAkB,EAAE,MAAe;IAC1I,2BAA2B,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AACzE,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAAmB,EAAE,IAAsB,EAAE,QAA2C,EAAE,SAAmB,EAAE,YAAqB,EAAE,MAAe;IAChM,gCAAgC,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;AAC5F,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,IAAgB,EAAE,IAAuC,EAAE,KAAqB;IAC5H,iBAAiB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,IAAgB,EAAE,IAAuC,EAAE,KAAwB;IAClI,oBAAoB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,MAAgB,EAAE,IAAgB,EAAE,IAAuC;IAC1H,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,0BAA0B,CAAC,WAAmB,EAAE,GAAgB;IAC5E,4BAA4B,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,2BAA2B,CAAC,WAAmB,EAAE,CAAU,EAAE,IAAiC;IAC1G,6BAA6B,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,0BAA0B,CAAC,WAAmB,EAAE,KAA+B,EAAE,KAAY;IACzG,4BAA4B,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,0BAA0B,CAAC,WAAmB,EAAE,GAAgB;IAC5E,4BAA4B,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,4BAA4B,CAAC,WAAmB,EAAE,UAAiC,EAAE,kBAAsC,EAAE,YAAoB;IAC7J,8BAA8B,CAAC,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;AAC9F,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAAC,WAAmB,EAAE,UAAiC,EAAE,OAAe,EAAE,KAAY;IACzH,yBAAyB,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,4BAA4B,CAAC,WAAmB,EAAE,UAAiC,EAAE,OAAe,EAAE,KAAY,EAAE,KAAY;IAC5I,8BAA8B,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACnF,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CAAC,YAAoB,EAAE,cAA8B,EAAE,KAAc,EAAE,MAAe;IAC1H,0BAA0B,CAAC,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,mCAAmC,CAAC,YAAoB,EAAE,OAAgB,EAAE,cAA8B,EAAE,KAAc,EAAE,MAAe;IACvJ,qCAAqC,CAAC,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAChG,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,WAAW,CAAC,UAA4B,EAAE,IAAY,EAAE,MAAe,EAAE,KAAa;IAClG,aAAa,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,GAAsC,EAAE,MAAe,EAAE,KAAa;IACjG,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAyB,EAAE,MAAgC;IACxF,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,KAAyB,EAAE,KAAY;IACnE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB;IAClC,wBAAwB,EAAE,CAAC;AAC/B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAC,KAA0B,EAAE,KAAc;IAClE,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAC,KAA0B,EAAE,KAAY;IAChE,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAA4B,EAAE,KAAc;IACxE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAA4B,EAAE,MAAgC;IAC3F,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAA4B,EAAE,KAAY;IACtE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAA4B,EAAE,MAA4B;IACvF,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,IAAa;IACnC,WAAW,CAAC,IAAI,CAAC,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,IAAkB,EAAE,IAAiB;IAC7D,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,MAAe,EAAE,KAAc;IACzD,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAe,EAAE,KAAc,EAAE,KAAc;IAC9E,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa;IACzB,eAAe,EAAE,CAAC;AACtB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAa;IAC/C,uBAAuB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe,EAAE,YAAoB,EAAE,MAAyC,EAAE,MAAe;IAC3H,eAAe,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,KAA4B,EAAE,KAAY;IACzF,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAY;IAC3E,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAAgC;IAChH,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAW;IAC1E,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA+B;IAC/G,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAS;IACxE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA2B;IAC3G,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAU;IAC1E,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA6B;IAC9G,oBAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAY,EAAE,EAAY;IACzF,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAAgC;IAChH,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAW,EAAE,EAAW;IACvF,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA+B;IAC/G,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAS,EAAE,EAAS;IACnF,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA2B;IAC3G,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAU,EAAE,EAAU;IACtF,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA6B;IAC9G,oBAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAY,EAAE,EAAY,EAAE,EAAY;IACvG,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAAgC;IAChH,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAW,EAAE,EAAW,EAAE,EAAW;IACpG,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA+B;IAC/G,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAS,EAAE,EAAS,EAAE,EAAS;IAC9F,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA2B;IAC3G,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU;IAClG,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA6B;IAC9G,oBAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAY,EAAE,EAAY,EAAE,EAAY,EAAE,EAAY;IACrH,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAAgC;IAChH,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAW,EAAE,EAAW,EAAE,EAAW,EAAE,EAAW;IACjH,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA+B;IAC/G,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAS,EAAE,EAAS,EAAE,EAAS,EAAE,EAAS;IACzG,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA2B;IAC3G,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAe,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU;IAC9G,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,KAA6B;IAC9G,oBAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAC1I,yBAAyB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACzI,yBAAyB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAC5I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IAC3I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAC5I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IAC3I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAC1I,yBAAyB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACzI,yBAAyB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAC5I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IAC3I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAC5I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IAC3I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAC1I,yBAAyB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACzI,yBAAyB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAC5I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IAC3I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAC5I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IAC3I,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,IAAyB;IACrD,iBAAiB,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,cAAc,CAAC,MAAmB,EAAE,EAAU,EAAE,MAAe,EAAE,OAAe;IAC5F,gBAAgB,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,EAAU,EAAE,MAA0B;IAC/D,cAAc,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,GAAmB;IAC1C,YAAY,CAAC,GAAG,CAAC,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,WAAW,CAAC,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAe,EAAE,MAAmB,EAAE,IAAe,EAAE,OAAgB,EAAE,IAAuC;IAC5K,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,UAAU,CAAC,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAe,EAAE,MAAmB,EAAE,IAAe,EAAE,MAAyC;IAC3J,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB;IACjC,uBAAuB,EAAE,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAA0B,EAAE,cAA8B,EAAE,KAAc,EAAE,MAAe;IAC3H,qBAAqB,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,8BAA8B,CAAC,MAA0B,EAAE,OAAgB,EAAE,cAA8B,EAAE,KAAc,EAAE,MAAe;IACxJ,gCAAgC,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACrF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB;IACnC,yBAAyB,EAAE,CAAC;AAChC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc,EAAE,MAAe;IAC1D,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,UAAkB,EAAE,IAAgB;IAC5D,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,KAAwB,EAAE,KAAc;IACvF,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,KAAwB,EAAE,KAA+B;IACzG,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,KAAwB,EAAE,KAAY;IACrF,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,KAAwB,EAAE,KAA2B;IACtG,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,KAAwB,EAAE,KAA6B;IACzG,sBAAsB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,KAAwB,EAAE,KAA2B;IACrG,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,OAAO,CAAC,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAe;IACvE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,KAAa,EAAE,KAAc,EAAE,CAAuB;IAChF,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,IAAW,EAAE,MAAa,EAAE,KAAc,EAAE,MAAe;IACrG,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAuB;IAClE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc,EAAE,OAA+B,EAAE,YAAgC,EAAE,MAAyC,EAAE,MAAe;IACtK,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,MAAc,EAAE,KAAc,EAAE,MAAgB,EAAE,MAA4B;IACvG,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,iBAAyB,EAAE,mBAA2B;IAC7G,2BAA2B,CAAC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,CAAC;AACjF,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAc,EAAE,WAAmB,EAAE,0BAAkC,EAAE,cAAsC,EAAE,cAAsC;IACpL,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,0BAA0B,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;AACxG,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,IAAqB,EAAE,GAAU,EAAE,IAAY;IACvE,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAkB,EAAE,IAAqB,EAAE,GAAU,EAAE,IAAY;IACnG,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACpC,aAAa,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAkB,EAAE,IAAY;IAChE,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAC,IAAe,EAAE,KAAgB,EAAE,KAAgB;IACzE,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAkB,EAAE,KAAgB,EAAE,MAAiB,EAAE,MAAiB;IACxG,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAC,MAAqB,EAAE,cAAmC,EAAE,MAAc;IAChG,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,cAAc,CAAC,MAAqB,EAAE,cAAmC,EAAE,MAAc,EAAE,MAAgB,EAAE,IAAgB;IACzI,gBAAgB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,UAAU,CAAC,MAAqB,EAAE,KAAY,EAAE,cAAqB,EAAE,KAAc,EAAE,MAAa,EAAE,MAAmB,EAAE,IAAe,EAAE,MAAyC;IACjM,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACrF,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,UAAU,CAAC,MAAqB,EAAE,KAAY,EAAE,cAAqB,EAAE,KAAc,EAAE,MAAe,EAAE,MAAa,EAAE,MAAmB,EAAE,IAAe,EAAE,MAAyC;IAClN,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAqB,EAAE,OAAgB,EAAE,cAA8B,EAAE,KAAc,EAAE,MAAe,EAAE,oBAA6B;IACzK,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC;AAClG,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,UAAU,CAAC,MAAqB,EAAE,KAAY,EAAE,cAAqB,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,MAAa,EAAE,MAAmB,EAAE,IAAe,EAAE,MAAyC;IAClO,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACpG,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAqB,EAAE,OAAgB,EAAE,cAA8B,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,oBAA6B;IACzL,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC;AACzG,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,MAAqB,EAAE,KAA2B,EAAE,KAAc;IAC5F,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,MAAqB,EAAE,KAA2B,EAAE,MAAgC;IAC/G,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,MAAqB,EAAE,KAA2B,EAAE,KAAY;IAC1F,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,MAAqB,EAAE,KAA2B,EAAE,MAA4B;IAC5G,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAqB,EAAE,KAA2B,EAAE,MAA8B;IAC/G,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,MAAqB,EAAE,KAA2B,EAAE,MAA4B;IAC3G,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,YAAY,CAAC,MAAqB,EAAE,MAAe,EAAE,cAAmC,EAAE,KAAc;IACpH,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,YAAY,CAAC,MAAqB,EAAE,MAAe,EAAE,cAAmC,EAAE,KAAc,EAAE,MAAe;IACrI,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAqB,EAAE,OAAgB,EAAE,cAAmC,EAAE,KAAc,EAAE,MAAe,EAAE,oBAA6B;IAChL,yBAAyB,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC;AACpG,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,YAAY,CAAC,MAAqB,EAAE,MAAe,EAAE,cAAmC,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc;IACrJ,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AACzE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAqB,EAAE,OAAgB,EAAE,cAAmC,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,oBAA6B;IAChM,yBAAyB,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC;AAC3G,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,aAAa,CAAC,MAAqB,EAAE,KAAY,EAAE,OAAc,EAAE,KAAc,EAAE,MAAmB,EAAE,IAAe,EAAE,MAAyC;IAC9K,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACzE,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,aAAa,CAAC,MAAqB,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,MAAmB,EAAE,IAAe,EAAE,MAAyC;IAC/M,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAC1F,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,aAAa,CAAC,MAAqB,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,MAAmB,EAAE,IAAe,EAAE,MAAyC;IAC/O,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAC1G,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc;IAC1B,gBAAgB,EAAE,CAAC;AACvB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe,EAAE,cAAmC,EAAE,MAAc;IAC9F,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,cAAmC,EAAE,MAAc,EAAE,MAAgB,EAAE,IAAgB;IACvI,oBAAoB,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,KAA2B,EAAE,KAAc;IAC1F,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,KAA2B,EAAE,KAA+B;IAC5G,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,KAA2B,EAAE,KAAY;IACxF,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,KAA2B,EAAE,MAA4B;IAC1G,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,KAA2B,EAAE,MAA8B;IAC7G,sBAAsB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,KAA2B,EAAE,KAA2B;IACxG,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,MAAe,EAAE,cAAmC,EAAE,KAAc;IAClH,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,MAAe,EAAE,cAAmC,EAAE,KAAc,EAAE,MAAe;IACnI,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe,EAAE,OAAgB,EAAE,cAAmC,EAAE,KAAc,EAAE,MAAe,EAAE,oBAA6B;IAC9K,6BAA6B,CAAC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC;AACzG,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,MAAe,EAAE,cAAmC,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc;IACnJ,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe,EAAE,OAAgB,EAAE,cAAmC,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,oBAA6B;IAC9L,6BAA6B,CAAC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC;AAChH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,KAAc,EAAE,MAAmB,EAAE,IAAe,EAAE,MAAyC;IAC5K,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,MAAmB,EAAE,IAAe,EAAE,MAAyC;IAC7M,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAC/F,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAc,EAAE,OAAc,EAAE,OAAc,EAAE,KAAc,EAAE,MAAe,EAAE,KAAc,EAAE,MAAmB,EAAE,IAAe,EAAE,MAAyC;IAC7O,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAC/G,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe,EAAE,MAAqB,EAAE,WAAmB,EAAE,cAAmC,EAAE,QAAgB,EAAE,SAAiB,EAAE,QAAgB,EAAE,SAAiB;IAClM,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAC1G,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,2BAA2B,CAAC,GAAW,EAAE,KAAa,EAAE,MAAc;IAClF,6BAA6B,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,4BAA4B,CAAC,GAAW,EAAE,KAAa,EAAE,MAAc,EAAE,MAAgB,EAAE,IAAgB;IACvH,8BAA8B,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,KAAc,EAAE,QAAkB,EAAE,UAAuC;IAClI,2BAA2B,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,CAAW;IAClD,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAAgC;IACxF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,EAAW;IAClD,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAA+B;IACvF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,EAAS;IAChD,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAA2B;IACnF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,EAAU;IAClD,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,QAAe,EAAE,KAAc,EAAE,KAA6B;IACtF,aAAa,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,CAAW,EAAE,CAAW;IAC/D,WAAW,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAAgC;IACxF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,EAAW,EAAE,EAAW;IAC/D,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAA+B;IACvF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,EAAS,EAAE,EAAS;IAC3D,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAA2B;IACnF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,EAAU,EAAE,EAAU;IAC9D,YAAY,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,QAAe,EAAE,KAAc,EAAE,KAA6B;IACtF,aAAa,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,CAAW,EAAE,CAAW,EAAE,CAAW;IAC5E,WAAW,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAAgC;IACxF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,EAAW,EAAE,EAAW,EAAE,EAAW;IAC5E,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAA+B;IACvF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,EAAS,EAAE,EAAS,EAAE,EAAS;IACtE,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAA2B;IACnF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU;IAC1E,YAAY,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,QAAe,EAAE,KAAc,EAAE,KAA6B;IACtF,aAAa,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,CAAW,EAAE,CAAW,EAAE,CAAW,EAAE,CAAW;IACzF,WAAW,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAAgC;IACxF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,EAAW,EAAE,EAAW,EAAE,EAAW,EAAE,EAAW;IACzF,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAA+B;IACvF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,SAAS,CAAC,QAAe,EAAE,EAAS,EAAE,EAAS,EAAE,EAAS,EAAE,EAAS;IACjF,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,KAAc,EAAE,KAA2B;IACnF,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,UAAU,CAAC,QAAe,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU;IACtF,YAAY,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,QAAe,EAAE,KAAc,EAAE,KAA6B;IACtF,aAAa,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,iBAAyB,EAAE,mBAA2B;IACvG,qBAAqB,CAAC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,CAAC;AAC3E,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAClH,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACjH,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IACpH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACnH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IACpH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACnH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAClH,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACjH,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IACpH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACnH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IACpH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACnH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IAClH,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACjH,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IACpH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACnH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAAgC;IACpH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAe,EAAE,KAAc,EAAE,SAAkB,EAAE,KAA+B;IACnH,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CAAC,UAAsB,EAAE,KAAc,EAAE,OAA+B;IACzG,uBAAuB,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAC,MAAuB;IAC/C,OAAQ,aAAa,CAAC,MAAM,CAAY,KAAK,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC3C,OAAQ,kBAAkB,CAAC,MAAM,CAAY,KAAK,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACtC,YAAY,CAAC,OAAO,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,MAA2B,EAAE,OAAe;IAC3F,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe;IAC3C,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAgB;IACpD,yBAAyB,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAa,EAAE,WAAmB,EAAE,YAAoB;IAC7F,0BAA0B,CAAC,KAAK,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAa,EAAE,WAAmB,EAAE,IAAW,EAAE,IAAsB,EAAE,UAAmB,EAAE,cAAsB;IACxJ,yBAAyB,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;AAC1F,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAa,EAAE,WAAmB,EAAE,IAAW,EAAE,IAAuB,EAAE,cAAsB;IACrI,0BAA0B,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAa,EAAE,WAAmB,EAAE,IAAW,EAAE,IAAuB,EAAE,cAAsB;IACrI,0BAA0B,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAa,EAAE,YAAoB,EAAE,OAAe;IAC1F,2BAA2B,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAa,EAAE,MAAc;IAClE,0BAA0B,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAa,EAAE,YAAoB,EAAE,MAAc,EAAE,MAAgB,EAAE,MAAe;IAC1H,yBAAyB,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC3E,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAa,EAAE,KAAa,EAAE,KAAc,EAAE,OAA+B,EAAE,OAAmB,EAAE,OAA+B;IACxK,0BAA0B,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAW;IACrD,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAA4B;IACvE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAU;IACpD,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAA2B;IACtE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAU;IACpD,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAyB;IACpE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAW,EAAE,CAAW;IAClE,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAA4B;IACvE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAU,EAAE,CAAU;IAChE,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAA2B;IACtE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAU,EAAE,CAAU;IAChE,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAyB;IACpE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAW,EAAE,CAAW,EAAE,CAAW;IAC/E,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAA4B;IACvE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU;IAC5E,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAA2B;IACtE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU;IAC5E,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAyB;IACpE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAuB;IAClE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAW,EAAE,CAAW,EAAE,CAAW,EAAE,CAAW;IAC5F,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAA4B;IACvE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU;IACxF,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAA2B;IACtE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAuB;IAClE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAuB;IACnE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAuB;IACnE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAyB;IACrE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU;IAC1F,kBAAkB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,CAAyB;IACtE,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,CAAyB;IACtE,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,CAA2B;IACxE,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU;IACxF,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAyB;IACpE,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAyB;IACrE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAyB;IACrE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAA2B;IACvE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAAmB,EAAE,YAAoB;IACzE,qBAAqB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa,EAAE,OAAe;IAC9D,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,WAAmB,EAAE,IAAW,EAAE,IAAsB,EAAE,UAAmB,EAAE,cAAsB;IACpI,oBAAoB,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAQ;IACnD,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAuB;IACnE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAS;IACrD,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,CAAyB;IACtE,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAQ,EAAE,CAAQ;IAC7D,iBAAiB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAuB;IACnE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAS,EAAE,CAAS;IAChE,kBAAkB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,CAAyB;IACtE,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAQ,EAAE,CAAQ,EAAE,CAAQ;IACvE,iBAAiB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAuB;IACnE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;IAC3E,kBAAkB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,CAAyB;IACtE,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAuB;IACnE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAQ,EAAE,CAAQ,EAAE,CAAQ,EAAE,CAAQ;IACjF,iBAAiB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAuB;IACnE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAyB;IACrE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,CAAyB;IACtE,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;IACtF,kBAAkB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,CAAyB;IACtE,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,CAA2B;IACxE,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAAmB,EAAE,IAAW,EAAE,IAAuB,EAAE,cAAsB;IACjH,qBAAqB,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAa,EAAE,IAAW,EAAE,IAAuB,EAAE,MAAe,EAAE,OAAiB;IACxH,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAW;IACtD,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAA4B;IACxE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAW,EAAE,CAAW;IACnE,iBAAiB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAA4B;IACxE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAW,EAAE,CAAW,EAAE,CAAW;IAChF,iBAAiB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAA4B;IACxE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,CAAW,EAAE,CAAW,EAAE,CAAW,EAAE,CAAW;IAC7F,iBAAiB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAA4B;IACxE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAAmB,EAAE,IAAW,EAAE,IAAuB,EAAE,cAAsB;IACjH,qBAAqB,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAa,EAAE,IAAW,EAAE,IAAuB,EAAE,MAAe,EAAE,OAAiB;IACxH,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,IAA6B,EAAE,UAAmB,EAAE,KAAa;IAC7G,kBAAkB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,IAA6B,EAAE,UAAmB,EAAE,KAA6B;IAC9H,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,IAA6B,EAAE,UAAmB,EAAE,KAAa;IAC7G,kBAAkB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,IAA6B,EAAE,UAAmB,EAAE,KAA6B;IAC9H,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,IAA6B,EAAE,UAAmB,EAAE,KAAa;IAC7G,kBAAkB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,IAA6B,EAAE,UAAmB,EAAE,KAA6B;IAC9H,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,IAA6B,EAAE,UAAmB,EAAE,KAAa;IAC7G,kBAAkB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,IAA6B,EAAE,UAAmB,EAAE,KAA6B;IAC9H,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa,EAAE,IAAW,EAAE,IAA6B,EAAE,UAAmB,EAAE,MAAe,EAAE,OAAiB;IAClJ,qBAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,oBAAoB,CAAC,YAAoB,EAAE,OAAe;IACtE,sBAAsB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAQ,EAAE,CAAQ,EAAE,KAAc,EAAE,MAAe;IACxE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,KAAc,EAAE,CAA2B;IACrF,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU,EAAE,CAAU;IAC1F,kBAAkB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,CAA2B;IACxE,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,KAAwB,EAAE,OAAiB;IAC9E,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,YAAY;IACxB,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,qBAAqB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC9B,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB;IAC7B,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,0BAA0B,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACnC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB;IACjC,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,8BAA8B,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACvC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,MAAmB;IAC3C,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,qBAAqB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IACtC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB;IAC9B,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,2BAA2B,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACpC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa;IACzB,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,sBAAsB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC/B,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAAC,MAAqB;IAC/C,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,sBAAsB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IACvC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,uBAAuB;IACnC,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,gCAAgC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB;IAC7B,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,0BAA0B,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACnC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACrC,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC1C,oBAAoB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAC9C,wBAAwB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACpC,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC3C,qBAAqB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACtC,gBAAgB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACtC,gBAAgB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAChD,0BAA0B,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC1C,oBAAoB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS;IACrB,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,kBAAkB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC3B,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc;IAC1B,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,uBAAuB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAChC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB;IAC9B,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,2BAA2B,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACpC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ;IACpB,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,kBAAkB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC3B,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe;IAC3B,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,wBAAwB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACjC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU;IACtB,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,mBAAmB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC5B,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,UAAU;IACtB,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,mBAAmB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC5B,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB;IAChC,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,6BAA6B,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACtC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc;IAC1B,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzB,uBAAuB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAChC,OAAO,GAAG,CAAC,KAAK,CAAC;AACrB,CAAC;AAED,wEAAwE;AACxE,MAAM,CAAC,MAAM,GAAG,GAAG,YAAY,CAAC;AAEhC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3E,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnF,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvG,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/E,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvG,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7F,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErH,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/E,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErH,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3J,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjJ,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzF,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5I,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/G,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvF,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3F,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjF,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjF,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzF,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/E,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7G,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnJ,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvG,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3E,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvF,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjH,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7E,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzF,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7H,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjK,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/L,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElG,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExG,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvG,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/F,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnH,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/E,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3D,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExG,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExG,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/I,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzG,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvG,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtE,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExE,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjI,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzJ,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtI,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtI,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpI,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvI,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExE,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9K,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/G,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjF,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjH,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3E,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjJ,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1J,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnK,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvJ,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzK,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3L,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/J,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjL,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnM,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElN,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElI,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpI,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7I,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhI,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElJ,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3J,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExI,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1J,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnK,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5G,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtH,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAErE,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9H,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtH,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3E,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnI,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElI,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtH,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjE,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElJ,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElJ,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7F,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvG,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3E,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/G,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7F,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzE,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjF,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnE,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpE,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjF,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnF,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzG,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnF,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/D,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3E,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3G,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9F,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvF,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElH,MAAM,iCAAiC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mCAAmC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErE,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzF,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnI,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7G,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjI,MAAM,mCAAmC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qCAAqC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnK,MAAM,iCAAiC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mCAAmC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9J,MAAM,6CAA6C,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+CAA+C,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhM,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpI,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjK,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,gCAAgC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kCAAkC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhI,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3H,MAAM,sCAAsC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wCAAwC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtJ,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7D,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzE,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzG,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjF,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjE,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzF,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjF,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAE3F,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErD,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnD,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/G,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7H,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElH,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhI,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhI,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzI,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErI,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnE,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7E,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3F,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhH,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElH,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExG,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExG,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhJ,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAE1G,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7G,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/H,MAAM,8BAA8B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3L,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAExG,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAE9G,MAAM,qCAAqC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uCAAuC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3J,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7H,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvF,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzJ,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErJ,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjI,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7H,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,0CAA0C,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErK,MAAM,gCAAgC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kCAAkC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvI,MAAM,iCAAiC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mCAAmC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzI,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErI,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnH,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjI,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnM,MAAM,4BAA4B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAEtI,MAAM,iCAAiC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mCAAmC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAEhJ,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9H,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1H,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhI,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/G,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3G,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,4BAA4B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/H,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5J,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAEjF,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAE7F,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvH,MAAM,8BAA8B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAE1I,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnJ,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/H,MAAM,4BAA4B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1I,MAAM,4BAA4B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExI,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1H,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3L,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElI,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtI,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAE5G,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvI,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnI,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3G,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhI,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhI,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/G,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9H,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnE,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzF,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjH,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,gCAAgC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kCAAkC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzI,MAAM,mCAAmC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qCAAqC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnL,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjK,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9F,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1J,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAElE,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAEpE,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAEhF,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAE5E,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAEpE,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAEpF,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAEhE,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAE9E,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAEpE,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAElE,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAE1E,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAEpE,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAExF,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAE5E,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpE,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvE,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/D,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAE3F,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAEvH,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAErG,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAEjI,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3E,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3F,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElF,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3H,MAAM,8BAA8B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9I,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3I,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjL,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzI,MAAM,gCAAgC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kCAAkC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5J,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5G,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjH,MAAM,4BAA4B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/G,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnI,MAAM,4BAA4B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,4BAA4B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/G,MAAM,8BAA8B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvI,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,8BAA8B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/I,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7H,MAAM,qCAAqC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uCAAuC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5J,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhH,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5G,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExF,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErF,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElF,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhF,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1F,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExF,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpE,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjF,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvF,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5G,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnE,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3F,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExG,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1H,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5G,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1H,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3H,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3H,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1H,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1H,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtI,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtI,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9H,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpI,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1H,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhJ,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhJ,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhJ,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/E,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtH,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnF,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErE,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExI,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7H,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnF,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnH,MAAM,gCAAgC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kCAAkC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElJ,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvF,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzF,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjF,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExG,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnH,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjH,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzF,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjH,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnI,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvJ,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1F,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpH,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvE,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvF,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjH,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvF,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnH,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvI,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhJ,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3I,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzJ,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpJ,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3G,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9F,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3G,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzG,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/I,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExJ,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpI,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtJ,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExK,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErE,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3H,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExG,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnH,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7G,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtH,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvJ,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/H,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhK,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5I,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9J,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhL,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7I,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3H,MAAM,8BAA8B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/I,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErJ,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7E,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7E,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3E,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9E,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExF,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExF,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpF,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExF,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7F,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElG,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5G,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElG,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3G,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5H,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAExE,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAElF,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErE,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/E,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErH,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjJ,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExI,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExI,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3G,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErI,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3K,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExF,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExF,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtF,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/F,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE9G,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjH,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpG,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7H,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExF,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3F,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1G,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/G,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAElG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtG,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpH,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/H,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1F,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhH,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3H,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpH,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/H,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3H,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3H,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3H,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEhH,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3H,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAExI,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3F,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1G,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7H,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvG,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjG,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3G,MAAM,8BAA8B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnH,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3G,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7G,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnG,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7G,MAAM,gCAAgC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvH,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3G,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3F,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAErG,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7G,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE3F,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvG,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7F,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAE7F,MAAM,6BAA6B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEjH,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC","sourcesContent":["/**\n * GENERATED FILE: do not edit.\n *\n * Derived from the Khronos OpenGL registry (gl.xml).\n *\n * Copyright 2013-2026 The Khronos Group Inc.\n * SPDX-License-Identifier: Apache-2.0\n *\n * This file, gl.xml, is the OpenGL and OpenGL API Registry. The canonical\n * version of the registry, together with documentation, schema, and Python\n * generator scripts used to generate C header files for OpenGL and OpenGL ES,\n * can always be found in the Khronos Registry at\n * https://github.com/KhronosGroup/OpenGL-Registry\n */\n\nimport { type AttributeType, type BindTransformFeedbackTarget, type BlendEquationModeEXT, type BlendingFactor, type BlitFramebufferFilter, type Buffer, type BufferAccessARB, type BufferPNameARB, type BufferStorageMask, type BufferStorageTarget, type BufferTargetARB, type BufferUsageARB, type ClampColorModeARB, type ClampColorTargetARB, type ClearBufferMask, type ClipControlDepth, type ClipControlOrigin, type ColorBuffer, type ConditionalRenderMode, type CopyBufferSubDataTarget, type CopyImageSubDataTarget, type DebugSeverity, type DebugSource, type DebugType, type DepthFunction, type DrawBufferMode, type DrawElementsType, type EnableCap, type ErrorCode, type FramebufferAttachment, type FramebufferAttachmentParameterName, type FramebufferParameterName, type FramebufferStatus, type FramebufferTarget, type FrontFaceDirection, type GetFramebufferParameter, type GetTextureParameter, type GLbitfield, type GLbyte, type GLdouble, type GLenum, type GLfloat, type GLint, type GLint64, type GLintptr, type GLpointer, type GLshort, type GLsizei, type GLsizeiptr, type GLsync, type GLubyte, type GLuint, type GLuint64, type GLushort, type GraphicsResetStatus, type HintMode, type HintTarget, type InternalFormat, type InternalFormatPName, type InvalidateFramebufferAttachment, type LogicOp, type MapBufferAccessMask, type MemoryBarrierMask, type ObjectIdentifier, type PatchParameterName, type PipelineParameterName, type PixelFormat, type PixelStoreParameter, type PixelType, type PointParameterNameARB, type PolygonMode, type PrecisionType, type PrimitiveType, type ProgramInterface, type ProgramParameterPName, type ProgramPropertyARB, type ProgramResourceProperty, type ProgramStagePName, type QueryCounterTarget, type QueryObjectParameterName, type QueryParameterName, type QueryTarget, type ReadBufferMode, type RenderbufferParameterName, type RenderbufferTarget, type SamplerParameterF, type SamplerParameterI, type ShaderBinaryFormat, type ShaderParameterName, type ShaderType, type SizedInternalFormat, type StencilFunction, type StencilOp, type StringName, type SyncBehaviorFlags, type SyncCondition, type SyncObjectMask, type SyncParameterName, type SyncStatus, type TextureParameterName, type TextureTarget, type TextureUnit, type TransformFeedbackBufferMode, type TransformFeedbackPName, type TriangleFace, type UniformType, type UseProgramStageMask, type VertexArrayPName, type VertexAttribEnum, type VertexAttribIType, type VertexAttribLType, type VertexAttribPointerType, type VertexAttribPropertyARB, type VertexAttribType, type VertexProvokingMode } from \"./types.js\";\nimport { t } from \"@gtkx/runtime\";\n\n/**\n * `void glActiveShaderProgram(GLuint pipeline, GLuint program)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n * @param program - `GLuint`, object class `program`\n */\nexport function activeShaderProgram(pipeline: GLuint, program: GLuint): void {\n glActiveShaderProgram(pipeline, program);\n}\n\n/**\n * `void glActiveTexture(GLenum texture)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glActiveTextureARB`.\n * GLX render opcode 197.\n *\n * @param texture - `TextureUnit`\n */\nexport function activeTexture(texture: TextureUnit): void {\n glActiveTexture(texture);\n}\n\n/**\n * `void glAttachShader(GLuint program, GLuint shader)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glAttachObjectARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param shader - `GLuint`, object class `shader`\n */\nexport function attachShader(program: GLuint, shader: GLuint): void {\n glAttachShader(program, shader);\n}\n\n/**\n * `void glBeginConditionalRender(GLuint id, GLenum mode)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glBeginConditionalRenderNV`.\n *\n * @param id - `GLuint`\n * @param mode - `ConditionalRenderMode`\n */\nexport function beginConditionalRender(id: GLuint, mode: ConditionalRenderMode): void {\n glBeginConditionalRender(id, mode);\n}\n\n/**\n * `void glBeginQuery(GLenum target, GLuint id)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glBeginQueryARB`.\n * GLX render opcode 231.\n *\n * @param target - `QueryTarget`\n * @param id - `GLuint`, object class `query`\n */\nexport function beginQuery(target: QueryTarget, id: GLuint): void {\n glBeginQuery(target, id);\n}\n\n/**\n * `void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback3\n * Also provided by the `GL_ARB_transform_feedback3` extension.\n *\n * @param target - `QueryTarget`\n * @param index - `GLuint`\n * @param id - `GLuint`, object class `query`\n */\nexport function beginQueryIndexed(target: QueryTarget, index: GLuint, id: GLuint): void {\n glBeginQueryIndexed(target, index, id);\n}\n\n/**\n * `void glBeginTransformFeedback(GLenum primitiveMode)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glBeginTransformFeedbackEXT`, `glBeginTransformFeedbackNV`.\n * GLX render opcode 357.\n *\n * @param primitiveMode - `PrimitiveType`\n */\nexport function beginTransformFeedback(primitiveMode: PrimitiveType): void {\n glBeginTransformFeedback(primitiveMode);\n}\n\n/**\n * `void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glBindAttribLocationARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param index - `GLuint`\n * @param name - `string`\n */\nexport function bindAttribLocation(program: GLuint, index: GLuint, name: string): void {\n glBindAttribLocation(program, index, name);\n}\n\n/**\n * `void glBindBuffer(GLenum target, GLuint buffer)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glBindBufferARB`.\n *\n * @param target - `BufferTargetARB`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function bindBuffer(target: BufferTargetARB, buffer: GLuint): void {\n glBindBuffer(target, buffer);\n}\n\n/**\n * `void glBindBufferBase(GLenum target, GLuint index, GLuint buffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * Also known as `glBindBufferBaseEXT`, `glBindBufferBaseNV`.\n * GLX render opcode 356.\n *\n * @param target - `BufferTargetARB`\n * @param index - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function bindBufferBase(target: BufferTargetARB, index: GLuint, buffer: GLuint): void {\n glBindBufferBase(target, index, buffer);\n}\n\n/**\n * `void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * Also known as `glBindBufferRangeEXT`, `glBindBufferRangeNV`.\n * GLX render opcode 355.\n *\n * @param target - `BufferTargetARB`\n * @param index - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function bindBufferRange(target: BufferTargetARB, index: GLuint, buffer: GLuint, offset: GLintptr, size: GLsizeiptr): void {\n glBindBufferRange(target, index, buffer, offset, size);\n}\n\n/**\n * `void glBindBuffersBase(GLenum target, GLuint first, GLsizei count, const GLuint *buffers)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param target - `BufferTargetARB`\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param buffers - `GLuint[] | Uint32Array`, length `count`, object class `buffer`\n */\nexport function bindBuffersBase(target: BufferTargetARB, first: GLuint, count: GLsizei, buffers: GLuint[] | Uint32Array): void {\n glBindBuffersBase(target, first, count, buffers);\n}\n\n/**\n * `void glBindBuffersRange(GLenum target, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizeiptr *sizes)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param target - `BufferTargetARB`\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param buffers - `GLuint[] | Uint32Array`, length `count`, object class `buffer`\n * @param offsets - `GLintptr[]`, length `count`\n * @param sizes - `GLsizeiptr[]`, length `count`\n */\nexport function bindBuffersRange(target: BufferTargetARB, first: GLuint, count: GLsizei, buffers: GLuint[] | Uint32Array, offsets: GLintptr[], sizes: GLsizeiptr[]): void {\n glBindBuffersRange(target, first, count, buffers, offsets, sizes);\n}\n\n/**\n * `void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glBindFragDataLocationEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param color - `GLuint`\n * @param name - `string`, length `COMPSIZE(name)`\n */\nexport function bindFragDataLocation(program: GLuint, color: GLuint, name: string): void {\n glBindFragDataLocation(program, color, name);\n}\n\n/**\n * `void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_blend_func_extended\n * Also provided by the `GL_ARB_blend_func_extended` extension.\n * Also known as `glBindFragDataLocationIndexedEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param colorNumber - `GLuint`\n * @param index - `GLuint`\n * @param name - `string`\n */\nexport function bindFragDataLocationIndexed(program: GLuint, colorNumber: GLuint, index: GLuint, name: string): void {\n glBindFragDataLocationIndexed(program, colorNumber, index, name);\n}\n\n/**\n * `void glBindFramebuffer(GLenum target, GLuint framebuffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * GLX render opcode 236.\n *\n * @param target - `FramebufferTarget`\n * @param framebuffer - `GLuint`, object class `framebuffer`\n */\nexport function bindFramebuffer(target: FramebufferTarget, framebuffer: GLuint): void {\n glBindFramebuffer(target, framebuffer);\n}\n\n/**\n * `void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_shader_image_load_store\n * Also provided by the `GL_ARB_shader_image_load_store` extension.\n *\n * @param unit - `GLuint`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param layered - `boolean`\n * @param layer - `GLint`\n * @param access - `BufferAccessARB`\n * @param format - `InternalFormat`\n */\nexport function bindImageTexture(unit: GLuint, texture: GLuint, level: GLint, layered: boolean, layer: GLint, access: BufferAccessARB, format: InternalFormat): void {\n glBindImageTexture(unit, texture, level, layered, layer, access, format);\n}\n\n/**\n * `void glBindImageTextures(GLuint first, GLsizei count, const GLuint *textures)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param textures - `GLuint[] | Uint32Array`, length `count`, object class `texture`\n */\nexport function bindImageTextures(first: GLuint, count: GLsizei, textures: GLuint[] | Uint32Array): void {\n glBindImageTextures(first, count, textures);\n}\n\n/**\n * `void glBindProgramPipeline(GLuint pipeline)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n */\nexport function bindProgramPipeline(pipeline: GLuint): void {\n glBindProgramPipeline(pipeline);\n}\n\n/**\n * `void glBindRenderbuffer(GLenum target, GLuint renderbuffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * GLX render opcode 235.\n *\n * @param target - `RenderbufferTarget`\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n */\nexport function bindRenderbuffer(target: RenderbufferTarget, renderbuffer: GLuint): void {\n glBindRenderbuffer(target, renderbuffer);\n}\n\n/**\n * `void glBindSampler(GLuint unit, GLuint sampler)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param unit - `GLuint`\n * @param sampler - `GLuint`, object class `sampler`\n */\nexport function bindSampler(unit: GLuint, sampler: GLuint): void {\n glBindSampler(unit, sampler);\n}\n\n/**\n * `void glBindSamplers(GLuint first, GLsizei count, const GLuint *samplers)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param samplers - `GLuint[] | Uint32Array`, length `count`, object class `sampler`\n */\nexport function bindSamplers(first: GLuint, count: GLsizei, samplers: GLuint[] | Uint32Array): void {\n glBindSamplers(first, count, samplers);\n}\n\n/**\n * `void glBindTexture(GLenum target, GLuint texture)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glBindTextureEXT`.\n * GLX render opcode 4117.\n *\n * @param target - `TextureTarget`\n * @param texture - `GLuint`, object class `texture`\n */\nexport function bindTexture(target: TextureTarget, texture: GLuint): void {\n glBindTexture(target, texture);\n}\n\n/**\n * `void glBindTextures(GLuint first, GLsizei count, const GLuint *textures)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param textures - `GLuint[] | Uint32Array`, length `count`, object class `texture`\n */\nexport function bindTextures(first: GLuint, count: GLsizei, textures: GLuint[] | Uint32Array): void {\n glBindTextures(first, count, textures);\n}\n\n/**\n * `void glBindTextureUnit(GLuint unit, GLuint texture)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param unit - `GLuint`\n * @param texture - `GLuint`, object class `texture`\n */\nexport function bindTextureUnit(unit: GLuint, texture: GLuint): void {\n glBindTextureUnit(unit, texture);\n}\n\n/**\n * `void glBindTransformFeedback(GLenum target, GLuint id)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n *\n * @param target - `BindTransformFeedbackTarget`\n * @param id - `GLuint`, object class `transform feedback`\n */\nexport function bindTransformFeedback(target: BindTransformFeedbackTarget, id: GLuint): void {\n glBindTransformFeedback(target, id);\n}\n\n/**\n * `void glBindVertexArray(GLuint array)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n * Also known as `glBindVertexArrayOES`.\n * GLX render opcode 350.\n *\n * @param array - `GLuint`, object class `vertex array`\n */\nexport function bindVertexArray(array: GLuint): void {\n glBindVertexArray(array);\n}\n\n/**\n * `void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param bindingindex - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param stride - `GLsizei`\n */\nexport function bindVertexBuffer(bindingindex: GLuint, buffer: GLuint, offset: GLintptr, stride: GLsizei): void {\n glBindVertexBuffer(bindingindex, buffer, offset, stride);\n}\n\n/**\n * `void glBindVertexBuffers(GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param buffers - `GLuint[] | Uint32Array`, length `count`, object class `buffer`\n * @param offsets - `GLintptr[]`, length `count`\n * @param strides - `GLsizei[] | Int32Array`, length `count`\n */\nexport function bindVertexBuffers(first: GLuint, count: GLsizei, buffers: GLuint[] | Uint32Array, offsets: GLintptr[], strides: GLsizei[] | Int32Array): void {\n glBindVertexBuffers(first, count, buffers, offsets, strides);\n}\n\n/**\n * `void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Registry note: Promoted from ARB_imaging subset to core\n * Also provided by the `GL_ARB_imaging` extension.\n * `GL_ARB_imaging` note: Now treating ARB_imaging as an extension, not a GL API version.\n * Also known as `glBlendColorEXT`.\n * GLX render opcode 4096.\n *\n * @param red - `GLfloat`, kind `Clamped[0; 1]`, kind `Color`. This parameter will get clamped to the 0 to 1 range. This parameter represents part of or a complete color.\n * @param green - `GLfloat`, kind `Clamped[0; 1]`, kind `Color`. This parameter will get clamped to the 0 to 1 range. This parameter represents part of or a complete color.\n * @param blue - `GLfloat`, kind `Clamped[0; 1]`, kind `Color`. This parameter will get clamped to the 0 to 1 range. This parameter represents part of or a complete color.\n * @param alpha - `GLfloat`, kind `Clamped[0; 1]`, kind `Color`. This parameter will get clamped to the 0 to 1 range. This parameter represents part of or a complete color.\n */\nexport function blendColor(red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat): void {\n glBlendColor(red, green, blue, alpha);\n}\n\n/**\n * `void glBlendEquation(GLenum mode)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Registry note: Promoted from ARB_imaging subset to core\n * Also provided by the `GL_ARB_imaging` extension.\n * `GL_ARB_imaging` note: Now treating ARB_imaging as an extension, not a GL API version.\n * Also known as `glBlendEquationEXT`.\n * GLX render opcode 4097.\n *\n * @param mode - `BlendEquationModeEXT`\n */\nexport function blendEquation(mode: BlendEquationModeEXT): void {\n glBlendEquation(mode);\n}\n\n/**\n * `void glBlendEquationi(GLuint buf, GLenum mode)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Also known as `glBlendEquationiARB`, `glBlendEquationiEXT`, `glBlendEquationIndexedAMD`, `glBlendEquationiOES`.\n *\n * @param buf - `GLuint`\n * @param mode - `BlendEquationModeEXT`\n */\nexport function blendEquationi(buf: GLuint, mode: BlendEquationModeEXT): void {\n glBlendEquationi(buf, mode);\n}\n\n/**\n * `void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glBlendEquationSeparateEXT`.\n * GLX render opcode 4228.\n *\n * @param modeRGB - `BlendEquationModeEXT`\n * @param modeAlpha - `BlendEquationModeEXT`\n */\nexport function blendEquationSeparate(modeRGB: BlendEquationModeEXT, modeAlpha: BlendEquationModeEXT): void {\n glBlendEquationSeparate(modeRGB, modeAlpha);\n}\n\n/**\n * `void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Also known as `glBlendEquationSeparateiARB`, `glBlendEquationSeparateiEXT`, `glBlendEquationSeparateIndexedAMD`, `glBlendEquationSeparateiOES`.\n *\n * @param buf - `GLuint`\n * @param modeRGB - `BlendEquationModeEXT`\n * @param modeAlpha - `BlendEquationModeEXT`\n */\nexport function blendEquationSeparatei(buf: GLuint, modeRGB: BlendEquationModeEXT, modeAlpha: BlendEquationModeEXT): void {\n glBlendEquationSeparatei(buf, modeRGB, modeAlpha);\n}\n\n/**\n * `void glBlendFunc(GLenum sfactor, GLenum dfactor)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 160.\n *\n * @param sfactor - `BlendingFactor`\n * @param dfactor - `BlendingFactor`\n */\nexport function blendFunc(sfactor: BlendingFactor, dfactor: BlendingFactor): void {\n glBlendFunc(sfactor, dfactor);\n}\n\n/**\n * `void glBlendFunci(GLuint buf, GLenum src, GLenum dst)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Also known as `glBlendFunciARB`, `glBlendFunciEXT`, `glBlendFuncIndexedAMD`, `glBlendFunciOES`.\n *\n * @param buf - `GLuint`\n * @param src - `BlendingFactor`\n * @param dst - `BlendingFactor`\n */\nexport function blendFunci(buf: GLuint, src: BlendingFactor, dst: BlendingFactor): void {\n glBlendFunci(buf, src, dst);\n}\n\n/**\n * `void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glBlendFuncSeparateEXT`, `glBlendFuncSeparateINGR`.\n * GLX render opcode 4134.\n *\n * @param sfactorRGB - `BlendingFactor`\n * @param dfactorRGB - `BlendingFactor`\n * @param sfactorAlpha - `BlendingFactor`\n * @param dfactorAlpha - `BlendingFactor`\n */\nexport function blendFuncSeparate(sfactorRGB: BlendingFactor, dfactorRGB: BlendingFactor, sfactorAlpha: BlendingFactor, dfactorAlpha: BlendingFactor): void {\n glBlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);\n}\n\n/**\n * `void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Also known as `glBlendFuncSeparateiARB`, `glBlendFuncSeparateiEXT`, `glBlendFuncSeparateIndexedAMD`, `glBlendFuncSeparateiOES`.\n *\n * @param buf - `GLuint`\n * @param srcRGB - `BlendingFactor`\n * @param dstRGB - `BlendingFactor`\n * @param srcAlpha - `BlendingFactor`\n * @param dstAlpha - `BlendingFactor`\n */\nexport function blendFuncSeparatei(buf: GLuint, srcRGB: BlendingFactor, dstRGB: BlendingFactor, srcAlpha: BlendingFactor, dstAlpha: BlendingFactor): void {\n glBlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);\n}\n\n/**\n * `void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glBlitFramebufferEXT`, `glBlitFramebufferNV`.\n * GLX render opcode 4330.\n *\n * @param srcX0 - `GLint`\n * @param srcY0 - `GLint`\n * @param srcX1 - `GLint`\n * @param srcY1 - `GLint`\n * @param dstX0 - `GLint`\n * @param dstY0 - `GLint`\n * @param dstX1 - `GLint`\n * @param dstY1 - `GLint`\n * @param mask - `ClearBufferMask`\n * @param filter - `BlitFramebufferFilter`\n */\nexport function blitFramebuffer(srcX0: GLint, srcY0: GLint, srcX1: GLint, srcY1: GLint, dstX0: GLint, dstY0: GLint, dstX1: GLint, dstY1: GLint, mask: ClearBufferMask, filter: BlitFramebufferFilter): void {\n glBlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);\n}\n\n/**\n * `void glBlitNamedFramebuffer(GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param readFramebuffer - `GLuint`, object class `framebuffer`\n * @param drawFramebuffer - `GLuint`, object class `framebuffer`\n * @param srcX0 - `GLint`\n * @param srcY0 - `GLint`\n * @param srcX1 - `GLint`\n * @param srcY1 - `GLint`\n * @param dstX0 - `GLint`\n * @param dstY0 - `GLint`\n * @param dstX1 - `GLint`\n * @param dstY1 - `GLint`\n * @param mask - `ClearBufferMask`\n * @param filter - `BlitFramebufferFilter`\n */\nexport function blitNamedFramebuffer(readFramebuffer: GLuint, drawFramebuffer: GLuint, srcX0: GLint, srcY0: GLint, srcX1: GLint, srcY1: GLint, dstX0: GLint, dstY0: GLint, dstX1: GLint, dstY1: GLint, mask: ClearBufferMask, filter: BlitFramebufferFilter): void {\n glBlitNamedFramebuffer(readFramebuffer, drawFramebuffer, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);\n}\n\n/**\n * `void glBufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glBufferDataARB`.\n *\n * @param target - `BufferTargetARB`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n * @param usage - `BufferUsageARB`\n */\nexport function bufferData(target: BufferTargetARB, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null, usage: BufferUsageARB): void {\n glBufferData(target, size, data, usage);\n}\n\n/**\n * `void glBufferStorage(GLenum target, GLsizeiptr size, const void *data, GLbitfield flags)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_buffer_storage\n * Also provided by the `GL_ARB_buffer_storage` extension.\n * Also known as `glBufferStorageEXT`.\n *\n * @param target - `BufferStorageTarget`\n * @param size - `GLsizeiptr`\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n * @param flags - `BufferStorageMask`\n */\nexport function bufferStorage(target: BufferStorageTarget, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null, flags: BufferStorageMask): void {\n glBufferStorage(target, size, data, flags);\n}\n\n/**\n * `void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glBufferSubDataARB`.\n *\n * @param target - `BufferTargetARB`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n */\nexport function bufferSubData(target: BufferTargetARB, offset: GLintptr, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null): void {\n glBufferSubData(target, offset, size, data);\n}\n\n/**\n * `GLenum glCheckFramebufferStatus(GLenum target)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glCheckFramebufferStatusEXT`.\n * GLX vendor opcode 1427.\n *\n * @param target - `FramebufferTarget`\n * @returns `FramebufferStatus`\n */\nexport function checkFramebufferStatus(target: FramebufferTarget): FramebufferStatus {\n return glCheckFramebufferStatus(target) as FramebufferStatus;\n}\n\n/**\n * `GLenum glCheckNamedFramebufferStatus(GLuint framebuffer, GLenum target)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param target - `FramebufferTarget`\n * @returns `FramebufferStatus`\n */\nexport function checkNamedFramebufferStatus(framebuffer: GLuint, target: FramebufferTarget): FramebufferStatus {\n return glCheckNamedFramebufferStatus(framebuffer, target) as FramebufferStatus;\n}\n\n/**\n * `void glClampColor(GLenum target, GLenum clamp)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glClampColorARB`.\n * GLX render opcode 234.\n *\n * @param target - `ClampColorTargetARB`\n * @param clamp - `ClampColorModeARB`\n */\nexport function clampColor(target: ClampColorTargetARB, clamp: ClampColorModeARB): void {\n glClampColor(target, clamp);\n}\n\n/**\n * `void glClear(GLbitfield mask)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 127.\n *\n * @param mask - `ClearBufferMask`\n */\nexport function clear(mask: ClearBufferMask): void {\n glClear(mask);\n}\n\n/**\n * `void glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_clear_buffer_object\n * Also provided by the `GL_ARB_clear_buffer_object` extension.\n *\n * @param target - `BufferStorageTarget`\n * @param internalformat - `SizedInternalFormat`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearBufferData(target: BufferStorageTarget, internalformat: SizedInternalFormat, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearBufferData(target, internalformat, format, type, data);\n}\n\n/**\n * `void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)`\n *\n * Provided by `GL_VERSION_3_0`.\n * GLX render opcode 360.\n *\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param depth - `GLfloat`\n * @param stencil - `GLint`\n */\nexport function clearBufferfi(buffer: Buffer, drawbuffer: GLint, depth: GLfloat, stencil: GLint): void {\n glClearBufferfi(buffer, drawbuffer, depth, stencil);\n}\n\n/**\n * `void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * GLX render opcode 361.\n *\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLfloat[] | Float32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearBufferfv(buffer: Buffer, drawbuffer: GLint, value: GLfloat[] | Float32Array): void {\n glClearBufferfv(buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * GLX render opcode 362.\n *\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLint[] | Int32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearBufferiv(buffer: Buffer, drawbuffer: GLint, value: GLint[] | Int32Array): void {\n glClearBufferiv(buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_clear_buffer_object\n * Also provided by the `GL_ARB_clear_buffer_object` extension.\n *\n * @param target - `BufferTargetARB`\n * @param internalformat - `SizedInternalFormat`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearBufferSubData(target: BufferTargetARB, internalformat: SizedInternalFormat, offset: GLintptr, size: GLsizeiptr, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearBufferSubData(target, internalformat, offset, size, format, type, data);\n}\n\n/**\n * `void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * GLX render opcode 363.\n *\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLuint[] | Uint32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearBufferuiv(buffer: Buffer, drawbuffer: GLint, value: GLuint[] | Uint32Array): void {\n glClearBufferuiv(buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 130.\n *\n * @param red - `GLfloat`, kind `Color`. This parameter represents part of or a complete color.\n * @param green - `GLfloat`, kind `Color`. This parameter represents part of or a complete color.\n * @param blue - `GLfloat`, kind `Color`. This parameter represents part of or a complete color.\n * @param alpha - `GLfloat`, kind `Color`. This parameter represents part of or a complete color.\n */\nexport function clearColor(red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat): void {\n glClearColor(red, green, blue, alpha);\n}\n\n/**\n * `void glClearDepth(GLdouble depth)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 132.\n *\n * @param depth - `GLdouble`, kind `Clamped[0; 1]`. This parameter will get clamped to the 0 to 1 range.\n */\nexport function clearDepth(depth: GLdouble): void {\n glClearDepth(depth);\n}\n\n/**\n * `void glClearDepthf(GLfloat d)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_ES2_compatibility\n * Also provided by the `GL_ARB_ES2_compatibility` extension.\n * Also known as `glClearDepthfOES`.\n *\n * @param d - `GLfloat`, kind `Clamped[0; 1]`. This parameter will get clamped to the 0 to 1 range.\n */\nexport function clearDepthf(d: GLfloat): void {\n glClearDepthf(d);\n}\n\n/**\n * `void glClearNamedBufferData(GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param internalformat - `SizedInternalFormat`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearNamedBufferData(buffer: GLuint, internalformat: SizedInternalFormat, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearNamedBufferData(buffer, internalformat, format, type, data);\n}\n\n/**\n * `void glClearNamedBufferSubData(GLuint buffer, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param internalformat - `SizedInternalFormat`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearNamedBufferSubData(buffer: GLuint, internalformat: SizedInternalFormat, offset: GLintptr, size: GLsizeiptr, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearNamedBufferSubData(buffer, internalformat, offset, size, format, type, data);\n}\n\n/**\n * `void glClearNamedFramebufferfi(GLuint framebuffer, GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param depth - `GLfloat`\n * @param stencil - `GLint`, kind `StencilValue`. This parameter represents an unmasked stencil value.\n */\nexport function clearNamedFramebufferfi(framebuffer: GLuint, buffer: Buffer, drawbuffer: GLint, depth: GLfloat, stencil: GLint): void {\n glClearNamedFramebufferfi(framebuffer, buffer, drawbuffer, depth, stencil);\n}\n\n/**\n * `void glClearNamedFramebufferfv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLfloat[] | Float32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearNamedFramebufferfv(framebuffer: GLuint, buffer: Buffer, drawbuffer: GLint, value: GLfloat[] | Float32Array): void {\n glClearNamedFramebufferfv(framebuffer, buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearNamedFramebufferiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint *value)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLint[] | Int32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearNamedFramebufferiv(framebuffer: GLuint, buffer: Buffer, drawbuffer: GLint, value: GLint[] | Int32Array): void {\n glClearNamedFramebufferiv(framebuffer, buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearNamedFramebufferuiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint *value)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLuint[] | Uint32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearNamedFramebufferuiv(framebuffer: GLuint, buffer: Buffer, drawbuffer: GLint, value: GLuint[] | Uint32Array): void {\n glClearNamedFramebufferuiv(framebuffer, buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearStencil(GLint s)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 131.\n *\n * @param s - `GLint`, kind `StencilValue`. This parameter represents an unmasked stencil value.\n */\nexport function clearStencil(s: GLint): void {\n glClearStencil(s);\n}\n\n/**\n * `void glClearTexImage(GLuint texture, GLint level, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_clear_texture\n * Also provided by the `GL_ARB_clear_texture` extension.\n * Also known as `glClearTexImageEXT`.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearTexImage(texture: GLuint, level: GLint, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearTexImage(texture, level, format, type, data);\n}\n\n/**\n * `void glClearTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_clear_texture\n * Also provided by the `GL_ARB_clear_texture` extension.\n * Also known as `glClearTexSubImageEXT`.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearTexSubImage(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data);\n}\n\n/**\n * `GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glClientWaitSyncAPPLE`.\n *\n * @param sync - `GLsync`, object class `sync`\n * @param flags - `SyncObjectMask`\n * @param timeout - `GLuint64`\n * @returns `SyncStatus`\n */\nexport function clientWaitSync(sync: GLsync, flags: SyncObjectMask, timeout: GLuint64): SyncStatus {\n return glClientWaitSync(sync, flags, timeout) as SyncStatus;\n}\n\n/**\n * `void glClipControl(GLenum origin, GLenum depth)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_clip_control\n * Also provided by the `GL_ARB_clip_control` extension.\n * Also known as `glClipControlEXT`.\n *\n * @param origin - `ClipControlOrigin`\n * @param depth - `ClipControlDepth`\n */\nexport function clipControl(origin: ClipControlOrigin, depth: ClipControlDepth): void {\n glClipControl(origin, depth);\n}\n\n/**\n * `void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 134.\n *\n * @param red - `boolean`\n * @param green - `boolean`\n * @param blue - `boolean`\n * @param alpha - `boolean`\n */\nexport function colorMask(red: boolean, green: boolean, blue: boolean, alpha: boolean): void {\n glColorMask(red, green, blue, alpha);\n}\n\n/**\n * `void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glColorMaskiEXT`, `glColorMaskIndexedEXT`, `glColorMaskiOES`.\n *\n * @param index - `GLuint`\n * @param r - `boolean`\n * @param g - `boolean`\n * @param b - `boolean`\n * @param a - `boolean`\n */\nexport function colorMaski(index: GLuint, r: boolean, g: boolean, b: boolean, a: boolean): void {\n glColorMaski(index, r, g, b, a);\n}\n\n/**\n * `void glCompileShader(GLuint shader)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glCompileShaderARB`.\n *\n * @param shader - `GLuint`, object class `shader`\n */\nexport function compileShader(shader: GLuint): void {\n glCompileShader(shader);\n}\n\n/**\n * `void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexImage1DARB`.\n * GLX render opcode 214.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexImage1D(target: TextureTarget, level: GLint, internalformat: InternalFormat, width: GLsizei, border: GLint, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);\n}\n\n/**\n * `void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexImage2DARB`.\n * GLX render opcode 215.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexImage2D(target: TextureTarget, level: GLint, internalformat: InternalFormat, width: GLsizei, height: GLsizei, border: GLint, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);\n}\n\n/**\n * `void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexImage3DARB`.\n * GLX render opcode 216.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexImage3D(target: TextureTarget, level: GLint, internalformat: InternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);\n}\n\n/**\n * `void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexSubImage1DARB`.\n * GLX render opcode 217.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexSubImage1D(target: TextureTarget, level: GLint, xoffset: GLint, width: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);\n}\n\n/**\n * `void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexSubImage2DARB`.\n * GLX render opcode 218.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexSubImage2D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);\n}\n\n/**\n * `void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexSubImage3DARB`.\n * GLX render opcode 219.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param zoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexSubImage3D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);\n}\n\n/**\n * `void glCompressedTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param width - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`\n */\nexport function compressedTextureSubImage1D(texture: GLuint, level: GLint, xoffset: GLint, width: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTextureSubImage1D(texture, level, xoffset, width, format, imageSize, data);\n}\n\n/**\n * `void glCompressedTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`\n */\nexport function compressedTextureSubImage2D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, imageSize, data);\n}\n\n/**\n * `void glCompressedTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`\n */\nexport function compressedTextureSubImage3D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);\n}\n\n/**\n * `void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Registry note: Reuse ARB_copy_buffer\n * Also provided by the `GL_ARB_copy_buffer` extension.\n * Also known as `glCopyBufferSubDataNV`.\n * GLX single opcode 221.\n *\n * @param readTarget - `CopyBufferSubDataTarget`\n * @param writeTarget - `CopyBufferSubDataTarget`\n * @param readOffset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param writeOffset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function copyBufferSubData(readTarget: CopyBufferSubDataTarget, writeTarget: CopyBufferSubDataTarget, readOffset: GLintptr, writeOffset: GLintptr, size: GLsizeiptr): void {\n glCopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);\n}\n\n/**\n * `void glCopyImageSubData(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_copy_image\n * Also provided by the `GL_ARB_copy_image` extension.\n * Also known as `glCopyImageSubDataEXT`, `glCopyImageSubDataOES`.\n *\n * @param srcName - `GLuint`\n * @param srcTarget - `CopyImageSubDataTarget`\n * @param srcLevel - `GLint`\n * @param srcX - `GLint`\n * @param srcY - `GLint`\n * @param srcZ - `GLint`\n * @param dstName - `GLuint`\n * @param dstTarget - `CopyImageSubDataTarget`\n * @param dstLevel - `GLint`\n * @param dstX - `GLint`\n * @param dstY - `GLint`\n * @param dstZ - `GLint`\n * @param srcWidth - `GLsizei`\n * @param srcHeight - `GLsizei`\n * @param srcDepth - `GLsizei`\n */\nexport function copyImageSubData(srcName: GLuint, srcTarget: CopyImageSubDataTarget, srcLevel: GLint, srcX: GLint, srcY: GLint, srcZ: GLint, dstName: GLuint, dstTarget: CopyImageSubDataTarget, dstLevel: GLint, dstX: GLint, dstY: GLint, dstZ: GLint, srcWidth: GLsizei, srcHeight: GLsizei, srcDepth: GLsizei): void {\n glCopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);\n}\n\n/**\n * `void glCopyNamedBufferSubData(GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param readBuffer - `GLuint`, object class `buffer`\n * @param writeBuffer - `GLuint`, object class `buffer`\n * @param readOffset - `GLintptr`\n * @param writeOffset - `GLintptr`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function copyNamedBufferSubData(readBuffer: GLuint, writeBuffer: GLuint, readOffset: GLintptr, writeOffset: GLintptr, size: GLsizeiptr): void {\n glCopyNamedBufferSubData(readBuffer, writeBuffer, readOffset, writeOffset, size);\n}\n\n/**\n * `void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glCopyTexImage1DEXT`.\n * GLX render opcode 4119.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `InternalFormat`\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n */\nexport function copyTexImage1D(target: TextureTarget, level: GLint, internalformat: InternalFormat, x: GLint, y: GLint, width: GLsizei, border: GLint): void {\n glCopyTexImage1D(target, level, internalformat, x, y, width, border);\n}\n\n/**\n * `void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glCopyTexImage2DEXT`.\n * GLX render opcode 4120.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `InternalFormat`\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n */\nexport function copyTexImage2D(target: TextureTarget, level: GLint, internalformat: InternalFormat, x: GLint, y: GLint, width: GLsizei, height: GLsizei, border: GLint): void {\n glCopyTexImage2D(target, level, internalformat, x, y, width, height, border);\n}\n\n/**\n * `void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glCopyTexSubImage1DEXT`.\n * GLX render opcode 4121.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n */\nexport function copyTexSubImage1D(target: TextureTarget, level: GLint, xoffset: GLint, x: GLint, y: GLint, width: GLsizei): void {\n glCopyTexSubImage1D(target, level, xoffset, x, y, width);\n}\n\n/**\n * `void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glCopyTexSubImage2DEXT`.\n * GLX render opcode 4122.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function copyTexSubImage2D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);\n}\n\n/**\n * `void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_1_2`.\n * Also known as `glCopyTexSubImage3DEXT`.\n * GLX render opcode 4123.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param zoffset - `GLint`, kind `CheckedInt32`\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function copyTexSubImage3D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glCopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);\n}\n\n/**\n * `void glCopyTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n */\nexport function copyTextureSubImage1D(texture: GLuint, level: GLint, xoffset: GLint, x: GLint, y: GLint, width: GLsizei): void {\n glCopyTextureSubImage1D(texture, level, xoffset, x, y, width);\n}\n\n/**\n * `void glCopyTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function copyTextureSubImage2D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glCopyTextureSubImage2D(texture, level, xoffset, yoffset, x, y, width, height);\n}\n\n/**\n * `void glCopyTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function copyTextureSubImage3D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glCopyTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, x, y, width, height);\n}\n\n/**\n * `void glCreateBuffers(GLsizei n, GLuint *buffers)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param n - `GLsizei`\n * @returns `buffers` (`GLuint[]`, length `n`, object class `buffer`)\n */\nexport function createBuffers(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glCreateBuffers(n, out0);\n return out0.value;\n}\n\n/**\n * `void glCreateFramebuffers(GLsizei n, GLuint *framebuffers)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param n - `GLsizei`\n * @returns `framebuffers` (`GLuint[]`, length `n`, object class `framebuffer`)\n */\nexport function createFramebuffers(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glCreateFramebuffers(n, out0);\n return out0.value;\n}\n\n/**\n * `GLuint glCreateProgram()`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glCreateProgramObjectARB`.\n *\n * @returns `GLuint`, object class `program`\n */\nexport function createProgram(): GLuint {\n return glCreateProgram() as GLuint;\n}\n\n/**\n * `void glCreateProgramPipelines(GLsizei n, GLuint *pipelines)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Program Pipeline object functions.\n *\n * @param n - `GLsizei`\n * @returns `pipelines` (`GLuint[]`, length `n`, object class `program pipeline`)\n */\nexport function createProgramPipelines(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glCreateProgramPipelines(n, out0);\n return out0.value;\n}\n\n/**\n * `void glCreateQueries(GLenum target, GLsizei n, GLuint *ids)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param target - `QueryTarget`\n * @param n - `GLsizei`\n * @returns `ids` (`GLuint[]`, length `n`, object class `query`)\n */\nexport function createQueries(target: QueryTarget, n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glCreateQueries(target, n, out0);\n return out0.value;\n}\n\n/**\n * `void glCreateRenderbuffers(GLsizei n, GLuint *renderbuffers)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Renderbuffer object functions.\n *\n * @param n - `GLsizei`\n * @returns `renderbuffers` (`GLuint[]`, length `n`, object class `renderbuffer`)\n */\nexport function createRenderbuffers(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glCreateRenderbuffers(n, out0);\n return out0.value;\n}\n\n/**\n * `void glCreateSamplers(GLsizei n, GLuint *samplers)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Sampler object functions.\n *\n * @param n - `GLsizei`\n * @returns `samplers` (`GLuint[]`, length `n`, object class `sampler`)\n */\nexport function createSamplers(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glCreateSamplers(n, out0);\n return out0.value;\n}\n\n/**\n * `GLuint glCreateShader(GLenum type)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glCreateShaderObjectARB`.\n *\n * @param type - `ShaderType`\n * @returns `GLuint`, object class `shader`\n */\nexport function createShader(type: ShaderType): GLuint {\n return glCreateShader(type) as GLuint;\n}\n\n/**\n * `GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar *const*strings)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param type - `ShaderType`\n * @param count - `GLsizei`\n * @param strings - `string[]`, length `count`\n * @returns `GLuint`, object class `program`\n */\nexport function createShaderProgramv(type: ShaderType, count: GLsizei, strings: string[]): GLuint {\n return glCreateShaderProgramv(type, count, strings) as GLuint;\n}\n\n/**\n * `void glCreateTextures(GLenum target, GLsizei n, GLuint *textures)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param target - `TextureTarget`\n * @param n - `GLsizei`\n * @returns `textures` (`GLuint[]`, length `n`, object class `texture`)\n */\nexport function createTextures(target: TextureTarget, n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glCreateTextures(target, n, out0);\n return out0.value;\n}\n\n/**\n * `void glCreateTransformFeedbacks(GLsizei n, GLuint *ids)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param n - `GLsizei`\n * @returns `ids` (`GLuint[]`, length `n`, object class `transform feedback`)\n */\nexport function createTransformFeedbacks(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glCreateTransformFeedbacks(n, out0);\n return out0.value;\n}\n\n/**\n * `void glCreateVertexArrays(GLsizei n, GLuint *arrays)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param n - `GLsizei`\n * @returns `arrays` (`GLuint[]`, length `n`, object class `vertex array`)\n */\nexport function createVertexArrays(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glCreateVertexArrays(n, out0);\n return out0.value;\n}\n\n/**\n * `void glCullFace(GLenum mode)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 79.\n *\n * @param mode - `TriangleFace`\n */\nexport function cullFace(mode: TriangleFace): void {\n glCullFace(mode);\n}\n\n/**\n * `void glDebugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glDebugMessageControlARB`, `glDebugMessageControlKHR`.\n *\n * @param source - `DebugSource`\n * @param type - `DebugType`\n * @param severity - `DebugSeverity`\n * @param count - `GLsizei`\n * @param ids - `GLuint[] | Uint32Array`, length `count`\n * @param enabled - `boolean`\n */\nexport function debugMessageControl(source: DebugSource, type: DebugType, severity: DebugSeverity, count: GLsizei, ids: GLuint[] | Uint32Array, enabled: boolean): void {\n glDebugMessageControl(source, type, severity, count, ids, enabled);\n}\n\n/**\n * `void glDebugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glDebugMessageInsertARB`, `glDebugMessageInsertKHR`.\n *\n * @param source - `DebugSource`\n * @param type - `DebugType`\n * @param id - `GLuint`\n * @param severity - `DebugSeverity`\n * @param length - `GLsizei`\n * @param buf - `string`, length `COMPSIZE(buf,length)`\n */\nexport function debugMessageInsert(source: DebugSource, type: DebugType, id: GLuint, severity: DebugSeverity, length: GLsizei, buf: string): void {\n glDebugMessageInsert(source, type, id, severity, length, buf);\n}\n\n/**\n * `void glDeleteBuffers(GLsizei n, const GLuint *buffers)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glDeleteBuffersARB`.\n *\n * @param n - `GLsizei`\n * @param buffers - `GLuint[] | Uint32Array`, length `n`, object class `buffer`\n */\nexport function deleteBuffers(n: GLsizei, buffers: GLuint[] | Uint32Array): void {\n glDeleteBuffers(n, buffers);\n}\n\n/**\n * `void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glDeleteFramebuffersEXT`.\n * GLX render opcode 4320.\n *\n * @param n - `GLsizei`\n * @param framebuffers - `GLuint[] | Uint32Array`, length `n`, object class `framebuffer`\n */\nexport function deleteFramebuffers(n: GLsizei, framebuffers: GLuint[] | Uint32Array): void {\n glDeleteFramebuffers(n, framebuffers);\n}\n\n/**\n * `void glDeleteProgram(GLuint program)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 202.\n *\n * @param program - `GLuint`, object class `program`\n */\nexport function deleteProgram(program: GLuint): void {\n glDeleteProgram(program);\n}\n\n/**\n * `void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param n - `GLsizei`\n * @param pipelines - `GLuint[] | Uint32Array`, length `n`, object class `program pipeline`\n */\nexport function deleteProgramPipelines(n: GLsizei, pipelines: GLuint[] | Uint32Array): void {\n glDeleteProgramPipelines(n, pipelines);\n}\n\n/**\n * `void glDeleteQueries(GLsizei n, const GLuint *ids)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glDeleteQueriesARB`.\n * GLX single opcode 161.\n *\n * @param n - `GLsizei`\n * @param ids - `GLuint[] | Uint32Array`, length `n`, object class `query`\n */\nexport function deleteQueries(n: GLsizei, ids: GLuint[] | Uint32Array): void {\n glDeleteQueries(n, ids);\n}\n\n/**\n * `void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glDeleteRenderbuffersEXT`.\n * GLX render opcode 4317.\n *\n * @param n - `GLsizei`\n * @param renderbuffers - `GLuint[] | Uint32Array`, length `n`, object class `renderbuffer`\n */\nexport function deleteRenderbuffers(n: GLsizei, renderbuffers: GLuint[] | Uint32Array): void {\n glDeleteRenderbuffers(n, renderbuffers);\n}\n\n/**\n * `void glDeleteSamplers(GLsizei count, const GLuint *samplers)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param count - `GLsizei`\n * @param samplers - `GLuint[] | Uint32Array`, length `count`, object class `sampler`\n */\nexport function deleteSamplers(count: GLsizei, samplers: GLuint[] | Uint32Array): void {\n glDeleteSamplers(count, samplers);\n}\n\n/**\n * `void glDeleteShader(GLuint shader)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 195.\n *\n * @param shader - `GLuint`, object class `shader`\n */\nexport function deleteShader(shader: GLuint): void {\n glDeleteShader(shader);\n}\n\n/**\n * `void glDeleteSync(GLsync sync)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glDeleteSyncAPPLE`.\n *\n * @param sync - `GLsync`, object class `sync`\n */\nexport function deleteSync(sync: GLsync): void {\n glDeleteSync(sync);\n}\n\n/**\n * `void glDeleteTextures(GLsizei n, const GLuint *textures)`\n *\n * Provided by `GL_VERSION_1_1`.\n * GLX single opcode 144.\n *\n * @param n - `GLsizei`\n * @param textures - `GLuint[] | Uint32Array`, length `n`, object class `texture`\n */\nexport function deleteTextures(n: GLsizei, textures: GLuint[] | Uint32Array): void {\n glDeleteTextures(n, textures);\n}\n\n/**\n * `void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glDeleteTransformFeedbacksNV`.\n *\n * @param n - `GLsizei`\n * @param ids - `GLuint[] | Uint32Array`, length `n`, object class `transform feedback`\n */\nexport function deleteTransformFeedbacks(n: GLsizei, ids: GLuint[] | Uint32Array): void {\n glDeleteTransformFeedbacks(n, ids);\n}\n\n/**\n * `void glDeleteVertexArrays(GLsizei n, const GLuint *arrays)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n * Also known as `glDeleteVertexArraysAPPLE`, `glDeleteVertexArraysOES`.\n * GLX render opcode 351.\n *\n * @param n - `GLsizei`\n * @param arrays - `GLuint[] | Uint32Array`, length `n`, object class `vertex array`\n */\nexport function deleteVertexArrays(n: GLsizei, arrays: GLuint[] | Uint32Array): void {\n glDeleteVertexArrays(n, arrays);\n}\n\n/**\n * `void glDepthFunc(GLenum func)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 164.\n *\n * @param func - `DepthFunction`\n */\nexport function depthFunc(func: DepthFunction): void {\n glDepthFunc(func);\n}\n\n/**\n * `void glDepthMask(GLboolean flag)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 135.\n *\n * @param flag - `boolean`\n */\nexport function depthMask(flag: boolean): void {\n glDepthMask(flag);\n}\n\n/**\n * `void glDepthRange(GLdouble n, GLdouble f)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 174.\n *\n * @param n - `GLdouble`\n * @param f - `GLdouble`\n */\nexport function depthRange(n: GLdouble, f: GLdouble): void {\n glDepthRange(n, f);\n}\n\n/**\n * `void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param v - `GLdouble[] | Float64Array`, length `COMPSIZE(count)`\n */\nexport function depthRangeArrayv(first: GLuint, count: GLsizei, v: GLdouble[] | Float64Array): void {\n glDepthRangeArrayv(first, count, v);\n}\n\n/**\n * `void glDepthRangef(GLfloat n, GLfloat f)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_ES2_compatibility\n * Also provided by the `GL_ARB_ES2_compatibility` extension.\n * Also known as `glDepthRangefOES`.\n *\n * @param n - `GLfloat`\n * @param f - `GLfloat`\n */\nexport function depthRangef(n: GLfloat, f: GLfloat): void {\n glDepthRangef(n, f);\n}\n\n/**\n * `void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n *\n * @param index - `GLuint`\n * @param n - `GLdouble`\n * @param f - `GLdouble`\n */\nexport function depthRangeIndexed(index: GLuint, n: GLdouble, f: GLdouble): void {\n glDepthRangeIndexed(index, n, f);\n}\n\n/**\n * `void glDetachShader(GLuint program, GLuint shader)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glDetachObjectARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param shader - `GLuint`, object class `shader`\n */\nexport function detachShader(program: GLuint, shader: GLuint): void {\n glDetachShader(program, shader);\n}\n\n/**\n * `void glDisable(GLenum cap)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 138.\n *\n * @param cap - `EnableCap`\n */\nexport function disable(cap: EnableCap): void {\n glDisable(cap);\n}\n\n/**\n * `void glDisablei(GLenum target, GLuint index)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glDisableiEXT`, `glDisableIndexedEXT`, `glDisableiNV`, `glDisableiOES`.\n *\n * @param target - `EnableCap`\n * @param index - `GLuint`\n */\nexport function disablei(target: EnableCap, index: GLuint): void {\n glDisablei(target, index);\n}\n\n/**\n * `void glDisableVertexArrayAttrib(GLuint vaobj, GLuint index)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param index - `GLuint`\n */\nexport function disableVertexArrayAttrib(vaobj: GLuint, index: GLuint): void {\n glDisableVertexArrayAttrib(vaobj, index);\n}\n\n/**\n * `void glDisableVertexAttribArray(GLuint index)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glDisableVertexAttribArrayARB`.\n *\n * @param index - `GLuint`\n */\nexport function disableVertexAttribArray(index: GLuint): void {\n glDisableVertexAttribArray(index);\n}\n\n/**\n * `void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_compute_shader\n * Also provided by the `GL_ARB_compute_shader` extension.\n *\n * @param numGroupsX - `GLuint`\n * @param numGroupsY - `GLuint`\n * @param numGroupsZ - `GLuint`\n */\nexport function dispatchCompute(numGroupsX: GLuint, numGroupsY: GLuint, numGroupsZ: GLuint): void {\n glDispatchCompute(numGroupsX, numGroupsY, numGroupsZ);\n}\n\n/**\n * `void glDispatchComputeIndirect(GLintptr indirect)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_compute_shader\n * Also provided by the `GL_ARB_compute_shader` extension.\n *\n * @param indirect - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n */\nexport function dispatchComputeIndirect(indirect: GLintptr): void {\n glDispatchComputeIndirect(indirect);\n}\n\n/**\n * `void glDrawArrays(GLenum mode, GLint first, GLsizei count)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glDrawArraysEXT`.\n * GLX render opcode 193.\n *\n * @param mode - `PrimitiveType`\n * @param first - `GLint`\n * @param count - `GLsizei`\n */\nexport function drawArrays(mode: PrimitiveType, first: GLint, count: GLsizei): void {\n glDrawArrays(mode, first, count);\n}\n\n/**\n * `void glDrawArraysIndirect(GLenum mode, const void *indirect)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_draw_indirect\n * Also provided by the `GL_ARB_draw_indirect` extension.\n *\n * @param mode - `PrimitiveType`\n * @param indirect - `GLintptr`, byte offset into the bound buffer\n */\nexport function drawArraysIndirect(mode: PrimitiveType, indirect: GLintptr): void {\n glDrawArraysIndirect(mode, indirect);\n}\n\n/**\n * `void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Also known as `glDrawArraysInstancedANGLE`, `glDrawArraysInstancedARB`, `glDrawArraysInstancedEXT`, `glDrawArraysInstancedNV`.\n *\n * @param mode - `PrimitiveType`\n * @param first - `GLint`\n * @param count - `GLsizei`\n * @param instancecount - `GLsizei`\n */\nexport function drawArraysInstanced(mode: PrimitiveType, first: GLint, count: GLsizei, instancecount: GLsizei): void {\n glDrawArraysInstanced(mode, first, count, instancecount);\n}\n\n/**\n * `void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_base_instance\n * Also provided by the `GL_ARB_base_instance` extension.\n * Also known as `glDrawArraysInstancedBaseInstanceEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param first - `GLint`\n * @param count - `GLsizei`\n * @param instancecount - `GLsizei`\n * @param baseinstance - `GLuint`\n */\nexport function drawArraysInstancedBaseInstance(mode: PrimitiveType, first: GLint, count: GLsizei, instancecount: GLsizei, baseinstance: GLuint): void {\n glDrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);\n}\n\n/**\n * `void glDrawBuffer(GLenum buf)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 126.\n *\n * @param buf - `DrawBufferMode`\n */\nexport function drawBuffer(buf: DrawBufferMode): void {\n glDrawBuffer(buf);\n}\n\n/**\n * `void glDrawBuffers(GLsizei n, const GLenum *bufs)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glDrawBuffersARB`, `glDrawBuffersATI`, `glDrawBuffersEXT`.\n * GLX render opcode 233.\n *\n * @param n - `GLsizei`\n * @param bufs - `DrawBufferMode[] | Uint32Array`, length `n`\n */\nexport function drawBuffers(n: GLsizei, bufs: DrawBufferMode[] | Uint32Array): void {\n glDrawBuffers(n, bufs);\n}\n\n/**\n * `void glDrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices)`\n *\n * Provided by `GL_VERSION_1_1`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n */\nexport function drawElements(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr): void {\n glDrawElements(mode, count, type, indices);\n}\n\n/**\n * `void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_draw_elements_base_vertex\n * Also provided by the `GL_ARB_draw_elements_base_vertex` extension.\n * Also known as `glDrawElementsBaseVertexEXT`, `glDrawElementsBaseVertexOES`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param basevertex - `GLint`\n */\nexport function drawElementsBaseVertex(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr, basevertex: GLint): void {\n glDrawElementsBaseVertex(mode, count, type, indices, basevertex);\n}\n\n/**\n * `void glDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_draw_indirect\n * Also provided by the `GL_ARB_draw_indirect` extension.\n *\n * @param mode - `PrimitiveType`\n * @param type - `DrawElementsType`\n * @param indirect - `GLintptr`, byte offset into the bound buffer\n */\nexport function drawElementsIndirect(mode: PrimitiveType, type: DrawElementsType, indirect: GLintptr): void {\n glDrawElementsIndirect(mode, type, indirect);\n}\n\n/**\n * `void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Also known as `glDrawElementsInstancedANGLE`, `glDrawElementsInstancedARB`, `glDrawElementsInstancedEXT`, `glDrawElementsInstancedNV`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param instancecount - `GLsizei`\n */\nexport function drawElementsInstanced(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr, instancecount: GLsizei): void {\n glDrawElementsInstanced(mode, count, type, indices, instancecount);\n}\n\n/**\n * `void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_base_instance\n * Also provided by the `GL_ARB_base_instance` extension.\n * Also known as `glDrawElementsInstancedBaseInstanceEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param instancecount - `GLsizei`\n * @param baseinstance - `GLuint`\n */\nexport function drawElementsInstancedBaseInstance(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr, instancecount: GLsizei, baseinstance: GLuint): void {\n glDrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);\n}\n\n/**\n * `void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_draw_elements_base_vertex\n * Also provided by the `GL_ARB_draw_elements_base_vertex` extension.\n * Also known as `glDrawElementsInstancedBaseVertexEXT`, `glDrawElementsInstancedBaseVertexOES`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param instancecount - `GLsizei`\n * @param basevertex - `GLint`\n */\nexport function drawElementsInstancedBaseVertex(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr, instancecount: GLsizei, basevertex: GLint): void {\n glDrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);\n}\n\n/**\n * `void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_base_instance\n * Also provided by the `GL_ARB_base_instance` extension.\n * Also known as `glDrawElementsInstancedBaseVertexBaseInstanceEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param instancecount - `GLsizei`\n * @param basevertex - `GLint`\n * @param baseinstance - `GLuint`\n */\nexport function drawElementsInstancedBaseVertexBaseInstance(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr, instancecount: GLsizei, basevertex: GLint, baseinstance: GLuint): void {\n glDrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);\n}\n\n/**\n * `void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices)`\n *\n * Provided by `GL_VERSION_1_2`.\n * Also known as `glDrawRangeElementsEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param start - `GLuint`\n * @param end - `GLuint`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n */\nexport function drawRangeElements(mode: PrimitiveType, start: GLuint, end: GLuint, count: GLsizei, type: DrawElementsType, indices: GLintptr): void {\n glDrawRangeElements(mode, start, end, count, type, indices);\n}\n\n/**\n * `void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_draw_elements_base_vertex\n * Also provided by the `GL_ARB_draw_elements_base_vertex` extension.\n * Also known as `glDrawRangeElementsBaseVertexEXT`, `glDrawRangeElementsBaseVertexOES`.\n *\n * @param mode - `PrimitiveType`\n * @param start - `GLuint`\n * @param end - `GLuint`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param basevertex - `GLint`\n */\nexport function drawRangeElementsBaseVertex(mode: PrimitiveType, start: GLuint, end: GLuint, count: GLsizei, type: DrawElementsType, indices: GLintptr, basevertex: GLint): void {\n glDrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);\n}\n\n/**\n * `void glDrawTransformFeedback(GLenum mode, GLuint id)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glDrawTransformFeedbackEXT`, `glDrawTransformFeedbackNV`.\n *\n * @param mode - `PrimitiveType`\n * @param id - `GLuint`, object class `transform feedback`\n */\nexport function drawTransformFeedback(mode: PrimitiveType, id: GLuint): void {\n glDrawTransformFeedback(mode, id);\n}\n\n/**\n * `void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_transform_feedback_instanced\n * Also provided by the `GL_ARB_transform_feedback_instanced` extension.\n * Also known as `glDrawTransformFeedbackInstancedEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param id - `GLuint`, object class `transform feedback`\n * @param instancecount - `GLsizei`\n */\nexport function drawTransformFeedbackInstanced(mode: PrimitiveType, id: GLuint, instancecount: GLsizei): void {\n glDrawTransformFeedbackInstanced(mode, id, instancecount);\n}\n\n/**\n * `void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback3\n * Also provided by the `GL_ARB_transform_feedback3` extension.\n *\n * @param mode - `PrimitiveType`\n * @param id - `GLuint`, object class `transform feedback`\n * @param stream - `GLuint`\n */\nexport function drawTransformFeedbackStream(mode: PrimitiveType, id: GLuint, stream: GLuint): void {\n glDrawTransformFeedbackStream(mode, id, stream);\n}\n\n/**\n * `void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_transform_feedback_instanced\n * Also provided by the `GL_ARB_transform_feedback_instanced` extension.\n *\n * @param mode - `PrimitiveType`\n * @param id - `GLuint`, object class `transform feedback`\n * @param stream - `GLuint`\n * @param instancecount - `GLsizei`\n */\nexport function drawTransformFeedbackStreamInstanced(mode: PrimitiveType, id: GLuint, stream: GLuint, instancecount: GLsizei): void {\n glDrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);\n}\n\n/**\n * `void glEnable(GLenum cap)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 139.\n *\n * @param cap - `EnableCap`\n */\nexport function enable(cap: EnableCap): void {\n glEnable(cap);\n}\n\n/**\n * `void glEnablei(GLenum target, GLuint index)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glEnableiEXT`, `glEnableIndexedEXT`, `glEnableiNV`, `glEnableiOES`.\n *\n * @param target - `EnableCap`\n * @param index - `GLuint`\n */\nexport function enablei(target: EnableCap, index: GLuint): void {\n glEnablei(target, index);\n}\n\n/**\n * `void glEnableVertexArrayAttrib(GLuint vaobj, GLuint index)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param index - `GLuint`\n */\nexport function enableVertexArrayAttrib(vaobj: GLuint, index: GLuint): void {\n glEnableVertexArrayAttrib(vaobj, index);\n}\n\n/**\n * `void glEnableVertexAttribArray(GLuint index)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glEnableVertexAttribArrayARB`.\n *\n * @param index - `GLuint`\n */\nexport function enableVertexAttribArray(index: GLuint): void {\n glEnableVertexAttribArray(index);\n}\n\n/**\n * `void glEndConditionalRender()`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glEndConditionalRenderNV`, `glEndConditionalRenderNVX`.\n * GLX render opcode 349.\n */\nexport function endConditionalRender(): void {\n glEndConditionalRender();\n}\n\n/**\n * `void glEndQuery(GLenum target)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glEndQueryARB`.\n * GLX render opcode 232.\n *\n * @param target - `QueryTarget`\n */\nexport function endQuery(target: QueryTarget): void {\n glEndQuery(target);\n}\n\n/**\n * `void glEndQueryIndexed(GLenum target, GLuint index)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback3\n * Also provided by the `GL_ARB_transform_feedback3` extension.\n *\n * @param target - `QueryTarget`\n * @param index - `GLuint`\n */\nexport function endQueryIndexed(target: QueryTarget, index: GLuint): void {\n glEndQueryIndexed(target, index);\n}\n\n/**\n * `void glEndTransformFeedback()`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glEndTransformFeedbackEXT`, `glEndTransformFeedbackNV`.\n * GLX render opcode 358.\n */\nexport function endTransformFeedback(): void {\n glEndTransformFeedback();\n}\n\n/**\n * `GLsync glFenceSync(GLenum condition, GLbitfield flags)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glFenceSyncAPPLE`.\n *\n * @param condition - `SyncCondition`\n * @param flags - `SyncBehaviorFlags`\n * @returns `GLsync`, object class `sync`\n */\nexport function fenceSync(condition: SyncCondition, flags: SyncBehaviorFlags): GLsync {\n return glFenceSync(condition, flags) as GLsync;\n}\n\n/**\n * `void glFinish()`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 108.\n */\nexport function finish(): void {\n glFinish();\n}\n\n/**\n * `void glFlush()`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 142.\n */\nexport function flush(): void {\n glFlush();\n}\n\n/**\n * `void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_map_buffer_range\n * Also provided by the `GL_ARB_map_buffer_range` extension.\n * Also known as `glFlushMappedBufferRangeAPPLE`, `glFlushMappedBufferRangeEXT`.\n *\n * @param target - `BufferTargetARB`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param length - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function flushMappedBufferRange(target: BufferTargetARB, offset: GLintptr, length: GLsizeiptr): void {\n glFlushMappedBufferRange(target, offset, length);\n}\n\n/**\n * `void glFlushMappedNamedBufferRange(GLuint buffer, GLintptr offset, GLsizeiptr length)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param length - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function flushMappedNamedBufferRange(buffer: GLuint, offset: GLintptr, length: GLsizeiptr): void {\n glFlushMappedNamedBufferRange(buffer, offset, length);\n}\n\n/**\n * `void glFramebufferParameteri(GLenum target, GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_framebuffer_no_attachments\n * Also provided by the `GL_ARB_framebuffer_no_attachments` extension.\n *\n * @param target - `FramebufferTarget`\n * @param pname - `FramebufferParameterName`\n * @param param - `GLint`\n */\nexport function framebufferParameteri(target: FramebufferTarget, pname: FramebufferParameterName, param: GLint): void {\n glFramebufferParameteri(target, pname, param);\n}\n\n/**\n * `void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glFramebufferRenderbufferEXT`.\n * GLX render opcode 4324.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param renderbuffertarget - `RenderbufferTarget`\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n */\nexport function framebufferRenderbuffer(target: FramebufferTarget, attachment: FramebufferAttachment, renderbuffertarget: RenderbufferTarget, renderbuffer: GLuint): void {\n glFramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);\n}\n\n/**\n * `void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_texture_multisample\n * Also known as `glFramebufferTextureARB`, `glFramebufferTextureEXT`, `glFramebufferTextureOES`.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n */\nexport function framebufferTexture(target: FramebufferTarget, attachment: FramebufferAttachment, texture: GLuint, level: GLint): void {\n glFramebufferTexture(target, attachment, texture, level);\n}\n\n/**\n * `void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glFramebufferTexture1DEXT`.\n * GLX render opcode 4321.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param textarget - `TextureTarget`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n */\nexport function framebufferTexture1D(target: FramebufferTarget, attachment: FramebufferAttachment, textarget: TextureTarget, texture: GLuint, level: GLint): void {\n glFramebufferTexture1D(target, attachment, textarget, texture, level);\n}\n\n/**\n * `void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glFramebufferTexture2DEXT`.\n * GLX render opcode 4322.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param textarget - `TextureTarget`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n */\nexport function framebufferTexture2D(target: FramebufferTarget, attachment: FramebufferAttachment, textarget: TextureTarget, texture: GLuint, level: GLint): void {\n glFramebufferTexture2D(target, attachment, textarget, texture, level);\n}\n\n/**\n * `void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glFramebufferTexture3DEXT`.\n * GLX render opcode 4323.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param textarget - `TextureTarget`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param zoffset - `GLint`\n */\nexport function framebufferTexture3D(target: FramebufferTarget, attachment: FramebufferAttachment, textarget: TextureTarget, texture: GLuint, level: GLint, zoffset: GLint): void {\n glFramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);\n}\n\n/**\n * `void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glFramebufferTextureLayerARB`, `glFramebufferTextureLayerEXT`.\n * GLX render opcode 237.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param layer - `GLint`, kind `CheckedInt32`\n */\nexport function framebufferTextureLayer(target: FramebufferTarget, attachment: FramebufferAttachment, texture: GLuint, level: GLint, layer: GLint): void {\n glFramebufferTextureLayer(target, attachment, texture, level, layer);\n}\n\n/**\n * `void glFrontFace(GLenum mode)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 84.\n *\n * @param mode - `FrontFaceDirection`\n */\nexport function frontFace(mode: FrontFaceDirection): void {\n glFrontFace(mode);\n}\n\n/**\n * `void glGenBuffers(GLsizei n, GLuint *buffers)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGenBuffersARB`.\n *\n * @param n - `GLsizei`\n * @returns `buffers` (`GLuint[]`, length `n`, object class `buffer`)\n */\nexport function genBuffers(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glGenBuffers(n, out0);\n return out0.value;\n}\n\n/**\n * `void glGenerateMipmap(GLenum target)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glGenerateMipmapEXT`.\n * GLX render opcode 4325.\n *\n * @param target - `TextureTarget`\n */\nexport function generateMipmap(target: TextureTarget): void {\n glGenerateMipmap(target);\n}\n\n/**\n * `void glGenerateTextureMipmap(GLuint texture)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n */\nexport function generateTextureMipmap(texture: GLuint): void {\n glGenerateTextureMipmap(texture);\n}\n\n/**\n * `void glGenFramebuffers(GLsizei n, GLuint *framebuffers)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glGenFramebuffersEXT`.\n * GLX vendor opcode 1426.\n *\n * @param n - `GLsizei`\n * @returns `framebuffers` (`GLuint[]`, length `n`, object class `framebuffer`)\n */\nexport function genFramebuffers(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glGenFramebuffers(n, out0);\n return out0.value;\n}\n\n/**\n * `void glGenProgramPipelines(GLsizei n, GLuint *pipelines)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param n - `GLsizei`\n * @returns `pipelines` (`GLuint[]`, length `n`, object class `program pipeline`)\n */\nexport function genProgramPipelines(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glGenProgramPipelines(n, out0);\n return out0.value;\n}\n\n/**\n * `void glGenQueries(GLsizei n, GLuint *ids)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGenQueriesARB`.\n * GLX single opcode 162.\n *\n * @param n - `GLsizei`\n * @returns `ids` (`GLuint[]`, length `n`, object class `query`)\n */\nexport function genQueries(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glGenQueries(n, out0);\n return out0.value;\n}\n\n/**\n * `void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glGenRenderbuffersEXT`.\n * GLX vendor opcode 1423.\n *\n * @param n - `GLsizei`\n * @returns `renderbuffers` (`GLuint[]`, length `n`, object class `renderbuffer`)\n */\nexport function genRenderbuffers(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glGenRenderbuffers(n, out0);\n return out0.value;\n}\n\n/**\n * `void glGenSamplers(GLsizei count, GLuint *samplers)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param count - `GLsizei`\n * @returns `samplers` (`GLuint[]`, length `count`, object class `sampler`)\n */\nexport function genSamplers(count: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(count).fill(0) };\n glGenSamplers(count, out0);\n return out0.value;\n}\n\n/**\n * `void glGenTextures(GLsizei n, GLuint *textures)`\n *\n * Provided by `GL_VERSION_1_1`.\n * GLX single opcode 145.\n *\n * @param n - `GLsizei`\n * @returns `textures` (`GLuint[]`, length `n`, object class `texture`)\n */\nexport function genTextures(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glGenTextures(n, out0);\n return out0.value;\n}\n\n/**\n * `void glGenTransformFeedbacks(GLsizei n, GLuint *ids)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glGenTransformFeedbacksNV`.\n *\n * @param n - `GLsizei`\n * @returns `ids` (`GLuint[]`, length `n`, object class `transform feedback`)\n */\nexport function genTransformFeedbacks(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glGenTransformFeedbacks(n, out0);\n return out0.value;\n}\n\n/**\n * `void glGenVertexArrays(GLsizei n, GLuint *arrays)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n * Also known as `glGenVertexArraysAPPLE`, `glGenVertexArraysOES`.\n * GLX single opcode 206.\n *\n * @param n - `GLsizei`\n * @returns `arrays` (`GLuint[]`, length `n`, object class `vertex array`)\n */\nexport function genVertexArrays(n: GLsizei): GLuint[] {\n const out0 = { value: new Array<number>(n).fill(0) };\n glGenVertexArrays(n, out0);\n return out0.value;\n}\n\n/**\n * `void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetActiveAttribARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `size` (`GLint`), `type` (`AttributeType`), `name` (`string`, length `bufSize`)\n */\nexport function getActiveAttrib(program: GLuint, index: GLuint, bufSize: GLsizei): [GLsizei, GLint, AttributeType, string] {\n const out0 = { value: 0 };\n const out1 = { value: 0 };\n const out2 = { value: 0 };\n const out3 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetActiveAttrib\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.int32), t.ref(t.uint32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n binding(program, index, bufSize, out0, out1, out2, out3);\n return [out0.value, out1.value, out2.value, out3.value];\n}\n\n/**\n * `void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param shadertype - `ShaderType`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `name` (`string`, length `bufSize`)\n */\nexport function getActiveSubroutineName(program: GLuint, shadertype: ShaderType, index: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const out0 = { value: 0 };\n const out1 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetActiveSubroutineName\", [t.uint32, t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n binding(program, shadertype, index, bufSize, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param shadertype - `ShaderType`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `name` (`string`, length `bufSize`)\n */\nexport function getActiveSubroutineUniformName(program: GLuint, shadertype: ShaderType, index: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const out0 = { value: 0 };\n const out1 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetActiveSubroutineUniformName\", [t.uint32, t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n binding(program, shadertype, index, bufSize, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetActiveUniformARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `size` (`GLint`), `type` (`UniformType`), `name` (`string`, length `bufSize`)\n */\nexport function getActiveUniform(program: GLuint, index: GLuint, bufSize: GLsizei): [GLsizei, GLint, UniformType, string] {\n const out0 = { value: 0 };\n const out1 = { value: 0 };\n const out2 = { value: 0 };\n const out3 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetActiveUniform\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.int32), t.ref(t.uint32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n binding(program, index, bufSize, out0, out1, out2, out3);\n return [out0.value, out1.value, out2.value, out3.value];\n}\n\n/**\n * `void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Registry note: Reuse ARB_uniform_buffer_object\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * GLX single opcode 220.\n *\n * @param program - `GLuint`, object class `program`\n * @param uniformBlockIndex - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `uniformBlockName` (`string`, length `bufSize`)\n */\nexport function getActiveUniformBlockName(program: GLuint, uniformBlockIndex: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const out0 = { value: 0 };\n const out1 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetActiveUniformBlockName\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n binding(program, uniformBlockIndex, bufSize, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Registry note: Reuse ARB_uniform_buffer_object\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * GLX single opcode 217.\n *\n * @param program - `GLuint`, object class `program`\n * @param uniformIndex - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `uniformName` (`string`, length `bufSize`)\n */\nexport function getActiveUniformName(program: GLuint, uniformIndex: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const out0 = { value: 0 };\n const out1 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetActiveUniformName\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n binding(program, uniformIndex, bufSize, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders)`\n *\n * Provided by `GL_VERSION_2_0`.\n *\n * @param program - `GLuint`, object class `program`\n * @param maxCount - `GLsizei`\n * @returns Tuple of `count` (`GLsizei`), `shaders` (`GLuint[]`, length `maxCount`, object class `shader`)\n */\nexport function getAttachedShaders(program: GLuint, maxCount: GLsizei): [GLsizei, GLuint[]] {\n const out0 = { value: 0 };\n const out1 = { value: new Array<number>(maxCount).fill(0) };\n glGetAttachedShaders(program, maxCount, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `GLint glGetAttribLocation(GLuint program, const GLchar *name)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetAttribLocationARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param name - `string`\n * @returns `GLint`\n */\nexport function getAttribLocation(program: GLuint, name: string): GLint {\n return glGetAttribLocation(program, name) as GLint;\n}\n\n/**\n * `void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_texture_multisample\n *\n * @param target - `BufferTargetARB`\n * @param pname - `BufferPNameARB`\n * @returns `params` (`GLint64`)\n */\nexport function getBufferParameteri64v(target: BufferTargetARB, pname: BufferPNameARB): GLint64 {\n const out0 = { value: 0 };\n glGetBufferParameteri64v(target, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGetBufferParameterivARB`.\n *\n * @param target - `BufferTargetARB`\n * @param pname - `BufferPNameARB`\n * @returns `params` (`GLint`)\n */\nexport function getBufferParameteriv(target: BufferTargetARB, pname: BufferPNameARB): GLint {\n const out0 = { value: 0 };\n glGetBufferParameteriv(target, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGetBufferSubDataARB`.\n *\n * @param target - `BufferTargetARB`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n */\nexport function getBufferSubData(target: BufferTargetARB, offset: GLintptr, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null): void {\n glGetBufferSubData(target, offset, size, data);\n}\n\n/**\n * `void glGetCompressedTexImage(GLenum target, GLint level, void *img)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glGetCompressedTexImageARB`.\n * GLX single opcode 160.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param img - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(target,level)`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function getCompressedTexImage(target: TextureTarget, level: GLint, img: ArrayBufferView | GLintptr | null): void {\n glGetCompressedTexImage(target, level, img);\n}\n\n/**\n * `void glGetCompressedTextureImage(GLuint texture, GLint level, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getCompressedTextureImage(texture: GLuint, level: GLint, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetCompressedTextureImage(texture, level, bufSize, pixels);\n}\n\n/**\n * `void glGetCompressedTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_get_texture_sub_image\n * Also provided by the `GL_ARB_get_texture_sub_image` extension.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getCompressedTextureSubImage(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, bufSize, pixels);\n}\n\n/**\n * `GLuint glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glGetDebugMessageLogARB`, `glGetDebugMessageLogKHR`.\n *\n * @param count - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `GLuint`, `sources` (`DebugSource[]`, length `count`), `types` (`DebugType[]`, length `count`), `ids` (`GLuint[]`, length `count`), `severities` (`DebugSeverity[]`, length `count`), `lengths` (`GLsizei[]`, length `count`), `messageLog` (`string`, length `bufSize`)\n */\nexport function getDebugMessageLog(count: GLuint, bufSize: GLsizei): [GLuint, DebugSource[], DebugType[], GLuint[], DebugSeverity[], GLsizei[], string] {\n const out0 = { value: new Array<number>(count).fill(0) };\n const out1 = { value: new Array<number>(count).fill(0) };\n const out2 = { value: new Array<number>(count).fill(0) };\n const out3 = { value: new Array<number>(count).fill(0) };\n const out4 = { value: new Array<number>(count).fill(0) };\n const out5 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetDebugMessageLog\", [t.uint32, t.int32, t.ref(t.sizedArray(t.uint32, 0)), t.ref(t.sizedArray(t.uint32, 0)), t.ref(t.sizedArray(t.uint32, 0)), t.ref(t.sizedArray(t.uint32, 0)), t.ref(t.sizedArray(t.int32, 0)), t.ref(t.string(\"borrowed\", bufSize))], t.uint32);\n const result = binding(count, bufSize, out0, out1, out2, out3, out4, out5);\n return [result as GLuint, out0.value, out1.value, out2.value, out3.value, out4.value, out5.value];\n}\n\n/**\n * `GLenum glGetError()`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 115.\n *\n * @returns `ErrorCode`\n */\nexport function getError(): ErrorCode {\n return glGetError() as ErrorCode;\n}\n\n/**\n * `GLint glGetFragDataIndex(GLuint program, const GLchar *name)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_blend_func_extended\n * Also provided by the `GL_ARB_blend_func_extended` extension.\n * Also known as `glGetFragDataIndexEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param name - `string`\n * @returns `GLint`\n */\nexport function getFragDataIndex(program: GLuint, name: string): GLint {\n return glGetFragDataIndex(program, name) as GLint;\n}\n\n/**\n * `GLint glGetFragDataLocation(GLuint program, const GLchar *name)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glGetFragDataLocationEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param name - `string`, length `COMPSIZE(name)`\n * @returns `GLint`\n */\nexport function getFragDataLocation(program: GLuint, name: string): GLint {\n return glGetFragDataLocation(program, name) as GLint;\n}\n\n/**\n * `void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glGetFramebufferAttachmentParameterivEXT`.\n * GLX vendor opcode 1428.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param pname - `FramebufferAttachmentParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getFramebufferAttachmentParameteriv(target: FramebufferTarget, attachment: FramebufferAttachment, pname: FramebufferAttachmentParameterName): GLint {\n const out0 = { value: 0 };\n glGetFramebufferAttachmentParameteriv(target, attachment, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_framebuffer_no_attachments\n * Also provided by the `GL_ARB_framebuffer_no_attachments` extension.\n *\n * @param target - `FramebufferTarget`\n * @param pname - `FramebufferAttachmentParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getFramebufferParameteriv(target: FramebufferTarget, pname: FramebufferAttachmentParameterName): GLint {\n const out0 = { value: 0 };\n glGetFramebufferParameteriv(target, pname, out0);\n return out0.value;\n}\n\n/**\n * `GLenum glGetGraphicsResetStatus()`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_robustness\n * Also provided by the `GL_KHR_robustness` extension.\n * `GL_KHR_robustness` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glGetGraphicsResetStatusEXT`, `glGetGraphicsResetStatusKHR`.\n *\n * @returns `GraphicsResetStatus`\n */\nexport function getGraphicsResetStatus(): GraphicsResetStatus {\n return glGetGraphicsResetStatus() as GraphicsResetStatus;\n}\n\n/**\n * `void glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei count, GLint64 *params)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_internalformat_query2\n * Also provided by the `GL_ARB_internalformat_query2` extension.\n * `GL_ARB_internalformat_query2` note: Supported only if GL_KHR_texture_compression_astc_ldr is supported.\n *\n * @param target - `TextureTarget`\n * @param internalformat - `InternalFormat`\n * @param pname - `InternalFormatPName`\n * @param count - `GLsizei`\n * @returns `params` (`GLint64[]`, length `count`)\n */\nexport function getInternalformati64v(target: TextureTarget, internalformat: InternalFormat, pname: InternalFormatPName, count: GLsizei): GLint64[] {\n const out0 = { value: new Array<number>(count).fill(0) };\n glGetInternalformati64v(target, internalformat, pname, count, out0);\n return out0.value;\n}\n\n/**\n * `void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei count, GLint *params)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_internalformat_query\n * Also provided by the `GL_ARB_internalformat_query` extension.\n *\n * @param target - `TextureTarget`\n * @param internalformat - `InternalFormat`\n * @param pname - `InternalFormatPName`\n * @param count - `GLsizei`\n * @returns `params` (`GLint[]`, length `count`)\n */\nexport function getInternalformativ(target: TextureTarget, internalformat: InternalFormat, pname: InternalFormatPName, count: GLsizei): GLint[] {\n const out0 = { value: new Array<number>(count).fill(0) };\n glGetInternalformativ(target, internalformat, pname, count, out0);\n return out0.value;\n}\n\n/**\n * `void glGetNamedBufferParameteri64v(GLuint buffer, GLenum pname, GLint64 *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `BufferPNameARB`\n * @returns `params` (`GLint64`)\n */\nexport function getNamedBufferParameteri64v(buffer: GLuint, pname: BufferPNameARB): GLint64 {\n const out0 = { value: 0 };\n glGetNamedBufferParameteri64v(buffer, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetNamedBufferParameteriv(GLuint buffer, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `BufferPNameARB`\n * @returns `params` (`GLint`)\n */\nexport function getNamedBufferParameteriv(buffer: GLuint, pname: BufferPNameARB): GLint {\n const out0 = { value: 0 };\n glGetNamedBufferParameteriv(buffer, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size, void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n */\nexport function getNamedBufferSubData(buffer: GLuint, offset: GLintptr, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null): void {\n glGetNamedBufferSubData(buffer, offset, size, data);\n}\n\n/**\n * `void glGetNamedFramebufferAttachmentParameteriv(GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param attachment - `FramebufferAttachment`\n * @param pname - `FramebufferAttachmentParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getNamedFramebufferAttachmentParameteriv(framebuffer: GLuint, attachment: FramebufferAttachment, pname: FramebufferAttachmentParameterName): GLint {\n const out0 = { value: 0 };\n glGetNamedFramebufferAttachmentParameteriv(framebuffer, attachment, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetNamedFramebufferParameteriv(GLuint framebuffer, GLenum pname, GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param pname - `GetFramebufferParameter`\n * @returns `param` (`GLint`)\n */\nexport function getNamedFramebufferParameteriv(framebuffer: GLuint, pname: GetFramebufferParameter): GLint {\n const out0 = { value: 0 };\n glGetNamedFramebufferParameteriv(framebuffer, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetNamedRenderbufferParameteriv(GLuint renderbuffer, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Renderbuffer object functions.\n *\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n * @param pname - `RenderbufferParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getNamedRenderbufferParameteriv(renderbuffer: GLuint, pname: RenderbufferParameterName): GLint {\n const out0 = { value: 0 };\n glGetNamedRenderbufferParameteriv(renderbuffer, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetnCompressedTexImage(GLenum target, GLint lod, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_robustness\n *\n * @param target - `TextureTarget`\n * @param lod - `GLint`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getnCompressedTexImage(target: TextureTarget, lod: GLint, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetnCompressedTexImage(target, lod, bufSize, pixels);\n}\n\n/**\n * `void glGetnTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_robustness\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getnTexImage(target: TextureTarget, level: GLint, format: PixelFormat, type: PixelType, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetnTexImage(target, level, format, type, bufSize, pixels);\n}\n\n/**\n * `void glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glGetObjectLabelKHR`.\n *\n * @param identifier - `ObjectIdentifier`\n * @param name - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `label` (`string`, length `bufSize`)\n */\nexport function getObjectLabel(identifier: ObjectIdentifier, name: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const out0 = { value: 0 };\n const out1 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetObjectLabel\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n binding(identifier, name, bufSize, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `void glGetObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glGetObjectPtrLabelKHR`.\n *\n * @param ptr - `ArrayBufferView | GLintptr | null`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `label` (`string`, length `bufSize`)\n */\nexport function getObjectPtrLabel(ptr: ArrayBufferView | GLintptr | null, bufSize: GLsizei): [GLsizei, string] {\n const out0 = { value: 0 };\n const out1 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetObjectPtrLabel\", [t.buffer, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n binding(ptr, bufSize, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_get_program_binary\n * Also provided by the `GL_ARB_get_program_binary` extension.\n * Also known as `glGetProgramBinaryOES`.\n *\n * @param program - `GLuint`, object class `program`\n * @param bufSize - `GLsizei`\n * @param binary - `ArrayBufferView | GLintptr | null`, length `bufSize`\n * @returns Tuple of `length` (`GLsizei`), `binaryFormat` (`GLenum`)\n */\nexport function getProgramBinary(program: GLuint, bufSize: GLsizei, binary: ArrayBufferView | GLintptr | null): [GLsizei, GLenum] {\n const out0 = { value: 0 };\n const out1 = { value: 0 };\n glGetProgramBinary(program, bufSize, out0, out1, binary);\n return [out0.value, out1.value];\n}\n\n/**\n * `void glGetProgramiv(GLuint program, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 199.\n *\n * @param program - `GLuint`, object class `program`\n * @param pname - `ProgramPropertyARB`\n * @returns `params` (`GLint`)\n */\nexport function getProgramiv(program: GLuint, pname: ProgramPropertyARB): GLint {\n const out0 = { value: 0 };\n glGetProgramiv(program, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n * @param pname - `PipelineParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getProgramPipelineiv(pipeline: GLuint, pname: PipelineParameterName): GLint {\n const out0 = { value: 0 };\n glGetProgramPipelineiv(pipeline, pname, out0);\n return out0.value;\n}\n\n/**\n * `GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_program_interface_query\n * Also provided by the `GL_ARB_program_interface_query` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param programInterface - `ProgramInterface`\n * @param name - `string`, length `COMPSIZE(name)`\n * @returns `GLuint`\n */\nexport function getProgramResourceIndex(program: GLuint, programInterface: ProgramInterface, name: string): GLuint {\n return glGetProgramResourceIndex(program, programInterface, name) as GLuint;\n}\n\n/**\n * `void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei count, GLsizei *length, GLint *params)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_program_interface_query\n * Also provided by the `GL_ARB_program_interface_query` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param programInterface - `ProgramInterface`\n * @param index - `GLuint`\n * @param propCount - `GLsizei`\n * @param props - `ProgramResourceProperty[] | Uint32Array`, length `propCount`\n * @param count - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `params` (`GLint[]`, length `count`)\n */\nexport function getProgramResourceiv(program: GLuint, programInterface: ProgramInterface, index: GLuint, propCount: GLsizei, props: ProgramResourceProperty[] | Uint32Array, count: GLsizei): [GLsizei, GLint[]] {\n const out0 = { value: 0 };\n const out1 = { value: new Array<number>(count).fill(0) };\n glGetProgramResourceiv(program, programInterface, index, propCount, props, count, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_program_interface_query\n * Also provided by the `GL_ARB_program_interface_query` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param programInterface - `ProgramInterface`\n * @param name - `string`, length `COMPSIZE(name)`\n * @returns `GLint`\n */\nexport function getProgramResourceLocation(program: GLuint, programInterface: ProgramInterface, name: string): GLint {\n return glGetProgramResourceLocation(program, programInterface, name) as GLint;\n}\n\n/**\n * `GLint glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_program_interface_query\n * Also provided by the `GL_ARB_program_interface_query` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param programInterface - `ProgramInterface`\n * @param name - `string`, length `COMPSIZE(name)`\n * @returns `GLint`\n */\nexport function getProgramResourceLocationIndex(program: GLuint, programInterface: ProgramInterface, name: string): GLint {\n return glGetProgramResourceLocationIndex(program, programInterface, name) as GLint;\n}\n\n/**\n * `void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_program_interface_query\n * Also provided by the `GL_ARB_program_interface_query` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param programInterface - `ProgramInterface`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `name` (`string`, length `bufSize`)\n */\nexport function getProgramResourceName(program: GLuint, programInterface: ProgramInterface, index: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const out0 = { value: 0 };\n const out1 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetProgramResourceName\", [t.uint32, t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n binding(program, programInterface, index, bufSize, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param shadertype - `ShaderType`\n * @param pname - `ProgramStagePName`\n * @returns `values` (`GLint`)\n */\nexport function getProgramStageiv(program: GLuint, shadertype: ShaderType, pname: ProgramStagePName): GLint {\n const out0 = { value: 0 };\n glGetProgramStageiv(program, shadertype, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetQueryBufferObjecti64v(GLuint id, GLuint buffer, GLenum pname, GLintptr offset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param id - `GLuint`, object class `query`\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `QueryObjectParameterName`\n * @param offset - `GLintptr`\n */\nexport function getQueryBufferObjecti64v(id: GLuint, buffer: GLuint, pname: QueryObjectParameterName, offset: GLintptr): void {\n glGetQueryBufferObjecti64v(id, buffer, pname, offset);\n}\n\n/**\n * `void glGetQueryBufferObjectiv(GLuint id, GLuint buffer, GLenum pname, GLintptr offset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param id - `GLuint`, object class `query`\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `QueryObjectParameterName`\n * @param offset - `GLintptr`\n */\nexport function getQueryBufferObjectiv(id: GLuint, buffer: GLuint, pname: QueryObjectParameterName, offset: GLintptr): void {\n glGetQueryBufferObjectiv(id, buffer, pname, offset);\n}\n\n/**\n * `void glGetQueryBufferObjectui64v(GLuint id, GLuint buffer, GLenum pname, GLintptr offset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param id - `GLuint`, object class `query`\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `QueryObjectParameterName`\n * @param offset - `GLintptr`\n */\nexport function getQueryBufferObjectui64v(id: GLuint, buffer: GLuint, pname: QueryObjectParameterName, offset: GLintptr): void {\n glGetQueryBufferObjectui64v(id, buffer, pname, offset);\n}\n\n/**\n * `void glGetQueryBufferObjectuiv(GLuint id, GLuint buffer, GLenum pname, GLintptr offset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param id - `GLuint`, object class `query`\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `QueryObjectParameterName`\n * @param offset - `GLintptr`\n */\nexport function getQueryBufferObjectuiv(id: GLuint, buffer: GLuint, pname: QueryObjectParameterName, offset: GLintptr): void {\n glGetQueryBufferObjectuiv(id, buffer, pname, offset);\n}\n\n/**\n * `void glGetQueryiv(GLenum target, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGetQueryivARB`.\n * GLX single opcode 164.\n *\n * @param target - `QueryTarget`\n * @param pname - `QueryParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getQueryiv(target: QueryTarget, pname: QueryParameterName): GLint {\n const out0 = { value: 0 };\n glGetQueryiv(target, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_timer_query\n * Also provided by the `GL_ARB_timer_query` extension.\n * Also known as `glGetQueryObjecti64vEXT`.\n *\n * @param id - `GLuint`, object class `query`\n * @param pname - `QueryObjectParameterName`\n * @returns `params` (`GLint64`)\n */\nexport function getQueryObjecti64v(id: GLuint, pname: QueryObjectParameterName): GLint64 {\n const out0 = { value: 0 };\n glGetQueryObjecti64v(id, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGetQueryObjectivARB`, `glGetQueryObjectivEXT`.\n * GLX single opcode 165.\n *\n * @param id - `GLuint`, object class `query`\n * @param pname - `QueryObjectParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getQueryObjectiv(id: GLuint, pname: QueryObjectParameterName): GLint {\n const out0 = { value: 0 };\n glGetQueryObjectiv(id, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_timer_query\n * Also provided by the `GL_ARB_timer_query` extension.\n * Also known as `glGetQueryObjectui64vEXT`.\n *\n * @param id - `GLuint`, object class `query`\n * @param pname - `QueryObjectParameterName`\n * @returns `params` (`GLuint64`)\n */\nexport function getQueryObjectui64v(id: GLuint, pname: QueryObjectParameterName): GLuint64 {\n const out0 = { value: 0 };\n glGetQueryObjectui64v(id, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGetQueryObjectuivARB`.\n * GLX single opcode 166.\n *\n * @param id - `GLuint`, object class `query`\n * @param pname - `QueryObjectParameterName`\n * @returns `params` (`GLuint`)\n */\nexport function getQueryObjectuiv(id: GLuint, pname: QueryObjectParameterName): GLuint {\n const out0 = { value: 0 };\n glGetQueryObjectuiv(id, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glGetRenderbufferParameterivEXT`.\n * GLX vendor opcode 1424.\n *\n * @param target - `RenderbufferTarget`\n * @param pname - `RenderbufferParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getRenderbufferParameteriv(target: RenderbufferTarget, pname: RenderbufferParameterName): GLint {\n const out0 = { value: 0 };\n glGetRenderbufferParameteriv(target, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetShaderiv(GLuint shader, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 198.\n *\n * @param shader - `GLuint`, object class `shader`\n * @param pname - `ShaderParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getShaderiv(shader: GLuint, pname: ShaderParameterName): GLint {\n const out0 = { value: 0 };\n glGetShaderiv(shader, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_ES2_compatibility\n * Also provided by the `GL_ARB_ES2_compatibility` extension.\n *\n * @param shadertype - `ShaderType`\n * @param precisiontype - `PrecisionType`\n * @returns Tuple of `range` (`GLint[]`, length `2`), `precision` (`GLint`)\n */\nexport function getShaderPrecisionFormat(shadertype: ShaderType, precisiontype: PrecisionType): [GLint[], GLint] {\n const out0 = { value: new Array<number>(2).fill(0) };\n const out1 = { value: 0 };\n glGetShaderPrecisionFormat(shadertype, precisiontype, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetShaderSourceARB`.\n *\n * @param shader - `GLuint`, object class `shader`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `source` (`string`, length `bufSize`)\n */\nexport function getShaderSource(shader: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const out0 = { value: 0 };\n const out1 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetShaderSource\", [t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n binding(shader, bufSize, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `const GLubyte * glGetString(GLenum name)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 129.\n *\n * @param name - `StringName`\n * @returns `string`, kind `String`\n */\nexport function getString(name: StringName): string {\n return glGetString(name) as string;\n}\n\n/**\n * `const GLubyte * glGetStringi(GLenum name, GLuint index)`\n *\n * Provided by `GL_VERSION_3_0`.\n * GLX single opcode 214.\n *\n * @param name - `StringName`\n * @param index - `GLuint`\n * @returns `string`, kind `String`\n */\nexport function getStringi(name: StringName, index: GLuint): string {\n return glGetStringi(name, index) as string;\n}\n\n/**\n * `GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param shadertype - `ShaderType`\n * @param name - `string`\n * @returns `GLuint`\n */\nexport function getSubroutineIndex(program: GLuint, shadertype: ShaderType, name: string): GLuint {\n return glGetSubroutineIndex(program, shadertype, name) as GLuint;\n}\n\n/**\n * `GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param shadertype - `ShaderType`\n * @param name - `string`\n * @returns `GLint`\n */\nexport function getSubroutineUniformLocation(program: GLuint, shadertype: ShaderType, name: string): GLint {\n return glGetSubroutineUniformLocation(program, shadertype, name) as GLint;\n}\n\n/**\n * `void glGetSynciv(GLsync sync, GLenum pname, GLsizei count, GLsizei *length, GLint *values)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glGetSyncivAPPLE`.\n *\n * @param sync - `GLsync`, object class `sync`\n * @param pname - `SyncParameterName`\n * @param count - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `values` (`GLint[]`, length `count`)\n */\nexport function getSynciv(sync: GLsync, pname: SyncParameterName, count: GLsizei): [GLsizei, GLint[]] {\n const out0 = { value: 0 };\n const out1 = { value: new Array<number>(count).fill(0) };\n glGetSynciv(sync, pname, count, out0, out1);\n return [out0.value, out1.value];\n}\n\n/**\n * `void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 135.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(target,level,format,type)`\n */\nexport function getTexImage(target: TextureTarget, level: GLint, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glGetTexImage(target, level, format, type, pixels);\n}\n\n/**\n * `void glGetTextureImage(GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getTextureImage(texture: GLuint, level: GLint, format: PixelFormat, type: PixelType, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetTextureImage(texture, level, format, type, bufSize, pixels);\n}\n\n/**\n * `void glGetTextureLevelParameterfv(GLuint texture, GLint level, GLenum pname, GLfloat *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLfloat`)\n */\nexport function getTextureLevelParameterfv(texture: GLuint, level: GLint, pname: GetTextureParameter): GLfloat {\n const out0 = { value: 0 };\n glGetTextureLevelParameterfv(texture, level, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetTextureLevelParameteriv(GLuint texture, GLint level, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLint`)\n */\nexport function getTextureLevelParameteriv(texture: GLuint, level: GLint, pname: GetTextureParameter): GLint {\n const out0 = { value: 0 };\n glGetTextureLevelParameteriv(texture, level, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetTextureParameterfv(GLuint texture, GLenum pname, GLfloat *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLfloat`)\n */\nexport function getTextureParameterfv(texture: GLuint, pname: GetTextureParameter): GLfloat {\n const out0 = { value: 0 };\n glGetTextureParameterfv(texture, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetTextureParameterIiv(GLuint texture, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLint`)\n */\nexport function getTextureParameterIiv(texture: GLuint, pname: GetTextureParameter): GLint {\n const out0 = { value: 0 };\n glGetTextureParameterIiv(texture, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetTextureParameterIuiv(GLuint texture, GLenum pname, GLuint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLuint`)\n */\nexport function getTextureParameterIuiv(texture: GLuint, pname: GetTextureParameter): GLuint {\n const out0 = { value: 0 };\n glGetTextureParameterIuiv(texture, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetTextureParameteriv(GLuint texture, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLint`)\n */\nexport function getTextureParameteriv(texture: GLuint, pname: GetTextureParameter): GLint {\n const out0 = { value: 0 };\n glGetTextureParameteriv(texture, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_get_texture_sub_image\n * Also provided by the `GL_ARB_get_texture_sub_image` extension.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getTextureSubImage(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: PixelFormat, type: PixelType, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize, pixels);\n}\n\n/**\n * `void glGetTransformFeedbacki_v(GLuint xfb, GLenum pname, GLuint index, GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param xfb - `GLuint`, object class `transform feedback`\n * @param pname - `TransformFeedbackPName`\n * @param index - `GLuint`\n * @returns `param` (`GLint`)\n */\nexport function getTransformFeedbackiV(xfb: GLuint, pname: TransformFeedbackPName, index: GLuint): GLint {\n const out0 = { value: 0 };\n glGetTransformFeedbackiV(xfb, pname, index, out0);\n return out0.value;\n}\n\n/**\n * `void glGetTransformFeedbacki64_v(GLuint xfb, GLenum pname, GLuint index, GLint64 *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param xfb - `GLuint`, object class `transform feedback`\n * @param pname - `TransformFeedbackPName`\n * @param index - `GLuint`\n * @returns `param` (`GLint64`)\n */\nexport function getTransformFeedbacki64V(xfb: GLuint, pname: TransformFeedbackPName, index: GLuint): GLint64 {\n const out0 = { value: 0 };\n glGetTransformFeedbacki64V(xfb, pname, index, out0);\n return out0.value;\n}\n\n/**\n * `void glGetTransformFeedbackiv(GLuint xfb, GLenum pname, GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param xfb - `GLuint`, object class `transform feedback`\n * @param pname - `TransformFeedbackPName`\n * @returns `param` (`GLint`)\n */\nexport function getTransformFeedbackiv(xfb: GLuint, pname: TransformFeedbackPName): GLint {\n const out0 = { value: 0 };\n glGetTransformFeedbackiv(xfb, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glGetTransformFeedbackVaryingEXT`.\n * GLX single opcode 213.\n *\n * @param program - `GLuint`, object class `program`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `size` (`GLsizei`), `type` (`AttributeType`), `name` (`string`, length `bufSize`)\n */\nexport function getTransformFeedbackVarying(program: GLuint, index: GLuint, bufSize: GLsizei): [GLsizei, GLsizei, AttributeType, string] {\n const out0 = { value: 0 };\n const out1 = { value: 0 };\n const out2 = { value: 0 };\n const out3 = { value: \"\" };\n const binding = t.bind(LIB, \"glGetTransformFeedbackVarying\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.int32), t.ref(t.uint32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n binding(program, index, bufSize, out0, out1, out2, out3);\n return [out0.value, out1.value, out2.value, out3.value];\n}\n\n/**\n * `GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Registry note: Reuse ARB_uniform_buffer_object\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * GLX single opcode 218.\n *\n * @param program - `GLuint`, object class `program`\n * @param uniformBlockName - `string`, length `COMPSIZE()`\n * @returns `GLuint`\n */\nexport function getUniformBlockIndex(program: GLuint, uniformBlockName: string): GLuint {\n return glGetUniformBlockIndex(program, uniformBlockName) as GLuint;\n}\n\n/**\n * `GLint glGetUniformLocation(GLuint program, const GLchar *name)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetUniformLocationARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param name - `string`\n * @returns `GLint`\n */\nexport function getUniformLocation(program: GLuint, name: string): GLint {\n return glGetUniformLocation(program, name) as GLint;\n}\n\n/**\n * `void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param shadertype - `ShaderType`\n * @param location - `GLint`\n * @returns `params` (`GLuint`)\n */\nexport function getUniformSubroutineuiv(shadertype: ShaderType, location: GLint): GLuint {\n const out0 = { value: 0 };\n glGetUniformSubroutineuiv(shadertype, location, out0);\n return out0.value;\n}\n\n/**\n * `void glGetVertexArrayIndexed64iv(GLuint vaobj, GLuint index, GLenum pname, GLint64 *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param index - `GLuint`\n * @param pname - `VertexArrayPName`\n * @returns `param` (`GLint64`)\n */\nexport function getVertexArrayIndexed64iv(vaobj: GLuint, index: GLuint, pname: VertexArrayPName): GLint64 {\n const out0 = { value: 0 };\n glGetVertexArrayIndexed64iv(vaobj, index, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetVertexArrayIndexediv(GLuint vaobj, GLuint index, GLenum pname, GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param index - `GLuint`\n * @param pname - `VertexArrayPName`\n * @returns `param` (`GLint`)\n */\nexport function getVertexArrayIndexediv(vaobj: GLuint, index: GLuint, pname: VertexArrayPName): GLint {\n const out0 = { value: 0 };\n glGetVertexArrayIndexediv(vaobj, index, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetVertexArrayiv(GLuint vaobj, GLenum pname, GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param pname - `VertexArrayPName`\n * @returns `param` (`GLint`)\n */\nexport function getVertexArrayiv(vaobj: GLuint, pname: VertexArrayPName): GLint {\n const out0 = { value: 0 };\n glGetVertexArrayiv(vaobj, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetVertexAttribdvARB`, `glGetVertexAttribdvNV`.\n * GLX vendor opcode 1301.\n *\n * @param index - `GLuint`\n * @param pname - `VertexAttribPropertyARB`\n * @returns `params` (`GLdouble[]`, length `4`)\n */\nexport function getVertexAttribdv(index: GLuint, pname: VertexAttribPropertyARB): GLdouble[] {\n const out0 = { value: new Array<number>(4).fill(0) };\n glGetVertexAttribdv(index, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetVertexAttribfvARB`, `glGetVertexAttribfvNV`.\n * GLX vendor opcode 1302.\n *\n * @param index - `GLuint`\n * @param pname - `VertexAttribPropertyARB`\n * @returns `params` (`GLfloat[]`, length `4`)\n */\nexport function getVertexAttribfv(index: GLuint, pname: VertexAttribPropertyARB): GLfloat[] {\n const out0 = { value: new Array<number>(4).fill(0) };\n glGetVertexAttribfv(index, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glGetVertexAttribIivEXT`.\n *\n * @param index - `GLuint`\n * @param pname - `VertexAttribEnum`\n * @returns `params` (`GLint`)\n */\nexport function getVertexAttribIiv(index: GLuint, pname: VertexAttribEnum): GLint {\n const out0 = { value: 0 };\n glGetVertexAttribIiv(index, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glGetVertexAttribIuivEXT`.\n *\n * @param index - `GLuint`\n * @param pname - `VertexAttribEnum`\n * @returns `params` (`GLuint`)\n */\nexport function getVertexAttribIuiv(index: GLuint, pname: VertexAttribEnum): GLuint {\n const out0 = { value: 0 };\n glGetVertexAttribIuiv(index, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetVertexAttribivARB`, `glGetVertexAttribivNV`.\n * GLX vendor opcode 1303.\n *\n * @param index - `GLuint`\n * @param pname - `VertexAttribPropertyARB`\n * @returns `params` (`GLint[]`, length `4`)\n */\nexport function getVertexAttribiv(index: GLuint, pname: VertexAttribPropertyARB): GLint[] {\n const out0 = { value: new Array<number>(4).fill(0) };\n glGetVertexAttribiv(index, pname, out0);\n return out0.value;\n}\n\n/**\n * `void glHint(GLenum target, GLenum mode)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 85.\n *\n * @param target - `HintTarget`\n * @param mode - `HintMode`\n */\nexport function hint(target: HintTarget, mode: HintMode): void {\n glHint(target, mode);\n}\n\n/**\n * `void glInvalidateBufferData(GLuint buffer)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function invalidateBufferData(buffer: GLuint): void {\n glInvalidateBufferData(buffer);\n}\n\n/**\n * `void glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param length - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function invalidateBufferSubData(buffer: GLuint, offset: GLintptr, length: GLsizeiptr): void {\n glInvalidateBufferSubData(buffer, offset, length);\n}\n\n/**\n * `void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param target - `FramebufferTarget`\n * @param numAttachments - `GLsizei`\n * @param attachments - `InvalidateFramebufferAttachment[] | Uint32Array`, length `numAttachments`\n */\nexport function invalidateFramebuffer(target: FramebufferTarget, numAttachments: GLsizei, attachments: InvalidateFramebufferAttachment[] | Uint32Array): void {\n glInvalidateFramebuffer(target, numAttachments, attachments);\n}\n\n/**\n * `void glInvalidateNamedFramebufferData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param numAttachments - `GLsizei`\n * @param attachments - `FramebufferAttachment[] | Uint32Array`, length `numAttachments`\n */\nexport function invalidateNamedFramebufferData(framebuffer: GLuint, numAttachments: GLsizei, attachments: FramebufferAttachment[] | Uint32Array): void {\n glInvalidateNamedFramebufferData(framebuffer, numAttachments, attachments);\n}\n\n/**\n * `void glInvalidateNamedFramebufferSubData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param numAttachments - `GLsizei`\n * @param attachments - `FramebufferAttachment[] | Uint32Array`, length `numAttachments`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function invalidateNamedFramebufferSubData(framebuffer: GLuint, numAttachments: GLsizei, attachments: FramebufferAttachment[] | Uint32Array, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glInvalidateNamedFramebufferSubData(framebuffer, numAttachments, attachments, x, y, width, height);\n}\n\n/**\n * `void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param target - `FramebufferTarget`\n * @param numAttachments - `GLsizei`\n * @param attachments - `InvalidateFramebufferAttachment[] | Uint32Array`, length `numAttachments`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function invalidateSubFramebuffer(target: FramebufferTarget, numAttachments: GLsizei, attachments: InvalidateFramebufferAttachment[] | Uint32Array, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glInvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);\n}\n\n/**\n * `void glInvalidateTexImage(GLuint texture, GLint level)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n */\nexport function invalidateTexImage(texture: GLuint, level: GLint): void {\n glInvalidateTexImage(texture, level);\n}\n\n/**\n * `void glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n */\nexport function invalidateTexSubImage(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei): void {\n glInvalidateTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth);\n}\n\n/**\n * `GLboolean glIsBuffer(GLuint buffer)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glIsBufferARB`.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @returns `boolean`\n */\nexport function isBuffer(buffer: GLuint): boolean {\n return (glIsBuffer(buffer) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsEnabled(GLenum cap)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 140.\n *\n * @param cap - `EnableCap`\n * @returns `boolean`\n */\nexport function isEnabled(cap: EnableCap): boolean {\n return (glIsEnabled(cap) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsEnabledi(GLenum target, GLuint index)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glIsEnablediEXT`, `glIsEnabledIndexedEXT`, `glIsEnablediNV`, `glIsEnablediOES`.\n *\n * @param target - `EnableCap`\n * @param index - `GLuint`\n * @returns `boolean`\n */\nexport function isEnabledi(target: EnableCap, index: GLuint): boolean {\n return (glIsEnabledi(target, index) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsFramebuffer(GLuint framebuffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glIsFramebufferEXT`.\n * GLX vendor opcode 1425.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @returns `boolean`\n */\nexport function isFramebuffer(framebuffer: GLuint): boolean {\n return (glIsFramebuffer(framebuffer) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsProgram(GLuint program)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 197.\n *\n * @param program - `GLuint`, object class `program`\n * @returns `boolean`\n */\nexport function isProgram(program: GLuint): boolean {\n return (glIsProgram(program) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsProgramPipeline(GLuint pipeline)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n * @returns `boolean`\n */\nexport function isProgramPipeline(pipeline: GLuint): boolean {\n return (glIsProgramPipeline(pipeline) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsQuery(GLuint id)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glIsQueryARB`.\n * GLX single opcode 163.\n *\n * @param id - `GLuint`, object class `query`\n * @returns `boolean`\n */\nexport function isQuery(id: GLuint): boolean {\n return (glIsQuery(id) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsRenderbuffer(GLuint renderbuffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glIsRenderbufferEXT`.\n * GLX vendor opcode 1422.\n *\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n * @returns `boolean`\n */\nexport function isRenderbuffer(renderbuffer: GLuint): boolean {\n return (glIsRenderbuffer(renderbuffer) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsSampler(GLuint sampler)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @returns `boolean`\n */\nexport function isSampler(sampler: GLuint): boolean {\n return (glIsSampler(sampler) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsShader(GLuint shader)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 196.\n *\n * @param shader - `GLuint`, object class `shader`\n * @returns `boolean`\n */\nexport function isShader(shader: GLuint): boolean {\n return (glIsShader(shader) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsSync(GLsync sync)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glIsSyncAPPLE`.\n *\n * @param sync - `GLsync`, object class `sync`\n * @returns `boolean`\n */\nexport function isSync(sync: GLsync): boolean {\n return (glIsSync(sync) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsTexture(GLuint texture)`\n *\n * Provided by `GL_VERSION_1_1`.\n * GLX single opcode 146.\n *\n * @param texture - `GLuint`, object class `texture`\n * @returns `boolean`\n */\nexport function isTexture(texture: GLuint): boolean {\n return (glIsTexture(texture) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsTransformFeedback(GLuint id)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glIsTransformFeedbackNV`.\n *\n * @param id - `GLuint`, object class `transform feedback`\n * @returns `boolean`\n */\nexport function isTransformFeedback(id: GLuint): boolean {\n return (glIsTransformFeedback(id) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsVertexArray(GLuint array)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n * Also known as `glIsVertexArrayAPPLE`, `glIsVertexArrayOES`.\n * GLX single opcode 207.\n *\n * @param array - `GLuint`, object class `vertex array`\n * @returns `boolean`\n */\nexport function isVertexArray(array: GLuint): boolean {\n return (glIsVertexArray(array) as number) !== 0;\n}\n\n/**\n * `void glLineWidth(GLfloat width)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 95.\n *\n * @param width - `GLfloat`, kind `CheckedFloat32`\n */\nexport function lineWidth(width: GLfloat): void {\n glLineWidth(width);\n}\n\n/**\n * `void glLinkProgram(GLuint program)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glLinkProgramARB`.\n *\n * @param program - `GLuint`, object class `program`\n */\nexport function linkProgram(program: GLuint): void {\n glLinkProgram(program);\n}\n\n/**\n * `void glLogicOp(GLenum opcode)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 161.\n *\n * @param opcode - `LogicOp`\n */\nexport function logicOp(opcode: LogicOp): void {\n glLogicOp(opcode);\n}\n\n/**\n * `void * glMapBuffer(GLenum target, GLenum access)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glMapBufferARB`, `glMapBufferOES`.\n *\n * @param target - `BufferTargetARB`\n * @param access - `BufferAccessARB`\n * @returns `GLpointer`\n */\nexport function mapBuffer(target: BufferTargetARB, access: BufferAccessARB): GLpointer {\n return glMapBuffer(target, access) as GLpointer;\n}\n\n/**\n * `void * glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_map_buffer_range\n * Also provided by the `GL_ARB_map_buffer_range` extension.\n * Also known as `glMapBufferRangeEXT`.\n * GLX single opcode 205.\n *\n * @param target - `BufferTargetARB`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param length - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param access - `MapBufferAccessMask`\n * @returns `GLpointer`\n */\nexport function mapBufferRange(target: BufferTargetARB, offset: GLintptr, length: GLsizeiptr, access: MapBufferAccessMask): GLpointer {\n return glMapBufferRange(target, offset, length, access) as GLpointer;\n}\n\n/**\n * `void * glMapNamedBuffer(GLuint buffer, GLenum access)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param access - `BufferAccessARB`\n * @returns `GLpointer`\n */\nexport function mapNamedBuffer(buffer: GLuint, access: BufferAccessARB): GLpointer {\n return glMapNamedBuffer(buffer, access) as GLpointer;\n}\n\n/**\n * `void * glMapNamedBufferRange(GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param length - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param access - `MapBufferAccessMask`\n * @returns `GLpointer`\n */\nexport function mapNamedBufferRange(buffer: GLuint, offset: GLintptr, length: GLsizeiptr, access: MapBufferAccessMask): GLpointer {\n return glMapNamedBufferRange(buffer, offset, length, access) as GLpointer;\n}\n\n/**\n * `void glMemoryBarrier(GLbitfield barriers)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_shader_image_load_store\n * Also provided by the `GL_ARB_shader_image_load_store` extension.\n * Also known as `glMemoryBarrierEXT`.\n *\n * @param barriers - `MemoryBarrierMask`\n */\nexport function memoryBarrier(barriers: MemoryBarrierMask): void {\n glMemoryBarrier(barriers);\n}\n\n/**\n * `void glMemoryBarrierByRegion(GLbitfield barriers)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_ES3_1_compatibility\n * Also provided by the `GL_ARB_ES3_1_compatibility` extension.\n *\n * @param barriers - `MemoryBarrierMask`\n */\nexport function memoryBarrierByRegion(barriers: MemoryBarrierMask): void {\n glMemoryBarrierByRegion(barriers);\n}\n\n/**\n * `void glMinSampleShading(GLfloat value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Also known as `glMinSampleShadingARB`, `glMinSampleShadingOES`.\n *\n * @param value - `GLfloat`, kind `Clamped[0; 1]`. This parameter will get clamped to the 0 to 1 range.\n */\nexport function minSampleShading(value: GLfloat): void {\n glMinSampleShading(value);\n}\n\n/**\n * `void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glMultiDrawArraysEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param first - `GLint[] | Int32Array`, length `drawcount`\n * @param count - `GLsizei[] | Int32Array`, length `drawcount`\n * @param drawcount - `GLsizei`\n */\nexport function multiDrawArrays(mode: PrimitiveType, first: GLint[] | Int32Array, count: GLsizei[] | Int32Array, drawcount: GLsizei): void {\n glMultiDrawArrays(mode, first, count, drawcount);\n}\n\n/**\n * `void glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_multi_draw_indirect\n * Also provided by the `GL_ARB_multi_draw_indirect` extension.\n * Also known as `glMultiDrawArraysIndirectAMD`, `glMultiDrawArraysIndirectEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param indirect - `GLintptr`, byte offset into the bound buffer\n * @param drawcount - `GLsizei`\n * @param stride - `GLsizei`\n */\nexport function multiDrawArraysIndirect(mode: PrimitiveType, indirect: GLintptr, drawcount: GLsizei, stride: GLsizei): void {\n glMultiDrawArraysIndirect(mode, indirect, drawcount, stride);\n}\n\n/**\n * `void glMultiDrawArraysIndirectCount(GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_6`.\n * Registry note: Reuse GL_ARB_indirect_parameters\n * Also known as `glMultiDrawArraysIndirectCountARB`.\n *\n * @param mode - `PrimitiveType`\n * @param indirect - `ArrayBufferView | GLintptr | null`\n * @param drawcount - `GLintptr`\n * @param maxdrawcount - `GLsizei`\n * @param stride - `GLsizei`\n */\nexport function multiDrawArraysIndirectCount(mode: PrimitiveType, indirect: ArrayBufferView | GLintptr | null, drawcount: GLintptr, maxdrawcount: GLsizei, stride: GLsizei): void {\n glMultiDrawArraysIndirectCount(mode, indirect, drawcount, maxdrawcount, stride);\n}\n\n/**\n * `void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glMultiDrawElementsEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei[] | Int32Array`, length `drawcount`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr[]`, byte offsets into the bound buffer\n * @param drawcount - `GLsizei`\n */\nexport function multiDrawElements(mode: PrimitiveType, count: GLsizei[] | Int32Array, type: DrawElementsType, indices: GLintptr[], drawcount: GLsizei): void {\n glMultiDrawElements(mode, count, type, indices, drawcount);\n}\n\n/**\n * `void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount, const GLint *basevertex)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_draw_elements_base_vertex\n * Also provided by the `GL_ARB_draw_elements_base_vertex` extension.\n * Also known as `glMultiDrawElementsBaseVertexEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei[] | Int32Array`, length `drawcount`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr[]`, byte offsets into the bound buffer\n * @param drawcount - `GLsizei`\n * @param basevertex - `GLint[] | Int32Array`, length `drawcount`\n */\nexport function multiDrawElementsBaseVertex(mode: PrimitiveType, count: GLsizei[] | Int32Array, type: DrawElementsType, indices: GLintptr[], drawcount: GLsizei, basevertex: GLint[] | Int32Array): void {\n glMultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);\n}\n\n/**\n * `void glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_multi_draw_indirect\n * Also provided by the `GL_ARB_multi_draw_indirect` extension.\n * Also known as `glMultiDrawElementsIndirectAMD`, `glMultiDrawElementsIndirectEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param type - `DrawElementsType`\n * @param indirect - `GLintptr`, byte offset into the bound buffer\n * @param drawcount - `GLsizei`\n * @param stride - `GLsizei`\n */\nexport function multiDrawElementsIndirect(mode: PrimitiveType, type: DrawElementsType, indirect: GLintptr, drawcount: GLsizei, stride: GLsizei): void {\n glMultiDrawElementsIndirect(mode, type, indirect, drawcount, stride);\n}\n\n/**\n * `void glMultiDrawElementsIndirectCount(GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_6`.\n * Registry note: Reuse GL_ARB_indirect_parameters\n * Also known as `glMultiDrawElementsIndirectCountARB`.\n *\n * @param mode - `PrimitiveType`\n * @param type - `DrawElementsType`\n * @param indirect - `ArrayBufferView | GLintptr | null`\n * @param drawcount - `GLintptr`\n * @param maxdrawcount - `GLsizei`\n * @param stride - `GLsizei`\n */\nexport function multiDrawElementsIndirectCount(mode: PrimitiveType, type: DrawElementsType, indirect: ArrayBufferView | GLintptr | null, drawcount: GLintptr, maxdrawcount: GLsizei, stride: GLsizei): void {\n glMultiDrawElementsIndirectCount(mode, type, indirect, drawcount, maxdrawcount, stride);\n}\n\n/**\n * `void glNamedBufferData(GLuint buffer, GLsizeiptr size, const void *data, GLenum usage)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n * @param usage - `BufferUsageARB`\n */\nexport function namedBufferData(buffer: GLuint, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null, usage: BufferUsageARB): void {\n glNamedBufferData(buffer, size, data, usage);\n}\n\n/**\n * `void glNamedBufferStorage(GLuint buffer, GLsizeiptr size, const void *data, GLbitfield flags)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n * Also known as `glNamedBufferStorageEXT`.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n * @param flags - `BufferStorageMask`\n */\nexport function namedBufferStorage(buffer: GLuint, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null, flags: BufferStorageMask): void {\n glNamedBufferStorage(buffer, size, data, flags);\n}\n\n/**\n * `void glNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n * Also known as `glNamedBufferSubDataEXT`.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n */\nexport function namedBufferSubData(buffer: GLuint, offset: GLintptr, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null): void {\n glNamedBufferSubData(buffer, offset, size, data);\n}\n\n/**\n * `void glNamedFramebufferDrawBuffer(GLuint framebuffer, GLenum buf)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param buf - `ColorBuffer`\n */\nexport function namedFramebufferDrawBuffer(framebuffer: GLuint, buf: ColorBuffer): void {\n glNamedFramebufferDrawBuffer(framebuffer, buf);\n}\n\n/**\n * `void glNamedFramebufferDrawBuffers(GLuint framebuffer, GLsizei n, const GLenum *bufs)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param n - `GLsizei`\n * @param bufs - `ColorBuffer[] | Uint32Array`, length `n`\n */\nexport function namedFramebufferDrawBuffers(framebuffer: GLuint, n: GLsizei, bufs: ColorBuffer[] | Uint32Array): void {\n glNamedFramebufferDrawBuffers(framebuffer, n, bufs);\n}\n\n/**\n * `void glNamedFramebufferParameteri(GLuint framebuffer, GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param pname - `FramebufferParameterName`\n * @param param - `GLint`\n */\nexport function namedFramebufferParameteri(framebuffer: GLuint, pname: FramebufferParameterName, param: GLint): void {\n glNamedFramebufferParameteri(framebuffer, pname, param);\n}\n\n/**\n * `void glNamedFramebufferReadBuffer(GLuint framebuffer, GLenum src)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param src - `ColorBuffer`\n */\nexport function namedFramebufferReadBuffer(framebuffer: GLuint, src: ColorBuffer): void {\n glNamedFramebufferReadBuffer(framebuffer, src);\n}\n\n/**\n * `void glNamedFramebufferRenderbuffer(GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param attachment - `FramebufferAttachment`\n * @param renderbuffertarget - `RenderbufferTarget`\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n */\nexport function namedFramebufferRenderbuffer(framebuffer: GLuint, attachment: FramebufferAttachment, renderbuffertarget: RenderbufferTarget, renderbuffer: GLuint): void {\n glNamedFramebufferRenderbuffer(framebuffer, attachment, renderbuffertarget, renderbuffer);\n}\n\n/**\n * `void glNamedFramebufferTexture(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param attachment - `FramebufferAttachment`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n */\nexport function namedFramebufferTexture(framebuffer: GLuint, attachment: FramebufferAttachment, texture: GLuint, level: GLint): void {\n glNamedFramebufferTexture(framebuffer, attachment, texture, level);\n}\n\n/**\n * `void glNamedFramebufferTextureLayer(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param attachment - `FramebufferAttachment`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param layer - `GLint`\n */\nexport function namedFramebufferTextureLayer(framebuffer: GLuint, attachment: FramebufferAttachment, texture: GLuint, level: GLint, layer: GLint): void {\n glNamedFramebufferTextureLayer(framebuffer, attachment, texture, level, layer);\n}\n\n/**\n * `void glNamedRenderbufferStorage(GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Renderbuffer object functions.\n *\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function namedRenderbufferStorage(renderbuffer: GLuint, internalformat: InternalFormat, width: GLsizei, height: GLsizei): void {\n glNamedRenderbufferStorage(renderbuffer, internalformat, width, height);\n}\n\n/**\n * `void glNamedRenderbufferStorageMultisample(GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Renderbuffer object functions.\n *\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n * @param samples - `GLsizei`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function namedRenderbufferStorageMultisample(renderbuffer: GLuint, samples: GLsizei, internalformat: InternalFormat, width: GLsizei, height: GLsizei): void {\n glNamedRenderbufferStorageMultisample(renderbuffer, samples, internalformat, width, height);\n}\n\n/**\n * `void glObjectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glObjectLabelKHR`.\n *\n * @param identifier - `ObjectIdentifier`\n * @param name - `GLuint`\n * @param length - `GLsizei`\n * @param label - `string`, length `COMPSIZE(label,length)`\n */\nexport function objectLabel(identifier: ObjectIdentifier, name: GLuint, length: GLsizei, label: string): void {\n glObjectLabel(identifier, name, length, label);\n}\n\n/**\n * `void glObjectPtrLabel(const void *ptr, GLsizei length, const GLchar *label)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glObjectPtrLabelKHR`.\n *\n * @param ptr - `ArrayBufferView | GLintptr | null`\n * @param length - `GLsizei`\n * @param label - `string`, length `COMPSIZE(label,length)`\n */\nexport function objectPtrLabel(ptr: ArrayBufferView | GLintptr | null, length: GLsizei, label: string): void {\n glObjectPtrLabel(ptr, length, label);\n}\n\n/**\n * `void glPatchParameterfv(GLenum pname, const GLfloat *values)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_tessellation_shader\n * Also provided by the `GL_ARB_tessellation_shader` extension.\n *\n * @param pname - `PatchParameterName`\n * @param values - `GLfloat[] | Float32Array`, length `COMPSIZE(pname)`\n */\nexport function patchParameterfv(pname: PatchParameterName, values: GLfloat[] | Float32Array): void {\n glPatchParameterfv(pname, values);\n}\n\n/**\n * `void glPatchParameteri(GLenum pname, GLint value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_tessellation_shader\n * Also provided by the `GL_ARB_tessellation_shader` extension.\n * Also known as `glPatchParameteriEXT`, `glPatchParameteriOES`.\n *\n * @param pname - `PatchParameterName`\n * @param value - `GLint`\n */\nexport function patchParameteri(pname: PatchParameterName, value: GLint): void {\n glPatchParameteri(pname, value);\n}\n\n/**\n * `void glPauseTransformFeedback()`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glPauseTransformFeedbackNV`.\n */\nexport function pauseTransformFeedback(): void {\n glPauseTransformFeedback();\n}\n\n/**\n * `void glPixelStoref(GLenum pname, GLfloat param)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 109.\n *\n * @param pname - `PixelStoreParameter`\n * @param param - `GLfloat`, kind `CheckedFloat32`\n */\nexport function pixelStoref(pname: PixelStoreParameter, param: GLfloat): void {\n glPixelStoref(pname, param);\n}\n\n/**\n * `void glPixelStorei(GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 110.\n *\n * @param pname - `PixelStoreParameter`\n * @param param - `GLint`, kind `CheckedInt32`\n */\nexport function pixelStorei(pname: PixelStoreParameter, param: GLint): void {\n glPixelStorei(pname, param);\n}\n\n/**\n * `void glPointParameterf(GLenum pname, GLfloat param)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glPointParameterfARB`, `glPointParameterfEXT`, `glPointParameterfSGIS`.\n * GLX render opcode 2065.\n *\n * @param pname - `PointParameterNameARB`\n * @param param - `GLfloat`, kind `CheckedFloat32`\n */\nexport function pointParameterf(pname: PointParameterNameARB, param: GLfloat): void {\n glPointParameterf(pname, param);\n}\n\n/**\n * `void glPointParameterfv(GLenum pname, const GLfloat *params)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glPointParameterfvARB`, `glPointParameterfvEXT`, `glPointParameterfvSGIS`.\n * GLX render opcode 2066.\n *\n * @param pname - `PointParameterNameARB`\n * @param params - `GLfloat[] | Float32Array`, length `COMPSIZE(pname)`, kind `CheckedFloat32`\n */\nexport function pointParameterfv(pname: PointParameterNameARB, params: GLfloat[] | Float32Array): void {\n glPointParameterfv(pname, params);\n}\n\n/**\n * `void glPointParameteri(GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glPointParameteriNV`.\n * GLX render opcode 4221.\n *\n * @param pname - `PointParameterNameARB`\n * @param param - `GLint`\n */\nexport function pointParameteri(pname: PointParameterNameARB, param: GLint): void {\n glPointParameteri(pname, param);\n}\n\n/**\n * `void glPointParameteriv(GLenum pname, const GLint *params)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glPointParameterivNV`.\n * GLX render opcode 4222.\n *\n * @param pname - `PointParameterNameARB`\n * @param params - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function pointParameteriv(pname: PointParameterNameARB, params: GLint[] | Int32Array): void {\n glPointParameteriv(pname, params);\n}\n\n/**\n * `void glPointSize(GLfloat size)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 100.\n *\n * @param size - `GLfloat`, kind `CheckedFloat32`\n */\nexport function pointSize(size: GLfloat): void {\n glPointSize(size);\n}\n\n/**\n * `void glPolygonMode(GLenum face, GLenum mode)`\n *\n * Provided by `GL_VERSION_1_0`.\n * Also known as `glPolygonModeNV`.\n * GLX render opcode 101.\n *\n * @param face - `TriangleFace`\n * @param mode - `PolygonMode`\n */\nexport function polygonMode(face: TriangleFace, mode: PolygonMode): void {\n glPolygonMode(face, mode);\n}\n\n/**\n * `void glPolygonOffset(GLfloat factor, GLfloat units)`\n *\n * Provided by `GL_VERSION_1_1`.\n * GLX render opcode 192.\n *\n * @param factor - `GLfloat`\n * @param units - `GLfloat`\n */\nexport function polygonOffset(factor: GLfloat, units: GLfloat): void {\n glPolygonOffset(factor, units);\n}\n\n/**\n * `void glPolygonOffsetClamp(GLfloat factor, GLfloat units, GLfloat clamp)`\n *\n * Provided by `GL_VERSION_4_6`.\n * Registry note: Reuse GL_ARB_polygon_offset_clamp\n * Also provided by the `GL_ARB_polygon_offset_clamp` extension.\n * Also known as `glPolygonOffsetClampEXT`.\n * GLX render opcode 4225.\n *\n * @param factor - `GLfloat`\n * @param units - `GLfloat`\n * @param clamp - `GLfloat`\n */\nexport function polygonOffsetClamp(factor: GLfloat, units: GLfloat, clamp: GLfloat): void {\n glPolygonOffsetClamp(factor, units, clamp);\n}\n\n/**\n * `void glPopDebugGroup()`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glPopDebugGroupKHR`.\n */\nexport function popDebugGroup(): void {\n glPopDebugGroup();\n}\n\n/**\n * `void glPrimitiveRestartIndex(GLuint index)`\n *\n * Provided by `GL_VERSION_3_1`.\n *\n * @param index - `GLuint`\n */\nexport function primitiveRestartIndex(index: GLuint): void {\n glPrimitiveRestartIndex(index);\n}\n\n/**\n * `void glProgramBinary(GLuint program, GLenum binaryFormat, const void *binary, GLsizei length)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_get_program_binary\n * Also provided by the `GL_ARB_get_program_binary` extension.\n * Also known as `glProgramBinaryOES`.\n *\n * @param program - `GLuint`, object class `program`\n * @param binaryFormat - `GLenum`\n * @param binary - `ArrayBufferView | GLintptr | null`, length `length`\n * @param length - `GLsizei`\n */\nexport function programBinary(program: GLuint, binaryFormat: GLenum, binary: ArrayBufferView | GLintptr | null, length: GLsizei): void {\n glProgramBinary(program, binaryFormat, binary, length);\n}\n\n/**\n * `void glProgramParameteri(GLuint program, GLenum pname, GLint value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_get_program_binary\n * Also provided by the `GL_ARB_get_program_binary`, `GL_ARB_separate_shader_objects` extensions.\n * Also known as `glProgramParameteriARB`, `glProgramParameteriEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param pname - `ProgramParameterPName`\n * @param value - `GLint`\n */\nexport function programParameteri(program: GLuint, pname: ProgramParameterPName, value: GLint): void {\n glProgramParameteri(program, pname, value);\n}\n\n/**\n * `void glProgramUniform1d(GLuint program, GLint location, GLdouble v0)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLdouble`\n */\nexport function programUniform1d(program: GLuint, location: GLint, v0: GLdouble): void {\n glProgramUniform1d(program, location, v0);\n}\n\n/**\n * `void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function programUniform1dv(program: GLuint, location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glProgramUniform1dv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform1f(GLuint program, GLint location, GLfloat v0)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1fEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n */\nexport function programUniform1f(program: GLuint, location: GLint, v0: GLfloat): void {\n glProgramUniform1f(program, location, v0);\n}\n\n/**\n * `void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function programUniform1fv(program: GLuint, location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glProgramUniform1fv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform1i(GLuint program, GLint location, GLint v0)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1iEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLint`\n */\nexport function programUniform1i(program: GLuint, location: GLint, v0: GLint): void {\n glProgramUniform1i(program, location, v0);\n}\n\n/**\n * `void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1ivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function programUniform1iv(program: GLuint, location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glProgramUniform1iv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform1ui(GLuint program, GLint location, GLuint v0)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1uiEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLuint`\n */\nexport function programUniform1ui(program: GLuint, location: GLint, v0: GLuint): void {\n glProgramUniform1ui(program, location, v0);\n}\n\n/**\n * `void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1uivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function programUniform1uiv(program: GLuint, location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glProgramUniform1uiv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLdouble`\n * @param v1 - `GLdouble`\n */\nexport function programUniform2d(program: GLuint, location: GLint, v0: GLdouble, v1: GLdouble): void {\n glProgramUniform2d(program, location, v0, v1);\n}\n\n/**\n * `void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function programUniform2dv(program: GLuint, location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glProgramUniform2dv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2fEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n */\nexport function programUniform2f(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat): void {\n glProgramUniform2f(program, location, v0, v1);\n}\n\n/**\n * `void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function programUniform2fv(program: GLuint, location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glProgramUniform2fv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2iEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n */\nexport function programUniform2i(program: GLuint, location: GLint, v0: GLint, v1: GLint): void {\n glProgramUniform2i(program, location, v0, v1);\n}\n\n/**\n * `void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2ivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function programUniform2iv(program: GLuint, location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glProgramUniform2iv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2uiEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n */\nexport function programUniform2ui(program: GLuint, location: GLint, v0: GLuint, v1: GLuint): void {\n glProgramUniform2ui(program, location, v0, v1);\n}\n\n/**\n * `void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2uivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function programUniform2uiv(program: GLuint, location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glProgramUniform2uiv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLdouble`\n * @param v1 - `GLdouble`\n * @param v2 - `GLdouble`\n */\nexport function programUniform3d(program: GLuint, location: GLint, v0: GLdouble, v1: GLdouble, v2: GLdouble): void {\n glProgramUniform3d(program, location, v0, v1, v2);\n}\n\n/**\n * `void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function programUniform3dv(program: GLuint, location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glProgramUniform3dv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3fEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n * @param v2 - `GLfloat`\n */\nexport function programUniform3f(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat): void {\n glProgramUniform3f(program, location, v0, v1, v2);\n}\n\n/**\n * `void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function programUniform3fv(program: GLuint, location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glProgramUniform3fv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3iEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n * @param v2 - `GLint`\n */\nexport function programUniform3i(program: GLuint, location: GLint, v0: GLint, v1: GLint, v2: GLint): void {\n glProgramUniform3i(program, location, v0, v1, v2);\n}\n\n/**\n * `void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3ivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function programUniform3iv(program: GLuint, location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glProgramUniform3iv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3uiEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n * @param v2 - `GLuint`\n */\nexport function programUniform3ui(program: GLuint, location: GLint, v0: GLuint, v1: GLuint, v2: GLuint): void {\n glProgramUniform3ui(program, location, v0, v1, v2);\n}\n\n/**\n * `void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3uivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function programUniform3uiv(program: GLuint, location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glProgramUniform3uiv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLdouble`\n * @param v1 - `GLdouble`\n * @param v2 - `GLdouble`\n * @param v3 - `GLdouble`\n */\nexport function programUniform4d(program: GLuint, location: GLint, v0: GLdouble, v1: GLdouble, v2: GLdouble, v3: GLdouble): void {\n glProgramUniform4d(program, location, v0, v1, v2, v3);\n}\n\n/**\n * `void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function programUniform4dv(program: GLuint, location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glProgramUniform4dv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4fEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n * @param v2 - `GLfloat`\n * @param v3 - `GLfloat`\n */\nexport function programUniform4f(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat, v3: GLfloat): void {\n glProgramUniform4f(program, location, v0, v1, v2, v3);\n}\n\n/**\n * `void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function programUniform4fv(program: GLuint, location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glProgramUniform4fv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4iEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n * @param v2 - `GLint`\n * @param v3 - `GLint`\n */\nexport function programUniform4i(program: GLuint, location: GLint, v0: GLint, v1: GLint, v2: GLint, v3: GLint): void {\n glProgramUniform4i(program, location, v0, v1, v2, v3);\n}\n\n/**\n * `void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4ivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function programUniform4iv(program: GLuint, location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glProgramUniform4iv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4uiEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n * @param v2 - `GLuint`\n * @param v3 - `GLuint`\n */\nexport function programUniform4ui(program: GLuint, location: GLint, v0: GLuint, v1: GLuint, v2: GLuint, v3: GLuint): void {\n glProgramUniform4ui(program, location, v0, v1, v2, v3);\n}\n\n/**\n * `void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4uivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function programUniform4uiv(program: GLuint, location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glProgramUniform4uiv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*4`, kind `Matrix2x2`. This parameter represents a 2x2 matrix.\n */\nexport function programUniformMatrix2dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix2dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix2fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*4`, kind `Matrix2x2`. This parameter represents a 2x2 matrix.\n */\nexport function programUniformMatrix2fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix2fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*6`, kind `Matrix2x3`. This parameter represents a 2x3 matrix.\n */\nexport function programUniformMatrix2x3dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix2x3dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix2x3fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*6`, kind `Matrix2x3`. This parameter represents a 2x3 matrix.\n */\nexport function programUniformMatrix2x3fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix2x3fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*8`, kind `Matrix2x4`. This parameter represents a 2x4 matrix.\n */\nexport function programUniformMatrix2x4dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix2x4dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix2x4fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*8`, kind `Matrix2x4`. This parameter represents a 2x4 matrix.\n */\nexport function programUniformMatrix2x4fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix2x4fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*9`, kind `Matrix3x3`. This parameter represents a 3x3 matrix.\n */\nexport function programUniformMatrix3dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix3dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix3fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*9`, kind `Matrix3x3`. This parameter represents a 3x3 matrix.\n */\nexport function programUniformMatrix3fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix3fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*6`, kind `Matrix3x2`. This parameter represents a 3x2 matrix.\n */\nexport function programUniformMatrix3x2dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix3x2dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix3x2fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*6`, kind `Matrix3x2`. This parameter represents a 3x2 matrix.\n */\nexport function programUniformMatrix3x2fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix3x2fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*12`, kind `Matrix3x4`. This parameter represents a 3x4 matrix.\n */\nexport function programUniformMatrix3x4dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix3x4dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix3x4fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*12`, kind `Matrix3x4`. This parameter represents a 3x4 matrix.\n */\nexport function programUniformMatrix3x4fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix3x4fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*16`, kind `Matrix4x4`. This parameter represents a 4x4 matrix.\n */\nexport function programUniformMatrix4dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix4dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix4fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*16`, kind `Matrix4x4`. This parameter represents a 4x4 matrix.\n */\nexport function programUniformMatrix4fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix4fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*8`, kind `Matrix4x2`. This parameter represents a 4x2 matrix.\n */\nexport function programUniformMatrix4x2dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix4x2dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix4x2fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*8`, kind `Matrix4x2`. This parameter represents a 4x2 matrix.\n */\nexport function programUniformMatrix4x2fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix4x2fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*12`, kind `Matrix4x3`. This parameter represents a 4x3 matrix.\n */\nexport function programUniformMatrix4x3dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix4x3dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix4x3fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*12`, kind `Matrix4x3`. This parameter represents a 4x3 matrix.\n */\nexport function programUniformMatrix4x3fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix4x3fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProvokingVertex(GLenum mode)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_provoking_vertex\n * Also provided by the `GL_ARB_provoking_vertex` extension.\n * Also known as `glProvokingVertexEXT`.\n *\n * @param mode - `VertexProvokingMode`\n */\nexport function provokingVertex(mode: VertexProvokingMode): void {\n glProvokingVertex(mode);\n}\n\n/**\n * `void glPushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar *message)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glPushDebugGroupKHR`.\n *\n * @param source - `DebugSource`\n * @param id - `GLuint`\n * @param length - `GLsizei`\n * @param message - `string`, length `COMPSIZE(message,length)`\n */\nexport function pushDebugGroup(source: DebugSource, id: GLuint, length: GLsizei, message: string): void {\n glPushDebugGroup(source, id, length, message);\n}\n\n/**\n * `void glQueryCounter(GLuint id, GLenum target)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_timer_query\n * Also provided by the `GL_ARB_timer_query` extension.\n * Also known as `glQueryCounterEXT`.\n *\n * @param id - `GLuint`, object class `query`\n * @param target - `QueryCounterTarget`\n */\nexport function queryCounter(id: GLuint, target: QueryCounterTarget): void {\n glQueryCounter(id, target);\n}\n\n/**\n * `void glReadBuffer(GLenum src)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 171.\n *\n * @param src - `ReadBufferMode`\n */\nexport function readBuffer(src: ReadBufferMode): void {\n glReadBuffer(src);\n}\n\n/**\n * `void glReadnPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_robustness\n * Also provided by the `GL_KHR_robustness` extension.\n * `GL_KHR_robustness` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glReadnPixelsARB`, `glReadnPixelsEXT`, `glReadnPixelsKHR`.\n *\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param bufSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function readnPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: PixelFormat, type: PixelType, bufSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glReadnPixels(x, y, width, height, format, type, bufSize, data);\n}\n\n/**\n * `void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 111.\n *\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width,height)`\n */\nexport function readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glReadPixels(x, y, width, height, format, type, pixels);\n}\n\n/**\n * `void glReleaseShaderCompiler()`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_ES2_compatibility\n * Also provided by the `GL_ARB_ES2_compatibility` extension.\n */\nexport function releaseShaderCompiler(): void {\n glReleaseShaderCompiler();\n}\n\n/**\n * `void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glRenderbufferStorageEXT`.\n * GLX render opcode 4318.\n *\n * @param target - `RenderbufferTarget`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function renderbufferStorage(target: RenderbufferTarget, internalformat: InternalFormat, width: GLsizei, height: GLsizei): void {\n glRenderbufferStorage(target, internalformat, width, height);\n}\n\n/**\n * `void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glRenderbufferStorageMultisampleEXT`, `glRenderbufferStorageMultisampleNV`.\n * GLX render opcode 4331.\n *\n * @param target - `RenderbufferTarget`\n * @param samples - `GLsizei`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function renderbufferStorageMultisample(target: RenderbufferTarget, samples: GLsizei, internalformat: InternalFormat, width: GLsizei, height: GLsizei): void {\n glRenderbufferStorageMultisample(target, samples, internalformat, width, height);\n}\n\n/**\n * `void glResumeTransformFeedback()`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glResumeTransformFeedbackNV`.\n */\nexport function resumeTransformFeedback(): void {\n glResumeTransformFeedback();\n}\n\n/**\n * `void glSampleCoverage(GLfloat value, GLboolean invert)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glSampleCoverageARB`.\n * GLX render opcode 229.\n *\n * @param value - `GLfloat`\n * @param invert - `boolean`\n */\nexport function sampleCoverage(value: GLfloat, invert: boolean): void {\n glSampleCoverage(value, invert);\n}\n\n/**\n * `void glSampleMaski(GLuint maskNumber, GLbitfield mask)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_texture_multisample\n * Also provided by the `GL_ARB_texture_multisample` extension.\n *\n * @param maskNumber - `GLuint`\n * @param mask - `GLbitfield`\n */\nexport function sampleMaski(maskNumber: GLuint, mask: GLbitfield): void {\n glSampleMaski(maskNumber, mask);\n}\n\n/**\n * `void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterF`\n * @param param - `GLfloat`\n */\nexport function samplerParameterf(sampler: GLuint, pname: SamplerParameterF, param: GLfloat): void {\n glSamplerParameterf(sampler, pname, param);\n}\n\n/**\n * `void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterF`\n * @param param - `GLfloat[] | Float32Array`, length `COMPSIZE(pname)`\n */\nexport function samplerParameterfv(sampler: GLuint, pname: SamplerParameterF, param: GLfloat[] | Float32Array): void {\n glSamplerParameterfv(sampler, pname, param);\n}\n\n/**\n * `void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterI`\n * @param param - `GLint`\n */\nexport function samplerParameteri(sampler: GLuint, pname: SamplerParameterI, param: GLint): void {\n glSamplerParameteri(sampler, pname, param);\n}\n\n/**\n * `void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n * Also known as `glSamplerParameterIivEXT`, `glSamplerParameterIivOES`.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterI`\n * @param param - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function samplerParameterIiv(sampler: GLuint, pname: SamplerParameterI, param: GLint[] | Int32Array): void {\n glSamplerParameterIiv(sampler, pname, param);\n}\n\n/**\n * `void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n * Also known as `glSamplerParameterIuivEXT`, `glSamplerParameterIuivOES`.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterI`\n * @param param - `GLuint[] | Uint32Array`, length `COMPSIZE(pname)`\n */\nexport function samplerParameterIuiv(sampler: GLuint, pname: SamplerParameterI, param: GLuint[] | Uint32Array): void {\n glSamplerParameterIuiv(sampler, pname, param);\n}\n\n/**\n * `void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterI`\n * @param param - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function samplerParameteriv(sampler: GLuint, pname: SamplerParameterI, param: GLint[] | Int32Array): void {\n glSamplerParameteriv(sampler, pname, param);\n}\n\n/**\n * `void glScissor(GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 103.\n *\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function scissor(x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glScissor(x, y, width, height);\n}\n\n/**\n * `void glScissorArrayv(GLuint first, GLsizei count, const GLint *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glScissorArrayvNV`, `glScissorArrayvOES`.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param v - `GLint[] | Int32Array`, length `COMPSIZE(count)`\n */\nexport function scissorArrayv(first: GLuint, count: GLsizei, v: GLint[] | Int32Array): void {\n glScissorArrayv(first, count, v);\n}\n\n/**\n * `void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glScissorIndexedNV`, `glScissorIndexedOES`.\n *\n * @param index - `GLuint`\n * @param left - `GLint`\n * @param bottom - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function scissorIndexed(index: GLuint, left: GLint, bottom: GLint, width: GLsizei, height: GLsizei): void {\n glScissorIndexed(index, left, bottom, width, height);\n}\n\n/**\n * `void glScissorIndexedv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glScissorIndexedvNV`, `glScissorIndexedvOES`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `4`\n */\nexport function scissorIndexedv(index: GLuint, v: GLint[] | Int32Array): void {\n glScissorIndexedv(index, v);\n}\n\n/**\n * `void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryFormat, const void *binary, GLsizei length)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_ES2_compatibility\n * Also provided by the `GL_ARB_ES2_compatibility` extension.\n *\n * @param count - `GLsizei`\n * @param shaders - `GLuint[] | Uint32Array`, length `count`, object class `shader`\n * @param binaryFormat - `ShaderBinaryFormat`\n * @param binary - `ArrayBufferView | GLintptr | null`, length `length`\n * @param length - `GLsizei`\n */\nexport function shaderBinary(count: GLsizei, shaders: GLuint[] | Uint32Array, binaryFormat: ShaderBinaryFormat, binary: ArrayBufferView | GLintptr | null, length: GLsizei): void {\n glShaderBinary(count, shaders, binaryFormat, binary, length);\n}\n\n/**\n * `void glShaderSource(GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glShaderSourceARB`.\n *\n * @param shader - `GLuint`, object class `shader`\n * @param count - `GLsizei`\n * @param string - `string[]`, length `count`\n * @param length - `GLint[] | Int32Array`, length `count`\n */\nexport function shaderSource(shader: GLuint, count: GLsizei, string: string[], length: GLint[] | Int32Array): void {\n glShaderSource(shader, count, string, length);\n}\n\n/**\n * `void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_shader_storage_buffer_object\n * Also provided by the `GL_ARB_shader_storage_buffer_object` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param storageBlockIndex - `GLuint`\n * @param storageBlockBinding - `GLuint`\n */\nexport function shaderStorageBlockBinding(program: GLuint, storageBlockIndex: GLuint, storageBlockBinding: GLuint): void {\n glShaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding);\n}\n\n/**\n * `void glSpecializeShader(GLuint shader, const GLchar *pEntryPoint, GLuint numSpecializationConstants, const GLuint *pConstantIndex, const GLuint *pConstantValue)`\n *\n * Provided by `GL_VERSION_4_6`.\n * Registry note: Reuse GL_ARB_gl_spirv\n * Also known as `glSpecializeShaderARB`.\n *\n * @param shader - `GLuint`, object class `shader`\n * @param pEntryPoint - `string`\n * @param numSpecializationConstants - `GLuint`\n * @param pConstantIndex - `GLuint[] | Uint32Array`, length `numSpecializationConstants`\n * @param pConstantValue - `GLuint[] | Uint32Array`, length `numSpecializationConstants`\n */\nexport function specializeShader(shader: GLuint, pEntryPoint: string, numSpecializationConstants: GLuint, pConstantIndex: GLuint[] | Uint32Array, pConstantValue: GLuint[] | Uint32Array): void {\n glSpecializeShader(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue);\n}\n\n/**\n * `void glStencilFunc(GLenum func, GLint ref, GLuint mask)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 162.\n *\n * @param func - `StencilFunction`\n * @param ref - `GLint`, kind `StencilValue`. This parameter represents an unmasked stencil value.\n * @param mask - `GLuint`, kind `StencilMask`. This parameter represents mask to apply to stencil values.\n */\nexport function stencilFunc(func: StencilFunction, ref: GLint, mask: GLuint): void {\n glStencilFunc(func, ref, mask);\n}\n\n/**\n * `void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)`\n *\n * Provided by `GL_VERSION_2_0`.\n *\n * @param face - `TriangleFace`\n * @param func - `StencilFunction`\n * @param ref - `GLint`, kind `StencilValue`. This parameter represents an unmasked stencil value.\n * @param mask - `GLuint`, kind `StencilMask`. This parameter represents mask to apply to stencil values.\n */\nexport function stencilFuncSeparate(face: TriangleFace, func: StencilFunction, ref: GLint, mask: GLuint): void {\n glStencilFuncSeparate(face, func, ref, mask);\n}\n\n/**\n * `void glStencilMask(GLuint mask)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 133.\n *\n * @param mask - `GLuint`, kind `StencilMask`. This parameter represents mask to apply to stencil values.\n */\nexport function stencilMask(mask: GLuint): void {\n glStencilMask(mask);\n}\n\n/**\n * `void glStencilMaskSeparate(GLenum face, GLuint mask)`\n *\n * Provided by `GL_VERSION_2_0`.\n *\n * @param face - `TriangleFace`\n * @param mask - `GLuint`, kind `StencilMask`. This parameter represents mask to apply to stencil values.\n */\nexport function stencilMaskSeparate(face: TriangleFace, mask: GLuint): void {\n glStencilMaskSeparate(face, mask);\n}\n\n/**\n * `void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 163.\n *\n * @param fail - `StencilOp`\n * @param zfail - `StencilOp`\n * @param zpass - `StencilOp`\n */\nexport function stencilOp(fail: StencilOp, zfail: StencilOp, zpass: StencilOp): void {\n glStencilOp(fail, zfail, zpass);\n}\n\n/**\n * `void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glStencilOpSeparateATI`.\n *\n * @param face - `TriangleFace`\n * @param sfail - `StencilOp`\n * @param dpfail - `StencilOp`\n * @param dppass - `StencilOp`\n */\nexport function stencilOpSeparate(face: TriangleFace, sfail: StencilOp, dpfail: StencilOp, dppass: StencilOp): void {\n glStencilOpSeparate(face, sfail, dpfail, dppass);\n}\n\n/**\n * `void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Also known as `glTexBufferARB`, `glTexBufferEXT`, `glTexBufferOES`.\n *\n * @param target - `TextureTarget`\n * @param internalformat - `SizedInternalFormat`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function texBuffer(target: TextureTarget, internalformat: SizedInternalFormat, buffer: GLuint): void {\n glTexBuffer(target, internalformat, buffer);\n}\n\n/**\n * `void glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_texture_buffer_range\n * Also provided by the `GL_ARB_texture_buffer_range` extension.\n * Also known as `glTexBufferRangeEXT`, `glTexBufferRangeOES`.\n *\n * @param target - `TextureTarget`\n * @param internalformat - `SizedInternalFormat`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function texBufferRange(target: TextureTarget, internalformat: SizedInternalFormat, buffer: GLuint, offset: GLintptr, size: GLsizeiptr): void {\n glTexBufferRange(target, internalformat, buffer, offset, size);\n}\n\n/**\n * `void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 109.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `GLint`, group `InternalFormat`\n * @param width - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width)`\n */\nexport function texImage1D(target: TextureTarget, level: GLint, internalformat: GLint, width: GLsizei, border: GLint, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexImage1D(target, level, internalformat, width, border, format, type, pixels);\n}\n\n/**\n * `void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 110.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `GLint`, group `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width,height)`\n */\nexport function texImage2D(target: TextureTarget, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels);\n}\n\n/**\n * `void glTexImage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_texture_multisample\n * Also provided by the `GL_ARB_texture_multisample` extension.\n *\n * @param target - `TextureTarget`\n * @param samples - `GLsizei`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function texImage2DMultisample(target: TextureTarget, samples: GLsizei, internalformat: InternalFormat, width: GLsizei, height: GLsizei, fixedsamplelocations: boolean): void {\n glTexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);\n}\n\n/**\n * `void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_2`.\n * Also known as `glTexImage3DEXT`.\n * GLX render opcode 4114.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `GLint`, group `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width,height,depth)`\n */\nexport function texImage3D(target: TextureTarget, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);\n}\n\n/**\n * `void glTexImage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_texture_multisample\n * Also provided by the `GL_ARB_texture_multisample` extension.\n *\n * @param target - `TextureTarget`\n * @param samples - `GLsizei`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function texImage3DMultisample(target: TextureTarget, samples: GLsizei, internalformat: InternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei, fixedsamplelocations: boolean): void {\n glTexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);\n}\n\n/**\n * `void glTexParameterf(GLenum target, GLenum pname, GLfloat param)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 105.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param param - `GLfloat`, kind `CheckedFloat32`\n */\nexport function texParameterf(target: TextureTarget, pname: TextureParameterName, param: GLfloat): void {\n glTexParameterf(target, pname, param);\n}\n\n/**\n * `void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 106.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param params - `GLfloat[] | Float32Array`, length `COMPSIZE(pname)`, kind `CheckedFloat32`\n */\nexport function texParameterfv(target: TextureTarget, pname: TextureParameterName, params: GLfloat[] | Float32Array): void {\n glTexParameterfv(target, pname, params);\n}\n\n/**\n * `void glTexParameteri(GLenum target, GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 107.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param param - `GLint`, kind `CheckedInt32`\n */\nexport function texParameteri(target: TextureTarget, pname: TextureParameterName, param: GLint): void {\n glTexParameteri(target, pname, param);\n}\n\n/**\n * `void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glTexParameterIivEXT`, `glTexParameterIivOES`.\n * GLX render opcode 346.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param params - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function texParameterIiv(target: TextureTarget, pname: TextureParameterName, params: GLint[] | Int32Array): void {\n glTexParameterIiv(target, pname, params);\n}\n\n/**\n * `void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glTexParameterIuivEXT`, `glTexParameterIuivOES`.\n * GLX render opcode 347.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param params - `GLuint[] | Uint32Array`, length `COMPSIZE(pname)`\n */\nexport function texParameterIuiv(target: TextureTarget, pname: TextureParameterName, params: GLuint[] | Uint32Array): void {\n glTexParameterIuiv(target, pname, params);\n}\n\n/**\n * `void glTexParameteriv(GLenum target, GLenum pname, const GLint *params)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 108.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param params - `GLint[] | Int32Array`, length `COMPSIZE(pname)`, kind `CheckedInt32`\n */\nexport function texParameteriv(target: TextureTarget, pname: TextureParameterName, params: GLint[] | Int32Array): void {\n glTexParameteriv(target, pname, params);\n}\n\n/**\n * `void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_texture_storage\n * Also provided by the `GL_ARB_texture_storage` extension.\n * Also known as `glTexStorage1DEXT`.\n *\n * @param target - `TextureTarget`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n */\nexport function texStorage1D(target: TextureTarget, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei): void {\n glTexStorage1D(target, levels, internalformat, width);\n}\n\n/**\n * `void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_texture_storage\n * Also provided by the `GL_ARB_texture_storage` extension.\n * Also known as `glTexStorage2DEXT`.\n *\n * @param target - `TextureTarget`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function texStorage2D(target: TextureTarget, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei): void {\n glTexStorage2D(target, levels, internalformat, width, height);\n}\n\n/**\n * `void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_texture_storage_multisample\n * Also provided by the `GL_ARB_texture_storage_multisample` extension.\n *\n * @param target - `TextureTarget`\n * @param samples - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function texStorage2DMultisample(target: TextureTarget, samples: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, fixedsamplelocations: boolean): void {\n glTexStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);\n}\n\n/**\n * `void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_texture_storage\n * Also provided by the `GL_ARB_texture_storage` extension.\n * Also known as `glTexStorage3DEXT`.\n *\n * @param target - `TextureTarget`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n */\nexport function texStorage3D(target: TextureTarget, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei): void {\n glTexStorage3D(target, levels, internalformat, width, height, depth);\n}\n\n/**\n * `void glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_texture_storage_multisample\n * Also provided by the `GL_ARB_texture_storage_multisample` extension.\n * Also known as `glTexStorage3DMultisampleOES`.\n *\n * @param target - `TextureTarget`\n * @param samples - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function texStorage3DMultisample(target: TextureTarget, samples: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei, fixedsamplelocations: boolean): void {\n glTexStorage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);\n}\n\n/**\n * `void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glTexSubImage1DEXT`.\n * GLX render opcode 4099.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width)`\n */\nexport function texSubImage1D(target: TextureTarget, level: GLint, xoffset: GLint, width: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexSubImage1D(target, level, xoffset, width, format, type, pixels);\n}\n\n/**\n * `void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glTexSubImage2DEXT`.\n * GLX render opcode 4100.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width,height)`\n */\nexport function texSubImage2D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);\n}\n\n/**\n * `void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_2`.\n * Also known as `glTexSubImage3DEXT`.\n * GLX render opcode 4115.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param zoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width,height,depth)`\n */\nexport function texSubImage3D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);\n}\n\n/**\n * `void glTextureBarrier()`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_texture_barrier\n * Also provided by the `GL_ARB_texture_barrier` extension.\n */\nexport function textureBarrier(): void {\n glTextureBarrier();\n}\n\n/**\n * `void glTextureBuffer(GLuint texture, GLenum internalformat, GLuint buffer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param internalformat - `SizedInternalFormat`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function textureBuffer(texture: GLuint, internalformat: SizedInternalFormat, buffer: GLuint): void {\n glTextureBuffer(texture, internalformat, buffer);\n}\n\n/**\n * `void glTextureBufferRange(GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param internalformat - `SizedInternalFormat`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function textureBufferRange(texture: GLuint, internalformat: SizedInternalFormat, buffer: GLuint, offset: GLintptr, size: GLsizeiptr): void {\n glTextureBufferRange(texture, internalformat, buffer, offset, size);\n}\n\n/**\n * `void glTextureParameterf(GLuint texture, GLenum pname, GLfloat param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param param - `GLfloat`\n */\nexport function textureParameterf(texture: GLuint, pname: TextureParameterName, param: GLfloat): void {\n glTextureParameterf(texture, pname, param);\n}\n\n/**\n * `void glTextureParameterfv(GLuint texture, GLenum pname, const GLfloat *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param param - `GLfloat[] | Float32Array`, length `COMPSIZE(pname)`\n */\nexport function textureParameterfv(texture: GLuint, pname: TextureParameterName, param: GLfloat[] | Float32Array): void {\n glTextureParameterfv(texture, pname, param);\n}\n\n/**\n * `void glTextureParameteri(GLuint texture, GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param param - `GLint`\n */\nexport function textureParameteri(texture: GLuint, pname: TextureParameterName, param: GLint): void {\n glTextureParameteri(texture, pname, param);\n}\n\n/**\n * `void glTextureParameterIiv(GLuint texture, GLenum pname, const GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param params - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function textureParameterIiv(texture: GLuint, pname: TextureParameterName, params: GLint[] | Int32Array): void {\n glTextureParameterIiv(texture, pname, params);\n}\n\n/**\n * `void glTextureParameterIuiv(GLuint texture, GLenum pname, const GLuint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param params - `GLuint[] | Uint32Array`, length `COMPSIZE(pname)`\n */\nexport function textureParameterIuiv(texture: GLuint, pname: TextureParameterName, params: GLuint[] | Uint32Array): void {\n glTextureParameterIuiv(texture, pname, params);\n}\n\n/**\n * `void glTextureParameteriv(GLuint texture, GLenum pname, const GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param param - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function textureParameteriv(texture: GLuint, pname: TextureParameterName, param: GLint[] | Int32Array): void {\n glTextureParameteriv(texture, pname, param);\n}\n\n/**\n * `void glTextureStorage1D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n */\nexport function textureStorage1D(texture: GLuint, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei): void {\n glTextureStorage1D(texture, levels, internalformat, width);\n}\n\n/**\n * `void glTextureStorage2D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function textureStorage2D(texture: GLuint, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei): void {\n glTextureStorage2D(texture, levels, internalformat, width, height);\n}\n\n/**\n * `void glTextureStorage2DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param samples - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function textureStorage2DMultisample(texture: GLuint, samples: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, fixedsamplelocations: boolean): void {\n glTextureStorage2DMultisample(texture, samples, internalformat, width, height, fixedsamplelocations);\n}\n\n/**\n * `void glTextureStorage3D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n */\nexport function textureStorage3D(texture: GLuint, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei): void {\n glTextureStorage3D(texture, levels, internalformat, width, height, depth);\n}\n\n/**\n * `void glTextureStorage3DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param samples - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function textureStorage3DMultisample(texture: GLuint, samples: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei, fixedsamplelocations: boolean): void {\n glTextureStorage3DMultisample(texture, samples, internalformat, width, height, depth, fixedsamplelocations);\n}\n\n/**\n * `void glTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param width - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`\n */\nexport function textureSubImage1D(texture: GLuint, level: GLint, xoffset: GLint, width: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTextureSubImage1D(texture, level, xoffset, width, format, type, pixels);\n}\n\n/**\n * `void glTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`\n */\nexport function textureSubImage2D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, pixels);\n}\n\n/**\n * `void glTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`\n */\nexport function textureSubImage3D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);\n}\n\n/**\n * `void glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_texture_view\n * Also provided by the `GL_ARB_texture_view` extension.\n * Also known as `glTextureViewEXT`, `glTextureViewOES`.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param target - `TextureTarget`\n * @param origtexture - `GLuint`, object class `texture`\n * @param internalformat - `SizedInternalFormat`\n * @param minlevel - `GLuint`\n * @param numlevels - `GLuint`\n * @param minlayer - `GLuint`\n * @param numlayers - `GLuint`\n */\nexport function textureView(texture: GLuint, target: TextureTarget, origtexture: GLuint, internalformat: SizedInternalFormat, minlevel: GLuint, numlevels: GLuint, minlayer: GLuint, numlayers: GLuint): void {\n glTextureView(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);\n}\n\n/**\n * `void glTransformFeedbackBufferBase(GLuint xfb, GLuint index, GLuint buffer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param xfb - `GLuint`, object class `transform feedback`\n * @param index - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function transformFeedbackBufferBase(xfb: GLuint, index: GLuint, buffer: GLuint): void {\n glTransformFeedbackBufferBase(xfb, index, buffer);\n}\n\n/**\n * `void glTransformFeedbackBufferRange(GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param xfb - `GLuint`, object class `transform feedback`\n * @param index - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function transformFeedbackBufferRange(xfb: GLuint, index: GLuint, buffer: GLuint, offset: GLintptr, size: GLsizeiptr): void {\n glTransformFeedbackBufferRange(xfb, index, buffer, offset, size);\n}\n\n/**\n * `void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar *const*varyings, GLenum bufferMode)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glTransformFeedbackVaryingsEXT`.\n * GLX render opcode 359.\n *\n * @param program - `GLuint`, object class `program`\n * @param count - `GLsizei`\n * @param varyings - `string[]`, length `count`\n * @param bufferMode - `TransformFeedbackBufferMode`\n */\nexport function transformFeedbackVaryings(program: GLuint, count: GLsizei, varyings: string[], bufferMode: TransformFeedbackBufferMode): void {\n glTransformFeedbackVaryings(program, count, varyings, bufferMode);\n}\n\n/**\n * `void glUniform1d(GLint location, GLdouble x)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param x - `GLdouble`\n */\nexport function uniform1d(location: GLint, x: GLdouble): void {\n glUniform1d(location, x);\n}\n\n/**\n * `void glUniform1dv(GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*1`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function uniform1dv(location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glUniform1dv(location, count, value);\n}\n\n/**\n * `void glUniform1f(GLint location, GLfloat v0)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform1fARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n */\nexport function uniform1f(location: GLint, v0: GLfloat): void {\n glUniform1f(location, v0);\n}\n\n/**\n * `void glUniform1fv(GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform1fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*1`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function uniform1fv(location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glUniform1fv(location, count, value);\n}\n\n/**\n * `void glUniform1i(GLint location, GLint v0)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform1iARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLint`\n */\nexport function uniform1i(location: GLint, v0: GLint): void {\n glUniform1i(location, v0);\n}\n\n/**\n * `void glUniform1iv(GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform1ivARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*1`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function uniform1iv(location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glUniform1iv(location, count, value);\n}\n\n/**\n * `void glUniform1ui(GLint location, GLuint v0)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform1uiEXT`.\n *\n * @param location - `GLint`\n * @param v0 - `GLuint`\n */\nexport function uniform1ui(location: GLint, v0: GLuint): void {\n glUniform1ui(location, v0);\n}\n\n/**\n * `void glUniform1uiv(GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform1uivEXT`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*1`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function uniform1uiv(location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glUniform1uiv(location, count, value);\n}\n\n/**\n * `void glUniform2d(GLint location, GLdouble x, GLdouble y)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n */\nexport function uniform2d(location: GLint, x: GLdouble, y: GLdouble): void {\n glUniform2d(location, x, y);\n}\n\n/**\n * `void glUniform2dv(GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function uniform2dv(location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glUniform2dv(location, count, value);\n}\n\n/**\n * `void glUniform2f(GLint location, GLfloat v0, GLfloat v1)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform2fARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n */\nexport function uniform2f(location: GLint, v0: GLfloat, v1: GLfloat): void {\n glUniform2f(location, v0, v1);\n}\n\n/**\n * `void glUniform2fv(GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform2fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function uniform2fv(location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glUniform2fv(location, count, value);\n}\n\n/**\n * `void glUniform2i(GLint location, GLint v0, GLint v1)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform2iARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n */\nexport function uniform2i(location: GLint, v0: GLint, v1: GLint): void {\n glUniform2i(location, v0, v1);\n}\n\n/**\n * `void glUniform2iv(GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform2ivARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function uniform2iv(location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glUniform2iv(location, count, value);\n}\n\n/**\n * `void glUniform2ui(GLint location, GLuint v0, GLuint v1)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform2uiEXT`.\n *\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n */\nexport function uniform2ui(location: GLint, v0: GLuint, v1: GLuint): void {\n glUniform2ui(location, v0, v1);\n}\n\n/**\n * `void glUniform2uiv(GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform2uivEXT`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function uniform2uiv(location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glUniform2uiv(location, count, value);\n}\n\n/**\n * `void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n */\nexport function uniform3d(location: GLint, x: GLdouble, y: GLdouble, z: GLdouble): void {\n glUniform3d(location, x, y, z);\n}\n\n/**\n * `void glUniform3dv(GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function uniform3dv(location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glUniform3dv(location, count, value);\n}\n\n/**\n * `void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform3fARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n * @param v2 - `GLfloat`\n */\nexport function uniform3f(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat): void {\n glUniform3f(location, v0, v1, v2);\n}\n\n/**\n * `void glUniform3fv(GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform3fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function uniform3fv(location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glUniform3fv(location, count, value);\n}\n\n/**\n * `void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform3iARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n * @param v2 - `GLint`\n */\nexport function uniform3i(location: GLint, v0: GLint, v1: GLint, v2: GLint): void {\n glUniform3i(location, v0, v1, v2);\n}\n\n/**\n * `void glUniform3iv(GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform3ivARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function uniform3iv(location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glUniform3iv(location, count, value);\n}\n\n/**\n * `void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform3uiEXT`.\n *\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n * @param v2 - `GLuint`\n */\nexport function uniform3ui(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint): void {\n glUniform3ui(location, v0, v1, v2);\n}\n\n/**\n * `void glUniform3uiv(GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform3uivEXT`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function uniform3uiv(location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glUniform3uiv(location, count, value);\n}\n\n/**\n * `void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n * @param w - `GLdouble`\n */\nexport function uniform4d(location: GLint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble): void {\n glUniform4d(location, x, y, z, w);\n}\n\n/**\n * `void glUniform4dv(GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function uniform4dv(location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glUniform4dv(location, count, value);\n}\n\n/**\n * `void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform4fARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n * @param v2 - `GLfloat`\n * @param v3 - `GLfloat`\n */\nexport function uniform4f(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat, v3: GLfloat): void {\n glUniform4f(location, v0, v1, v2, v3);\n}\n\n/**\n * `void glUniform4fv(GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform4fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function uniform4fv(location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glUniform4fv(location, count, value);\n}\n\n/**\n * `void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform4iARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n * @param v2 - `GLint`\n * @param v3 - `GLint`\n */\nexport function uniform4i(location: GLint, v0: GLint, v1: GLint, v2: GLint, v3: GLint): void {\n glUniform4i(location, v0, v1, v2, v3);\n}\n\n/**\n * `void glUniform4iv(GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform4ivARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function uniform4iv(location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glUniform4iv(location, count, value);\n}\n\n/**\n * `void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform4uiEXT`.\n *\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n * @param v2 - `GLuint`\n * @param v3 - `GLuint`\n */\nexport function uniform4ui(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint, v3: GLuint): void {\n glUniform4ui(location, v0, v1, v2, v3);\n}\n\n/**\n * `void glUniform4uiv(GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform4uivEXT`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function uniform4uiv(location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glUniform4uiv(location, count, value);\n}\n\n/**\n * `void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Registry note: Reuse ARB_uniform_buffer_object\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * GLX render opcode 366.\n *\n * @param program - `GLuint`, object class `program`\n * @param uniformBlockIndex - `GLuint`\n * @param uniformBlockBinding - `GLuint`\n */\nexport function uniformBlockBinding(program: GLuint, uniformBlockIndex: GLuint, uniformBlockBinding: GLuint): void {\n glUniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);\n}\n\n/**\n * `void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*4`, kind `Matrix2x2`. This parameter represents a 2x2 matrix.\n */\nexport function uniformMatrix2dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix2dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniformMatrix2fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*4`, kind `Matrix2x2`. This parameter represents a 2x2 matrix.\n */\nexport function uniformMatrix2fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix2fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*6`, kind `Matrix2x3`. This parameter represents a 2x3 matrix.\n */\nexport function uniformMatrix2x3dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix2x3dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix2x3fvNV`.\n * GLX render opcode 305.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*6`, kind `Matrix2x3`. This parameter represents a 2x3 matrix.\n */\nexport function uniformMatrix2x3fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix2x3fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*8`, kind `Matrix2x4`. This parameter represents a 2x4 matrix.\n */\nexport function uniformMatrix2x4dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix2x4dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix2x4fvNV`.\n * GLX render opcode 307.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*8`, kind `Matrix2x4`. This parameter represents a 2x4 matrix.\n */\nexport function uniformMatrix2x4fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix2x4fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*9`, kind `Matrix3x3`. This parameter represents a 3x3 matrix.\n */\nexport function uniformMatrix3dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix3dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniformMatrix3fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*9`, kind `Matrix3x3`. This parameter represents a 3x3 matrix.\n */\nexport function uniformMatrix3fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix3fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*6`, kind `Matrix3x2`. This parameter represents a 3x2 matrix.\n */\nexport function uniformMatrix3x2dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix3x2dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix3x2fvNV`.\n * GLX render opcode 306.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*6`, kind `Matrix3x2`. This parameter represents a 3x2 matrix.\n */\nexport function uniformMatrix3x2fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix3x2fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*12`, kind `Matrix3x4`. This parameter represents a 3x4 matrix.\n */\nexport function uniformMatrix3x4dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix3x4dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix3x4fvNV`.\n * GLX render opcode 309.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*12`, kind `Matrix3x4`. This parameter represents a 3x4 matrix.\n */\nexport function uniformMatrix3x4fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix3x4fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*16`, kind `Matrix4x4`. This parameter represents a 4x4 matrix.\n */\nexport function uniformMatrix4dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix4dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniformMatrix4fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*16`, kind `Matrix4x4`. This parameter represents a 4x4 matrix.\n */\nexport function uniformMatrix4fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix4fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*8`, kind `Matrix4x2`. This parameter represents a 4x2 matrix.\n */\nexport function uniformMatrix4x2dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix4x2dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix4x2fvNV`.\n * GLX render opcode 308.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*8`, kind `Matrix4x2`. This parameter represents a 4x2 matrix.\n */\nexport function uniformMatrix4x2fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix4x2fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*12`, kind `Matrix4x3`. This parameter represents a 4x3 matrix.\n */\nexport function uniformMatrix4x3dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix4x3dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix4x3fvNV`.\n * GLX render opcode 310.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*12`, kind `Matrix4x3`. This parameter represents a 4x3 matrix.\n */\nexport function uniformMatrix4x3fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix4x3fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param shadertype - `ShaderType`\n * @param count - `GLsizei`\n * @param indices - `GLuint[] | Uint32Array`, length `count`\n */\nexport function uniformSubroutinesuiv(shadertype: ShaderType, count: GLsizei, indices: GLuint[] | Uint32Array): void {\n glUniformSubroutinesuiv(shadertype, count, indices);\n}\n\n/**\n * `GLboolean glUnmapBuffer(GLenum target)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glUnmapBufferARB`, `glUnmapBufferOES`.\n *\n * @param target - `BufferTargetARB`\n * @returns `boolean`\n */\nexport function unmapBuffer(target: BufferTargetARB): boolean {\n return (glUnmapBuffer(target) as number) !== 0;\n}\n\n/**\n * `GLboolean glUnmapNamedBuffer(GLuint buffer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @returns `boolean`\n */\nexport function unmapNamedBuffer(buffer: GLuint): boolean {\n return (glUnmapNamedBuffer(buffer) as number) !== 0;\n}\n\n/**\n * `void glUseProgram(GLuint program)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUseProgramObjectARB`.\n *\n * @param program - `GLuint`, object class `program`\n */\nexport function useProgram(program: GLuint): void {\n glUseProgram(program);\n}\n\n/**\n * `void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n * @param stages - `UseProgramStageMask`\n * @param program - `GLuint`, object class `program`\n */\nexport function useProgramStages(pipeline: GLuint, stages: UseProgramStageMask, program: GLuint): void {\n glUseProgramStages(pipeline, stages, program);\n}\n\n/**\n * `void glValidateProgram(GLuint program)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glValidateProgramARB`.\n *\n * @param program - `GLuint`, object class `program`\n */\nexport function validateProgram(program: GLuint): void {\n glValidateProgram(program);\n}\n\n/**\n * `void glValidateProgramPipeline(GLuint pipeline)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n */\nexport function validateProgramPipeline(pipeline: GLuint): void {\n glValidateProgramPipeline(pipeline);\n}\n\n/**\n * `void glVertexArrayAttribBinding(GLuint vaobj, GLuint attribindex, GLuint bindingindex)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param attribindex - `GLuint`\n * @param bindingindex - `GLuint`\n */\nexport function vertexArrayAttribBinding(vaobj: GLuint, attribindex: GLuint, bindingindex: GLuint): void {\n glVertexArrayAttribBinding(vaobj, attribindex, bindingindex);\n}\n\n/**\n * `void glVertexArrayAttribFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribType`\n * @param normalized - `boolean`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexArrayAttribFormat(vaobj: GLuint, attribindex: GLuint, size: GLint, type: VertexAttribType, normalized: boolean, relativeoffset: GLuint): void {\n glVertexArrayAttribFormat(vaobj, attribindex, size, type, normalized, relativeoffset);\n}\n\n/**\n * `void glVertexArrayAttribIFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribIType`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexArrayAttribIFormat(vaobj: GLuint, attribindex: GLuint, size: GLint, type: VertexAttribIType, relativeoffset: GLuint): void {\n glVertexArrayAttribIFormat(vaobj, attribindex, size, type, relativeoffset);\n}\n\n/**\n * `void glVertexArrayAttribLFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribLType`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexArrayAttribLFormat(vaobj: GLuint, attribindex: GLuint, size: GLint, type: VertexAttribLType, relativeoffset: GLuint): void {\n glVertexArrayAttribLFormat(vaobj, attribindex, size, type, relativeoffset);\n}\n\n/**\n * `void glVertexArrayBindingDivisor(GLuint vaobj, GLuint bindingindex, GLuint divisor)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param bindingindex - `GLuint`\n * @param divisor - `GLuint`\n */\nexport function vertexArrayBindingDivisor(vaobj: GLuint, bindingindex: GLuint, divisor: GLuint): void {\n glVertexArrayBindingDivisor(vaobj, bindingindex, divisor);\n}\n\n/**\n * `void glVertexArrayElementBuffer(GLuint vaobj, GLuint buffer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function vertexArrayElementBuffer(vaobj: GLuint, buffer: GLuint): void {\n glVertexArrayElementBuffer(vaobj, buffer);\n}\n\n/**\n * `void glVertexArrayVertexBuffer(GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param bindingindex - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param stride - `GLsizei`\n */\nexport function vertexArrayVertexBuffer(vaobj: GLuint, bindingindex: GLuint, buffer: GLuint, offset: GLintptr, stride: GLsizei): void {\n glVertexArrayVertexBuffer(vaobj, bindingindex, buffer, offset, stride);\n}\n\n/**\n * `void glVertexArrayVertexBuffers(GLuint vaobj, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param buffers - `GLuint[] | Uint32Array`, length `count`, object class `buffer`\n * @param offsets - `GLintptr[]`, length `count`\n * @param strides - `GLsizei[] | Int32Array`, length `count`\n */\nexport function vertexArrayVertexBuffers(vaobj: GLuint, first: GLuint, count: GLsizei, buffers: GLuint[] | Uint32Array, offsets: GLintptr[], strides: GLsizei[] | Int32Array): void {\n glVertexArrayVertexBuffers(vaobj, first, count, buffers, offsets, strides);\n}\n\n/**\n * `void glVertexAttrib1d(GLuint index, GLdouble x)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1dARB`, `glVertexAttrib1dNV`.\n * Vector form: `vertexAttrib1dv`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n */\nexport function vertexAttrib1d(index: GLuint, x: GLdouble): void {\n glVertexAttrib1d(index, x);\n}\n\n/**\n * `void glVertexAttrib1dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1dvARB`, `glVertexAttrib1dvNV`.\n * GLX render opcode 4197.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `1`\n */\nexport function vertexAttrib1dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttrib1dv(index, v);\n}\n\n/**\n * `void glVertexAttrib1f(GLuint index, GLfloat x)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1fARB`, `glVertexAttrib1fNV`.\n * Vector form: `vertexAttrib1fv`.\n *\n * @param index - `GLuint`\n * @param x - `GLfloat`\n */\nexport function vertexAttrib1f(index: GLuint, x: GLfloat): void {\n glVertexAttrib1f(index, x);\n}\n\n/**\n * `void glVertexAttrib1fv(GLuint index, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1fvARB`, `glVertexAttrib1fvNV`.\n * GLX render opcode 4193.\n *\n * @param index - `GLuint`\n * @param v - `GLfloat[] | Float32Array`, length `1`\n */\nexport function vertexAttrib1fv(index: GLuint, v: GLfloat[] | Float32Array): void {\n glVertexAttrib1fv(index, v);\n}\n\n/**\n * `void glVertexAttrib1s(GLuint index, GLshort x)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1sARB`, `glVertexAttrib1sNV`.\n * Vector form: `vertexAttrib1sv`.\n *\n * @param index - `GLuint`\n * @param x - `GLshort`\n */\nexport function vertexAttrib1s(index: GLuint, x: GLshort): void {\n glVertexAttrib1s(index, x);\n}\n\n/**\n * `void glVertexAttrib1sv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1svARB`, `glVertexAttrib1svNV`.\n * GLX render opcode 4189.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `1`\n */\nexport function vertexAttrib1sv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttrib1sv(index, v);\n}\n\n/**\n * `void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2dARB`, `glVertexAttrib2dNV`.\n * Vector form: `vertexAttrib2dv`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n */\nexport function vertexAttrib2d(index: GLuint, x: GLdouble, y: GLdouble): void {\n glVertexAttrib2d(index, x, y);\n}\n\n/**\n * `void glVertexAttrib2dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2dvARB`, `glVertexAttrib2dvNV`.\n * GLX render opcode 4198.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `2`\n */\nexport function vertexAttrib2dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttrib2dv(index, v);\n}\n\n/**\n * `void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2fARB`, `glVertexAttrib2fNV`.\n * Vector form: `vertexAttrib2fv`.\n *\n * @param index - `GLuint`\n * @param x - `GLfloat`\n * @param y - `GLfloat`\n */\nexport function vertexAttrib2f(index: GLuint, x: GLfloat, y: GLfloat): void {\n glVertexAttrib2f(index, x, y);\n}\n\n/**\n * `void glVertexAttrib2fv(GLuint index, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2fvARB`, `glVertexAttrib2fvNV`.\n * GLX render opcode 4194.\n *\n * @param index - `GLuint`\n * @param v - `GLfloat[] | Float32Array`, length `2`\n */\nexport function vertexAttrib2fv(index: GLuint, v: GLfloat[] | Float32Array): void {\n glVertexAttrib2fv(index, v);\n}\n\n/**\n * `void glVertexAttrib2s(GLuint index, GLshort x, GLshort y)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2sARB`, `glVertexAttrib2sNV`.\n * Vector form: `vertexAttrib2sv`.\n *\n * @param index - `GLuint`\n * @param x - `GLshort`\n * @param y - `GLshort`\n */\nexport function vertexAttrib2s(index: GLuint, x: GLshort, y: GLshort): void {\n glVertexAttrib2s(index, x, y);\n}\n\n/**\n * `void glVertexAttrib2sv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2svARB`, `glVertexAttrib2svNV`.\n * GLX render opcode 4190.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `2`\n */\nexport function vertexAttrib2sv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttrib2sv(index, v);\n}\n\n/**\n * `void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3dARB`, `glVertexAttrib3dNV`.\n * Vector form: `vertexAttrib3dv`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n */\nexport function vertexAttrib3d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble): void {\n glVertexAttrib3d(index, x, y, z);\n}\n\n/**\n * `void glVertexAttrib3dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3dvARB`, `glVertexAttrib3dvNV`.\n * GLX render opcode 4199.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `3`\n */\nexport function vertexAttrib3dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttrib3dv(index, v);\n}\n\n/**\n * `void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3fARB`, `glVertexAttrib3fNV`.\n * Vector form: `vertexAttrib3fv`.\n *\n * @param index - `GLuint`\n * @param x - `GLfloat`\n * @param y - `GLfloat`\n * @param z - `GLfloat`\n */\nexport function vertexAttrib3f(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat): void {\n glVertexAttrib3f(index, x, y, z);\n}\n\n/**\n * `void glVertexAttrib3fv(GLuint index, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3fvARB`, `glVertexAttrib3fvNV`.\n * GLX render opcode 4195.\n *\n * @param index - `GLuint`\n * @param v - `GLfloat[] | Float32Array`, length `3`\n */\nexport function vertexAttrib3fv(index: GLuint, v: GLfloat[] | Float32Array): void {\n glVertexAttrib3fv(index, v);\n}\n\n/**\n * `void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3sARB`, `glVertexAttrib3sNV`.\n * Vector form: `vertexAttrib3sv`.\n *\n * @param index - `GLuint`\n * @param x - `GLshort`\n * @param y - `GLshort`\n * @param z - `GLshort`\n */\nexport function vertexAttrib3s(index: GLuint, x: GLshort, y: GLshort, z: GLshort): void {\n glVertexAttrib3s(index, x, y, z);\n}\n\n/**\n * `void glVertexAttrib3sv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3svARB`, `glVertexAttrib3svNV`.\n * GLX render opcode 4191.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `3`\n */\nexport function vertexAttrib3sv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttrib3sv(index, v);\n}\n\n/**\n * `void glVertexAttrib4bv(GLuint index, const GLbyte *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4bvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLbyte[] | Int8Array`, length `4`\n */\nexport function vertexAttrib4bv(index: GLuint, v: GLbyte[] | Int8Array): void {\n glVertexAttrib4bv(index, v);\n}\n\n/**\n * `void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4dARB`, `glVertexAttrib4dNV`.\n * Vector form: `vertexAttrib4dv`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n * @param w - `GLdouble`\n */\nexport function vertexAttrib4d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble): void {\n glVertexAttrib4d(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttrib4dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4dvARB`, `glVertexAttrib4dvNV`.\n * GLX render opcode 4200.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `4`\n */\nexport function vertexAttrib4dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttrib4dv(index, v);\n}\n\n/**\n * `void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4fARB`, `glVertexAttrib4fNV`.\n * Vector form: `vertexAttrib4fv`.\n *\n * @param index - `GLuint`\n * @param x - `GLfloat`\n * @param y - `GLfloat`\n * @param z - `GLfloat`\n * @param w - `GLfloat`\n */\nexport function vertexAttrib4f(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat): void {\n glVertexAttrib4f(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttrib4fv(GLuint index, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4fvARB`, `glVertexAttrib4fvNV`.\n * GLX render opcode 4196.\n *\n * @param index - `GLuint`\n * @param v - `GLfloat[] | Float32Array`, length `4`\n */\nexport function vertexAttrib4fv(index: GLuint, v: GLfloat[] | Float32Array): void {\n glVertexAttrib4fv(index, v);\n}\n\n/**\n * `void glVertexAttrib4iv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4ivARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `4`\n */\nexport function vertexAttrib4iv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttrib4iv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Nbv(GLuint index, const GLbyte *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NbvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLbyte[] | Int8Array`, length `4`\n */\nexport function vertexAttrib4Nbv(index: GLuint, v: GLbyte[] | Int8Array): void {\n glVertexAttrib4Nbv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Niv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NivARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `4`\n */\nexport function vertexAttrib4Niv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttrib4Niv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Nsv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NsvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `4`\n */\nexport function vertexAttrib4Nsv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttrib4Nsv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NubARB`, `glVertexAttrib4ubNV`.\n *\n * @param index - `GLuint`\n * @param x - `GLubyte`\n * @param y - `GLubyte`\n * @param z - `GLubyte`\n * @param w - `GLubyte`\n */\nexport function vertexAttrib4Nub(index: GLuint, x: GLubyte, y: GLubyte, z: GLubyte, w: GLubyte): void {\n glVertexAttrib4Nub(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttrib4Nubv(GLuint index, const GLubyte *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NubvARB`, `glVertexAttrib4ubvNV`.\n * GLX render opcode 4201.\n *\n * @param index - `GLuint`\n * @param v - `GLubyte[] | Uint8Array`, length `4`\n */\nexport function vertexAttrib4Nubv(index: GLuint, v: GLubyte[] | Uint8Array): void {\n glVertexAttrib4Nubv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Nuiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NuivARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `4`\n */\nexport function vertexAttrib4Nuiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttrib4Nuiv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Nusv(GLuint index, const GLushort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NusvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLushort[] | Uint16Array`, length `4`\n */\nexport function vertexAttrib4Nusv(index: GLuint, v: GLushort[] | Uint16Array): void {\n glVertexAttrib4Nusv(index, v);\n}\n\n/**\n * `void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4sARB`, `glVertexAttrib4sNV`.\n * Vector form: `vertexAttrib4sv`.\n *\n * @param index - `GLuint`\n * @param x - `GLshort`\n * @param y - `GLshort`\n * @param z - `GLshort`\n * @param w - `GLshort`\n */\nexport function vertexAttrib4s(index: GLuint, x: GLshort, y: GLshort, z: GLshort, w: GLshort): void {\n glVertexAttrib4s(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttrib4sv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4svARB`, `glVertexAttrib4svNV`.\n * GLX render opcode 4192.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `4`\n */\nexport function vertexAttrib4sv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttrib4sv(index, v);\n}\n\n/**\n * `void glVertexAttrib4ubv(GLuint index, const GLubyte *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4ubvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLubyte[] | Uint8Array`, length `4`\n */\nexport function vertexAttrib4ubv(index: GLuint, v: GLubyte[] | Uint8Array): void {\n glVertexAttrib4ubv(index, v);\n}\n\n/**\n * `void glVertexAttrib4uiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4uivARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `4`\n */\nexport function vertexAttrib4uiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttrib4uiv(index, v);\n}\n\n/**\n * `void glVertexAttrib4usv(GLuint index, const GLushort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4usvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLushort[] | Uint16Array`, length `4`\n */\nexport function vertexAttrib4usv(index: GLuint, v: GLushort[] | Uint16Array): void {\n glVertexAttrib4usv(index, v);\n}\n\n/**\n * `void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param attribindex - `GLuint`\n * @param bindingindex - `GLuint`\n */\nexport function vertexAttribBinding(attribindex: GLuint, bindingindex: GLuint): void {\n glVertexAttribBinding(attribindex, bindingindex);\n}\n\n/**\n * `void glVertexAttribDivisor(GLuint index, GLuint divisor)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also known as `glVertexAttribDivisorANGLE`, `glVertexAttribDivisorARB`, `glVertexAttribDivisorEXT`, `glVertexAttribDivisorNV`.\n *\n * @param index - `GLuint`\n * @param divisor - `GLuint`\n */\nexport function vertexAttribDivisor(index: GLuint, divisor: GLuint): void {\n glVertexAttribDivisor(index, divisor);\n}\n\n/**\n * `void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribType`\n * @param normalized - `boolean`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexAttribFormat(attribindex: GLuint, size: GLint, type: VertexAttribType, normalized: boolean, relativeoffset: GLuint): void {\n glVertexAttribFormat(attribindex, size, type, normalized, relativeoffset);\n}\n\n/**\n * `void glVertexAttribI1i(GLuint index, GLint x)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI1iEXT`.\n * Vector form: `vertexAttribI1iv`.\n *\n * @param index - `GLuint`\n * @param x - `GLint`\n */\nexport function vertexAttribI1i(index: GLuint, x: GLint): void {\n glVertexAttribI1i(index, x);\n}\n\n/**\n * `void glVertexAttribI1iv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI1ivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `1`\n */\nexport function vertexAttribI1iv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttribI1iv(index, v);\n}\n\n/**\n * `void glVertexAttribI1ui(GLuint index, GLuint x)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI1uiEXT`.\n * Vector form: `vertexAttribI1uiv`.\n *\n * @param index - `GLuint`\n * @param x - `GLuint`\n */\nexport function vertexAttribI1ui(index: GLuint, x: GLuint): void {\n glVertexAttribI1ui(index, x);\n}\n\n/**\n * `void glVertexAttribI1uiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI1uivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `1`\n */\nexport function vertexAttribI1uiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttribI1uiv(index, v);\n}\n\n/**\n * `void glVertexAttribI2i(GLuint index, GLint x, GLint y)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI2iEXT`.\n * Vector form: `vertexAttribI2iv`.\n *\n * @param index - `GLuint`\n * @param x - `GLint`\n * @param y - `GLint`\n */\nexport function vertexAttribI2i(index: GLuint, x: GLint, y: GLint): void {\n glVertexAttribI2i(index, x, y);\n}\n\n/**\n * `void glVertexAttribI2iv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI2ivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `2`\n */\nexport function vertexAttribI2iv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttribI2iv(index, v);\n}\n\n/**\n * `void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI2uiEXT`.\n * Vector form: `vertexAttribI2uiv`.\n *\n * @param index - `GLuint`\n * @param x - `GLuint`\n * @param y - `GLuint`\n */\nexport function vertexAttribI2ui(index: GLuint, x: GLuint, y: GLuint): void {\n glVertexAttribI2ui(index, x, y);\n}\n\n/**\n * `void glVertexAttribI2uiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI2uivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `2`\n */\nexport function vertexAttribI2uiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttribI2uiv(index, v);\n}\n\n/**\n * `void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI3iEXT`.\n * Vector form: `vertexAttribI3iv`.\n *\n * @param index - `GLuint`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param z - `GLint`\n */\nexport function vertexAttribI3i(index: GLuint, x: GLint, y: GLint, z: GLint): void {\n glVertexAttribI3i(index, x, y, z);\n}\n\n/**\n * `void glVertexAttribI3iv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI3ivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `3`\n */\nexport function vertexAttribI3iv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttribI3iv(index, v);\n}\n\n/**\n * `void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI3uiEXT`.\n * Vector form: `vertexAttribI3uiv`.\n *\n * @param index - `GLuint`\n * @param x - `GLuint`\n * @param y - `GLuint`\n * @param z - `GLuint`\n */\nexport function vertexAttribI3ui(index: GLuint, x: GLuint, y: GLuint, z: GLuint): void {\n glVertexAttribI3ui(index, x, y, z);\n}\n\n/**\n * `void glVertexAttribI3uiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI3uivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `3`\n */\nexport function vertexAttribI3uiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttribI3uiv(index, v);\n}\n\n/**\n * `void glVertexAttribI4bv(GLuint index, const GLbyte *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4bvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLbyte[] | Int8Array`, length `4`\n */\nexport function vertexAttribI4bv(index: GLuint, v: GLbyte[] | Int8Array): void {\n glVertexAttribI4bv(index, v);\n}\n\n/**\n * `void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4iEXT`.\n * Vector form: `vertexAttribI4iv`.\n *\n * @param index - `GLuint`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param z - `GLint`\n * @param w - `GLint`\n */\nexport function vertexAttribI4i(index: GLuint, x: GLint, y: GLint, z: GLint, w: GLint): void {\n glVertexAttribI4i(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttribI4iv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4ivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `4`\n */\nexport function vertexAttribI4iv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttribI4iv(index, v);\n}\n\n/**\n * `void glVertexAttribI4sv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4svEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `4`\n */\nexport function vertexAttribI4sv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttribI4sv(index, v);\n}\n\n/**\n * `void glVertexAttribI4ubv(GLuint index, const GLubyte *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4ubvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLubyte[] | Uint8Array`, length `4`\n */\nexport function vertexAttribI4ubv(index: GLuint, v: GLubyte[] | Uint8Array): void {\n glVertexAttribI4ubv(index, v);\n}\n\n/**\n * `void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4uiEXT`.\n * Vector form: `vertexAttribI4uiv`.\n *\n * @param index - `GLuint`\n * @param x - `GLuint`\n * @param y - `GLuint`\n * @param z - `GLuint`\n * @param w - `GLuint`\n */\nexport function vertexAttribI4ui(index: GLuint, x: GLuint, y: GLuint, z: GLuint, w: GLuint): void {\n glVertexAttribI4ui(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttribI4uiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4uivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `4`\n */\nexport function vertexAttribI4uiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttribI4uiv(index, v);\n}\n\n/**\n * `void glVertexAttribI4usv(GLuint index, const GLushort *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4usvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLushort[] | Uint16Array`, length `4`\n */\nexport function vertexAttribI4usv(index: GLuint, v: GLushort[] | Uint16Array): void {\n glVertexAttribI4usv(index, v);\n}\n\n/**\n * `void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribIType`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexAttribIFormat(attribindex: GLuint, size: GLint, type: VertexAttribIType, relativeoffset: GLuint): void {\n glVertexAttribIFormat(attribindex, size, type, relativeoffset);\n}\n\n/**\n * `void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribIPointerEXT`.\n *\n * @param index - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribIType`\n * @param stride - `GLsizei`\n * @param pointer - `GLintptr`, byte offset into the bound buffer\n */\nexport function vertexAttribIPointer(index: GLuint, size: GLint, type: VertexAttribIType, stride: GLsizei, pointer: GLintptr): void {\n glVertexAttribIPointer(index, size, type, stride, pointer);\n}\n\n/**\n * `void glVertexAttribL1d(GLuint index, GLdouble x)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL1dEXT`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n */\nexport function vertexAttribL1d(index: GLuint, x: GLdouble): void {\n glVertexAttribL1d(index, x);\n}\n\n/**\n * `void glVertexAttribL1dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL1dvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `1`\n */\nexport function vertexAttribL1dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttribL1dv(index, v);\n}\n\n/**\n * `void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL2dEXT`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n */\nexport function vertexAttribL2d(index: GLuint, x: GLdouble, y: GLdouble): void {\n glVertexAttribL2d(index, x, y);\n}\n\n/**\n * `void glVertexAttribL2dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL2dvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `2`\n */\nexport function vertexAttribL2dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttribL2dv(index, v);\n}\n\n/**\n * `void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL3dEXT`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n */\nexport function vertexAttribL3d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble): void {\n glVertexAttribL3d(index, x, y, z);\n}\n\n/**\n * `void glVertexAttribL3dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL3dvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `3`\n */\nexport function vertexAttribL3dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttribL3dv(index, v);\n}\n\n/**\n * `void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL4dEXT`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n * @param w - `GLdouble`\n */\nexport function vertexAttribL4d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble): void {\n glVertexAttribL4d(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttribL4dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL4dvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `4`\n */\nexport function vertexAttribL4dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttribL4dv(index, v);\n}\n\n/**\n * `void glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribLType`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexAttribLFormat(attribindex: GLuint, size: GLint, type: VertexAttribLType, relativeoffset: GLuint): void {\n glVertexAttribLFormat(attribindex, size, type, relativeoffset);\n}\n\n/**\n * `void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribLPointerEXT`.\n *\n * @param index - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribLType`\n * @param stride - `GLsizei`\n * @param pointer - `GLintptr`, byte offset into the bound buffer\n */\nexport function vertexAttribLPointer(index: GLuint, size: GLint, type: VertexAttribLType, stride: GLsizei, pointer: GLintptr): void {\n glVertexAttribLPointer(index, size, type, stride, pointer);\n}\n\n/**\n * `void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint`\n */\nexport function vertexAttribP1ui(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint): void {\n glVertexAttribP1ui(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint[] | Uint32Array`, length `1`\n */\nexport function vertexAttribP1uiv(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint[] | Uint32Array): void {\n glVertexAttribP1uiv(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint`\n */\nexport function vertexAttribP2ui(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint): void {\n glVertexAttribP2ui(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint[] | Uint32Array`, length `1`\n */\nexport function vertexAttribP2uiv(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint[] | Uint32Array): void {\n glVertexAttribP2uiv(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint`\n */\nexport function vertexAttribP3ui(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint): void {\n glVertexAttribP3ui(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint[] | Uint32Array`, length `1`\n */\nexport function vertexAttribP3uiv(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint[] | Uint32Array): void {\n glVertexAttribP3uiv(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint`\n */\nexport function vertexAttribP4ui(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint): void {\n glVertexAttribP4ui(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint[] | Uint32Array`, length `1`\n */\nexport function vertexAttribP4uiv(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint[] | Uint32Array): void {\n glVertexAttribP4uiv(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttribPointerARB`.\n *\n * @param index - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param stride - `GLsizei`\n * @param pointer - `GLintptr`, byte offset into the bound buffer\n */\nexport function vertexAttribPointer(index: GLuint, size: GLint, type: VertexAttribPointerType, normalized: boolean, stride: GLsizei, pointer: GLintptr): void {\n glVertexAttribPointer(index, size, type, normalized, stride, pointer);\n}\n\n/**\n * `void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param bindingindex - `GLuint`\n * @param divisor - `GLuint`\n */\nexport function vertexBindingDivisor(bindingindex: GLuint, divisor: GLuint): void {\n glVertexBindingDivisor(bindingindex, divisor);\n}\n\n/**\n * `void glViewport(GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 191.\n *\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function viewport(x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glViewport(x, y, width, height);\n}\n\n/**\n * `void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glViewportArrayvNV`, `glViewportArrayvOES`.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param v - `GLfloat[] | Float32Array`, length `COMPSIZE(count)`\n */\nexport function viewportArrayv(first: GLuint, count: GLsizei, v: GLfloat[] | Float32Array): void {\n glViewportArrayv(first, count, v);\n}\n\n/**\n * `void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glViewportIndexedfNV`, `glViewportIndexedfOES`.\n *\n * @param index - `GLuint`\n * @param x - `GLfloat`\n * @param y - `GLfloat`\n * @param w - `GLfloat`\n * @param h - `GLfloat`\n */\nexport function viewportIndexedf(index: GLuint, x: GLfloat, y: GLfloat, w: GLfloat, h: GLfloat): void {\n glViewportIndexedf(index, x, y, w, h);\n}\n\n/**\n * `void glViewportIndexedfv(GLuint index, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glViewportIndexedfvNV`, `glViewportIndexedfvOES`.\n *\n * @param index - `GLuint`\n * @param v - `GLfloat[] | Float32Array`, length `4`\n */\nexport function viewportIndexedfv(index: GLuint, v: GLfloat[] | Float32Array): void {\n glViewportIndexedfv(index, v);\n}\n\n/**\n * `void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glWaitSyncAPPLE`.\n *\n * @param sync - `GLsync`, object class `sync`\n * @param flags - `SyncBehaviorFlags`\n * @param timeout - `GLuint64`\n */\nexport function waitSync(sync: GLsync, flags: SyncBehaviorFlags, timeout: GLuint64): void {\n glWaitSync(sync, flags, timeout);\n}\n\n/**\n * Returns one buffer object name via `glCreateBuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @returns `GLuint`, object class `buffer`\n */\nexport function createBuffer(): GLuint {\n const out = { value: 0 };\n glCreateBuffersSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one framebuffer object name via `glCreateFramebuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @returns `GLuint`, object class `framebuffer`\n */\nexport function createFramebuffer(): GLuint {\n const out = { value: 0 };\n glCreateFramebuffersSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one program pipeline object name via `glCreateProgramPipelines(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Program Pipeline object functions.\n *\n * @returns `GLuint`, object class `program pipeline`\n */\nexport function createProgramPipeline(): GLuint {\n const out = { value: 0 };\n glCreateProgramPipelinesSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one query object name via `glCreateQueries(..., 1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param target - `QueryTarget`\n * @returns `GLuint`, object class `query`\n */\nexport function createQuery(target: QueryTarget): GLuint {\n const out = { value: 0 };\n glCreateQueriesSingle(target, 1, out);\n return out.value;\n}\n\n/**\n * Returns one renderbuffer object name via `glCreateRenderbuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Renderbuffer object functions.\n *\n * @returns `GLuint`, object class `renderbuffer`\n */\nexport function createRenderbuffer(): GLuint {\n const out = { value: 0 };\n glCreateRenderbuffersSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one sampler object name via `glCreateSamplers(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Sampler object functions.\n *\n * @returns `GLuint`, object class `sampler`\n */\nexport function createSampler(): GLuint {\n const out = { value: 0 };\n glCreateSamplersSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one texture object name via `glCreateTextures(..., 1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param target - `TextureTarget`\n * @returns `GLuint`, object class `texture`\n */\nexport function createTexture(target: TextureTarget): GLuint {\n const out = { value: 0 };\n glCreateTexturesSingle(target, 1, out);\n return out.value;\n}\n\n/**\n * Returns one transform feedback object name via `glCreateTransformFeedbacks(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @returns `GLuint`, object class `transform feedback`\n */\nexport function createTransformFeedback(): GLuint {\n const out = { value: 0 };\n glCreateTransformFeedbacksSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one vertex array object name via `glCreateVertexArrays(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @returns `GLuint`, object class `vertex array`\n */\nexport function createVertexArray(): GLuint {\n const out = { value: 0 };\n glCreateVertexArraysSingle(1, out);\n return out.value;\n}\n\n/**\n * Deletes one buffer object name via `glDeleteBuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_1_5`.\n *\n * @param name - `GLuint`, object class `buffer`\n */\nexport function deleteBuffer(name: GLuint): void {\n glDeleteBuffers(1, [name]);\n}\n\n/**\n * Deletes one framebuffer object name via `glDeleteFramebuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n *\n * @param name - `GLuint`, object class `framebuffer`\n */\nexport function deleteFramebuffer(name: GLuint): void {\n glDeleteFramebuffers(1, [name]);\n}\n\n/**\n * Deletes one program pipeline object name via `glDeleteProgramPipelines(1, ...)`.\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param name - `GLuint`, object class `program pipeline`\n */\nexport function deleteProgramPipeline(name: GLuint): void {\n glDeleteProgramPipelines(1, [name]);\n}\n\n/**\n * Deletes one query object name via `glDeleteQueries(1, ...)`.\n *\n * Provided by `GL_VERSION_1_5`.\n *\n * @param name - `GLuint`, object class `query`\n */\nexport function deleteQuery(name: GLuint): void {\n glDeleteQueries(1, [name]);\n}\n\n/**\n * Deletes one renderbuffer object name via `glDeleteRenderbuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n *\n * @param name - `GLuint`, object class `renderbuffer`\n */\nexport function deleteRenderbuffer(name: GLuint): void {\n glDeleteRenderbuffers(1, [name]);\n}\n\n/**\n * Deletes one sampler object name via `glDeleteSamplers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param name - `GLuint`, object class `sampler`\n */\nexport function deleteSampler(name: GLuint): void {\n glDeleteSamplers(1, [name]);\n}\n\n/**\n * Deletes one texture object name via `glDeleteTextures(1, ...)`.\n *\n * Provided by `GL_VERSION_1_1`.\n *\n * @param name - `GLuint`, object class `texture`\n */\nexport function deleteTexture(name: GLuint): void {\n glDeleteTextures(1, [name]);\n}\n\n/**\n * Deletes one transform feedback object name via `glDeleteTransformFeedbacks(1, ...)`.\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n *\n * @param name - `GLuint`, object class `transform feedback`\n */\nexport function deleteTransformFeedback(name: GLuint): void {\n glDeleteTransformFeedbacks(1, [name]);\n}\n\n/**\n * Deletes one vertex array object name via `glDeleteVertexArrays(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n *\n * @param name - `GLuint`, object class `vertex array`\n */\nexport function deleteVertexArray(name: GLuint): void {\n glDeleteVertexArrays(1, [name]);\n}\n\n/**\n * Returns one buffer object name via `glGenBuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_1_5`.\n *\n * @returns `GLuint`, object class `buffer`\n */\nexport function genBuffer(): GLuint {\n const out = { value: 0 };\n glGenBuffersSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one framebuffer object name via `glGenFramebuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n *\n * @returns `GLuint`, object class `framebuffer`\n */\nexport function genFramebuffer(): GLuint {\n const out = { value: 0 };\n glGenFramebuffersSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one program pipeline object name via `glGenProgramPipelines(1, ...)`.\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @returns `GLuint`, object class `program pipeline`\n */\nexport function genProgramPipeline(): GLuint {\n const out = { value: 0 };\n glGenProgramPipelinesSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one query object name via `glGenQueries(1, ...)`.\n *\n * Provided by `GL_VERSION_1_5`.\n *\n * @returns `GLuint`, object class `query`\n */\nexport function genQuery(): GLuint {\n const out = { value: 0 };\n glGenQueriesSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one renderbuffer object name via `glGenRenderbuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n *\n * @returns `GLuint`, object class `renderbuffer`\n */\nexport function genRenderbuffer(): GLuint {\n const out = { value: 0 };\n glGenRenderbuffersSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one sampler object name via `glGenSamplers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @returns `GLuint`, object class `sampler`\n */\nexport function genSampler(): GLuint {\n const out = { value: 0 };\n glGenSamplersSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one texture object name via `glGenTextures(1, ...)`.\n *\n * Provided by `GL_VERSION_1_1`.\n *\n * @returns `GLuint`, object class `texture`\n */\nexport function genTexture(): GLuint {\n const out = { value: 0 };\n glGenTexturesSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one transform feedback object name via `glGenTransformFeedbacks(1, ...)`.\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n *\n * @returns `GLuint`, object class `transform feedback`\n */\nexport function genTransformFeedback(): GLuint {\n const out = { value: 0 };\n glGenTransformFeedbacksSingle(1, out);\n return out.value;\n}\n\n/**\n * Returns one vertex array object name via `glGenVertexArrays(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n *\n * @returns `GLuint`, object class `vertex array`\n */\nexport function genVertexArray(): GLuint {\n const out = { value: 0 };\n glGenVertexArraysSingle(1, out);\n return out.value;\n}\n\n/** The shared library the generated OpenGL bindings are loaded from. */\nexport const LIB = \"libGL.so.1\";\n\nconst glActiveShaderProgram = t.bind(LIB, \"glActiveShaderProgram\", [t.uint32, t.uint32], t.void);\n\nconst glActiveTexture = t.bind(LIB, \"glActiveTexture\", [t.uint32], t.void);\n\nconst glAttachShader = t.bind(LIB, \"glAttachShader\", [t.uint32, t.uint32], t.void);\n\nconst glBeginConditionalRender = t.bind(LIB, \"glBeginConditionalRender\", [t.uint32, t.uint32], t.void);\n\nconst glBeginQuery = t.bind(LIB, \"glBeginQuery\", [t.uint32, t.uint32], t.void);\n\nconst glBeginQueryIndexed = t.bind(LIB, \"glBeginQueryIndexed\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBeginTransformFeedback = t.bind(LIB, \"glBeginTransformFeedback\", [t.uint32], t.void);\n\nconst glBindAttribLocation = t.bind(LIB, \"glBindAttribLocation\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.void);\n\nconst glBindBuffer = t.bind(LIB, \"glBindBuffer\", [t.uint32, t.uint32], t.void);\n\nconst glBindBufferBase = t.bind(LIB, \"glBindBufferBase\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBindBufferRange = t.bind(LIB, \"glBindBufferRange\", [t.uint32, t.uint32, t.uint32, t.int64, t.int64], t.void);\n\nconst glBindBuffersBase = t.bind(LIB, \"glBindBuffersBase\", [t.uint32, t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glBindBuffersRange = t.bind(LIB, \"glBindBuffersRange\", [t.uint32, t.uint32, t.int32, t.array(t.uint32), t.array(t.int64), t.array(t.int64)], t.void);\n\nconst glBindFragDataLocation = t.bind(LIB, \"glBindFragDataLocation\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.void);\n\nconst glBindFragDataLocationIndexed = t.bind(LIB, \"glBindFragDataLocationIndexed\", [t.uint32, t.uint32, t.uint32, t.string(\"borrowed\")], t.void);\n\nconst glBindFramebuffer = t.bind(LIB, \"glBindFramebuffer\", [t.uint32, t.uint32], t.void);\n\nconst glBindImageTexture = t.bind(LIB, \"glBindImageTexture\", [t.uint32, t.uint32, t.int32, t.boolean, t.int32, t.uint32, t.uint32], t.void);\n\nconst glBindImageTextures = t.bind(LIB, \"glBindImageTextures\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glBindProgramPipeline = t.bind(LIB, \"glBindProgramPipeline\", [t.uint32], t.void);\n\nconst glBindRenderbuffer = t.bind(LIB, \"glBindRenderbuffer\", [t.uint32, t.uint32], t.void);\n\nconst glBindSampler = t.bind(LIB, \"glBindSampler\", [t.uint32, t.uint32], t.void);\n\nconst glBindSamplers = t.bind(LIB, \"glBindSamplers\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glBindTexture = t.bind(LIB, \"glBindTexture\", [t.uint32, t.uint32], t.void);\n\nconst glBindTextures = t.bind(LIB, \"glBindTextures\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glBindTextureUnit = t.bind(LIB, \"glBindTextureUnit\", [t.uint32, t.uint32], t.void);\n\nconst glBindTransformFeedback = t.bind(LIB, \"glBindTransformFeedback\", [t.uint32, t.uint32], t.void);\n\nconst glBindVertexArray = t.bind(LIB, \"glBindVertexArray\", [t.uint32], t.void);\n\nconst glBindVertexBuffer = t.bind(LIB, \"glBindVertexBuffer\", [t.uint32, t.uint32, t.int64, t.int32], t.void);\n\nconst glBindVertexBuffers = t.bind(LIB, \"glBindVertexBuffers\", [t.uint32, t.int32, t.array(t.uint32), t.array(t.int64), t.array(t.int32)], t.void);\n\nconst glBlendColor = t.bind(LIB, \"glBlendColor\", [t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glBlendEquation = t.bind(LIB, \"glBlendEquation\", [t.uint32], t.void);\n\nconst glBlendEquationi = t.bind(LIB, \"glBlendEquationi\", [t.uint32, t.uint32], t.void);\n\nconst glBlendEquationSeparate = t.bind(LIB, \"glBlendEquationSeparate\", [t.uint32, t.uint32], t.void);\n\nconst glBlendEquationSeparatei = t.bind(LIB, \"glBlendEquationSeparatei\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBlendFunc = t.bind(LIB, \"glBlendFunc\", [t.uint32, t.uint32], t.void);\n\nconst glBlendFunci = t.bind(LIB, \"glBlendFunci\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBlendFuncSeparate = t.bind(LIB, \"glBlendFuncSeparate\", [t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBlendFuncSeparatei = t.bind(LIB, \"glBlendFuncSeparatei\", [t.uint32, t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBlitFramebuffer = t.bind(LIB, \"glBlitFramebuffer\", [t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glBlitNamedFramebuffer = t.bind(LIB, \"glBlitNamedFramebuffer\", [t.uint32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glBufferData = t.bind(LIB, \"glBufferData\", [t.uint32, t.int64, t.buffer, t.uint32], t.void);\n\nconst glBufferStorage = t.bind(LIB, \"glBufferStorage\", [t.uint32, t.int64, t.buffer, t.uint32], t.void);\n\nconst glBufferSubData = t.bind(LIB, \"glBufferSubData\", [t.uint32, t.int64, t.int64, t.buffer], t.void);\n\nconst glCheckFramebufferStatus = t.bind(LIB, \"glCheckFramebufferStatus\", [t.uint32], t.uint32);\n\nconst glCheckNamedFramebufferStatus = t.bind(LIB, \"glCheckNamedFramebufferStatus\", [t.uint32, t.uint32], t.uint32);\n\nconst glClampColor = t.bind(LIB, \"glClampColor\", [t.uint32, t.uint32], t.void);\n\nconst glClear = t.bind(LIB, \"glClear\", [t.uint32], t.void);\n\nconst glClearBufferData = t.bind(LIB, \"glClearBufferData\", [t.uint32, t.uint32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClearBufferfi = t.bind(LIB, \"glClearBufferfi\", [t.uint32, t.int32, t.float32, t.int32], t.void);\n\nconst glClearBufferfv = t.bind(LIB, \"glClearBufferfv\", [t.uint32, t.int32, t.array(t.float32)], t.void);\n\nconst glClearBufferiv = t.bind(LIB, \"glClearBufferiv\", [t.uint32, t.int32, t.array(t.int32)], t.void);\n\nconst glClearBufferSubData = t.bind(LIB, \"glClearBufferSubData\", [t.uint32, t.uint32, t.int64, t.int64, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClearBufferuiv = t.bind(LIB, \"glClearBufferuiv\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glClearColor = t.bind(LIB, \"glClearColor\", [t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glClearDepth = t.bind(LIB, \"glClearDepth\", [t.float64], t.void);\n\nconst glClearDepthf = t.bind(LIB, \"glClearDepthf\", [t.float32], t.void);\n\nconst glClearNamedBufferData = t.bind(LIB, \"glClearNamedBufferData\", [t.uint32, t.uint32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClearNamedBufferSubData = t.bind(LIB, \"glClearNamedBufferSubData\", [t.uint32, t.uint32, t.int64, t.int64, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClearNamedFramebufferfi = t.bind(LIB, \"glClearNamedFramebufferfi\", [t.uint32, t.uint32, t.int32, t.float32, t.int32], t.void);\n\nconst glClearNamedFramebufferfv = t.bind(LIB, \"glClearNamedFramebufferfv\", [t.uint32, t.uint32, t.int32, t.array(t.float32)], t.void);\n\nconst glClearNamedFramebufferiv = t.bind(LIB, \"glClearNamedFramebufferiv\", [t.uint32, t.uint32, t.int32, t.array(t.int32)], t.void);\n\nconst glClearNamedFramebufferuiv = t.bind(LIB, \"glClearNamedFramebufferuiv\", [t.uint32, t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glClearStencil = t.bind(LIB, \"glClearStencil\", [t.int32], t.void);\n\nconst glClearTexImage = t.bind(LIB, \"glClearTexImage\", [t.uint32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClearTexSubImage = t.bind(LIB, \"glClearTexSubImage\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClientWaitSync = t.bind(LIB, \"glClientWaitSync\", [t.struct(\"borrowed\"), t.uint32, t.uint64], t.uint32);\n\nconst glClipControl = t.bind(LIB, \"glClipControl\", [t.uint32, t.uint32], t.void);\n\nconst glColorMask = t.bind(LIB, \"glColorMask\", [t.boolean, t.boolean, t.boolean, t.boolean], t.void);\n\nconst glColorMaski = t.bind(LIB, \"glColorMaski\", [t.uint32, t.boolean, t.boolean, t.boolean, t.boolean], t.void);\n\nconst glCompileShader = t.bind(LIB, \"glCompileShader\", [t.uint32], t.void);\n\nconst glCompressedTexImage1D = t.bind(LIB, \"glCompressedTexImage1D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.buffer], t.void);\n\nconst glCompressedTexImage2D = t.bind(LIB, \"glCompressedTexImage2D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.buffer], t.void);\n\nconst glCompressedTexImage3D = t.bind(LIB, \"glCompressedTexImage3D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.buffer], t.void);\n\nconst glCompressedTexSubImage1D = t.bind(LIB, \"glCompressedTexSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCompressedTexSubImage2D = t.bind(LIB, \"glCompressedTexSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCompressedTexSubImage3D = t.bind(LIB, \"glCompressedTexSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCompressedTextureSubImage1D = t.bind(LIB, \"glCompressedTextureSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCompressedTextureSubImage2D = t.bind(LIB, \"glCompressedTextureSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCompressedTextureSubImage3D = t.bind(LIB, \"glCompressedTextureSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCopyBufferSubData = t.bind(LIB, \"glCopyBufferSubData\", [t.uint32, t.uint32, t.int64, t.int64, t.int64], t.void);\n\nconst glCopyImageSubData = t.bind(LIB, \"glCopyImageSubData\", [t.uint32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyNamedBufferSubData = t.bind(LIB, \"glCopyNamedBufferSubData\", [t.uint32, t.uint32, t.int64, t.int64, t.int64], t.void);\n\nconst glCopyTexImage1D = t.bind(LIB, \"glCopyTexImage1D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTexImage2D = t.bind(LIB, \"glCopyTexImage2D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTexSubImage1D = t.bind(LIB, \"glCopyTexSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTexSubImage2D = t.bind(LIB, \"glCopyTexSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTexSubImage3D = t.bind(LIB, \"glCopyTexSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTextureSubImage1D = t.bind(LIB, \"glCopyTextureSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTextureSubImage2D = t.bind(LIB, \"glCopyTextureSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTextureSubImage3D = t.bind(LIB, \"glCopyTextureSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCreateBuffers = t.bind(LIB, \"glCreateBuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateFramebuffers = t.bind(LIB, \"glCreateFramebuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateProgram = t.bind(LIB, \"glCreateProgram\", [], t.uint32);\n\nconst glCreateProgramPipelines = t.bind(LIB, \"glCreateProgramPipelines\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateQueries = t.bind(LIB, \"glCreateQueries\", [t.uint32, t.int32, t.ref(t.sizedArray(t.uint32, 1))], t.void);\n\nconst glCreateRenderbuffers = t.bind(LIB, \"glCreateRenderbuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateSamplers = t.bind(LIB, \"glCreateSamplers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateShader = t.bind(LIB, \"glCreateShader\", [t.uint32], t.uint32);\n\nconst glCreateShaderProgramv = t.bind(LIB, \"glCreateShaderProgramv\", [t.uint32, t.int32, t.array(t.string(\"borrowed\"))], t.uint32);\n\nconst glCreateTextures = t.bind(LIB, \"glCreateTextures\", [t.uint32, t.int32, t.ref(t.sizedArray(t.uint32, 1))], t.void);\n\nconst glCreateTransformFeedbacks = t.bind(LIB, \"glCreateTransformFeedbacks\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateVertexArrays = t.bind(LIB, \"glCreateVertexArrays\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCullFace = t.bind(LIB, \"glCullFace\", [t.uint32], t.void);\n\nconst glDebugMessageControl = t.bind(LIB, \"glDebugMessageControl\", [t.uint32, t.uint32, t.uint32, t.int32, t.array(t.uint32), t.boolean], t.void);\n\nconst glDebugMessageInsert = t.bind(LIB, \"glDebugMessageInsert\", [t.uint32, t.uint32, t.uint32, t.uint32, t.int32, t.string(\"borrowed\")], t.void);\n\nconst glDeleteBuffers = t.bind(LIB, \"glDeleteBuffers\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteFramebuffers = t.bind(LIB, \"glDeleteFramebuffers\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteProgram = t.bind(LIB, \"glDeleteProgram\", [t.uint32], t.void);\n\nconst glDeleteProgramPipelines = t.bind(LIB, \"glDeleteProgramPipelines\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteQueries = t.bind(LIB, \"glDeleteQueries\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteRenderbuffers = t.bind(LIB, \"glDeleteRenderbuffers\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteSamplers = t.bind(LIB, \"glDeleteSamplers\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteShader = t.bind(LIB, \"glDeleteShader\", [t.uint32], t.void);\n\nconst glDeleteSync = t.bind(LIB, \"glDeleteSync\", [t.struct(\"borrowed\")], t.void);\n\nconst glDeleteTextures = t.bind(LIB, \"glDeleteTextures\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteTransformFeedbacks = t.bind(LIB, \"glDeleteTransformFeedbacks\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteVertexArrays = t.bind(LIB, \"glDeleteVertexArrays\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDepthFunc = t.bind(LIB, \"glDepthFunc\", [t.uint32], t.void);\n\nconst glDepthMask = t.bind(LIB, \"glDepthMask\", [t.boolean], t.void);\n\nconst glDepthRange = t.bind(LIB, \"glDepthRange\", [t.float64, t.float64], t.void);\n\nconst glDepthRangeArrayv = t.bind(LIB, \"glDepthRangeArrayv\", [t.uint32, t.int32, t.array(t.float64)], t.void);\n\nconst glDepthRangef = t.bind(LIB, \"glDepthRangef\", [t.float32, t.float32], t.void);\n\nconst glDepthRangeIndexed = t.bind(LIB, \"glDepthRangeIndexed\", [t.uint32, t.float64, t.float64], t.void);\n\nconst glDetachShader = t.bind(LIB, \"glDetachShader\", [t.uint32, t.uint32], t.void);\n\nconst glDisable = t.bind(LIB, \"glDisable\", [t.uint32], t.void);\n\nconst glDisablei = t.bind(LIB, \"glDisablei\", [t.uint32, t.uint32], t.void);\n\nconst glDisableVertexArrayAttrib = t.bind(LIB, \"glDisableVertexArrayAttrib\", [t.uint32, t.uint32], t.void);\n\nconst glDisableVertexAttribArray = t.bind(LIB, \"glDisableVertexAttribArray\", [t.uint32], t.void);\n\nconst glDispatchCompute = t.bind(LIB, \"glDispatchCompute\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glDispatchComputeIndirect = t.bind(LIB, \"glDispatchComputeIndirect\", [t.int64], t.void);\n\nconst glDrawArrays = t.bind(LIB, \"glDrawArrays\", [t.uint32, t.int32, t.int32], t.void);\n\nconst glDrawArraysIndirect = t.bind(LIB, \"glDrawArraysIndirect\", [t.uint32, t.uint64], t.void);\n\nconst glDrawArraysInstanced = t.bind(LIB, \"glDrawArraysInstanced\", [t.uint32, t.int32, t.int32, t.int32], t.void);\n\nconst glDrawArraysInstancedBaseInstance = t.bind(LIB, \"glDrawArraysInstancedBaseInstance\", [t.uint32, t.int32, t.int32, t.int32, t.uint32], t.void);\n\nconst glDrawBuffer = t.bind(LIB, \"glDrawBuffer\", [t.uint32], t.void);\n\nconst glDrawBuffers = t.bind(LIB, \"glDrawBuffers\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDrawElements = t.bind(LIB, \"glDrawElements\", [t.uint32, t.int32, t.uint32, t.uint64], t.void);\n\nconst glDrawElementsBaseVertex = t.bind(LIB, \"glDrawElementsBaseVertex\", [t.uint32, t.int32, t.uint32, t.uint64, t.int32], t.void);\n\nconst glDrawElementsIndirect = t.bind(LIB, \"glDrawElementsIndirect\", [t.uint32, t.uint32, t.uint64], t.void);\n\nconst glDrawElementsInstanced = t.bind(LIB, \"glDrawElementsInstanced\", [t.uint32, t.int32, t.uint32, t.uint64, t.int32], t.void);\n\nconst glDrawElementsInstancedBaseInstance = t.bind(LIB, \"glDrawElementsInstancedBaseInstance\", [t.uint32, t.int32, t.uint32, t.uint64, t.int32, t.uint32], t.void);\n\nconst glDrawElementsInstancedBaseVertex = t.bind(LIB, \"glDrawElementsInstancedBaseVertex\", [t.uint32, t.int32, t.uint32, t.uint64, t.int32, t.int32], t.void);\n\nconst glDrawElementsInstancedBaseVertexBaseInstance = t.bind(LIB, \"glDrawElementsInstancedBaseVertexBaseInstance\", [t.uint32, t.int32, t.uint32, t.uint64, t.int32, t.int32, t.uint32], t.void);\n\nconst glDrawRangeElements = t.bind(LIB, \"glDrawRangeElements\", [t.uint32, t.uint32, t.uint32, t.int32, t.uint32, t.uint64], t.void);\n\nconst glDrawRangeElementsBaseVertex = t.bind(LIB, \"glDrawRangeElementsBaseVertex\", [t.uint32, t.uint32, t.uint32, t.int32, t.uint32, t.uint64, t.int32], t.void);\n\nconst glDrawTransformFeedback = t.bind(LIB, \"glDrawTransformFeedback\", [t.uint32, t.uint32], t.void);\n\nconst glDrawTransformFeedbackInstanced = t.bind(LIB, \"glDrawTransformFeedbackInstanced\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glDrawTransformFeedbackStream = t.bind(LIB, \"glDrawTransformFeedbackStream\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glDrawTransformFeedbackStreamInstanced = t.bind(LIB, \"glDrawTransformFeedbackStreamInstanced\", [t.uint32, t.uint32, t.uint32, t.int32], t.void);\n\nconst glEnable = t.bind(LIB, \"glEnable\", [t.uint32], t.void);\n\nconst glEnablei = t.bind(LIB, \"glEnablei\", [t.uint32, t.uint32], t.void);\n\nconst glEnableVertexArrayAttrib = t.bind(LIB, \"glEnableVertexArrayAttrib\", [t.uint32, t.uint32], t.void);\n\nconst glEnableVertexAttribArray = t.bind(LIB, \"glEnableVertexAttribArray\", [t.uint32], t.void);\n\nconst glEndConditionalRender = t.bind(LIB, \"glEndConditionalRender\", [], t.void);\n\nconst glEndQuery = t.bind(LIB, \"glEndQuery\", [t.uint32], t.void);\n\nconst glEndQueryIndexed = t.bind(LIB, \"glEndQueryIndexed\", [t.uint32, t.uint32], t.void);\n\nconst glEndTransformFeedback = t.bind(LIB, \"glEndTransformFeedback\", [], t.void);\n\nconst glFenceSync = t.bind(LIB, \"glFenceSync\", [t.uint32, t.uint32], t.struct(\"borrowed\"));\n\nconst glFinish = t.bind(LIB, \"glFinish\", [], t.void);\n\nconst glFlush = t.bind(LIB, \"glFlush\", [], t.void);\n\nconst glFlushMappedBufferRange = t.bind(LIB, \"glFlushMappedBufferRange\", [t.uint32, t.int64, t.int64], t.void);\n\nconst glFlushMappedNamedBufferRange = t.bind(LIB, \"glFlushMappedNamedBufferRange\", [t.uint32, t.int64, t.int64], t.void);\n\nconst glFramebufferParameteri = t.bind(LIB, \"glFramebufferParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glFramebufferRenderbuffer = t.bind(LIB, \"glFramebufferRenderbuffer\", [t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glFramebufferTexture = t.bind(LIB, \"glFramebufferTexture\", [t.uint32, t.uint32, t.uint32, t.int32], t.void);\n\nconst glFramebufferTexture1D = t.bind(LIB, \"glFramebufferTexture1D\", [t.uint32, t.uint32, t.uint32, t.uint32, t.int32], t.void);\n\nconst glFramebufferTexture2D = t.bind(LIB, \"glFramebufferTexture2D\", [t.uint32, t.uint32, t.uint32, t.uint32, t.int32], t.void);\n\nconst glFramebufferTexture3D = t.bind(LIB, \"glFramebufferTexture3D\", [t.uint32, t.uint32, t.uint32, t.uint32, t.int32, t.int32], t.void);\n\nconst glFramebufferTextureLayer = t.bind(LIB, \"glFramebufferTextureLayer\", [t.uint32, t.uint32, t.uint32, t.int32, t.int32], t.void);\n\nconst glFrontFace = t.bind(LIB, \"glFrontFace\", [t.uint32], t.void);\n\nconst glGenBuffers = t.bind(LIB, \"glGenBuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenerateMipmap = t.bind(LIB, \"glGenerateMipmap\", [t.uint32], t.void);\n\nconst glGenerateTextureMipmap = t.bind(LIB, \"glGenerateTextureMipmap\", [t.uint32], t.void);\n\nconst glGenFramebuffers = t.bind(LIB, \"glGenFramebuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenProgramPipelines = t.bind(LIB, \"glGenProgramPipelines\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenQueries = t.bind(LIB, \"glGenQueries\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenRenderbuffers = t.bind(LIB, \"glGenRenderbuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenSamplers = t.bind(LIB, \"glGenSamplers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenTextures = t.bind(LIB, \"glGenTextures\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenTransformFeedbacks = t.bind(LIB, \"glGenTransformFeedbacks\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenVertexArrays = t.bind(LIB, \"glGenVertexArrays\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGetAttachedShaders = t.bind(LIB, \"glGetAttachedShaders\", [t.uint32, t.int32, t.ref(t.int32), t.ref(t.sizedArray(t.uint32, 1))], t.void);\n\nconst glGetAttribLocation = t.bind(LIB, \"glGetAttribLocation\", [t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetBufferParameteri64v = t.bind(LIB, \"glGetBufferParameteri64v\", [t.uint32, t.uint32, t.ref(t.int64)], t.void);\n\nconst glGetBufferParameteriv = t.bind(LIB, \"glGetBufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetBufferSubData = t.bind(LIB, \"glGetBufferSubData\", [t.uint32, t.int64, t.int64, t.buffer], t.void);\n\nconst glGetCompressedTexImage = t.bind(LIB, \"glGetCompressedTexImage\", [t.uint32, t.int32, t.buffer], t.void);\n\nconst glGetCompressedTextureImage = t.bind(LIB, \"glGetCompressedTextureImage\", [t.uint32, t.int32, t.int32, t.buffer], t.void);\n\nconst glGetCompressedTextureSubImage = t.bind(LIB, \"glGetCompressedTextureSubImage\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.buffer], t.void);\n\nconst glGetError = t.bind(LIB, \"glGetError\", [], t.uint32);\n\nconst glGetFragDataIndex = t.bind(LIB, \"glGetFragDataIndex\", [t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetFragDataLocation = t.bind(LIB, \"glGetFragDataLocation\", [t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetFramebufferAttachmentParameteriv = t.bind(LIB, \"glGetFramebufferAttachmentParameteriv\", [t.uint32, t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetFramebufferParameteriv = t.bind(LIB, \"glGetFramebufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetGraphicsResetStatus = t.bind(LIB, \"glGetGraphicsResetStatus\", [], t.uint32);\n\nconst glGetInternalformati64v = t.bind(LIB, \"glGetInternalformati64v\", [t.uint32, t.uint32, t.uint32, t.int32, t.ref(t.sizedArray(t.int64, 3))], t.void);\n\nconst glGetInternalformativ = t.bind(LIB, \"glGetInternalformativ\", [t.uint32, t.uint32, t.uint32, t.int32, t.ref(t.sizedArray(t.int32, 3))], t.void);\n\nconst glGetNamedBufferParameteri64v = t.bind(LIB, \"glGetNamedBufferParameteri64v\", [t.uint32, t.uint32, t.ref(t.int64)], t.void);\n\nconst glGetNamedBufferParameteriv = t.bind(LIB, \"glGetNamedBufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetNamedBufferSubData = t.bind(LIB, \"glGetNamedBufferSubData\", [t.uint32, t.int64, t.int64, t.buffer], t.void);\n\nconst glGetNamedFramebufferAttachmentParameteriv = t.bind(LIB, \"glGetNamedFramebufferAttachmentParameteriv\", [t.uint32, t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetNamedFramebufferParameteriv = t.bind(LIB, \"glGetNamedFramebufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetNamedRenderbufferParameteriv = t.bind(LIB, \"glGetNamedRenderbufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetnCompressedTexImage = t.bind(LIB, \"glGetnCompressedTexImage\", [t.uint32, t.int32, t.int32, t.buffer], t.void);\n\nconst glGetnTexImage = t.bind(LIB, \"glGetnTexImage\", [t.uint32, t.int32, t.uint32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glGetProgramBinary = t.bind(LIB, \"glGetProgramBinary\", [t.uint32, t.int32, t.ref(t.int32), t.ref(t.uint32), t.buffer], t.void);\n\nconst glGetProgramiv = t.bind(LIB, \"glGetProgramiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetProgramPipelineiv = t.bind(LIB, \"glGetProgramPipelineiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetProgramResourceIndex = t.bind(LIB, \"glGetProgramResourceIndex\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.uint32);\n\nconst glGetProgramResourceiv = t.bind(LIB, \"glGetProgramResourceiv\", [t.uint32, t.uint32, t.uint32, t.int32, t.array(t.uint32), t.int32, t.ref(t.int32), t.ref(t.sizedArray(t.int32, 5))], t.void);\n\nconst glGetProgramResourceLocation = t.bind(LIB, \"glGetProgramResourceLocation\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetProgramResourceLocationIndex = t.bind(LIB, \"glGetProgramResourceLocationIndex\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetProgramStageiv = t.bind(LIB, \"glGetProgramStageiv\", [t.uint32, t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetQueryBufferObjecti64v = t.bind(LIB, \"glGetQueryBufferObjecti64v\", [t.uint32, t.uint32, t.uint32, t.int64], t.void);\n\nconst glGetQueryBufferObjectiv = t.bind(LIB, \"glGetQueryBufferObjectiv\", [t.uint32, t.uint32, t.uint32, t.int64], t.void);\n\nconst glGetQueryBufferObjectui64v = t.bind(LIB, \"glGetQueryBufferObjectui64v\", [t.uint32, t.uint32, t.uint32, t.int64], t.void);\n\nconst glGetQueryBufferObjectuiv = t.bind(LIB, \"glGetQueryBufferObjectuiv\", [t.uint32, t.uint32, t.uint32, t.int64], t.void);\n\nconst glGetQueryiv = t.bind(LIB, \"glGetQueryiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetQueryObjecti64v = t.bind(LIB, \"glGetQueryObjecti64v\", [t.uint32, t.uint32, t.ref(t.int64)], t.void);\n\nconst glGetQueryObjectiv = t.bind(LIB, \"glGetQueryObjectiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetQueryObjectui64v = t.bind(LIB, \"glGetQueryObjectui64v\", [t.uint32, t.uint32, t.ref(t.uint64)], t.void);\n\nconst glGetQueryObjectuiv = t.bind(LIB, \"glGetQueryObjectuiv\", [t.uint32, t.uint32, t.ref(t.uint32)], t.void);\n\nconst glGetRenderbufferParameteriv = t.bind(LIB, \"glGetRenderbufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetShaderiv = t.bind(LIB, \"glGetShaderiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetShaderPrecisionFormat = t.bind(LIB, \"glGetShaderPrecisionFormat\", [t.uint32, t.uint32, t.ref(t.fixedArray(t.int32, 2)), t.ref(t.int32)], t.void);\n\nconst glGetString = t.bind(LIB, \"glGetString\", [t.uint32], t.string(\"borrowed\"));\n\nconst glGetStringi = t.bind(LIB, \"glGetStringi\", [t.uint32, t.uint32], t.string(\"borrowed\"));\n\nconst glGetSubroutineIndex = t.bind(LIB, \"glGetSubroutineIndex\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.uint32);\n\nconst glGetSubroutineUniformLocation = t.bind(LIB, \"glGetSubroutineUniformLocation\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetSynciv = t.bind(LIB, \"glGetSynciv\", [t.struct(\"borrowed\"), t.uint32, t.int32, t.ref(t.int32), t.ref(t.sizedArray(t.int32, 2))], t.void);\n\nconst glGetTexImage = t.bind(LIB, \"glGetTexImage\", [t.uint32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glGetTextureImage = t.bind(LIB, \"glGetTextureImage\", [t.uint32, t.int32, t.uint32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glGetTextureLevelParameterfv = t.bind(LIB, \"glGetTextureLevelParameterfv\", [t.uint32, t.int32, t.uint32, t.ref(t.float32)], t.void);\n\nconst glGetTextureLevelParameteriv = t.bind(LIB, \"glGetTextureLevelParameteriv\", [t.uint32, t.int32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetTextureParameterfv = t.bind(LIB, \"glGetTextureParameterfv\", [t.uint32, t.uint32, t.ref(t.float32)], t.void);\n\nconst glGetTextureParameterIiv = t.bind(LIB, \"glGetTextureParameterIiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetTextureParameterIuiv = t.bind(LIB, \"glGetTextureParameterIuiv\", [t.uint32, t.uint32, t.ref(t.uint32)], t.void);\n\nconst glGetTextureParameteriv = t.bind(LIB, \"glGetTextureParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetTextureSubImage = t.bind(LIB, \"glGetTextureSubImage\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glGetTransformFeedbackiV = t.bind(LIB, \"glGetTransformFeedbacki_v\", [t.uint32, t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetTransformFeedbacki64V = t.bind(LIB, \"glGetTransformFeedbacki64_v\", [t.uint32, t.uint32, t.uint32, t.ref(t.int64)], t.void);\n\nconst glGetTransformFeedbackiv = t.bind(LIB, \"glGetTransformFeedbackiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetUniformBlockIndex = t.bind(LIB, \"glGetUniformBlockIndex\", [t.uint32, t.string(\"borrowed\")], t.uint32);\n\nconst glGetUniformLocation = t.bind(LIB, \"glGetUniformLocation\", [t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetUniformSubroutineuiv = t.bind(LIB, \"glGetUniformSubroutineuiv\", [t.uint32, t.int32, t.ref(t.uint32)], t.void);\n\nconst glGetVertexArrayIndexed64iv = t.bind(LIB, \"glGetVertexArrayIndexed64iv\", [t.uint32, t.uint32, t.uint32, t.ref(t.int64)], t.void);\n\nconst glGetVertexArrayIndexediv = t.bind(LIB, \"glGetVertexArrayIndexediv\", [t.uint32, t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetVertexArrayiv = t.bind(LIB, \"glGetVertexArrayiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetVertexAttribdv = t.bind(LIB, \"glGetVertexAttribdv\", [t.uint32, t.uint32, t.ref(t.fixedArray(t.float64, 4))], t.void);\n\nconst glGetVertexAttribfv = t.bind(LIB, \"glGetVertexAttribfv\", [t.uint32, t.uint32, t.ref(t.fixedArray(t.float32, 4))], t.void);\n\nconst glGetVertexAttribIiv = t.bind(LIB, \"glGetVertexAttribIiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetVertexAttribIuiv = t.bind(LIB, \"glGetVertexAttribIuiv\", [t.uint32, t.uint32, t.ref(t.uint32)], t.void);\n\nconst glGetVertexAttribiv = t.bind(LIB, \"glGetVertexAttribiv\", [t.uint32, t.uint32, t.ref(t.fixedArray(t.int32, 4))], t.void);\n\nconst glHint = t.bind(LIB, \"glHint\", [t.uint32, t.uint32], t.void);\n\nconst glInvalidateBufferData = t.bind(LIB, \"glInvalidateBufferData\", [t.uint32], t.void);\n\nconst glInvalidateBufferSubData = t.bind(LIB, \"glInvalidateBufferSubData\", [t.uint32, t.int64, t.int64], t.void);\n\nconst glInvalidateFramebuffer = t.bind(LIB, \"glInvalidateFramebuffer\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glInvalidateNamedFramebufferData = t.bind(LIB, \"glInvalidateNamedFramebufferData\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glInvalidateNamedFramebufferSubData = t.bind(LIB, \"glInvalidateNamedFramebufferSubData\", [t.uint32, t.int32, t.array(t.uint32), t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glInvalidateSubFramebuffer = t.bind(LIB, \"glInvalidateSubFramebuffer\", [t.uint32, t.int32, t.array(t.uint32), t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glInvalidateTexImage = t.bind(LIB, \"glInvalidateTexImage\", [t.uint32, t.int32], t.void);\n\nconst glInvalidateTexSubImage = t.bind(LIB, \"glInvalidateTexSubImage\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glIsBuffer = t.bind(LIB, \"glIsBuffer\", [t.uint32], t.uint8);\n\nconst glIsEnabled = t.bind(LIB, \"glIsEnabled\", [t.uint32], t.uint8);\n\nconst glIsEnabledi = t.bind(LIB, \"glIsEnabledi\", [t.uint32, t.uint32], t.uint8);\n\nconst glIsFramebuffer = t.bind(LIB, \"glIsFramebuffer\", [t.uint32], t.uint8);\n\nconst glIsProgram = t.bind(LIB, \"glIsProgram\", [t.uint32], t.uint8);\n\nconst glIsProgramPipeline = t.bind(LIB, \"glIsProgramPipeline\", [t.uint32], t.uint8);\n\nconst glIsQuery = t.bind(LIB, \"glIsQuery\", [t.uint32], t.uint8);\n\nconst glIsRenderbuffer = t.bind(LIB, \"glIsRenderbuffer\", [t.uint32], t.uint8);\n\nconst glIsSampler = t.bind(LIB, \"glIsSampler\", [t.uint32], t.uint8);\n\nconst glIsShader = t.bind(LIB, \"glIsShader\", [t.uint32], t.uint8);\n\nconst glIsSync = t.bind(LIB, \"glIsSync\", [t.struct(\"borrowed\")], t.uint8);\n\nconst glIsTexture = t.bind(LIB, \"glIsTexture\", [t.uint32], t.uint8);\n\nconst glIsTransformFeedback = t.bind(LIB, \"glIsTransformFeedback\", [t.uint32], t.uint8);\n\nconst glIsVertexArray = t.bind(LIB, \"glIsVertexArray\", [t.uint32], t.uint8);\n\nconst glLineWidth = t.bind(LIB, \"glLineWidth\", [t.float32], t.void);\n\nconst glLinkProgram = t.bind(LIB, \"glLinkProgram\", [t.uint32], t.void);\n\nconst glLogicOp = t.bind(LIB, \"glLogicOp\", [t.uint32], t.void);\n\nconst glMapBuffer = t.bind(LIB, \"glMapBuffer\", [t.uint32, t.uint32], t.struct(\"borrowed\"));\n\nconst glMapBufferRange = t.bind(LIB, \"glMapBufferRange\", [t.uint32, t.int64, t.int64, t.uint32], t.struct(\"borrowed\"));\n\nconst glMapNamedBuffer = t.bind(LIB, \"glMapNamedBuffer\", [t.uint32, t.uint32], t.struct(\"borrowed\"));\n\nconst glMapNamedBufferRange = t.bind(LIB, \"glMapNamedBufferRange\", [t.uint32, t.int64, t.int64, t.uint32], t.struct(\"borrowed\"));\n\nconst glMemoryBarrier = t.bind(LIB, \"glMemoryBarrier\", [t.uint32], t.void);\n\nconst glMemoryBarrierByRegion = t.bind(LIB, \"glMemoryBarrierByRegion\", [t.uint32], t.void);\n\nconst glMinSampleShading = t.bind(LIB, \"glMinSampleShading\", [t.float32], t.void);\n\nconst glMultiDrawArrays = t.bind(LIB, \"glMultiDrawArrays\", [t.uint32, t.array(t.int32), t.array(t.int32), t.int32], t.void);\n\nconst glMultiDrawArraysIndirect = t.bind(LIB, \"glMultiDrawArraysIndirect\", [t.uint32, t.uint64, t.int32, t.int32], t.void);\n\nconst glMultiDrawArraysIndirectCount = t.bind(LIB, \"glMultiDrawArraysIndirectCount\", [t.uint32, t.buffer, t.int64, t.int32, t.int32], t.void);\n\nconst glMultiDrawElements = t.bind(LIB, \"glMultiDrawElements\", [t.uint32, t.array(t.int32), t.uint32, t.array(t.uint64), t.int32], t.void);\n\nconst glMultiDrawElementsBaseVertex = t.bind(LIB, \"glMultiDrawElementsBaseVertex\", [t.uint32, t.array(t.int32), t.uint32, t.array(t.uint64), t.int32, t.array(t.int32)], t.void);\n\nconst glMultiDrawElementsIndirect = t.bind(LIB, \"glMultiDrawElementsIndirect\", [t.uint32, t.uint32, t.uint64, t.int32, t.int32], t.void);\n\nconst glMultiDrawElementsIndirectCount = t.bind(LIB, \"glMultiDrawElementsIndirectCount\", [t.uint32, t.uint32, t.buffer, t.int64, t.int32, t.int32], t.void);\n\nconst glNamedBufferData = t.bind(LIB, \"glNamedBufferData\", [t.uint32, t.int64, t.buffer, t.uint32], t.void);\n\nconst glNamedBufferStorage = t.bind(LIB, \"glNamedBufferStorage\", [t.uint32, t.int64, t.buffer, t.uint32], t.void);\n\nconst glNamedBufferSubData = t.bind(LIB, \"glNamedBufferSubData\", [t.uint32, t.int64, t.int64, t.buffer], t.void);\n\nconst glNamedFramebufferDrawBuffer = t.bind(LIB, \"glNamedFramebufferDrawBuffer\", [t.uint32, t.uint32], t.void);\n\nconst glNamedFramebufferDrawBuffers = t.bind(LIB, \"glNamedFramebufferDrawBuffers\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glNamedFramebufferParameteri = t.bind(LIB, \"glNamedFramebufferParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glNamedFramebufferReadBuffer = t.bind(LIB, \"glNamedFramebufferReadBuffer\", [t.uint32, t.uint32], t.void);\n\nconst glNamedFramebufferRenderbuffer = t.bind(LIB, \"glNamedFramebufferRenderbuffer\", [t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glNamedFramebufferTexture = t.bind(LIB, \"glNamedFramebufferTexture\", [t.uint32, t.uint32, t.uint32, t.int32], t.void);\n\nconst glNamedFramebufferTextureLayer = t.bind(LIB, \"glNamedFramebufferTextureLayer\", [t.uint32, t.uint32, t.uint32, t.int32, t.int32], t.void);\n\nconst glNamedRenderbufferStorage = t.bind(LIB, \"glNamedRenderbufferStorage\", [t.uint32, t.uint32, t.int32, t.int32], t.void);\n\nconst glNamedRenderbufferStorageMultisample = t.bind(LIB, \"glNamedRenderbufferStorageMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32], t.void);\n\nconst glObjectLabel = t.bind(LIB, \"glObjectLabel\", [t.uint32, t.uint32, t.int32, t.string(\"borrowed\")], t.void);\n\nconst glObjectPtrLabel = t.bind(LIB, \"glObjectPtrLabel\", [t.buffer, t.int32, t.string(\"borrowed\")], t.void);\n\nconst glPatchParameterfv = t.bind(LIB, \"glPatchParameterfv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glPatchParameteri = t.bind(LIB, \"glPatchParameteri\", [t.uint32, t.int32], t.void);\n\nconst glPauseTransformFeedback = t.bind(LIB, \"glPauseTransformFeedback\", [], t.void);\n\nconst glPixelStoref = t.bind(LIB, \"glPixelStoref\", [t.uint32, t.float32], t.void);\n\nconst glPixelStorei = t.bind(LIB, \"glPixelStorei\", [t.uint32, t.int32], t.void);\n\nconst glPointParameterf = t.bind(LIB, \"glPointParameterf\", [t.uint32, t.float32], t.void);\n\nconst glPointParameterfv = t.bind(LIB, \"glPointParameterfv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glPointParameteri = t.bind(LIB, \"glPointParameteri\", [t.uint32, t.int32], t.void);\n\nconst glPointParameteriv = t.bind(LIB, \"glPointParameteriv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glPointSize = t.bind(LIB, \"glPointSize\", [t.float32], t.void);\n\nconst glPolygonMode = t.bind(LIB, \"glPolygonMode\", [t.uint32, t.uint32], t.void);\n\nconst glPolygonOffset = t.bind(LIB, \"glPolygonOffset\", [t.float32, t.float32], t.void);\n\nconst glPolygonOffsetClamp = t.bind(LIB, \"glPolygonOffsetClamp\", [t.float32, t.float32, t.float32], t.void);\n\nconst glPopDebugGroup = t.bind(LIB, \"glPopDebugGroup\", [], t.void);\n\nconst glPrimitiveRestartIndex = t.bind(LIB, \"glPrimitiveRestartIndex\", [t.uint32], t.void);\n\nconst glProgramBinary = t.bind(LIB, \"glProgramBinary\", [t.uint32, t.uint32, t.buffer, t.int32], t.void);\n\nconst glProgramParameteri = t.bind(LIB, \"glProgramParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glProgramUniform1d = t.bind(LIB, \"glProgramUniform1d\", [t.uint32, t.int32, t.float64], t.void);\n\nconst glProgramUniform1dv = t.bind(LIB, \"glProgramUniform1dv\", [t.uint32, t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glProgramUniform1f = t.bind(LIB, \"glProgramUniform1f\", [t.uint32, t.int32, t.float32], t.void);\n\nconst glProgramUniform1fv = t.bind(LIB, \"glProgramUniform1fv\", [t.uint32, t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glProgramUniform1i = t.bind(LIB, \"glProgramUniform1i\", [t.uint32, t.int32, t.int32], t.void);\n\nconst glProgramUniform1iv = t.bind(LIB, \"glProgramUniform1iv\", [t.uint32, t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glProgramUniform1ui = t.bind(LIB, \"glProgramUniform1ui\", [t.uint32, t.int32, t.uint32], t.void);\n\nconst glProgramUniform1uiv = t.bind(LIB, \"glProgramUniform1uiv\", [t.uint32, t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glProgramUniform2d = t.bind(LIB, \"glProgramUniform2d\", [t.uint32, t.int32, t.float64, t.float64], t.void);\n\nconst glProgramUniform2dv = t.bind(LIB, \"glProgramUniform2dv\", [t.uint32, t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glProgramUniform2f = t.bind(LIB, \"glProgramUniform2f\", [t.uint32, t.int32, t.float32, t.float32], t.void);\n\nconst glProgramUniform2fv = t.bind(LIB, \"glProgramUniform2fv\", [t.uint32, t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glProgramUniform2i = t.bind(LIB, \"glProgramUniform2i\", [t.uint32, t.int32, t.int32, t.int32], t.void);\n\nconst glProgramUniform2iv = t.bind(LIB, \"glProgramUniform2iv\", [t.uint32, t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glProgramUniform2ui = t.bind(LIB, \"glProgramUniform2ui\", [t.uint32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glProgramUniform2uiv = t.bind(LIB, \"glProgramUniform2uiv\", [t.uint32, t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glProgramUniform3d = t.bind(LIB, \"glProgramUniform3d\", [t.uint32, t.int32, t.float64, t.float64, t.float64], t.void);\n\nconst glProgramUniform3dv = t.bind(LIB, \"glProgramUniform3dv\", [t.uint32, t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glProgramUniform3f = t.bind(LIB, \"glProgramUniform3f\", [t.uint32, t.int32, t.float32, t.float32, t.float32], t.void);\n\nconst glProgramUniform3fv = t.bind(LIB, \"glProgramUniform3fv\", [t.uint32, t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glProgramUniform3i = t.bind(LIB, \"glProgramUniform3i\", [t.uint32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glProgramUniform3iv = t.bind(LIB, \"glProgramUniform3iv\", [t.uint32, t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glProgramUniform3ui = t.bind(LIB, \"glProgramUniform3ui\", [t.uint32, t.int32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glProgramUniform3uiv = t.bind(LIB, \"glProgramUniform3uiv\", [t.uint32, t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glProgramUniform4d = t.bind(LIB, \"glProgramUniform4d\", [t.uint32, t.int32, t.float64, t.float64, t.float64, t.float64], t.void);\n\nconst glProgramUniform4dv = t.bind(LIB, \"glProgramUniform4dv\", [t.uint32, t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glProgramUniform4f = t.bind(LIB, \"glProgramUniform4f\", [t.uint32, t.int32, t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glProgramUniform4fv = t.bind(LIB, \"glProgramUniform4fv\", [t.uint32, t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glProgramUniform4i = t.bind(LIB, \"glProgramUniform4i\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glProgramUniform4iv = t.bind(LIB, \"glProgramUniform4iv\", [t.uint32, t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glProgramUniform4ui = t.bind(LIB, \"glProgramUniform4ui\", [t.uint32, t.int32, t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glProgramUniform4uiv = t.bind(LIB, \"glProgramUniform4uiv\", [t.uint32, t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glProgramUniformMatrix2dv = t.bind(LIB, \"glProgramUniformMatrix2dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix2fv = t.bind(LIB, \"glProgramUniformMatrix2fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix2x3dv = t.bind(LIB, \"glProgramUniformMatrix2x3dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix2x3fv = t.bind(LIB, \"glProgramUniformMatrix2x3fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix2x4dv = t.bind(LIB, \"glProgramUniformMatrix2x4dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix2x4fv = t.bind(LIB, \"glProgramUniformMatrix2x4fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix3dv = t.bind(LIB, \"glProgramUniformMatrix3dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix3fv = t.bind(LIB, \"glProgramUniformMatrix3fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix3x2dv = t.bind(LIB, \"glProgramUniformMatrix3x2dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix3x2fv = t.bind(LIB, \"glProgramUniformMatrix3x2fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix3x4dv = t.bind(LIB, \"glProgramUniformMatrix3x4dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix3x4fv = t.bind(LIB, \"glProgramUniformMatrix3x4fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix4dv = t.bind(LIB, \"glProgramUniformMatrix4dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix4fv = t.bind(LIB, \"glProgramUniformMatrix4fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix4x2dv = t.bind(LIB, \"glProgramUniformMatrix4x2dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix4x2fv = t.bind(LIB, \"glProgramUniformMatrix4x2fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix4x3dv = t.bind(LIB, \"glProgramUniformMatrix4x3dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix4x3fv = t.bind(LIB, \"glProgramUniformMatrix4x3fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProvokingVertex = t.bind(LIB, \"glProvokingVertex\", [t.uint32], t.void);\n\nconst glPushDebugGroup = t.bind(LIB, \"glPushDebugGroup\", [t.uint32, t.uint32, t.int32, t.string(\"borrowed\")], t.void);\n\nconst glQueryCounter = t.bind(LIB, \"glQueryCounter\", [t.uint32, t.uint32], t.void);\n\nconst glReadBuffer = t.bind(LIB, \"glReadBuffer\", [t.uint32], t.void);\n\nconst glReadnPixels = t.bind(LIB, \"glReadnPixels\", [t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glReadPixels = t.bind(LIB, \"glReadPixels\", [t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glReleaseShaderCompiler = t.bind(LIB, \"glReleaseShaderCompiler\", [], t.void);\n\nconst glRenderbufferStorage = t.bind(LIB, \"glRenderbufferStorage\", [t.uint32, t.uint32, t.int32, t.int32], t.void);\n\nconst glRenderbufferStorageMultisample = t.bind(LIB, \"glRenderbufferStorageMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32], t.void);\n\nconst glResumeTransformFeedback = t.bind(LIB, \"glResumeTransformFeedback\", [], t.void);\n\nconst glSampleCoverage = t.bind(LIB, \"glSampleCoverage\", [t.float32, t.boolean], t.void);\n\nconst glSampleMaski = t.bind(LIB, \"glSampleMaski\", [t.uint32, t.uint32], t.void);\n\nconst glSamplerParameterf = t.bind(LIB, \"glSamplerParameterf\", [t.uint32, t.uint32, t.float32], t.void);\n\nconst glSamplerParameterfv = t.bind(LIB, \"glSamplerParameterfv\", [t.uint32, t.uint32, t.array(t.float32)], t.void);\n\nconst glSamplerParameteri = t.bind(LIB, \"glSamplerParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glSamplerParameterIiv = t.bind(LIB, \"glSamplerParameterIiv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glSamplerParameterIuiv = t.bind(LIB, \"glSamplerParameterIuiv\", [t.uint32, t.uint32, t.array(t.uint32)], t.void);\n\nconst glSamplerParameteriv = t.bind(LIB, \"glSamplerParameteriv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glScissor = t.bind(LIB, \"glScissor\", [t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glScissorArrayv = t.bind(LIB, \"glScissorArrayv\", [t.uint32, t.int32, t.array(t.int32)], t.void);\n\nconst glScissorIndexed = t.bind(LIB, \"glScissorIndexed\", [t.uint32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glScissorIndexedv = t.bind(LIB, \"glScissorIndexedv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glShaderBinary = t.bind(LIB, \"glShaderBinary\", [t.int32, t.array(t.uint32), t.uint32, t.buffer, t.int32], t.void);\n\nconst glShaderSource = t.bind(LIB, \"glShaderSource\", [t.uint32, t.int32, t.array(t.string(\"borrowed\")), t.array(t.int32)], t.void);\n\nconst glShaderStorageBlockBinding = t.bind(LIB, \"glShaderStorageBlockBinding\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glSpecializeShader = t.bind(LIB, \"glSpecializeShader\", [t.uint32, t.string(\"borrowed\"), t.uint32, t.array(t.uint32), t.array(t.uint32)], t.void);\n\nconst glStencilFunc = t.bind(LIB, \"glStencilFunc\", [t.uint32, t.int32, t.uint32], t.void);\n\nconst glStencilFuncSeparate = t.bind(LIB, \"glStencilFuncSeparate\", [t.uint32, t.uint32, t.int32, t.uint32], t.void);\n\nconst glStencilMask = t.bind(LIB, \"glStencilMask\", [t.uint32], t.void);\n\nconst glStencilMaskSeparate = t.bind(LIB, \"glStencilMaskSeparate\", [t.uint32, t.uint32], t.void);\n\nconst glStencilOp = t.bind(LIB, \"glStencilOp\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glStencilOpSeparate = t.bind(LIB, \"glStencilOpSeparate\", [t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glTexBuffer = t.bind(LIB, \"glTexBuffer\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glTexBufferRange = t.bind(LIB, \"glTexBufferRange\", [t.uint32, t.uint32, t.uint32, t.int64, t.int64], t.void);\n\nconst glTexImage1D = t.bind(LIB, \"glTexImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTexImage2D = t.bind(LIB, \"glTexImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTexImage2DMultisample = t.bind(LIB, \"glTexImage2DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTexImage3D = t.bind(LIB, \"glTexImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTexImage3DMultisample = t.bind(LIB, \"glTexImage3DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTexParameterf = t.bind(LIB, \"glTexParameterf\", [t.uint32, t.uint32, t.float32], t.void);\n\nconst glTexParameterfv = t.bind(LIB, \"glTexParameterfv\", [t.uint32, t.uint32, t.array(t.float32)], t.void);\n\nconst glTexParameteri = t.bind(LIB, \"glTexParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glTexParameterIiv = t.bind(LIB, \"glTexParameterIiv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glTexParameterIuiv = t.bind(LIB, \"glTexParameterIuiv\", [t.uint32, t.uint32, t.array(t.uint32)], t.void);\n\nconst glTexParameteriv = t.bind(LIB, \"glTexParameteriv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glTexStorage1D = t.bind(LIB, \"glTexStorage1D\", [t.uint32, t.int32, t.uint32, t.int32], t.void);\n\nconst glTexStorage2D = t.bind(LIB, \"glTexStorage2D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32], t.void);\n\nconst glTexStorage2DMultisample = t.bind(LIB, \"glTexStorage2DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTexStorage3D = t.bind(LIB, \"glTexStorage3D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32], t.void);\n\nconst glTexStorage3DMultisample = t.bind(LIB, \"glTexStorage3DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTexSubImage1D = t.bind(LIB, \"glTexSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTexSubImage2D = t.bind(LIB, \"glTexSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTexSubImage3D = t.bind(LIB, \"glTexSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTextureBarrier = t.bind(LIB, \"glTextureBarrier\", [], t.void);\n\nconst glTextureBuffer = t.bind(LIB, \"glTextureBuffer\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glTextureBufferRange = t.bind(LIB, \"glTextureBufferRange\", [t.uint32, t.uint32, t.uint32, t.int64, t.int64], t.void);\n\nconst glTextureParameterf = t.bind(LIB, \"glTextureParameterf\", [t.uint32, t.uint32, t.float32], t.void);\n\nconst glTextureParameterfv = t.bind(LIB, \"glTextureParameterfv\", [t.uint32, t.uint32, t.array(t.float32)], t.void);\n\nconst glTextureParameteri = t.bind(LIB, \"glTextureParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glTextureParameterIiv = t.bind(LIB, \"glTextureParameterIiv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glTextureParameterIuiv = t.bind(LIB, \"glTextureParameterIuiv\", [t.uint32, t.uint32, t.array(t.uint32)], t.void);\n\nconst glTextureParameteriv = t.bind(LIB, \"glTextureParameteriv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glTextureStorage1D = t.bind(LIB, \"glTextureStorage1D\", [t.uint32, t.int32, t.uint32, t.int32], t.void);\n\nconst glTextureStorage2D = t.bind(LIB, \"glTextureStorage2D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32], t.void);\n\nconst glTextureStorage2DMultisample = t.bind(LIB, \"glTextureStorage2DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTextureStorage3D = t.bind(LIB, \"glTextureStorage3D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32], t.void);\n\nconst glTextureStorage3DMultisample = t.bind(LIB, \"glTextureStorage3DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTextureSubImage1D = t.bind(LIB, \"glTextureSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTextureSubImage2D = t.bind(LIB, \"glTextureSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTextureSubImage3D = t.bind(LIB, \"glTextureSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTextureView = t.bind(LIB, \"glTextureView\", [t.uint32, t.uint32, t.uint32, t.uint32, t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glTransformFeedbackBufferBase = t.bind(LIB, \"glTransformFeedbackBufferBase\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glTransformFeedbackBufferRange = t.bind(LIB, \"glTransformFeedbackBufferRange\", [t.uint32, t.uint32, t.uint32, t.int64, t.int64], t.void);\n\nconst glTransformFeedbackVaryings = t.bind(LIB, \"glTransformFeedbackVaryings\", [t.uint32, t.int32, t.array(t.string(\"borrowed\")), t.uint32], t.void);\n\nconst glUniform1d = t.bind(LIB, \"glUniform1d\", [t.int32, t.float64], t.void);\n\nconst glUniform1dv = t.bind(LIB, \"glUniform1dv\", [t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glUniform1f = t.bind(LIB, \"glUniform1f\", [t.int32, t.float32], t.void);\n\nconst glUniform1fv = t.bind(LIB, \"glUniform1fv\", [t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glUniform1i = t.bind(LIB, \"glUniform1i\", [t.int32, t.int32], t.void);\n\nconst glUniform1iv = t.bind(LIB, \"glUniform1iv\", [t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glUniform1ui = t.bind(LIB, \"glUniform1ui\", [t.int32, t.uint32], t.void);\n\nconst glUniform1uiv = t.bind(LIB, \"glUniform1uiv\", [t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glUniform2d = t.bind(LIB, \"glUniform2d\", [t.int32, t.float64, t.float64], t.void);\n\nconst glUniform2dv = t.bind(LIB, \"glUniform2dv\", [t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glUniform2f = t.bind(LIB, \"glUniform2f\", [t.int32, t.float32, t.float32], t.void);\n\nconst glUniform2fv = t.bind(LIB, \"glUniform2fv\", [t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glUniform2i = t.bind(LIB, \"glUniform2i\", [t.int32, t.int32, t.int32], t.void);\n\nconst glUniform2iv = t.bind(LIB, \"glUniform2iv\", [t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glUniform2ui = t.bind(LIB, \"glUniform2ui\", [t.int32, t.uint32, t.uint32], t.void);\n\nconst glUniform2uiv = t.bind(LIB, \"glUniform2uiv\", [t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glUniform3d = t.bind(LIB, \"glUniform3d\", [t.int32, t.float64, t.float64, t.float64], t.void);\n\nconst glUniform3dv = t.bind(LIB, \"glUniform3dv\", [t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glUniform3f = t.bind(LIB, \"glUniform3f\", [t.int32, t.float32, t.float32, t.float32], t.void);\n\nconst glUniform3fv = t.bind(LIB, \"glUniform3fv\", [t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glUniform3i = t.bind(LIB, \"glUniform3i\", [t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glUniform3iv = t.bind(LIB, \"glUniform3iv\", [t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glUniform3ui = t.bind(LIB, \"glUniform3ui\", [t.int32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glUniform3uiv = t.bind(LIB, \"glUniform3uiv\", [t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glUniform4d = t.bind(LIB, \"glUniform4d\", [t.int32, t.float64, t.float64, t.float64, t.float64], t.void);\n\nconst glUniform4dv = t.bind(LIB, \"glUniform4dv\", [t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glUniform4f = t.bind(LIB, \"glUniform4f\", [t.int32, t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glUniform4fv = t.bind(LIB, \"glUniform4fv\", [t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glUniform4i = t.bind(LIB, \"glUniform4i\", [t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glUniform4iv = t.bind(LIB, \"glUniform4iv\", [t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glUniform4ui = t.bind(LIB, \"glUniform4ui\", [t.int32, t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glUniform4uiv = t.bind(LIB, \"glUniform4uiv\", [t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glUniformBlockBinding = t.bind(LIB, \"glUniformBlockBinding\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glUniformMatrix2dv = t.bind(LIB, \"glUniformMatrix2dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix2fv = t.bind(LIB, \"glUniformMatrix2fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix2x3dv = t.bind(LIB, \"glUniformMatrix2x3dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix2x3fv = t.bind(LIB, \"glUniformMatrix2x3fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix2x4dv = t.bind(LIB, \"glUniformMatrix2x4dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix2x4fv = t.bind(LIB, \"glUniformMatrix2x4fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix3dv = t.bind(LIB, \"glUniformMatrix3dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix3fv = t.bind(LIB, \"glUniformMatrix3fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix3x2dv = t.bind(LIB, \"glUniformMatrix3x2dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix3x2fv = t.bind(LIB, \"glUniformMatrix3x2fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix3x4dv = t.bind(LIB, \"glUniformMatrix3x4dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix3x4fv = t.bind(LIB, \"glUniformMatrix3x4fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix4dv = t.bind(LIB, \"glUniformMatrix4dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix4fv = t.bind(LIB, \"glUniformMatrix4fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix4x2dv = t.bind(LIB, \"glUniformMatrix4x2dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix4x2fv = t.bind(LIB, \"glUniformMatrix4x2fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix4x3dv = t.bind(LIB, \"glUniformMatrix4x3dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix4x3fv = t.bind(LIB, \"glUniformMatrix4x3fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformSubroutinesuiv = t.bind(LIB, \"glUniformSubroutinesuiv\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glUnmapBuffer = t.bind(LIB, \"glUnmapBuffer\", [t.uint32], t.uint8);\n\nconst glUnmapNamedBuffer = t.bind(LIB, \"glUnmapNamedBuffer\", [t.uint32], t.uint8);\n\nconst glUseProgram = t.bind(LIB, \"glUseProgram\", [t.uint32], t.void);\n\nconst glUseProgramStages = t.bind(LIB, \"glUseProgramStages\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glValidateProgram = t.bind(LIB, \"glValidateProgram\", [t.uint32], t.void);\n\nconst glValidateProgramPipeline = t.bind(LIB, \"glValidateProgramPipeline\", [t.uint32], t.void);\n\nconst glVertexArrayAttribBinding = t.bind(LIB, \"glVertexArrayAttribBinding\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glVertexArrayAttribFormat = t.bind(LIB, \"glVertexArrayAttribFormat\", [t.uint32, t.uint32, t.int32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexArrayAttribIFormat = t.bind(LIB, \"glVertexArrayAttribIFormat\", [t.uint32, t.uint32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glVertexArrayAttribLFormat = t.bind(LIB, \"glVertexArrayAttribLFormat\", [t.uint32, t.uint32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glVertexArrayBindingDivisor = t.bind(LIB, \"glVertexArrayBindingDivisor\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glVertexArrayElementBuffer = t.bind(LIB, \"glVertexArrayElementBuffer\", [t.uint32, t.uint32], t.void);\n\nconst glVertexArrayVertexBuffer = t.bind(LIB, \"glVertexArrayVertexBuffer\", [t.uint32, t.uint32, t.uint32, t.int64, t.int32], t.void);\n\nconst glVertexArrayVertexBuffers = t.bind(LIB, \"glVertexArrayVertexBuffers\", [t.uint32, t.uint32, t.int32, t.array(t.uint32), t.array(t.int64), t.array(t.int32)], t.void);\n\nconst glVertexAttrib1d = t.bind(LIB, \"glVertexAttrib1d\", [t.uint32, t.float64], t.void);\n\nconst glVertexAttrib1dv = t.bind(LIB, \"glVertexAttrib1dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttrib1f = t.bind(LIB, \"glVertexAttrib1f\", [t.uint32, t.float32], t.void);\n\nconst glVertexAttrib1fv = t.bind(LIB, \"glVertexAttrib1fv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glVertexAttrib1s = t.bind(LIB, \"glVertexAttrib1s\", [t.uint32, t.int16], t.void);\n\nconst glVertexAttrib1sv = t.bind(LIB, \"glVertexAttrib1sv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttrib2d = t.bind(LIB, \"glVertexAttrib2d\", [t.uint32, t.float64, t.float64], t.void);\n\nconst glVertexAttrib2dv = t.bind(LIB, \"glVertexAttrib2dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttrib2f = t.bind(LIB, \"glVertexAttrib2f\", [t.uint32, t.float32, t.float32], t.void);\n\nconst glVertexAttrib2fv = t.bind(LIB, \"glVertexAttrib2fv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glVertexAttrib2s = t.bind(LIB, \"glVertexAttrib2s\", [t.uint32, t.int16, t.int16], t.void);\n\nconst glVertexAttrib2sv = t.bind(LIB, \"glVertexAttrib2sv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttrib3d = t.bind(LIB, \"glVertexAttrib3d\", [t.uint32, t.float64, t.float64, t.float64], t.void);\n\nconst glVertexAttrib3dv = t.bind(LIB, \"glVertexAttrib3dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttrib3f = t.bind(LIB, \"glVertexAttrib3f\", [t.uint32, t.float32, t.float32, t.float32], t.void);\n\nconst glVertexAttrib3fv = t.bind(LIB, \"glVertexAttrib3fv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glVertexAttrib3s = t.bind(LIB, \"glVertexAttrib3s\", [t.uint32, t.int16, t.int16, t.int16], t.void);\n\nconst glVertexAttrib3sv = t.bind(LIB, \"glVertexAttrib3sv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttrib4bv = t.bind(LIB, \"glVertexAttrib4bv\", [t.uint32, t.array(t.int8)], t.void);\n\nconst glVertexAttrib4d = t.bind(LIB, \"glVertexAttrib4d\", [t.uint32, t.float64, t.float64, t.float64, t.float64], t.void);\n\nconst glVertexAttrib4dv = t.bind(LIB, \"glVertexAttrib4dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttrib4f = t.bind(LIB, \"glVertexAttrib4f\", [t.uint32, t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glVertexAttrib4fv = t.bind(LIB, \"glVertexAttrib4fv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glVertexAttrib4iv = t.bind(LIB, \"glVertexAttrib4iv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttrib4Nbv = t.bind(LIB, \"glVertexAttrib4Nbv\", [t.uint32, t.array(t.int8)], t.void);\n\nconst glVertexAttrib4Niv = t.bind(LIB, \"glVertexAttrib4Niv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttrib4Nsv = t.bind(LIB, \"glVertexAttrib4Nsv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttrib4Nub = t.bind(LIB, \"glVertexAttrib4Nub\", [t.uint32, t.uint8, t.uint8, t.uint8, t.uint8], t.void);\n\nconst glVertexAttrib4Nubv = t.bind(LIB, \"glVertexAttrib4Nubv\", [t.uint32, t.array(t.uint8)], t.void);\n\nconst glVertexAttrib4Nuiv = t.bind(LIB, \"glVertexAttrib4Nuiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttrib4Nusv = t.bind(LIB, \"glVertexAttrib4Nusv\", [t.uint32, t.array(t.uint16)], t.void);\n\nconst glVertexAttrib4s = t.bind(LIB, \"glVertexAttrib4s\", [t.uint32, t.int16, t.int16, t.int16, t.int16], t.void);\n\nconst glVertexAttrib4sv = t.bind(LIB, \"glVertexAttrib4sv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttrib4ubv = t.bind(LIB, \"glVertexAttrib4ubv\", [t.uint32, t.array(t.uint8)], t.void);\n\nconst glVertexAttrib4uiv = t.bind(LIB, \"glVertexAttrib4uiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttrib4usv = t.bind(LIB, \"glVertexAttrib4usv\", [t.uint32, t.array(t.uint16)], t.void);\n\nconst glVertexAttribBinding = t.bind(LIB, \"glVertexAttribBinding\", [t.uint32, t.uint32], t.void);\n\nconst glVertexAttribDivisor = t.bind(LIB, \"glVertexAttribDivisor\", [t.uint32, t.uint32], t.void);\n\nconst glVertexAttribFormat = t.bind(LIB, \"glVertexAttribFormat\", [t.uint32, t.int32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexAttribI1i = t.bind(LIB, \"glVertexAttribI1i\", [t.uint32, t.int32], t.void);\n\nconst glVertexAttribI1iv = t.bind(LIB, \"glVertexAttribI1iv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttribI1ui = t.bind(LIB, \"glVertexAttribI1ui\", [t.uint32, t.uint32], t.void);\n\nconst glVertexAttribI1uiv = t.bind(LIB, \"glVertexAttribI1uiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttribI2i = t.bind(LIB, \"glVertexAttribI2i\", [t.uint32, t.int32, t.int32], t.void);\n\nconst glVertexAttribI2iv = t.bind(LIB, \"glVertexAttribI2iv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttribI2ui = t.bind(LIB, \"glVertexAttribI2ui\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glVertexAttribI2uiv = t.bind(LIB, \"glVertexAttribI2uiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttribI3i = t.bind(LIB, \"glVertexAttribI3i\", [t.uint32, t.int32, t.int32, t.int32], t.void);\n\nconst glVertexAttribI3iv = t.bind(LIB, \"glVertexAttribI3iv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttribI3ui = t.bind(LIB, \"glVertexAttribI3ui\", [t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glVertexAttribI3uiv = t.bind(LIB, \"glVertexAttribI3uiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttribI4bv = t.bind(LIB, \"glVertexAttribI4bv\", [t.uint32, t.array(t.int8)], t.void);\n\nconst glVertexAttribI4i = t.bind(LIB, \"glVertexAttribI4i\", [t.uint32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glVertexAttribI4iv = t.bind(LIB, \"glVertexAttribI4iv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttribI4sv = t.bind(LIB, \"glVertexAttribI4sv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttribI4ubv = t.bind(LIB, \"glVertexAttribI4ubv\", [t.uint32, t.array(t.uint8)], t.void);\n\nconst glVertexAttribI4ui = t.bind(LIB, \"glVertexAttribI4ui\", [t.uint32, t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glVertexAttribI4uiv = t.bind(LIB, \"glVertexAttribI4uiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttribI4usv = t.bind(LIB, \"glVertexAttribI4usv\", [t.uint32, t.array(t.uint16)], t.void);\n\nconst glVertexAttribIFormat = t.bind(LIB, \"glVertexAttribIFormat\", [t.uint32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glVertexAttribIPointer = t.bind(LIB, \"glVertexAttribIPointer\", [t.uint32, t.int32, t.uint32, t.int32, t.uint64], t.void);\n\nconst glVertexAttribL1d = t.bind(LIB, \"glVertexAttribL1d\", [t.uint32, t.float64], t.void);\n\nconst glVertexAttribL1dv = t.bind(LIB, \"glVertexAttribL1dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttribL2d = t.bind(LIB, \"glVertexAttribL2d\", [t.uint32, t.float64, t.float64], t.void);\n\nconst glVertexAttribL2dv = t.bind(LIB, \"glVertexAttribL2dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttribL3d = t.bind(LIB, \"glVertexAttribL3d\", [t.uint32, t.float64, t.float64, t.float64], t.void);\n\nconst glVertexAttribL3dv = t.bind(LIB, \"glVertexAttribL3dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttribL4d = t.bind(LIB, \"glVertexAttribL4d\", [t.uint32, t.float64, t.float64, t.float64, t.float64], t.void);\n\nconst glVertexAttribL4dv = t.bind(LIB, \"glVertexAttribL4dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttribLFormat = t.bind(LIB, \"glVertexAttribLFormat\", [t.uint32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glVertexAttribLPointer = t.bind(LIB, \"glVertexAttribLPointer\", [t.uint32, t.int32, t.uint32, t.int32, t.uint64], t.void);\n\nconst glVertexAttribP1ui = t.bind(LIB, \"glVertexAttribP1ui\", [t.uint32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexAttribP1uiv = t.bind(LIB, \"glVertexAttribP1uiv\", [t.uint32, t.uint32, t.boolean, t.array(t.uint32)], t.void);\n\nconst glVertexAttribP2ui = t.bind(LIB, \"glVertexAttribP2ui\", [t.uint32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexAttribP2uiv = t.bind(LIB, \"glVertexAttribP2uiv\", [t.uint32, t.uint32, t.boolean, t.array(t.uint32)], t.void);\n\nconst glVertexAttribP3ui = t.bind(LIB, \"glVertexAttribP3ui\", [t.uint32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexAttribP3uiv = t.bind(LIB, \"glVertexAttribP3uiv\", [t.uint32, t.uint32, t.boolean, t.array(t.uint32)], t.void);\n\nconst glVertexAttribP4ui = t.bind(LIB, \"glVertexAttribP4ui\", [t.uint32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexAttribP4uiv = t.bind(LIB, \"glVertexAttribP4uiv\", [t.uint32, t.uint32, t.boolean, t.array(t.uint32)], t.void);\n\nconst glVertexAttribPointer = t.bind(LIB, \"glVertexAttribPointer\", [t.uint32, t.int32, t.uint32, t.boolean, t.int32, t.uint64], t.void);\n\nconst glVertexBindingDivisor = t.bind(LIB, \"glVertexBindingDivisor\", [t.uint32, t.uint32], t.void);\n\nconst glViewport = t.bind(LIB, \"glViewport\", [t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glViewportArrayv = t.bind(LIB, \"glViewportArrayv\", [t.uint32, t.int32, t.array(t.float32)], t.void);\n\nconst glViewportIndexedf = t.bind(LIB, \"glViewportIndexedf\", [t.uint32, t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glViewportIndexedfv = t.bind(LIB, \"glViewportIndexedfv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glWaitSync = t.bind(LIB, \"glWaitSync\", [t.struct(\"borrowed\"), t.uint32, t.uint64], t.void);\n\nconst glCreateBuffersSingle = t.bind(LIB, \"glCreateBuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateFramebuffersSingle = t.bind(LIB, \"glCreateFramebuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateProgramPipelinesSingle = t.bind(LIB, \"glCreateProgramPipelines\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateQueriesSingle = t.bind(LIB, \"glCreateQueries\", [t.uint32, t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateRenderbuffersSingle = t.bind(LIB, \"glCreateRenderbuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateSamplersSingle = t.bind(LIB, \"glCreateSamplers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateTexturesSingle = t.bind(LIB, \"glCreateTextures\", [t.uint32, t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateTransformFeedbacksSingle = t.bind(LIB, \"glCreateTransformFeedbacks\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateVertexArraysSingle = t.bind(LIB, \"glCreateVertexArrays\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenBuffersSingle = t.bind(LIB, \"glGenBuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenFramebuffersSingle = t.bind(LIB, \"glGenFramebuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenProgramPipelinesSingle = t.bind(LIB, \"glGenProgramPipelines\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenQueriesSingle = t.bind(LIB, \"glGenQueries\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenRenderbuffersSingle = t.bind(LIB, \"glGenRenderbuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenSamplersSingle = t.bind(LIB, \"glGenSamplers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenTexturesSingle = t.bind(LIB, \"glGenTextures\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenTransformFeedbacksSingle = t.bind(LIB, \"glGenTransformFeedbacks\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenVertexArraysSingle = t.bind(LIB, \"glGenVertexArrays\", [t.int32, t.ref(t.uint32)], t.void);\n"]}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/generated/commands.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * GENERATED FILE: do not edit.\n *\n * Derived from the Khronos OpenGL registry (gl.xml).\n *\n * Copyright 2013-2026 The Khronos Group Inc.\n * SPDX-License-Identifier: Apache-2.0\n *\n * This file, gl.xml, is the OpenGL and OpenGL API Registry. The canonical\n * version of the registry, together with documentation, schema, and Python\n * generator scripts used to generate C header files for OpenGL and OpenGL ES,\n * can always be found in the Khronos Registry at\n * https://github.com/KhronosGroup/OpenGL-Registry\n */\n\nimport { type AttributeType, type BindTransformFeedbackTarget, type BlendEquationModeEXT, type BlendingFactor, type BlitFramebufferFilter, type Buffer, type BufferAccessARB, type BufferPNameARB, type BufferStorageMask, type BufferStorageTarget, type BufferTargetARB, type BufferUsageARB, type ClampColorModeARB, type ClampColorTargetARB, type ClearBufferMask, type ClipControlDepth, type ClipControlOrigin, type ColorBuffer, type ConditionalRenderMode, type CopyBufferSubDataTarget, type CopyImageSubDataTarget, type DebugSeverity, type DebugSource, type DebugType, type DepthFunction, type DrawBufferMode, type DrawElementsType, type EnableCap, type ErrorCode, type FramebufferAttachment, type FramebufferAttachmentParameterName, type FramebufferParameterName, type FramebufferStatus, type FramebufferTarget, type FrontFaceDirection, type GetFramebufferParameter, type GetTextureParameter, type GLbitfield, type GLbyte, type GLdouble, type GLenum, type GLfloat, type GLint, type GLint64, type GLintptr, type GLpointer, type GLshort, type GLsizei, type GLsizeiptr, type GLsync, type GLubyte, type GLuint, type GLuint64, type GLushort, type GraphicsResetStatus, type HintMode, type HintTarget, type InternalFormat, type InternalFormatPName, type InvalidateFramebufferAttachment, type LogicOp, type MapBufferAccessMask, type MemoryBarrierMask, type ObjectIdentifier, type PatchParameterName, type PipelineParameterName, type PixelFormat, type PixelStoreParameter, type PixelType, type PointParameterNameARB, type PolygonMode, type PrecisionType, type PrimitiveType, type ProgramInterface, type ProgramParameterPName, type ProgramPropertyARB, type ProgramResourceProperty, type ProgramStagePName, type QueryCounterTarget, type QueryObjectParameterName, type QueryParameterName, type QueryTarget, type ReadBufferMode, type RenderbufferParameterName, type RenderbufferTarget, type SamplerParameterF, type SamplerParameterI, type ShaderBinaryFormat, type ShaderParameterName, type ShaderType, type SizedInternalFormat, type StencilFunction, type StencilOp, type StringName, type SyncBehaviorFlags, type SyncCondition, type SyncObjectMask, type SyncParameterName, type SyncStatus, type TextureParameterName, type TextureTarget, type TextureUnit, type TransformFeedbackBufferMode, type TransformFeedbackPName, type TriangleFace, type UniformType, type UseProgramStageMask, type VertexArrayPName, type VertexAttribEnum, type VertexAttribIType, type VertexAttribLType, type VertexAttribPointerType, type VertexAttribPropertyARB, type VertexAttribType, type VertexProvokingMode } from \"./types.js\";\nimport { t } from \"@gtkx/runtime\";\n\n/**\n * `void glActiveShaderProgram(GLuint pipeline, GLuint program)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n * @param program - `GLuint`, object class `program`\n */\nexport function activeShaderProgram(pipeline: GLuint, program: GLuint): void {\n glActiveShaderProgram(pipeline, program);\n}\n\n/**\n * `void glActiveTexture(GLenum texture)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glActiveTextureARB`.\n * GLX render opcode 197.\n *\n * @param texture - `TextureUnit`\n */\nexport function activeTexture(texture: TextureUnit): void {\n glActiveTexture(texture);\n}\n\n/**\n * `void glAttachShader(GLuint program, GLuint shader)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glAttachObjectARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param shader - `GLuint`, object class `shader`\n */\nexport function attachShader(program: GLuint, shader: GLuint): void {\n glAttachShader(program, shader);\n}\n\n/**\n * `void glBeginConditionalRender(GLuint id, GLenum mode)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glBeginConditionalRenderNV`.\n *\n * @param id - `GLuint`\n * @param mode - `ConditionalRenderMode`\n */\nexport function beginConditionalRender(id: GLuint, mode: ConditionalRenderMode): void {\n glBeginConditionalRender(id, mode);\n}\n\n/**\n * `void glBeginQuery(GLenum target, GLuint id)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glBeginQueryARB`.\n * GLX render opcode 231.\n *\n * @param target - `QueryTarget`\n * @param id - `GLuint`, object class `query`\n */\nexport function beginQuery(target: QueryTarget, id: GLuint): void {\n glBeginQuery(target, id);\n}\n\n/**\n * `void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback3\n * Also provided by the `GL_ARB_transform_feedback3` extension.\n *\n * @param target - `QueryTarget`\n * @param index - `GLuint`\n * @param id - `GLuint`, object class `query`\n */\nexport function beginQueryIndexed(target: QueryTarget, index: GLuint, id: GLuint): void {\n glBeginQueryIndexed(target, index, id);\n}\n\n/**\n * `void glBeginTransformFeedback(GLenum primitiveMode)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glBeginTransformFeedbackEXT`, `glBeginTransformFeedbackNV`.\n * GLX render opcode 357.\n *\n * @param primitiveMode - `PrimitiveType`\n */\nexport function beginTransformFeedback(primitiveMode: PrimitiveType): void {\n glBeginTransformFeedback(primitiveMode);\n}\n\n/**\n * `void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glBindAttribLocationARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param index - `GLuint`\n * @param name - `string`\n */\nexport function bindAttribLocation(program: GLuint, index: GLuint, name: string): void {\n glBindAttribLocation(program, index, name);\n}\n\n/**\n * `void glBindBuffer(GLenum target, GLuint buffer)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glBindBufferARB`.\n *\n * @param target - `BufferTargetARB`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function bindBuffer(target: BufferTargetARB, buffer: GLuint): void {\n glBindBuffer(target, buffer);\n}\n\n/**\n * `void glBindBufferBase(GLenum target, GLuint index, GLuint buffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * Also known as `glBindBufferBaseEXT`, `glBindBufferBaseNV`.\n * GLX render opcode 356.\n *\n * @param target - `BufferTargetARB`\n * @param index - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function bindBufferBase(target: BufferTargetARB, index: GLuint, buffer: GLuint): void {\n glBindBufferBase(target, index, buffer);\n}\n\n/**\n * `void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * Also known as `glBindBufferRangeEXT`, `glBindBufferRangeNV`.\n * GLX render opcode 355.\n *\n * @param target - `BufferTargetARB`\n * @param index - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function bindBufferRange(target: BufferTargetARB, index: GLuint, buffer: GLuint, offset: GLintptr, size: GLsizeiptr): void {\n glBindBufferRange(target, index, buffer, offset, size);\n}\n\n/**\n * `void glBindBuffersBase(GLenum target, GLuint first, GLsizei count, const GLuint *buffers)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param target - `BufferTargetARB`\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param buffers - `GLuint[] | Uint32Array`, length `count`, object class `buffer`\n */\nexport function bindBuffersBase(target: BufferTargetARB, first: GLuint, count: GLsizei, buffers: GLuint[] | Uint32Array): void {\n glBindBuffersBase(target, first, count, buffers);\n}\n\n/**\n * `void glBindBuffersRange(GLenum target, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizeiptr *sizes)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param target - `BufferTargetARB`\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param buffers - `GLuint[] | Uint32Array`, length `count`, object class `buffer`\n * @param offsets - `GLintptr[]`, length `count`\n * @param sizes - `GLsizeiptr[]`, length `count`\n */\nexport function bindBuffersRange(target: BufferTargetARB, first: GLuint, count: GLsizei, buffers: GLuint[] | Uint32Array, offsets: GLintptr[], sizes: GLsizeiptr[]): void {\n glBindBuffersRange(target, first, count, buffers, offsets, sizes);\n}\n\n/**\n * `void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glBindFragDataLocationEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param color - `GLuint`\n * @param name - `string`, length `COMPSIZE(name)`\n */\nexport function bindFragDataLocation(program: GLuint, color: GLuint, name: string): void {\n glBindFragDataLocation(program, color, name);\n}\n\n/**\n * `void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_blend_func_extended\n * Also provided by the `GL_ARB_blend_func_extended` extension.\n * Also known as `glBindFragDataLocationIndexedEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param colorNumber - `GLuint`\n * @param index - `GLuint`\n * @param name - `string`\n */\nexport function bindFragDataLocationIndexed(program: GLuint, colorNumber: GLuint, index: GLuint, name: string): void {\n glBindFragDataLocationIndexed(program, colorNumber, index, name);\n}\n\n/**\n * `void glBindFramebuffer(GLenum target, GLuint framebuffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * GLX render opcode 236.\n *\n * @param target - `FramebufferTarget`\n * @param framebuffer - `GLuint`, object class `framebuffer`\n */\nexport function bindFramebuffer(target: FramebufferTarget, framebuffer: GLuint): void {\n glBindFramebuffer(target, framebuffer);\n}\n\n/**\n * `void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_shader_image_load_store\n * Also provided by the `GL_ARB_shader_image_load_store` extension.\n *\n * @param unit - `GLuint`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param layered - `boolean`\n * @param layer - `GLint`\n * @param access - `BufferAccessARB`\n * @param format - `InternalFormat`\n */\nexport function bindImageTexture(unit: GLuint, texture: GLuint, level: GLint, layered: boolean, layer: GLint, access: BufferAccessARB, format: InternalFormat): void {\n glBindImageTexture(unit, texture, level, layered, layer, access, format);\n}\n\n/**\n * `void glBindImageTextures(GLuint first, GLsizei count, const GLuint *textures)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param textures - `GLuint[] | Uint32Array`, length `count`, object class `texture`\n */\nexport function bindImageTextures(first: GLuint, count: GLsizei, textures: GLuint[] | Uint32Array): void {\n glBindImageTextures(first, count, textures);\n}\n\n/**\n * `void glBindProgramPipeline(GLuint pipeline)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n */\nexport function bindProgramPipeline(pipeline: GLuint): void {\n glBindProgramPipeline(pipeline);\n}\n\n/**\n * `void glBindRenderbuffer(GLenum target, GLuint renderbuffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * GLX render opcode 235.\n *\n * @param target - `RenderbufferTarget`\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n */\nexport function bindRenderbuffer(target: RenderbufferTarget, renderbuffer: GLuint): void {\n glBindRenderbuffer(target, renderbuffer);\n}\n\n/**\n * `void glBindSampler(GLuint unit, GLuint sampler)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param unit - `GLuint`\n * @param sampler - `GLuint`, object class `sampler`\n */\nexport function bindSampler(unit: GLuint, sampler: GLuint): void {\n glBindSampler(unit, sampler);\n}\n\n/**\n * `void glBindSamplers(GLuint first, GLsizei count, const GLuint *samplers)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param samplers - `GLuint[] | Uint32Array`, length `count`, object class `sampler`\n */\nexport function bindSamplers(first: GLuint, count: GLsizei, samplers: GLuint[] | Uint32Array): void {\n glBindSamplers(first, count, samplers);\n}\n\n/**\n * `void glBindTexture(GLenum target, GLuint texture)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glBindTextureEXT`.\n * GLX render opcode 4117.\n *\n * @param target - `TextureTarget`\n * @param texture - `GLuint`, object class `texture`\n */\nexport function bindTexture(target: TextureTarget, texture: GLuint): void {\n glBindTexture(target, texture);\n}\n\n/**\n * `void glBindTextures(GLuint first, GLsizei count, const GLuint *textures)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param textures - `GLuint[] | Uint32Array`, length `count`, object class `texture`\n */\nexport function bindTextures(first: GLuint, count: GLsizei, textures: GLuint[] | Uint32Array): void {\n glBindTextures(first, count, textures);\n}\n\n/**\n * `void glBindTextureUnit(GLuint unit, GLuint texture)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param unit - `GLuint`\n * @param texture - `GLuint`, object class `texture`\n */\nexport function bindTextureUnit(unit: GLuint, texture: GLuint): void {\n glBindTextureUnit(unit, texture);\n}\n\n/**\n * `void glBindTransformFeedback(GLenum target, GLuint id)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n *\n * @param target - `BindTransformFeedbackTarget`\n * @param id - `GLuint`, object class `transform feedback`\n */\nexport function bindTransformFeedback(target: BindTransformFeedbackTarget, id: GLuint): void {\n glBindTransformFeedback(target, id);\n}\n\n/**\n * `void glBindVertexArray(GLuint array)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n * Also known as `glBindVertexArrayOES`.\n * GLX render opcode 350.\n *\n * @param array - `GLuint`, object class `vertex array`\n */\nexport function bindVertexArray(array: GLuint): void {\n glBindVertexArray(array);\n}\n\n/**\n * `void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param bindingindex - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param stride - `GLsizei`\n */\nexport function bindVertexBuffer(bindingindex: GLuint, buffer: GLuint, offset: GLintptr, stride: GLsizei): void {\n glBindVertexBuffer(bindingindex, buffer, offset, stride);\n}\n\n/**\n * `void glBindVertexBuffers(GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_multi_bind (none)\n * Also provided by the `GL_ARB_multi_bind` extension.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param buffers - `GLuint[] | Uint32Array`, length `count`, object class `buffer`\n * @param offsets - `GLintptr[]`, length `count`\n * @param strides - `GLsizei[] | Int32Array`, length `count`\n */\nexport function bindVertexBuffers(first: GLuint, count: GLsizei, buffers: GLuint[] | Uint32Array, offsets: GLintptr[], strides: GLsizei[] | Int32Array): void {\n glBindVertexBuffers(first, count, buffers, offsets, strides);\n}\n\n/**\n * `void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Registry note: Promoted from ARB_imaging subset to core\n * Also provided by the `GL_ARB_imaging` extension.\n * `GL_ARB_imaging` note: Now treating ARB_imaging as an extension, not a GL API version.\n * Also known as `glBlendColorEXT`.\n * GLX render opcode 4096.\n *\n * @param red - `GLfloat`, kind `Clamped[0; 1]`, kind `Color`. This parameter will get clamped to the 0 to 1 range. This parameter represents part of or a complete color.\n * @param green - `GLfloat`, kind `Clamped[0; 1]`, kind `Color`. This parameter will get clamped to the 0 to 1 range. This parameter represents part of or a complete color.\n * @param blue - `GLfloat`, kind `Clamped[0; 1]`, kind `Color`. This parameter will get clamped to the 0 to 1 range. This parameter represents part of or a complete color.\n * @param alpha - `GLfloat`, kind `Clamped[0; 1]`, kind `Color`. This parameter will get clamped to the 0 to 1 range. This parameter represents part of or a complete color.\n */\nexport function blendColor(red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat): void {\n glBlendColor(red, green, blue, alpha);\n}\n\n/**\n * `void glBlendEquation(GLenum mode)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Registry note: Promoted from ARB_imaging subset to core\n * Also provided by the `GL_ARB_imaging` extension.\n * `GL_ARB_imaging` note: Now treating ARB_imaging as an extension, not a GL API version.\n * Also known as `glBlendEquationEXT`.\n * GLX render opcode 4097.\n *\n * @param mode - `BlendEquationModeEXT`\n */\nexport function blendEquation(mode: BlendEquationModeEXT): void {\n glBlendEquation(mode);\n}\n\n/**\n * `void glBlendEquationi(GLuint buf, GLenum mode)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Also known as `glBlendEquationiARB`, `glBlendEquationiEXT`, `glBlendEquationIndexedAMD`, `glBlendEquationiOES`.\n *\n * @param buf - `GLuint`\n * @param mode - `BlendEquationModeEXT`\n */\nexport function blendEquationi(buf: GLuint, mode: BlendEquationModeEXT): void {\n glBlendEquationi(buf, mode);\n}\n\n/**\n * `void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glBlendEquationSeparateEXT`.\n * GLX render opcode 4228.\n *\n * @param modeRGB - `BlendEquationModeEXT`\n * @param modeAlpha - `BlendEquationModeEXT`\n */\nexport function blendEquationSeparate(modeRGB: BlendEquationModeEXT, modeAlpha: BlendEquationModeEXT): void {\n glBlendEquationSeparate(modeRGB, modeAlpha);\n}\n\n/**\n * `void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Also known as `glBlendEquationSeparateiARB`, `glBlendEquationSeparateiEXT`, `glBlendEquationSeparateIndexedAMD`, `glBlendEquationSeparateiOES`.\n *\n * @param buf - `GLuint`\n * @param modeRGB - `BlendEquationModeEXT`\n * @param modeAlpha - `BlendEquationModeEXT`\n */\nexport function blendEquationSeparatei(buf: GLuint, modeRGB: BlendEquationModeEXT, modeAlpha: BlendEquationModeEXT): void {\n glBlendEquationSeparatei(buf, modeRGB, modeAlpha);\n}\n\n/**\n * `void glBlendFunc(GLenum sfactor, GLenum dfactor)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 160.\n *\n * @param sfactor - `BlendingFactor`\n * @param dfactor - `BlendingFactor`\n */\nexport function blendFunc(sfactor: BlendingFactor, dfactor: BlendingFactor): void {\n glBlendFunc(sfactor, dfactor);\n}\n\n/**\n * `void glBlendFunci(GLuint buf, GLenum src, GLenum dst)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Also known as `glBlendFunciARB`, `glBlendFunciEXT`, `glBlendFuncIndexedAMD`, `glBlendFunciOES`.\n *\n * @param buf - `GLuint`\n * @param src - `BlendingFactor`\n * @param dst - `BlendingFactor`\n */\nexport function blendFunci(buf: GLuint, src: BlendingFactor, dst: BlendingFactor): void {\n glBlendFunci(buf, src, dst);\n}\n\n/**\n * `void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glBlendFuncSeparateEXT`, `glBlendFuncSeparateINGR`.\n * GLX render opcode 4134.\n *\n * @param sfactorRGB - `BlendingFactor`\n * @param dfactorRGB - `BlendingFactor`\n * @param sfactorAlpha - `BlendingFactor`\n * @param dfactorAlpha - `BlendingFactor`\n */\nexport function blendFuncSeparate(sfactorRGB: BlendingFactor, dfactorRGB: BlendingFactor, sfactorAlpha: BlendingFactor, dfactorAlpha: BlendingFactor): void {\n glBlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);\n}\n\n/**\n * `void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Also known as `glBlendFuncSeparateiARB`, `glBlendFuncSeparateiEXT`, `glBlendFuncSeparateIndexedAMD`, `glBlendFuncSeparateiOES`.\n *\n * @param buf - `GLuint`\n * @param srcRGB - `BlendingFactor`\n * @param dstRGB - `BlendingFactor`\n * @param srcAlpha - `BlendingFactor`\n * @param dstAlpha - `BlendingFactor`\n */\nexport function blendFuncSeparatei(buf: GLuint, srcRGB: BlendingFactor, dstRGB: BlendingFactor, srcAlpha: BlendingFactor, dstAlpha: BlendingFactor): void {\n glBlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);\n}\n\n/**\n * `void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glBlitFramebufferEXT`, `glBlitFramebufferNV`.\n * GLX render opcode 4330.\n *\n * @param srcX0 - `GLint`\n * @param srcY0 - `GLint`\n * @param srcX1 - `GLint`\n * @param srcY1 - `GLint`\n * @param dstX0 - `GLint`\n * @param dstY0 - `GLint`\n * @param dstX1 - `GLint`\n * @param dstY1 - `GLint`\n * @param mask - `ClearBufferMask`\n * @param filter - `BlitFramebufferFilter`\n */\nexport function blitFramebuffer(srcX0: GLint, srcY0: GLint, srcX1: GLint, srcY1: GLint, dstX0: GLint, dstY0: GLint, dstX1: GLint, dstY1: GLint, mask: ClearBufferMask, filter: BlitFramebufferFilter): void {\n glBlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);\n}\n\n/**\n * `void glBlitNamedFramebuffer(GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param readFramebuffer - `GLuint`, object class `framebuffer`\n * @param drawFramebuffer - `GLuint`, object class `framebuffer`\n * @param srcX0 - `GLint`\n * @param srcY0 - `GLint`\n * @param srcX1 - `GLint`\n * @param srcY1 - `GLint`\n * @param dstX0 - `GLint`\n * @param dstY0 - `GLint`\n * @param dstX1 - `GLint`\n * @param dstY1 - `GLint`\n * @param mask - `ClearBufferMask`\n * @param filter - `BlitFramebufferFilter`\n */\nexport function blitNamedFramebuffer(readFramebuffer: GLuint, drawFramebuffer: GLuint, srcX0: GLint, srcY0: GLint, srcX1: GLint, srcY1: GLint, dstX0: GLint, dstY0: GLint, dstX1: GLint, dstY1: GLint, mask: ClearBufferMask, filter: BlitFramebufferFilter): void {\n glBlitNamedFramebuffer(readFramebuffer, drawFramebuffer, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);\n}\n\n/**\n * `void glBufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glBufferDataARB`.\n *\n * @param target - `BufferTargetARB`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n * @param usage - `BufferUsageARB`\n */\nexport function bufferData(target: BufferTargetARB, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null, usage: BufferUsageARB): void {\n glBufferData(target, size, data, usage);\n}\n\n/**\n * `void glBufferStorage(GLenum target, GLsizeiptr size, const void *data, GLbitfield flags)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_buffer_storage\n * Also provided by the `GL_ARB_buffer_storage` extension.\n * Also known as `glBufferStorageEXT`.\n *\n * @param target - `BufferStorageTarget`\n * @param size - `GLsizeiptr`\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n * @param flags - `BufferStorageMask`\n */\nexport function bufferStorage(target: BufferStorageTarget, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null, flags: BufferStorageMask): void {\n glBufferStorage(target, size, data, flags);\n}\n\n/**\n * `void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glBufferSubDataARB`.\n *\n * @param target - `BufferTargetARB`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n */\nexport function bufferSubData(target: BufferTargetARB, offset: GLintptr, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null): void {\n glBufferSubData(target, offset, size, data);\n}\n\n/**\n * `GLenum glCheckFramebufferStatus(GLenum target)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glCheckFramebufferStatusEXT`.\n * GLX vendor opcode 1427.\n *\n * @param target - `FramebufferTarget`\n * @returns `FramebufferStatus`\n */\nexport function checkFramebufferStatus(target: FramebufferTarget): FramebufferStatus {\n return glCheckFramebufferStatus(target) as FramebufferStatus;\n}\n\n/**\n * `GLenum glCheckNamedFramebufferStatus(GLuint framebuffer, GLenum target)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param target - `FramebufferTarget`\n * @returns `FramebufferStatus`\n */\nexport function checkNamedFramebufferStatus(framebuffer: GLuint, target: FramebufferTarget): FramebufferStatus {\n return glCheckNamedFramebufferStatus(framebuffer, target) as FramebufferStatus;\n}\n\n/**\n * `void glClampColor(GLenum target, GLenum clamp)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glClampColorARB`.\n * GLX render opcode 234.\n *\n * @param target - `ClampColorTargetARB`\n * @param clamp - `ClampColorModeARB`\n */\nexport function clampColor(target: ClampColorTargetARB, clamp: ClampColorModeARB): void {\n glClampColor(target, clamp);\n}\n\n/**\n * `void glClear(GLbitfield mask)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 127.\n *\n * @param mask - `ClearBufferMask`\n */\nexport function clear(mask: ClearBufferMask): void {\n glClear(mask);\n}\n\n/**\n * `void glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_clear_buffer_object\n * Also provided by the `GL_ARB_clear_buffer_object` extension.\n *\n * @param target - `BufferStorageTarget`\n * @param internalformat - `SizedInternalFormat`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearBufferData(target: BufferStorageTarget, internalformat: SizedInternalFormat, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearBufferData(target, internalformat, format, type, data);\n}\n\n/**\n * `void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)`\n *\n * Provided by `GL_VERSION_3_0`.\n * GLX render opcode 360.\n *\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param depth - `GLfloat`\n * @param stencil - `GLint`\n */\nexport function clearBufferfi(buffer: Buffer, drawbuffer: GLint, depth: GLfloat, stencil: GLint): void {\n glClearBufferfi(buffer, drawbuffer, depth, stencil);\n}\n\n/**\n * `void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * GLX render opcode 361.\n *\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLfloat[] | Float32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearBufferfv(buffer: Buffer, drawbuffer: GLint, value: GLfloat[] | Float32Array): void {\n glClearBufferfv(buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * GLX render opcode 362.\n *\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLint[] | Int32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearBufferiv(buffer: Buffer, drawbuffer: GLint, value: GLint[] | Int32Array): void {\n glClearBufferiv(buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_clear_buffer_object\n * Also provided by the `GL_ARB_clear_buffer_object` extension.\n *\n * @param target - `BufferTargetARB`\n * @param internalformat - `SizedInternalFormat`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearBufferSubData(target: BufferTargetARB, internalformat: SizedInternalFormat, offset: GLintptr, size: GLsizeiptr, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearBufferSubData(target, internalformat, offset, size, format, type, data);\n}\n\n/**\n * `void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * GLX render opcode 363.\n *\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLuint[] | Uint32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearBufferuiv(buffer: Buffer, drawbuffer: GLint, value: GLuint[] | Uint32Array): void {\n glClearBufferuiv(buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 130.\n *\n * @param red - `GLfloat`, kind `Color`. This parameter represents part of or a complete color.\n * @param green - `GLfloat`, kind `Color`. This parameter represents part of or a complete color.\n * @param blue - `GLfloat`, kind `Color`. This parameter represents part of or a complete color.\n * @param alpha - `GLfloat`, kind `Color`. This parameter represents part of or a complete color.\n */\nexport function clearColor(red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat): void {\n glClearColor(red, green, blue, alpha);\n}\n\n/**\n * `void glClearDepth(GLdouble depth)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 132.\n *\n * @param depth - `GLdouble`, kind `Clamped[0; 1]`. This parameter will get clamped to the 0 to 1 range.\n */\nexport function clearDepth(depth: GLdouble): void {\n glClearDepth(depth);\n}\n\n/**\n * `void glClearDepthf(GLfloat d)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_ES2_compatibility\n * Also provided by the `GL_ARB_ES2_compatibility` extension.\n * Also known as `glClearDepthfOES`.\n *\n * @param d - `GLfloat`, kind `Clamped[0; 1]`. This parameter will get clamped to the 0 to 1 range.\n */\nexport function clearDepthf(d: GLfloat): void {\n glClearDepthf(d);\n}\n\n/**\n * `void glClearNamedBufferData(GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param internalformat - `SizedInternalFormat`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearNamedBufferData(buffer: GLuint, internalformat: SizedInternalFormat, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearNamedBufferData(buffer, internalformat, format, type, data);\n}\n\n/**\n * `void glClearNamedBufferSubData(GLuint buffer, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param internalformat - `SizedInternalFormat`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearNamedBufferSubData(buffer: GLuint, internalformat: SizedInternalFormat, offset: GLintptr, size: GLsizeiptr, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearNamedBufferSubData(buffer, internalformat, offset, size, format, type, data);\n}\n\n/**\n * `void glClearNamedFramebufferfi(GLuint framebuffer, GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param depth - `GLfloat`\n * @param stencil - `GLint`, kind `StencilValue`. This parameter represents an unmasked stencil value.\n */\nexport function clearNamedFramebufferfi(framebuffer: GLuint, buffer: Buffer, drawbuffer: GLint, depth: GLfloat, stencil: GLint): void {\n glClearNamedFramebufferfi(framebuffer, buffer, drawbuffer, depth, stencil);\n}\n\n/**\n * `void glClearNamedFramebufferfv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLfloat[] | Float32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearNamedFramebufferfv(framebuffer: GLuint, buffer: Buffer, drawbuffer: GLint, value: GLfloat[] | Float32Array): void {\n glClearNamedFramebufferfv(framebuffer, buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearNamedFramebufferiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint *value)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLint[] | Int32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearNamedFramebufferiv(framebuffer: GLuint, buffer: Buffer, drawbuffer: GLint, value: GLint[] | Int32Array): void {\n glClearNamedFramebufferiv(framebuffer, buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearNamedFramebufferuiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint *value)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param buffer - `Buffer`\n * @param drawbuffer - `GLint`, kind `DrawBufferIndex`. This parameter represents an index to a draw buffer in the range 0 to the value of GL_MAX_COLOR_ATTACHMENTS\n * @param value - `GLuint[] | Uint32Array`, length `COMPSIZE(buffer)`\n */\nexport function clearNamedFramebufferuiv(framebuffer: GLuint, buffer: Buffer, drawbuffer: GLint, value: GLuint[] | Uint32Array): void {\n glClearNamedFramebufferuiv(framebuffer, buffer, drawbuffer, value);\n}\n\n/**\n * `void glClearStencil(GLint s)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 131.\n *\n * @param s - `GLint`, kind `StencilValue`. This parameter represents an unmasked stencil value.\n */\nexport function clearStencil(s: GLint): void {\n glClearStencil(s);\n}\n\n/**\n * `void glClearTexImage(GLuint texture, GLint level, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_clear_texture\n * Also provided by the `GL_ARB_clear_texture` extension.\n * Also known as `glClearTexImageEXT`.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearTexImage(texture: GLuint, level: GLint, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearTexImage(texture, level, format, type, data);\n}\n\n/**\n * `void glClearTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data)`\n *\n * Provided by `GL_VERSION_4_4`.\n * Registry note: Reuse GL_ARB_clear_texture\n * Also provided by the `GL_ARB_clear_texture` extension.\n * Also known as `glClearTexSubImageEXT`.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param data - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type)`\n */\nexport function clearTexSubImage(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: PixelFormat, type: PixelType, data: ArrayBufferView | GLintptr | null): void {\n glClearTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data);\n}\n\n/**\n * `GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glClientWaitSyncAPPLE`.\n *\n * @param sync - `GLsync`, object class `sync`\n * @param flags - `SyncObjectMask`\n * @param timeout - `GLuint64`\n * @returns `SyncStatus`\n */\nexport function clientWaitSync(sync: GLsync, flags: SyncObjectMask, timeout: GLuint64): SyncStatus {\n return glClientWaitSync(sync, flags, timeout) as SyncStatus;\n}\n\n/**\n * `void glClipControl(GLenum origin, GLenum depth)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_clip_control\n * Also provided by the `GL_ARB_clip_control` extension.\n * Also known as `glClipControlEXT`.\n *\n * @param origin - `ClipControlOrigin`\n * @param depth - `ClipControlDepth`\n */\nexport function clipControl(origin: ClipControlOrigin, depth: ClipControlDepth): void {\n glClipControl(origin, depth);\n}\n\n/**\n * `void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 134.\n *\n * @param red - `boolean`\n * @param green - `boolean`\n * @param blue - `boolean`\n * @param alpha - `boolean`\n */\nexport function colorMask(red: boolean, green: boolean, blue: boolean, alpha: boolean): void {\n glColorMask(red, green, blue, alpha);\n}\n\n/**\n * `void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glColorMaskiEXT`, `glColorMaskIndexedEXT`, `glColorMaskiOES`.\n *\n * @param index - `GLuint`\n * @param r - `boolean`\n * @param g - `boolean`\n * @param b - `boolean`\n * @param a - `boolean`\n */\nexport function colorMaski(index: GLuint, r: boolean, g: boolean, b: boolean, a: boolean): void {\n glColorMaski(index, r, g, b, a);\n}\n\n/**\n * `void glCompileShader(GLuint shader)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glCompileShaderARB`.\n *\n * @param shader - `GLuint`, object class `shader`\n */\nexport function compileShader(shader: GLuint): void {\n glCompileShader(shader);\n}\n\n/**\n * `void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexImage1DARB`.\n * GLX render opcode 214.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexImage1D(target: TextureTarget, level: GLint, internalformat: InternalFormat, width: GLsizei, border: GLint, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);\n}\n\n/**\n * `void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexImage2DARB`.\n * GLX render opcode 215.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexImage2D(target: TextureTarget, level: GLint, internalformat: InternalFormat, width: GLsizei, height: GLsizei, border: GLint, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);\n}\n\n/**\n * `void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexImage3DARB`.\n * GLX render opcode 216.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexImage3D(target: TextureTarget, level: GLint, internalformat: InternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);\n}\n\n/**\n * `void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexSubImage1DARB`.\n * GLX render opcode 217.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexSubImage1D(target: TextureTarget, level: GLint, xoffset: GLint, width: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);\n}\n\n/**\n * `void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexSubImage2DARB`.\n * GLX render opcode 218.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexSubImage2D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);\n}\n\n/**\n * `void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glCompressedTexSubImage3DARB`.\n * GLX render opcode 219.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param zoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function compressedTexSubImage3D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);\n}\n\n/**\n * `void glCompressedTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param width - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`\n */\nexport function compressedTextureSubImage1D(texture: GLuint, level: GLint, xoffset: GLint, width: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTextureSubImage1D(texture, level, xoffset, width, format, imageSize, data);\n}\n\n/**\n * `void glCompressedTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`\n */\nexport function compressedTextureSubImage2D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, imageSize, data);\n}\n\n/**\n * `void glCompressedTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `InternalFormat`\n * @param imageSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `imageSize`\n */\nexport function compressedTextureSubImage3D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: InternalFormat, imageSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glCompressedTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);\n}\n\n/**\n * `void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Registry note: Reuse ARB_copy_buffer\n * Also provided by the `GL_ARB_copy_buffer` extension.\n * Also known as `glCopyBufferSubDataNV`.\n * GLX single opcode 221.\n *\n * @param readTarget - `CopyBufferSubDataTarget`\n * @param writeTarget - `CopyBufferSubDataTarget`\n * @param readOffset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param writeOffset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function copyBufferSubData(readTarget: CopyBufferSubDataTarget, writeTarget: CopyBufferSubDataTarget, readOffset: GLintptr, writeOffset: GLintptr, size: GLsizeiptr): void {\n glCopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);\n}\n\n/**\n * `void glCopyImageSubData(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_copy_image\n * Also provided by the `GL_ARB_copy_image` extension.\n * Also known as `glCopyImageSubDataEXT`, `glCopyImageSubDataOES`.\n *\n * @param srcName - `GLuint`\n * @param srcTarget - `CopyImageSubDataTarget`\n * @param srcLevel - `GLint`\n * @param srcX - `GLint`\n * @param srcY - `GLint`\n * @param srcZ - `GLint`\n * @param dstName - `GLuint`\n * @param dstTarget - `CopyImageSubDataTarget`\n * @param dstLevel - `GLint`\n * @param dstX - `GLint`\n * @param dstY - `GLint`\n * @param dstZ - `GLint`\n * @param srcWidth - `GLsizei`\n * @param srcHeight - `GLsizei`\n * @param srcDepth - `GLsizei`\n */\nexport function copyImageSubData(srcName: GLuint, srcTarget: CopyImageSubDataTarget, srcLevel: GLint, srcX: GLint, srcY: GLint, srcZ: GLint, dstName: GLuint, dstTarget: CopyImageSubDataTarget, dstLevel: GLint, dstX: GLint, dstY: GLint, dstZ: GLint, srcWidth: GLsizei, srcHeight: GLsizei, srcDepth: GLsizei): void {\n glCopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);\n}\n\n/**\n * `void glCopyNamedBufferSubData(GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param readBuffer - `GLuint`, object class `buffer`\n * @param writeBuffer - `GLuint`, object class `buffer`\n * @param readOffset - `GLintptr`\n * @param writeOffset - `GLintptr`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function copyNamedBufferSubData(readBuffer: GLuint, writeBuffer: GLuint, readOffset: GLintptr, writeOffset: GLintptr, size: GLsizeiptr): void {\n glCopyNamedBufferSubData(readBuffer, writeBuffer, readOffset, writeOffset, size);\n}\n\n/**\n * `void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glCopyTexImage1DEXT`.\n * GLX render opcode 4119.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `InternalFormat`\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n */\nexport function copyTexImage1D(target: TextureTarget, level: GLint, internalformat: InternalFormat, x: GLint, y: GLint, width: GLsizei, border: GLint): void {\n glCopyTexImage1D(target, level, internalformat, x, y, width, border);\n}\n\n/**\n * `void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glCopyTexImage2DEXT`.\n * GLX render opcode 4120.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `InternalFormat`\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n */\nexport function copyTexImage2D(target: TextureTarget, level: GLint, internalformat: InternalFormat, x: GLint, y: GLint, width: GLsizei, height: GLsizei, border: GLint): void {\n glCopyTexImage2D(target, level, internalformat, x, y, width, height, border);\n}\n\n/**\n * `void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glCopyTexSubImage1DEXT`.\n * GLX render opcode 4121.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n */\nexport function copyTexSubImage1D(target: TextureTarget, level: GLint, xoffset: GLint, x: GLint, y: GLint, width: GLsizei): void {\n glCopyTexSubImage1D(target, level, xoffset, x, y, width);\n}\n\n/**\n * `void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glCopyTexSubImage2DEXT`.\n * GLX render opcode 4122.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function copyTexSubImage2D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);\n}\n\n/**\n * `void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_1_2`.\n * Also known as `glCopyTexSubImage3DEXT`.\n * GLX render opcode 4123.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param zoffset - `GLint`, kind `CheckedInt32`\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function copyTexSubImage3D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glCopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);\n}\n\n/**\n * `void glCopyTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n */\nexport function copyTextureSubImage1D(texture: GLuint, level: GLint, xoffset: GLint, x: GLint, y: GLint, width: GLsizei): void {\n glCopyTextureSubImage1D(texture, level, xoffset, x, y, width);\n}\n\n/**\n * `void glCopyTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function copyTextureSubImage2D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glCopyTextureSubImage2D(texture, level, xoffset, yoffset, x, y, width, height);\n}\n\n/**\n * `void glCopyTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function copyTextureSubImage3D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glCopyTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, x, y, width, height);\n}\n\n/**\n * `void glCreateBuffers(GLsizei n, GLuint *buffers)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param n - `GLsizei`\n * @returns `buffers` (`GLuint[]`, length `n`, object class `buffer`)\n */\nexport function createBuffers(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glCreateBuffers(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glCreateFramebuffers(GLsizei n, GLuint *framebuffers)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param n - `GLsizei`\n * @returns `framebuffers` (`GLuint[]`, length `n`, object class `framebuffer`)\n */\nexport function createFramebuffers(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glCreateFramebuffers(n, __out0);\n return __out0.value;\n}\n\n/**\n * `GLuint glCreateProgram()`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glCreateProgramObjectARB`.\n *\n * @returns `GLuint`, object class `program`\n */\nexport function createProgram(): GLuint {\n return glCreateProgram() as GLuint;\n}\n\n/**\n * `void glCreateProgramPipelines(GLsizei n, GLuint *pipelines)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Program Pipeline object functions.\n *\n * @param n - `GLsizei`\n * @returns `pipelines` (`GLuint[]`, length `n`, object class `program pipeline`)\n */\nexport function createProgramPipelines(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glCreateProgramPipelines(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glCreateQueries(GLenum target, GLsizei n, GLuint *ids)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param target - `QueryTarget`\n * @param n - `GLsizei`\n * @returns `ids` (`GLuint[]`, length `n`, object class `query`)\n */\nexport function createQueries(target: QueryTarget, n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glCreateQueries(target, n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glCreateRenderbuffers(GLsizei n, GLuint *renderbuffers)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Renderbuffer object functions.\n *\n * @param n - `GLsizei`\n * @returns `renderbuffers` (`GLuint[]`, length `n`, object class `renderbuffer`)\n */\nexport function createRenderbuffers(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glCreateRenderbuffers(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glCreateSamplers(GLsizei n, GLuint *samplers)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Sampler object functions.\n *\n * @param n - `GLsizei`\n * @returns `samplers` (`GLuint[]`, length `n`, object class `sampler`)\n */\nexport function createSamplers(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glCreateSamplers(n, __out0);\n return __out0.value;\n}\n\n/**\n * `GLuint glCreateShader(GLenum type)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glCreateShaderObjectARB`.\n *\n * @param type - `ShaderType`\n * @returns `GLuint`, object class `shader`\n */\nexport function createShader(type: ShaderType): GLuint {\n return glCreateShader(type) as GLuint;\n}\n\n/**\n * `GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar *const*strings)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param type - `ShaderType`\n * @param count - `GLsizei`\n * @param strings - `string[]`, length `count`\n * @returns `GLuint`, object class `program`\n */\nexport function createShaderProgramv(type: ShaderType, count: GLsizei, strings: string[]): GLuint {\n return glCreateShaderProgramv(type, count, strings) as GLuint;\n}\n\n/**\n * `void glCreateTextures(GLenum target, GLsizei n, GLuint *textures)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param target - `TextureTarget`\n * @param n - `GLsizei`\n * @returns `textures` (`GLuint[]`, length `n`, object class `texture`)\n */\nexport function createTextures(target: TextureTarget, n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glCreateTextures(target, n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glCreateTransformFeedbacks(GLsizei n, GLuint *ids)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param n - `GLsizei`\n * @returns `ids` (`GLuint[]`, length `n`, object class `transform feedback`)\n */\nexport function createTransformFeedbacks(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glCreateTransformFeedbacks(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glCreateVertexArrays(GLsizei n, GLuint *arrays)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param n - `GLsizei`\n * @returns `arrays` (`GLuint[]`, length `n`, object class `vertex array`)\n */\nexport function createVertexArrays(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glCreateVertexArrays(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glCullFace(GLenum mode)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 79.\n *\n * @param mode - `TriangleFace`\n */\nexport function cullFace(mode: TriangleFace): void {\n glCullFace(mode);\n}\n\n/**\n * `void glDebugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glDebugMessageControlARB`, `glDebugMessageControlKHR`.\n *\n * @param source - `DebugSource`\n * @param type - `DebugType`\n * @param severity - `DebugSeverity`\n * @param count - `GLsizei`\n * @param ids - `GLuint[] | Uint32Array`, length `count`\n * @param enabled - `boolean`\n */\nexport function debugMessageControl(source: DebugSource, type: DebugType, severity: DebugSeverity, count: GLsizei, ids: GLuint[] | Uint32Array, enabled: boolean): void {\n glDebugMessageControl(source, type, severity, count, ids, enabled);\n}\n\n/**\n * `void glDebugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glDebugMessageInsertARB`, `glDebugMessageInsertKHR`.\n *\n * @param source - `DebugSource`\n * @param type - `DebugType`\n * @param id - `GLuint`\n * @param severity - `DebugSeverity`\n * @param length - `GLsizei`\n * @param buf - `string`, length `COMPSIZE(buf,length)`\n */\nexport function debugMessageInsert(source: DebugSource, type: DebugType, id: GLuint, severity: DebugSeverity, length: GLsizei, buf: string): void {\n glDebugMessageInsert(source, type, id, severity, length, buf);\n}\n\n/**\n * `void glDeleteBuffers(GLsizei n, const GLuint *buffers)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glDeleteBuffersARB`.\n *\n * @param n - `GLsizei`\n * @param buffers - `GLuint[] | Uint32Array`, length `n`, object class `buffer`\n */\nexport function deleteBuffers(n: GLsizei, buffers: GLuint[] | Uint32Array): void {\n glDeleteBuffers(n, buffers);\n}\n\n/**\n * `void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glDeleteFramebuffersEXT`.\n * GLX render opcode 4320.\n *\n * @param n - `GLsizei`\n * @param framebuffers - `GLuint[] | Uint32Array`, length `n`, object class `framebuffer`\n */\nexport function deleteFramebuffers(n: GLsizei, framebuffers: GLuint[] | Uint32Array): void {\n glDeleteFramebuffers(n, framebuffers);\n}\n\n/**\n * `void glDeleteProgram(GLuint program)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 202.\n *\n * @param program - `GLuint`, object class `program`\n */\nexport function deleteProgram(program: GLuint): void {\n glDeleteProgram(program);\n}\n\n/**\n * `void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param n - `GLsizei`\n * @param pipelines - `GLuint[] | Uint32Array`, length `n`, object class `program pipeline`\n */\nexport function deleteProgramPipelines(n: GLsizei, pipelines: GLuint[] | Uint32Array): void {\n glDeleteProgramPipelines(n, pipelines);\n}\n\n/**\n * `void glDeleteQueries(GLsizei n, const GLuint *ids)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glDeleteQueriesARB`.\n * GLX single opcode 161.\n *\n * @param n - `GLsizei`\n * @param ids - `GLuint[] | Uint32Array`, length `n`, object class `query`\n */\nexport function deleteQueries(n: GLsizei, ids: GLuint[] | Uint32Array): void {\n glDeleteQueries(n, ids);\n}\n\n/**\n * `void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glDeleteRenderbuffersEXT`.\n * GLX render opcode 4317.\n *\n * @param n - `GLsizei`\n * @param renderbuffers - `GLuint[] | Uint32Array`, length `n`, object class `renderbuffer`\n */\nexport function deleteRenderbuffers(n: GLsizei, renderbuffers: GLuint[] | Uint32Array): void {\n glDeleteRenderbuffers(n, renderbuffers);\n}\n\n/**\n * `void glDeleteSamplers(GLsizei count, const GLuint *samplers)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param count - `GLsizei`\n * @param samplers - `GLuint[] | Uint32Array`, length `count`, object class `sampler`\n */\nexport function deleteSamplers(count: GLsizei, samplers: GLuint[] | Uint32Array): void {\n glDeleteSamplers(count, samplers);\n}\n\n/**\n * `void glDeleteShader(GLuint shader)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 195.\n *\n * @param shader - `GLuint`, object class `shader`\n */\nexport function deleteShader(shader: GLuint): void {\n glDeleteShader(shader);\n}\n\n/**\n * `void glDeleteSync(GLsync sync)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glDeleteSyncAPPLE`.\n *\n * @param sync - `GLsync`, object class `sync`\n */\nexport function deleteSync(sync: GLsync): void {\n glDeleteSync(sync);\n}\n\n/**\n * `void glDeleteTextures(GLsizei n, const GLuint *textures)`\n *\n * Provided by `GL_VERSION_1_1`.\n * GLX single opcode 144.\n *\n * @param n - `GLsizei`\n * @param textures - `GLuint[] | Uint32Array`, length `n`, object class `texture`\n */\nexport function deleteTextures(n: GLsizei, textures: GLuint[] | Uint32Array): void {\n glDeleteTextures(n, textures);\n}\n\n/**\n * `void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glDeleteTransformFeedbacksNV`.\n *\n * @param n - `GLsizei`\n * @param ids - `GLuint[] | Uint32Array`, length `n`, object class `transform feedback`\n */\nexport function deleteTransformFeedbacks(n: GLsizei, ids: GLuint[] | Uint32Array): void {\n glDeleteTransformFeedbacks(n, ids);\n}\n\n/**\n * `void glDeleteVertexArrays(GLsizei n, const GLuint *arrays)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n * Also known as `glDeleteVertexArraysAPPLE`, `glDeleteVertexArraysOES`.\n * GLX render opcode 351.\n *\n * @param n - `GLsizei`\n * @param arrays - `GLuint[] | Uint32Array`, length `n`, object class `vertex array`\n */\nexport function deleteVertexArrays(n: GLsizei, arrays: GLuint[] | Uint32Array): void {\n glDeleteVertexArrays(n, arrays);\n}\n\n/**\n * `void glDepthFunc(GLenum func)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 164.\n *\n * @param func - `DepthFunction`\n */\nexport function depthFunc(func: DepthFunction): void {\n glDepthFunc(func);\n}\n\n/**\n * `void glDepthMask(GLboolean flag)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 135.\n *\n * @param flag - `boolean`\n */\nexport function depthMask(flag: boolean): void {\n glDepthMask(flag);\n}\n\n/**\n * `void glDepthRange(GLdouble n, GLdouble f)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 174.\n *\n * @param n - `GLdouble`\n * @param f - `GLdouble`\n */\nexport function depthRange(n: GLdouble, f: GLdouble): void {\n glDepthRange(n, f);\n}\n\n/**\n * `void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param v - `GLdouble[] | Float64Array`, length `COMPSIZE(count)`\n */\nexport function depthRangeArrayv(first: GLuint, count: GLsizei, v: GLdouble[] | Float64Array): void {\n glDepthRangeArrayv(first, count, v);\n}\n\n/**\n * `void glDepthRangef(GLfloat n, GLfloat f)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_ES2_compatibility\n * Also provided by the `GL_ARB_ES2_compatibility` extension.\n * Also known as `glDepthRangefOES`.\n *\n * @param n - `GLfloat`\n * @param f - `GLfloat`\n */\nexport function depthRangef(n: GLfloat, f: GLfloat): void {\n glDepthRangef(n, f);\n}\n\n/**\n * `void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n *\n * @param index - `GLuint`\n * @param n - `GLdouble`\n * @param f - `GLdouble`\n */\nexport function depthRangeIndexed(index: GLuint, n: GLdouble, f: GLdouble): void {\n glDepthRangeIndexed(index, n, f);\n}\n\n/**\n * `void glDetachShader(GLuint program, GLuint shader)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glDetachObjectARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param shader - `GLuint`, object class `shader`\n */\nexport function detachShader(program: GLuint, shader: GLuint): void {\n glDetachShader(program, shader);\n}\n\n/**\n * `void glDisable(GLenum cap)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 138.\n *\n * @param cap - `EnableCap`\n */\nexport function disable(cap: EnableCap): void {\n glDisable(cap);\n}\n\n/**\n * `void glDisablei(GLenum target, GLuint index)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glDisableiEXT`, `glDisableIndexedEXT`, `glDisableiNV`, `glDisableiOES`.\n *\n * @param target - `EnableCap`\n * @param index - `GLuint`\n */\nexport function disablei(target: EnableCap, index: GLuint): void {\n glDisablei(target, index);\n}\n\n/**\n * `void glDisableVertexArrayAttrib(GLuint vaobj, GLuint index)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param index - `GLuint`\n */\nexport function disableVertexArrayAttrib(vaobj: GLuint, index: GLuint): void {\n glDisableVertexArrayAttrib(vaobj, index);\n}\n\n/**\n * `void glDisableVertexAttribArray(GLuint index)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glDisableVertexAttribArrayARB`.\n *\n * @param index - `GLuint`\n */\nexport function disableVertexAttribArray(index: GLuint): void {\n glDisableVertexAttribArray(index);\n}\n\n/**\n * `void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_compute_shader\n * Also provided by the `GL_ARB_compute_shader` extension.\n *\n * @param numGroupsX - `GLuint`\n * @param numGroupsY - `GLuint`\n * @param numGroupsZ - `GLuint`\n */\nexport function dispatchCompute(numGroupsX: GLuint, numGroupsY: GLuint, numGroupsZ: GLuint): void {\n glDispatchCompute(numGroupsX, numGroupsY, numGroupsZ);\n}\n\n/**\n * `void glDispatchComputeIndirect(GLintptr indirect)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_compute_shader\n * Also provided by the `GL_ARB_compute_shader` extension.\n *\n * @param indirect - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n */\nexport function dispatchComputeIndirect(indirect: GLintptr): void {\n glDispatchComputeIndirect(indirect);\n}\n\n/**\n * `void glDrawArrays(GLenum mode, GLint first, GLsizei count)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glDrawArraysEXT`.\n * GLX render opcode 193.\n *\n * @param mode - `PrimitiveType`\n * @param first - `GLint`\n * @param count - `GLsizei`\n */\nexport function drawArrays(mode: PrimitiveType, first: GLint, count: GLsizei): void {\n glDrawArrays(mode, first, count);\n}\n\n/**\n * `void glDrawArraysIndirect(GLenum mode, const void *indirect)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_draw_indirect\n * Also provided by the `GL_ARB_draw_indirect` extension.\n *\n * @param mode - `PrimitiveType`\n * @param indirect - `GLintptr`, byte offset into the bound buffer\n */\nexport function drawArraysIndirect(mode: PrimitiveType, indirect: GLintptr): void {\n glDrawArraysIndirect(mode, indirect);\n}\n\n/**\n * `void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Also known as `glDrawArraysInstancedANGLE`, `glDrawArraysInstancedARB`, `glDrawArraysInstancedEXT`, `glDrawArraysInstancedNV`.\n *\n * @param mode - `PrimitiveType`\n * @param first - `GLint`\n * @param count - `GLsizei`\n * @param instancecount - `GLsizei`\n */\nexport function drawArraysInstanced(mode: PrimitiveType, first: GLint, count: GLsizei, instancecount: GLsizei): void {\n glDrawArraysInstanced(mode, first, count, instancecount);\n}\n\n/**\n * `void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_base_instance\n * Also provided by the `GL_ARB_base_instance` extension.\n * Also known as `glDrawArraysInstancedBaseInstanceEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param first - `GLint`\n * @param count - `GLsizei`\n * @param instancecount - `GLsizei`\n * @param baseinstance - `GLuint`\n */\nexport function drawArraysInstancedBaseInstance(mode: PrimitiveType, first: GLint, count: GLsizei, instancecount: GLsizei, baseinstance: GLuint): void {\n glDrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);\n}\n\n/**\n * `void glDrawBuffer(GLenum buf)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 126.\n *\n * @param buf - `DrawBufferMode`\n */\nexport function drawBuffer(buf: DrawBufferMode): void {\n glDrawBuffer(buf);\n}\n\n/**\n * `void glDrawBuffers(GLsizei n, const GLenum *bufs)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glDrawBuffersARB`, `glDrawBuffersATI`, `glDrawBuffersEXT`.\n * GLX render opcode 233.\n *\n * @param n - `GLsizei`\n * @param bufs - `DrawBufferMode[] | Uint32Array`, length `n`\n */\nexport function drawBuffers(n: GLsizei, bufs: DrawBufferMode[] | Uint32Array): void {\n glDrawBuffers(n, bufs);\n}\n\n/**\n * `void glDrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices)`\n *\n * Provided by `GL_VERSION_1_1`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n */\nexport function drawElements(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr): void {\n glDrawElements(mode, count, type, indices);\n}\n\n/**\n * `void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_draw_elements_base_vertex\n * Also provided by the `GL_ARB_draw_elements_base_vertex` extension.\n * Also known as `glDrawElementsBaseVertexEXT`, `glDrawElementsBaseVertexOES`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param basevertex - `GLint`\n */\nexport function drawElementsBaseVertex(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr, basevertex: GLint): void {\n glDrawElementsBaseVertex(mode, count, type, indices, basevertex);\n}\n\n/**\n * `void glDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_draw_indirect\n * Also provided by the `GL_ARB_draw_indirect` extension.\n *\n * @param mode - `PrimitiveType`\n * @param type - `DrawElementsType`\n * @param indirect - `GLintptr`, byte offset into the bound buffer\n */\nexport function drawElementsIndirect(mode: PrimitiveType, type: DrawElementsType, indirect: GLintptr): void {\n glDrawElementsIndirect(mode, type, indirect);\n}\n\n/**\n * `void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Also known as `glDrawElementsInstancedANGLE`, `glDrawElementsInstancedARB`, `glDrawElementsInstancedEXT`, `glDrawElementsInstancedNV`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param instancecount - `GLsizei`\n */\nexport function drawElementsInstanced(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr, instancecount: GLsizei): void {\n glDrawElementsInstanced(mode, count, type, indices, instancecount);\n}\n\n/**\n * `void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_base_instance\n * Also provided by the `GL_ARB_base_instance` extension.\n * Also known as `glDrawElementsInstancedBaseInstanceEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param instancecount - `GLsizei`\n * @param baseinstance - `GLuint`\n */\nexport function drawElementsInstancedBaseInstance(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr, instancecount: GLsizei, baseinstance: GLuint): void {\n glDrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);\n}\n\n/**\n * `void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_draw_elements_base_vertex\n * Also provided by the `GL_ARB_draw_elements_base_vertex` extension.\n * Also known as `glDrawElementsInstancedBaseVertexEXT`, `glDrawElementsInstancedBaseVertexOES`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param instancecount - `GLsizei`\n * @param basevertex - `GLint`\n */\nexport function drawElementsInstancedBaseVertex(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr, instancecount: GLsizei, basevertex: GLint): void {\n glDrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);\n}\n\n/**\n * `void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_base_instance\n * Also provided by the `GL_ARB_base_instance` extension.\n * Also known as `glDrawElementsInstancedBaseVertexBaseInstanceEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param instancecount - `GLsizei`\n * @param basevertex - `GLint`\n * @param baseinstance - `GLuint`\n */\nexport function drawElementsInstancedBaseVertexBaseInstance(mode: PrimitiveType, count: GLsizei, type: DrawElementsType, indices: GLintptr, instancecount: GLsizei, basevertex: GLint, baseinstance: GLuint): void {\n glDrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);\n}\n\n/**\n * `void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices)`\n *\n * Provided by `GL_VERSION_1_2`.\n * Also known as `glDrawRangeElementsEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param start - `GLuint`\n * @param end - `GLuint`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n */\nexport function drawRangeElements(mode: PrimitiveType, start: GLuint, end: GLuint, count: GLsizei, type: DrawElementsType, indices: GLintptr): void {\n glDrawRangeElements(mode, start, end, count, type, indices);\n}\n\n/**\n * `void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_draw_elements_base_vertex\n * Also provided by the `GL_ARB_draw_elements_base_vertex` extension.\n * Also known as `glDrawRangeElementsBaseVertexEXT`, `glDrawRangeElementsBaseVertexOES`.\n *\n * @param mode - `PrimitiveType`\n * @param start - `GLuint`\n * @param end - `GLuint`\n * @param count - `GLsizei`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr`, byte offset into the bound buffer\n * @param basevertex - `GLint`\n */\nexport function drawRangeElementsBaseVertex(mode: PrimitiveType, start: GLuint, end: GLuint, count: GLsizei, type: DrawElementsType, indices: GLintptr, basevertex: GLint): void {\n glDrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);\n}\n\n/**\n * `void glDrawTransformFeedback(GLenum mode, GLuint id)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glDrawTransformFeedbackEXT`, `glDrawTransformFeedbackNV`.\n *\n * @param mode - `PrimitiveType`\n * @param id - `GLuint`, object class `transform feedback`\n */\nexport function drawTransformFeedback(mode: PrimitiveType, id: GLuint): void {\n glDrawTransformFeedback(mode, id);\n}\n\n/**\n * `void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_transform_feedback_instanced\n * Also provided by the `GL_ARB_transform_feedback_instanced` extension.\n * Also known as `glDrawTransformFeedbackInstancedEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param id - `GLuint`, object class `transform feedback`\n * @param instancecount - `GLsizei`\n */\nexport function drawTransformFeedbackInstanced(mode: PrimitiveType, id: GLuint, instancecount: GLsizei): void {\n glDrawTransformFeedbackInstanced(mode, id, instancecount);\n}\n\n/**\n * `void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback3\n * Also provided by the `GL_ARB_transform_feedback3` extension.\n *\n * @param mode - `PrimitiveType`\n * @param id - `GLuint`, object class `transform feedback`\n * @param stream - `GLuint`\n */\nexport function drawTransformFeedbackStream(mode: PrimitiveType, id: GLuint, stream: GLuint): void {\n glDrawTransformFeedbackStream(mode, id, stream);\n}\n\n/**\n * `void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_transform_feedback_instanced\n * Also provided by the `GL_ARB_transform_feedback_instanced` extension.\n *\n * @param mode - `PrimitiveType`\n * @param id - `GLuint`, object class `transform feedback`\n * @param stream - `GLuint`\n * @param instancecount - `GLsizei`\n */\nexport function drawTransformFeedbackStreamInstanced(mode: PrimitiveType, id: GLuint, stream: GLuint, instancecount: GLsizei): void {\n glDrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);\n}\n\n/**\n * `void glEnable(GLenum cap)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 139.\n *\n * @param cap - `EnableCap`\n */\nexport function enable(cap: EnableCap): void {\n glEnable(cap);\n}\n\n/**\n * `void glEnablei(GLenum target, GLuint index)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glEnableiEXT`, `glEnableIndexedEXT`, `glEnableiNV`, `glEnableiOES`.\n *\n * @param target - `EnableCap`\n * @param index - `GLuint`\n */\nexport function enablei(target: EnableCap, index: GLuint): void {\n glEnablei(target, index);\n}\n\n/**\n * `void glEnableVertexArrayAttrib(GLuint vaobj, GLuint index)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param index - `GLuint`\n */\nexport function enableVertexArrayAttrib(vaobj: GLuint, index: GLuint): void {\n glEnableVertexArrayAttrib(vaobj, index);\n}\n\n/**\n * `void glEnableVertexAttribArray(GLuint index)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glEnableVertexAttribArrayARB`.\n *\n * @param index - `GLuint`\n */\nexport function enableVertexAttribArray(index: GLuint): void {\n glEnableVertexAttribArray(index);\n}\n\n/**\n * `void glEndConditionalRender()`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glEndConditionalRenderNV`, `glEndConditionalRenderNVX`.\n * GLX render opcode 349.\n */\nexport function endConditionalRender(): void {\n glEndConditionalRender();\n}\n\n/**\n * `void glEndQuery(GLenum target)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glEndQueryARB`.\n * GLX render opcode 232.\n *\n * @param target - `QueryTarget`\n */\nexport function endQuery(target: QueryTarget): void {\n glEndQuery(target);\n}\n\n/**\n * `void glEndQueryIndexed(GLenum target, GLuint index)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback3\n * Also provided by the `GL_ARB_transform_feedback3` extension.\n *\n * @param target - `QueryTarget`\n * @param index - `GLuint`\n */\nexport function endQueryIndexed(target: QueryTarget, index: GLuint): void {\n glEndQueryIndexed(target, index);\n}\n\n/**\n * `void glEndTransformFeedback()`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glEndTransformFeedbackEXT`, `glEndTransformFeedbackNV`.\n * GLX render opcode 358.\n */\nexport function endTransformFeedback(): void {\n glEndTransformFeedback();\n}\n\n/**\n * `GLsync glFenceSync(GLenum condition, GLbitfield flags)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glFenceSyncAPPLE`.\n *\n * @param condition - `SyncCondition`\n * @param flags - `SyncBehaviorFlags`\n * @returns `GLsync`, object class `sync`\n */\nexport function fenceSync(condition: SyncCondition, flags: SyncBehaviorFlags): GLsync {\n return glFenceSync(condition, flags) as GLsync;\n}\n\n/**\n * `void glFinish()`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 108.\n */\nexport function finish(): void {\n glFinish();\n}\n\n/**\n * `void glFlush()`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 142.\n */\nexport function flush(): void {\n glFlush();\n}\n\n/**\n * `void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_map_buffer_range\n * Also provided by the `GL_ARB_map_buffer_range` extension.\n * Also known as `glFlushMappedBufferRangeAPPLE`, `glFlushMappedBufferRangeEXT`.\n *\n * @param target - `BufferTargetARB`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param length - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function flushMappedBufferRange(target: BufferTargetARB, offset: GLintptr, length: GLsizeiptr): void {\n glFlushMappedBufferRange(target, offset, length);\n}\n\n/**\n * `void glFlushMappedNamedBufferRange(GLuint buffer, GLintptr offset, GLsizeiptr length)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param length - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function flushMappedNamedBufferRange(buffer: GLuint, offset: GLintptr, length: GLsizeiptr): void {\n glFlushMappedNamedBufferRange(buffer, offset, length);\n}\n\n/**\n * `void glFramebufferParameteri(GLenum target, GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_framebuffer_no_attachments\n * Also provided by the `GL_ARB_framebuffer_no_attachments` extension.\n *\n * @param target - `FramebufferTarget`\n * @param pname - `FramebufferParameterName`\n * @param param - `GLint`\n */\nexport function framebufferParameteri(target: FramebufferTarget, pname: FramebufferParameterName, param: GLint): void {\n glFramebufferParameteri(target, pname, param);\n}\n\n/**\n * `void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glFramebufferRenderbufferEXT`.\n * GLX render opcode 4324.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param renderbuffertarget - `RenderbufferTarget`\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n */\nexport function framebufferRenderbuffer(target: FramebufferTarget, attachment: FramebufferAttachment, renderbuffertarget: RenderbufferTarget, renderbuffer: GLuint): void {\n glFramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);\n}\n\n/**\n * `void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_texture_multisample\n * Also known as `glFramebufferTextureARB`, `glFramebufferTextureEXT`, `glFramebufferTextureOES`.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n */\nexport function framebufferTexture(target: FramebufferTarget, attachment: FramebufferAttachment, texture: GLuint, level: GLint): void {\n glFramebufferTexture(target, attachment, texture, level);\n}\n\n/**\n * `void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glFramebufferTexture1DEXT`.\n * GLX render opcode 4321.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param textarget - `TextureTarget`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n */\nexport function framebufferTexture1D(target: FramebufferTarget, attachment: FramebufferAttachment, textarget: TextureTarget, texture: GLuint, level: GLint): void {\n glFramebufferTexture1D(target, attachment, textarget, texture, level);\n}\n\n/**\n * `void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glFramebufferTexture2DEXT`.\n * GLX render opcode 4322.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param textarget - `TextureTarget`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n */\nexport function framebufferTexture2D(target: FramebufferTarget, attachment: FramebufferAttachment, textarget: TextureTarget, texture: GLuint, level: GLint): void {\n glFramebufferTexture2D(target, attachment, textarget, texture, level);\n}\n\n/**\n * `void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glFramebufferTexture3DEXT`.\n * GLX render opcode 4323.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param textarget - `TextureTarget`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param zoffset - `GLint`\n */\nexport function framebufferTexture3D(target: FramebufferTarget, attachment: FramebufferAttachment, textarget: TextureTarget, texture: GLuint, level: GLint, zoffset: GLint): void {\n glFramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);\n}\n\n/**\n * `void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glFramebufferTextureLayerARB`, `glFramebufferTextureLayerEXT`.\n * GLX render opcode 237.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param layer - `GLint`, kind `CheckedInt32`\n */\nexport function framebufferTextureLayer(target: FramebufferTarget, attachment: FramebufferAttachment, texture: GLuint, level: GLint, layer: GLint): void {\n glFramebufferTextureLayer(target, attachment, texture, level, layer);\n}\n\n/**\n * `void glFrontFace(GLenum mode)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 84.\n *\n * @param mode - `FrontFaceDirection`\n */\nexport function frontFace(mode: FrontFaceDirection): void {\n glFrontFace(mode);\n}\n\n/**\n * `void glGenBuffers(GLsizei n, GLuint *buffers)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGenBuffersARB`.\n *\n * @param n - `GLsizei`\n * @returns `buffers` (`GLuint[]`, length `n`, object class `buffer`)\n */\nexport function genBuffers(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glGenBuffers(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGenerateMipmap(GLenum target)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glGenerateMipmapEXT`.\n * GLX render opcode 4325.\n *\n * @param target - `TextureTarget`\n */\nexport function generateMipmap(target: TextureTarget): void {\n glGenerateMipmap(target);\n}\n\n/**\n * `void glGenerateTextureMipmap(GLuint texture)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n */\nexport function generateTextureMipmap(texture: GLuint): void {\n glGenerateTextureMipmap(texture);\n}\n\n/**\n * `void glGenFramebuffers(GLsizei n, GLuint *framebuffers)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glGenFramebuffersEXT`.\n * GLX vendor opcode 1426.\n *\n * @param n - `GLsizei`\n * @returns `framebuffers` (`GLuint[]`, length `n`, object class `framebuffer`)\n */\nexport function genFramebuffers(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glGenFramebuffers(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGenProgramPipelines(GLsizei n, GLuint *pipelines)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param n - `GLsizei`\n * @returns `pipelines` (`GLuint[]`, length `n`, object class `program pipeline`)\n */\nexport function genProgramPipelines(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glGenProgramPipelines(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGenQueries(GLsizei n, GLuint *ids)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGenQueriesARB`.\n * GLX single opcode 162.\n *\n * @param n - `GLsizei`\n * @returns `ids` (`GLuint[]`, length `n`, object class `query`)\n */\nexport function genQueries(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glGenQueries(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glGenRenderbuffersEXT`.\n * GLX vendor opcode 1423.\n *\n * @param n - `GLsizei`\n * @returns `renderbuffers` (`GLuint[]`, length `n`, object class `renderbuffer`)\n */\nexport function genRenderbuffers(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glGenRenderbuffers(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGenSamplers(GLsizei count, GLuint *samplers)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param count - `GLsizei`\n * @returns `samplers` (`GLuint[]`, length `count`, object class `sampler`)\n */\nexport function genSamplers(count: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(count).fill(0) };\n glGenSamplers(count, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGenTextures(GLsizei n, GLuint *textures)`\n *\n * Provided by `GL_VERSION_1_1`.\n * GLX single opcode 145.\n *\n * @param n - `GLsizei`\n * @returns `textures` (`GLuint[]`, length `n`, object class `texture`)\n */\nexport function genTextures(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glGenTextures(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGenTransformFeedbacks(GLsizei n, GLuint *ids)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glGenTransformFeedbacksNV`.\n *\n * @param n - `GLsizei`\n * @returns `ids` (`GLuint[]`, length `n`, object class `transform feedback`)\n */\nexport function genTransformFeedbacks(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glGenTransformFeedbacks(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGenVertexArrays(GLsizei n, GLuint *arrays)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n * Also known as `glGenVertexArraysAPPLE`, `glGenVertexArraysOES`.\n * GLX single opcode 206.\n *\n * @param n - `GLsizei`\n * @returns `arrays` (`GLuint[]`, length `n`, object class `vertex array`)\n */\nexport function genVertexArrays(n: GLsizei): GLuint[] {\n const __out0 = { value: new Array<number>(n).fill(0) };\n glGenVertexArrays(n, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetActiveAttribARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `size` (`GLint`), `type` (`AttributeType`), `name` (`string`, length `bufSize`)\n */\nexport function getActiveAttrib(program: GLuint, index: GLuint, bufSize: GLsizei): [GLsizei, GLint, AttributeType, string] {\n const __out0 = { value: 0 };\n const __out1 = { value: 0 };\n const __out2 = { value: 0 };\n const __out3 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetActiveAttrib\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.int32), t.ref(t.uint32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n __binding(program, index, bufSize, __out0, __out1, __out2, __out3);\n return [__out0.value, __out1.value, __out2.value, __out3.value];\n}\n\n/**\n * `void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param shadertype - `ShaderType`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `name` (`string`, length `bufSize`)\n */\nexport function getActiveSubroutineName(program: GLuint, shadertype: ShaderType, index: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const __out0 = { value: 0 };\n const __out1 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetActiveSubroutineName\", [t.uint32, t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n __binding(program, shadertype, index, bufSize, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param shadertype - `ShaderType`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `name` (`string`, length `bufSize`)\n */\nexport function getActiveSubroutineUniformName(program: GLuint, shadertype: ShaderType, index: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const __out0 = { value: 0 };\n const __out1 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetActiveSubroutineUniformName\", [t.uint32, t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n __binding(program, shadertype, index, bufSize, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetActiveUniformARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `size` (`GLint`), `type` (`UniformType`), `name` (`string`, length `bufSize`)\n */\nexport function getActiveUniform(program: GLuint, index: GLuint, bufSize: GLsizei): [GLsizei, GLint, UniformType, string] {\n const __out0 = { value: 0 };\n const __out1 = { value: 0 };\n const __out2 = { value: 0 };\n const __out3 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetActiveUniform\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.int32), t.ref(t.uint32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n __binding(program, index, bufSize, __out0, __out1, __out2, __out3);\n return [__out0.value, __out1.value, __out2.value, __out3.value];\n}\n\n/**\n * `void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Registry note: Reuse ARB_uniform_buffer_object\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * GLX single opcode 220.\n *\n * @param program - `GLuint`, object class `program`\n * @param uniformBlockIndex - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `uniformBlockName` (`string`, length `bufSize`)\n */\nexport function getActiveUniformBlockName(program: GLuint, uniformBlockIndex: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const __out0 = { value: 0 };\n const __out1 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetActiveUniformBlockName\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n __binding(program, uniformBlockIndex, bufSize, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Registry note: Reuse ARB_uniform_buffer_object\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * GLX single opcode 217.\n *\n * @param program - `GLuint`, object class `program`\n * @param uniformIndex - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `uniformName` (`string`, length `bufSize`)\n */\nexport function getActiveUniformName(program: GLuint, uniformIndex: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const __out0 = { value: 0 };\n const __out1 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetActiveUniformName\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n __binding(program, uniformIndex, bufSize, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders)`\n *\n * Provided by `GL_VERSION_2_0`.\n *\n * @param program - `GLuint`, object class `program`\n * @param maxCount - `GLsizei`\n * @returns Tuple of `count` (`GLsizei`), `shaders` (`GLuint[]`, length `maxCount`, object class `shader`)\n */\nexport function getAttachedShaders(program: GLuint, maxCount: GLsizei): [GLsizei, GLuint[]] {\n const __out0 = { value: 0 };\n const __out1 = { value: new Array<number>(maxCount).fill(0) };\n glGetAttachedShaders(program, maxCount, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `GLint glGetAttribLocation(GLuint program, const GLchar *name)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetAttribLocationARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param name - `string`\n * @returns `GLint`\n */\nexport function getAttribLocation(program: GLuint, name: string): GLint {\n return glGetAttribLocation(program, name) as GLint;\n}\n\n/**\n * `void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_texture_multisample\n *\n * @param target - `BufferTargetARB`\n * @param pname - `BufferPNameARB`\n * @returns `params` (`GLint64`)\n */\nexport function getBufferParameteri64v(target: BufferTargetARB, pname: BufferPNameARB): GLint64 {\n const __out0 = { value: 0 };\n glGetBufferParameteri64v(target, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGetBufferParameterivARB`.\n *\n * @param target - `BufferTargetARB`\n * @param pname - `BufferPNameARB`\n * @returns `params` (`GLint`)\n */\nexport function getBufferParameteriv(target: BufferTargetARB, pname: BufferPNameARB): GLint {\n const __out0 = { value: 0 };\n glGetBufferParameteriv(target, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGetBufferSubDataARB`.\n *\n * @param target - `BufferTargetARB`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n */\nexport function getBufferSubData(target: BufferTargetARB, offset: GLintptr, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null): void {\n glGetBufferSubData(target, offset, size, data);\n}\n\n/**\n * `void glGetCompressedTexImage(GLenum target, GLint level, void *img)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glGetCompressedTexImageARB`.\n * GLX single opcode 160.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param img - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(target,level)`, kind `CompressedTextureARB`. This parameter contains compressed texture data.\n */\nexport function getCompressedTexImage(target: TextureTarget, level: GLint, img: ArrayBufferView | GLintptr | null): void {\n glGetCompressedTexImage(target, level, img);\n}\n\n/**\n * `void glGetCompressedTextureImage(GLuint texture, GLint level, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getCompressedTextureImage(texture: GLuint, level: GLint, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetCompressedTextureImage(texture, level, bufSize, pixels);\n}\n\n/**\n * `void glGetCompressedTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_get_texture_sub_image\n * Also provided by the `GL_ARB_get_texture_sub_image` extension.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getCompressedTextureSubImage(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, bufSize, pixels);\n}\n\n/**\n * `GLuint glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glGetDebugMessageLogARB`, `glGetDebugMessageLogKHR`.\n *\n * @param count - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `GLuint`, `sources` (`DebugSource[]`, length `count`), `types` (`DebugType[]`, length `count`), `ids` (`GLuint[]`, length `count`), `severities` (`DebugSeverity[]`, length `count`), `lengths` (`GLsizei[]`, length `count`), `messageLog` (`string`, length `bufSize`)\n */\nexport function getDebugMessageLog(count: GLuint, bufSize: GLsizei): [GLuint, DebugSource[], DebugType[], GLuint[], DebugSeverity[], GLsizei[], string] {\n const __out0 = { value: new Array<number>(count).fill(0) };\n const __out1 = { value: new Array<number>(count).fill(0) };\n const __out2 = { value: new Array<number>(count).fill(0) };\n const __out3 = { value: new Array<number>(count).fill(0) };\n const __out4 = { value: new Array<number>(count).fill(0) };\n const __out5 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetDebugMessageLog\", [t.uint32, t.int32, t.ref(t.sizedArray(t.uint32, 0)), t.ref(t.sizedArray(t.uint32, 0)), t.ref(t.sizedArray(t.uint32, 0)), t.ref(t.sizedArray(t.uint32, 0)), t.ref(t.sizedArray(t.int32, 0)), t.ref(t.string(\"borrowed\", bufSize))], t.uint32);\n const __result = __binding(count, bufSize, __out0, __out1, __out2, __out3, __out4, __out5);\n return [__result as GLuint, __out0.value, __out1.value, __out2.value, __out3.value, __out4.value, __out5.value];\n}\n\n/**\n * `GLenum glGetError()`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 115.\n *\n * @returns `ErrorCode`\n */\nexport function getError(): ErrorCode {\n return glGetError() as ErrorCode;\n}\n\n/**\n * `GLint glGetFragDataIndex(GLuint program, const GLchar *name)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_blend_func_extended\n * Also provided by the `GL_ARB_blend_func_extended` extension.\n * Also known as `glGetFragDataIndexEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param name - `string`\n * @returns `GLint`\n */\nexport function getFragDataIndex(program: GLuint, name: string): GLint {\n return glGetFragDataIndex(program, name) as GLint;\n}\n\n/**\n * `GLint glGetFragDataLocation(GLuint program, const GLchar *name)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glGetFragDataLocationEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param name - `string`, length `COMPSIZE(name)`\n * @returns `GLint`\n */\nexport function getFragDataLocation(program: GLuint, name: string): GLint {\n return glGetFragDataLocation(program, name) as GLint;\n}\n\n/**\n * `void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glGetFramebufferAttachmentParameterivEXT`.\n * GLX vendor opcode 1428.\n *\n * @param target - `FramebufferTarget`\n * @param attachment - `FramebufferAttachment`\n * @param pname - `FramebufferAttachmentParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getFramebufferAttachmentParameteriv(target: FramebufferTarget, attachment: FramebufferAttachment, pname: FramebufferAttachmentParameterName): GLint {\n const __out0 = { value: 0 };\n glGetFramebufferAttachmentParameteriv(target, attachment, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_framebuffer_no_attachments\n * Also provided by the `GL_ARB_framebuffer_no_attachments` extension.\n *\n * @param target - `FramebufferTarget`\n * @param pname - `FramebufferAttachmentParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getFramebufferParameteriv(target: FramebufferTarget, pname: FramebufferAttachmentParameterName): GLint {\n const __out0 = { value: 0 };\n glGetFramebufferParameteriv(target, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `GLenum glGetGraphicsResetStatus()`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_robustness\n * Also provided by the `GL_KHR_robustness` extension.\n * `GL_KHR_robustness` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glGetGraphicsResetStatusEXT`, `glGetGraphicsResetStatusKHR`.\n *\n * @returns `GraphicsResetStatus`\n */\nexport function getGraphicsResetStatus(): GraphicsResetStatus {\n return glGetGraphicsResetStatus() as GraphicsResetStatus;\n}\n\n/**\n * `void glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei count, GLint64 *params)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_internalformat_query2\n * Also provided by the `GL_ARB_internalformat_query2` extension.\n * `GL_ARB_internalformat_query2` note: Supported only if GL_KHR_texture_compression_astc_ldr is supported.\n *\n * @param target - `TextureTarget`\n * @param internalformat - `InternalFormat`\n * @param pname - `InternalFormatPName`\n * @param count - `GLsizei`\n * @returns `params` (`GLint64[]`, length `count`)\n */\nexport function getInternalformati64v(target: TextureTarget, internalformat: InternalFormat, pname: InternalFormatPName, count: GLsizei): GLint64[] {\n const __out0 = { value: new Array<number>(count).fill(0) };\n glGetInternalformati64v(target, internalformat, pname, count, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei count, GLint *params)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_internalformat_query\n * Also provided by the `GL_ARB_internalformat_query` extension.\n *\n * @param target - `TextureTarget`\n * @param internalformat - `InternalFormat`\n * @param pname - `InternalFormatPName`\n * @param count - `GLsizei`\n * @returns `params` (`GLint[]`, length `count`)\n */\nexport function getInternalformativ(target: TextureTarget, internalformat: InternalFormat, pname: InternalFormatPName, count: GLsizei): GLint[] {\n const __out0 = { value: new Array<number>(count).fill(0) };\n glGetInternalformativ(target, internalformat, pname, count, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetNamedBufferParameteri64v(GLuint buffer, GLenum pname, GLint64 *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `BufferPNameARB`\n * @returns `params` (`GLint64`)\n */\nexport function getNamedBufferParameteri64v(buffer: GLuint, pname: BufferPNameARB): GLint64 {\n const __out0 = { value: 0 };\n glGetNamedBufferParameteri64v(buffer, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetNamedBufferParameteriv(GLuint buffer, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `BufferPNameARB`\n * @returns `params` (`GLint`)\n */\nexport function getNamedBufferParameteriv(buffer: GLuint, pname: BufferPNameARB): GLint {\n const __out0 = { value: 0 };\n glGetNamedBufferParameteriv(buffer, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size, void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n */\nexport function getNamedBufferSubData(buffer: GLuint, offset: GLintptr, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null): void {\n glGetNamedBufferSubData(buffer, offset, size, data);\n}\n\n/**\n * `void glGetNamedFramebufferAttachmentParameteriv(GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param attachment - `FramebufferAttachment`\n * @param pname - `FramebufferAttachmentParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getNamedFramebufferAttachmentParameteriv(framebuffer: GLuint, attachment: FramebufferAttachment, pname: FramebufferAttachmentParameterName): GLint {\n const __out0 = { value: 0 };\n glGetNamedFramebufferAttachmentParameteriv(framebuffer, attachment, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetNamedFramebufferParameteriv(GLuint framebuffer, GLenum pname, GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param pname - `GetFramebufferParameter`\n * @returns `param` (`GLint`)\n */\nexport function getNamedFramebufferParameteriv(framebuffer: GLuint, pname: GetFramebufferParameter): GLint {\n const __out0 = { value: 0 };\n glGetNamedFramebufferParameteriv(framebuffer, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetNamedRenderbufferParameteriv(GLuint renderbuffer, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Renderbuffer object functions.\n *\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n * @param pname - `RenderbufferParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getNamedRenderbufferParameteriv(renderbuffer: GLuint, pname: RenderbufferParameterName): GLint {\n const __out0 = { value: 0 };\n glGetNamedRenderbufferParameteriv(renderbuffer, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetnCompressedTexImage(GLenum target, GLint lod, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_robustness\n *\n * @param target - `TextureTarget`\n * @param lod - `GLint`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getnCompressedTexImage(target: TextureTarget, lod: GLint, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetnCompressedTexImage(target, lod, bufSize, pixels);\n}\n\n/**\n * `void glGetnTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_robustness\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getnTexImage(target: TextureTarget, level: GLint, format: PixelFormat, type: PixelType, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetnTexImage(target, level, format, type, bufSize, pixels);\n}\n\n/**\n * `void glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glGetObjectLabelKHR`.\n *\n * @param identifier - `ObjectIdentifier`\n * @param name - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `label` (`string`, length `bufSize`)\n */\nexport function getObjectLabel(identifier: ObjectIdentifier, name: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const __out0 = { value: 0 };\n const __out1 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetObjectLabel\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n __binding(identifier, name, bufSize, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `void glGetObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glGetObjectPtrLabelKHR`.\n *\n * @param ptr - `ArrayBufferView | GLintptr | null`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `label` (`string`, length `bufSize`)\n */\nexport function getObjectPtrLabel(ptr: ArrayBufferView | GLintptr | null, bufSize: GLsizei): [GLsizei, string] {\n const __out0 = { value: 0 };\n const __out1 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetObjectPtrLabel\", [t.buffer, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n __binding(ptr, bufSize, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_get_program_binary\n * Also provided by the `GL_ARB_get_program_binary` extension.\n * Also known as `glGetProgramBinaryOES`.\n *\n * @param program - `GLuint`, object class `program`\n * @param bufSize - `GLsizei`\n * @param binary - `ArrayBufferView | GLintptr | null`, length `bufSize`\n * @returns Tuple of `length` (`GLsizei`), `binaryFormat` (`GLenum`)\n */\nexport function getProgramBinary(program: GLuint, bufSize: GLsizei, binary: ArrayBufferView | GLintptr | null): [GLsizei, GLenum] {\n const __out0 = { value: 0 };\n const __out1 = { value: 0 };\n glGetProgramBinary(program, bufSize, __out0, __out1, binary);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `void glGetProgramiv(GLuint program, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 199.\n *\n * @param program - `GLuint`, object class `program`\n * @param pname - `ProgramPropertyARB`\n * @returns `params` (`GLint`)\n */\nexport function getProgramiv(program: GLuint, pname: ProgramPropertyARB): GLint {\n const __out0 = { value: 0 };\n glGetProgramiv(program, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n * @param pname - `PipelineParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getProgramPipelineiv(pipeline: GLuint, pname: PipelineParameterName): GLint {\n const __out0 = { value: 0 };\n glGetProgramPipelineiv(pipeline, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_program_interface_query\n * Also provided by the `GL_ARB_program_interface_query` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param programInterface - `ProgramInterface`\n * @param name - `string`, length `COMPSIZE(name)`\n * @returns `GLuint`\n */\nexport function getProgramResourceIndex(program: GLuint, programInterface: ProgramInterface, name: string): GLuint {\n return glGetProgramResourceIndex(program, programInterface, name) as GLuint;\n}\n\n/**\n * `void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei count, GLsizei *length, GLint *params)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_program_interface_query\n * Also provided by the `GL_ARB_program_interface_query` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param programInterface - `ProgramInterface`\n * @param index - `GLuint`\n * @param propCount - `GLsizei`\n * @param props - `ProgramResourceProperty[] | Uint32Array`, length `propCount`\n * @param count - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `params` (`GLint[]`, length `count`)\n */\nexport function getProgramResourceiv(program: GLuint, programInterface: ProgramInterface, index: GLuint, propCount: GLsizei, props: ProgramResourceProperty[] | Uint32Array, count: GLsizei): [GLsizei, GLint[]] {\n const __out0 = { value: 0 };\n const __out1 = { value: new Array<number>(count).fill(0) };\n glGetProgramResourceiv(program, programInterface, index, propCount, props, count, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_program_interface_query\n * Also provided by the `GL_ARB_program_interface_query` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param programInterface - `ProgramInterface`\n * @param name - `string`, length `COMPSIZE(name)`\n * @returns `GLint`\n */\nexport function getProgramResourceLocation(program: GLuint, programInterface: ProgramInterface, name: string): GLint {\n return glGetProgramResourceLocation(program, programInterface, name) as GLint;\n}\n\n/**\n * `GLint glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_program_interface_query\n * Also provided by the `GL_ARB_program_interface_query` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param programInterface - `ProgramInterface`\n * @param name - `string`, length `COMPSIZE(name)`\n * @returns `GLint`\n */\nexport function getProgramResourceLocationIndex(program: GLuint, programInterface: ProgramInterface, name: string): GLint {\n return glGetProgramResourceLocationIndex(program, programInterface, name) as GLint;\n}\n\n/**\n * `void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_program_interface_query\n * Also provided by the `GL_ARB_program_interface_query` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param programInterface - `ProgramInterface`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `name` (`string`, length `bufSize`)\n */\nexport function getProgramResourceName(program: GLuint, programInterface: ProgramInterface, index: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const __out0 = { value: 0 };\n const __out1 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetProgramResourceName\", [t.uint32, t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n __binding(program, programInterface, index, bufSize, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param shadertype - `ShaderType`\n * @param pname - `ProgramStagePName`\n * @returns `values` (`GLint`)\n */\nexport function getProgramStageiv(program: GLuint, shadertype: ShaderType, pname: ProgramStagePName): GLint {\n const __out0 = { value: 0 };\n glGetProgramStageiv(program, shadertype, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetQueryBufferObjecti64v(GLuint id, GLuint buffer, GLenum pname, GLintptr offset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param id - `GLuint`, object class `query`\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `QueryObjectParameterName`\n * @param offset - `GLintptr`\n */\nexport function getQueryBufferObjecti64v(id: GLuint, buffer: GLuint, pname: QueryObjectParameterName, offset: GLintptr): void {\n glGetQueryBufferObjecti64v(id, buffer, pname, offset);\n}\n\n/**\n * `void glGetQueryBufferObjectiv(GLuint id, GLuint buffer, GLenum pname, GLintptr offset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param id - `GLuint`, object class `query`\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `QueryObjectParameterName`\n * @param offset - `GLintptr`\n */\nexport function getQueryBufferObjectiv(id: GLuint, buffer: GLuint, pname: QueryObjectParameterName, offset: GLintptr): void {\n glGetQueryBufferObjectiv(id, buffer, pname, offset);\n}\n\n/**\n * `void glGetQueryBufferObjectui64v(GLuint id, GLuint buffer, GLenum pname, GLintptr offset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param id - `GLuint`, object class `query`\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `QueryObjectParameterName`\n * @param offset - `GLintptr`\n */\nexport function getQueryBufferObjectui64v(id: GLuint, buffer: GLuint, pname: QueryObjectParameterName, offset: GLintptr): void {\n glGetQueryBufferObjectui64v(id, buffer, pname, offset);\n}\n\n/**\n * `void glGetQueryBufferObjectuiv(GLuint id, GLuint buffer, GLenum pname, GLintptr offset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param id - `GLuint`, object class `query`\n * @param buffer - `GLuint`, object class `buffer`\n * @param pname - `QueryObjectParameterName`\n * @param offset - `GLintptr`\n */\nexport function getQueryBufferObjectuiv(id: GLuint, buffer: GLuint, pname: QueryObjectParameterName, offset: GLintptr): void {\n glGetQueryBufferObjectuiv(id, buffer, pname, offset);\n}\n\n/**\n * `void glGetQueryiv(GLenum target, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGetQueryivARB`.\n * GLX single opcode 164.\n *\n * @param target - `QueryTarget`\n * @param pname - `QueryParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getQueryiv(target: QueryTarget, pname: QueryParameterName): GLint {\n const __out0 = { value: 0 };\n glGetQueryiv(target, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_timer_query\n * Also provided by the `GL_ARB_timer_query` extension.\n * Also known as `glGetQueryObjecti64vEXT`.\n *\n * @param id - `GLuint`, object class `query`\n * @param pname - `QueryObjectParameterName`\n * @returns `params` (`GLint64`)\n */\nexport function getQueryObjecti64v(id: GLuint, pname: QueryObjectParameterName): GLint64 {\n const __out0 = { value: 0 };\n glGetQueryObjecti64v(id, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGetQueryObjectivARB`, `glGetQueryObjectivEXT`.\n * GLX single opcode 165.\n *\n * @param id - `GLuint`, object class `query`\n * @param pname - `QueryObjectParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getQueryObjectiv(id: GLuint, pname: QueryObjectParameterName): GLint {\n const __out0 = { value: 0 };\n glGetQueryObjectiv(id, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_timer_query\n * Also provided by the `GL_ARB_timer_query` extension.\n * Also known as `glGetQueryObjectui64vEXT`.\n *\n * @param id - `GLuint`, object class `query`\n * @param pname - `QueryObjectParameterName`\n * @returns `params` (`GLuint64`)\n */\nexport function getQueryObjectui64v(id: GLuint, pname: QueryObjectParameterName): GLuint64 {\n const __out0 = { value: 0 };\n glGetQueryObjectui64v(id, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glGetQueryObjectuivARB`.\n * GLX single opcode 166.\n *\n * @param id - `GLuint`, object class `query`\n * @param pname - `QueryObjectParameterName`\n * @returns `params` (`GLuint`)\n */\nexport function getQueryObjectuiv(id: GLuint, pname: QueryObjectParameterName): GLuint {\n const __out0 = { value: 0 };\n glGetQueryObjectuiv(id, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glGetRenderbufferParameterivEXT`.\n * GLX vendor opcode 1424.\n *\n * @param target - `RenderbufferTarget`\n * @param pname - `RenderbufferParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getRenderbufferParameteriv(target: RenderbufferTarget, pname: RenderbufferParameterName): GLint {\n const __out0 = { value: 0 };\n glGetRenderbufferParameteriv(target, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetShaderiv(GLuint shader, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 198.\n *\n * @param shader - `GLuint`, object class `shader`\n * @param pname - `ShaderParameterName`\n * @returns `params` (`GLint`)\n */\nexport function getShaderiv(shader: GLuint, pname: ShaderParameterName): GLint {\n const __out0 = { value: 0 };\n glGetShaderiv(shader, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_ES2_compatibility\n * Also provided by the `GL_ARB_ES2_compatibility` extension.\n *\n * @param shadertype - `ShaderType`\n * @param precisiontype - `PrecisionType`\n * @returns Tuple of `range` (`GLint[]`, length `2`), `precision` (`GLint`)\n */\nexport function getShaderPrecisionFormat(shadertype: ShaderType, precisiontype: PrecisionType): [GLint[], GLint] {\n const __out0 = { value: new Array<number>(2).fill(0) };\n const __out1 = { value: 0 };\n glGetShaderPrecisionFormat(shadertype, precisiontype, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetShaderSourceARB`.\n *\n * @param shader - `GLuint`, object class `shader`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `source` (`string`, length `bufSize`)\n */\nexport function getShaderSource(shader: GLuint, bufSize: GLsizei): [GLsizei, string] {\n const __out0 = { value: 0 };\n const __out1 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetShaderSource\", [t.uint32, t.int32, t.ref(t.int32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n __binding(shader, bufSize, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `const GLubyte * glGetString(GLenum name)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 129.\n *\n * @param name - `StringName`\n * @returns `string`, kind `String`\n */\nexport function getString(name: StringName): string {\n return glGetString(name) as string;\n}\n\n/**\n * `const GLubyte * glGetStringi(GLenum name, GLuint index)`\n *\n * Provided by `GL_VERSION_3_0`.\n * GLX single opcode 214.\n *\n * @param name - `StringName`\n * @param index - `GLuint`\n * @returns `string`, kind `String`\n */\nexport function getStringi(name: StringName, index: GLuint): string {\n return glGetStringi(name, index) as string;\n}\n\n/**\n * `GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param shadertype - `ShaderType`\n * @param name - `string`\n * @returns `GLuint`\n */\nexport function getSubroutineIndex(program: GLuint, shadertype: ShaderType, name: string): GLuint {\n return glGetSubroutineIndex(program, shadertype, name) as GLuint;\n}\n\n/**\n * `GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param shadertype - `ShaderType`\n * @param name - `string`\n * @returns `GLint`\n */\nexport function getSubroutineUniformLocation(program: GLuint, shadertype: ShaderType, name: string): GLint {\n return glGetSubroutineUniformLocation(program, shadertype, name) as GLint;\n}\n\n/**\n * `void glGetSynciv(GLsync sync, GLenum pname, GLsizei count, GLsizei *length, GLint *values)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glGetSyncivAPPLE`.\n *\n * @param sync - `GLsync`, object class `sync`\n * @param pname - `SyncParameterName`\n * @param count - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `values` (`GLint[]`, length `count`)\n */\nexport function getSynciv(sync: GLsync, pname: SyncParameterName, count: GLsizei): [GLsizei, GLint[]] {\n const __out0 = { value: 0 };\n const __out1 = { value: new Array<number>(count).fill(0) };\n glGetSynciv(sync, pname, count, __out0, __out1);\n return [__out0.value, __out1.value];\n}\n\n/**\n * `void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 135.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(target,level,format,type)`\n */\nexport function getTexImage(target: TextureTarget, level: GLint, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glGetTexImage(target, level, format, type, pixels);\n}\n\n/**\n * `void glGetTextureImage(GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getTextureImage(texture: GLuint, level: GLint, format: PixelFormat, type: PixelType, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetTextureImage(texture, level, format, type, bufSize, pixels);\n}\n\n/**\n * `void glGetTextureLevelParameterfv(GLuint texture, GLint level, GLenum pname, GLfloat *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLfloat`)\n */\nexport function getTextureLevelParameterfv(texture: GLuint, level: GLint, pname: GetTextureParameter): GLfloat {\n const __out0 = { value: 0 };\n glGetTextureLevelParameterfv(texture, level, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetTextureLevelParameteriv(GLuint texture, GLint level, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLint`)\n */\nexport function getTextureLevelParameteriv(texture: GLuint, level: GLint, pname: GetTextureParameter): GLint {\n const __out0 = { value: 0 };\n glGetTextureLevelParameteriv(texture, level, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetTextureParameterfv(GLuint texture, GLenum pname, GLfloat *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLfloat`)\n */\nexport function getTextureParameterfv(texture: GLuint, pname: GetTextureParameter): GLfloat {\n const __out0 = { value: 0 };\n glGetTextureParameterfv(texture, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetTextureParameterIiv(GLuint texture, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLint`)\n */\nexport function getTextureParameterIiv(texture: GLuint, pname: GetTextureParameter): GLint {\n const __out0 = { value: 0 };\n glGetTextureParameterIiv(texture, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetTextureParameterIuiv(GLuint texture, GLenum pname, GLuint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLuint`)\n */\nexport function getTextureParameterIuiv(texture: GLuint, pname: GetTextureParameter): GLuint {\n const __out0 = { value: 0 };\n glGetTextureParameterIuiv(texture, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetTextureParameteriv(GLuint texture, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `GetTextureParameter`\n * @returns `params` (`GLint`)\n */\nexport function getTextureParameteriv(texture: GLuint, pname: GetTextureParameter): GLint {\n const __out0 = { value: 0 };\n glGetTextureParameteriv(texture, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_get_texture_sub_image\n * Also provided by the `GL_ARB_get_texture_sub_image` extension.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param bufSize - `GLsizei`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function getTextureSubImage(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: PixelFormat, type: PixelType, bufSize: GLsizei, pixels: ArrayBufferView | GLintptr | null): void {\n glGetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize, pixels);\n}\n\n/**\n * `void glGetTransformFeedbacki_v(GLuint xfb, GLenum pname, GLuint index, GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param xfb - `GLuint`, object class `transform feedback`\n * @param pname - `TransformFeedbackPName`\n * @param index - `GLuint`\n * @returns `param` (`GLint`)\n */\nexport function getTransformFeedbackiV(xfb: GLuint, pname: TransformFeedbackPName, index: GLuint): GLint {\n const __out0 = { value: 0 };\n glGetTransformFeedbackiV(xfb, pname, index, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetTransformFeedbacki64_v(GLuint xfb, GLenum pname, GLuint index, GLint64 *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param xfb - `GLuint`, object class `transform feedback`\n * @param pname - `TransformFeedbackPName`\n * @param index - `GLuint`\n * @returns `param` (`GLint64`)\n */\nexport function getTransformFeedbacki64V(xfb: GLuint, pname: TransformFeedbackPName, index: GLuint): GLint64 {\n const __out0 = { value: 0 };\n glGetTransformFeedbacki64V(xfb, pname, index, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetTransformFeedbackiv(GLuint xfb, GLenum pname, GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param xfb - `GLuint`, object class `transform feedback`\n * @param pname - `TransformFeedbackPName`\n * @returns `param` (`GLint`)\n */\nexport function getTransformFeedbackiv(xfb: GLuint, pname: TransformFeedbackPName): GLint {\n const __out0 = { value: 0 };\n glGetTransformFeedbackiv(xfb, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glGetTransformFeedbackVaryingEXT`.\n * GLX single opcode 213.\n *\n * @param program - `GLuint`, object class `program`\n * @param index - `GLuint`\n * @param bufSize - `GLsizei`\n * @returns Tuple of `length` (`GLsizei`), `size` (`GLsizei`), `type` (`AttributeType`), `name` (`string`, length `bufSize`)\n */\nexport function getTransformFeedbackVarying(program: GLuint, index: GLuint, bufSize: GLsizei): [GLsizei, GLsizei, AttributeType, string] {\n const __out0 = { value: 0 };\n const __out1 = { value: 0 };\n const __out2 = { value: 0 };\n const __out3 = { value: \"\" };\n const __binding = t.bind(LIB, \"glGetTransformFeedbackVarying\", [t.uint32, t.uint32, t.int32, t.ref(t.int32), t.ref(t.int32), t.ref(t.uint32), t.ref(t.string(\"borrowed\", bufSize))], t.void);\n __binding(program, index, bufSize, __out0, __out1, __out2, __out3);\n return [__out0.value, __out1.value, __out2.value, __out3.value];\n}\n\n/**\n * `GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Registry note: Reuse ARB_uniform_buffer_object\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * GLX single opcode 218.\n *\n * @param program - `GLuint`, object class `program`\n * @param uniformBlockName - `string`, length `COMPSIZE()`\n * @returns `GLuint`\n */\nexport function getUniformBlockIndex(program: GLuint, uniformBlockName: string): GLuint {\n return glGetUniformBlockIndex(program, uniformBlockName) as GLuint;\n}\n\n/**\n * `GLint glGetUniformLocation(GLuint program, const GLchar *name)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetUniformLocationARB`.\n *\n * @param program - `GLuint`, object class `program`\n * @param name - `string`\n * @returns `GLint`\n */\nexport function getUniformLocation(program: GLuint, name: string): GLint {\n return glGetUniformLocation(program, name) as GLint;\n}\n\n/**\n * `void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param shadertype - `ShaderType`\n * @param location - `GLint`\n * @returns `params` (`GLuint`)\n */\nexport function getUniformSubroutineuiv(shadertype: ShaderType, location: GLint): GLuint {\n const __out0 = { value: 0 };\n glGetUniformSubroutineuiv(shadertype, location, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetVertexArrayIndexed64iv(GLuint vaobj, GLuint index, GLenum pname, GLint64 *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param index - `GLuint`\n * @param pname - `VertexArrayPName`\n * @returns `param` (`GLint64`)\n */\nexport function getVertexArrayIndexed64iv(vaobj: GLuint, index: GLuint, pname: VertexArrayPName): GLint64 {\n const __out0 = { value: 0 };\n glGetVertexArrayIndexed64iv(vaobj, index, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetVertexArrayIndexediv(GLuint vaobj, GLuint index, GLenum pname, GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param index - `GLuint`\n * @param pname - `VertexArrayPName`\n * @returns `param` (`GLint`)\n */\nexport function getVertexArrayIndexediv(vaobj: GLuint, index: GLuint, pname: VertexArrayPName): GLint {\n const __out0 = { value: 0 };\n glGetVertexArrayIndexediv(vaobj, index, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetVertexArrayiv(GLuint vaobj, GLenum pname, GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param pname - `VertexArrayPName`\n * @returns `param` (`GLint`)\n */\nexport function getVertexArrayiv(vaobj: GLuint, pname: VertexArrayPName): GLint {\n const __out0 = { value: 0 };\n glGetVertexArrayiv(vaobj, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetVertexAttribdvARB`, `glGetVertexAttribdvNV`.\n * GLX vendor opcode 1301.\n *\n * @param index - `GLuint`\n * @param pname - `VertexAttribPropertyARB`\n * @returns `params` (`GLdouble[]`, length `4`)\n */\nexport function getVertexAttribdv(index: GLuint, pname: VertexAttribPropertyARB): GLdouble[] {\n const __out0 = { value: new Array<number>(4).fill(0) };\n glGetVertexAttribdv(index, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetVertexAttribfvARB`, `glGetVertexAttribfvNV`.\n * GLX vendor opcode 1302.\n *\n * @param index - `GLuint`\n * @param pname - `VertexAttribPropertyARB`\n * @returns `params` (`GLfloat[]`, length `4`)\n */\nexport function getVertexAttribfv(index: GLuint, pname: VertexAttribPropertyARB): GLfloat[] {\n const __out0 = { value: new Array<number>(4).fill(0) };\n glGetVertexAttribfv(index, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glGetVertexAttribIivEXT`.\n *\n * @param index - `GLuint`\n * @param pname - `VertexAttribEnum`\n * @returns `params` (`GLint`)\n */\nexport function getVertexAttribIiv(index: GLuint, pname: VertexAttribEnum): GLint {\n const __out0 = { value: 0 };\n glGetVertexAttribIiv(index, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glGetVertexAttribIuivEXT`.\n *\n * @param index - `GLuint`\n * @param pname - `VertexAttribEnum`\n * @returns `params` (`GLuint`)\n */\nexport function getVertexAttribIuiv(index: GLuint, pname: VertexAttribEnum): GLuint {\n const __out0 = { value: 0 };\n glGetVertexAttribIuiv(index, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glGetVertexAttribivARB`, `glGetVertexAttribivNV`.\n * GLX vendor opcode 1303.\n *\n * @param index - `GLuint`\n * @param pname - `VertexAttribPropertyARB`\n * @returns `params` (`GLint[]`, length `4`)\n */\nexport function getVertexAttribiv(index: GLuint, pname: VertexAttribPropertyARB): GLint[] {\n const __out0 = { value: new Array<number>(4).fill(0) };\n glGetVertexAttribiv(index, pname, __out0);\n return __out0.value;\n}\n\n/**\n * `void glHint(GLenum target, GLenum mode)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 85.\n *\n * @param target - `HintTarget`\n * @param mode - `HintMode`\n */\nexport function hint(target: HintTarget, mode: HintMode): void {\n glHint(target, mode);\n}\n\n/**\n * `void glInvalidateBufferData(GLuint buffer)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function invalidateBufferData(buffer: GLuint): void {\n glInvalidateBufferData(buffer);\n}\n\n/**\n * `void glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param length - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function invalidateBufferSubData(buffer: GLuint, offset: GLintptr, length: GLsizeiptr): void {\n glInvalidateBufferSubData(buffer, offset, length);\n}\n\n/**\n * `void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param target - `FramebufferTarget`\n * @param numAttachments - `GLsizei`\n * @param attachments - `InvalidateFramebufferAttachment[] | Uint32Array`, length `numAttachments`\n */\nexport function invalidateFramebuffer(target: FramebufferTarget, numAttachments: GLsizei, attachments: InvalidateFramebufferAttachment[] | Uint32Array): void {\n glInvalidateFramebuffer(target, numAttachments, attachments);\n}\n\n/**\n * `void glInvalidateNamedFramebufferData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param numAttachments - `GLsizei`\n * @param attachments - `FramebufferAttachment[] | Uint32Array`, length `numAttachments`\n */\nexport function invalidateNamedFramebufferData(framebuffer: GLuint, numAttachments: GLsizei, attachments: FramebufferAttachment[] | Uint32Array): void {\n glInvalidateNamedFramebufferData(framebuffer, numAttachments, attachments);\n}\n\n/**\n * `void glInvalidateNamedFramebufferSubData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param numAttachments - `GLsizei`\n * @param attachments - `FramebufferAttachment[] | Uint32Array`, length `numAttachments`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function invalidateNamedFramebufferSubData(framebuffer: GLuint, numAttachments: GLsizei, attachments: FramebufferAttachment[] | Uint32Array, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glInvalidateNamedFramebufferSubData(framebuffer, numAttachments, attachments, x, y, width, height);\n}\n\n/**\n * `void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param target - `FramebufferTarget`\n * @param numAttachments - `GLsizei`\n * @param attachments - `InvalidateFramebufferAttachment[] | Uint32Array`, length `numAttachments`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function invalidateSubFramebuffer(target: FramebufferTarget, numAttachments: GLsizei, attachments: InvalidateFramebufferAttachment[] | Uint32Array, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glInvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);\n}\n\n/**\n * `void glInvalidateTexImage(GLuint texture, GLint level)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n */\nexport function invalidateTexImage(texture: GLuint, level: GLint): void {\n glInvalidateTexImage(texture, level);\n}\n\n/**\n * `void glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_invalidate_subdata\n * Also provided by the `GL_ARB_invalidate_subdata` extension.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n */\nexport function invalidateTexSubImage(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei): void {\n glInvalidateTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth);\n}\n\n/**\n * `GLboolean glIsBuffer(GLuint buffer)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glIsBufferARB`.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @returns `boolean`\n */\nexport function isBuffer(buffer: GLuint): boolean {\n return (glIsBuffer(buffer) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsEnabled(GLenum cap)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 140.\n *\n * @param cap - `EnableCap`\n * @returns `boolean`\n */\nexport function isEnabled(cap: EnableCap): boolean {\n return (glIsEnabled(cap) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsEnabledi(GLenum target, GLuint index)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glIsEnablediEXT`, `glIsEnabledIndexedEXT`, `glIsEnablediNV`, `glIsEnablediOES`.\n *\n * @param target - `EnableCap`\n * @param index - `GLuint`\n * @returns `boolean`\n */\nexport function isEnabledi(target: EnableCap, index: GLuint): boolean {\n return (glIsEnabledi(target, index) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsFramebuffer(GLuint framebuffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glIsFramebufferEXT`.\n * GLX vendor opcode 1425.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @returns `boolean`\n */\nexport function isFramebuffer(framebuffer: GLuint): boolean {\n return (glIsFramebuffer(framebuffer) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsProgram(GLuint program)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 197.\n *\n * @param program - `GLuint`, object class `program`\n * @returns `boolean`\n */\nexport function isProgram(program: GLuint): boolean {\n return (glIsProgram(program) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsProgramPipeline(GLuint pipeline)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n * @returns `boolean`\n */\nexport function isProgramPipeline(pipeline: GLuint): boolean {\n return (glIsProgramPipeline(pipeline) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsQuery(GLuint id)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glIsQueryARB`.\n * GLX single opcode 163.\n *\n * @param id - `GLuint`, object class `query`\n * @returns `boolean`\n */\nexport function isQuery(id: GLuint): boolean {\n return (glIsQuery(id) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsRenderbuffer(GLuint renderbuffer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glIsRenderbufferEXT`.\n * GLX vendor opcode 1422.\n *\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n * @returns `boolean`\n */\nexport function isRenderbuffer(renderbuffer: GLuint): boolean {\n return (glIsRenderbuffer(renderbuffer) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsSampler(GLuint sampler)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @returns `boolean`\n */\nexport function isSampler(sampler: GLuint): boolean {\n return (glIsSampler(sampler) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsShader(GLuint shader)`\n *\n * Provided by `GL_VERSION_2_0`.\n * GLX single opcode 196.\n *\n * @param shader - `GLuint`, object class `shader`\n * @returns `boolean`\n */\nexport function isShader(shader: GLuint): boolean {\n return (glIsShader(shader) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsSync(GLsync sync)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glIsSyncAPPLE`.\n *\n * @param sync - `GLsync`, object class `sync`\n * @returns `boolean`\n */\nexport function isSync(sync: GLsync): boolean {\n return (glIsSync(sync) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsTexture(GLuint texture)`\n *\n * Provided by `GL_VERSION_1_1`.\n * GLX single opcode 146.\n *\n * @param texture - `GLuint`, object class `texture`\n * @returns `boolean`\n */\nexport function isTexture(texture: GLuint): boolean {\n return (glIsTexture(texture) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsTransformFeedback(GLuint id)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glIsTransformFeedbackNV`.\n *\n * @param id - `GLuint`, object class `transform feedback`\n * @returns `boolean`\n */\nexport function isTransformFeedback(id: GLuint): boolean {\n return (glIsTransformFeedback(id) as number) !== 0;\n}\n\n/**\n * `GLboolean glIsVertexArray(GLuint array)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n * Also known as `glIsVertexArrayAPPLE`, `glIsVertexArrayOES`.\n * GLX single opcode 207.\n *\n * @param array - `GLuint`, object class `vertex array`\n * @returns `boolean`\n */\nexport function isVertexArray(array: GLuint): boolean {\n return (glIsVertexArray(array) as number) !== 0;\n}\n\n/**\n * `void glLineWidth(GLfloat width)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 95.\n *\n * @param width - `GLfloat`, kind `CheckedFloat32`\n */\nexport function lineWidth(width: GLfloat): void {\n glLineWidth(width);\n}\n\n/**\n * `void glLinkProgram(GLuint program)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glLinkProgramARB`.\n *\n * @param program - `GLuint`, object class `program`\n */\nexport function linkProgram(program: GLuint): void {\n glLinkProgram(program);\n}\n\n/**\n * `void glLogicOp(GLenum opcode)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 161.\n *\n * @param opcode - `LogicOp`\n */\nexport function logicOp(opcode: LogicOp): void {\n glLogicOp(opcode);\n}\n\n/**\n * `void * glMapBuffer(GLenum target, GLenum access)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glMapBufferARB`, `glMapBufferOES`.\n *\n * @param target - `BufferTargetARB`\n * @param access - `BufferAccessARB`\n * @returns `GLpointer`\n */\nexport function mapBuffer(target: BufferTargetARB, access: BufferAccessARB): GLpointer {\n return glMapBuffer(target, access) as GLpointer;\n}\n\n/**\n * `void * glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_map_buffer_range\n * Also provided by the `GL_ARB_map_buffer_range` extension.\n * Also known as `glMapBufferRangeEXT`.\n * GLX single opcode 205.\n *\n * @param target - `BufferTargetARB`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param length - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param access - `MapBufferAccessMask`\n * @returns `GLpointer`\n */\nexport function mapBufferRange(target: BufferTargetARB, offset: GLintptr, length: GLsizeiptr, access: MapBufferAccessMask): GLpointer {\n return glMapBufferRange(target, offset, length, access) as GLpointer;\n}\n\n/**\n * `void * glMapNamedBuffer(GLuint buffer, GLenum access)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param access - `BufferAccessARB`\n * @returns `GLpointer`\n */\nexport function mapNamedBuffer(buffer: GLuint, access: BufferAccessARB): GLpointer {\n return glMapNamedBuffer(buffer, access) as GLpointer;\n}\n\n/**\n * `void * glMapNamedBufferRange(GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param length - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param access - `MapBufferAccessMask`\n * @returns `GLpointer`\n */\nexport function mapNamedBufferRange(buffer: GLuint, offset: GLintptr, length: GLsizeiptr, access: MapBufferAccessMask): GLpointer {\n return glMapNamedBufferRange(buffer, offset, length, access) as GLpointer;\n}\n\n/**\n * `void glMemoryBarrier(GLbitfield barriers)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_shader_image_load_store\n * Also provided by the `GL_ARB_shader_image_load_store` extension.\n * Also known as `glMemoryBarrierEXT`.\n *\n * @param barriers - `MemoryBarrierMask`\n */\nexport function memoryBarrier(barriers: MemoryBarrierMask): void {\n glMemoryBarrier(barriers);\n}\n\n/**\n * `void glMemoryBarrierByRegion(GLbitfield barriers)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_ES3_1_compatibility\n * Also provided by the `GL_ARB_ES3_1_compatibility` extension.\n *\n * @param barriers - `MemoryBarrierMask`\n */\nexport function memoryBarrierByRegion(barriers: MemoryBarrierMask): void {\n glMemoryBarrierByRegion(barriers);\n}\n\n/**\n * `void glMinSampleShading(GLfloat value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Also known as `glMinSampleShadingARB`, `glMinSampleShadingOES`.\n *\n * @param value - `GLfloat`, kind `Clamped[0; 1]`. This parameter will get clamped to the 0 to 1 range.\n */\nexport function minSampleShading(value: GLfloat): void {\n glMinSampleShading(value);\n}\n\n/**\n * `void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glMultiDrawArraysEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param first - `GLint[] | Int32Array`, length `drawcount`\n * @param count - `GLsizei[] | Int32Array`, length `drawcount`\n * @param drawcount - `GLsizei`\n */\nexport function multiDrawArrays(mode: PrimitiveType, first: GLint[] | Int32Array, count: GLsizei[] | Int32Array, drawcount: GLsizei): void {\n glMultiDrawArrays(mode, first, count, drawcount);\n}\n\n/**\n * `void glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_multi_draw_indirect\n * Also provided by the `GL_ARB_multi_draw_indirect` extension.\n * Also known as `glMultiDrawArraysIndirectAMD`, `glMultiDrawArraysIndirectEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param indirect - `GLintptr`, byte offset into the bound buffer\n * @param drawcount - `GLsizei`\n * @param stride - `GLsizei`\n */\nexport function multiDrawArraysIndirect(mode: PrimitiveType, indirect: GLintptr, drawcount: GLsizei, stride: GLsizei): void {\n glMultiDrawArraysIndirect(mode, indirect, drawcount, stride);\n}\n\n/**\n * `void glMultiDrawArraysIndirectCount(GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_6`.\n * Registry note: Reuse GL_ARB_indirect_parameters\n * Also known as `glMultiDrawArraysIndirectCountARB`.\n *\n * @param mode - `PrimitiveType`\n * @param indirect - `ArrayBufferView | GLintptr | null`\n * @param drawcount - `GLintptr`\n * @param maxdrawcount - `GLsizei`\n * @param stride - `GLsizei`\n */\nexport function multiDrawArraysIndirectCount(mode: PrimitiveType, indirect: ArrayBufferView | GLintptr | null, drawcount: GLintptr, maxdrawcount: GLsizei, stride: GLsizei): void {\n glMultiDrawArraysIndirectCount(mode, indirect, drawcount, maxdrawcount, stride);\n}\n\n/**\n * `void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glMultiDrawElementsEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei[] | Int32Array`, length `drawcount`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr[]`, byte offsets into the bound buffer\n * @param drawcount - `GLsizei`\n */\nexport function multiDrawElements(mode: PrimitiveType, count: GLsizei[] | Int32Array, type: DrawElementsType, indices: GLintptr[], drawcount: GLsizei): void {\n glMultiDrawElements(mode, count, type, indices, drawcount);\n}\n\n/**\n * `void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount, const GLint *basevertex)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_draw_elements_base_vertex\n * Also provided by the `GL_ARB_draw_elements_base_vertex` extension.\n * Also known as `glMultiDrawElementsBaseVertexEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param count - `GLsizei[] | Int32Array`, length `drawcount`\n * @param type - `DrawElementsType`\n * @param indices - `GLintptr[]`, byte offsets into the bound buffer\n * @param drawcount - `GLsizei`\n * @param basevertex - `GLint[] | Int32Array`, length `drawcount`\n */\nexport function multiDrawElementsBaseVertex(mode: PrimitiveType, count: GLsizei[] | Int32Array, type: DrawElementsType, indices: GLintptr[], drawcount: GLsizei, basevertex: GLint[] | Int32Array): void {\n glMultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);\n}\n\n/**\n * `void glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_multi_draw_indirect\n * Also provided by the `GL_ARB_multi_draw_indirect` extension.\n * Also known as `glMultiDrawElementsIndirectAMD`, `glMultiDrawElementsIndirectEXT`.\n *\n * @param mode - `PrimitiveType`\n * @param type - `DrawElementsType`\n * @param indirect - `GLintptr`, byte offset into the bound buffer\n * @param drawcount - `GLsizei`\n * @param stride - `GLsizei`\n */\nexport function multiDrawElementsIndirect(mode: PrimitiveType, type: DrawElementsType, indirect: GLintptr, drawcount: GLsizei, stride: GLsizei): void {\n glMultiDrawElementsIndirect(mode, type, indirect, drawcount, stride);\n}\n\n/**\n * `void glMultiDrawElementsIndirectCount(GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_6`.\n * Registry note: Reuse GL_ARB_indirect_parameters\n * Also known as `glMultiDrawElementsIndirectCountARB`.\n *\n * @param mode - `PrimitiveType`\n * @param type - `DrawElementsType`\n * @param indirect - `ArrayBufferView | GLintptr | null`\n * @param drawcount - `GLintptr`\n * @param maxdrawcount - `GLsizei`\n * @param stride - `GLsizei`\n */\nexport function multiDrawElementsIndirectCount(mode: PrimitiveType, type: DrawElementsType, indirect: ArrayBufferView | GLintptr | null, drawcount: GLintptr, maxdrawcount: GLsizei, stride: GLsizei): void {\n glMultiDrawElementsIndirectCount(mode, type, indirect, drawcount, maxdrawcount, stride);\n}\n\n/**\n * `void glNamedBufferData(GLuint buffer, GLsizeiptr size, const void *data, GLenum usage)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n * @param usage - `BufferUsageARB`\n */\nexport function namedBufferData(buffer: GLuint, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null, usage: BufferUsageARB): void {\n glNamedBufferData(buffer, size, data, usage);\n}\n\n/**\n * `void glNamedBufferStorage(GLuint buffer, GLsizeiptr size, const void *data, GLbitfield flags)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n * Also known as `glNamedBufferStorageEXT`.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n * @param flags - `BufferStorageMask`\n */\nexport function namedBufferStorage(buffer: GLuint, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null, flags: BufferStorageMask): void {\n glNamedBufferStorage(buffer, size, data, flags);\n}\n\n/**\n * `void glNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n * Also known as `glNamedBufferSubDataEXT`.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n * @param data - `ArrayBufferView | GLintptr | null`, length `size`\n */\nexport function namedBufferSubData(buffer: GLuint, offset: GLintptr, size: GLsizeiptr, data: ArrayBufferView | GLintptr | null): void {\n glNamedBufferSubData(buffer, offset, size, data);\n}\n\n/**\n * `void glNamedFramebufferDrawBuffer(GLuint framebuffer, GLenum buf)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param buf - `ColorBuffer`\n */\nexport function namedFramebufferDrawBuffer(framebuffer: GLuint, buf: ColorBuffer): void {\n glNamedFramebufferDrawBuffer(framebuffer, buf);\n}\n\n/**\n * `void glNamedFramebufferDrawBuffers(GLuint framebuffer, GLsizei n, const GLenum *bufs)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param n - `GLsizei`\n * @param bufs - `ColorBuffer[] | Uint32Array`, length `n`\n */\nexport function namedFramebufferDrawBuffers(framebuffer: GLuint, n: GLsizei, bufs: ColorBuffer[] | Uint32Array): void {\n glNamedFramebufferDrawBuffers(framebuffer, n, bufs);\n}\n\n/**\n * `void glNamedFramebufferParameteri(GLuint framebuffer, GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param pname - `FramebufferParameterName`\n * @param param - `GLint`\n */\nexport function namedFramebufferParameteri(framebuffer: GLuint, pname: FramebufferParameterName, param: GLint): void {\n glNamedFramebufferParameteri(framebuffer, pname, param);\n}\n\n/**\n * `void glNamedFramebufferReadBuffer(GLuint framebuffer, GLenum src)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param src - `ColorBuffer`\n */\nexport function namedFramebufferReadBuffer(framebuffer: GLuint, src: ColorBuffer): void {\n glNamedFramebufferReadBuffer(framebuffer, src);\n}\n\n/**\n * `void glNamedFramebufferRenderbuffer(GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param attachment - `FramebufferAttachment`\n * @param renderbuffertarget - `RenderbufferTarget`\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n */\nexport function namedFramebufferRenderbuffer(framebuffer: GLuint, attachment: FramebufferAttachment, renderbuffertarget: RenderbufferTarget, renderbuffer: GLuint): void {\n glNamedFramebufferRenderbuffer(framebuffer, attachment, renderbuffertarget, renderbuffer);\n}\n\n/**\n * `void glNamedFramebufferTexture(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param attachment - `FramebufferAttachment`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n */\nexport function namedFramebufferTexture(framebuffer: GLuint, attachment: FramebufferAttachment, texture: GLuint, level: GLint): void {\n glNamedFramebufferTexture(framebuffer, attachment, texture, level);\n}\n\n/**\n * `void glNamedFramebufferTextureLayer(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @param framebuffer - `GLuint`, object class `framebuffer`\n * @param attachment - `FramebufferAttachment`\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param layer - `GLint`\n */\nexport function namedFramebufferTextureLayer(framebuffer: GLuint, attachment: FramebufferAttachment, texture: GLuint, level: GLint, layer: GLint): void {\n glNamedFramebufferTextureLayer(framebuffer, attachment, texture, level, layer);\n}\n\n/**\n * `void glNamedRenderbufferStorage(GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Renderbuffer object functions.\n *\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function namedRenderbufferStorage(renderbuffer: GLuint, internalformat: InternalFormat, width: GLsizei, height: GLsizei): void {\n glNamedRenderbufferStorage(renderbuffer, internalformat, width, height);\n}\n\n/**\n * `void glNamedRenderbufferStorageMultisample(GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Renderbuffer object functions.\n *\n * @param renderbuffer - `GLuint`, object class `renderbuffer`\n * @param samples - `GLsizei`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function namedRenderbufferStorageMultisample(renderbuffer: GLuint, samples: GLsizei, internalformat: InternalFormat, width: GLsizei, height: GLsizei): void {\n glNamedRenderbufferStorageMultisample(renderbuffer, samples, internalformat, width, height);\n}\n\n/**\n * `void glObjectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glObjectLabelKHR`.\n *\n * @param identifier - `ObjectIdentifier`\n * @param name - `GLuint`\n * @param length - `GLsizei`\n * @param label - `string`, length `COMPSIZE(label,length)`\n */\nexport function objectLabel(identifier: ObjectIdentifier, name: GLuint, length: GLsizei, label: string): void {\n glObjectLabel(identifier, name, length, label);\n}\n\n/**\n * `void glObjectPtrLabel(const void *ptr, GLsizei length, const GLchar *label)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glObjectPtrLabelKHR`.\n *\n * @param ptr - `ArrayBufferView | GLintptr | null`\n * @param length - `GLsizei`\n * @param label - `string`, length `COMPSIZE(label,length)`\n */\nexport function objectPtrLabel(ptr: ArrayBufferView | GLintptr | null, length: GLsizei, label: string): void {\n glObjectPtrLabel(ptr, length, label);\n}\n\n/**\n * `void glPatchParameterfv(GLenum pname, const GLfloat *values)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_tessellation_shader\n * Also provided by the `GL_ARB_tessellation_shader` extension.\n *\n * @param pname - `PatchParameterName`\n * @param values - `GLfloat[] | Float32Array`, length `COMPSIZE(pname)`\n */\nexport function patchParameterfv(pname: PatchParameterName, values: GLfloat[] | Float32Array): void {\n glPatchParameterfv(pname, values);\n}\n\n/**\n * `void glPatchParameteri(GLenum pname, GLint value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_tessellation_shader\n * Also provided by the `GL_ARB_tessellation_shader` extension.\n * Also known as `glPatchParameteriEXT`, `glPatchParameteriOES`.\n *\n * @param pname - `PatchParameterName`\n * @param value - `GLint`\n */\nexport function patchParameteri(pname: PatchParameterName, value: GLint): void {\n glPatchParameteri(pname, value);\n}\n\n/**\n * `void glPauseTransformFeedback()`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glPauseTransformFeedbackNV`.\n */\nexport function pauseTransformFeedback(): void {\n glPauseTransformFeedback();\n}\n\n/**\n * `void glPixelStoref(GLenum pname, GLfloat param)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 109.\n *\n * @param pname - `PixelStoreParameter`\n * @param param - `GLfloat`, kind `CheckedFloat32`\n */\nexport function pixelStoref(pname: PixelStoreParameter, param: GLfloat): void {\n glPixelStoref(pname, param);\n}\n\n/**\n * `void glPixelStorei(GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 110.\n *\n * @param pname - `PixelStoreParameter`\n * @param param - `GLint`, kind `CheckedInt32`\n */\nexport function pixelStorei(pname: PixelStoreParameter, param: GLint): void {\n glPixelStorei(pname, param);\n}\n\n/**\n * `void glPointParameterf(GLenum pname, GLfloat param)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glPointParameterfARB`, `glPointParameterfEXT`, `glPointParameterfSGIS`.\n * GLX render opcode 2065.\n *\n * @param pname - `PointParameterNameARB`\n * @param param - `GLfloat`, kind `CheckedFloat32`\n */\nexport function pointParameterf(pname: PointParameterNameARB, param: GLfloat): void {\n glPointParameterf(pname, param);\n}\n\n/**\n * `void glPointParameterfv(GLenum pname, const GLfloat *params)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glPointParameterfvARB`, `glPointParameterfvEXT`, `glPointParameterfvSGIS`.\n * GLX render opcode 2066.\n *\n * @param pname - `PointParameterNameARB`\n * @param params - `GLfloat[] | Float32Array`, length `COMPSIZE(pname)`, kind `CheckedFloat32`\n */\nexport function pointParameterfv(pname: PointParameterNameARB, params: GLfloat[] | Float32Array): void {\n glPointParameterfv(pname, params);\n}\n\n/**\n * `void glPointParameteri(GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glPointParameteriNV`.\n * GLX render opcode 4221.\n *\n * @param pname - `PointParameterNameARB`\n * @param param - `GLint`\n */\nexport function pointParameteri(pname: PointParameterNameARB, param: GLint): void {\n glPointParameteri(pname, param);\n}\n\n/**\n * `void glPointParameteriv(GLenum pname, const GLint *params)`\n *\n * Provided by `GL_VERSION_1_4`.\n * Also known as `glPointParameterivNV`.\n * GLX render opcode 4222.\n *\n * @param pname - `PointParameterNameARB`\n * @param params - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function pointParameteriv(pname: PointParameterNameARB, params: GLint[] | Int32Array): void {\n glPointParameteriv(pname, params);\n}\n\n/**\n * `void glPointSize(GLfloat size)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 100.\n *\n * @param size - `GLfloat`, kind `CheckedFloat32`\n */\nexport function pointSize(size: GLfloat): void {\n glPointSize(size);\n}\n\n/**\n * `void glPolygonMode(GLenum face, GLenum mode)`\n *\n * Provided by `GL_VERSION_1_0`.\n * Also known as `glPolygonModeNV`.\n * GLX render opcode 101.\n *\n * @param face - `TriangleFace`\n * @param mode - `PolygonMode`\n */\nexport function polygonMode(face: TriangleFace, mode: PolygonMode): void {\n glPolygonMode(face, mode);\n}\n\n/**\n * `void glPolygonOffset(GLfloat factor, GLfloat units)`\n *\n * Provided by `GL_VERSION_1_1`.\n * GLX render opcode 192.\n *\n * @param factor - `GLfloat`\n * @param units - `GLfloat`\n */\nexport function polygonOffset(factor: GLfloat, units: GLfloat): void {\n glPolygonOffset(factor, units);\n}\n\n/**\n * `void glPolygonOffsetClamp(GLfloat factor, GLfloat units, GLfloat clamp)`\n *\n * Provided by `GL_VERSION_4_6`.\n * Registry note: Reuse GL_ARB_polygon_offset_clamp\n * Also provided by the `GL_ARB_polygon_offset_clamp` extension.\n * Also known as `glPolygonOffsetClampEXT`.\n * GLX render opcode 4225.\n *\n * @param factor - `GLfloat`\n * @param units - `GLfloat`\n * @param clamp - `GLfloat`\n */\nexport function polygonOffsetClamp(factor: GLfloat, units: GLfloat, clamp: GLfloat): void {\n glPolygonOffsetClamp(factor, units, clamp);\n}\n\n/**\n * `void glPopDebugGroup()`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glPopDebugGroupKHR`.\n */\nexport function popDebugGroup(): void {\n glPopDebugGroup();\n}\n\n/**\n * `void glPrimitiveRestartIndex(GLuint index)`\n *\n * Provided by `GL_VERSION_3_1`.\n *\n * @param index - `GLuint`\n */\nexport function primitiveRestartIndex(index: GLuint): void {\n glPrimitiveRestartIndex(index);\n}\n\n/**\n * `void glProgramBinary(GLuint program, GLenum binaryFormat, const void *binary, GLsizei length)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_get_program_binary\n * Also provided by the `GL_ARB_get_program_binary` extension.\n * Also known as `glProgramBinaryOES`.\n *\n * @param program - `GLuint`, object class `program`\n * @param binaryFormat - `GLenum`\n * @param binary - `ArrayBufferView | GLintptr | null`, length `length`\n * @param length - `GLsizei`\n */\nexport function programBinary(program: GLuint, binaryFormat: GLenum, binary: ArrayBufferView | GLintptr | null, length: GLsizei): void {\n glProgramBinary(program, binaryFormat, binary, length);\n}\n\n/**\n * `void glProgramParameteri(GLuint program, GLenum pname, GLint value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_get_program_binary\n * Also provided by the `GL_ARB_get_program_binary`, `GL_ARB_separate_shader_objects` extensions.\n * Also known as `glProgramParameteriARB`, `glProgramParameteriEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param pname - `ProgramParameterPName`\n * @param value - `GLint`\n */\nexport function programParameteri(program: GLuint, pname: ProgramParameterPName, value: GLint): void {\n glProgramParameteri(program, pname, value);\n}\n\n/**\n * `void glProgramUniform1d(GLuint program, GLint location, GLdouble v0)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLdouble`\n */\nexport function programUniform1d(program: GLuint, location: GLint, v0: GLdouble): void {\n glProgramUniform1d(program, location, v0);\n}\n\n/**\n * `void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function programUniform1dv(program: GLuint, location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glProgramUniform1dv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform1f(GLuint program, GLint location, GLfloat v0)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1fEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n */\nexport function programUniform1f(program: GLuint, location: GLint, v0: GLfloat): void {\n glProgramUniform1f(program, location, v0);\n}\n\n/**\n * `void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function programUniform1fv(program: GLuint, location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glProgramUniform1fv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform1i(GLuint program, GLint location, GLint v0)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1iEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLint`\n */\nexport function programUniform1i(program: GLuint, location: GLint, v0: GLint): void {\n glProgramUniform1i(program, location, v0);\n}\n\n/**\n * `void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1ivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function programUniform1iv(program: GLuint, location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glProgramUniform1iv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform1ui(GLuint program, GLint location, GLuint v0)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1uiEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLuint`\n */\nexport function programUniform1ui(program: GLuint, location: GLint, v0: GLuint): void {\n glProgramUniform1ui(program, location, v0);\n}\n\n/**\n * `void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform1uivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function programUniform1uiv(program: GLuint, location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glProgramUniform1uiv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLdouble`\n * @param v1 - `GLdouble`\n */\nexport function programUniform2d(program: GLuint, location: GLint, v0: GLdouble, v1: GLdouble): void {\n glProgramUniform2d(program, location, v0, v1);\n}\n\n/**\n * `void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function programUniform2dv(program: GLuint, location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glProgramUniform2dv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2fEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n */\nexport function programUniform2f(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat): void {\n glProgramUniform2f(program, location, v0, v1);\n}\n\n/**\n * `void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function programUniform2fv(program: GLuint, location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glProgramUniform2fv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2iEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n */\nexport function programUniform2i(program: GLuint, location: GLint, v0: GLint, v1: GLint): void {\n glProgramUniform2i(program, location, v0, v1);\n}\n\n/**\n * `void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2ivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function programUniform2iv(program: GLuint, location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glProgramUniform2iv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2uiEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n */\nexport function programUniform2ui(program: GLuint, location: GLint, v0: GLuint, v1: GLuint): void {\n glProgramUniform2ui(program, location, v0, v1);\n}\n\n/**\n * `void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform2uivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function programUniform2uiv(program: GLuint, location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glProgramUniform2uiv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLdouble`\n * @param v1 - `GLdouble`\n * @param v2 - `GLdouble`\n */\nexport function programUniform3d(program: GLuint, location: GLint, v0: GLdouble, v1: GLdouble, v2: GLdouble): void {\n glProgramUniform3d(program, location, v0, v1, v2);\n}\n\n/**\n * `void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function programUniform3dv(program: GLuint, location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glProgramUniform3dv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3fEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n * @param v2 - `GLfloat`\n */\nexport function programUniform3f(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat): void {\n glProgramUniform3f(program, location, v0, v1, v2);\n}\n\n/**\n * `void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function programUniform3fv(program: GLuint, location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glProgramUniform3fv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3iEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n * @param v2 - `GLint`\n */\nexport function programUniform3i(program: GLuint, location: GLint, v0: GLint, v1: GLint, v2: GLint): void {\n glProgramUniform3i(program, location, v0, v1, v2);\n}\n\n/**\n * `void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3ivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function programUniform3iv(program: GLuint, location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glProgramUniform3iv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3uiEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n * @param v2 - `GLuint`\n */\nexport function programUniform3ui(program: GLuint, location: GLint, v0: GLuint, v1: GLuint, v2: GLuint): void {\n glProgramUniform3ui(program, location, v0, v1, v2);\n}\n\n/**\n * `void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform3uivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function programUniform3uiv(program: GLuint, location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glProgramUniform3uiv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLdouble`\n * @param v1 - `GLdouble`\n * @param v2 - `GLdouble`\n * @param v3 - `GLdouble`\n */\nexport function programUniform4d(program: GLuint, location: GLint, v0: GLdouble, v1: GLdouble, v2: GLdouble, v3: GLdouble): void {\n glProgramUniform4d(program, location, v0, v1, v2, v3);\n}\n\n/**\n * `void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function programUniform4dv(program: GLuint, location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glProgramUniform4dv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4fEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n * @param v2 - `GLfloat`\n * @param v3 - `GLfloat`\n */\nexport function programUniform4f(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat, v3: GLfloat): void {\n glProgramUniform4f(program, location, v0, v1, v2, v3);\n}\n\n/**\n * `void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function programUniform4fv(program: GLuint, location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glProgramUniform4fv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4iEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n * @param v2 - `GLint`\n * @param v3 - `GLint`\n */\nexport function programUniform4i(program: GLuint, location: GLint, v0: GLint, v1: GLint, v2: GLint, v3: GLint): void {\n glProgramUniform4i(program, location, v0, v1, v2, v3);\n}\n\n/**\n * `void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4ivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function programUniform4iv(program: GLuint, location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glProgramUniform4iv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4uiEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n * @param v2 - `GLuint`\n * @param v3 - `GLuint`\n */\nexport function programUniform4ui(program: GLuint, location: GLint, v0: GLuint, v1: GLuint, v2: GLuint, v3: GLuint): void {\n glProgramUniform4ui(program, location, v0, v1, v2, v3);\n}\n\n/**\n * `void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniform4uivEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function programUniform4uiv(program: GLuint, location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glProgramUniform4uiv(program, location, count, value);\n}\n\n/**\n * `void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*4`, kind `Matrix2x2`. This parameter represents a 2x2 matrix.\n */\nexport function programUniformMatrix2dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix2dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix2fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*4`, kind `Matrix2x2`. This parameter represents a 2x2 matrix.\n */\nexport function programUniformMatrix2fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix2fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*6`, kind `Matrix2x3`. This parameter represents a 2x3 matrix.\n */\nexport function programUniformMatrix2x3dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix2x3dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix2x3fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*6`, kind `Matrix2x3`. This parameter represents a 2x3 matrix.\n */\nexport function programUniformMatrix2x3fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix2x3fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*8`, kind `Matrix2x4`. This parameter represents a 2x4 matrix.\n */\nexport function programUniformMatrix2x4dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix2x4dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix2x4fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*8`, kind `Matrix2x4`. This parameter represents a 2x4 matrix.\n */\nexport function programUniformMatrix2x4fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix2x4fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*9`, kind `Matrix3x3`. This parameter represents a 3x3 matrix.\n */\nexport function programUniformMatrix3dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix3dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix3fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*9`, kind `Matrix3x3`. This parameter represents a 3x3 matrix.\n */\nexport function programUniformMatrix3fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix3fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*6`, kind `Matrix3x2`. This parameter represents a 3x2 matrix.\n */\nexport function programUniformMatrix3x2dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix3x2dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix3x2fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*6`, kind `Matrix3x2`. This parameter represents a 3x2 matrix.\n */\nexport function programUniformMatrix3x2fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix3x2fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*12`, kind `Matrix3x4`. This parameter represents a 3x4 matrix.\n */\nexport function programUniformMatrix3x4dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix3x4dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix3x4fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*12`, kind `Matrix3x4`. This parameter represents a 3x4 matrix.\n */\nexport function programUniformMatrix3x4fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix3x4fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*16`, kind `Matrix4x4`. This parameter represents a 4x4 matrix.\n */\nexport function programUniformMatrix4dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix4dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix4fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*16`, kind `Matrix4x4`. This parameter represents a 4x4 matrix.\n */\nexport function programUniformMatrix4fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix4fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*8`, kind `Matrix4x2`. This parameter represents a 4x2 matrix.\n */\nexport function programUniformMatrix4x2dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix4x2dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix4x2fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*8`, kind `Matrix4x2`. This parameter represents a 4x2 matrix.\n */\nexport function programUniformMatrix4x2fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix4x2fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*12`, kind `Matrix4x3`. This parameter represents a 4x3 matrix.\n */\nexport function programUniformMatrix4x3dv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glProgramUniformMatrix4x3dv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n * Also known as `glProgramUniformMatrix4x3fvEXT`.\n *\n * @param program - `GLuint`, object class `program`\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*12`, kind `Matrix4x3`. This parameter represents a 4x3 matrix.\n */\nexport function programUniformMatrix4x3fv(program: GLuint, location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glProgramUniformMatrix4x3fv(program, location, count, transpose, value);\n}\n\n/**\n * `void glProvokingVertex(GLenum mode)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_provoking_vertex\n * Also provided by the `GL_ARB_provoking_vertex` extension.\n * Also known as `glProvokingVertexEXT`.\n *\n * @param mode - `VertexProvokingMode`\n */\nexport function provokingVertex(mode: VertexProvokingMode): void {\n glProvokingVertex(mode);\n}\n\n/**\n * `void glPushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar *message)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes)\n * Also provided by the `GL_KHR_debug` extension.\n * `GL_KHR_debug` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glPushDebugGroupKHR`.\n *\n * @param source - `DebugSource`\n * @param id - `GLuint`\n * @param length - `GLsizei`\n * @param message - `string`, length `COMPSIZE(message,length)`\n */\nexport function pushDebugGroup(source: DebugSource, id: GLuint, length: GLsizei, message: string): void {\n glPushDebugGroup(source, id, length, message);\n}\n\n/**\n * `void glQueryCounter(GLuint id, GLenum target)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_timer_query\n * Also provided by the `GL_ARB_timer_query` extension.\n * Also known as `glQueryCounterEXT`.\n *\n * @param id - `GLuint`, object class `query`\n * @param target - `QueryCounterTarget`\n */\nexport function queryCounter(id: GLuint, target: QueryCounterTarget): void {\n glQueryCounter(id, target);\n}\n\n/**\n * `void glReadBuffer(GLenum src)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 171.\n *\n * @param src - `ReadBufferMode`\n */\nexport function readBuffer(src: ReadBufferMode): void {\n glReadBuffer(src);\n}\n\n/**\n * `void glReadnPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_robustness\n * Also provided by the `GL_KHR_robustness` extension.\n * `GL_KHR_robustness` note: KHR extensions *mandate* suffixes for ES, unlike for GL.\n * Also known as `glReadnPixelsARB`, `glReadnPixelsEXT`, `glReadnPixelsKHR`.\n *\n * @param x - `GLint`\n * @param y - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param bufSize - `GLsizei`\n * @param data - `ArrayBufferView | GLintptr | null`, length `bufSize`\n */\nexport function readnPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: PixelFormat, type: PixelType, bufSize: GLsizei, data: ArrayBufferView | GLintptr | null): void {\n glReadnPixels(x, y, width, height, format, type, bufSize, data);\n}\n\n/**\n * `void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX single opcode 111.\n *\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width,height)`\n */\nexport function readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glReadPixels(x, y, width, height, format, type, pixels);\n}\n\n/**\n * `void glReleaseShaderCompiler()`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_ES2_compatibility\n * Also provided by the `GL_ARB_ES2_compatibility` extension.\n */\nexport function releaseShaderCompiler(): void {\n glReleaseShaderCompiler();\n}\n\n/**\n * `void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glRenderbufferStorageEXT`.\n * GLX render opcode 4318.\n *\n * @param target - `RenderbufferTarget`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function renderbufferStorage(target: RenderbufferTarget, internalformat: InternalFormat, width: GLsizei, height: GLsizei): void {\n glRenderbufferStorage(target, internalformat, width, height);\n}\n\n/**\n * `void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n * Also known as `glRenderbufferStorageMultisampleEXT`, `glRenderbufferStorageMultisampleNV`.\n * GLX render opcode 4331.\n *\n * @param target - `RenderbufferTarget`\n * @param samples - `GLsizei`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function renderbufferStorageMultisample(target: RenderbufferTarget, samples: GLsizei, internalformat: InternalFormat, width: GLsizei, height: GLsizei): void {\n glRenderbufferStorageMultisample(target, samples, internalformat, width, height);\n}\n\n/**\n * `void glResumeTransformFeedback()`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n * Also known as `glResumeTransformFeedbackNV`.\n */\nexport function resumeTransformFeedback(): void {\n glResumeTransformFeedback();\n}\n\n/**\n * `void glSampleCoverage(GLfloat value, GLboolean invert)`\n *\n * Provided by `GL_VERSION_1_3`.\n * Also known as `glSampleCoverageARB`.\n * GLX render opcode 229.\n *\n * @param value - `GLfloat`\n * @param invert - `boolean`\n */\nexport function sampleCoverage(value: GLfloat, invert: boolean): void {\n glSampleCoverage(value, invert);\n}\n\n/**\n * `void glSampleMaski(GLuint maskNumber, GLbitfield mask)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_texture_multisample\n * Also provided by the `GL_ARB_texture_multisample` extension.\n *\n * @param maskNumber - `GLuint`\n * @param mask - `GLbitfield`\n */\nexport function sampleMaski(maskNumber: GLuint, mask: GLbitfield): void {\n glSampleMaski(maskNumber, mask);\n}\n\n/**\n * `void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterF`\n * @param param - `GLfloat`\n */\nexport function samplerParameterf(sampler: GLuint, pname: SamplerParameterF, param: GLfloat): void {\n glSamplerParameterf(sampler, pname, param);\n}\n\n/**\n * `void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterF`\n * @param param - `GLfloat[] | Float32Array`, length `COMPSIZE(pname)`\n */\nexport function samplerParameterfv(sampler: GLuint, pname: SamplerParameterF, param: GLfloat[] | Float32Array): void {\n glSamplerParameterfv(sampler, pname, param);\n}\n\n/**\n * `void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterI`\n * @param param - `GLint`\n */\nexport function samplerParameteri(sampler: GLuint, pname: SamplerParameterI, param: GLint): void {\n glSamplerParameteri(sampler, pname, param);\n}\n\n/**\n * `void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n * Also known as `glSamplerParameterIivEXT`, `glSamplerParameterIivOES`.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterI`\n * @param param - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function samplerParameterIiv(sampler: GLuint, pname: SamplerParameterI, param: GLint[] | Int32Array): void {\n glSamplerParameterIiv(sampler, pname, param);\n}\n\n/**\n * `void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n * Also known as `glSamplerParameterIuivEXT`, `glSamplerParameterIuivOES`.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterI`\n * @param param - `GLuint[] | Uint32Array`, length `COMPSIZE(pname)`\n */\nexport function samplerParameterIuiv(sampler: GLuint, pname: SamplerParameterI, param: GLuint[] | Uint32Array): void {\n glSamplerParameterIuiv(sampler, pname, param);\n}\n\n/**\n * `void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param sampler - `GLuint`, object class `sampler`\n * @param pname - `SamplerParameterI`\n * @param param - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function samplerParameteriv(sampler: GLuint, pname: SamplerParameterI, param: GLint[] | Int32Array): void {\n glSamplerParameteriv(sampler, pname, param);\n}\n\n/**\n * `void glScissor(GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 103.\n *\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function scissor(x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glScissor(x, y, width, height);\n}\n\n/**\n * `void glScissorArrayv(GLuint first, GLsizei count, const GLint *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glScissorArrayvNV`, `glScissorArrayvOES`.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param v - `GLint[] | Int32Array`, length `COMPSIZE(count)`\n */\nexport function scissorArrayv(first: GLuint, count: GLsizei, v: GLint[] | Int32Array): void {\n glScissorArrayv(first, count, v);\n}\n\n/**\n * `void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glScissorIndexedNV`, `glScissorIndexedOES`.\n *\n * @param index - `GLuint`\n * @param left - `GLint`\n * @param bottom - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function scissorIndexed(index: GLuint, left: GLint, bottom: GLint, width: GLsizei, height: GLsizei): void {\n glScissorIndexed(index, left, bottom, width, height);\n}\n\n/**\n * `void glScissorIndexedv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glScissorIndexedvNV`, `glScissorIndexedvOES`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `4`\n */\nexport function scissorIndexedv(index: GLuint, v: GLint[] | Int32Array): void {\n glScissorIndexedv(index, v);\n}\n\n/**\n * `void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryFormat, const void *binary, GLsizei length)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_ES2_compatibility\n * Also provided by the `GL_ARB_ES2_compatibility` extension.\n *\n * @param count - `GLsizei`\n * @param shaders - `GLuint[] | Uint32Array`, length `count`, object class `shader`\n * @param binaryFormat - `ShaderBinaryFormat`\n * @param binary - `ArrayBufferView | GLintptr | null`, length `length`\n * @param length - `GLsizei`\n */\nexport function shaderBinary(count: GLsizei, shaders: GLuint[] | Uint32Array, binaryFormat: ShaderBinaryFormat, binary: ArrayBufferView | GLintptr | null, length: GLsizei): void {\n glShaderBinary(count, shaders, binaryFormat, binary, length);\n}\n\n/**\n * `void glShaderSource(GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glShaderSourceARB`.\n *\n * @param shader - `GLuint`, object class `shader`\n * @param count - `GLsizei`\n * @param string - `string[]`, length `count`\n * @param length - `GLint[] | Int32Array`, length `count`\n */\nexport function shaderSource(shader: GLuint, count: GLsizei, string: string[], length: GLint[] | Int32Array): void {\n glShaderSource(shader, count, string, length);\n}\n\n/**\n * `void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_shader_storage_buffer_object\n * Also provided by the `GL_ARB_shader_storage_buffer_object` extension.\n *\n * @param program - `GLuint`, object class `program`\n * @param storageBlockIndex - `GLuint`\n * @param storageBlockBinding - `GLuint`\n */\nexport function shaderStorageBlockBinding(program: GLuint, storageBlockIndex: GLuint, storageBlockBinding: GLuint): void {\n glShaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding);\n}\n\n/**\n * `void glSpecializeShader(GLuint shader, const GLchar *pEntryPoint, GLuint numSpecializationConstants, const GLuint *pConstantIndex, const GLuint *pConstantValue)`\n *\n * Provided by `GL_VERSION_4_6`.\n * Registry note: Reuse GL_ARB_gl_spirv\n * Also known as `glSpecializeShaderARB`.\n *\n * @param shader - `GLuint`, object class `shader`\n * @param pEntryPoint - `string`\n * @param numSpecializationConstants - `GLuint`\n * @param pConstantIndex - `GLuint[] | Uint32Array`, length `numSpecializationConstants`\n * @param pConstantValue - `GLuint[] | Uint32Array`, length `numSpecializationConstants`\n */\nexport function specializeShader(shader: GLuint, pEntryPoint: string, numSpecializationConstants: GLuint, pConstantIndex: GLuint[] | Uint32Array, pConstantValue: GLuint[] | Uint32Array): void {\n glSpecializeShader(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue);\n}\n\n/**\n * `void glStencilFunc(GLenum func, GLint ref, GLuint mask)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 162.\n *\n * @param func - `StencilFunction`\n * @param ref - `GLint`, kind `StencilValue`. This parameter represents an unmasked stencil value.\n * @param mask - `GLuint`, kind `StencilMask`. This parameter represents mask to apply to stencil values.\n */\nexport function stencilFunc(func: StencilFunction, ref: GLint, mask: GLuint): void {\n glStencilFunc(func, ref, mask);\n}\n\n/**\n * `void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)`\n *\n * Provided by `GL_VERSION_2_0`.\n *\n * @param face - `TriangleFace`\n * @param func - `StencilFunction`\n * @param ref - `GLint`, kind `StencilValue`. This parameter represents an unmasked stencil value.\n * @param mask - `GLuint`, kind `StencilMask`. This parameter represents mask to apply to stencil values.\n */\nexport function stencilFuncSeparate(face: TriangleFace, func: StencilFunction, ref: GLint, mask: GLuint): void {\n glStencilFuncSeparate(face, func, ref, mask);\n}\n\n/**\n * `void glStencilMask(GLuint mask)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 133.\n *\n * @param mask - `GLuint`, kind `StencilMask`. This parameter represents mask to apply to stencil values.\n */\nexport function stencilMask(mask: GLuint): void {\n glStencilMask(mask);\n}\n\n/**\n * `void glStencilMaskSeparate(GLenum face, GLuint mask)`\n *\n * Provided by `GL_VERSION_2_0`.\n *\n * @param face - `TriangleFace`\n * @param mask - `GLuint`, kind `StencilMask`. This parameter represents mask to apply to stencil values.\n */\nexport function stencilMaskSeparate(face: TriangleFace, mask: GLuint): void {\n glStencilMaskSeparate(face, mask);\n}\n\n/**\n * `void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 163.\n *\n * @param fail - `StencilOp`\n * @param zfail - `StencilOp`\n * @param zpass - `StencilOp`\n */\nexport function stencilOp(fail: StencilOp, zfail: StencilOp, zpass: StencilOp): void {\n glStencilOp(fail, zfail, zpass);\n}\n\n/**\n * `void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glStencilOpSeparateATI`.\n *\n * @param face - `TriangleFace`\n * @param sfail - `StencilOp`\n * @param dpfail - `StencilOp`\n * @param dppass - `StencilOp`\n */\nexport function stencilOpSeparate(face: TriangleFace, sfail: StencilOp, dpfail: StencilOp, dppass: StencilOp): void {\n glStencilOpSeparate(face, sfail, dpfail, dppass);\n}\n\n/**\n * `void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Also known as `glTexBufferARB`, `glTexBufferEXT`, `glTexBufferOES`.\n *\n * @param target - `TextureTarget`\n * @param internalformat - `SizedInternalFormat`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function texBuffer(target: TextureTarget, internalformat: SizedInternalFormat, buffer: GLuint): void {\n glTexBuffer(target, internalformat, buffer);\n}\n\n/**\n * `void glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_texture_buffer_range\n * Also provided by the `GL_ARB_texture_buffer_range` extension.\n * Also known as `glTexBufferRangeEXT`, `glTexBufferRangeOES`.\n *\n * @param target - `TextureTarget`\n * @param internalformat - `SizedInternalFormat`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`, kind `BufferOffset`. This parameter represents an offset into a buffer.\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function texBufferRange(target: TextureTarget, internalformat: SizedInternalFormat, buffer: GLuint, offset: GLintptr, size: GLsizeiptr): void {\n glTexBufferRange(target, internalformat, buffer, offset, size);\n}\n\n/**\n * `void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 109.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `GLint`, group `InternalFormat`\n * @param width - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width)`\n */\nexport function texImage1D(target: TextureTarget, level: GLint, internalformat: GLint, width: GLsizei, border: GLint, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexImage1D(target, level, internalformat, width, border, format, type, pixels);\n}\n\n/**\n * `void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 110.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `GLint`, group `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width,height)`\n */\nexport function texImage2D(target: TextureTarget, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels);\n}\n\n/**\n * `void glTexImage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_texture_multisample\n * Also provided by the `GL_ARB_texture_multisample` extension.\n *\n * @param target - `TextureTarget`\n * @param samples - `GLsizei`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function texImage2DMultisample(target: TextureTarget, samples: GLsizei, internalformat: InternalFormat, width: GLsizei, height: GLsizei, fixedsamplelocations: boolean): void {\n glTexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);\n}\n\n/**\n * `void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_2`.\n * Also known as `glTexImage3DEXT`.\n * GLX render opcode 4114.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param internalformat - `GLint`, group `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param border - `GLint`, kind `CheckedInt32`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width,height,depth)`\n */\nexport function texImage3D(target: TextureTarget, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);\n}\n\n/**\n * `void glTexImage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_texture_multisample\n * Also provided by the `GL_ARB_texture_multisample` extension.\n *\n * @param target - `TextureTarget`\n * @param samples - `GLsizei`\n * @param internalformat - `InternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function texImage3DMultisample(target: TextureTarget, samples: GLsizei, internalformat: InternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei, fixedsamplelocations: boolean): void {\n glTexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);\n}\n\n/**\n * `void glTexParameterf(GLenum target, GLenum pname, GLfloat param)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 105.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param param - `GLfloat`, kind `CheckedFloat32`\n */\nexport function texParameterf(target: TextureTarget, pname: TextureParameterName, param: GLfloat): void {\n glTexParameterf(target, pname, param);\n}\n\n/**\n * `void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 106.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param params - `GLfloat[] | Float32Array`, length `COMPSIZE(pname)`, kind `CheckedFloat32`\n */\nexport function texParameterfv(target: TextureTarget, pname: TextureParameterName, params: GLfloat[] | Float32Array): void {\n glTexParameterfv(target, pname, params);\n}\n\n/**\n * `void glTexParameteri(GLenum target, GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 107.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param param - `GLint`, kind `CheckedInt32`\n */\nexport function texParameteri(target: TextureTarget, pname: TextureParameterName, param: GLint): void {\n glTexParameteri(target, pname, param);\n}\n\n/**\n * `void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glTexParameterIivEXT`, `glTexParameterIivOES`.\n * GLX render opcode 346.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param params - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function texParameterIiv(target: TextureTarget, pname: TextureParameterName, params: GLint[] | Int32Array): void {\n glTexParameterIiv(target, pname, params);\n}\n\n/**\n * `void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glTexParameterIuivEXT`, `glTexParameterIuivOES`.\n * GLX render opcode 347.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param params - `GLuint[] | Uint32Array`, length `COMPSIZE(pname)`\n */\nexport function texParameterIuiv(target: TextureTarget, pname: TextureParameterName, params: GLuint[] | Uint32Array): void {\n glTexParameterIuiv(target, pname, params);\n}\n\n/**\n * `void glTexParameteriv(GLenum target, GLenum pname, const GLint *params)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 108.\n *\n * @param target - `TextureTarget`\n * @param pname - `TextureParameterName`\n * @param params - `GLint[] | Int32Array`, length `COMPSIZE(pname)`, kind `CheckedInt32`\n */\nexport function texParameteriv(target: TextureTarget, pname: TextureParameterName, params: GLint[] | Int32Array): void {\n glTexParameteriv(target, pname, params);\n}\n\n/**\n * `void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_texture_storage\n * Also provided by the `GL_ARB_texture_storage` extension.\n * Also known as `glTexStorage1DEXT`.\n *\n * @param target - `TextureTarget`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n */\nexport function texStorage1D(target: TextureTarget, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei): void {\n glTexStorage1D(target, levels, internalformat, width);\n}\n\n/**\n * `void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_texture_storage\n * Also provided by the `GL_ARB_texture_storage` extension.\n * Also known as `glTexStorage2DEXT`.\n *\n * @param target - `TextureTarget`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function texStorage2D(target: TextureTarget, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei): void {\n glTexStorage2D(target, levels, internalformat, width, height);\n}\n\n/**\n * `void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_texture_storage_multisample\n * Also provided by the `GL_ARB_texture_storage_multisample` extension.\n *\n * @param target - `TextureTarget`\n * @param samples - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function texStorage2DMultisample(target: TextureTarget, samples: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, fixedsamplelocations: boolean): void {\n glTexStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);\n}\n\n/**\n * `void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)`\n *\n * Provided by `GL_VERSION_4_2`.\n * Registry note: Reuse commands from ARB_texture_storage\n * Also provided by the `GL_ARB_texture_storage` extension.\n * Also known as `glTexStorage3DEXT`.\n *\n * @param target - `TextureTarget`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n */\nexport function texStorage3D(target: TextureTarget, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei): void {\n glTexStorage3D(target, levels, internalformat, width, height, depth);\n}\n\n/**\n * `void glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_texture_storage_multisample\n * Also provided by the `GL_ARB_texture_storage_multisample` extension.\n * Also known as `glTexStorage3DMultisampleOES`.\n *\n * @param target - `TextureTarget`\n * @param samples - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function texStorage3DMultisample(target: TextureTarget, samples: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei, fixedsamplelocations: boolean): void {\n glTexStorage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);\n}\n\n/**\n * `void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glTexSubImage1DEXT`.\n * GLX render opcode 4099.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width)`\n */\nexport function texSubImage1D(target: TextureTarget, level: GLint, xoffset: GLint, width: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexSubImage1D(target, level, xoffset, width, format, type, pixels);\n}\n\n/**\n * `void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_1`.\n * Also known as `glTexSubImage2DEXT`.\n * GLX render opcode 4100.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width,height)`\n */\nexport function texSubImage2D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);\n}\n\n/**\n * `void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_1_2`.\n * Also known as `glTexSubImage3DEXT`.\n * GLX render opcode 4115.\n *\n * @param target - `TextureTarget`\n * @param level - `GLint`, kind `CheckedInt32`\n * @param xoffset - `GLint`, kind `CheckedInt32`\n * @param yoffset - `GLint`, kind `CheckedInt32`\n * @param zoffset - `GLint`, kind `CheckedInt32`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`, length `COMPSIZE(format,type,width,height,depth)`\n */\nexport function texSubImage3D(target: TextureTarget, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);\n}\n\n/**\n * `void glTextureBarrier()`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_texture_barrier\n * Also provided by the `GL_ARB_texture_barrier` extension.\n */\nexport function textureBarrier(): void {\n glTextureBarrier();\n}\n\n/**\n * `void glTextureBuffer(GLuint texture, GLenum internalformat, GLuint buffer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param internalformat - `SizedInternalFormat`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function textureBuffer(texture: GLuint, internalformat: SizedInternalFormat, buffer: GLuint): void {\n glTextureBuffer(texture, internalformat, buffer);\n}\n\n/**\n * `void glTextureBufferRange(GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param internalformat - `SizedInternalFormat`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function textureBufferRange(texture: GLuint, internalformat: SizedInternalFormat, buffer: GLuint, offset: GLintptr, size: GLsizeiptr): void {\n glTextureBufferRange(texture, internalformat, buffer, offset, size);\n}\n\n/**\n * `void glTextureParameterf(GLuint texture, GLenum pname, GLfloat param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param param - `GLfloat`\n */\nexport function textureParameterf(texture: GLuint, pname: TextureParameterName, param: GLfloat): void {\n glTextureParameterf(texture, pname, param);\n}\n\n/**\n * `void glTextureParameterfv(GLuint texture, GLenum pname, const GLfloat *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param param - `GLfloat[] | Float32Array`, length `COMPSIZE(pname)`\n */\nexport function textureParameterfv(texture: GLuint, pname: TextureParameterName, param: GLfloat[] | Float32Array): void {\n glTextureParameterfv(texture, pname, param);\n}\n\n/**\n * `void glTextureParameteri(GLuint texture, GLenum pname, GLint param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param param - `GLint`\n */\nexport function textureParameteri(texture: GLuint, pname: TextureParameterName, param: GLint): void {\n glTextureParameteri(texture, pname, param);\n}\n\n/**\n * `void glTextureParameterIiv(GLuint texture, GLenum pname, const GLint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param params - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function textureParameterIiv(texture: GLuint, pname: TextureParameterName, params: GLint[] | Int32Array): void {\n glTextureParameterIiv(texture, pname, params);\n}\n\n/**\n * `void glTextureParameterIuiv(GLuint texture, GLenum pname, const GLuint *params)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param params - `GLuint[] | Uint32Array`, length `COMPSIZE(pname)`\n */\nexport function textureParameterIuiv(texture: GLuint, pname: TextureParameterName, params: GLuint[] | Uint32Array): void {\n glTextureParameterIuiv(texture, pname, params);\n}\n\n/**\n * `void glTextureParameteriv(GLuint texture, GLenum pname, const GLint *param)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param pname - `TextureParameterName`\n * @param param - `GLint[] | Int32Array`, length `COMPSIZE(pname)`\n */\nexport function textureParameteriv(texture: GLuint, pname: TextureParameterName, param: GLint[] | Int32Array): void {\n glTextureParameteriv(texture, pname, param);\n}\n\n/**\n * `void glTextureStorage1D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n */\nexport function textureStorage1D(texture: GLuint, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei): void {\n glTextureStorage1D(texture, levels, internalformat, width);\n}\n\n/**\n * `void glTextureStorage2D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function textureStorage2D(texture: GLuint, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei): void {\n glTextureStorage2D(texture, levels, internalformat, width, height);\n}\n\n/**\n * `void glTextureStorage2DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param samples - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function textureStorage2DMultisample(texture: GLuint, samples: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, fixedsamplelocations: boolean): void {\n glTextureStorage2DMultisample(texture, samples, internalformat, width, height, fixedsamplelocations);\n}\n\n/**\n * `void glTextureStorage3D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param levels - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n */\nexport function textureStorage3D(texture: GLuint, levels: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei): void {\n glTextureStorage3D(texture, levels, internalformat, width, height, depth);\n}\n\n/**\n * `void glTextureStorage3DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param samples - `GLsizei`\n * @param internalformat - `SizedInternalFormat`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param fixedsamplelocations - `boolean`\n */\nexport function textureStorage3DMultisample(texture: GLuint, samples: GLsizei, internalformat: SizedInternalFormat, width: GLsizei, height: GLsizei, depth: GLsizei, fixedsamplelocations: boolean): void {\n glTextureStorage3DMultisample(texture, samples, internalformat, width, height, depth, fixedsamplelocations);\n}\n\n/**\n * `void glTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param width - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`\n */\nexport function textureSubImage1D(texture: GLuint, level: GLint, xoffset: GLint, width: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTextureSubImage1D(texture, level, xoffset, width, format, type, pixels);\n}\n\n/**\n * `void glTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`\n */\nexport function textureSubImage2D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, pixels);\n}\n\n/**\n * `void glTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param level - `GLint`\n * @param xoffset - `GLint`\n * @param yoffset - `GLint`\n * @param zoffset - `GLint`\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n * @param depth - `GLsizei`\n * @param format - `PixelFormat`\n * @param type - `PixelType`\n * @param pixels - `ArrayBufferView | GLintptr | null`\n */\nexport function textureSubImage3D(texture: GLuint, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: PixelFormat, type: PixelType, pixels: ArrayBufferView | GLintptr | null): void {\n glTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);\n}\n\n/**\n * `void glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_texture_view\n * Also provided by the `GL_ARB_texture_view` extension.\n * Also known as `glTextureViewEXT`, `glTextureViewOES`.\n *\n * @param texture - `GLuint`, object class `texture`\n * @param target - `TextureTarget`\n * @param origtexture - `GLuint`, object class `texture`\n * @param internalformat - `SizedInternalFormat`\n * @param minlevel - `GLuint`\n * @param numlevels - `GLuint`\n * @param minlayer - `GLuint`\n * @param numlayers - `GLuint`\n */\nexport function textureView(texture: GLuint, target: TextureTarget, origtexture: GLuint, internalformat: SizedInternalFormat, minlevel: GLuint, numlevels: GLuint, minlayer: GLuint, numlayers: GLuint): void {\n glTextureView(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);\n}\n\n/**\n * `void glTransformFeedbackBufferBase(GLuint xfb, GLuint index, GLuint buffer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param xfb - `GLuint`, object class `transform feedback`\n * @param index - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function transformFeedbackBufferBase(xfb: GLuint, index: GLuint, buffer: GLuint): void {\n glTransformFeedbackBufferBase(xfb, index, buffer);\n}\n\n/**\n * `void glTransformFeedbackBufferRange(GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @param xfb - `GLuint`, object class `transform feedback`\n * @param index - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param size - `GLsizeiptr`, kind `BufferSize`. This parameter represents the size of a buffer.\n */\nexport function transformFeedbackBufferRange(xfb: GLuint, index: GLuint, buffer: GLuint, offset: GLintptr, size: GLsizeiptr): void {\n glTransformFeedbackBufferRange(xfb, index, buffer, offset, size);\n}\n\n/**\n * `void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar *const*varyings, GLenum bufferMode)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glTransformFeedbackVaryingsEXT`.\n * GLX render opcode 359.\n *\n * @param program - `GLuint`, object class `program`\n * @param count - `GLsizei`\n * @param varyings - `string[]`, length `count`\n * @param bufferMode - `TransformFeedbackBufferMode`\n */\nexport function transformFeedbackVaryings(program: GLuint, count: GLsizei, varyings: string[], bufferMode: TransformFeedbackBufferMode): void {\n glTransformFeedbackVaryings(program, count, varyings, bufferMode);\n}\n\n/**\n * `void glUniform1d(GLint location, GLdouble x)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param x - `GLdouble`\n */\nexport function uniform1d(location: GLint, x: GLdouble): void {\n glUniform1d(location, x);\n}\n\n/**\n * `void glUniform1dv(GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*1`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function uniform1dv(location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glUniform1dv(location, count, value);\n}\n\n/**\n * `void glUniform1f(GLint location, GLfloat v0)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform1fARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n */\nexport function uniform1f(location: GLint, v0: GLfloat): void {\n glUniform1f(location, v0);\n}\n\n/**\n * `void glUniform1fv(GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform1fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*1`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function uniform1fv(location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glUniform1fv(location, count, value);\n}\n\n/**\n * `void glUniform1i(GLint location, GLint v0)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform1iARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLint`\n */\nexport function uniform1i(location: GLint, v0: GLint): void {\n glUniform1i(location, v0);\n}\n\n/**\n * `void glUniform1iv(GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform1ivARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*1`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function uniform1iv(location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glUniform1iv(location, count, value);\n}\n\n/**\n * `void glUniform1ui(GLint location, GLuint v0)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform1uiEXT`.\n *\n * @param location - `GLint`\n * @param v0 - `GLuint`\n */\nexport function uniform1ui(location: GLint, v0: GLuint): void {\n glUniform1ui(location, v0);\n}\n\n/**\n * `void glUniform1uiv(GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform1uivEXT`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*1`, kind `Vector1`. This parameter represents a vector with 1 components\n */\nexport function uniform1uiv(location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glUniform1uiv(location, count, value);\n}\n\n/**\n * `void glUniform2d(GLint location, GLdouble x, GLdouble y)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n */\nexport function uniform2d(location: GLint, x: GLdouble, y: GLdouble): void {\n glUniform2d(location, x, y);\n}\n\n/**\n * `void glUniform2dv(GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function uniform2dv(location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glUniform2dv(location, count, value);\n}\n\n/**\n * `void glUniform2f(GLint location, GLfloat v0, GLfloat v1)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform2fARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n */\nexport function uniform2f(location: GLint, v0: GLfloat, v1: GLfloat): void {\n glUniform2f(location, v0, v1);\n}\n\n/**\n * `void glUniform2fv(GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform2fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function uniform2fv(location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glUniform2fv(location, count, value);\n}\n\n/**\n * `void glUniform2i(GLint location, GLint v0, GLint v1)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform2iARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n */\nexport function uniform2i(location: GLint, v0: GLint, v1: GLint): void {\n glUniform2i(location, v0, v1);\n}\n\n/**\n * `void glUniform2iv(GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform2ivARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function uniform2iv(location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glUniform2iv(location, count, value);\n}\n\n/**\n * `void glUniform2ui(GLint location, GLuint v0, GLuint v1)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform2uiEXT`.\n *\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n */\nexport function uniform2ui(location: GLint, v0: GLuint, v1: GLuint): void {\n glUniform2ui(location, v0, v1);\n}\n\n/**\n * `void glUniform2uiv(GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform2uivEXT`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*2`, kind `Vector2`. This parameter represents a vector with 2 components\n */\nexport function uniform2uiv(location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glUniform2uiv(location, count, value);\n}\n\n/**\n * `void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n */\nexport function uniform3d(location: GLint, x: GLdouble, y: GLdouble, z: GLdouble): void {\n glUniform3d(location, x, y, z);\n}\n\n/**\n * `void glUniform3dv(GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function uniform3dv(location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glUniform3dv(location, count, value);\n}\n\n/**\n * `void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform3fARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n * @param v2 - `GLfloat`\n */\nexport function uniform3f(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat): void {\n glUniform3f(location, v0, v1, v2);\n}\n\n/**\n * `void glUniform3fv(GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform3fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function uniform3fv(location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glUniform3fv(location, count, value);\n}\n\n/**\n * `void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform3iARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n * @param v2 - `GLint`\n */\nexport function uniform3i(location: GLint, v0: GLint, v1: GLint, v2: GLint): void {\n glUniform3i(location, v0, v1, v2);\n}\n\n/**\n * `void glUniform3iv(GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform3ivARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function uniform3iv(location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glUniform3iv(location, count, value);\n}\n\n/**\n * `void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform3uiEXT`.\n *\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n * @param v2 - `GLuint`\n */\nexport function uniform3ui(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint): void {\n glUniform3ui(location, v0, v1, v2);\n}\n\n/**\n * `void glUniform3uiv(GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform3uivEXT`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*3`, kind `Vector3`. This parameter represents a vector with 3 components\n */\nexport function uniform3uiv(location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glUniform3uiv(location, count, value);\n}\n\n/**\n * `void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n * @param w - `GLdouble`\n */\nexport function uniform4d(location: GLint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble): void {\n glUniform4d(location, x, y, z, w);\n}\n\n/**\n * `void glUniform4dv(GLint location, GLsizei count, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLdouble[] | Float64Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function uniform4dv(location: GLint, count: GLsizei, value: GLdouble[] | Float64Array): void {\n glUniform4dv(location, count, value);\n}\n\n/**\n * `void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform4fARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLfloat`\n * @param v1 - `GLfloat`\n * @param v2 - `GLfloat`\n * @param v3 - `GLfloat`\n */\nexport function uniform4f(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat, v3: GLfloat): void {\n glUniform4f(location, v0, v1, v2, v3);\n}\n\n/**\n * `void glUniform4fv(GLint location, GLsizei count, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform4fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLfloat[] | Float32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function uniform4fv(location: GLint, count: GLsizei, value: GLfloat[] | Float32Array): void {\n glUniform4fv(location, count, value);\n}\n\n/**\n * `void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform4iARB`.\n *\n * @param location - `GLint`\n * @param v0 - `GLint`\n * @param v1 - `GLint`\n * @param v2 - `GLint`\n * @param v3 - `GLint`\n */\nexport function uniform4i(location: GLint, v0: GLint, v1: GLint, v2: GLint, v3: GLint): void {\n glUniform4i(location, v0, v1, v2, v3);\n}\n\n/**\n * `void glUniform4iv(GLint location, GLsizei count, const GLint *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniform4ivARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLint[] | Int32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function uniform4iv(location: GLint, count: GLsizei, value: GLint[] | Int32Array): void {\n glUniform4iv(location, count, value);\n}\n\n/**\n * `void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform4uiEXT`.\n *\n * @param location - `GLint`\n * @param v0 - `GLuint`\n * @param v1 - `GLuint`\n * @param v2 - `GLuint`\n * @param v3 - `GLuint`\n */\nexport function uniform4ui(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint, v3: GLuint): void {\n glUniform4ui(location, v0, v1, v2, v3);\n}\n\n/**\n * `void glUniform4uiv(GLint location, GLsizei count, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glUniform4uivEXT`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param value - `GLuint[] | Uint32Array`, length `count*4`, kind `Vector4`. This parameter represents a vector with 4 components\n */\nexport function uniform4uiv(location: GLint, count: GLsizei, value: GLuint[] | Uint32Array): void {\n glUniform4uiv(location, count, value);\n}\n\n/**\n * `void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)`\n *\n * Provided by `GL_VERSION_3_1`.\n * Registry note: Reuse ARB_uniform_buffer_object\n * Also provided by the `GL_ARB_uniform_buffer_object` extension.\n * GLX render opcode 366.\n *\n * @param program - `GLuint`, object class `program`\n * @param uniformBlockIndex - `GLuint`\n * @param uniformBlockBinding - `GLuint`\n */\nexport function uniformBlockBinding(program: GLuint, uniformBlockIndex: GLuint, uniformBlockBinding: GLuint): void {\n glUniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);\n}\n\n/**\n * `void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*4`, kind `Matrix2x2`. This parameter represents a 2x2 matrix.\n */\nexport function uniformMatrix2dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix2dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniformMatrix2fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*4`, kind `Matrix2x2`. This parameter represents a 2x2 matrix.\n */\nexport function uniformMatrix2fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix2fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*6`, kind `Matrix2x3`. This parameter represents a 2x3 matrix.\n */\nexport function uniformMatrix2x3dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix2x3dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix2x3fvNV`.\n * GLX render opcode 305.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*6`, kind `Matrix2x3`. This parameter represents a 2x3 matrix.\n */\nexport function uniformMatrix2x3fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix2x3fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*8`, kind `Matrix2x4`. This parameter represents a 2x4 matrix.\n */\nexport function uniformMatrix2x4dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix2x4dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix2x4fvNV`.\n * GLX render opcode 307.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*8`, kind `Matrix2x4`. This parameter represents a 2x4 matrix.\n */\nexport function uniformMatrix2x4fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix2x4fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*9`, kind `Matrix3x3`. This parameter represents a 3x3 matrix.\n */\nexport function uniformMatrix3dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix3dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniformMatrix3fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*9`, kind `Matrix3x3`. This parameter represents a 3x3 matrix.\n */\nexport function uniformMatrix3fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix3fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*6`, kind `Matrix3x2`. This parameter represents a 3x2 matrix.\n */\nexport function uniformMatrix3x2dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix3x2dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix3x2fvNV`.\n * GLX render opcode 306.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*6`, kind `Matrix3x2`. This parameter represents a 3x2 matrix.\n */\nexport function uniformMatrix3x2fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix3x2fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*12`, kind `Matrix3x4`. This parameter represents a 3x4 matrix.\n */\nexport function uniformMatrix3x4dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix3x4dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix3x4fvNV`.\n * GLX render opcode 309.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*12`, kind `Matrix3x4`. This parameter represents a 3x4 matrix.\n */\nexport function uniformMatrix3x4fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix3x4fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*16`, kind `Matrix4x4`. This parameter represents a 4x4 matrix.\n */\nexport function uniformMatrix4dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix4dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUniformMatrix4fvARB`.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*16`, kind `Matrix4x4`. This parameter represents a 4x4 matrix.\n */\nexport function uniformMatrix4fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix4fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*8`, kind `Matrix4x2`. This parameter represents a 4x2 matrix.\n */\nexport function uniformMatrix4x2dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix4x2dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix4x2fvNV`.\n * GLX render opcode 308.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*8`, kind `Matrix4x2`. This parameter represents a 4x2 matrix.\n */\nexport function uniformMatrix4x2fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix4x2fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_gpu_shader_fp64\n * Also provided by the `GL_ARB_gpu_shader_fp64` extension.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLdouble[] | Float64Array`, length `count*12`, kind `Matrix4x3`. This parameter represents a 4x3 matrix.\n */\nexport function uniformMatrix4x3dv(location: GLint, count: GLsizei, transpose: boolean, value: GLdouble[] | Float64Array): void {\n glUniformMatrix4x3dv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)`\n *\n * Provided by `GL_VERSION_2_1`.\n * Also known as `glUniformMatrix4x3fvNV`.\n * GLX render opcode 310.\n *\n * @param location - `GLint`\n * @param count - `GLsizei`\n * @param transpose - `boolean`\n * @param value - `GLfloat[] | Float32Array`, length `count*12`, kind `Matrix4x3`. This parameter represents a 4x3 matrix.\n */\nexport function uniformMatrix4x3fv(location: GLint, count: GLsizei, transpose: boolean, value: GLfloat[] | Float32Array): void {\n glUniformMatrix4x3fv(location, count, transpose, value);\n}\n\n/**\n * `void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)`\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_shader_subroutine\n * Also provided by the `GL_ARB_shader_subroutine` extension.\n *\n * @param shadertype - `ShaderType`\n * @param count - `GLsizei`\n * @param indices - `GLuint[] | Uint32Array`, length `count`\n */\nexport function uniformSubroutinesuiv(shadertype: ShaderType, count: GLsizei, indices: GLuint[] | Uint32Array): void {\n glUniformSubroutinesuiv(shadertype, count, indices);\n}\n\n/**\n * `GLboolean glUnmapBuffer(GLenum target)`\n *\n * Provided by `GL_VERSION_1_5`.\n * Also known as `glUnmapBufferARB`, `glUnmapBufferOES`.\n *\n * @param target - `BufferTargetARB`\n * @returns `boolean`\n */\nexport function unmapBuffer(target: BufferTargetARB): boolean {\n return (glUnmapBuffer(target) as number) !== 0;\n}\n\n/**\n * `GLboolean glUnmapNamedBuffer(GLuint buffer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @param buffer - `GLuint`, object class `buffer`\n * @returns `boolean`\n */\nexport function unmapNamedBuffer(buffer: GLuint): boolean {\n return (glUnmapNamedBuffer(buffer) as number) !== 0;\n}\n\n/**\n * `void glUseProgram(GLuint program)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glUseProgramObjectARB`.\n *\n * @param program - `GLuint`, object class `program`\n */\nexport function useProgram(program: GLuint): void {\n glUseProgram(program);\n}\n\n/**\n * `void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n * @param stages - `UseProgramStageMask`\n * @param program - `GLuint`, object class `program`\n */\nexport function useProgramStages(pipeline: GLuint, stages: UseProgramStageMask, program: GLuint): void {\n glUseProgramStages(pipeline, stages, program);\n}\n\n/**\n * `void glValidateProgram(GLuint program)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glValidateProgramARB`.\n *\n * @param program - `GLuint`, object class `program`\n */\nexport function validateProgram(program: GLuint): void {\n glValidateProgram(program);\n}\n\n/**\n * `void glValidateProgramPipeline(GLuint pipeline)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param pipeline - `GLuint`, object class `program pipeline`\n */\nexport function validateProgramPipeline(pipeline: GLuint): void {\n glValidateProgramPipeline(pipeline);\n}\n\n/**\n * `void glVertexArrayAttribBinding(GLuint vaobj, GLuint attribindex, GLuint bindingindex)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param attribindex - `GLuint`\n * @param bindingindex - `GLuint`\n */\nexport function vertexArrayAttribBinding(vaobj: GLuint, attribindex: GLuint, bindingindex: GLuint): void {\n glVertexArrayAttribBinding(vaobj, attribindex, bindingindex);\n}\n\n/**\n * `void glVertexArrayAttribFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribType`\n * @param normalized - `boolean`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexArrayAttribFormat(vaobj: GLuint, attribindex: GLuint, size: GLint, type: VertexAttribType, normalized: boolean, relativeoffset: GLuint): void {\n glVertexArrayAttribFormat(vaobj, attribindex, size, type, normalized, relativeoffset);\n}\n\n/**\n * `void glVertexArrayAttribIFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribIType`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexArrayAttribIFormat(vaobj: GLuint, attribindex: GLuint, size: GLint, type: VertexAttribIType, relativeoffset: GLuint): void {\n glVertexArrayAttribIFormat(vaobj, attribindex, size, type, relativeoffset);\n}\n\n/**\n * `void glVertexArrayAttribLFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribLType`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexArrayAttribLFormat(vaobj: GLuint, attribindex: GLuint, size: GLint, type: VertexAttribLType, relativeoffset: GLuint): void {\n glVertexArrayAttribLFormat(vaobj, attribindex, size, type, relativeoffset);\n}\n\n/**\n * `void glVertexArrayBindingDivisor(GLuint vaobj, GLuint bindingindex, GLuint divisor)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param bindingindex - `GLuint`\n * @param divisor - `GLuint`\n */\nexport function vertexArrayBindingDivisor(vaobj: GLuint, bindingindex: GLuint, divisor: GLuint): void {\n glVertexArrayBindingDivisor(vaobj, bindingindex, divisor);\n}\n\n/**\n * `void glVertexArrayElementBuffer(GLuint vaobj, GLuint buffer)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param buffer - `GLuint`, object class `buffer`\n */\nexport function vertexArrayElementBuffer(vaobj: GLuint, buffer: GLuint): void {\n glVertexArrayElementBuffer(vaobj, buffer);\n}\n\n/**\n * `void glVertexArrayVertexBuffer(GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param bindingindex - `GLuint`\n * @param buffer - `GLuint`, object class `buffer`\n * @param offset - `GLintptr`\n * @param stride - `GLsizei`\n */\nexport function vertexArrayVertexBuffer(vaobj: GLuint, bindingindex: GLuint, buffer: GLuint, offset: GLintptr, stride: GLsizei): void {\n glVertexArrayVertexBuffer(vaobj, bindingindex, buffer, offset, stride);\n}\n\n/**\n * `void glVertexArrayVertexBuffers(GLuint vaobj, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides)`\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @param vaobj - `GLuint`, object class `vertex array`\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param buffers - `GLuint[] | Uint32Array`, length `count`, object class `buffer`\n * @param offsets - `GLintptr[]`, length `count`\n * @param strides - `GLsizei[] | Int32Array`, length `count`\n */\nexport function vertexArrayVertexBuffers(vaobj: GLuint, first: GLuint, count: GLsizei, buffers: GLuint[] | Uint32Array, offsets: GLintptr[], strides: GLsizei[] | Int32Array): void {\n glVertexArrayVertexBuffers(vaobj, first, count, buffers, offsets, strides);\n}\n\n/**\n * `void glVertexAttrib1d(GLuint index, GLdouble x)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1dARB`, `glVertexAttrib1dNV`.\n * Vector form: `vertexAttrib1dv`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n */\nexport function vertexAttrib1d(index: GLuint, x: GLdouble): void {\n glVertexAttrib1d(index, x);\n}\n\n/**\n * `void glVertexAttrib1dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1dvARB`, `glVertexAttrib1dvNV`.\n * GLX render opcode 4197.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `1`\n */\nexport function vertexAttrib1dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttrib1dv(index, v);\n}\n\n/**\n * `void glVertexAttrib1f(GLuint index, GLfloat x)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1fARB`, `glVertexAttrib1fNV`.\n * Vector form: `vertexAttrib1fv`.\n *\n * @param index - `GLuint`\n * @param x - `GLfloat`\n */\nexport function vertexAttrib1f(index: GLuint, x: GLfloat): void {\n glVertexAttrib1f(index, x);\n}\n\n/**\n * `void glVertexAttrib1fv(GLuint index, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1fvARB`, `glVertexAttrib1fvNV`.\n * GLX render opcode 4193.\n *\n * @param index - `GLuint`\n * @param v - `GLfloat[] | Float32Array`, length `1`\n */\nexport function vertexAttrib1fv(index: GLuint, v: GLfloat[] | Float32Array): void {\n glVertexAttrib1fv(index, v);\n}\n\n/**\n * `void glVertexAttrib1s(GLuint index, GLshort x)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1sARB`, `glVertexAttrib1sNV`.\n * Vector form: `vertexAttrib1sv`.\n *\n * @param index - `GLuint`\n * @param x - `GLshort`\n */\nexport function vertexAttrib1s(index: GLuint, x: GLshort): void {\n glVertexAttrib1s(index, x);\n}\n\n/**\n * `void glVertexAttrib1sv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib1svARB`, `glVertexAttrib1svNV`.\n * GLX render opcode 4189.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `1`\n */\nexport function vertexAttrib1sv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttrib1sv(index, v);\n}\n\n/**\n * `void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2dARB`, `glVertexAttrib2dNV`.\n * Vector form: `vertexAttrib2dv`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n */\nexport function vertexAttrib2d(index: GLuint, x: GLdouble, y: GLdouble): void {\n glVertexAttrib2d(index, x, y);\n}\n\n/**\n * `void glVertexAttrib2dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2dvARB`, `glVertexAttrib2dvNV`.\n * GLX render opcode 4198.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `2`\n */\nexport function vertexAttrib2dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttrib2dv(index, v);\n}\n\n/**\n * `void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2fARB`, `glVertexAttrib2fNV`.\n * Vector form: `vertexAttrib2fv`.\n *\n * @param index - `GLuint`\n * @param x - `GLfloat`\n * @param y - `GLfloat`\n */\nexport function vertexAttrib2f(index: GLuint, x: GLfloat, y: GLfloat): void {\n glVertexAttrib2f(index, x, y);\n}\n\n/**\n * `void glVertexAttrib2fv(GLuint index, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2fvARB`, `glVertexAttrib2fvNV`.\n * GLX render opcode 4194.\n *\n * @param index - `GLuint`\n * @param v - `GLfloat[] | Float32Array`, length `2`\n */\nexport function vertexAttrib2fv(index: GLuint, v: GLfloat[] | Float32Array): void {\n glVertexAttrib2fv(index, v);\n}\n\n/**\n * `void glVertexAttrib2s(GLuint index, GLshort x, GLshort y)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2sARB`, `glVertexAttrib2sNV`.\n * Vector form: `vertexAttrib2sv`.\n *\n * @param index - `GLuint`\n * @param x - `GLshort`\n * @param y - `GLshort`\n */\nexport function vertexAttrib2s(index: GLuint, x: GLshort, y: GLshort): void {\n glVertexAttrib2s(index, x, y);\n}\n\n/**\n * `void glVertexAttrib2sv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib2svARB`, `glVertexAttrib2svNV`.\n * GLX render opcode 4190.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `2`\n */\nexport function vertexAttrib2sv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttrib2sv(index, v);\n}\n\n/**\n * `void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3dARB`, `glVertexAttrib3dNV`.\n * Vector form: `vertexAttrib3dv`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n */\nexport function vertexAttrib3d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble): void {\n glVertexAttrib3d(index, x, y, z);\n}\n\n/**\n * `void glVertexAttrib3dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3dvARB`, `glVertexAttrib3dvNV`.\n * GLX render opcode 4199.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `3`\n */\nexport function vertexAttrib3dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttrib3dv(index, v);\n}\n\n/**\n * `void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3fARB`, `glVertexAttrib3fNV`.\n * Vector form: `vertexAttrib3fv`.\n *\n * @param index - `GLuint`\n * @param x - `GLfloat`\n * @param y - `GLfloat`\n * @param z - `GLfloat`\n */\nexport function vertexAttrib3f(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat): void {\n glVertexAttrib3f(index, x, y, z);\n}\n\n/**\n * `void glVertexAttrib3fv(GLuint index, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3fvARB`, `glVertexAttrib3fvNV`.\n * GLX render opcode 4195.\n *\n * @param index - `GLuint`\n * @param v - `GLfloat[] | Float32Array`, length `3`\n */\nexport function vertexAttrib3fv(index: GLuint, v: GLfloat[] | Float32Array): void {\n glVertexAttrib3fv(index, v);\n}\n\n/**\n * `void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3sARB`, `glVertexAttrib3sNV`.\n * Vector form: `vertexAttrib3sv`.\n *\n * @param index - `GLuint`\n * @param x - `GLshort`\n * @param y - `GLshort`\n * @param z - `GLshort`\n */\nexport function vertexAttrib3s(index: GLuint, x: GLshort, y: GLshort, z: GLshort): void {\n glVertexAttrib3s(index, x, y, z);\n}\n\n/**\n * `void glVertexAttrib3sv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib3svARB`, `glVertexAttrib3svNV`.\n * GLX render opcode 4191.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `3`\n */\nexport function vertexAttrib3sv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttrib3sv(index, v);\n}\n\n/**\n * `void glVertexAttrib4bv(GLuint index, const GLbyte *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4bvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLbyte[] | Int8Array`, length `4`\n */\nexport function vertexAttrib4bv(index: GLuint, v: GLbyte[] | Int8Array): void {\n glVertexAttrib4bv(index, v);\n}\n\n/**\n * `void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4dARB`, `glVertexAttrib4dNV`.\n * Vector form: `vertexAttrib4dv`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n * @param w - `GLdouble`\n */\nexport function vertexAttrib4d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble): void {\n glVertexAttrib4d(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttrib4dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4dvARB`, `glVertexAttrib4dvNV`.\n * GLX render opcode 4200.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `4`\n */\nexport function vertexAttrib4dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttrib4dv(index, v);\n}\n\n/**\n * `void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4fARB`, `glVertexAttrib4fNV`.\n * Vector form: `vertexAttrib4fv`.\n *\n * @param index - `GLuint`\n * @param x - `GLfloat`\n * @param y - `GLfloat`\n * @param z - `GLfloat`\n * @param w - `GLfloat`\n */\nexport function vertexAttrib4f(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat): void {\n glVertexAttrib4f(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttrib4fv(GLuint index, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4fvARB`, `glVertexAttrib4fvNV`.\n * GLX render opcode 4196.\n *\n * @param index - `GLuint`\n * @param v - `GLfloat[] | Float32Array`, length `4`\n */\nexport function vertexAttrib4fv(index: GLuint, v: GLfloat[] | Float32Array): void {\n glVertexAttrib4fv(index, v);\n}\n\n/**\n * `void glVertexAttrib4iv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4ivARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `4`\n */\nexport function vertexAttrib4iv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttrib4iv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Nbv(GLuint index, const GLbyte *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NbvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLbyte[] | Int8Array`, length `4`\n */\nexport function vertexAttrib4Nbv(index: GLuint, v: GLbyte[] | Int8Array): void {\n glVertexAttrib4Nbv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Niv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NivARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `4`\n */\nexport function vertexAttrib4Niv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttrib4Niv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Nsv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NsvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `4`\n */\nexport function vertexAttrib4Nsv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttrib4Nsv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NubARB`, `glVertexAttrib4ubNV`.\n *\n * @param index - `GLuint`\n * @param x - `GLubyte`\n * @param y - `GLubyte`\n * @param z - `GLubyte`\n * @param w - `GLubyte`\n */\nexport function vertexAttrib4Nub(index: GLuint, x: GLubyte, y: GLubyte, z: GLubyte, w: GLubyte): void {\n glVertexAttrib4Nub(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttrib4Nubv(GLuint index, const GLubyte *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NubvARB`, `glVertexAttrib4ubvNV`.\n * GLX render opcode 4201.\n *\n * @param index - `GLuint`\n * @param v - `GLubyte[] | Uint8Array`, length `4`\n */\nexport function vertexAttrib4Nubv(index: GLuint, v: GLubyte[] | Uint8Array): void {\n glVertexAttrib4Nubv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Nuiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NuivARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `4`\n */\nexport function vertexAttrib4Nuiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttrib4Nuiv(index, v);\n}\n\n/**\n * `void glVertexAttrib4Nusv(GLuint index, const GLushort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4NusvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLushort[] | Uint16Array`, length `4`\n */\nexport function vertexAttrib4Nusv(index: GLuint, v: GLushort[] | Uint16Array): void {\n glVertexAttrib4Nusv(index, v);\n}\n\n/**\n * `void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4sARB`, `glVertexAttrib4sNV`.\n * Vector form: `vertexAttrib4sv`.\n *\n * @param index - `GLuint`\n * @param x - `GLshort`\n * @param y - `GLshort`\n * @param z - `GLshort`\n * @param w - `GLshort`\n */\nexport function vertexAttrib4s(index: GLuint, x: GLshort, y: GLshort, z: GLshort, w: GLshort): void {\n glVertexAttrib4s(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttrib4sv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4svARB`, `glVertexAttrib4svNV`.\n * GLX render opcode 4192.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `4`\n */\nexport function vertexAttrib4sv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttrib4sv(index, v);\n}\n\n/**\n * `void glVertexAttrib4ubv(GLuint index, const GLubyte *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4ubvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLubyte[] | Uint8Array`, length `4`\n */\nexport function vertexAttrib4ubv(index: GLuint, v: GLubyte[] | Uint8Array): void {\n glVertexAttrib4ubv(index, v);\n}\n\n/**\n * `void glVertexAttrib4uiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4uivARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `4`\n */\nexport function vertexAttrib4uiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttrib4uiv(index, v);\n}\n\n/**\n * `void glVertexAttrib4usv(GLuint index, const GLushort *v)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttrib4usvARB`.\n *\n * @param index - `GLuint`\n * @param v - `GLushort[] | Uint16Array`, length `4`\n */\nexport function vertexAttrib4usv(index: GLuint, v: GLushort[] | Uint16Array): void {\n glVertexAttrib4usv(index, v);\n}\n\n/**\n * `void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param attribindex - `GLuint`\n * @param bindingindex - `GLuint`\n */\nexport function vertexAttribBinding(attribindex: GLuint, bindingindex: GLuint): void {\n glVertexAttribBinding(attribindex, bindingindex);\n}\n\n/**\n * `void glVertexAttribDivisor(GLuint index, GLuint divisor)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also known as `glVertexAttribDivisorANGLE`, `glVertexAttribDivisorARB`, `glVertexAttribDivisorEXT`, `glVertexAttribDivisorNV`.\n *\n * @param index - `GLuint`\n * @param divisor - `GLuint`\n */\nexport function vertexAttribDivisor(index: GLuint, divisor: GLuint): void {\n glVertexAttribDivisor(index, divisor);\n}\n\n/**\n * `void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribType`\n * @param normalized - `boolean`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexAttribFormat(attribindex: GLuint, size: GLint, type: VertexAttribType, normalized: boolean, relativeoffset: GLuint): void {\n glVertexAttribFormat(attribindex, size, type, normalized, relativeoffset);\n}\n\n/**\n * `void glVertexAttribI1i(GLuint index, GLint x)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI1iEXT`.\n * Vector form: `vertexAttribI1iv`.\n *\n * @param index - `GLuint`\n * @param x - `GLint`\n */\nexport function vertexAttribI1i(index: GLuint, x: GLint): void {\n glVertexAttribI1i(index, x);\n}\n\n/**\n * `void glVertexAttribI1iv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI1ivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `1`\n */\nexport function vertexAttribI1iv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttribI1iv(index, v);\n}\n\n/**\n * `void glVertexAttribI1ui(GLuint index, GLuint x)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI1uiEXT`.\n * Vector form: `vertexAttribI1uiv`.\n *\n * @param index - `GLuint`\n * @param x - `GLuint`\n */\nexport function vertexAttribI1ui(index: GLuint, x: GLuint): void {\n glVertexAttribI1ui(index, x);\n}\n\n/**\n * `void glVertexAttribI1uiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI1uivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `1`\n */\nexport function vertexAttribI1uiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttribI1uiv(index, v);\n}\n\n/**\n * `void glVertexAttribI2i(GLuint index, GLint x, GLint y)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI2iEXT`.\n * Vector form: `vertexAttribI2iv`.\n *\n * @param index - `GLuint`\n * @param x - `GLint`\n * @param y - `GLint`\n */\nexport function vertexAttribI2i(index: GLuint, x: GLint, y: GLint): void {\n glVertexAttribI2i(index, x, y);\n}\n\n/**\n * `void glVertexAttribI2iv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI2ivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `2`\n */\nexport function vertexAttribI2iv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttribI2iv(index, v);\n}\n\n/**\n * `void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI2uiEXT`.\n * Vector form: `vertexAttribI2uiv`.\n *\n * @param index - `GLuint`\n * @param x - `GLuint`\n * @param y - `GLuint`\n */\nexport function vertexAttribI2ui(index: GLuint, x: GLuint, y: GLuint): void {\n glVertexAttribI2ui(index, x, y);\n}\n\n/**\n * `void glVertexAttribI2uiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI2uivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `2`\n */\nexport function vertexAttribI2uiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttribI2uiv(index, v);\n}\n\n/**\n * `void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI3iEXT`.\n * Vector form: `vertexAttribI3iv`.\n *\n * @param index - `GLuint`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param z - `GLint`\n */\nexport function vertexAttribI3i(index: GLuint, x: GLint, y: GLint, z: GLint): void {\n glVertexAttribI3i(index, x, y, z);\n}\n\n/**\n * `void glVertexAttribI3iv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI3ivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `3`\n */\nexport function vertexAttribI3iv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttribI3iv(index, v);\n}\n\n/**\n * `void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI3uiEXT`.\n * Vector form: `vertexAttribI3uiv`.\n *\n * @param index - `GLuint`\n * @param x - `GLuint`\n * @param y - `GLuint`\n * @param z - `GLuint`\n */\nexport function vertexAttribI3ui(index: GLuint, x: GLuint, y: GLuint, z: GLuint): void {\n glVertexAttribI3ui(index, x, y, z);\n}\n\n/**\n * `void glVertexAttribI3uiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI3uivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `3`\n */\nexport function vertexAttribI3uiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttribI3uiv(index, v);\n}\n\n/**\n * `void glVertexAttribI4bv(GLuint index, const GLbyte *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4bvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLbyte[] | Int8Array`, length `4`\n */\nexport function vertexAttribI4bv(index: GLuint, v: GLbyte[] | Int8Array): void {\n glVertexAttribI4bv(index, v);\n}\n\n/**\n * `void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4iEXT`.\n * Vector form: `vertexAttribI4iv`.\n *\n * @param index - `GLuint`\n * @param x - `GLint`\n * @param y - `GLint`\n * @param z - `GLint`\n * @param w - `GLint`\n */\nexport function vertexAttribI4i(index: GLuint, x: GLint, y: GLint, z: GLint, w: GLint): void {\n glVertexAttribI4i(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttribI4iv(GLuint index, const GLint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4ivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLint[] | Int32Array`, length `4`\n */\nexport function vertexAttribI4iv(index: GLuint, v: GLint[] | Int32Array): void {\n glVertexAttribI4iv(index, v);\n}\n\n/**\n * `void glVertexAttribI4sv(GLuint index, const GLshort *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4svEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLshort[] | Int16Array`, length `4`\n */\nexport function vertexAttribI4sv(index: GLuint, v: GLshort[] | Int16Array): void {\n glVertexAttribI4sv(index, v);\n}\n\n/**\n * `void glVertexAttribI4ubv(GLuint index, const GLubyte *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4ubvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLubyte[] | Uint8Array`, length `4`\n */\nexport function vertexAttribI4ubv(index: GLuint, v: GLubyte[] | Uint8Array): void {\n glVertexAttribI4ubv(index, v);\n}\n\n/**\n * `void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4uiEXT`.\n * Vector form: `vertexAttribI4uiv`.\n *\n * @param index - `GLuint`\n * @param x - `GLuint`\n * @param y - `GLuint`\n * @param z - `GLuint`\n * @param w - `GLuint`\n */\nexport function vertexAttribI4ui(index: GLuint, x: GLuint, y: GLuint, z: GLuint, w: GLuint): void {\n glVertexAttribI4ui(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttribI4uiv(GLuint index, const GLuint *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4uivEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLuint[] | Uint32Array`, length `4`\n */\nexport function vertexAttribI4uiv(index: GLuint, v: GLuint[] | Uint32Array): void {\n glVertexAttribI4uiv(index, v);\n}\n\n/**\n * `void glVertexAttribI4usv(GLuint index, const GLushort *v)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribI4usvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLushort[] | Uint16Array`, length `4`\n */\nexport function vertexAttribI4usv(index: GLuint, v: GLushort[] | Uint16Array): void {\n glVertexAttribI4usv(index, v);\n}\n\n/**\n * `void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribIType`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexAttribIFormat(attribindex: GLuint, size: GLint, type: VertexAttribIType, relativeoffset: GLuint): void {\n glVertexAttribIFormat(attribindex, size, type, relativeoffset);\n}\n\n/**\n * `void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)`\n *\n * Provided by `GL_VERSION_3_0`.\n * Also known as `glVertexAttribIPointerEXT`.\n *\n * @param index - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribIType`\n * @param stride - `GLsizei`\n * @param pointer - `GLintptr`, byte offset into the bound buffer\n */\nexport function vertexAttribIPointer(index: GLuint, size: GLint, type: VertexAttribIType, stride: GLsizei, pointer: GLintptr): void {\n glVertexAttribIPointer(index, size, type, stride, pointer);\n}\n\n/**\n * `void glVertexAttribL1d(GLuint index, GLdouble x)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL1dEXT`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n */\nexport function vertexAttribL1d(index: GLuint, x: GLdouble): void {\n glVertexAttribL1d(index, x);\n}\n\n/**\n * `void glVertexAttribL1dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL1dvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `1`\n */\nexport function vertexAttribL1dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttribL1dv(index, v);\n}\n\n/**\n * `void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL2dEXT`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n */\nexport function vertexAttribL2d(index: GLuint, x: GLdouble, y: GLdouble): void {\n glVertexAttribL2d(index, x, y);\n}\n\n/**\n * `void glVertexAttribL2dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL2dvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `2`\n */\nexport function vertexAttribL2dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttribL2dv(index, v);\n}\n\n/**\n * `void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL3dEXT`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n */\nexport function vertexAttribL3d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble): void {\n glVertexAttribL3d(index, x, y, z);\n}\n\n/**\n * `void glVertexAttribL3dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL3dvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `3`\n */\nexport function vertexAttribL3dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttribL3dv(index, v);\n}\n\n/**\n * `void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL4dEXT`.\n *\n * @param index - `GLuint`\n * @param x - `GLdouble`\n * @param y - `GLdouble`\n * @param z - `GLdouble`\n * @param w - `GLdouble`\n */\nexport function vertexAttribL4d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble): void {\n glVertexAttribL4d(index, x, y, z, w);\n}\n\n/**\n * `void glVertexAttribL4dv(GLuint index, const GLdouble *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribL4dvEXT`.\n *\n * @param index - `GLuint`\n * @param v - `GLdouble[] | Float64Array`, length `4`\n */\nexport function vertexAttribL4dv(index: GLuint, v: GLdouble[] | Float64Array): void {\n glVertexAttribL4dv(index, v);\n}\n\n/**\n * `void glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param attribindex - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribLType`\n * @param relativeoffset - `GLuint`\n */\nexport function vertexAttribLFormat(attribindex: GLuint, size: GLint, type: VertexAttribLType, relativeoffset: GLuint): void {\n glVertexAttribLFormat(attribindex, size, type, relativeoffset);\n}\n\n/**\n * `void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_vertex_attrib_64bit\n * Also provided by the `GL_ARB_vertex_attrib_64bit` extension.\n * Also known as `glVertexAttribLPointerEXT`.\n *\n * @param index - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribLType`\n * @param stride - `GLsizei`\n * @param pointer - `GLintptr`, byte offset into the bound buffer\n */\nexport function vertexAttribLPointer(index: GLuint, size: GLint, type: VertexAttribLType, stride: GLsizei, pointer: GLintptr): void {\n glVertexAttribLPointer(index, size, type, stride, pointer);\n}\n\n/**\n * `void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint`\n */\nexport function vertexAttribP1ui(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint): void {\n glVertexAttribP1ui(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint[] | Uint32Array`, length `1`\n */\nexport function vertexAttribP1uiv(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint[] | Uint32Array): void {\n glVertexAttribP1uiv(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint`\n */\nexport function vertexAttribP2ui(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint): void {\n glVertexAttribP2ui(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint[] | Uint32Array`, length `1`\n */\nexport function vertexAttribP2uiv(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint[] | Uint32Array): void {\n glVertexAttribP2uiv(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint`\n */\nexport function vertexAttribP3ui(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint): void {\n glVertexAttribP3ui(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint[] | Uint32Array`, length `1`\n */\nexport function vertexAttribP3uiv(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint[] | Uint32Array): void {\n glVertexAttribP3uiv(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint`\n */\nexport function vertexAttribP4ui(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint): void {\n glVertexAttribP4ui(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)`\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_vertex_type_2_10_10_10_rev\n * Also provided by the `GL_ARB_vertex_type_2_10_10_10_rev` extension.\n *\n * @param index - `GLuint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param value - `GLuint[] | Uint32Array`, length `1`\n */\nexport function vertexAttribP4uiv(index: GLuint, type: VertexAttribPointerType, normalized: boolean, value: GLuint[] | Uint32Array): void {\n glVertexAttribP4uiv(index, type, normalized, value);\n}\n\n/**\n * `void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer)`\n *\n * Provided by `GL_VERSION_2_0`.\n * Also known as `glVertexAttribPointerARB`.\n *\n * @param index - `GLuint`\n * @param size - `GLint`\n * @param type - `VertexAttribPointerType`\n * @param normalized - `boolean`\n * @param stride - `GLsizei`\n * @param pointer - `GLintptr`, byte offset into the bound buffer\n */\nexport function vertexAttribPointer(index: GLuint, size: GLint, type: VertexAttribPointerType, normalized: boolean, stride: GLsizei, pointer: GLintptr): void {\n glVertexAttribPointer(index, size, type, normalized, stride, pointer);\n}\n\n/**\n * `void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor)`\n *\n * Provided by `GL_VERSION_4_3`.\n * Registry note: Reuse commands from ARB_vertex_attrib_binding\n * Also provided by the `GL_ARB_vertex_attrib_binding` extension.\n *\n * @param bindingindex - `GLuint`\n * @param divisor - `GLuint`\n */\nexport function vertexBindingDivisor(bindingindex: GLuint, divisor: GLuint): void {\n glVertexBindingDivisor(bindingindex, divisor);\n}\n\n/**\n * `void glViewport(GLint x, GLint y, GLsizei width, GLsizei height)`\n *\n * Provided by `GL_VERSION_1_0`.\n * GLX render opcode 191.\n *\n * @param x - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param y - `GLint`, kind `WinCoord`. This parameter represents a window coordinate.\n * @param width - `GLsizei`\n * @param height - `GLsizei`\n */\nexport function viewport(x: GLint, y: GLint, width: GLsizei, height: GLsizei): void {\n glViewport(x, y, width, height);\n}\n\n/**\n * `void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glViewportArrayvNV`, `glViewportArrayvOES`.\n *\n * @param first - `GLuint`\n * @param count - `GLsizei`\n * @param v - `GLfloat[] | Float32Array`, length `COMPSIZE(count)`\n */\nexport function viewportArrayv(first: GLuint, count: GLsizei, v: GLfloat[] | Float32Array): void {\n glViewportArrayv(first, count, v);\n}\n\n/**\n * `void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glViewportIndexedfNV`, `glViewportIndexedfOES`.\n *\n * @param index - `GLuint`\n * @param x - `GLfloat`\n * @param y - `GLfloat`\n * @param w - `GLfloat`\n * @param h - `GLfloat`\n */\nexport function viewportIndexedf(index: GLuint, x: GLfloat, y: GLfloat, w: GLfloat, h: GLfloat): void {\n glViewportIndexedf(index, x, y, w, h);\n}\n\n/**\n * `void glViewportIndexedfv(GLuint index, const GLfloat *v)`\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_viewport_array\n * Also provided by the `GL_ARB_viewport_array` extension.\n * Also known as `glViewportIndexedfvNV`, `glViewportIndexedfvOES`.\n *\n * @param index - `GLuint`\n * @param v - `GLfloat[] | Float32Array`, length `4`\n */\nexport function viewportIndexedfv(index: GLuint, v: GLfloat[] | Float32Array): void {\n glViewportIndexedfv(index, v);\n}\n\n/**\n * `void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)`\n *\n * Provided by `GL_VERSION_3_2`.\n * Registry note: Reuse ARB_sync\n * Also provided by the `GL_ARB_sync` extension.\n * Also known as `glWaitSyncAPPLE`.\n *\n * @param sync - `GLsync`, object class `sync`\n * @param flags - `SyncBehaviorFlags`\n * @param timeout - `GLuint64`\n */\nexport function waitSync(sync: GLsync, flags: SyncBehaviorFlags, timeout: GLuint64): void {\n glWaitSync(sync, flags, timeout);\n}\n\n/**\n * Returns one buffer object name via `glCreateBuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Buffer object functions.\n *\n * @returns `GLuint`, object class `buffer`\n */\nexport function createBuffer(): GLuint {\n const __out = { value: 0 };\n glCreateBuffersSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one framebuffer object name via `glCreateFramebuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Framebuffer object functions.\n *\n * @returns `GLuint`, object class `framebuffer`\n */\nexport function createFramebuffer(): GLuint {\n const __out = { value: 0 };\n glCreateFramebuffersSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one program pipeline object name via `glCreateProgramPipelines(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Program Pipeline object functions.\n *\n * @returns `GLuint`, object class `program pipeline`\n */\nexport function createProgramPipeline(): GLuint {\n const __out = { value: 0 };\n glCreateProgramPipelinesSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one query object name via `glCreateQueries(..., 1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Query object functions.\n *\n * @param target - `QueryTarget`\n * @returns `GLuint`, object class `query`\n */\nexport function createQuery(target: QueryTarget): GLuint {\n const __out = { value: 0 };\n glCreateQueriesSingle(target, 1, __out);\n return __out.value;\n}\n\n/**\n * Returns one renderbuffer object name via `glCreateRenderbuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Renderbuffer object functions.\n *\n * @returns `GLuint`, object class `renderbuffer`\n */\nexport function createRenderbuffer(): GLuint {\n const __out = { value: 0 };\n glCreateRenderbuffersSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one sampler object name via `glCreateSamplers(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Sampler object functions.\n *\n * @returns `GLuint`, object class `sampler`\n */\nexport function createSampler(): GLuint {\n const __out = { value: 0 };\n glCreateSamplersSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one texture object name via `glCreateTextures(..., 1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Texture object functions.\n *\n * @param target - `TextureTarget`\n * @returns `GLuint`, object class `texture`\n */\nexport function createTexture(target: TextureTarget): GLuint {\n const __out = { value: 0 };\n glCreateTexturesSingle(target, 1, __out);\n return __out.value;\n}\n\n/**\n * Returns one transform feedback object name via `glCreateTransformFeedbacks(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Transform Feedback object functions.\n *\n * @returns `GLuint`, object class `transform feedback`\n */\nexport function createTransformFeedback(): GLuint {\n const __out = { value: 0 };\n glCreateTransformFeedbacksSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one vertex array object name via `glCreateVertexArrays(1, ...)`.\n *\n * Provided by `GL_VERSION_4_5`.\n * Registry note: Reuse GL_ARB_direct_state_access\n * Also provided by the `GL_ARB_direct_state_access` extension.\n * `GL_ARB_direct_state_access` note: Vertex Array object functions.\n *\n * @returns `GLuint`, object class `vertex array`\n */\nexport function createVertexArray(): GLuint {\n const __out = { value: 0 };\n glCreateVertexArraysSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Deletes one buffer object name via `glDeleteBuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_1_5`.\n *\n * @param name - `GLuint`, object class `buffer`\n */\nexport function deleteBuffer(name: GLuint): void {\n glDeleteBuffers(1, [name]);\n}\n\n/**\n * Deletes one framebuffer object name via `glDeleteFramebuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n *\n * @param name - `GLuint`, object class `framebuffer`\n */\nexport function deleteFramebuffer(name: GLuint): void {\n glDeleteFramebuffers(1, [name]);\n}\n\n/**\n * Deletes one program pipeline object name via `glDeleteProgramPipelines(1, ...)`.\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @param name - `GLuint`, object class `program pipeline`\n */\nexport function deleteProgramPipeline(name: GLuint): void {\n glDeleteProgramPipelines(1, [name]);\n}\n\n/**\n * Deletes one query object name via `glDeleteQueries(1, ...)`.\n *\n * Provided by `GL_VERSION_1_5`.\n *\n * @param name - `GLuint`, object class `query`\n */\nexport function deleteQuery(name: GLuint): void {\n glDeleteQueries(1, [name]);\n}\n\n/**\n * Deletes one renderbuffer object name via `glDeleteRenderbuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n *\n * @param name - `GLuint`, object class `renderbuffer`\n */\nexport function deleteRenderbuffer(name: GLuint): void {\n glDeleteRenderbuffers(1, [name]);\n}\n\n/**\n * Deletes one sampler object name via `glDeleteSamplers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @param name - `GLuint`, object class `sampler`\n */\nexport function deleteSampler(name: GLuint): void {\n glDeleteSamplers(1, [name]);\n}\n\n/**\n * Deletes one texture object name via `glDeleteTextures(1, ...)`.\n *\n * Provided by `GL_VERSION_1_1`.\n *\n * @param name - `GLuint`, object class `texture`\n */\nexport function deleteTexture(name: GLuint): void {\n glDeleteTextures(1, [name]);\n}\n\n/**\n * Deletes one transform feedback object name via `glDeleteTransformFeedbacks(1, ...)`.\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n *\n * @param name - `GLuint`, object class `transform feedback`\n */\nexport function deleteTransformFeedback(name: GLuint): void {\n glDeleteTransformFeedbacks(1, [name]);\n}\n\n/**\n * Deletes one vertex array object name via `glDeleteVertexArrays(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n *\n * @param name - `GLuint`, object class `vertex array`\n */\nexport function deleteVertexArray(name: GLuint): void {\n glDeleteVertexArrays(1, [name]);\n}\n\n/**\n * Returns one buffer object name via `glGenBuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_1_5`.\n *\n * @returns `GLuint`, object class `buffer`\n */\nexport function genBuffer(): GLuint {\n const __out = { value: 0 };\n glGenBuffersSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one framebuffer object name via `glGenFramebuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n *\n * @returns `GLuint`, object class `framebuffer`\n */\nexport function genFramebuffer(): GLuint {\n const __out = { value: 0 };\n glGenFramebuffersSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one program pipeline object name via `glGenProgramPipelines(1, ...)`.\n *\n * Provided by `GL_VERSION_4_1`.\n * Registry note: Reuse commands from ARB_separate_shader_objects\n * Also provided by the `GL_ARB_separate_shader_objects` extension.\n *\n * @returns `GLuint`, object class `program pipeline`\n */\nexport function genProgramPipeline(): GLuint {\n const __out = { value: 0 };\n glGenProgramPipelinesSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one query object name via `glGenQueries(1, ...)`.\n *\n * Provided by `GL_VERSION_1_5`.\n *\n * @returns `GLuint`, object class `query`\n */\nexport function genQuery(): GLuint {\n const __out = { value: 0 };\n glGenQueriesSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one renderbuffer object name via `glGenRenderbuffers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_framebuffer_object\n * Also provided by the `GL_ARB_framebuffer_object` extension.\n *\n * @returns `GLuint`, object class `renderbuffer`\n */\nexport function genRenderbuffer(): GLuint {\n const __out = { value: 0 };\n glGenRenderbuffersSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one sampler object name via `glGenSamplers(1, ...)`.\n *\n * Provided by `GL_VERSION_3_3`.\n * Registry note: Reuse ARB_sampler_objects\n * Also provided by the `GL_ARB_sampler_objects` extension.\n *\n * @returns `GLuint`, object class `sampler`\n */\nexport function genSampler(): GLuint {\n const __out = { value: 0 };\n glGenSamplersSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one texture object name via `glGenTextures(1, ...)`.\n *\n * Provided by `GL_VERSION_1_1`.\n *\n * @returns `GLuint`, object class `texture`\n */\nexport function genTexture(): GLuint {\n const __out = { value: 0 };\n glGenTexturesSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one transform feedback object name via `glGenTransformFeedbacks(1, ...)`.\n *\n * Provided by `GL_VERSION_4_0`.\n * Registry note: Reuse ARB_transform_feedback2\n * Also provided by the `GL_ARB_transform_feedback2` extension.\n *\n * @returns `GLuint`, object class `transform feedback`\n */\nexport function genTransformFeedback(): GLuint {\n const __out = { value: 0 };\n glGenTransformFeedbacksSingle(1, __out);\n return __out.value;\n}\n\n/**\n * Returns one vertex array object name via `glGenVertexArrays(1, ...)`.\n *\n * Provided by `GL_VERSION_3_0`.\n * Registry note: Reuse ARB_vertex_array_object\n * Also provided by the `GL_ARB_vertex_array_object` extension.\n *\n * @returns `GLuint`, object class `vertex array`\n */\nexport function genVertexArray(): GLuint {\n const __out = { value: 0 };\n glGenVertexArraysSingle(1, __out);\n return __out.value;\n}\n\n/** The shared library the generated OpenGL bindings are loaded from. */\nexport const LIB = \"libGL.so.1\";\n\nconst glActiveShaderProgram = t.bind(LIB, \"glActiveShaderProgram\", [t.uint32, t.uint32], t.void);\n\nconst glActiveTexture = t.bind(LIB, \"glActiveTexture\", [t.uint32], t.void);\n\nconst glAttachShader = t.bind(LIB, \"glAttachShader\", [t.uint32, t.uint32], t.void);\n\nconst glBeginConditionalRender = t.bind(LIB, \"glBeginConditionalRender\", [t.uint32, t.uint32], t.void);\n\nconst glBeginQuery = t.bind(LIB, \"glBeginQuery\", [t.uint32, t.uint32], t.void);\n\nconst glBeginQueryIndexed = t.bind(LIB, \"glBeginQueryIndexed\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBeginTransformFeedback = t.bind(LIB, \"glBeginTransformFeedback\", [t.uint32], t.void);\n\nconst glBindAttribLocation = t.bind(LIB, \"glBindAttribLocation\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.void);\n\nconst glBindBuffer = t.bind(LIB, \"glBindBuffer\", [t.uint32, t.uint32], t.void);\n\nconst glBindBufferBase = t.bind(LIB, \"glBindBufferBase\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBindBufferRange = t.bind(LIB, \"glBindBufferRange\", [t.uint32, t.uint32, t.uint32, t.int64, t.int64], t.void);\n\nconst glBindBuffersBase = t.bind(LIB, \"glBindBuffersBase\", [t.uint32, t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glBindBuffersRange = t.bind(LIB, \"glBindBuffersRange\", [t.uint32, t.uint32, t.int32, t.array(t.uint32), t.array(t.int64), t.array(t.int64)], t.void);\n\nconst glBindFragDataLocation = t.bind(LIB, \"glBindFragDataLocation\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.void);\n\nconst glBindFragDataLocationIndexed = t.bind(LIB, \"glBindFragDataLocationIndexed\", [t.uint32, t.uint32, t.uint32, t.string(\"borrowed\")], t.void);\n\nconst glBindFramebuffer = t.bind(LIB, \"glBindFramebuffer\", [t.uint32, t.uint32], t.void);\n\nconst glBindImageTexture = t.bind(LIB, \"glBindImageTexture\", [t.uint32, t.uint32, t.int32, t.boolean, t.int32, t.uint32, t.uint32], t.void);\n\nconst glBindImageTextures = t.bind(LIB, \"glBindImageTextures\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glBindProgramPipeline = t.bind(LIB, \"glBindProgramPipeline\", [t.uint32], t.void);\n\nconst glBindRenderbuffer = t.bind(LIB, \"glBindRenderbuffer\", [t.uint32, t.uint32], t.void);\n\nconst glBindSampler = t.bind(LIB, \"glBindSampler\", [t.uint32, t.uint32], t.void);\n\nconst glBindSamplers = t.bind(LIB, \"glBindSamplers\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glBindTexture = t.bind(LIB, \"glBindTexture\", [t.uint32, t.uint32], t.void);\n\nconst glBindTextures = t.bind(LIB, \"glBindTextures\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glBindTextureUnit = t.bind(LIB, \"glBindTextureUnit\", [t.uint32, t.uint32], t.void);\n\nconst glBindTransformFeedback = t.bind(LIB, \"glBindTransformFeedback\", [t.uint32, t.uint32], t.void);\n\nconst glBindVertexArray = t.bind(LIB, \"glBindVertexArray\", [t.uint32], t.void);\n\nconst glBindVertexBuffer = t.bind(LIB, \"glBindVertexBuffer\", [t.uint32, t.uint32, t.int64, t.int32], t.void);\n\nconst glBindVertexBuffers = t.bind(LIB, \"glBindVertexBuffers\", [t.uint32, t.int32, t.array(t.uint32), t.array(t.int64), t.array(t.int32)], t.void);\n\nconst glBlendColor = t.bind(LIB, \"glBlendColor\", [t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glBlendEquation = t.bind(LIB, \"glBlendEquation\", [t.uint32], t.void);\n\nconst glBlendEquationi = t.bind(LIB, \"glBlendEquationi\", [t.uint32, t.uint32], t.void);\n\nconst glBlendEquationSeparate = t.bind(LIB, \"glBlendEquationSeparate\", [t.uint32, t.uint32], t.void);\n\nconst glBlendEquationSeparatei = t.bind(LIB, \"glBlendEquationSeparatei\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBlendFunc = t.bind(LIB, \"glBlendFunc\", [t.uint32, t.uint32], t.void);\n\nconst glBlendFunci = t.bind(LIB, \"glBlendFunci\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBlendFuncSeparate = t.bind(LIB, \"glBlendFuncSeparate\", [t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBlendFuncSeparatei = t.bind(LIB, \"glBlendFuncSeparatei\", [t.uint32, t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glBlitFramebuffer = t.bind(LIB, \"glBlitFramebuffer\", [t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glBlitNamedFramebuffer = t.bind(LIB, \"glBlitNamedFramebuffer\", [t.uint32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glBufferData = t.bind(LIB, \"glBufferData\", [t.uint32, t.int64, t.buffer, t.uint32], t.void);\n\nconst glBufferStorage = t.bind(LIB, \"glBufferStorage\", [t.uint32, t.int64, t.buffer, t.uint32], t.void);\n\nconst glBufferSubData = t.bind(LIB, \"glBufferSubData\", [t.uint32, t.int64, t.int64, t.buffer], t.void);\n\nconst glCheckFramebufferStatus = t.bind(LIB, \"glCheckFramebufferStatus\", [t.uint32], t.uint32);\n\nconst glCheckNamedFramebufferStatus = t.bind(LIB, \"glCheckNamedFramebufferStatus\", [t.uint32, t.uint32], t.uint32);\n\nconst glClampColor = t.bind(LIB, \"glClampColor\", [t.uint32, t.uint32], t.void);\n\nconst glClear = t.bind(LIB, \"glClear\", [t.uint32], t.void);\n\nconst glClearBufferData = t.bind(LIB, \"glClearBufferData\", [t.uint32, t.uint32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClearBufferfi = t.bind(LIB, \"glClearBufferfi\", [t.uint32, t.int32, t.float32, t.int32], t.void);\n\nconst glClearBufferfv = t.bind(LIB, \"glClearBufferfv\", [t.uint32, t.int32, t.array(t.float32)], t.void);\n\nconst glClearBufferiv = t.bind(LIB, \"glClearBufferiv\", [t.uint32, t.int32, t.array(t.int32)], t.void);\n\nconst glClearBufferSubData = t.bind(LIB, \"glClearBufferSubData\", [t.uint32, t.uint32, t.int64, t.int64, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClearBufferuiv = t.bind(LIB, \"glClearBufferuiv\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glClearColor = t.bind(LIB, \"glClearColor\", [t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glClearDepth = t.bind(LIB, \"glClearDepth\", [t.float64], t.void);\n\nconst glClearDepthf = t.bind(LIB, \"glClearDepthf\", [t.float32], t.void);\n\nconst glClearNamedBufferData = t.bind(LIB, \"glClearNamedBufferData\", [t.uint32, t.uint32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClearNamedBufferSubData = t.bind(LIB, \"glClearNamedBufferSubData\", [t.uint32, t.uint32, t.int64, t.int64, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClearNamedFramebufferfi = t.bind(LIB, \"glClearNamedFramebufferfi\", [t.uint32, t.uint32, t.int32, t.float32, t.int32], t.void);\n\nconst glClearNamedFramebufferfv = t.bind(LIB, \"glClearNamedFramebufferfv\", [t.uint32, t.uint32, t.int32, t.array(t.float32)], t.void);\n\nconst glClearNamedFramebufferiv = t.bind(LIB, \"glClearNamedFramebufferiv\", [t.uint32, t.uint32, t.int32, t.array(t.int32)], t.void);\n\nconst glClearNamedFramebufferuiv = t.bind(LIB, \"glClearNamedFramebufferuiv\", [t.uint32, t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glClearStencil = t.bind(LIB, \"glClearStencil\", [t.int32], t.void);\n\nconst glClearTexImage = t.bind(LIB, \"glClearTexImage\", [t.uint32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClearTexSubImage = t.bind(LIB, \"glClearTexSubImage\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glClientWaitSync = t.bind(LIB, \"glClientWaitSync\", [t.struct(\"borrowed\"), t.uint32, t.uint64], t.uint32);\n\nconst glClipControl = t.bind(LIB, \"glClipControl\", [t.uint32, t.uint32], t.void);\n\nconst glColorMask = t.bind(LIB, \"glColorMask\", [t.boolean, t.boolean, t.boolean, t.boolean], t.void);\n\nconst glColorMaski = t.bind(LIB, \"glColorMaski\", [t.uint32, t.boolean, t.boolean, t.boolean, t.boolean], t.void);\n\nconst glCompileShader = t.bind(LIB, \"glCompileShader\", [t.uint32], t.void);\n\nconst glCompressedTexImage1D = t.bind(LIB, \"glCompressedTexImage1D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.buffer], t.void);\n\nconst glCompressedTexImage2D = t.bind(LIB, \"glCompressedTexImage2D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.buffer], t.void);\n\nconst glCompressedTexImage3D = t.bind(LIB, \"glCompressedTexImage3D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.buffer], t.void);\n\nconst glCompressedTexSubImage1D = t.bind(LIB, \"glCompressedTexSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCompressedTexSubImage2D = t.bind(LIB, \"glCompressedTexSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCompressedTexSubImage3D = t.bind(LIB, \"glCompressedTexSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCompressedTextureSubImage1D = t.bind(LIB, \"glCompressedTextureSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCompressedTextureSubImage2D = t.bind(LIB, \"glCompressedTextureSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCompressedTextureSubImage3D = t.bind(LIB, \"glCompressedTextureSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glCopyBufferSubData = t.bind(LIB, \"glCopyBufferSubData\", [t.uint32, t.uint32, t.int64, t.int64, t.int64], t.void);\n\nconst glCopyImageSubData = t.bind(LIB, \"glCopyImageSubData\", [t.uint32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyNamedBufferSubData = t.bind(LIB, \"glCopyNamedBufferSubData\", [t.uint32, t.uint32, t.int64, t.int64, t.int64], t.void);\n\nconst glCopyTexImage1D = t.bind(LIB, \"glCopyTexImage1D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTexImage2D = t.bind(LIB, \"glCopyTexImage2D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTexSubImage1D = t.bind(LIB, \"glCopyTexSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTexSubImage2D = t.bind(LIB, \"glCopyTexSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTexSubImage3D = t.bind(LIB, \"glCopyTexSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTextureSubImage1D = t.bind(LIB, \"glCopyTextureSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTextureSubImage2D = t.bind(LIB, \"glCopyTextureSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCopyTextureSubImage3D = t.bind(LIB, \"glCopyTextureSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glCreateBuffers = t.bind(LIB, \"glCreateBuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateFramebuffers = t.bind(LIB, \"glCreateFramebuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateProgram = t.bind(LIB, \"glCreateProgram\", [], t.uint32);\n\nconst glCreateProgramPipelines = t.bind(LIB, \"glCreateProgramPipelines\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateQueries = t.bind(LIB, \"glCreateQueries\", [t.uint32, t.int32, t.ref(t.sizedArray(t.uint32, 1))], t.void);\n\nconst glCreateRenderbuffers = t.bind(LIB, \"glCreateRenderbuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateSamplers = t.bind(LIB, \"glCreateSamplers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateShader = t.bind(LIB, \"glCreateShader\", [t.uint32], t.uint32);\n\nconst glCreateShaderProgramv = t.bind(LIB, \"glCreateShaderProgramv\", [t.uint32, t.int32, t.array(t.string(\"borrowed\"))], t.uint32);\n\nconst glCreateTextures = t.bind(LIB, \"glCreateTextures\", [t.uint32, t.int32, t.ref(t.sizedArray(t.uint32, 1))], t.void);\n\nconst glCreateTransformFeedbacks = t.bind(LIB, \"glCreateTransformFeedbacks\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCreateVertexArrays = t.bind(LIB, \"glCreateVertexArrays\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glCullFace = t.bind(LIB, \"glCullFace\", [t.uint32], t.void);\n\nconst glDebugMessageControl = t.bind(LIB, \"glDebugMessageControl\", [t.uint32, t.uint32, t.uint32, t.int32, t.array(t.uint32), t.boolean], t.void);\n\nconst glDebugMessageInsert = t.bind(LIB, \"glDebugMessageInsert\", [t.uint32, t.uint32, t.uint32, t.uint32, t.int32, t.string(\"borrowed\")], t.void);\n\nconst glDeleteBuffers = t.bind(LIB, \"glDeleteBuffers\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteFramebuffers = t.bind(LIB, \"glDeleteFramebuffers\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteProgram = t.bind(LIB, \"glDeleteProgram\", [t.uint32], t.void);\n\nconst glDeleteProgramPipelines = t.bind(LIB, \"glDeleteProgramPipelines\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteQueries = t.bind(LIB, \"glDeleteQueries\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteRenderbuffers = t.bind(LIB, \"glDeleteRenderbuffers\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteSamplers = t.bind(LIB, \"glDeleteSamplers\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteShader = t.bind(LIB, \"glDeleteShader\", [t.uint32], t.void);\n\nconst glDeleteSync = t.bind(LIB, \"glDeleteSync\", [t.struct(\"borrowed\")], t.void);\n\nconst glDeleteTextures = t.bind(LIB, \"glDeleteTextures\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteTransformFeedbacks = t.bind(LIB, \"glDeleteTransformFeedbacks\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDeleteVertexArrays = t.bind(LIB, \"glDeleteVertexArrays\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDepthFunc = t.bind(LIB, \"glDepthFunc\", [t.uint32], t.void);\n\nconst glDepthMask = t.bind(LIB, \"glDepthMask\", [t.boolean], t.void);\n\nconst glDepthRange = t.bind(LIB, \"glDepthRange\", [t.float64, t.float64], t.void);\n\nconst glDepthRangeArrayv = t.bind(LIB, \"glDepthRangeArrayv\", [t.uint32, t.int32, t.array(t.float64)], t.void);\n\nconst glDepthRangef = t.bind(LIB, \"glDepthRangef\", [t.float32, t.float32], t.void);\n\nconst glDepthRangeIndexed = t.bind(LIB, \"glDepthRangeIndexed\", [t.uint32, t.float64, t.float64], t.void);\n\nconst glDetachShader = t.bind(LIB, \"glDetachShader\", [t.uint32, t.uint32], t.void);\n\nconst glDisable = t.bind(LIB, \"glDisable\", [t.uint32], t.void);\n\nconst glDisablei = t.bind(LIB, \"glDisablei\", [t.uint32, t.uint32], t.void);\n\nconst glDisableVertexArrayAttrib = t.bind(LIB, \"glDisableVertexArrayAttrib\", [t.uint32, t.uint32], t.void);\n\nconst glDisableVertexAttribArray = t.bind(LIB, \"glDisableVertexAttribArray\", [t.uint32], t.void);\n\nconst glDispatchCompute = t.bind(LIB, \"glDispatchCompute\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glDispatchComputeIndirect = t.bind(LIB, \"glDispatchComputeIndirect\", [t.int64], t.void);\n\nconst glDrawArrays = t.bind(LIB, \"glDrawArrays\", [t.uint32, t.int32, t.int32], t.void);\n\nconst glDrawArraysIndirect = t.bind(LIB, \"glDrawArraysIndirect\", [t.uint32, t.uint64], t.void);\n\nconst glDrawArraysInstanced = t.bind(LIB, \"glDrawArraysInstanced\", [t.uint32, t.int32, t.int32, t.int32], t.void);\n\nconst glDrawArraysInstancedBaseInstance = t.bind(LIB, \"glDrawArraysInstancedBaseInstance\", [t.uint32, t.int32, t.int32, t.int32, t.uint32], t.void);\n\nconst glDrawBuffer = t.bind(LIB, \"glDrawBuffer\", [t.uint32], t.void);\n\nconst glDrawBuffers = t.bind(LIB, \"glDrawBuffers\", [t.int32, t.array(t.uint32)], t.void);\n\nconst glDrawElements = t.bind(LIB, \"glDrawElements\", [t.uint32, t.int32, t.uint32, t.uint64], t.void);\n\nconst glDrawElementsBaseVertex = t.bind(LIB, \"glDrawElementsBaseVertex\", [t.uint32, t.int32, t.uint32, t.uint64, t.int32], t.void);\n\nconst glDrawElementsIndirect = t.bind(LIB, \"glDrawElementsIndirect\", [t.uint32, t.uint32, t.uint64], t.void);\n\nconst glDrawElementsInstanced = t.bind(LIB, \"glDrawElementsInstanced\", [t.uint32, t.int32, t.uint32, t.uint64, t.int32], t.void);\n\nconst glDrawElementsInstancedBaseInstance = t.bind(LIB, \"glDrawElementsInstancedBaseInstance\", [t.uint32, t.int32, t.uint32, t.uint64, t.int32, t.uint32], t.void);\n\nconst glDrawElementsInstancedBaseVertex = t.bind(LIB, \"glDrawElementsInstancedBaseVertex\", [t.uint32, t.int32, t.uint32, t.uint64, t.int32, t.int32], t.void);\n\nconst glDrawElementsInstancedBaseVertexBaseInstance = t.bind(LIB, \"glDrawElementsInstancedBaseVertexBaseInstance\", [t.uint32, t.int32, t.uint32, t.uint64, t.int32, t.int32, t.uint32], t.void);\n\nconst glDrawRangeElements = t.bind(LIB, \"glDrawRangeElements\", [t.uint32, t.uint32, t.uint32, t.int32, t.uint32, t.uint64], t.void);\n\nconst glDrawRangeElementsBaseVertex = t.bind(LIB, \"glDrawRangeElementsBaseVertex\", [t.uint32, t.uint32, t.uint32, t.int32, t.uint32, t.uint64, t.int32], t.void);\n\nconst glDrawTransformFeedback = t.bind(LIB, \"glDrawTransformFeedback\", [t.uint32, t.uint32], t.void);\n\nconst glDrawTransformFeedbackInstanced = t.bind(LIB, \"glDrawTransformFeedbackInstanced\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glDrawTransformFeedbackStream = t.bind(LIB, \"glDrawTransformFeedbackStream\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glDrawTransformFeedbackStreamInstanced = t.bind(LIB, \"glDrawTransformFeedbackStreamInstanced\", [t.uint32, t.uint32, t.uint32, t.int32], t.void);\n\nconst glEnable = t.bind(LIB, \"glEnable\", [t.uint32], t.void);\n\nconst glEnablei = t.bind(LIB, \"glEnablei\", [t.uint32, t.uint32], t.void);\n\nconst glEnableVertexArrayAttrib = t.bind(LIB, \"glEnableVertexArrayAttrib\", [t.uint32, t.uint32], t.void);\n\nconst glEnableVertexAttribArray = t.bind(LIB, \"glEnableVertexAttribArray\", [t.uint32], t.void);\n\nconst glEndConditionalRender = t.bind(LIB, \"glEndConditionalRender\", [], t.void);\n\nconst glEndQuery = t.bind(LIB, \"glEndQuery\", [t.uint32], t.void);\n\nconst glEndQueryIndexed = t.bind(LIB, \"glEndQueryIndexed\", [t.uint32, t.uint32], t.void);\n\nconst glEndTransformFeedback = t.bind(LIB, \"glEndTransformFeedback\", [], t.void);\n\nconst glFenceSync = t.bind(LIB, \"glFenceSync\", [t.uint32, t.uint32], t.struct(\"borrowed\"));\n\nconst glFinish = t.bind(LIB, \"glFinish\", [], t.void);\n\nconst glFlush = t.bind(LIB, \"glFlush\", [], t.void);\n\nconst glFlushMappedBufferRange = t.bind(LIB, \"glFlushMappedBufferRange\", [t.uint32, t.int64, t.int64], t.void);\n\nconst glFlushMappedNamedBufferRange = t.bind(LIB, \"glFlushMappedNamedBufferRange\", [t.uint32, t.int64, t.int64], t.void);\n\nconst glFramebufferParameteri = t.bind(LIB, \"glFramebufferParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glFramebufferRenderbuffer = t.bind(LIB, \"glFramebufferRenderbuffer\", [t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glFramebufferTexture = t.bind(LIB, \"glFramebufferTexture\", [t.uint32, t.uint32, t.uint32, t.int32], t.void);\n\nconst glFramebufferTexture1D = t.bind(LIB, \"glFramebufferTexture1D\", [t.uint32, t.uint32, t.uint32, t.uint32, t.int32], t.void);\n\nconst glFramebufferTexture2D = t.bind(LIB, \"glFramebufferTexture2D\", [t.uint32, t.uint32, t.uint32, t.uint32, t.int32], t.void);\n\nconst glFramebufferTexture3D = t.bind(LIB, \"glFramebufferTexture3D\", [t.uint32, t.uint32, t.uint32, t.uint32, t.int32, t.int32], t.void);\n\nconst glFramebufferTextureLayer = t.bind(LIB, \"glFramebufferTextureLayer\", [t.uint32, t.uint32, t.uint32, t.int32, t.int32], t.void);\n\nconst glFrontFace = t.bind(LIB, \"glFrontFace\", [t.uint32], t.void);\n\nconst glGenBuffers = t.bind(LIB, \"glGenBuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenerateMipmap = t.bind(LIB, \"glGenerateMipmap\", [t.uint32], t.void);\n\nconst glGenerateTextureMipmap = t.bind(LIB, \"glGenerateTextureMipmap\", [t.uint32], t.void);\n\nconst glGenFramebuffers = t.bind(LIB, \"glGenFramebuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenProgramPipelines = t.bind(LIB, \"glGenProgramPipelines\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenQueries = t.bind(LIB, \"glGenQueries\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenRenderbuffers = t.bind(LIB, \"glGenRenderbuffers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenSamplers = t.bind(LIB, \"glGenSamplers\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenTextures = t.bind(LIB, \"glGenTextures\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenTransformFeedbacks = t.bind(LIB, \"glGenTransformFeedbacks\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGenVertexArrays = t.bind(LIB, \"glGenVertexArrays\", [t.int32, t.ref(t.sizedArray(t.uint32, 0))], t.void);\n\nconst glGetAttachedShaders = t.bind(LIB, \"glGetAttachedShaders\", [t.uint32, t.int32, t.ref(t.int32), t.ref(t.sizedArray(t.uint32, 1))], t.void);\n\nconst glGetAttribLocation = t.bind(LIB, \"glGetAttribLocation\", [t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetBufferParameteri64v = t.bind(LIB, \"glGetBufferParameteri64v\", [t.uint32, t.uint32, t.ref(t.int64)], t.void);\n\nconst glGetBufferParameteriv = t.bind(LIB, \"glGetBufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetBufferSubData = t.bind(LIB, \"glGetBufferSubData\", [t.uint32, t.int64, t.int64, t.buffer], t.void);\n\nconst glGetCompressedTexImage = t.bind(LIB, \"glGetCompressedTexImage\", [t.uint32, t.int32, t.buffer], t.void);\n\nconst glGetCompressedTextureImage = t.bind(LIB, \"glGetCompressedTextureImage\", [t.uint32, t.int32, t.int32, t.buffer], t.void);\n\nconst glGetCompressedTextureSubImage = t.bind(LIB, \"glGetCompressedTextureSubImage\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.buffer], t.void);\n\nconst glGetError = t.bind(LIB, \"glGetError\", [], t.uint32);\n\nconst glGetFragDataIndex = t.bind(LIB, \"glGetFragDataIndex\", [t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetFragDataLocation = t.bind(LIB, \"glGetFragDataLocation\", [t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetFramebufferAttachmentParameteriv = t.bind(LIB, \"glGetFramebufferAttachmentParameteriv\", [t.uint32, t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetFramebufferParameteriv = t.bind(LIB, \"glGetFramebufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetGraphicsResetStatus = t.bind(LIB, \"glGetGraphicsResetStatus\", [], t.uint32);\n\nconst glGetInternalformati64v = t.bind(LIB, \"glGetInternalformati64v\", [t.uint32, t.uint32, t.uint32, t.int32, t.ref(t.sizedArray(t.int64, 3))], t.void);\n\nconst glGetInternalformativ = t.bind(LIB, \"glGetInternalformativ\", [t.uint32, t.uint32, t.uint32, t.int32, t.ref(t.sizedArray(t.int32, 3))], t.void);\n\nconst glGetNamedBufferParameteri64v = t.bind(LIB, \"glGetNamedBufferParameteri64v\", [t.uint32, t.uint32, t.ref(t.int64)], t.void);\n\nconst glGetNamedBufferParameteriv = t.bind(LIB, \"glGetNamedBufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetNamedBufferSubData = t.bind(LIB, \"glGetNamedBufferSubData\", [t.uint32, t.int64, t.int64, t.buffer], t.void);\n\nconst glGetNamedFramebufferAttachmentParameteriv = t.bind(LIB, \"glGetNamedFramebufferAttachmentParameteriv\", [t.uint32, t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetNamedFramebufferParameteriv = t.bind(LIB, \"glGetNamedFramebufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetNamedRenderbufferParameteriv = t.bind(LIB, \"glGetNamedRenderbufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetnCompressedTexImage = t.bind(LIB, \"glGetnCompressedTexImage\", [t.uint32, t.int32, t.int32, t.buffer], t.void);\n\nconst glGetnTexImage = t.bind(LIB, \"glGetnTexImage\", [t.uint32, t.int32, t.uint32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glGetProgramBinary = t.bind(LIB, \"glGetProgramBinary\", [t.uint32, t.int32, t.ref(t.int32), t.ref(t.uint32), t.buffer], t.void);\n\nconst glGetProgramiv = t.bind(LIB, \"glGetProgramiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetProgramPipelineiv = t.bind(LIB, \"glGetProgramPipelineiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetProgramResourceIndex = t.bind(LIB, \"glGetProgramResourceIndex\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.uint32);\n\nconst glGetProgramResourceiv = t.bind(LIB, \"glGetProgramResourceiv\", [t.uint32, t.uint32, t.uint32, t.int32, t.array(t.uint32), t.int32, t.ref(t.int32), t.ref(t.sizedArray(t.int32, 5))], t.void);\n\nconst glGetProgramResourceLocation = t.bind(LIB, \"glGetProgramResourceLocation\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetProgramResourceLocationIndex = t.bind(LIB, \"glGetProgramResourceLocationIndex\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetProgramStageiv = t.bind(LIB, \"glGetProgramStageiv\", [t.uint32, t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetQueryBufferObjecti64v = t.bind(LIB, \"glGetQueryBufferObjecti64v\", [t.uint32, t.uint32, t.uint32, t.int64], t.void);\n\nconst glGetQueryBufferObjectiv = t.bind(LIB, \"glGetQueryBufferObjectiv\", [t.uint32, t.uint32, t.uint32, t.int64], t.void);\n\nconst glGetQueryBufferObjectui64v = t.bind(LIB, \"glGetQueryBufferObjectui64v\", [t.uint32, t.uint32, t.uint32, t.int64], t.void);\n\nconst glGetQueryBufferObjectuiv = t.bind(LIB, \"glGetQueryBufferObjectuiv\", [t.uint32, t.uint32, t.uint32, t.int64], t.void);\n\nconst glGetQueryiv = t.bind(LIB, \"glGetQueryiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetQueryObjecti64v = t.bind(LIB, \"glGetQueryObjecti64v\", [t.uint32, t.uint32, t.ref(t.int64)], t.void);\n\nconst glGetQueryObjectiv = t.bind(LIB, \"glGetQueryObjectiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetQueryObjectui64v = t.bind(LIB, \"glGetQueryObjectui64v\", [t.uint32, t.uint32, t.ref(t.uint64)], t.void);\n\nconst glGetQueryObjectuiv = t.bind(LIB, \"glGetQueryObjectuiv\", [t.uint32, t.uint32, t.ref(t.uint32)], t.void);\n\nconst glGetRenderbufferParameteriv = t.bind(LIB, \"glGetRenderbufferParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetShaderiv = t.bind(LIB, \"glGetShaderiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetShaderPrecisionFormat = t.bind(LIB, \"glGetShaderPrecisionFormat\", [t.uint32, t.uint32, t.ref(t.fixedArray(t.int32, 2)), t.ref(t.int32)], t.void);\n\nconst glGetString = t.bind(LIB, \"glGetString\", [t.uint32], t.string(\"borrowed\"));\n\nconst glGetStringi = t.bind(LIB, \"glGetStringi\", [t.uint32, t.uint32], t.string(\"borrowed\"));\n\nconst glGetSubroutineIndex = t.bind(LIB, \"glGetSubroutineIndex\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.uint32);\n\nconst glGetSubroutineUniformLocation = t.bind(LIB, \"glGetSubroutineUniformLocation\", [t.uint32, t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetSynciv = t.bind(LIB, \"glGetSynciv\", [t.struct(\"borrowed\"), t.uint32, t.int32, t.ref(t.int32), t.ref(t.sizedArray(t.int32, 2))], t.void);\n\nconst glGetTexImage = t.bind(LIB, \"glGetTexImage\", [t.uint32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glGetTextureImage = t.bind(LIB, \"glGetTextureImage\", [t.uint32, t.int32, t.uint32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glGetTextureLevelParameterfv = t.bind(LIB, \"glGetTextureLevelParameterfv\", [t.uint32, t.int32, t.uint32, t.ref(t.float32)], t.void);\n\nconst glGetTextureLevelParameteriv = t.bind(LIB, \"glGetTextureLevelParameteriv\", [t.uint32, t.int32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetTextureParameterfv = t.bind(LIB, \"glGetTextureParameterfv\", [t.uint32, t.uint32, t.ref(t.float32)], t.void);\n\nconst glGetTextureParameterIiv = t.bind(LIB, \"glGetTextureParameterIiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetTextureParameterIuiv = t.bind(LIB, \"glGetTextureParameterIuiv\", [t.uint32, t.uint32, t.ref(t.uint32)], t.void);\n\nconst glGetTextureParameteriv = t.bind(LIB, \"glGetTextureParameteriv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetTextureSubImage = t.bind(LIB, \"glGetTextureSubImage\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glGetTransformFeedbackiV = t.bind(LIB, \"glGetTransformFeedbacki_v\", [t.uint32, t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetTransformFeedbacki64V = t.bind(LIB, \"glGetTransformFeedbacki64_v\", [t.uint32, t.uint32, t.uint32, t.ref(t.int64)], t.void);\n\nconst glGetTransformFeedbackiv = t.bind(LIB, \"glGetTransformFeedbackiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetUniformBlockIndex = t.bind(LIB, \"glGetUniformBlockIndex\", [t.uint32, t.string(\"borrowed\")], t.uint32);\n\nconst glGetUniformLocation = t.bind(LIB, \"glGetUniformLocation\", [t.uint32, t.string(\"borrowed\")], t.int32);\n\nconst glGetUniformSubroutineuiv = t.bind(LIB, \"glGetUniformSubroutineuiv\", [t.uint32, t.int32, t.ref(t.uint32)], t.void);\n\nconst glGetVertexArrayIndexed64iv = t.bind(LIB, \"glGetVertexArrayIndexed64iv\", [t.uint32, t.uint32, t.uint32, t.ref(t.int64)], t.void);\n\nconst glGetVertexArrayIndexediv = t.bind(LIB, \"glGetVertexArrayIndexediv\", [t.uint32, t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetVertexArrayiv = t.bind(LIB, \"glGetVertexArrayiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetVertexAttribdv = t.bind(LIB, \"glGetVertexAttribdv\", [t.uint32, t.uint32, t.ref(t.fixedArray(t.float64, 4))], t.void);\n\nconst glGetVertexAttribfv = t.bind(LIB, \"glGetVertexAttribfv\", [t.uint32, t.uint32, t.ref(t.fixedArray(t.float32, 4))], t.void);\n\nconst glGetVertexAttribIiv = t.bind(LIB, \"glGetVertexAttribIiv\", [t.uint32, t.uint32, t.ref(t.int32)], t.void);\n\nconst glGetVertexAttribIuiv = t.bind(LIB, \"glGetVertexAttribIuiv\", [t.uint32, t.uint32, t.ref(t.uint32)], t.void);\n\nconst glGetVertexAttribiv = t.bind(LIB, \"glGetVertexAttribiv\", [t.uint32, t.uint32, t.ref(t.fixedArray(t.int32, 4))], t.void);\n\nconst glHint = t.bind(LIB, \"glHint\", [t.uint32, t.uint32], t.void);\n\nconst glInvalidateBufferData = t.bind(LIB, \"glInvalidateBufferData\", [t.uint32], t.void);\n\nconst glInvalidateBufferSubData = t.bind(LIB, \"glInvalidateBufferSubData\", [t.uint32, t.int64, t.int64], t.void);\n\nconst glInvalidateFramebuffer = t.bind(LIB, \"glInvalidateFramebuffer\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glInvalidateNamedFramebufferData = t.bind(LIB, \"glInvalidateNamedFramebufferData\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glInvalidateNamedFramebufferSubData = t.bind(LIB, \"glInvalidateNamedFramebufferSubData\", [t.uint32, t.int32, t.array(t.uint32), t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glInvalidateSubFramebuffer = t.bind(LIB, \"glInvalidateSubFramebuffer\", [t.uint32, t.int32, t.array(t.uint32), t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glInvalidateTexImage = t.bind(LIB, \"glInvalidateTexImage\", [t.uint32, t.int32], t.void);\n\nconst glInvalidateTexSubImage = t.bind(LIB, \"glInvalidateTexSubImage\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glIsBuffer = t.bind(LIB, \"glIsBuffer\", [t.uint32], t.uint8);\n\nconst glIsEnabled = t.bind(LIB, \"glIsEnabled\", [t.uint32], t.uint8);\n\nconst glIsEnabledi = t.bind(LIB, \"glIsEnabledi\", [t.uint32, t.uint32], t.uint8);\n\nconst glIsFramebuffer = t.bind(LIB, \"glIsFramebuffer\", [t.uint32], t.uint8);\n\nconst glIsProgram = t.bind(LIB, \"glIsProgram\", [t.uint32], t.uint8);\n\nconst glIsProgramPipeline = t.bind(LIB, \"glIsProgramPipeline\", [t.uint32], t.uint8);\n\nconst glIsQuery = t.bind(LIB, \"glIsQuery\", [t.uint32], t.uint8);\n\nconst glIsRenderbuffer = t.bind(LIB, \"glIsRenderbuffer\", [t.uint32], t.uint8);\n\nconst glIsSampler = t.bind(LIB, \"glIsSampler\", [t.uint32], t.uint8);\n\nconst glIsShader = t.bind(LIB, \"glIsShader\", [t.uint32], t.uint8);\n\nconst glIsSync = t.bind(LIB, \"glIsSync\", [t.struct(\"borrowed\")], t.uint8);\n\nconst glIsTexture = t.bind(LIB, \"glIsTexture\", [t.uint32], t.uint8);\n\nconst glIsTransformFeedback = t.bind(LIB, \"glIsTransformFeedback\", [t.uint32], t.uint8);\n\nconst glIsVertexArray = t.bind(LIB, \"glIsVertexArray\", [t.uint32], t.uint8);\n\nconst glLineWidth = t.bind(LIB, \"glLineWidth\", [t.float32], t.void);\n\nconst glLinkProgram = t.bind(LIB, \"glLinkProgram\", [t.uint32], t.void);\n\nconst glLogicOp = t.bind(LIB, \"glLogicOp\", [t.uint32], t.void);\n\nconst glMapBuffer = t.bind(LIB, \"glMapBuffer\", [t.uint32, t.uint32], t.struct(\"borrowed\"));\n\nconst glMapBufferRange = t.bind(LIB, \"glMapBufferRange\", [t.uint32, t.int64, t.int64, t.uint32], t.struct(\"borrowed\"));\n\nconst glMapNamedBuffer = t.bind(LIB, \"glMapNamedBuffer\", [t.uint32, t.uint32], t.struct(\"borrowed\"));\n\nconst glMapNamedBufferRange = t.bind(LIB, \"glMapNamedBufferRange\", [t.uint32, t.int64, t.int64, t.uint32], t.struct(\"borrowed\"));\n\nconst glMemoryBarrier = t.bind(LIB, \"glMemoryBarrier\", [t.uint32], t.void);\n\nconst glMemoryBarrierByRegion = t.bind(LIB, \"glMemoryBarrierByRegion\", [t.uint32], t.void);\n\nconst glMinSampleShading = t.bind(LIB, \"glMinSampleShading\", [t.float32], t.void);\n\nconst glMultiDrawArrays = t.bind(LIB, \"glMultiDrawArrays\", [t.uint32, t.array(t.int32), t.array(t.int32), t.int32], t.void);\n\nconst glMultiDrawArraysIndirect = t.bind(LIB, \"glMultiDrawArraysIndirect\", [t.uint32, t.uint64, t.int32, t.int32], t.void);\n\nconst glMultiDrawArraysIndirectCount = t.bind(LIB, \"glMultiDrawArraysIndirectCount\", [t.uint32, t.buffer, t.int64, t.int32, t.int32], t.void);\n\nconst glMultiDrawElements = t.bind(LIB, \"glMultiDrawElements\", [t.uint32, t.array(t.int32), t.uint32, t.array(t.uint64), t.int32], t.void);\n\nconst glMultiDrawElementsBaseVertex = t.bind(LIB, \"glMultiDrawElementsBaseVertex\", [t.uint32, t.array(t.int32), t.uint32, t.array(t.uint64), t.int32, t.array(t.int32)], t.void);\n\nconst glMultiDrawElementsIndirect = t.bind(LIB, \"glMultiDrawElementsIndirect\", [t.uint32, t.uint32, t.uint64, t.int32, t.int32], t.void);\n\nconst glMultiDrawElementsIndirectCount = t.bind(LIB, \"glMultiDrawElementsIndirectCount\", [t.uint32, t.uint32, t.buffer, t.int64, t.int32, t.int32], t.void);\n\nconst glNamedBufferData = t.bind(LIB, \"glNamedBufferData\", [t.uint32, t.int64, t.buffer, t.uint32], t.void);\n\nconst glNamedBufferStorage = t.bind(LIB, \"glNamedBufferStorage\", [t.uint32, t.int64, t.buffer, t.uint32], t.void);\n\nconst glNamedBufferSubData = t.bind(LIB, \"glNamedBufferSubData\", [t.uint32, t.int64, t.int64, t.buffer], t.void);\n\nconst glNamedFramebufferDrawBuffer = t.bind(LIB, \"glNamedFramebufferDrawBuffer\", [t.uint32, t.uint32], t.void);\n\nconst glNamedFramebufferDrawBuffers = t.bind(LIB, \"glNamedFramebufferDrawBuffers\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glNamedFramebufferParameteri = t.bind(LIB, \"glNamedFramebufferParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glNamedFramebufferReadBuffer = t.bind(LIB, \"glNamedFramebufferReadBuffer\", [t.uint32, t.uint32], t.void);\n\nconst glNamedFramebufferRenderbuffer = t.bind(LIB, \"glNamedFramebufferRenderbuffer\", [t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glNamedFramebufferTexture = t.bind(LIB, \"glNamedFramebufferTexture\", [t.uint32, t.uint32, t.uint32, t.int32], t.void);\n\nconst glNamedFramebufferTextureLayer = t.bind(LIB, \"glNamedFramebufferTextureLayer\", [t.uint32, t.uint32, t.uint32, t.int32, t.int32], t.void);\n\nconst glNamedRenderbufferStorage = t.bind(LIB, \"glNamedRenderbufferStorage\", [t.uint32, t.uint32, t.int32, t.int32], t.void);\n\nconst glNamedRenderbufferStorageMultisample = t.bind(LIB, \"glNamedRenderbufferStorageMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32], t.void);\n\nconst glObjectLabel = t.bind(LIB, \"glObjectLabel\", [t.uint32, t.uint32, t.int32, t.string(\"borrowed\")], t.void);\n\nconst glObjectPtrLabel = t.bind(LIB, \"glObjectPtrLabel\", [t.buffer, t.int32, t.string(\"borrowed\")], t.void);\n\nconst glPatchParameterfv = t.bind(LIB, \"glPatchParameterfv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glPatchParameteri = t.bind(LIB, \"glPatchParameteri\", [t.uint32, t.int32], t.void);\n\nconst glPauseTransformFeedback = t.bind(LIB, \"glPauseTransformFeedback\", [], t.void);\n\nconst glPixelStoref = t.bind(LIB, \"glPixelStoref\", [t.uint32, t.float32], t.void);\n\nconst glPixelStorei = t.bind(LIB, \"glPixelStorei\", [t.uint32, t.int32], t.void);\n\nconst glPointParameterf = t.bind(LIB, \"glPointParameterf\", [t.uint32, t.float32], t.void);\n\nconst glPointParameterfv = t.bind(LIB, \"glPointParameterfv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glPointParameteri = t.bind(LIB, \"glPointParameteri\", [t.uint32, t.int32], t.void);\n\nconst glPointParameteriv = t.bind(LIB, \"glPointParameteriv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glPointSize = t.bind(LIB, \"glPointSize\", [t.float32], t.void);\n\nconst glPolygonMode = t.bind(LIB, \"glPolygonMode\", [t.uint32, t.uint32], t.void);\n\nconst glPolygonOffset = t.bind(LIB, \"glPolygonOffset\", [t.float32, t.float32], t.void);\n\nconst glPolygonOffsetClamp = t.bind(LIB, \"glPolygonOffsetClamp\", [t.float32, t.float32, t.float32], t.void);\n\nconst glPopDebugGroup = t.bind(LIB, \"glPopDebugGroup\", [], t.void);\n\nconst glPrimitiveRestartIndex = t.bind(LIB, \"glPrimitiveRestartIndex\", [t.uint32], t.void);\n\nconst glProgramBinary = t.bind(LIB, \"glProgramBinary\", [t.uint32, t.uint32, t.buffer, t.int32], t.void);\n\nconst glProgramParameteri = t.bind(LIB, \"glProgramParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glProgramUniform1d = t.bind(LIB, \"glProgramUniform1d\", [t.uint32, t.int32, t.float64], t.void);\n\nconst glProgramUniform1dv = t.bind(LIB, \"glProgramUniform1dv\", [t.uint32, t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glProgramUniform1f = t.bind(LIB, \"glProgramUniform1f\", [t.uint32, t.int32, t.float32], t.void);\n\nconst glProgramUniform1fv = t.bind(LIB, \"glProgramUniform1fv\", [t.uint32, t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glProgramUniform1i = t.bind(LIB, \"glProgramUniform1i\", [t.uint32, t.int32, t.int32], t.void);\n\nconst glProgramUniform1iv = t.bind(LIB, \"glProgramUniform1iv\", [t.uint32, t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glProgramUniform1ui = t.bind(LIB, \"glProgramUniform1ui\", [t.uint32, t.int32, t.uint32], t.void);\n\nconst glProgramUniform1uiv = t.bind(LIB, \"glProgramUniform1uiv\", [t.uint32, t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glProgramUniform2d = t.bind(LIB, \"glProgramUniform2d\", [t.uint32, t.int32, t.float64, t.float64], t.void);\n\nconst glProgramUniform2dv = t.bind(LIB, \"glProgramUniform2dv\", [t.uint32, t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glProgramUniform2f = t.bind(LIB, \"glProgramUniform2f\", [t.uint32, t.int32, t.float32, t.float32], t.void);\n\nconst glProgramUniform2fv = t.bind(LIB, \"glProgramUniform2fv\", [t.uint32, t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glProgramUniform2i = t.bind(LIB, \"glProgramUniform2i\", [t.uint32, t.int32, t.int32, t.int32], t.void);\n\nconst glProgramUniform2iv = t.bind(LIB, \"glProgramUniform2iv\", [t.uint32, t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glProgramUniform2ui = t.bind(LIB, \"glProgramUniform2ui\", [t.uint32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glProgramUniform2uiv = t.bind(LIB, \"glProgramUniform2uiv\", [t.uint32, t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glProgramUniform3d = t.bind(LIB, \"glProgramUniform3d\", [t.uint32, t.int32, t.float64, t.float64, t.float64], t.void);\n\nconst glProgramUniform3dv = t.bind(LIB, \"glProgramUniform3dv\", [t.uint32, t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glProgramUniform3f = t.bind(LIB, \"glProgramUniform3f\", [t.uint32, t.int32, t.float32, t.float32, t.float32], t.void);\n\nconst glProgramUniform3fv = t.bind(LIB, \"glProgramUniform3fv\", [t.uint32, t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glProgramUniform3i = t.bind(LIB, \"glProgramUniform3i\", [t.uint32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glProgramUniform3iv = t.bind(LIB, \"glProgramUniform3iv\", [t.uint32, t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glProgramUniform3ui = t.bind(LIB, \"glProgramUniform3ui\", [t.uint32, t.int32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glProgramUniform3uiv = t.bind(LIB, \"glProgramUniform3uiv\", [t.uint32, t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glProgramUniform4d = t.bind(LIB, \"glProgramUniform4d\", [t.uint32, t.int32, t.float64, t.float64, t.float64, t.float64], t.void);\n\nconst glProgramUniform4dv = t.bind(LIB, \"glProgramUniform4dv\", [t.uint32, t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glProgramUniform4f = t.bind(LIB, \"glProgramUniform4f\", [t.uint32, t.int32, t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glProgramUniform4fv = t.bind(LIB, \"glProgramUniform4fv\", [t.uint32, t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glProgramUniform4i = t.bind(LIB, \"glProgramUniform4i\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glProgramUniform4iv = t.bind(LIB, \"glProgramUniform4iv\", [t.uint32, t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glProgramUniform4ui = t.bind(LIB, \"glProgramUniform4ui\", [t.uint32, t.int32, t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glProgramUniform4uiv = t.bind(LIB, \"glProgramUniform4uiv\", [t.uint32, t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glProgramUniformMatrix2dv = t.bind(LIB, \"glProgramUniformMatrix2dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix2fv = t.bind(LIB, \"glProgramUniformMatrix2fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix2x3dv = t.bind(LIB, \"glProgramUniformMatrix2x3dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix2x3fv = t.bind(LIB, \"glProgramUniformMatrix2x3fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix2x4dv = t.bind(LIB, \"glProgramUniformMatrix2x4dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix2x4fv = t.bind(LIB, \"glProgramUniformMatrix2x4fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix3dv = t.bind(LIB, \"glProgramUniformMatrix3dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix3fv = t.bind(LIB, \"glProgramUniformMatrix3fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix3x2dv = t.bind(LIB, \"glProgramUniformMatrix3x2dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix3x2fv = t.bind(LIB, \"glProgramUniformMatrix3x2fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix3x4dv = t.bind(LIB, \"glProgramUniformMatrix3x4dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix3x4fv = t.bind(LIB, \"glProgramUniformMatrix3x4fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix4dv = t.bind(LIB, \"glProgramUniformMatrix4dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix4fv = t.bind(LIB, \"glProgramUniformMatrix4fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix4x2dv = t.bind(LIB, \"glProgramUniformMatrix4x2dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix4x2fv = t.bind(LIB, \"glProgramUniformMatrix4x2fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProgramUniformMatrix4x3dv = t.bind(LIB, \"glProgramUniformMatrix4x3dv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glProgramUniformMatrix4x3fv = t.bind(LIB, \"glProgramUniformMatrix4x3fv\", [t.uint32, t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glProvokingVertex = t.bind(LIB, \"glProvokingVertex\", [t.uint32], t.void);\n\nconst glPushDebugGroup = t.bind(LIB, \"glPushDebugGroup\", [t.uint32, t.uint32, t.int32, t.string(\"borrowed\")], t.void);\n\nconst glQueryCounter = t.bind(LIB, \"glQueryCounter\", [t.uint32, t.uint32], t.void);\n\nconst glReadBuffer = t.bind(LIB, \"glReadBuffer\", [t.uint32], t.void);\n\nconst glReadnPixels = t.bind(LIB, \"glReadnPixels\", [t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.int32, t.buffer], t.void);\n\nconst glReadPixels = t.bind(LIB, \"glReadPixels\", [t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glReleaseShaderCompiler = t.bind(LIB, \"glReleaseShaderCompiler\", [], t.void);\n\nconst glRenderbufferStorage = t.bind(LIB, \"glRenderbufferStorage\", [t.uint32, t.uint32, t.int32, t.int32], t.void);\n\nconst glRenderbufferStorageMultisample = t.bind(LIB, \"glRenderbufferStorageMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32], t.void);\n\nconst glResumeTransformFeedback = t.bind(LIB, \"glResumeTransformFeedback\", [], t.void);\n\nconst glSampleCoverage = t.bind(LIB, \"glSampleCoverage\", [t.float32, t.boolean], t.void);\n\nconst glSampleMaski = t.bind(LIB, \"glSampleMaski\", [t.uint32, t.uint32], t.void);\n\nconst glSamplerParameterf = t.bind(LIB, \"glSamplerParameterf\", [t.uint32, t.uint32, t.float32], t.void);\n\nconst glSamplerParameterfv = t.bind(LIB, \"glSamplerParameterfv\", [t.uint32, t.uint32, t.array(t.float32)], t.void);\n\nconst glSamplerParameteri = t.bind(LIB, \"glSamplerParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glSamplerParameterIiv = t.bind(LIB, \"glSamplerParameterIiv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glSamplerParameterIuiv = t.bind(LIB, \"glSamplerParameterIuiv\", [t.uint32, t.uint32, t.array(t.uint32)], t.void);\n\nconst glSamplerParameteriv = t.bind(LIB, \"glSamplerParameteriv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glScissor = t.bind(LIB, \"glScissor\", [t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glScissorArrayv = t.bind(LIB, \"glScissorArrayv\", [t.uint32, t.int32, t.array(t.int32)], t.void);\n\nconst glScissorIndexed = t.bind(LIB, \"glScissorIndexed\", [t.uint32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glScissorIndexedv = t.bind(LIB, \"glScissorIndexedv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glShaderBinary = t.bind(LIB, \"glShaderBinary\", [t.int32, t.array(t.uint32), t.uint32, t.buffer, t.int32], t.void);\n\nconst glShaderSource = t.bind(LIB, \"glShaderSource\", [t.uint32, t.int32, t.array(t.string(\"borrowed\")), t.array(t.int32)], t.void);\n\nconst glShaderStorageBlockBinding = t.bind(LIB, \"glShaderStorageBlockBinding\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glSpecializeShader = t.bind(LIB, \"glSpecializeShader\", [t.uint32, t.string(\"borrowed\"), t.uint32, t.array(t.uint32), t.array(t.uint32)], t.void);\n\nconst glStencilFunc = t.bind(LIB, \"glStencilFunc\", [t.uint32, t.int32, t.uint32], t.void);\n\nconst glStencilFuncSeparate = t.bind(LIB, \"glStencilFuncSeparate\", [t.uint32, t.uint32, t.int32, t.uint32], t.void);\n\nconst glStencilMask = t.bind(LIB, \"glStencilMask\", [t.uint32], t.void);\n\nconst glStencilMaskSeparate = t.bind(LIB, \"glStencilMaskSeparate\", [t.uint32, t.uint32], t.void);\n\nconst glStencilOp = t.bind(LIB, \"glStencilOp\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glStencilOpSeparate = t.bind(LIB, \"glStencilOpSeparate\", [t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glTexBuffer = t.bind(LIB, \"glTexBuffer\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glTexBufferRange = t.bind(LIB, \"glTexBufferRange\", [t.uint32, t.uint32, t.uint32, t.int64, t.int64], t.void);\n\nconst glTexImage1D = t.bind(LIB, \"glTexImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTexImage2D = t.bind(LIB, \"glTexImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTexImage2DMultisample = t.bind(LIB, \"glTexImage2DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTexImage3D = t.bind(LIB, \"glTexImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTexImage3DMultisample = t.bind(LIB, \"glTexImage3DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTexParameterf = t.bind(LIB, \"glTexParameterf\", [t.uint32, t.uint32, t.float32], t.void);\n\nconst glTexParameterfv = t.bind(LIB, \"glTexParameterfv\", [t.uint32, t.uint32, t.array(t.float32)], t.void);\n\nconst glTexParameteri = t.bind(LIB, \"glTexParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glTexParameterIiv = t.bind(LIB, \"glTexParameterIiv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glTexParameterIuiv = t.bind(LIB, \"glTexParameterIuiv\", [t.uint32, t.uint32, t.array(t.uint32)], t.void);\n\nconst glTexParameteriv = t.bind(LIB, \"glTexParameteriv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glTexStorage1D = t.bind(LIB, \"glTexStorage1D\", [t.uint32, t.int32, t.uint32, t.int32], t.void);\n\nconst glTexStorage2D = t.bind(LIB, \"glTexStorage2D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32], t.void);\n\nconst glTexStorage2DMultisample = t.bind(LIB, \"glTexStorage2DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTexStorage3D = t.bind(LIB, \"glTexStorage3D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32], t.void);\n\nconst glTexStorage3DMultisample = t.bind(LIB, \"glTexStorage3DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTexSubImage1D = t.bind(LIB, \"glTexSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTexSubImage2D = t.bind(LIB, \"glTexSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTexSubImage3D = t.bind(LIB, \"glTexSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTextureBarrier = t.bind(LIB, \"glTextureBarrier\", [], t.void);\n\nconst glTextureBuffer = t.bind(LIB, \"glTextureBuffer\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glTextureBufferRange = t.bind(LIB, \"glTextureBufferRange\", [t.uint32, t.uint32, t.uint32, t.int64, t.int64], t.void);\n\nconst glTextureParameterf = t.bind(LIB, \"glTextureParameterf\", [t.uint32, t.uint32, t.float32], t.void);\n\nconst glTextureParameterfv = t.bind(LIB, \"glTextureParameterfv\", [t.uint32, t.uint32, t.array(t.float32)], t.void);\n\nconst glTextureParameteri = t.bind(LIB, \"glTextureParameteri\", [t.uint32, t.uint32, t.int32], t.void);\n\nconst glTextureParameterIiv = t.bind(LIB, \"glTextureParameterIiv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glTextureParameterIuiv = t.bind(LIB, \"glTextureParameterIuiv\", [t.uint32, t.uint32, t.array(t.uint32)], t.void);\n\nconst glTextureParameteriv = t.bind(LIB, \"glTextureParameteriv\", [t.uint32, t.uint32, t.array(t.int32)], t.void);\n\nconst glTextureStorage1D = t.bind(LIB, \"glTextureStorage1D\", [t.uint32, t.int32, t.uint32, t.int32], t.void);\n\nconst glTextureStorage2D = t.bind(LIB, \"glTextureStorage2D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32], t.void);\n\nconst glTextureStorage2DMultisample = t.bind(LIB, \"glTextureStorage2DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTextureStorage3D = t.bind(LIB, \"glTextureStorage3D\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32], t.void);\n\nconst glTextureStorage3DMultisample = t.bind(LIB, \"glTextureStorage3DMultisample\", [t.uint32, t.int32, t.uint32, t.int32, t.int32, t.int32, t.boolean], t.void);\n\nconst glTextureSubImage1D = t.bind(LIB, \"glTextureSubImage1D\", [t.uint32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTextureSubImage2D = t.bind(LIB, \"glTextureSubImage2D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTextureSubImage3D = t.bind(LIB, \"glTextureSubImage3D\", [t.uint32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.int32, t.uint32, t.uint32, t.buffer], t.void);\n\nconst glTextureView = t.bind(LIB, \"glTextureView\", [t.uint32, t.uint32, t.uint32, t.uint32, t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glTransformFeedbackBufferBase = t.bind(LIB, \"glTransformFeedbackBufferBase\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glTransformFeedbackBufferRange = t.bind(LIB, \"glTransformFeedbackBufferRange\", [t.uint32, t.uint32, t.uint32, t.int64, t.int64], t.void);\n\nconst glTransformFeedbackVaryings = t.bind(LIB, \"glTransformFeedbackVaryings\", [t.uint32, t.int32, t.array(t.string(\"borrowed\")), t.uint32], t.void);\n\nconst glUniform1d = t.bind(LIB, \"glUniform1d\", [t.int32, t.float64], t.void);\n\nconst glUniform1dv = t.bind(LIB, \"glUniform1dv\", [t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glUniform1f = t.bind(LIB, \"glUniform1f\", [t.int32, t.float32], t.void);\n\nconst glUniform1fv = t.bind(LIB, \"glUniform1fv\", [t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glUniform1i = t.bind(LIB, \"glUniform1i\", [t.int32, t.int32], t.void);\n\nconst glUniform1iv = t.bind(LIB, \"glUniform1iv\", [t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glUniform1ui = t.bind(LIB, \"glUniform1ui\", [t.int32, t.uint32], t.void);\n\nconst glUniform1uiv = t.bind(LIB, \"glUniform1uiv\", [t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glUniform2d = t.bind(LIB, \"glUniform2d\", [t.int32, t.float64, t.float64], t.void);\n\nconst glUniform2dv = t.bind(LIB, \"glUniform2dv\", [t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glUniform2f = t.bind(LIB, \"glUniform2f\", [t.int32, t.float32, t.float32], t.void);\n\nconst glUniform2fv = t.bind(LIB, \"glUniform2fv\", [t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glUniform2i = t.bind(LIB, \"glUniform2i\", [t.int32, t.int32, t.int32], t.void);\n\nconst glUniform2iv = t.bind(LIB, \"glUniform2iv\", [t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glUniform2ui = t.bind(LIB, \"glUniform2ui\", [t.int32, t.uint32, t.uint32], t.void);\n\nconst glUniform2uiv = t.bind(LIB, \"glUniform2uiv\", [t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glUniform3d = t.bind(LIB, \"glUniform3d\", [t.int32, t.float64, t.float64, t.float64], t.void);\n\nconst glUniform3dv = t.bind(LIB, \"glUniform3dv\", [t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glUniform3f = t.bind(LIB, \"glUniform3f\", [t.int32, t.float32, t.float32, t.float32], t.void);\n\nconst glUniform3fv = t.bind(LIB, \"glUniform3fv\", [t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glUniform3i = t.bind(LIB, \"glUniform3i\", [t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glUniform3iv = t.bind(LIB, \"glUniform3iv\", [t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glUniform3ui = t.bind(LIB, \"glUniform3ui\", [t.int32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glUniform3uiv = t.bind(LIB, \"glUniform3uiv\", [t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glUniform4d = t.bind(LIB, \"glUniform4d\", [t.int32, t.float64, t.float64, t.float64, t.float64], t.void);\n\nconst glUniform4dv = t.bind(LIB, \"glUniform4dv\", [t.int32, t.int32, t.array(t.float64)], t.void);\n\nconst glUniform4f = t.bind(LIB, \"glUniform4f\", [t.int32, t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glUniform4fv = t.bind(LIB, \"glUniform4fv\", [t.int32, t.int32, t.array(t.float32)], t.void);\n\nconst glUniform4i = t.bind(LIB, \"glUniform4i\", [t.int32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glUniform4iv = t.bind(LIB, \"glUniform4iv\", [t.int32, t.int32, t.array(t.int32)], t.void);\n\nconst glUniform4ui = t.bind(LIB, \"glUniform4ui\", [t.int32, t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glUniform4uiv = t.bind(LIB, \"glUniform4uiv\", [t.int32, t.int32, t.array(t.uint32)], t.void);\n\nconst glUniformBlockBinding = t.bind(LIB, \"glUniformBlockBinding\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glUniformMatrix2dv = t.bind(LIB, \"glUniformMatrix2dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix2fv = t.bind(LIB, \"glUniformMatrix2fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix2x3dv = t.bind(LIB, \"glUniformMatrix2x3dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix2x3fv = t.bind(LIB, \"glUniformMatrix2x3fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix2x4dv = t.bind(LIB, \"glUniformMatrix2x4dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix2x4fv = t.bind(LIB, \"glUniformMatrix2x4fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix3dv = t.bind(LIB, \"glUniformMatrix3dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix3fv = t.bind(LIB, \"glUniformMatrix3fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix3x2dv = t.bind(LIB, \"glUniformMatrix3x2dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix3x2fv = t.bind(LIB, \"glUniformMatrix3x2fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix3x4dv = t.bind(LIB, \"glUniformMatrix3x4dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix3x4fv = t.bind(LIB, \"glUniformMatrix3x4fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix4dv = t.bind(LIB, \"glUniformMatrix4dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix4fv = t.bind(LIB, \"glUniformMatrix4fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix4x2dv = t.bind(LIB, \"glUniformMatrix4x2dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix4x2fv = t.bind(LIB, \"glUniformMatrix4x2fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformMatrix4x3dv = t.bind(LIB, \"glUniformMatrix4x3dv\", [t.int32, t.int32, t.boolean, t.array(t.float64)], t.void);\n\nconst glUniformMatrix4x3fv = t.bind(LIB, \"glUniformMatrix4x3fv\", [t.int32, t.int32, t.boolean, t.array(t.float32)], t.void);\n\nconst glUniformSubroutinesuiv = t.bind(LIB, \"glUniformSubroutinesuiv\", [t.uint32, t.int32, t.array(t.uint32)], t.void);\n\nconst glUnmapBuffer = t.bind(LIB, \"glUnmapBuffer\", [t.uint32], t.uint8);\n\nconst glUnmapNamedBuffer = t.bind(LIB, \"glUnmapNamedBuffer\", [t.uint32], t.uint8);\n\nconst glUseProgram = t.bind(LIB, \"glUseProgram\", [t.uint32], t.void);\n\nconst glUseProgramStages = t.bind(LIB, \"glUseProgramStages\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glValidateProgram = t.bind(LIB, \"glValidateProgram\", [t.uint32], t.void);\n\nconst glValidateProgramPipeline = t.bind(LIB, \"glValidateProgramPipeline\", [t.uint32], t.void);\n\nconst glVertexArrayAttribBinding = t.bind(LIB, \"glVertexArrayAttribBinding\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glVertexArrayAttribFormat = t.bind(LIB, \"glVertexArrayAttribFormat\", [t.uint32, t.uint32, t.int32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexArrayAttribIFormat = t.bind(LIB, \"glVertexArrayAttribIFormat\", [t.uint32, t.uint32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glVertexArrayAttribLFormat = t.bind(LIB, \"glVertexArrayAttribLFormat\", [t.uint32, t.uint32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glVertexArrayBindingDivisor = t.bind(LIB, \"glVertexArrayBindingDivisor\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glVertexArrayElementBuffer = t.bind(LIB, \"glVertexArrayElementBuffer\", [t.uint32, t.uint32], t.void);\n\nconst glVertexArrayVertexBuffer = t.bind(LIB, \"glVertexArrayVertexBuffer\", [t.uint32, t.uint32, t.uint32, t.int64, t.int32], t.void);\n\nconst glVertexArrayVertexBuffers = t.bind(LIB, \"glVertexArrayVertexBuffers\", [t.uint32, t.uint32, t.int32, t.array(t.uint32), t.array(t.int64), t.array(t.int32)], t.void);\n\nconst glVertexAttrib1d = t.bind(LIB, \"glVertexAttrib1d\", [t.uint32, t.float64], t.void);\n\nconst glVertexAttrib1dv = t.bind(LIB, \"glVertexAttrib1dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttrib1f = t.bind(LIB, \"glVertexAttrib1f\", [t.uint32, t.float32], t.void);\n\nconst glVertexAttrib1fv = t.bind(LIB, \"glVertexAttrib1fv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glVertexAttrib1s = t.bind(LIB, \"glVertexAttrib1s\", [t.uint32, t.int16], t.void);\n\nconst glVertexAttrib1sv = t.bind(LIB, \"glVertexAttrib1sv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttrib2d = t.bind(LIB, \"glVertexAttrib2d\", [t.uint32, t.float64, t.float64], t.void);\n\nconst glVertexAttrib2dv = t.bind(LIB, \"glVertexAttrib2dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttrib2f = t.bind(LIB, \"glVertexAttrib2f\", [t.uint32, t.float32, t.float32], t.void);\n\nconst glVertexAttrib2fv = t.bind(LIB, \"glVertexAttrib2fv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glVertexAttrib2s = t.bind(LIB, \"glVertexAttrib2s\", [t.uint32, t.int16, t.int16], t.void);\n\nconst glVertexAttrib2sv = t.bind(LIB, \"glVertexAttrib2sv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttrib3d = t.bind(LIB, \"glVertexAttrib3d\", [t.uint32, t.float64, t.float64, t.float64], t.void);\n\nconst glVertexAttrib3dv = t.bind(LIB, \"glVertexAttrib3dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttrib3f = t.bind(LIB, \"glVertexAttrib3f\", [t.uint32, t.float32, t.float32, t.float32], t.void);\n\nconst glVertexAttrib3fv = t.bind(LIB, \"glVertexAttrib3fv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glVertexAttrib3s = t.bind(LIB, \"glVertexAttrib3s\", [t.uint32, t.int16, t.int16, t.int16], t.void);\n\nconst glVertexAttrib3sv = t.bind(LIB, \"glVertexAttrib3sv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttrib4bv = t.bind(LIB, \"glVertexAttrib4bv\", [t.uint32, t.array(t.int8)], t.void);\n\nconst glVertexAttrib4d = t.bind(LIB, \"glVertexAttrib4d\", [t.uint32, t.float64, t.float64, t.float64, t.float64], t.void);\n\nconst glVertexAttrib4dv = t.bind(LIB, \"glVertexAttrib4dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttrib4f = t.bind(LIB, \"glVertexAttrib4f\", [t.uint32, t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glVertexAttrib4fv = t.bind(LIB, \"glVertexAttrib4fv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glVertexAttrib4iv = t.bind(LIB, \"glVertexAttrib4iv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttrib4Nbv = t.bind(LIB, \"glVertexAttrib4Nbv\", [t.uint32, t.array(t.int8)], t.void);\n\nconst glVertexAttrib4Niv = t.bind(LIB, \"glVertexAttrib4Niv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttrib4Nsv = t.bind(LIB, \"glVertexAttrib4Nsv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttrib4Nub = t.bind(LIB, \"glVertexAttrib4Nub\", [t.uint32, t.uint8, t.uint8, t.uint8, t.uint8], t.void);\n\nconst glVertexAttrib4Nubv = t.bind(LIB, \"glVertexAttrib4Nubv\", [t.uint32, t.array(t.uint8)], t.void);\n\nconst glVertexAttrib4Nuiv = t.bind(LIB, \"glVertexAttrib4Nuiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttrib4Nusv = t.bind(LIB, \"glVertexAttrib4Nusv\", [t.uint32, t.array(t.uint16)], t.void);\n\nconst glVertexAttrib4s = t.bind(LIB, \"glVertexAttrib4s\", [t.uint32, t.int16, t.int16, t.int16, t.int16], t.void);\n\nconst glVertexAttrib4sv = t.bind(LIB, \"glVertexAttrib4sv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttrib4ubv = t.bind(LIB, \"glVertexAttrib4ubv\", [t.uint32, t.array(t.uint8)], t.void);\n\nconst glVertexAttrib4uiv = t.bind(LIB, \"glVertexAttrib4uiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttrib4usv = t.bind(LIB, \"glVertexAttrib4usv\", [t.uint32, t.array(t.uint16)], t.void);\n\nconst glVertexAttribBinding = t.bind(LIB, \"glVertexAttribBinding\", [t.uint32, t.uint32], t.void);\n\nconst glVertexAttribDivisor = t.bind(LIB, \"glVertexAttribDivisor\", [t.uint32, t.uint32], t.void);\n\nconst glVertexAttribFormat = t.bind(LIB, \"glVertexAttribFormat\", [t.uint32, t.int32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexAttribI1i = t.bind(LIB, \"glVertexAttribI1i\", [t.uint32, t.int32], t.void);\n\nconst glVertexAttribI1iv = t.bind(LIB, \"glVertexAttribI1iv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttribI1ui = t.bind(LIB, \"glVertexAttribI1ui\", [t.uint32, t.uint32], t.void);\n\nconst glVertexAttribI1uiv = t.bind(LIB, \"glVertexAttribI1uiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttribI2i = t.bind(LIB, \"glVertexAttribI2i\", [t.uint32, t.int32, t.int32], t.void);\n\nconst glVertexAttribI2iv = t.bind(LIB, \"glVertexAttribI2iv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttribI2ui = t.bind(LIB, \"glVertexAttribI2ui\", [t.uint32, t.uint32, t.uint32], t.void);\n\nconst glVertexAttribI2uiv = t.bind(LIB, \"glVertexAttribI2uiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttribI3i = t.bind(LIB, \"glVertexAttribI3i\", [t.uint32, t.int32, t.int32, t.int32], t.void);\n\nconst glVertexAttribI3iv = t.bind(LIB, \"glVertexAttribI3iv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttribI3ui = t.bind(LIB, \"glVertexAttribI3ui\", [t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glVertexAttribI3uiv = t.bind(LIB, \"glVertexAttribI3uiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttribI4bv = t.bind(LIB, \"glVertexAttribI4bv\", [t.uint32, t.array(t.int8)], t.void);\n\nconst glVertexAttribI4i = t.bind(LIB, \"glVertexAttribI4i\", [t.uint32, t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glVertexAttribI4iv = t.bind(LIB, \"glVertexAttribI4iv\", [t.uint32, t.array(t.int32)], t.void);\n\nconst glVertexAttribI4sv = t.bind(LIB, \"glVertexAttribI4sv\", [t.uint32, t.array(t.int16)], t.void);\n\nconst glVertexAttribI4ubv = t.bind(LIB, \"glVertexAttribI4ubv\", [t.uint32, t.array(t.uint8)], t.void);\n\nconst glVertexAttribI4ui = t.bind(LIB, \"glVertexAttribI4ui\", [t.uint32, t.uint32, t.uint32, t.uint32, t.uint32], t.void);\n\nconst glVertexAttribI4uiv = t.bind(LIB, \"glVertexAttribI4uiv\", [t.uint32, t.array(t.uint32)], t.void);\n\nconst glVertexAttribI4usv = t.bind(LIB, \"glVertexAttribI4usv\", [t.uint32, t.array(t.uint16)], t.void);\n\nconst glVertexAttribIFormat = t.bind(LIB, \"glVertexAttribIFormat\", [t.uint32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glVertexAttribIPointer = t.bind(LIB, \"glVertexAttribIPointer\", [t.uint32, t.int32, t.uint32, t.int32, t.uint64], t.void);\n\nconst glVertexAttribL1d = t.bind(LIB, \"glVertexAttribL1d\", [t.uint32, t.float64], t.void);\n\nconst glVertexAttribL1dv = t.bind(LIB, \"glVertexAttribL1dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttribL2d = t.bind(LIB, \"glVertexAttribL2d\", [t.uint32, t.float64, t.float64], t.void);\n\nconst glVertexAttribL2dv = t.bind(LIB, \"glVertexAttribL2dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttribL3d = t.bind(LIB, \"glVertexAttribL3d\", [t.uint32, t.float64, t.float64, t.float64], t.void);\n\nconst glVertexAttribL3dv = t.bind(LIB, \"glVertexAttribL3dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttribL4d = t.bind(LIB, \"glVertexAttribL4d\", [t.uint32, t.float64, t.float64, t.float64, t.float64], t.void);\n\nconst glVertexAttribL4dv = t.bind(LIB, \"glVertexAttribL4dv\", [t.uint32, t.array(t.float64)], t.void);\n\nconst glVertexAttribLFormat = t.bind(LIB, \"glVertexAttribLFormat\", [t.uint32, t.int32, t.uint32, t.uint32], t.void);\n\nconst glVertexAttribLPointer = t.bind(LIB, \"glVertexAttribLPointer\", [t.uint32, t.int32, t.uint32, t.int32, t.uint64], t.void);\n\nconst glVertexAttribP1ui = t.bind(LIB, \"glVertexAttribP1ui\", [t.uint32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexAttribP1uiv = t.bind(LIB, \"glVertexAttribP1uiv\", [t.uint32, t.uint32, t.boolean, t.array(t.uint32)], t.void);\n\nconst glVertexAttribP2ui = t.bind(LIB, \"glVertexAttribP2ui\", [t.uint32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexAttribP2uiv = t.bind(LIB, \"glVertexAttribP2uiv\", [t.uint32, t.uint32, t.boolean, t.array(t.uint32)], t.void);\n\nconst glVertexAttribP3ui = t.bind(LIB, \"glVertexAttribP3ui\", [t.uint32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexAttribP3uiv = t.bind(LIB, \"glVertexAttribP3uiv\", [t.uint32, t.uint32, t.boolean, t.array(t.uint32)], t.void);\n\nconst glVertexAttribP4ui = t.bind(LIB, \"glVertexAttribP4ui\", [t.uint32, t.uint32, t.boolean, t.uint32], t.void);\n\nconst glVertexAttribP4uiv = t.bind(LIB, \"glVertexAttribP4uiv\", [t.uint32, t.uint32, t.boolean, t.array(t.uint32)], t.void);\n\nconst glVertexAttribPointer = t.bind(LIB, \"glVertexAttribPointer\", [t.uint32, t.int32, t.uint32, t.boolean, t.int32, t.uint64], t.void);\n\nconst glVertexBindingDivisor = t.bind(LIB, \"glVertexBindingDivisor\", [t.uint32, t.uint32], t.void);\n\nconst glViewport = t.bind(LIB, \"glViewport\", [t.int32, t.int32, t.int32, t.int32], t.void);\n\nconst glViewportArrayv = t.bind(LIB, \"glViewportArrayv\", [t.uint32, t.int32, t.array(t.float32)], t.void);\n\nconst glViewportIndexedf = t.bind(LIB, \"glViewportIndexedf\", [t.uint32, t.float32, t.float32, t.float32, t.float32], t.void);\n\nconst glViewportIndexedfv = t.bind(LIB, \"glViewportIndexedfv\", [t.uint32, t.array(t.float32)], t.void);\n\nconst glWaitSync = t.bind(LIB, \"glWaitSync\", [t.struct(\"borrowed\"), t.uint32, t.uint64], t.void);\n\nconst glCreateBuffersSingle = t.bind(LIB, \"glCreateBuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateFramebuffersSingle = t.bind(LIB, \"glCreateFramebuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateProgramPipelinesSingle = t.bind(LIB, \"glCreateProgramPipelines\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateQueriesSingle = t.bind(LIB, \"glCreateQueries\", [t.uint32, t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateRenderbuffersSingle = t.bind(LIB, \"glCreateRenderbuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateSamplersSingle = t.bind(LIB, \"glCreateSamplers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateTexturesSingle = t.bind(LIB, \"glCreateTextures\", [t.uint32, t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateTransformFeedbacksSingle = t.bind(LIB, \"glCreateTransformFeedbacks\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glCreateVertexArraysSingle = t.bind(LIB, \"glCreateVertexArrays\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenBuffersSingle = t.bind(LIB, \"glGenBuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenFramebuffersSingle = t.bind(LIB, \"glGenFramebuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenProgramPipelinesSingle = t.bind(LIB, \"glGenProgramPipelines\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenQueriesSingle = t.bind(LIB, \"glGenQueries\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenRenderbuffersSingle = t.bind(LIB, \"glGenRenderbuffers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenSamplersSingle = t.bind(LIB, \"glGenSamplers\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenTexturesSingle = t.bind(LIB, \"glGenTextures\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenTransformFeedbacksSingle = t.bind(LIB, \"glGenTransformFeedbacks\", [t.int32, t.ref(t.uint32)], t.void);\n\nconst glGenVertexArraysSingle = t.bind(LIB, \"glGenVertexArrays\", [t.int32, t.ref(t.uint32)], t.void);\n"]}