@luma.gl/webgl 9.0.0-alpha.35 → 9.0.0-alpha.37

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.
Files changed (76) hide show
  1. package/dist/adapter/converters/device-parameters.d.ts +9 -0
  2. package/dist/adapter/converters/device-parameters.d.ts.map +1 -1
  3. package/dist/adapter/converters/device-parameters.js +15 -2
  4. package/dist/adapter/converters/device-parameters.js.map +1 -1
  5. package/dist/adapter/resources/webgl-command-buffer.js +0 -1
  6. package/dist/adapter/resources/webgl-command-buffer.js.map +1 -1
  7. package/dist/adapter/resources/webgl-render-pass.d.ts +2 -2
  8. package/dist/adapter/resources/webgl-render-pass.d.ts.map +1 -1
  9. package/dist/adapter/resources/webgl-render-pass.js +5 -3
  10. package/dist/adapter/resources/webgl-render-pass.js.map +1 -1
  11. package/dist/adapter/resources/webgl-render-pipeline.d.ts +23 -28
  12. package/dist/adapter/resources/webgl-render-pipeline.d.ts.map +1 -1
  13. package/dist/adapter/resources/webgl-render-pipeline.js +41 -110
  14. package/dist/adapter/resources/webgl-render-pipeline.js.map +1 -1
  15. package/dist/adapter/resources/webgl-sampler.js.map +1 -1
  16. package/dist/adapter/resources/webgl-shader.js +3 -1
  17. package/dist/adapter/resources/webgl-shader.js.map +1 -1
  18. package/dist/adapter/resources/webgl-texture.js +5 -5
  19. package/dist/adapter/resources/webgl-texture.js.map +1 -1
  20. package/dist/adapter/resources/webgl-vertex-array.d.ts +67 -0
  21. package/dist/adapter/resources/webgl-vertex-array.d.ts.map +1 -0
  22. package/dist/adapter/resources/webgl-vertex-array.js +166 -0
  23. package/dist/adapter/resources/webgl-vertex-array.js.map +1 -0
  24. package/dist/adapter/webgl-device.d.ts +11 -1
  25. package/dist/adapter/webgl-device.d.ts.map +1 -1
  26. package/dist/adapter/webgl-device.js +66 -1
  27. package/dist/adapter/webgl-device.js.map +1 -1
  28. package/dist/classic/clear.js +3 -3
  29. package/dist/classic/clear.js.map +1 -1
  30. package/dist/classic/copy-and-blit.d.ts.map +1 -1
  31. package/dist/classic/copy-and-blit.js +7 -9
  32. package/dist/classic/copy-and-blit.js.map +1 -1
  33. package/dist/context/context/create-browser-context.d.ts.map +1 -1
  34. package/dist/context/context/create-browser-context.js.map +1 -1
  35. package/dist/context/parameters/unified-parameter-api.d.ts +3 -3
  36. package/dist/context/parameters/unified-parameter-api.d.ts.map +1 -1
  37. package/dist/context/parameters/unified-parameter-api.js +4 -4
  38. package/dist/context/parameters/unified-parameter-api.js.map +1 -1
  39. package/dist/context/state-tracker/track-context-state.js +3 -3
  40. package/dist/context/state-tracker/track-context-state.js.map +1 -1
  41. package/dist/context/state-tracker/with-parameters.d.ts +1 -1
  42. package/dist/context/state-tracker/with-parameters.d.ts.map +1 -1
  43. package/dist/context/state-tracker/with-parameters.js +3 -3
  44. package/dist/context/state-tracker/with-parameters.js.map +1 -1
  45. package/dist/dist.dev.js +1273 -1179
  46. package/dist/index.cjs +1026 -972
  47. package/dist/index.d.ts +5 -5
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +5 -5
  50. package/dist/index.js.map +1 -1
  51. package/dist.min.js +22 -22
  52. package/package.json +5 -5
  53. package/src/.DS_Store +0 -0
  54. package/src/adapter/.DS_Store +0 -0
  55. package/src/adapter/converters/device-parameters.ts +34 -2
  56. package/src/adapter/resources/webgl-command-buffer.ts +2 -2
  57. package/src/adapter/resources/webgl-render-pass.ts +8 -6
  58. package/src/adapter/resources/webgl-render-pipeline.ts +141 -174
  59. package/src/adapter/resources/webgl-sampler.ts +1 -1
  60. package/src/adapter/resources/webgl-shader.ts +1 -1
  61. package/src/adapter/resources/webgl-texture.ts +5 -5
  62. package/src/adapter/resources/webgl-vertex-array.ts +278 -0
  63. package/src/adapter/webgl-device.ts +137 -11
  64. package/src/classic/clear.ts +3 -3
  65. package/src/classic/copy-and-blit.ts +19 -15
  66. package/src/context/.DS_Store +0 -0
  67. package/src/context/context/create-browser-context.ts +12 -0
  68. package/src/context/parameters/unified-parameter-api.ts +4 -4
  69. package/src/context/state-tracker/track-context-state.ts +3 -3
  70. package/src/context/state-tracker/with-parameters.ts +3 -3
  71. package/src/index.ts +38 -16
  72. package/dist/adapter/objects/webgl-vertex-array-object.d.ts +0 -55
  73. package/dist/adapter/objects/webgl-vertex-array-object.d.ts.map +0 -1
  74. package/dist/adapter/objects/webgl-vertex-array-object.js +0 -173
  75. package/dist/adapter/objects/webgl-vertex-array-object.js.map +0 -1
  76. package/src/adapter/objects/webgl-vertex-array-object.ts +0 -276
package/dist.min.js CHANGED
@@ -4,30 +4,30 @@
4
4
  else if (typeof define === 'function' && define.amd) define([], factory);
5
5
  else if (typeof exports === 'object') exports['luma'] = factory();
6
6
  else root['luma'] = factory();})(globalThis, function () {
7
- var __exports__=(()=>{var So=Object.create;var Kt=Object.defineProperty;var go=Object.getOwnPropertyDescriptor;var Oo=Object.getOwnPropertyNames;var vo=Object.getPrototypeOf,bo=Object.prototype.hasOwnProperty;var Br=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),No=(e,t)=>{for(var r in t)Kt(e,r,{get:t[r],enumerable:!0})},Fn=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Oo(t))!bo.call(e,o)&&o!==r&&Kt(e,o,{get:()=>t[o],enumerable:!(n=go(t,o))||n.enumerable});return e};var Le=(e,t,r)=>(r=e!=null?So(vo(e)):{},Fn(t||!e||!e.__esModule?Kt(r,"default",{value:e,enumerable:!0}):r,e)),Co=e=>Fn(Kt({},"__esModule",{value:!0}),e);var Hn=Br((_c,Fe)=>{function Dr(e){return Fe.exports=Dr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Fe.exports.__esModule=!0,Fe.exports.default=Fe.exports,Dr(e)}Fe.exports=Dr,Fe.exports.__esModule=!0,Fe.exports.default=Fe.exports});var Vn=Br((cc,Be)=>{var Ln=Hn().default;function Wn(){"use strict";Be.exports=Wn=function(){return e},Be.exports.__esModule=!0,Be.exports.default=Be.exports;var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(S,T,g){S[T]=g.value},o=typeof Symbol=="function"?Symbol:{},i=o.iterator||"@@iterator",s=o.asyncIterator||"@@asyncIterator",u=o.toStringTag||"@@toStringTag";function _(S,T,g){return Object.defineProperty(S,T,{value:g,enumerable:!0,configurable:!0,writable:!0}),S[T]}try{_({},"")}catch{_=function(g,B,U){return g[B]=U}}function c(S,T,g,B){var U=T&&T.prototype instanceof R?T:R,M=Object.create(U.prototype),k=new ne(B||[]);return n(M,"_invoke",{value:L(S,g,k)}),M}function E(S,T,g){try{return{type:"normal",arg:S.call(T,g)}}catch(B){return{type:"throw",arg:B}}}e.wrap=c;var l={};function R(){}function d(){}function A(){}var p={};_(p,i,function(){return this});var h=Object.getPrototypeOf,O=h&&h(h(K([])));O&&O!==t&&r.call(O,i)&&(p=O);var b=A.prototype=R.prototype=Object.create(p);function D(S){["next","throw","return"].forEach(function(T){_(S,T,function(g){return this._invoke(T,g)})})}function I(S,T){function g(U,M,k,re){var Q=E(S[U],S,M);if(Q.type!=="throw"){var Re=Q.arg,ae=Re.value;return ae&&Ln(ae)=="object"&&r.call(ae,"__await")?T.resolve(ae.__await).then(function(Te){g("next",Te,k,re)},function(Te){g("throw",Te,k,re)}):T.resolve(ae).then(function(Te){Re.value=Te,k(Re)},function(Te){return g("throw",Te,k,re)})}re(Q.arg)}var B;n(this,"_invoke",{value:function(M,k){function re(){return new T(function(Q,Re){g(M,k,Q,Re)})}return B=B?B.then(re,re):re()}})}function L(S,T,g){var B="suspendedStart";return function(U,M){if(B==="executing")throw new Error("Generator is already running");if(B==="completed"){if(U==="throw")throw M;return{value:void 0,done:!0}}for(g.method=U,g.arg=M;;){var k=g.delegate;if(k){var re=X(k,g);if(re){if(re===l)continue;return re}}if(g.method==="next")g.sent=g._sent=g.arg;else if(g.method==="throw"){if(B==="suspendedStart")throw B="completed",g.arg;g.dispatchException(g.arg)}else g.method==="return"&&g.abrupt("return",g.arg);B="executing";var Q=E(S,T,g);if(Q.type==="normal"){if(B=g.done?"completed":"suspendedYield",Q.arg===l)continue;return{value:Q.arg,done:g.done}}Q.type==="throw"&&(B="completed",g.method="throw",g.arg=Q.arg)}}}function X(S,T){var g=T.method,B=S.iterator[g];if(B===void 0)return T.delegate=null,g==="throw"&&S.iterator.return&&(T.method="return",T.arg=void 0,X(S,T),T.method==="throw")||g!=="return"&&(T.method="throw",T.arg=new TypeError("The iterator does not provide a '"+g+"' method")),l;var U=E(B,S.iterator,T.arg);if(U.type==="throw")return T.method="throw",T.arg=U.arg,T.delegate=null,l;var M=U.arg;return M?M.done?(T[S.resultName]=M.value,T.next=S.nextLoc,T.method!=="return"&&(T.method="next",T.arg=void 0),T.delegate=null,l):M:(T.method="throw",T.arg=new TypeError("iterator result is not an object"),T.delegate=null,l)}function $(S){var T={tryLoc:S[0]};1 in S&&(T.catchLoc=S[1]),2 in S&&(T.finallyLoc=S[2],T.afterLoc=S[3]),this.tryEntries.push(T)}function z(S){var T=S.completion||{};T.type="normal",delete T.arg,S.completion=T}function ne(S){this.tryEntries=[{tryLoc:"root"}],S.forEach($,this),this.reset(!0)}function K(S){if(S||S===""){var T=S[i];if(T)return T.call(S);if(typeof S.next=="function")return S;if(!isNaN(S.length)){var g=-1,B=function U(){for(;++g<S.length;)if(r.call(S,g))return U.value=S[g],U.done=!1,U;return U.value=void 0,U.done=!0,U};return B.next=B}}throw new TypeError(Ln(S)+" is not iterable")}return d.prototype=A,n(b,"constructor",{value:A,configurable:!0}),n(A,"constructor",{value:d,configurable:!0}),d.displayName=_(A,u,"GeneratorFunction"),e.isGeneratorFunction=function(S){var T=typeof S=="function"&&S.constructor;return!!T&&(T===d||(T.displayName||T.name)==="GeneratorFunction")},e.mark=function(S){return Object.setPrototypeOf?Object.setPrototypeOf(S,A):(S.__proto__=A,_(S,u,"GeneratorFunction")),S.prototype=Object.create(b),S},e.awrap=function(S){return{__await:S}},D(I.prototype),_(I.prototype,s,function(){return this}),e.AsyncIterator=I,e.async=function(S,T,g,B,U){U===void 0&&(U=Promise);var M=new I(c(S,T,g,B),U);return e.isGeneratorFunction(T)?M:M.next().then(function(k){return k.done?k.value:M.next()})},D(b),_(b,u,"Generator"),_(b,i,function(){return this}),_(b,"toString",function(){return"[object Generator]"}),e.keys=function(S){var T=Object(S),g=[];for(var B in T)g.push(B);return g.reverse(),function U(){for(;g.length;){var M=g.pop();if(M in T)return U.value=M,U.done=!1,U}return U.done=!0,U}},e.values=K,ne.prototype={constructor:ne,reset:function(T){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(z),!T)for(var g in this)g.charAt(0)==="t"&&r.call(this,g)&&!isNaN(+g.slice(1))&&(this[g]=void 0)},stop:function(){this.done=!0;var T=this.tryEntries[0].completion;if(T.type==="throw")throw T.arg;return this.rval},dispatchException:function(T){if(this.done)throw T;var g=this;function B(Re,ae){return k.type="throw",k.arg=T,g.next=Re,ae&&(g.method="next",g.arg=void 0),!!ae}for(var U=this.tryEntries.length-1;U>=0;--U){var M=this.tryEntries[U],k=M.completion;if(M.tryLoc==="root")return B("end");if(M.tryLoc<=this.prev){var re=r.call(M,"catchLoc"),Q=r.call(M,"finallyLoc");if(re&&Q){if(this.prev<M.catchLoc)return B(M.catchLoc,!0);if(this.prev<M.finallyLoc)return B(M.finallyLoc)}else if(re){if(this.prev<M.catchLoc)return B(M.catchLoc,!0)}else{if(!Q)throw new Error("try statement without catch or finally");if(this.prev<M.finallyLoc)return B(M.finallyLoc)}}}},abrupt:function(T,g){for(var B=this.tryEntries.length-1;B>=0;--B){var U=this.tryEntries[B];if(U.tryLoc<=this.prev&&r.call(U,"finallyLoc")&&this.prev<U.finallyLoc){var M=U;break}}M&&(T==="break"||T==="continue")&&M.tryLoc<=g&&g<=M.finallyLoc&&(M=null);var k=M?M.completion:{};return k.type=T,k.arg=g,M?(this.method="next",this.next=M.finallyLoc,l):this.complete(k)},complete:function(T,g){if(T.type==="throw")throw T.arg;return T.type==="break"||T.type==="continue"?this.next=T.arg:T.type==="return"?(this.rval=this.arg=T.arg,this.method="return",this.next="end"):T.type==="normal"&&g&&(this.next=g),l},finish:function(T){for(var g=this.tryEntries.length-1;g>=0;--g){var B=this.tryEntries[g];if(B.finallyLoc===T)return this.complete(B.completion,B.afterLoc),z(B),l}},catch:function(T){for(var g=this.tryEntries.length-1;g>=0;--g){var B=this.tryEntries[g];if(B.tryLoc===T){var U=B.completion;if(U.type==="throw"){var M=U.arg;z(B)}return M}}throw new Error("illegal catch attempt")},delegateYield:function(T,g,B){return this.delegate={iterator:K(T),resultName:g,nextLoc:B},this.method==="next"&&(this.arg=void 0),l}},e}Be.exports=Wn,Be.exports.__esModule=!0,Be.exports.default=Be.exports});var xe=Br((Ec,jn)=>{var kt=Vn()();jn.exports=kt;try{regeneratorRuntime=kt}catch{typeof globalThis=="object"?globalThis.regeneratorRuntime=kt:Function("r","regeneratorRuntime = r")(kt)}});var L_={};No(L_,{Accessor:()=>ve,BufferWithAccessor:()=>ht,WEBGLBuffer:()=>he,WEBGLCommandEncoder:()=>yr,WEBGLFramebuffer:()=>At,WEBGLRenderPass:()=>Nr,WEBGLRenderPipeline:()=>Pr,WEBGLRenderbuffer:()=>Tt,WEBGLResource:()=>Je,WEBGLSampler:()=>qe,WEBGLShader:()=>br,WEBGLTexture:()=>Se,WEBGLVertexArrayObject:()=>Ir,WebGLCanvasContext:()=>vr,WebGLDevice:()=>ue,WebGLResource:()=>Je,_TEXTURE_FORMATS:()=>$e,_checkFloat32ColorAttachment:()=>Ar,assertWebGL2Context:()=>_t,assertWebGLContext:()=>_r,clear:()=>co,convertGLToTextureFormat:()=>Qe,copyToTexture:()=>po,getParameters:()=>lr,getShaderLayout:()=>Cr,getWebGL2Context:()=>Bt,isWebGL:()=>$r,isWebGL2:()=>W,polyfillContext:()=>Er,popContextState:()=>Ce,pushContextState:()=>De,readPixelsToArray:()=>To,readPixelsToBuffer:()=>Ao,registerHeadlessGL:()=>Dn,resetParameters:()=>ei,setDeviceParameters:()=>_n,setParameters:()=>Me,trackContextState:()=>xt,withDeviceParameters:()=>mr,withParameters:()=>Ee});function _e(e){return _e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_e(e)}function Mr(e,t){if(_e(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(_e(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function St(e){var t=Mr(e,"string");return _e(t)==="symbol"?t:String(t)}function f(e,t,r){return t=St(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Bn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Mn(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Bn(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Bn(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var Io="Failed to create WebGL context in Node.js, headless gl returned null",Po=" luma.gl: loaded under Node.js without headless gl installed, meaning that WebGL contexts can not be created. This may not be an error. For example, this is a typical configuration for isorender applications running on the server.",yo={width:1,height:1,debug:!0,throwOnError:!1},Yt=null;function Dn(e){Yt=e}function Un(){return Yt!==null}function xn(e){e=Mn(Mn({},yo),e);var t=e,r=t.width,n=t.height,o=t.webgl1,i=t.webgl2;if(i&&!o)throw new Error("headless-gl does not support WebGL2");if(!Yt)throw new Error(Po);var s=Yt(r,n,e);if(!s)throw new Error(Io);return s}function wn(e,t,r,n,o,i,s){try{var u=e[i](s),_=u.value}catch(c){r(c);return}u.done?t(_):Promise.resolve(_).then(n,o)}function oe(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function s(_){wn(i,n,o,s,u,"next",_)}function u(_){wn(i,n,o,s,u,"throw",_)}s(void 0)})}}function P(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Xn(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,St(n.key),n)}}function y(e,t,r){return t&&Xn(e.prototype,t),r&&Xn(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function Ae(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function We(e,t){return We=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,o){return n.__proto__=o,n},We(e,t)}function x(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&We(e,t)}function w(e,t){if(t&&(_e(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Ae(e)}function v(e){return v=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},v(e)}var Cn=Le(xe(),1);function gt(e){if(typeof window<"u"&&typeof window.process=="object"&&window.process.type==="renderer"||typeof process<"u"&&typeof process.versions=="object"&&Boolean(process.versions.electron))return!0;let t=typeof navigator=="object"&&typeof navigator.userAgent=="string"&&navigator.userAgent,r=e||t;return!!(r&&r.indexOf("Electron")>=0)}function q(){return!(typeof process=="object"&&String(process)==="[object process]"&&!process.browser)||gt()}var Fo=globalThis.self||globalThis.window||globalThis.global,et=globalThis.window||globalThis.self||globalThis.global,Bo=globalThis.document||{},Ve=globalThis.process||{},Mo=globalThis.console,Kn=globalThis.navigator||{};var Gt=typeof __VERSION__<"u"?__VERSION__:"untranspiled source",pc=q();var Ur=globalThis;function Ot(e){if(!e&&!q())return"Node";if(gt(e))return"Electron";let t=e||Kn.userAgent||"";if(t.indexOf("Edge")>-1)return"Edge";let r=t.indexOf("MSIE ")!==-1,n=t.indexOf("Trident/")!==-1;return r||n?"IE":Ur.chrome?"Chrome":Ur.safari?"Safari":Ur.mozInnerScreenX?"Firefox":"Unknown"}function Do(e){try{let t=window[e],r="__storage_test__";return t.setItem(r,r),t.removeItem(r),t}catch{return null}}var zt=class{constructor(t,r){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"sessionStorage";this.storage=void 0,this.id=void 0,this.config=void 0,this.storage=Do(n),this.id=t,this.config=r,this._loadConfiguration()}getConfiguration(){return this.config}setConfiguration(t){if(Object.assign(this.config,t),this.storage){let r=JSON.stringify(this.config);this.storage.setItem(this.id,r)}}_loadConfiguration(){let t={};if(this.storage){let r=this.storage.getItem(this.id);t=r?JSON.parse(r):{}}return Object.assign(this.config,t),this}};function Yn(e){let t;return e<10?t="".concat(e.toFixed(2),"ms"):e<100?t="".concat(e.toFixed(1),"ms"):e<1e3?t="".concat(e.toFixed(0),"ms"):t="".concat((e/1e3).toFixed(2),"s"),t}function kn(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:8,r=Math.max(t-e.length,0);return"".concat(" ".repeat(r)).concat(e)}function Zt(e,t,r){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:600,o=e.src.replace(/\(/g,"%28").replace(/\)/g,"%29");e.width>n&&(r=Math.min(r,n/e.width));let i=e.width*r,s=e.height*r,u=["font-size:1px;","padding:".concat(Math.floor(s/2),"px ").concat(Math.floor(i/2),"px;"),"line-height:".concat(s,"px;"),"background:url(".concat(o,");"),"background-size:".concat(i,"px ").concat(s,"px;"),"color:transparent;"].join("");return["".concat(t," %c+"),u]}var $t;(function(e){e[e.BLACK=30]="BLACK",e[e.RED=31]="RED",e[e.GREEN=32]="GREEN",e[e.YELLOW=33]="YELLOW",e[e.BLUE=34]="BLUE",e[e.MAGENTA=35]="MAGENTA",e[e.CYAN=36]="CYAN",e[e.WHITE=37]="WHITE",e[e.BRIGHT_BLACK=90]="BRIGHT_BLACK",e[e.BRIGHT_RED=91]="BRIGHT_RED",e[e.BRIGHT_GREEN=92]="BRIGHT_GREEN",e[e.BRIGHT_YELLOW=93]="BRIGHT_YELLOW",e[e.BRIGHT_BLUE=94]="BRIGHT_BLUE",e[e.BRIGHT_MAGENTA=95]="BRIGHT_MAGENTA",e[e.BRIGHT_CYAN=96]="BRIGHT_CYAN",e[e.BRIGHT_WHITE=97]="BRIGHT_WHITE"})($t||($t={}));var Uo=10;function Gn(e){return typeof e!="string"?e:(e=e.toUpperCase(),$t[e]||$t.WHITE)}function zn(e,t,r){if(!q&&typeof e=="string"){if(t){let n=Gn(t);e="\x1B[".concat(n,"m").concat(e,"\x1B[39m")}if(r){let n=Gn(r);e="\x1B[".concat(n+Uo,"m").concat(e,"\x1B[49m")}}return e}function Zn(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:["constructor"],r=Object.getPrototypeOf(e),n=Object.getOwnPropertyNames(r),o=e;for(let i of n){let s=o[i];typeof s=="function"&&(t.find(u=>i===u)||(o[i]=s.bind(e)))}}function tt(e,t){if(!e)throw new Error(t||"Assertion failed")}function je(){let e;if(q()&&et.performance){var t,r;e=et===null||et===void 0||(t=et.performance)===null||t===void 0||(r=t.now)===null||r===void 0?void 0:r.call(t)}else if("hrtime"in Ve){var n;let o=Ve===null||Ve===void 0||(n=Ve.hrtime)===null||n===void 0?void 0:n.call(Ve);e=o[0]*1e3+o[1]/1e6}else e=Date.now();return e}var rt={debug:q()&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},xo={enabled:!0,level:0};function pe(){}var $n={},Qn={once:!0},we=class{constructor(){let{id:t}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{id:""};this.id=void 0,this.VERSION=Gt,this._startTs=je(),this._deltaTs=je(),this._storage=void 0,this.userData={},this.LOG_THROTTLE_TIMEOUT=0,this.id=t,this.userData={},this._storage=new zt("__probe-".concat(this.id,"__"),xo),this.timeStamp("".concat(this.id," started")),Zn(this),Object.seal(this)}set level(t){this.setLevel(t)}get level(){return this.getLevel()}isEnabled(){return this._storage.config.enabled}getLevel(){return this._storage.config.level}getTotal(){return Number((je()-this._startTs).toPrecision(10))}getDelta(){return Number((je()-this._deltaTs).toPrecision(10))}set priority(t){this.level=t}get priority(){return this.level}getPriority(){return this.level}enable(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return this._storage.setConfiguration({enabled:t}),this}setLevel(t){return this._storage.setConfiguration({level:t}),this}get(t){return this._storage.config[t]}set(t,r){this._storage.setConfiguration({[t]:r})}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}assert(t,r){tt(t,r)}warn(t){return this._getLogFunction(0,t,rt.warn,arguments,Qn)}error(t){return this._getLogFunction(0,t,rt.error,arguments)}deprecated(t,r){return this.warn("`".concat(t,"` is deprecated and will be removed in a later version. Use `").concat(r,"` instead"))}removed(t,r){return this.error("`".concat(t,"` has been removed. Use `").concat(r,"` instead"))}probe(t,r){return this._getLogFunction(t,r,rt.log,arguments,{time:!0,once:!0})}log(t,r){return this._getLogFunction(t,r,rt.debug,arguments)}info(t,r){return this._getLogFunction(t,r,console.info,arguments)}once(t,r){return this._getLogFunction(t,r,rt.debug||rt.info,arguments,Qn)}table(t,r,n){return r?this._getLogFunction(t,r,console.table||pe,n&&[n],{tag:Lo(r)}):pe}image(t){let{logLevel:r,priority:n,image:o,message:i="",scale:s=1}=t;return this._shouldLog(r||n)?q()?Ho({image:o,message:i,scale:s}):Xo({image:o,message:i,scale:s}):pe}time(t,r){return this._getLogFunction(t,r,console.time?console.time:console.info)}timeEnd(t,r){return this._getLogFunction(t,r,console.timeEnd?console.timeEnd:console.info)}timeStamp(t,r){return this._getLogFunction(t,r,console.timeStamp||pe)}group(t,r){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{collapsed:!1},o=qn({logLevel:t,message:r,opts:n}),{collapsed:i}=n;return o.method=(i?console.groupCollapsed:console.group)||console.info,this._getLogFunction(o)}groupCollapsed(t,r){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.group(t,r,Object.assign({},n,{collapsed:!0}))}groupEnd(t){return this._getLogFunction(t,"",console.groupEnd||pe)}withGroup(t,r,n){this.group(t,r)();try{n()}finally{this.groupEnd(t)()}}trace(){console.trace&&console.trace()}_shouldLog(t){return this.isEnabled()&&this.getLevel()>=Jn(t)}_getLogFunction(t,r,n,o,i){if(this._shouldLog(t)){i=qn({logLevel:t,message:r,args:o,opts:i}),n=n||i.method,tt(n),i.total=this.getTotal(),i.delta=this.getDelta(),this._deltaTs=je();let s=i.tag||i.message;if(i.once&&s)if(!$n[s])$n[s]=je();else return pe;return r=wo(this.id,i.message,i),n.bind(console,r,...i.args)}return pe}};we.VERSION=Gt;function Jn(e){if(!e)return 0;let t;switch(typeof e){case"number":t=e;break;case"object":t=e.logLevel||e.priority||0;break;default:return 0}return tt(Number.isFinite(t)&&t>=0),t}function qn(e){let{logLevel:t,message:r}=e;e.logLevel=Jn(t);let n=e.args?Array.from(e.args):[];for(;n.length&&n.shift()!==r;);switch(typeof t){case"string":case"function":r!==void 0&&n.unshift(r),e.message=t;break;case"object":Object.assign(e,t);break;default:}typeof e.message=="function"&&(e.message=e.message());let o=typeof e.message;return tt(o==="string"||o==="object"),Object.assign(e,{args:n},e.opts)}function wo(e,t,r){if(typeof t=="string"){let n=r.time?kn(Yn(r.total)):"";t=r.time?"".concat(e,": ").concat(n," ").concat(t):"".concat(e,": ").concat(t),t=zn(t,r.color,r.background)}return t}function Xo(e){let{image:t,message:r="",scale:n=1}=e;return console.warn("removed"),pe}function Ho(e){let{image:t,message:r="",scale:n=1}=e;if(typeof t=="string"){let i=new Image;return i.onload=()=>{let s=Zt(i,r,n);console.log(...s)},i.src=t,pe}let o=t.nodeName||"";if(o.toLowerCase()==="img")return console.log(...Zt(t,r,n)),pe;if(o.toLowerCase()==="canvas"){let i=new Image;return i.onload=()=>console.log(...Zt(i,r,n)),i.src=t.toDataURL(),pe}return pe}function Lo(e){for(let t in e)for(let r in e[t])return r||"untitled";return"empty"}var Zc=new we({id:"@probe.gl/log"});var C=new we({id:"luma.gl"});function vt(){let e;if(typeof window<"u"&&window.performance)e=window.performance.now();else if(typeof process<"u"&&process.hrtime){let t=process.hrtime();e=t[0]*1e3+t[1]/1e6}else e=Date.now();return e}var Ke=class{constructor(t,r){this.name=void 0,this.type=void 0,this.sampleSize=1,this.time=0,this.count=0,this.samples=0,this.lastTiming=0,this.lastSampleTime=0,this.lastSampleCount=0,this._count=0,this._time=0,this._samples=0,this._startTime=0,this._timerPending=!1,this.name=t,this.type=r,this.reset()}reset(){return this.time=0,this.count=0,this.samples=0,this.lastTiming=0,this.lastSampleTime=0,this.lastSampleCount=0,this._count=0,this._time=0,this._samples=0,this._startTime=0,this._timerPending=!1,this}setSampleSize(t){return this.sampleSize=t,this}incrementCount(){return this.addCount(1),this}decrementCount(){return this.subtractCount(1),this}addCount(t){return this._count+=t,this._samples++,this._checkSampling(),this}subtractCount(t){return this._count-=t,this._samples++,this._checkSampling(),this}addTime(t){return this._time+=t,this.lastTiming=t,this._samples++,this._checkSampling(),this}timeStart(){return this._startTime=vt(),this._timerPending=!0,this}timeEnd(){return this._timerPending?(this.addTime(vt()-this._startTime),this._timerPending=!1,this._checkSampling(),this):this}getSampleAverageCount(){return this.sampleSize>0?this.lastSampleCount/this.sampleSize:0}getSampleAverageTime(){return this.sampleSize>0?this.lastSampleTime/this.sampleSize:0}getSampleHz(){return this.lastSampleTime>0?this.sampleSize/(this.lastSampleTime/1e3):0}getAverageCount(){return this.samples>0?this.count/this.samples:0}getAverageTime(){return this.samples>0?this.time/this.samples:0}getHz(){return this.time>0?this.samples/(this.time/1e3):0}_checkSampling(){this._samples===this.sampleSize&&(this.lastSampleTime=this._time,this.lastSampleCount=this._count,this.count+=this._count,this.time+=this._time,this.samples+=this._samples,this._time=0,this._count=0,this._samples=0)}};var nt=class{constructor(t){this.id=void 0,this.stats={},this.id=t.id,this.stats={},this._initializeStats(t.stats),Object.seal(this)}get(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"count";return this._getOrCreate({name:t,type:r})}get size(){return Object.keys(this.stats).length}reset(){for(let t of Object.values(this.stats))t.reset();return this}forEach(t){for(let r of Object.values(this.stats))t(r)}getTable(){let t={};return this.forEach(r=>{t[r.name]={time:r.time||0,count:r.count||0,average:r.getAverageTime()||0,hz:r.getHz()||0}}),t}_initializeStats(){(arguments.length>0&&arguments[0]!==void 0?arguments[0]:[]).forEach(r=>this._getOrCreate(r))}_getOrCreate(t){let{name:r,type:n}=t,o=this.stats[r];return o||(t instanceof Ke?o=t:o=new Ke(r,n),this.stats[r]=o),o}};var Wo=function(){function e(){P(this,e),this.stats=new Map}var t=e.prototype;return t.getStats=function(n){return this.get(n)},t.get=function(n){return this.stats.has(n)||this.stats.set(n,new nt({id:n})),this.stats.get(n)},y(e)}(),Qt=new Wo;function Vo(){var e=typeof __VERSION__<"u"?__VERSION__:"untranspiled source",t="set luma.log.level=1 (or higher) to trace rendering";if(globalThis.luma&&globalThis.luma.VERSION!==e)throw new Error("luma.gl - multiple VERSIONs detected: ".concat(globalThis.luma.VERSION," vs ").concat(e));return globalThis.luma||(q()&&C.log(1,"luma.gl ".concat(e," - ").concat(t))(),globalThis.luma=globalThis.luma||{VERSION:e,version:e,log:C,stats:Qt}),e}var ea=Vo();var xr={};function ge(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"id";xr[e]=xr[e]||1;var t=xr[e]++;return"".concat(e,"-").concat(t)}function qt(e){return e>0&&(e&e-1)===0}function at(e){var t=!0;for(var r in e){t=!1;break}return t}function ta(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function jo(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ta(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ta(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var j=function(){function e(r,n,o){if(P(this,e),this.id=void 0,this.props=void 0,this.userData={},this.device=void 0,this._device=void 0,this.destroyed=!1,this.allocatedBytes=0,this._attachedResources=new Set,!r)throw new Error("no device");this._device=r,this.props=Ko(n,o);var i=this.props.id!=="undefined"?this.props.id:ge(this[Symbol.toStringTag]);this.props.id=i,this.id=i,this.userData=this.props.userData||{},this.addStats()}var t=e.prototype;return t.destroy=function(){this.destroyResource()},t.delete=function(){return this.destroy(),this},t.toString=function(){return"".concat(this[Symbol.toStringTag]||this.constructor.name,"(").concat(this.id,")")},t.getProps=function(){return this.props},t.attachResource=function(n){this._attachedResources.add(n)},t.detachResource=function(n){this._attachedResources.delete(n)},t.destroyAttachedResource=function(n){this._attachedResources.delete(n)&&n.destroy()},t.destroyAttachedResources=function(){for(var n=0,o=Object.values(this._attachedResources);n<o.length;n++){var i=o[n];i.destroy()}this._attachedResources=new Set},t.destroyResource=function(){this.destroyAttachedResources(),this.removeStats(),this.destroyed=!0},t.removeStats=function(){var n=this._device.statsManager.getStats("Resource Counts"),o=this[Symbol.toStringTag];n.get("".concat(o,"s Active")).decrementCount()},t.trackAllocatedMemory=function(n){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this[Symbol.toStringTag],i=this._device.statsManager.getStats("Resource Counts");i.get("GPU Memory").addCount(n),i.get("".concat(o," Memory")).addCount(n),this.allocatedBytes=n},t.trackDeallocatedMemory=function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this[Symbol.toStringTag],o=this._device.statsManager.getStats("Resource Counts");o.get("GPU Memory").subtractCount(this.allocatedBytes),o.get("".concat(n," Memory")).subtractCount(this.allocatedBytes),this.allocatedBytes=0},t.addStats=function(){var n=this._device.statsManager.getStats("Resource Counts"),o=this[Symbol.toStringTag];n.get("Resources Created").incrementCount(),n.get("".concat(o,"s Created")).incrementCount(),n.get("".concat(o,"s Active")).incrementCount()},y(e)}();j.defaultProps={id:"undefined",handle:void 0,userData:void 0};function Ko(e,t){var r=jo({},t);for(var n in e)e[n]!==void 0&&(r[n]=e[n]);return r}var na;function ra(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function wr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ra(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ra(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Yo(e){var t=ko();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function ko(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}na=Symbol.toStringTag;var ee=function(e){x(r,e);var t=Yo(r);function r(o,i){var s;P(this,r);var u=wr({},i);return(i.usage||0)&r.INDEX&&!i.indexType&&(i.data instanceof Uint32Array?u.indexType="uint32":i.data instanceof Uint16Array&&(u.indexType="uint16")),s=t.call(this,o,u,r.defaultProps),s.usage=void 0,s.indexType=void 0,s.byteLength=void 0,s.usage=i.usage||0,s.indexType=u.indexType,s}var n=r.prototype;return n.write=function(i,s){throw new Error("not implemented")},n.readAsync=function(i,s){throw new Error("not implemented")},n.getData=function(){throw new Error("not implemented")},y(r,[{key:na,get:function(){return"Buffer"}}]),r}(j);ee.defaultProps=wr(wr({},j.defaultProps),{},{usage:0,byteLength:0,byteOffset:0,data:null,indexType:"uint16",mappedAtCreation:!1});ee.MAP_READ=1;ee.MAP_WRITE=2;ee.COPY_SRC=4;ee.COPY_DST=8;ee.INDEX=16;ee.VERTEX=32;ee.UNIFORM=64;ee.STORAGE=128;ee.INDIRECT=256;ee.QUERY_RESOLVE=512;var ia;function aa(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Xr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?aa(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):aa(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var Go={id:null,type:"best-available",canvas:null,container:null,webgl2:!0,webgl1:!0,manageState:!0,width:800,height:600,debug:Boolean(C.get("debug")),break:[],gl:null};ia=Symbol.toStringTag;var bt=function(){function e(r){P(this,e),this.id=void 0,this.statsManager=Qt,this.props=void 0,this.userData={},this._lumaData={},this.info=void 0,this.lost=void 0,this.canvasContext=void 0,this.props=Xr(Xr({},Go),r),this.id=this.props.id||ge(this[Symbol.toStringTag].toLowerCase())}var t=e.prototype;return t.loseDevice=function(){return!1},t.createTexture=function(n){return(n instanceof Promise||typeof n=="string")&&(n={data:n}),this._createTexture(n)},t.createCommandEncoder=function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};throw new Error("not implemented")},t._getBufferProps=function(n){(n instanceof ArrayBuffer||ArrayBuffer.isView(n))&&(n={data:n});var o=Xr({},n);return(n.usage||0)&ee.INDEX&&!n.indexType&&(n.data instanceof Uint32Array?o.indexType="uint32":n.data instanceof Uint16Array?o.indexType="uint16":C.warn("indices buffer content must be of integer type")()),o},y(e,[{key:ia,get:function(){return"Device"}}]),e}();bt.VERSION=ea;function Nt(e){if(Array.isArray(e))return e}function Hr(e,t){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,o,i,s,u=[],_=!0,c=!1;try{if(i=(r=r.call(e)).next,t===0){if(Object(r)!==r)return;_=!1}else for(;!(_=(n=i.call(r)).done)&&(u.push(n.value),u.length!==t);_=!0);}catch(E){c=!0,o=E}finally{try{if(!_&&r.return!=null&&(s=r.return(),Object(s)!==s))return}finally{if(c)throw o}}return u}}function it(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Ye(e,t){if(e){if(typeof e=="string")return it(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return it(e,t)}}function Ct(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
8
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function H(e,t){return Nt(e)||Hr(e,t)||Ye(e,t)||Ct()}function zo(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Zo(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
9
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function Zo(e,t){if(e){if(typeof e=="string")return oa(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return oa(e,t)}}function oa(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function sa(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function ua(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?sa(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):sa(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var $o=q()&&typeof document<"u",Jt=function(){return $o&&document.readyState==="complete"},Qo={canvas:null,width:800,height:600,useDevicePixels:!0,autoResize:!0,container:null,visible:!0,colorSpace:"srgb",alphaMode:"opaque"},ot=function(){function e(r){var n=this;if(P(this,e),this.device=void 0,this.id=void 0,this.props=void 0,this.canvas=void 0,this.htmlCanvas=void 0,this.offscreenCanvas=void 0,this.type=void 0,this.width=1,this.height=1,this.resizeObserver=void 0,this._canvasSizeInfo={clientWidth:0,clientHeight:0,devicePixelRatio:1},this.props=ua(ua({},Qo),r),r=this.props,!q()){this.id="node-canvas-context",this.type="node",this.width=this.props.width,this.height=this.props.height,this.canvas=null;return}if(r.canvas)typeof r.canvas=="string"?this.canvas=es(r.canvas):this.canvas=r.canvas;else{var o,i,s=ts(r),u=Jo(((o=r)===null||o===void 0?void 0:o.container)||null);u.insertBefore(s,u.firstChild),this.canvas=s,(i=r)!==null&&i!==void 0&&i.visible||(this.canvas.style.visibility="hidden")}this.canvas instanceof HTMLCanvasElement?(this.id=this.canvas.id,this.type="html-canvas",this.htmlCanvas=this.canvas):(this.id="offscreen-canvas",this.type="offscreen-canvas",this.offscreenCanvas=this.canvas),this.canvas instanceof HTMLCanvasElement&&r.autoResize&&(this.resizeObserver=new ResizeObserver(function(_){var c=zo(_),E;try{for(c.s();!(E=c.n()).done;){var l=E.value;l.target===n.canvas&&n.update()}}catch(R){c.e(R)}finally{c.f()}}),this.resizeObserver.observe(this.canvas))}var t=e.prototype;return t.getDevicePixelRatio=function(n){if(typeof OffscreenCanvas<"u"&&this.canvas instanceof OffscreenCanvas||(n=n===void 0?this.props.useDevicePixels:n,!n||n<=0))return 1;if(n===!0){var o=typeof window<"u"&&window.devicePixelRatio;return o||1}return n},t.getPixelSize=function(){switch(this.type){case"node":return[this.width,this.height];case"offscreen-canvas":return[this.canvas.width,this.canvas.height];case"html-canvas":var n=this.getDevicePixelRatio(),o=this.canvas;return o.parentElement?[o.clientWidth*n,o.clientHeight*n]:[this.canvas.width,this.canvas.height];default:throw new Error(this.type)}},t.getAspect=function(){var n=this.getPixelSize(),o=H(n,2),i=o[0],s=o[1];return i/s},t.cssToDeviceRatio=function(){try{var n=this.getDrawingBufferSize(),o=H(n,1),i=o[0],s=this._canvasSizeInfo.clientWidth;return s?i/s:1}catch{return 1}},t.cssToDevicePixels=function(n){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,i=this.cssToDeviceRatio(),s=this.getDrawingBufferSize(),u=H(s,2),_=u[0],c=u[1];return rs(n,i,_,c,o)},t.setDevicePixelRatio=function(n){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.htmlCanvas){var i="width"in o?o.width:this.htmlCanvas.clientWidth,s="height"in o?o.height:this.htmlCanvas.clientHeight;(!i||!s)&&(C.log(1,"Canvas clientWidth/clientHeight is 0")(),n=1,i=this.htmlCanvas.width||1,s=this.htmlCanvas.height||1);var u=this._canvasSizeInfo;if(u.clientWidth!==i||u.clientHeight!==s||u.devicePixelRatio!==n){var _=n,c=Math.floor(i*_),E=Math.floor(s*_);this.htmlCanvas.width=c,this.htmlCanvas.height=E;var l=this.getDrawingBufferSize(),R=H(l,2),d=R[0],A=R[1];(d!==c||A!==E)&&(_=Math.min(d/i,A/s),this.htmlCanvas.width=Math.floor(i*_),this.htmlCanvas.height=Math.floor(s*_),C.warn("Device pixel ratio clamped")()),this._canvasSizeInfo.clientWidth=i,this._canvasSizeInfo.clientHeight=s,this._canvasSizeInfo.devicePixelRatio=n}}},t.getDrawingBufferSize=function(){var n=this.device.gl;if(!n)throw new Error("canvas size");return[n.drawingBufferWidth,n.drawingBufferHeight]},t._setAutoCreatedCanvasId=function(n){var o;((o=this.htmlCanvas)===null||o===void 0?void 0:o.id)==="lumagl-auto-created-canvas"&&(this.htmlCanvas.id=n)},y(e,null,[{key:"isPageLoaded",get:function(){return Jt()}}]),e}();ot.pageLoaded=qo();function qo(){return Jt()||typeof window>"u"?Promise.resolve():new Promise(function(e){window.addEventListener("load",function(){return e()})})}function Jo(e){if(typeof e=="string"){var t=document.getElementById(e);if(!t&&!Jt())throw new Error("Accessing '".concat(e,"' before page was loaded"));if(!t)throw new Error("".concat(e," is not an HTML element"));return t}else if(e)return e;return document.body}function es(e){var t=document.getElementById(e);if(!t&&!Jt())throw new Error("Accessing '".concat(e,"' before page was loaded"));if(!(t instanceof HTMLCanvasElement))throw new Error("'".concat(t,"' is not a canvas element"));return t}function ts(e){var t=e.width,r=e.height,n=document.createElement("canvas");return n.id="lumagl-auto-created-canvas",n.width=t||1,n.height=r||1,n.style.width=Number.isFinite(t)?"".concat(t,"px"):"100%",n.style.height=Number.isFinite(r)?"".concat(r,"px"):"100%",n}function rs(e,t,r,n,o){var i=e,s=fa(i[0],t,r),u=_a(i[1],t,n,o),_=fa(i[0]+1,t,r),c=_===r-1?_:_-1;_=_a(i[1]+1,t,n,o);var E;return o?(_=_===0?_:_+1,E=u,u=_):E=_===n-1?_:_-1,{x:s,y:u,width:Math.max(c-s+1,1),height:Math.max(E-u+1,1)}}function fa(e,t,r){var n=Math.min(Math.round(e*t),r-1);return n}function _a(e,t,r,n){return n?Math.max(0,r-1-Math.round(e*t)):Math.min(Math.round(e*t),r-1)}var la;function ca(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Ea(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ca(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ca(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ns(e){var t=as();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function as(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}la=Symbol.toStringTag;var se=function(e){x(r,e);var t=ns(r);function r(n,o){var i,s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:r.defaultProps;return P(this,r),i=t.call(this,n,o,s),i.dimension=void 0,i.format=void 0,i.width=void 0,i.height=void 0,i.depth=void 0,i.sampler=void 0,i.dimension=i.props.dimension,i.format=i.props.format,i.width=i.props.width,i.height=i.props.height,i.depth=i.props.depth,i}return y(r,[{key:la,get:function(){return"Texture"}}]),r}(j);se.defaultProps=Ea(Ea({},j.defaultProps),{},{data:null,dimension:"2d",format:"rgba8unorm",width:void 0,height:void 0,depth:1,mipmaps:!0,sampler:{},compressed:!1,usage:0,mipLevels:void 0,samples:void 0,type:void 0});se.COPY_SRC=1;se.COPY_DST=2;se.TEXTURE_BINDING=4;se.STORAGE_BINDING=8;se.RENDER_ATTACHMENT=16;var Ta;function Ra(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function da(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ra(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ra(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function is(e){var t=os();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function os(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Ta=Symbol.toStringTag;var er=function(e){x(r,e);var t=is(r);function r(n,o){var i;return P(this,r),i=t.call(this,n,o,r.defaultProps),i.stage=void 0,i.source=void 0,i.stage=i.props.stage,i.source=i.props.source,i}return y(r,[{key:Ta,get:function(){return"Shader"}}]),r}(j);er.defaultProps=da(da({},j.defaultProps),{},{stage:"vertex",source:"",sourceMap:null,language:"glsl",shaderType:0});var ma;function Aa(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function pa(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Aa(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Aa(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ss(e){var t=us();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function us(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}ma=Symbol.toStringTag;var tr=function(e){x(r,e);var t=ss(r);function r(n,o){return P(this,r),t.call(this,n,o,r.defaultProps)}return y(r,[{key:ma,get:function(){return"Sampler"}}]),r}(j);tr.defaultProps=pa(pa({},j.defaultProps),{},{type:"color-sampler",addressModeU:"clamp-to-edge",addressModeV:"clamp-to-edge",addressModeW:"clamp-to-edge",magFilter:"nearest",minFilter:"nearest",mipmapFilter:"nearest",lodMinClamp:0,lodMaxClamp:32,compare:"less-equal",maxAnisotropy:1});var Sa;function ha(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function st(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ha(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ha(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function fs(e){var t=_s();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function _s(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Sa=Symbol.toStringTag;var ut=function(e){x(r,e);var t=fs(r);function r(o){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return P(this,r),i=t.call(this,o,s,r.defaultProps),i.width=void 0,i.height=void 0,i.colorAttachments=[],i.depthStencilAttachment=null,i.width=i.props.width,i.height=i.props.height,i}var n=r.prototype;return n.resize=function(i){var s=!i;if(i){var u=Array.isArray(i)?i:[i.width,i.height],_=H(u,2),c=_[0],E=_[1];s=s||E!==this.height||c!==this.width,this.width=c,this.height=E}s&&(C.log(2,"Resizing framebuffer ".concat(this.id," to ").concat(this.width,"x").concat(this.height))(),this.resizeAttachments(this.width,this.height))},n.autoCreateAttachmentTextures=function(){var i=this;if(this.colorAttachments=this.props.colorAttachments.map(function(u){if(typeof u=="string"){var _=i.createColorTexture(u);return i.attachResource(_),_}return u}),this.props.depthStencilAttachment)if(typeof this.props.depthStencilAttachment=="string"){var s=this.createDepthStencilTexture(this.props.depthStencilAttachment);this.attachResource(s),this.depthStencilAttachment=s}else this.depthStencilAttachment=this.props.depthStencilAttachment},n.createColorTexture=function(i){return this.device.createTexture({id:"color-attachment",usage:se.RENDER_ATTACHMENT,format:i,width:this.width,height:this.height})},n.createDepthStencilTexture=function(i){return this.device.createTexture({id:"depth-stencil-attachment",usage:se.RENDER_ATTACHMENT,format:i,width:this.width,height:this.height})},n.resizeAttachments=function(i,s){for(var u=0;u<this.colorAttachments.length;++u)if(this.colorAttachments[u]){var _=this.device._createTexture(st(st({},this.colorAttachments[u].props),{},{width:i,height:s}));this.destroyAttachedResource(this.colorAttachments[u]),this.colorAttachments[u]=_,this.attachResource(_)}if(this.depthStencilAttachment){var c=this.device._createTexture(st(st({},this.depthStencilAttachment.props),{},{width:i,height:s}));this.destroyAttachedResource(this.depthStencilAttachment),this.depthStencilAttachment=c,this.attachResource(c)}},y(r,[{key:Sa,get:function(){return"Framebuffer"}}]),r}(j);ut.defaultProps=st(st({},j.defaultProps),{},{width:1,height:1,colorAttachments:[],depthStencilAttachment:null});var va;function ga(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Oa(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ga(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ga(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function cs(e){var t=Es();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function Es(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}va=Symbol.toStringTag;var rr=function(e){x(r,e);var t=cs(r);function r(n,o){var i;return P(this,r),i=t.call(this,n,o,r.defaultProps),i.hash="",i.vs=void 0,i.fs=void 0,i}return y(r,[{key:va,get:function(){return"RenderPipeline"}}]),r}(j);rr.defaultProps=Oa(Oa({},j.defaultProps),{},{vs:null,vsEntryPoint:"",vsConstants:{},fs:null,fsEntryPoint:"",fsConstants:{},shaderLayout:null,bufferLayout:[],topology:"triangle-list",parameters:{},vertexCount:0,instanceCount:0,indices:null,attributes:{},bindings:{},uniforms:{}});var Ca;function ba(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Na(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ba(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ba(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ls(e){var t=Rs();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function Rs(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Ca=Symbol.toStringTag;var nr=function(e){x(r,e);var t=ls(r);function r(n,o){return P(this,r),t.call(this,n,o,r.defaultProps)}return y(r,[{key:Ca,get:function(){return"RenderPass"}}]),r}(j);nr.defaultProps=Na(Na({},j.defaultProps),{},{framebuffer:null,parameters:void 0,clearColor:[0,0,0,0],clearDepth:1,clearStencil:0,depthReadOnly:!1,stencilReadOnly:!1,discard:!1});var ya;function Ia(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Pa(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ia(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ia(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ds(e){var t=Ts();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function Ts(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}ya=Symbol.toStringTag;var ar=function(e){x(r,e);var t=ds(r);function r(o,i){return P(this,r),t.call(this,o,i,r.defaultProps)}var n=r.prototype;return n.pushDebugGroup=function(i){},n.popDebugGroup=function(){},n.insertDebugMarker=function(i){},y(r,[{key:ya,get:function(){return"CommandEncoder"}}]),r}(j);ar.defaultProps=Pa(Pa({},j.defaultProps),{},{measureExecutionTime:void 0});var Ba;function Fa(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function As(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Fa(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Fa(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ps(e){var t=ms();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function ms(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Ba=Symbol.toStringTag;var ir=function(e){x(r,e);var t=ps(r);function r(n){return P(this,r),t.call(this,n,r.defaultProps)}return y(r,[{key:Ba,get:function(){return"CommandBuffer"}}]),r}(j);ir.defaultProps=As({},j.defaultProps);function F(e,t){if(!e)throw new Error(t||"luma.gl: assertion failed.")}function or(e){var t=Ma[e],r=hs(t),n=e.includes("norm"),o=!n&&!e.startsWith("float"),i=e.startsWith("s");return{dataType:Ma[e],byteLength:r,integer:o,signed:i,normalized:n}}function hs(e){var t=Ss[e];return t}var Ma={uint8:"uint8",sint8:"sint8",unorm8:"uint8",snorm8:"sint8",uint16:"uint16",sint16:"sint16",unorm16:"uint16",snorm16:"sint16",float16:"float16",float32:"float32",uint32:"uint32",sint32:"sint32"},Ss={uint8:1,sint8:1,uint16:2,sint16:2,float16:2,float32:4,uint32:4,sint32:4};function Lr(e){var t;e.endsWith("-webgl")&&(e.replace("-webgl",""),t=!0);var r=e.split("x"),n=H(r,2),o=n[0],i=n[1],s=o,u=i?parseInt(i):1,_=or(s),c={type:s,components:u,byteLength:_.byteLength*u,integer:_.integer,signed:_.signed,normalized:_.normalized};return t&&(c.webglOnly=!0),c}function Da(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function gs(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Da(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Da(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var Os=/^(rg?b?a?)([0-9]*)([a-z]*)(-srgb)?(-webgl|-unsized)?$/;function sr(e){var t=Os.exec(e);if(t){var r=H(t,6),n=r[1],o=r[2],i=r[3],s=r[4],u=r[5];if(n){var _="".concat(i).concat(o),c=or(_);return gs({format:n,components:0,srgb:s==="-srgb",unsized:u==="-unsized",webgl:u==="-webgl"},c)}}return bs(e)}var vs={"rgba4unorm-webgl":{format:"rgba",bpp:2},"rgb565unorm-webgl":{format:"rgb",bpp:2},"rgb5a1unorm-webgl":{format:"rgba",bbp:2},rgb9e5ufloat:{format:"rgb",bbp:4},rg11b10ufloat:{format:"rgb",bbp:4},rgb10a2unorm:{format:"rgba",bbp:4},"rgb10a2unorm-webgl":{format:"rgba",bbp:4},stencil8:{components:1,bpp:1,a:"stencil"},depth16unorm:{components:1,bpp:2,a:"depth"},depth24plus:{components:1,bpp:3,a:"depth"},depth32float:{components:1,bpp:4,a:"depth"},"depth24plus-stencil8":{components:2,bpp:4,a:"depth-stencil"},"depth24unorm-stencil8":{components:2,bpp:4,a:"depth-stencil"},"depth32float-stencil8":{components:2,bpp:4,a:"depth-stencil"}};function bs(e){var t=vs[e];if(!t)throw new Error("Unknown format ".concat(e));return{format:t.format||"",components:t.components||1,byteLength:t.bpp||1,srgb:!1,unsized:!1}}function Ua(e){var t=H(Cs[e],2),r=t[0],n=t[1],o=r==="i32"||r==="u32",i=r!=="u32",s=Is[r]*n,u=Ns(r,n);return{dataType:r,components:n,defaultVertexFormat:u,byteLength:s,integer:o,signed:i}}function Ns(e,t){var r;switch(e){case"f32":r="float32";break;case"i32":r="sint32";break;case"u32":r="uint32";break;case"f16":return t<=2?"float16x2":"float16x4"}return t===1?r:"".concat(r,"x").concat(t)}var Cs={f32:["f32",1],"vec2<f32>":["f32",2],"vec3<f32>":["f32",3],"vec4<f32>":["f32",4],f16:["f16",1],"vec2<f16>":["f16",2],"vec3<f16>":["f16",3],"vec4<f16>":["f16",4],i32:["i32",1],"vec2<i32>":["i32",2],"vec3<i32>":["i32",3],"vec4<i32>":["i32",4],u32:["u32",1],"vec2<u32>":["u32",2],"vec3<u32>":["u32",3],"vec4<u32>":["u32",4]},Is={f32:4,f16:2,i32:4,u32:4};function Ps(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=ys(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
10
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function ys(e,t){if(e){if(typeof e=="string")return xa(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return xa(e,t)}}function xa(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Wr(e,t,r){var n=t.split(/\r?\n/),o="",i=Ps(e),s;try{for(i.s();!(s=i.n()).done;){var u=s.value;o+=Fs(u,n,u.lineNum,r)}}catch(_){i.e(_)}finally{i.f()}return o}function Fs(e,t,r,n){if(n!=null&&n.showSourceCode){var o=e.linePos>0?"".concat(" ".repeat(e.linePos+5),`^^^
11
- `):"",i=Bs(t,r);return"".concat(i).concat(o).concat(e.type.toUpperCase(),": ").concat(e.message,`
7
+ var __exports__=(()=>{var vo=Object.create;var jt=Object.defineProperty;var bo=Object.getOwnPropertyDescriptor;var No=Object.getOwnPropertyNames;var Co=Object.getPrototypeOf,Io=Object.prototype.hasOwnProperty;var Br=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Po=(e,t)=>{for(var r in t)jt(e,r,{get:t[r],enumerable:!0})},yn=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of No(t))!Io.call(e,o)&&o!==r&&jt(e,o,{get:()=>t[o],enumerable:!(n=bo(t,o))||n.enumerable});return e};var He=(e,t,r)=>(r=e!=null?vo(Co(e)):{},yn(t||!e||!e.__esModule?jt(r,"default",{value:e,enumerable:!0}):r,e)),yo=e=>yn(jt({},"__esModule",{value:!0}),e);var Xn=Br((dc,Be)=>{function Dr(e){return Be.exports=Dr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Be.exports.__esModule=!0,Be.exports.default=Be.exports,Dr(e)}Be.exports=Dr,Be.exports.__esModule=!0,Be.exports.default=Be.exports});var Wn=Br((Tc,Me)=>{var Ln=Xn().default;function Hn(){"use strict";Me.exports=Hn=function(){return e},Me.exports.__esModule=!0,Me.exports.default=Me.exports;var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(h,T,S){h[T]=S.value},o=typeof Symbol=="function"?Symbol:{},i=o.iterator||"@@iterator",s=o.asyncIterator||"@@asyncIterator",u=o.toStringTag||"@@toStringTag";function f(h,T,S){return Object.defineProperty(h,T,{value:S,enumerable:!0,configurable:!0,writable:!0}),h[T]}try{f({},"")}catch{f=function(S,M,U){return S[M]=U}}function c(h,T,S,M){var U=T&&T.prototype instanceof l?T:l,D=Object.create(U.prototype),k=new re(M||[]);return n(D,"_invoke",{value:H(h,S,k)}),D}function E(h,T,S){try{return{type:"normal",arg:h.call(T,S)}}catch(M){return{type:"throw",arg:M}}}e.wrap=c;var R={};function l(){}function d(){}function A(){}var m={};f(m,i,function(){return this});var g=Object.getPrototypeOf,v=g&&g(g(K([])));v&&v!==t&&r.call(v,i)&&(m=v);var N=A.prototype=l.prototype=Object.create(m);function y(h){["next","throw","return"].forEach(function(T){f(h,T,function(S){return this._invoke(T,S)})})}function F(h,T){function S(U,D,k,ne){var Q=E(h[U],h,D);if(Q.type!=="throw"){var Re=Q.arg,ae=Re.value;return ae&&Ln(ae)=="object"&&r.call(ae,"__await")?T.resolve(ae.__await).then(function(Te){S("next",Te,k,ne)},function(Te){S("throw",Te,k,ne)}):T.resolve(ae).then(function(Te){Re.value=Te,k(Re)},function(Te){return S("throw",Te,k,ne)})}ne(Q.arg)}var M;n(this,"_invoke",{value:function(D,k){function ne(){return new T(function(Q,Re){S(D,k,Q,Re)})}return M=M?M.then(ne,ne):ne()}})}function H(h,T,S){var M="suspendedStart";return function(U,D){if(M==="executing")throw new Error("Generator is already running");if(M==="completed"){if(U==="throw")throw D;return{value:void 0,done:!0}}for(S.method=U,S.arg=D;;){var k=S.delegate;if(k){var ne=x(k,S);if(ne){if(ne===R)continue;return ne}}if(S.method==="next")S.sent=S._sent=S.arg;else if(S.method==="throw"){if(M==="suspendedStart")throw M="completed",S.arg;S.dispatchException(S.arg)}else S.method==="return"&&S.abrupt("return",S.arg);M="executing";var Q=E(h,T,S);if(Q.type==="normal"){if(M=S.done?"completed":"suspendedYield",Q.arg===R)continue;return{value:Q.arg,done:S.done}}Q.type==="throw"&&(M="completed",S.method="throw",S.arg=Q.arg)}}}function x(h,T){var S=T.method,M=h.iterator[S];if(M===void 0)return T.delegate=null,S==="throw"&&h.iterator.return&&(T.method="return",T.arg=void 0,x(h,T),T.method==="throw")||S!=="return"&&(T.method="throw",T.arg=new TypeError("The iterator does not provide a '"+S+"' method")),R;var U=E(M,h.iterator,T.arg);if(U.type==="throw")return T.method="throw",T.arg=U.arg,T.delegate=null,R;var D=U.arg;return D?D.done?(T[h.resultName]=D.value,T.next=h.nextLoc,T.method!=="return"&&(T.method="next",T.arg=void 0),T.delegate=null,R):D:(T.method="throw",T.arg=new TypeError("iterator result is not an object"),T.delegate=null,R)}function Z(h){var T={tryLoc:h[0]};1 in h&&(T.catchLoc=h[1]),2 in h&&(T.finallyLoc=h[2],T.afterLoc=h[3]),this.tryEntries.push(T)}function z(h){var T=h.completion||{};T.type="normal",delete T.arg,h.completion=T}function re(h){this.tryEntries=[{tryLoc:"root"}],h.forEach(Z,this),this.reset(!0)}function K(h){if(h||h===""){var T=h[i];if(T)return T.call(h);if(typeof h.next=="function")return h;if(!isNaN(h.length)){var S=-1,M=function U(){for(;++S<h.length;)if(r.call(h,S))return U.value=h[S],U.done=!1,U;return U.value=void 0,U.done=!0,U};return M.next=M}}throw new TypeError(Ln(h)+" is not iterable")}return d.prototype=A,n(N,"constructor",{value:A,configurable:!0}),n(A,"constructor",{value:d,configurable:!0}),d.displayName=f(A,u,"GeneratorFunction"),e.isGeneratorFunction=function(h){var T=typeof h=="function"&&h.constructor;return!!T&&(T===d||(T.displayName||T.name)==="GeneratorFunction")},e.mark=function(h){return Object.setPrototypeOf?Object.setPrototypeOf(h,A):(h.__proto__=A,f(h,u,"GeneratorFunction")),h.prototype=Object.create(N),h},e.awrap=function(h){return{__await:h}},y(F.prototype),f(F.prototype,s,function(){return this}),e.AsyncIterator=F,e.async=function(h,T,S,M,U){U===void 0&&(U=Promise);var D=new F(c(h,T,S,M),U);return e.isGeneratorFunction(T)?D:D.next().then(function(k){return k.done?k.value:D.next()})},y(N),f(N,u,"Generator"),f(N,i,function(){return this}),f(N,"toString",function(){return"[object Generator]"}),e.keys=function(h){var T=Object(h),S=[];for(var M in T)S.push(M);return S.reverse(),function U(){for(;S.length;){var D=S.pop();if(D in T)return U.value=D,U.done=!1,U}return U.done=!0,U}},e.values=K,re.prototype={constructor:re,reset:function(T){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(z),!T)for(var S in this)S.charAt(0)==="t"&&r.call(this,S)&&!isNaN(+S.slice(1))&&(this[S]=void 0)},stop:function(){this.done=!0;var T=this.tryEntries[0].completion;if(T.type==="throw")throw T.arg;return this.rval},dispatchException:function(T){if(this.done)throw T;var S=this;function M(Re,ae){return k.type="throw",k.arg=T,S.next=Re,ae&&(S.method="next",S.arg=void 0),!!ae}for(var U=this.tryEntries.length-1;U>=0;--U){var D=this.tryEntries[U],k=D.completion;if(D.tryLoc==="root")return M("end");if(D.tryLoc<=this.prev){var ne=r.call(D,"catchLoc"),Q=r.call(D,"finallyLoc");if(ne&&Q){if(this.prev<D.catchLoc)return M(D.catchLoc,!0);if(this.prev<D.finallyLoc)return M(D.finallyLoc)}else if(ne){if(this.prev<D.catchLoc)return M(D.catchLoc,!0)}else{if(!Q)throw new Error("try statement without catch or finally");if(this.prev<D.finallyLoc)return M(D.finallyLoc)}}}},abrupt:function(T,S){for(var M=this.tryEntries.length-1;M>=0;--M){var U=this.tryEntries[M];if(U.tryLoc<=this.prev&&r.call(U,"finallyLoc")&&this.prev<U.finallyLoc){var D=U;break}}D&&(T==="break"||T==="continue")&&D.tryLoc<=S&&S<=D.finallyLoc&&(D=null);var k=D?D.completion:{};return k.type=T,k.arg=S,D?(this.method="next",this.next=D.finallyLoc,R):this.complete(k)},complete:function(T,S){if(T.type==="throw")throw T.arg;return T.type==="break"||T.type==="continue"?this.next=T.arg:T.type==="return"?(this.rval=this.arg=T.arg,this.method="return",this.next="end"):T.type==="normal"&&S&&(this.next=S),R},finish:function(T){for(var S=this.tryEntries.length-1;S>=0;--S){var M=this.tryEntries[S];if(M.finallyLoc===T)return this.complete(M.completion,M.afterLoc),z(M),R}},catch:function(T){for(var S=this.tryEntries.length-1;S>=0;--S){var M=this.tryEntries[S];if(M.tryLoc===T){var U=M.completion;if(U.type==="throw"){var D=U.arg;z(M)}return D}}throw new Error("illegal catch attempt")},delegateYield:function(T,S,M){return this.delegate={iterator:K(T),resultName:S,nextLoc:M},this.method==="next"&&(this.arg=void 0),R}},e}Me.exports=Hn,Me.exports.__esModule=!0,Me.exports.default=Me.exports});var Ue=Br((Ac,Vn)=>{var Yt=Wn()();Vn.exports=Yt;try{regeneratorRuntime=Yt}catch{typeof globalThis=="object"?globalThis.regeneratorRuntime=Yt:Function("r","regeneratorRuntime = r")(Yt)}});var Y_={};Po(Y_,{Accessor:()=>ve,BufferWithAccessor:()=>mt,WEBGLBuffer:()=>me,WEBGLCommandEncoder:()=>Pr,WEBGLFramebuffer:()=>Tt,WEBGLRenderPass:()=>Nr,WEBGLRenderPipeline:()=>Ir,WEBGLRenderbuffer:()=>dt,WEBGLResource:()=>Wt,WEBGLSampler:()=>qe,WEBGLShader:()=>br,WEBGLTexture:()=>he,WEBGLVertexArray:()=>yr,WebGLCanvasContext:()=>vr,WebGLDevice:()=>ue,WebGLResource:()=>Wt,_TEXTURE_FORMATS:()=>Ze,_checkFloat32ColorAttachment:()=>Ar,assertWebGL2Context:()=>ft,assertWebGLContext:()=>_r,clear:()=>Ro,convertGLToTextureFormat:()=>Qe,copyToTexture:()=>So,getGLParameters:()=>lr,getShaderLayout:()=>Cr,getWebGL2Context:()=>yt,isWebGL:()=>Zr,isWebGL2:()=>W,polyfillContext:()=>Er,popContextState:()=>Ie,pushContextState:()=>De,readPixelsToArray:()=>mo,readPixelsToBuffer:()=>ho,registerHeadlessGL:()=>Mn,resetGLParameters:()=>ai,setDeviceParameters:()=>mr,setGLParameters:()=>ge,trackContextState:()=>Dt,withDeviceParameters:()=>Oi,withGLParameters:()=>Ee});function _e(e){return _e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_e(e)}function Mr(e,t){if(_e(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(_e(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ht(e){var t=Mr(e,"string");return _e(t)==="symbol"?t:String(t)}function _(e,t,r){return t=ht(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Fn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Bn(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Fn(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Fn(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var Fo="Failed to create WebGL context in Node.js, headless gl returned null",Bo=" luma.gl: loaded under Node.js without headless gl installed, meaning that WebGL contexts can not be created. This may not be an error. For example, this is a typical configuration for isorender applications running on the server.",Mo={width:1,height:1,debug:!0,throwOnError:!1},Kt=null;function Mn(e){Kt=e}function Dn(){return Kt!==null}function xn(e){e=Bn(Bn({},Mo),e);var t=e,r=t.width,n=t.height,o=t.webgl1,i=t.webgl2;if(i&&!o)throw new Error("headless-gl does not support WebGL2");if(!Kt)throw new Error(Bo);var s=Kt(r,n,e);if(!s)throw new Error(Fo);return s}function Un(e,t,r,n,o,i,s){try{var u=e[i](s),f=u.value}catch(c){r(c);return}u.done?t(f):Promise.resolve(f).then(n,o)}function oe(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function s(f){Un(i,n,o,s,u,"next",f)}function u(f){Un(i,n,o,s,u,"throw",f)}s(void 0)})}}function I(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function wn(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,ht(n.key),n)}}function P(e,t,r){return t&&wn(e.prototype,t),r&&wn(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function be(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function We(e,t){return We=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,o){return n.__proto__=o,n},We(e,t)}function w(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&We(e,t)}function X(e,t){if(t&&(_e(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return be(e)}function O(e){return O=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},O(e)}var Nn=He(Ue(),1);function St(e){if(typeof window<"u"&&typeof window.process=="object"&&window.process.type==="renderer"||typeof process<"u"&&typeof process.versions=="object"&&Boolean(process.versions.electron))return!0;let t=typeof navigator=="object"&&typeof navigator.userAgent=="string"&&navigator.userAgent,r=e||t;return!!(r&&r.indexOf("Electron")>=0)}function q(){return!(typeof process=="object"&&String(process)==="[object process]"&&!process.browser)||St()}var Do=globalThis.self||globalThis.window||globalThis.global,Je=globalThis.window||globalThis.self||globalThis.global,xo=globalThis.document||{},Ve=globalThis.process||{},Uo=globalThis.console,jn=globalThis.navigator||{};var kt=typeof __VERSION__<"u"?__VERSION__:"untranspiled source",Oc=q();var xr=globalThis;function Gt(e){if(!e&&!q())return"Node";if(St(e))return"Electron";let t=e||jn.userAgent||"";if(t.indexOf("Edge")>-1)return"Edge";let r=t.indexOf("MSIE ")!==-1,n=t.indexOf("Trident/")!==-1;return r||n?"IE":xr.chrome?"Chrome":xr.safari?"Safari":xr.mozInnerScreenX?"Firefox":"Unknown"}function wo(e){try{let t=window[e],r="__storage_test__";return t.setItem(r,r),t.removeItem(r),t}catch{return null}}var zt=class{constructor(t,r){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"sessionStorage";this.storage=void 0,this.id=void 0,this.config=void 0,this.storage=wo(n),this.id=t,this.config=r,this._loadConfiguration()}getConfiguration(){return this.config}setConfiguration(t){if(Object.assign(this.config,t),this.storage){let r=JSON.stringify(this.config);this.storage.setItem(this.id,r)}}_loadConfiguration(){let t={};if(this.storage){let r=this.storage.getItem(this.id);t=r?JSON.parse(r):{}}return Object.assign(this.config,t),this}};function Kn(e){let t;return e<10?t="".concat(e.toFixed(2),"ms"):e<100?t="".concat(e.toFixed(1),"ms"):e<1e3?t="".concat(e.toFixed(0),"ms"):t="".concat((e/1e3).toFixed(2),"s"),t}function Yn(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:8,r=Math.max(t-e.length,0);return"".concat(" ".repeat(r)).concat(e)}function $t(e,t,r){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:600,o=e.src.replace(/\(/g,"%28").replace(/\)/g,"%29");e.width>n&&(r=Math.min(r,n/e.width));let i=e.width*r,s=e.height*r,u=["font-size:1px;","padding:".concat(Math.floor(s/2),"px ").concat(Math.floor(i/2),"px;"),"line-height:".concat(s,"px;"),"background:url(".concat(o,");"),"background-size:".concat(i,"px ").concat(s,"px;"),"color:transparent;"].join("");return["".concat(t," %c+"),u]}var Zt;(function(e){e[e.BLACK=30]="BLACK",e[e.RED=31]="RED",e[e.GREEN=32]="GREEN",e[e.YELLOW=33]="YELLOW",e[e.BLUE=34]="BLUE",e[e.MAGENTA=35]="MAGENTA",e[e.CYAN=36]="CYAN",e[e.WHITE=37]="WHITE",e[e.BRIGHT_BLACK=90]="BRIGHT_BLACK",e[e.BRIGHT_RED=91]="BRIGHT_RED",e[e.BRIGHT_GREEN=92]="BRIGHT_GREEN",e[e.BRIGHT_YELLOW=93]="BRIGHT_YELLOW",e[e.BRIGHT_BLUE=94]="BRIGHT_BLUE",e[e.BRIGHT_MAGENTA=95]="BRIGHT_MAGENTA",e[e.BRIGHT_CYAN=96]="BRIGHT_CYAN",e[e.BRIGHT_WHITE=97]="BRIGHT_WHITE"})(Zt||(Zt={}));var Xo=10;function kn(e){return typeof e!="string"?e:(e=e.toUpperCase(),Zt[e]||Zt.WHITE)}function Gn(e,t,r){if(!q&&typeof e=="string"){if(t){let n=kn(t);e="\x1B[".concat(n,"m").concat(e,"\x1B[39m")}if(r){let n=kn(r);e="\x1B[".concat(n+Xo,"m").concat(e,"\x1B[49m")}}return e}function zn(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:["constructor"],r=Object.getPrototypeOf(e),n=Object.getOwnPropertyNames(r),o=e;for(let i of n){let s=o[i];typeof s=="function"&&(t.find(u=>i===u)||(o[i]=s.bind(e)))}}function et(e,t){if(!e)throw new Error(t||"Assertion failed")}function je(){let e;if(q()&&Je.performance){var t,r;e=Je===null||Je===void 0||(t=Je.performance)===null||t===void 0||(r=t.now)===null||r===void 0?void 0:r.call(t)}else if("hrtime"in Ve){var n;let o=Ve===null||Ve===void 0||(n=Ve.hrtime)===null||n===void 0?void 0:n.call(Ve);e=o[0]*1e3+o[1]/1e6}else e=Date.now();return e}var tt={debug:q()&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},Lo={enabled:!0,level:0};function Ae(){}var $n={},Zn={once:!0},we=class{constructor(){let{id:t}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{id:""};this.id=void 0,this.VERSION=kt,this._startTs=je(),this._deltaTs=je(),this._storage=void 0,this.userData={},this.LOG_THROTTLE_TIMEOUT=0,this.id=t,this.userData={},this._storage=new zt("__probe-".concat(this.id,"__"),Lo),this.timeStamp("".concat(this.id," started")),zn(this),Object.seal(this)}set level(t){this.setLevel(t)}get level(){return this.getLevel()}isEnabled(){return this._storage.config.enabled}getLevel(){return this._storage.config.level}getTotal(){return Number((je()-this._startTs).toPrecision(10))}getDelta(){return Number((je()-this._deltaTs).toPrecision(10))}set priority(t){this.level=t}get priority(){return this.level}getPriority(){return this.level}enable(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return this._storage.setConfiguration({enabled:t}),this}setLevel(t){return this._storage.setConfiguration({level:t}),this}get(t){return this._storage.config[t]}set(t,r){this._storage.setConfiguration({[t]:r})}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}assert(t,r){et(t,r)}warn(t){return this._getLogFunction(0,t,tt.warn,arguments,Zn)}error(t){return this._getLogFunction(0,t,tt.error,arguments)}deprecated(t,r){return this.warn("`".concat(t,"` is deprecated and will be removed in a later version. Use `").concat(r,"` instead"))}removed(t,r){return this.error("`".concat(t,"` has been removed. Use `").concat(r,"` instead"))}probe(t,r){return this._getLogFunction(t,r,tt.log,arguments,{time:!0,once:!0})}log(t,r){return this._getLogFunction(t,r,tt.debug,arguments)}info(t,r){return this._getLogFunction(t,r,console.info,arguments)}once(t,r){return this._getLogFunction(t,r,tt.debug||tt.info,arguments,Zn)}table(t,r,n){return r?this._getLogFunction(t,r,console.table||Ae,n&&[n],{tag:jo(r)}):Ae}image(t){let{logLevel:r,priority:n,image:o,message:i="",scale:s=1}=t;return this._shouldLog(r||n)?q()?Vo({image:o,message:i,scale:s}):Wo({image:o,message:i,scale:s}):Ae}time(t,r){return this._getLogFunction(t,r,console.time?console.time:console.info)}timeEnd(t,r){return this._getLogFunction(t,r,console.timeEnd?console.timeEnd:console.info)}timeStamp(t,r){return this._getLogFunction(t,r,console.timeStamp||Ae)}group(t,r){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{collapsed:!1},o=Qn({logLevel:t,message:r,opts:n}),{collapsed:i}=n;return o.method=(i?console.groupCollapsed:console.group)||console.info,this._getLogFunction(o)}groupCollapsed(t,r){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.group(t,r,Object.assign({},n,{collapsed:!0}))}groupEnd(t){return this._getLogFunction(t,"",console.groupEnd||Ae)}withGroup(t,r,n){this.group(t,r)();try{n()}finally{this.groupEnd(t)()}}trace(){console.trace&&console.trace()}_shouldLog(t){return this.isEnabled()&&this.getLevel()>=qn(t)}_getLogFunction(t,r,n,o,i){if(this._shouldLog(t)){i=Qn({logLevel:t,message:r,args:o,opts:i}),n=n||i.method,et(n),i.total=this.getTotal(),i.delta=this.getDelta(),this._deltaTs=je();let s=i.tag||i.message;if(i.once&&s)if(!$n[s])$n[s]=je();else return Ae;return r=Ho(this.id,i.message,i),n.bind(console,r,...i.args)}return Ae}};we.VERSION=kt;function qn(e){if(!e)return 0;let t;switch(typeof e){case"number":t=e;break;case"object":t=e.logLevel||e.priority||0;break;default:return 0}return et(Number.isFinite(t)&&t>=0),t}function Qn(e){let{logLevel:t,message:r}=e;e.logLevel=qn(t);let n=e.args?Array.from(e.args):[];for(;n.length&&n.shift()!==r;);switch(typeof t){case"string":case"function":r!==void 0&&n.unshift(r),e.message=t;break;case"object":Object.assign(e,t);break;default:}typeof e.message=="function"&&(e.message=e.message());let o=typeof e.message;return et(o==="string"||o==="object"),Object.assign(e,{args:n},e.opts)}function Ho(e,t,r){if(typeof t=="string"){let n=r.time?Yn(Kn(r.total)):"";t=r.time?"".concat(e,": ").concat(n," ").concat(t):"".concat(e,": ").concat(t),t=Gn(t,r.color,r.background)}return t}function Wo(e){let{image:t,message:r="",scale:n=1}=e;return console.warn("removed"),Ae}function Vo(e){let{image:t,message:r="",scale:n=1}=e;if(typeof t=="string"){let i=new Image;return i.onload=()=>{let s=$t(i,r,n);console.log(...s)},i.src=t,Ae}let o=t.nodeName||"";if(o.toLowerCase()==="img")return console.log(...$t(t,r,n)),Ae;if(o.toLowerCase()==="canvas"){let i=new Image;return i.onload=()=>console.log(...$t(i,r,n)),i.src=t.toDataURL(),Ae}return Ae}function jo(e){for(let t in e)for(let r in e[t])return r||"untitled";return"empty"}var eE=new we({id:"@probe.gl/log"});var C=new we({id:"luma.gl"});function gt(){let e;if(typeof window<"u"&&window.performance)e=window.performance.now();else if(typeof process<"u"&&process.hrtime){let t=process.hrtime();e=t[0]*1e3+t[1]/1e6}else e=Date.now();return e}var Ke=class{constructor(t,r){this.name=void 0,this.type=void 0,this.sampleSize=1,this.time=0,this.count=0,this.samples=0,this.lastTiming=0,this.lastSampleTime=0,this.lastSampleCount=0,this._count=0,this._time=0,this._samples=0,this._startTime=0,this._timerPending=!1,this.name=t,this.type=r,this.reset()}reset(){return this.time=0,this.count=0,this.samples=0,this.lastTiming=0,this.lastSampleTime=0,this.lastSampleCount=0,this._count=0,this._time=0,this._samples=0,this._startTime=0,this._timerPending=!1,this}setSampleSize(t){return this.sampleSize=t,this}incrementCount(){return this.addCount(1),this}decrementCount(){return this.subtractCount(1),this}addCount(t){return this._count+=t,this._samples++,this._checkSampling(),this}subtractCount(t){return this._count-=t,this._samples++,this._checkSampling(),this}addTime(t){return this._time+=t,this.lastTiming=t,this._samples++,this._checkSampling(),this}timeStart(){return this._startTime=gt(),this._timerPending=!0,this}timeEnd(){return this._timerPending?(this.addTime(gt()-this._startTime),this._timerPending=!1,this._checkSampling(),this):this}getSampleAverageCount(){return this.sampleSize>0?this.lastSampleCount/this.sampleSize:0}getSampleAverageTime(){return this.sampleSize>0?this.lastSampleTime/this.sampleSize:0}getSampleHz(){return this.lastSampleTime>0?this.sampleSize/(this.lastSampleTime/1e3):0}getAverageCount(){return this.samples>0?this.count/this.samples:0}getAverageTime(){return this.samples>0?this.time/this.samples:0}getHz(){return this.time>0?this.samples/(this.time/1e3):0}_checkSampling(){this._samples===this.sampleSize&&(this.lastSampleTime=this._time,this.lastSampleCount=this._count,this.count+=this._count,this.time+=this._time,this.samples+=this._samples,this._time=0,this._count=0,this._samples=0)}};var rt=class{constructor(t){this.id=void 0,this.stats={},this.id=t.id,this.stats={},this._initializeStats(t.stats),Object.seal(this)}get(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"count";return this._getOrCreate({name:t,type:r})}get size(){return Object.keys(this.stats).length}reset(){for(let t of Object.values(this.stats))t.reset();return this}forEach(t){for(let r of Object.values(this.stats))t(r)}getTable(){let t={};return this.forEach(r=>{t[r.name]={time:r.time||0,count:r.count||0,average:r.getAverageTime()||0,hz:r.getHz()||0}}),t}_initializeStats(){(arguments.length>0&&arguments[0]!==void 0?arguments[0]:[]).forEach(r=>this._getOrCreate(r))}_getOrCreate(t){let{name:r,type:n}=t,o=this.stats[r];return o||(t instanceof Ke?o=t:o=new Ke(r,n),this.stats[r]=o),o}};var Ko=function(){function e(){I(this,e),this.stats=new Map}var t=e.prototype;return t.getStats=function(n){return this.get(n)},t.get=function(n){return this.stats.has(n)||this.stats.set(n,new rt({id:n})),this.stats.get(n)},P(e)}(),Qt=new Ko;function Yo(){var e=typeof __VERSION__<"u"?__VERSION__:"untranspiled source",t="set luma.log.level=1 (or higher) to trace rendering";if(globalThis.luma&&globalThis.luma.VERSION!==e)throw new Error("luma.gl - multiple VERSIONs detected: ".concat(globalThis.luma.VERSION," vs ").concat(e));return globalThis.luma||(q()&&C.log(1,"luma.gl ".concat(e," - ").concat(t))(),globalThis.luma=globalThis.luma||{VERSION:e,version:e,log:C,stats:Qt}),e}var Jn=Yo();var Ur={};function Se(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"id";Ur[e]=Ur[e]||1;var t=Ur[e]++;return"".concat(e,"-").concat(t)}function qt(e){return e>0&&(e&e-1)===0}function nt(e){var t=!0;for(var r in e){t=!1;break}return t}function ea(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function ko(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ea(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ea(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var j=function(){function e(r,n,o){if(I(this,e),this.id=void 0,this.props=void 0,this.userData={},this.device=void 0,this._device=void 0,this.destroyed=!1,this.allocatedBytes=0,this._attachedResources=new Set,!r)throw new Error("no device");this._device=r,this.props=Go(n,o);var i=this.props.id!=="undefined"?this.props.id:Se(this[Symbol.toStringTag]);this.props.id=i,this.id=i,this.userData=this.props.userData||{},this.addStats()}var t=e.prototype;return t.destroy=function(){this.destroyResource()},t.delete=function(){return this.destroy(),this},t.toString=function(){return"".concat(this[Symbol.toStringTag]||this.constructor.name,"(").concat(this.id,")")},t.getProps=function(){return this.props},t.attachResource=function(n){this._attachedResources.add(n)},t.detachResource=function(n){this._attachedResources.delete(n)},t.destroyAttachedResource=function(n){this._attachedResources.delete(n)&&n.destroy()},t.destroyAttachedResources=function(){for(var n=0,o=Object.values(this._attachedResources);n<o.length;n++){var i=o[n];i.destroy()}this._attachedResources=new Set},t.destroyResource=function(){this.destroyAttachedResources(),this.removeStats(),this.destroyed=!0},t.removeStats=function(){var n=this._device.statsManager.getStats("Resource Counts"),o=this[Symbol.toStringTag];n.get("".concat(o,"s Active")).decrementCount()},t.trackAllocatedMemory=function(n){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this[Symbol.toStringTag],i=this._device.statsManager.getStats("Resource Counts");i.get("GPU Memory").addCount(n),i.get("".concat(o," Memory")).addCount(n),this.allocatedBytes=n},t.trackDeallocatedMemory=function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this[Symbol.toStringTag],o=this._device.statsManager.getStats("Resource Counts");o.get("GPU Memory").subtractCount(this.allocatedBytes),o.get("".concat(n," Memory")).subtractCount(this.allocatedBytes),this.allocatedBytes=0},t.addStats=function(){var n=this._device.statsManager.getStats("Resource Counts"),o=this[Symbol.toStringTag];n.get("Resources Created").incrementCount(),n.get("".concat(o,"s Created")).incrementCount(),n.get("".concat(o,"s Active")).incrementCount()},P(e)}();j.defaultProps={id:"undefined",handle:void 0,userData:void 0};function Go(e,t){var r=ko({},t);for(var n in e)e[n]!==void 0&&(r[n]=e[n]);return r}var ra;function ta(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function wr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ta(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ta(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function zo(e){var t=$o();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function $o(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}ra=Symbol.toStringTag;var ee=function(e){w(r,e);var t=zo(r);function r(o,i){var s;I(this,r);var u=wr({},i);return(i.usage||0)&r.INDEX&&!i.indexType&&(i.data instanceof Uint32Array?u.indexType="uint32":i.data instanceof Uint16Array&&(u.indexType="uint16")),s=t.call(this,o,u,r.defaultProps),s.usage=void 0,s.indexType=void 0,s.byteLength=void 0,s.usage=i.usage||0,s.indexType=u.indexType,s}var n=r.prototype;return n.write=function(i,s){throw new Error("not implemented")},n.readAsync=function(i,s){throw new Error("not implemented")},n.getData=function(){throw new Error("not implemented")},P(r,[{key:ra,get:function(){return"Buffer"}}]),r}(j);ee.defaultProps=wr(wr({},j.defaultProps),{},{usage:0,byteLength:0,byteOffset:0,data:null,indexType:"uint16",mappedAtCreation:!1});ee.MAP_READ=1;ee.MAP_WRITE=2;ee.COPY_SRC=4;ee.COPY_DST=8;ee.INDEX=16;ee.VERTEX=32;ee.UNIFORM=64;ee.STORAGE=128;ee.INDIRECT=256;ee.QUERY_RESOLVE=512;var aa;function na(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Xr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?na(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):na(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var Zo={id:null,type:"best-available",canvas:null,container:null,webgl2:!0,webgl1:!0,manageState:!0,width:800,height:600,debug:Boolean(C.get("debug")),break:[],gl:null};aa=Symbol.toStringTag;var Ot=function(){function e(r){I(this,e),this.id=void 0,this.statsManager=Qt,this.props=void 0,this.userData={},this._lumaData={},this.info=void 0,this.lost=void 0,this.canvasContext=void 0,this.props=Xr(Xr({},Zo),r),this.id=this.props.id||Se(this[Symbol.toStringTag].toLowerCase())}var t=e.prototype;return t.loseDevice=function(){return!1},t.createTexture=function(n){return(n instanceof Promise||typeof n=="string")&&(n={data:n}),this._createTexture(n)},t.createCommandEncoder=function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};throw new Error("not implemented")},t._getBufferProps=function(n){(n instanceof ArrayBuffer||ArrayBuffer.isView(n))&&(n={data:n});var o=Xr({},n);return(n.usage||0)&ee.INDEX&&!n.indexType&&(n.data instanceof Uint32Array?o.indexType="uint32":n.data instanceof Uint16Array?o.indexType="uint16":C.warn("indices buffer content must be of integer type")()),o},P(e,[{key:aa,get:function(){return"Device"}}]),e}();Ot.VERSION=Jn;function vt(e){if(Array.isArray(e))return e}function Lr(e,t){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,o,i,s,u=[],f=!0,c=!1;try{if(i=(r=r.call(e)).next,t===0){if(Object(r)!==r)return;f=!1}else for(;!(f=(n=i.call(r)).done)&&(u.push(n.value),u.length!==t);f=!0);}catch(E){c=!0,o=E}finally{try{if(!f&&r.return!=null&&(s=r.return(),Object(s)!==s))return}finally{if(c)throw o}}return u}}function at(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Ye(e,t){if(e){if(typeof e=="string")return at(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return at(e,t)}}function bt(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
8
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function L(e,t){return vt(e)||Lr(e,t)||Ye(e,t)||bt()}function Qo(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=qo(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
9
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function qo(e,t){if(e){if(typeof e=="string")return ia(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ia(e,t)}}function ia(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function oa(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function sa(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?oa(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):oa(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var Jo=q()&&typeof document<"u",Jt=function(){return Jo&&document.readyState==="complete"},es={canvas:null,width:800,height:600,useDevicePixels:!0,autoResize:!0,container:null,visible:!0,colorSpace:"srgb",alphaMode:"opaque"},it=function(){function e(r){var n=this;if(I(this,e),this.device=void 0,this.id=void 0,this.props=void 0,this.canvas=void 0,this.htmlCanvas=void 0,this.offscreenCanvas=void 0,this.type=void 0,this.width=1,this.height=1,this.resizeObserver=void 0,this._canvasSizeInfo={clientWidth:0,clientHeight:0,devicePixelRatio:1},this.props=sa(sa({},es),r),r=this.props,!q()){this.id="node-canvas-context",this.type="node",this.width=this.props.width,this.height=this.props.height,this.canvas=null;return}if(r.canvas)typeof r.canvas=="string"?this.canvas=ns(r.canvas):this.canvas=r.canvas;else{var o,i,s=as(r),u=rs(((o=r)===null||o===void 0?void 0:o.container)||null);u.insertBefore(s,u.firstChild),this.canvas=s,(i=r)!==null&&i!==void 0&&i.visible||(this.canvas.style.visibility="hidden")}this.canvas instanceof HTMLCanvasElement?(this.id=this.canvas.id,this.type="html-canvas",this.htmlCanvas=this.canvas):(this.id="offscreen-canvas",this.type="offscreen-canvas",this.offscreenCanvas=this.canvas),this.canvas instanceof HTMLCanvasElement&&r.autoResize&&(this.resizeObserver=new ResizeObserver(function(f){var c=Qo(f),E;try{for(c.s();!(E=c.n()).done;){var R=E.value;R.target===n.canvas&&n.update()}}catch(l){c.e(l)}finally{c.f()}}),this.resizeObserver.observe(this.canvas))}var t=e.prototype;return t.getDevicePixelRatio=function(n){if(typeof OffscreenCanvas<"u"&&this.canvas instanceof OffscreenCanvas||(n=n===void 0?this.props.useDevicePixels:n,!n||n<=0))return 1;if(n===!0){var o=typeof window<"u"&&window.devicePixelRatio;return o||1}return n},t.getPixelSize=function(){switch(this.type){case"node":return[this.width,this.height];case"offscreen-canvas":return[this.canvas.width,this.canvas.height];case"html-canvas":var n=this.getDevicePixelRatio(),o=this.canvas;return o.parentElement?[o.clientWidth*n,o.clientHeight*n]:[this.canvas.width,this.canvas.height];default:throw new Error(this.type)}},t.getAspect=function(){var n=this.getPixelSize(),o=L(n,2),i=o[0],s=o[1];return i/s},t.cssToDeviceRatio=function(){try{var n=this.getDrawingBufferSize(),o=L(n,1),i=o[0],s=this._canvasSizeInfo.clientWidth;return s?i/s:1}catch{return 1}},t.cssToDevicePixels=function(n){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,i=this.cssToDeviceRatio(),s=this.getDrawingBufferSize(),u=L(s,2),f=u[0],c=u[1];return is(n,i,f,c,o)},t.setDevicePixelRatio=function(n){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.htmlCanvas){var i="width"in o?o.width:this.htmlCanvas.clientWidth,s="height"in o?o.height:this.htmlCanvas.clientHeight;(!i||!s)&&(C.log(1,"Canvas clientWidth/clientHeight is 0")(),n=1,i=this.htmlCanvas.width||1,s=this.htmlCanvas.height||1);var u=this._canvasSizeInfo;if(u.clientWidth!==i||u.clientHeight!==s||u.devicePixelRatio!==n){var f=n,c=Math.floor(i*f),E=Math.floor(s*f);this.htmlCanvas.width=c,this.htmlCanvas.height=E;var R=this.getDrawingBufferSize(),l=L(R,2),d=l[0],A=l[1];(d!==c||A!==E)&&(f=Math.min(d/i,A/s),this.htmlCanvas.width=Math.floor(i*f),this.htmlCanvas.height=Math.floor(s*f),C.warn("Device pixel ratio clamped")()),this._canvasSizeInfo.clientWidth=i,this._canvasSizeInfo.clientHeight=s,this._canvasSizeInfo.devicePixelRatio=n}}},t.getDrawingBufferSize=function(){var n=this.device.gl;if(!n)throw new Error("canvas size");return[n.drawingBufferWidth,n.drawingBufferHeight]},t._setAutoCreatedCanvasId=function(n){var o;((o=this.htmlCanvas)===null||o===void 0?void 0:o.id)==="lumagl-auto-created-canvas"&&(this.htmlCanvas.id=n)},P(e,null,[{key:"isPageLoaded",get:function(){return Jt()}}]),e}();it.pageLoaded=ts();function ts(){return Jt()||typeof window>"u"?Promise.resolve():new Promise(function(e){window.addEventListener("load",function(){return e()})})}function rs(e){if(typeof e=="string"){var t=document.getElementById(e);if(!t&&!Jt())throw new Error("Accessing '".concat(e,"' before page was loaded"));if(!t)throw new Error("".concat(e," is not an HTML element"));return t}else if(e)return e;return document.body}function ns(e){var t=document.getElementById(e);if(!t&&!Jt())throw new Error("Accessing '".concat(e,"' before page was loaded"));if(!(t instanceof HTMLCanvasElement))throw new Error("'".concat(t,"' is not a canvas element"));return t}function as(e){var t=e.width,r=e.height,n=document.createElement("canvas");return n.id="lumagl-auto-created-canvas",n.width=t||1,n.height=r||1,n.style.width=Number.isFinite(t)?"".concat(t,"px"):"100%",n.style.height=Number.isFinite(r)?"".concat(r,"px"):"100%",n}function is(e,t,r,n,o){var i=e,s=ua(i[0],t,r),u=fa(i[1],t,n,o),f=ua(i[0]+1,t,r),c=f===r-1?f:f-1;f=fa(i[1]+1,t,n,o);var E;return o?(f=f===0?f:f+1,E=u,u=f):E=f===n-1?f:f-1,{x:s,y:u,width:Math.max(c-s+1,1),height:Math.max(E-u+1,1)}}function ua(e,t,r){var n=Math.min(Math.round(e*t),r-1);return n}function fa(e,t,r,n){return n?Math.max(0,r-1-Math.round(e*t)):Math.min(Math.round(e*t),r-1)}var Ea;function _a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function ca(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?_a(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):_a(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function os(e){var t=ss();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function ss(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Ea=Symbol.toStringTag;var se=function(e){w(r,e);var t=os(r);function r(n,o){var i,s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:r.defaultProps;return I(this,r),i=t.call(this,n,o,s),i.dimension=void 0,i.format=void 0,i.width=void 0,i.height=void 0,i.depth=void 0,i.sampler=void 0,i.dimension=i.props.dimension,i.format=i.props.format,i.width=i.props.width,i.height=i.props.height,i.depth=i.props.depth,i}return P(r,[{key:Ea,get:function(){return"Texture"}}]),r}(j);se.defaultProps=ca(ca({},j.defaultProps),{},{data:null,dimension:"2d",format:"rgba8unorm",width:void 0,height:void 0,depth:1,mipmaps:!0,sampler:{},compressed:!1,usage:0,mipLevels:void 0,samples:void 0,type:void 0});se.COPY_SRC=1;se.COPY_DST=2;se.TEXTURE_BINDING=4;se.STORAGE_BINDING=8;se.RENDER_ATTACHMENT=16;var da;function la(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Ra(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?la(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):la(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function us(e){var t=fs();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function fs(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}da=Symbol.toStringTag;var er=function(e){w(r,e);var t=us(r);function r(n,o){var i;return I(this,r),i=t.call(this,n,o,r.defaultProps),i.stage=void 0,i.source=void 0,i.stage=i.props.stage,i.source=i.props.source,i}return P(r,[{key:da,get:function(){return"Shader"}}]),r}(j);er.defaultProps=Ra(Ra({},j.defaultProps),{},{stage:"vertex",source:"",sourceMap:null,language:"auto",shaderType:0});var pa;function Ta(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Aa(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ta(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ta(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function _s(e){var t=cs();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function cs(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}pa=Symbol.toStringTag;var tr=function(e){w(r,e);var t=_s(r);function r(n,o){return I(this,r),t.call(this,n,o,r.defaultProps)}return P(r,[{key:pa,get:function(){return"Sampler"}}]),r}(j);tr.defaultProps=Aa(Aa({},j.defaultProps),{},{type:"color-sampler",addressModeU:"clamp-to-edge",addressModeV:"clamp-to-edge",addressModeW:"clamp-to-edge",magFilter:"nearest",minFilter:"nearest",mipmapFilter:"nearest",lodMinClamp:0,lodMaxClamp:32,compare:"less-equal",maxAnisotropy:1});var ha;function ma(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function ot(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ma(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ma(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Es(e){var t=ls();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function ls(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}ha=Symbol.toStringTag;var st=function(e){w(r,e);var t=Es(r);function r(o){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return I(this,r),i=t.call(this,o,s,r.defaultProps),i.width=void 0,i.height=void 0,i.colorAttachments=[],i.depthStencilAttachment=null,i.width=i.props.width,i.height=i.props.height,i}var n=r.prototype;return n.resize=function(i){var s=!i;if(i){var u=Array.isArray(i)?i:[i.width,i.height],f=L(u,2),c=f[0],E=f[1];s=s||E!==this.height||c!==this.width,this.width=c,this.height=E}s&&(C.log(2,"Resizing framebuffer ".concat(this.id," to ").concat(this.width,"x").concat(this.height))(),this.resizeAttachments(this.width,this.height))},n.autoCreateAttachmentTextures=function(){var i=this;if(this.colorAttachments=this.props.colorAttachments.map(function(u){if(typeof u=="string"){var f=i.createColorTexture(u);return i.attachResource(f),f}return u}),this.props.depthStencilAttachment)if(typeof this.props.depthStencilAttachment=="string"){var s=this.createDepthStencilTexture(this.props.depthStencilAttachment);this.attachResource(s),this.depthStencilAttachment=s}else this.depthStencilAttachment=this.props.depthStencilAttachment},n.createColorTexture=function(i){return this.device.createTexture({id:"color-attachment",usage:se.RENDER_ATTACHMENT,format:i,width:this.width,height:this.height})},n.createDepthStencilTexture=function(i){return this.device.createTexture({id:"depth-stencil-attachment",usage:se.RENDER_ATTACHMENT,format:i,width:this.width,height:this.height})},n.resizeAttachments=function(i,s){for(var u=0;u<this.colorAttachments.length;++u)if(this.colorAttachments[u]){var f=this.device._createTexture(ot(ot({},this.colorAttachments[u].props),{},{width:i,height:s}));this.destroyAttachedResource(this.colorAttachments[u]),this.colorAttachments[u]=f,this.attachResource(f)}if(this.depthStencilAttachment){var c=this.device._createTexture(ot(ot({},this.depthStencilAttachment.props),{},{width:i,height:s}));this.destroyAttachedResource(this.depthStencilAttachment),this.depthStencilAttachment=c,this.attachResource(c)}},P(r,[{key:ha,get:function(){return"Framebuffer"}}]),r}(j);st.defaultProps=ot(ot({},j.defaultProps),{},{width:1,height:1,colorAttachments:[],depthStencilAttachment:null});var Oa;function Sa(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function ga(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Sa(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Sa(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Rs(e){var t=ds();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function ds(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Oa=Symbol.toStringTag;var rr=function(e){w(r,e);var t=Rs(r);function r(n,o){var i;return I(this,r),i=t.call(this,n,o,r.defaultProps),i.hash="",i.vs=void 0,i.fs=void 0,i.shaderLayout=void 0,i.bufferLayout=void 0,i.shaderLayout=i.props.shaderLayout,i.bufferLayout=i.props.bufferLayout||[],i}return P(r,[{key:Oa,get:function(){return"RenderPipeline"}}]),r}(j);rr.defaultProps=ga(ga({},j.defaultProps),{},{vs:null,vsEntryPoint:"",vsConstants:{},fs:null,fsEntryPoint:"",fsConstants:{},shaderLayout:null,bufferLayout:[],topology:"triangle-list",parameters:{},vertexCount:0,instanceCount:0,bindings:{},uniforms:{}});var Na;function va(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function ba(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?va(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):va(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Ts(e){var t=As();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function As(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Na=Symbol.toStringTag;var nr=function(e){w(r,e);var t=Ts(r);function r(n,o){return I(this,r),t.call(this,n,o,r.defaultProps)}return P(r,[{key:Na,get:function(){return"RenderPass"}}]),r}(j);nr.defaultProps=ba(ba({},j.defaultProps),{},{framebuffer:null,parameters:void 0,clearColor:[0,0,0,0],clearDepth:1,clearStencil:0,depthReadOnly:!1,stencilReadOnly:!1,discard:!1});var Pa;function Ca(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Ia(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ca(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ca(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ps(e){var t=ms();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function ms(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Pa=Symbol.toStringTag;var ar=function(e){w(r,e);var t=ps(r);function r(o,i){return I(this,r),t.call(this,o,i,r.defaultProps)}var n=r.prototype;return n.pushDebugGroup=function(i){},n.popDebugGroup=function(){},n.insertDebugMarker=function(i){},P(r,[{key:Pa,get:function(){return"CommandEncoder"}}]),r}(j);ar.defaultProps=Ia(Ia({},j.defaultProps),{},{measureExecutionTime:void 0});var Fa;function ya(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function hs(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ya(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ya(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Ss(e){var t=gs();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function gs(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Fa=Symbol.toStringTag;var ir=function(e){w(r,e);var t=Ss(r);function r(n){return I(this,r),t.call(this,n,r.defaultProps)}return P(r,[{key:Fa,get:function(){return"CommandBuffer"}}]),r}(j);ir.defaultProps=hs({},j.defaultProps);function Ba(e){var t=L(vs[e],2),r=t[0],n=t[1],o=r==="i32"||r==="u32",i=r!=="u32",s=bs[r]*n,u=Os(r,n);return{dataType:r,components:n,defaultVertexFormat:u,byteLength:s,integer:o,signed:i}}function Os(e,t){var r;switch(e){case"f32":r="float32";break;case"i32":r="sint32";break;case"u32":r="uint32";break;case"f16":return t<=2?"float16x2":"float16x4"}return t===1?r:"".concat(r,"x").concat(t)}var vs={f32:["f32",1],"vec2<f32>":["f32",2],"vec3<f32>":["f32",3],"vec4<f32>":["f32",4],f16:["f16",1],"vec2<f16>":["f16",2],"vec3<f16>":["f16",3],"vec4<f16>":["f16",4],i32:["i32",1],"vec2<i32>":["i32",2],"vec3<i32>":["i32",3],"vec4<i32>":["i32",4],u32:["u32",1],"vec2<u32>":["u32",2],"vec3<u32>":["u32",3],"vec4<u32>":["u32",4]},bs={f32:4,f16:2,i32:4,u32:4};function or(e){var t=Ma[e],r=Ns(t),n=e.includes("norm"),o=!n&&!e.startsWith("float"),i=e.startsWith("s");return{dataType:Ma[e],byteLength:r,integer:o,signed:i,normalized:n}}function Ns(e){var t=Cs[e];return t}var Ma={uint8:"uint8",sint8:"sint8",unorm8:"uint8",snorm8:"sint8",uint16:"uint16",sint16:"sint16",unorm16:"uint16",snorm16:"sint16",float16:"float16",float32:"float32",uint32:"uint32",sint32:"sint32"},Cs={uint8:1,sint8:1,uint16:2,sint16:2,float16:2,float32:4,uint32:4,sint32:4};function Hr(e){var t;e.endsWith("-webgl")&&(e.replace("-webgl",""),t=!0);var r=e.split("x"),n=L(r,2),o=n[0],i=n[1],s=o,u=i?parseInt(i):1,f=or(s),c={type:s,components:u,byteLength:f.byteLength*u,integer:f.integer,signed:f.signed,normalized:f.normalized};return t&&(c.webglOnly=!0),c}function Da(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Wr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Da(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Da(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ut(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Is(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
10
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function Is(e,t){if(e){if(typeof e=="string")return xa(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return xa(e,t)}}function xa(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Ua(e,t){var r={},n=ut(e.attributes),o;try{for(n.s();!(o=n.n()).done;){var i=o.value;r[i.name]=Ps(e,t,i.name)}}catch(s){n.e(s)}finally{n.f()}return r}function wa(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:16,n=Ua(e,t),o=new Array(r).fill(null),i=0,s=Object.values(n);i<s.length;i++){var u=s[i];o[u.location]=u}return o}function Ps(e,t,r){var n=ys(e,r),o=Fs(t,r);if(!n)return null;var i=Ba(n.type),s=o?.vertexFormat||i.defaultVertexFormat,u=Hr(s);return{attributeName:o?.attributeName||n.name,bufferName:o?.bufferName||n.name,location:n.location,shaderType:n.type,shaderDataType:i.dataType,shaderComponents:i.components,vertexFormat:s,bufferDataType:u.type,bufferComponents:u.components,normalized:u.normalized,integer:i.integer,stepMode:o?.stepMode||n.stepMode,byteOffset:o?.byteOffset||0,byteStride:o?.byteStride||0}}function ys(e,t){var r=e.attributes.find(function(n){return n.name===t});return r||C.warn('shader layout attribute "'.concat(t,'" not present in shader')),r||null}function Fs(e,t){Bs(e);var r=Ms(e,t);return r||(r=Ds(e,t),r)?r:(C.warn('layout for attribute "'.concat(t,'" not present in buffer layout')),null)}function Bs(e){var t=ut(e),r;try{for(t.s();!(r=t.n()).done;){var n=r.value;(n.attributes&&n.format||!n.attributes&&!n.format)&&C.warn("BufferLayout ".concat(name," must have either 'attributes' or 'format' field"))}}catch(o){t.e(o)}finally{t.f()}}function Ms(e,t){var r=ut(e),n;try{for(r.s();!(n=r.n()).done;){var o=n.value;if(o.format&&o.name===t)return{attributeName:o.name,bufferName:t,stepMode:o.stepMode,vertexFormat:o.format,byteOffset:0,byteStride:o.byteStride||0}}}catch(i){r.e(i)}finally{r.f()}return null}function Ds(e,t){var r=ut(e),n;try{for(r.s();!(n=r.n()).done;){var o,i=n.value,s=i.byteStride;if(typeof i.byteStride!="number"){var u=ut(i.attributes||[]),f;try{for(u.s();!(f=u.n()).done;){var c=f.value,E=Hr(c.format);s+=E.byteLength}}catch(l){u.e(l)}finally{u.f()}}var R=(o=i.attributes)===null||o===void 0?void 0:o.find(function(l){return l.attribute===t});if(R)return{attributeName:R.attribute,bufferName:i.name,stepMode:i.stepMode,vertexFormat:R.format,byteOffset:R.byteOffset,byteStride:s}}}catch(l){r.e(l)}finally{r.f()}return null}function Vr(e,t){var r=Wr(Wr({},e),{},{attributes:e.attributes.map(function(s){return Wr({},s)})}),n=ut(t?.attributes||[]),o;try{var i=function(){var u=o.value,f=r.attributes.find(function(c){return c.name===u.name});f?(f.type=u.type||f.type,f.stepMode=u.stepMode||f.stepMode):C.warn("shader layout attribute ".concat(u.name," not present in shader"))};for(n.s();!(o=n.n()).done;)i()}catch(s){n.e(s)}finally{n.f()}return r}var Ha;function Xa(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function La(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Xa(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Xa(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function xs(e){var t=Us();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function Us(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Ha=Symbol.toStringTag;var sr=function(e){w(r,e);var t=xs(r);function r(n,o){var i;return I(this,r),i=t.call(this,n,o,r.defaultProps),i.maxVertexAttributes=void 0,i.attributeInfos=void 0,i.indexBuffer=null,i.attributes=void 0,i.maxVertexAttributes=n.limits.maxVertexAttributes,i.attributes=new Array(i.maxVertexAttributes).fill(null),i.attributeInfos=wa(o.renderPipeline.shaderLayout,o.renderPipeline.bufferLayout,i.maxVertexAttributes),i}return P(r,[{key:Ha,get:function(){return"VertexArray"}}]),r}(j);sr.defaultProps=La(La({},j.defaultProps),{},{renderPipeline:null});function B(e,t){if(!e)throw new Error(t||"luma.gl: assertion failed.")}var ur;function Wa(e){return(!ur||ur.byteLength<e)&&(ur=new ArrayBuffer(e)),ur}function jr(e,t){var r=Wa(e.BYTES_PER_ELEMENT*t);return new e(r,0,t)}function Kr(e){for(var t=e.target,r=e.source,n=e.start,o=n===void 0?0:n,i=e.count,s=i===void 0?1:i,u=r.length,f=s*u,c=0,E=o;c<u;c++)t[E++]=r[c];for(;c<f;)c<f-c?(t.copyWithin(o+c,o,o+c),c*=2):(t.copyWithin(o+c,o,o+f-c),c=f);return e.target}function Va(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function ws(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Va(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Va(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var Xs=/^(rg?b?a?)([0-9]*)([a-z]*)(-srgb)?(-webgl|-unsized)?$/;function fr(e){var t=Xs.exec(e);if(t){var r=L(t,6),n=r[1],o=r[2],i=r[3],s=r[4],u=r[5];if(n){var f="".concat(i).concat(o),c=or(f);return ws({format:n,components:0,srgb:s==="-srgb",unsized:u==="-unsized",webgl:u==="-webgl"},c)}}return Hs(e)}var Ls={"rgba4unorm-webgl":{format:"rgba",bpp:2},"rgb565unorm-webgl":{format:"rgb",bpp:2},"rgb5a1unorm-webgl":{format:"rgba",bbp:2},rgb9e5ufloat:{format:"rgb",bbp:4},rg11b10ufloat:{format:"rgb",bbp:4},rgb10a2unorm:{format:"rgba",bbp:4},"rgb10a2unorm-webgl":{format:"rgba",bbp:4},stencil8:{components:1,bpp:1,a:"stencil"},depth16unorm:{components:1,bpp:2,a:"depth"},depth24plus:{components:1,bpp:3,a:"depth"},depth32float:{components:1,bpp:4,a:"depth"},"depth24plus-stencil8":{components:2,bpp:4,a:"depth-stencil"},"depth24unorm-stencil8":{components:2,bpp:4,a:"depth-stencil"},"depth32float-stencil8":{components:2,bpp:4,a:"depth-stencil"}};function Hs(e){var t=Ls[e];if(!t)throw new Error("Unknown format ".concat(e));return{format:t.format||"",components:t.components||1,byteLength:t.bpp||1,srgb:!1,unsized:!1}}function Ws(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Vs(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
11
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function Vs(e,t){if(e){if(typeof e=="string")return ja(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ja(e,t)}}function ja(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Yr(e,t,r){var n=t.split(/\r?\n/),o="",i=Ws(e),s;try{for(i.s();!(s=i.n()).done;){var u=s.value;o+=js(u,n,u.lineNum,r)}}catch(f){i.e(f)}finally{i.f()}return o}function js(e,t,r,n){if(n!=null&&n.showSourceCode){var o=e.linePos>0?"".concat(" ".repeat(e.linePos+5),`^^^
12
+ `):"",i=Ks(t,r);return"".concat(i).concat(o).concat(e.type.toUpperCase(),": ").concat(e.message,`
12
13
 
13
14
  `)}return"".concat(e.type.toUpperCase(),": ").concat(e.message,`
14
- `)}function Bs(e,t){for(var r="",n=t-2;n<=t;n++){var o=e[n];o!==void 0&&(r+="".concat(Ms(String(n),4),": ").concat(o,`
15
- `))}return r}function Ms(e,t){for(var r="",n=e.length;n<t;++n)r+=" ";return r+e}function wa(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Vr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?wa(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):wa(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ft(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Ds(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
16
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function Ds(e,t){if(e){if(typeof e=="string")return Xa(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Xa(e,t)}}function Xa(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function ur(e,t){var r={},n=ft(e.attributes),o;try{for(n.s();!(o=n.n()).done;){var i=o.value;r[i.name]=Us(e,t,i.name)}}catch(s){n.e(s)}finally{n.f()}return r}function Us(e,t,r){var n=xs(e,r),o=ws(t,r);if(!n)return null;var i=Ua(n.type),s=o?.vertexFormat||i.defaultVertexFormat,u=Lr(s);return{attributeName:o?.attributeName||n.name,bufferName:o?.bufferName||n.name,location:n.location,shaderType:n.type,shaderDataType:i.dataType,shaderComponents:i.components,vertexFormat:s,bufferDataType:u.type,bufferComponents:u.components,normalized:u.normalized,integer:i.integer,stepMode:o?.stepMode||n.stepMode,byteOffset:o?.byteOffset||0,byteStride:o?.byteStride||0}}function xs(e,t){var r=e.attributes.find(function(n){return n.name===t});return r||C.warn('shader layout attribute "'.concat(t,'" not present in shader')),r||null}function ws(e,t){Xs(e);var r=Hs(e,t);return r||(r=Ls(e,t),r)?r:(C.warn('layout for attribute "'.concat(t,'" not present in buffer layout')),null)}function Xs(e){var t=ft(e),r;try{for(t.s();!(r=t.n()).done;){var n=r.value;(n.attributes&&n.format||!n.attributes&&!n.format)&&C.warn("BufferLayout ".concat(name," must have either 'attributes' or 'format' field"))}}catch(o){t.e(o)}finally{t.f()}}function Hs(e,t){var r=ft(e),n;try{for(r.s();!(n=r.n()).done;){var o=n.value;if(o.format&&o.name===t)return{attributeName:o.name,bufferName:t,stepMode:o.stepMode,vertexFormat:o.format,byteOffset:0,byteStride:o.byteStride||0}}}catch(i){r.e(i)}finally{r.f()}return null}function Ls(e,t){var r=ft(e),n;try{for(r.s();!(n=r.n()).done;){var o,i=n.value,s=i.byteStride;if(typeof i.byteStride!="number"){var u=ft(i.attributes||[]),_;try{for(u.s();!(_=u.n()).done;){var c=_.value,E=Lr(c.format);s+=E.byteLength}}catch(R){u.e(R)}finally{u.f()}}var l=(o=i.attributes)===null||o===void 0?void 0:o.find(function(R){return R.attribute===t});if(l)return{attributeName:l.attribute,bufferName:i.name,stepMode:i.stepMode,vertexFormat:l.format,byteOffset:l.byteOffset,byteStride:s}}}catch(R){r.e(R)}finally{r.f()}return null}function jr(e,t){var r=Vr(Vr({},e),{},{attributes:e.attributes.map(function(s){return Vr({},s)})}),n=ft(t?.attributes||[]),o;try{var i=function(){var u=o.value,_=r.attributes.find(function(c){return c.name===u.name});_?(_.type=u.type||_.type,_.stepMode=u.stepMode||_.stepMode):C.warn("shader layout attribute ".concat(u.name," not present in shader"))};for(n.s();!(o=n.n()).done;)i()}catch(s){n.e(s)}finally{n.f()}return r}function Kr(e,t,r,n){var o="See luma.gl ".concat(r," Upgrade Guide at https://luma.gl/docs/upgrade-guide"),i=Object.getPrototypeOf(e);n.forEach(function(s){i.methodName||(i[s]=function(){throw C.removed("Calling removed method ".concat(t,".").concat(s,": "),o)(),new Error(s)})})}function ke(e,t,r){var n=r.removedProps,o=n===void 0?{}:n,i=r.deprecatedProps,s=i===void 0?{}:i,u=r.replacedProps,_=u===void 0?{}:u;for(var c in o)if(c in t){var E=o[c],l=E?"".concat(e,".").concat(o[c]):"N/A";C.removed("".concat(e,".").concat(c),l)()}for(var R in s)if(R in t){var d=s[R];C.deprecated("".concat(e,".").concat(R),"".concat(e,".").concat(d))()}for(var A=null,p=0,h=Object.entries(_);p<h.length;p++){var O=H(h[p],2),b=O[0],D=O[1];b in t&&(C.deprecated("".concat(e,".").concat(b),"".concat(e,".").concat(D))(),A=A||Object.assign({},t),A[D]=t[b],delete A[b])}return A||t}var It=Le(xe(),1),Ws="";function Gr(e,t){return Yr.apply(this,arguments)}function Yr(){return Yr=oe(It.default.mark(function e(t,r){return It.default.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:return o.abrupt("return",new Promise(function(i,s){try{var u=new Image;u.onload=function(){return i(u)},u.onerror=function(){return s(new Error("Could not load image ".concat(t,".")))},u.crossOrigin=r?.crossOrigin||"anonymous",u.src=t.startsWith("http")?t:Ws+t}catch(_){s(_)}}));case 1:case"end":return o.stop()}},e)})),Yr.apply(this,arguments)}function Pt(e,t){return kr.apply(this,arguments)}function kr(){return kr=oe(It.default.mark(function e(t,r){var n,o;return It.default.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(n=document.getElementsByTagName("head")[0],n){s.next=3;break}throw new Error("loadScript");case 3:return o=document.createElement("script"),o.setAttribute("type","text/javascript"),o.setAttribute("src",t),r&&(o.id=r),s.abrupt("return",new Promise(function(u,_){o.onload=u,o.onerror=function(c){return _(new Error("Unable to load script '".concat(t,"': ").concat(c)))},n.appendChild(o)}));case 8:case"end":return s.stop()}},e)})),kr.apply(this,arguments)}var fr;function Ha(e){return(!fr||fr.byteLength<e)&&(fr=new ArrayBuffer(e)),fr}function zr(e,t){var r=Ha(e.BYTES_PER_ELEMENT*t);return new e(r,0,t)}function Zr(e){for(var t=e.target,r=e.source,n=e.start,o=n===void 0?0:n,i=e.count,s=i===void 0?1:i,u=r.length,_=s*u,c=0,E=o;c<u;c++)t[E++]=r[c];for(;c<_;)c<_-c?(t.copyWithin(o+c,o,o+c),c*=2):(t.copyWithin(o+c,o,o+_-c),c=_);return e.target}var yt={};function Vs(e){globalThis.console&&globalThis.console.error&&globalThis.console.error(e)}function js(e){globalThis.console&&globalThis.console.log&&globalThis.console.log(e)}function Ks(e,t){yt[e]=!0,t!==void 0&&Vs(t)}function Ys(e){var t=e.getError;e.getError=function(){var n;do n=t.apply(e),n!==e.NO_ERROR&&(yt[n]=!0);while(n!==e.NO_ERROR);for(n in yt)if(yt[n])return delete yt[n],parseInt(n,10);return e.NO_ERROR}}var Ft=function e(t){var r=t.gl;this.ext=t,this.isAlive=!0,this.hasBeenBound=!1,this.elementArrayBuffer=null,this.attribs=new Array(t.maxVertexAttribs);for(var n=0;n<this.attribs.length;n++){var o=new e.VertexAttrib(r);this.attribs[n]=o}this.maxAttrib=0};Ft.VertexAttrib=function(t){this.enabled=!1,this.buffer=null,this.size=4,this.type=t.FLOAT,this.normalized=!1,this.stride=16,this.offset=0,this.cached="",this.recache()};Ft.VertexAttrib.prototype.recache=function(){this.cached=[this.size,this.type,this.normalized,this.stride,this.offset].join(":")};var Ge=function(t){var r=this;this.gl=t,Ys(t);var n=this.original={getParameter:t.getParameter,enableVertexAttribArray:t.enableVertexAttribArray,disableVertexAttribArray:t.disableVertexAttribArray,bindBuffer:t.bindBuffer,getVertexAttrib:t.getVertexAttrib,vertexAttribPointer:t.vertexAttribPointer};t.getParameter=function(i){return i===r.VERTEX_ARRAY_BINDING_OES?r.currentVertexArrayObject===r.defaultVertexArrayObject?null:r.currentVertexArrayObject:n.getParameter.apply(this,arguments)},t.enableVertexAttribArray=function(i){var s=r.currentVertexArrayObject;s.maxAttrib=Math.max(s.maxAttrib,i);var u=s.attribs[i];return u.enabled=!0,n.enableVertexAttribArray.apply(this,arguments)},t.disableVertexAttribArray=function(i){var s=r.currentVertexArrayObject;s.maxAttrib=Math.max(s.maxAttrib,i);var u=s.attribs[i];return u.enabled=!1,n.disableVertexAttribArray.apply(this,arguments)},t.bindBuffer=function(i,s){switch(i){case t.ARRAY_BUFFER:r.currentArrayBuffer=s;break;case t.ELEMENT_ARRAY_BUFFER:r.currentVertexArrayObject.elementArrayBuffer=s;break;default:}return n.bindBuffer.apply(this,arguments)},t.getVertexAttrib=function(i,s){var u=r.currentVertexArrayObject,_=u.attribs[i];switch(s){case t.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:return _.buffer;case t.VERTEX_ATTRIB_ARRAY_ENABLED:return _.enabled;case t.VERTEX_ATTRIB_ARRAY_SIZE:return _.size;case t.VERTEX_ATTRIB_ARRAY_STRIDE:return _.stride;case t.VERTEX_ATTRIB_ARRAY_TYPE:return _.type;case t.VERTEX_ATTRIB_ARRAY_NORMALIZED:return _.normalized;default:return n.getVertexAttrib.apply(this,arguments)}},t.vertexAttribPointer=function(i,s,u,_,c,E){var l=r.currentVertexArrayObject;l.maxAttrib=Math.max(l.maxAttrib,i);var R=l.attribs[i];return R.buffer=r.currentArrayBuffer,R.size=s,R.type=u,R.normalized=_,R.stride=c,R.offset=E,R.recache(),n.vertexAttribPointer.apply(this,arguments)},t.instrumentExtension&&t.instrumentExtension(this,"OES_vertex_array_object"),t.canvas&&t.canvas.addEventListener("webglcontextrestored",function(){js("OESVertexArrayObject emulation library context restored"),r.reset_()},!0),this.reset_()};Ge.prototype.VERTEX_ARRAY_BINDING_OES=34229;Ge.prototype.reset_=function(){var t=this.vertexArrayObjects!==void 0;if(t)for(var r=0;r<this.vertexArrayObjects.length;++r)this.vertexArrayObjects.isAlive=!1;var n=this.gl;this.maxVertexAttribs=n.getParameter(n.MAX_VERTEX_ATTRIBS),this.defaultVertexArrayObject=new Ft(this),this.currentVertexArrayObject=null,this.currentArrayBuffer=null,this.vertexArrayObjects=[this.defaultVertexArrayObject],this.bindVertexArrayOES(null)};Ge.prototype.createVertexArrayOES=function(){var t=new Ft(this);return this.vertexArrayObjects.push(t),t};Ge.prototype.deleteVertexArrayOES=function(t){t.isAlive=!1,this.vertexArrayObjects.splice(this.vertexArrayObjects.indexOf(t),1),this.currentVertexArrayObject===t&&this.bindVertexArrayOES(null)};Ge.prototype.isVertexArrayOES=function(t){return!!(t&&t instanceof Ft&&t.hasBeenBound&&t.ext===this)};Ge.prototype.bindVertexArrayOES=function(t){var r=this.gl;if(t&&!t.isAlive){Ks(r.INVALID_OPERATION,"bindVertexArrayOES: attempt to bind deleted arrayObject");return}var n=this.original,o=this.currentVertexArrayObject;this.currentVertexArrayObject=t||this.defaultVertexArrayObject,this.currentVertexArrayObject.hasBeenBound=!0;var i=this.currentVertexArrayObject;if(o!==i){(!o||i.elementArrayBuffer!==o.elementArrayBuffer)&&n.bindBuffer.call(r,r.ELEMENT_ARRAY_BUFFER,i.elementArrayBuffer);for(var s=this.currentArrayBuffer,u=Math.max(o?o.maxAttrib:0,i.maxAttrib),_=0;_<=u;_++){var c=i.attribs[_],E=o?o.attribs[_]:null;if((!o||c.enabled!==E.enabled)&&(c.enabled?n.enableVertexAttribArray.call(r,_):n.disableVertexAttribArray.call(r,_)),c.enabled){var l=!1;(!o||c.buffer!==E.buffer)&&(s!==c.buffer&&(n.bindBuffer.call(r,r.ARRAY_BUFFER,c.buffer),s=c.buffer),l=!0),(l||c.cached!==E.cached)&&n.vertexAttribPointer.call(r,_,c.size,c.type,c.normalized,c.stride,c.offset)}}this.currentArrayBuffer!==s&&n.bindBuffer.call(r,r.ARRAY_BUFFER,this.currentArrayBuffer)}};function La(e){if(typeof e.createVertexArray!="function"){var t=e.getSupportedExtensions;e.getSupportedExtensions=function(){var o=t.call(this)||[];return o.indexOf("OES_vertex_array_object")<0&&o.push("OES_vertex_array_object"),o};var r=e.getExtension;e.getExtension=function(o){var i=r.call(this,o);return i||(o!=="OES_vertex_array_object"?null:(e.__OESVertexArrayObject||(this.__OESVertexArrayObject=new Ge(this)),this.__OESVertexArrayObject))}}}var a=function(e){return e[e.DEPTH_BUFFER_BIT=256]="DEPTH_BUFFER_BIT",e[e.STENCIL_BUFFER_BIT=1024]="STENCIL_BUFFER_BIT",e[e.COLOR_BUFFER_BIT=16384]="COLOR_BUFFER_BIT",e[e.POINTS=0]="POINTS",e[e.LINES=1]="LINES",e[e.LINE_LOOP=2]="LINE_LOOP",e[e.LINE_STRIP=3]="LINE_STRIP",e[e.TRIANGLES=4]="TRIANGLES",e[e.TRIANGLE_STRIP=5]="TRIANGLE_STRIP",e[e.TRIANGLE_FAN=6]="TRIANGLE_FAN",e[e.ZERO=0]="ZERO",e[e.ONE=1]="ONE",e[e.SRC_COLOR=768]="SRC_COLOR",e[e.ONE_MINUS_SRC_COLOR=769]="ONE_MINUS_SRC_COLOR",e[e.SRC_ALPHA=770]="SRC_ALPHA",e[e.ONE_MINUS_SRC_ALPHA=771]="ONE_MINUS_SRC_ALPHA",e[e.DST_ALPHA=772]="DST_ALPHA",e[e.ONE_MINUS_DST_ALPHA=773]="ONE_MINUS_DST_ALPHA",e[e.DST_COLOR=774]="DST_COLOR",e[e.ONE_MINUS_DST_COLOR=775]="ONE_MINUS_DST_COLOR",e[e.SRC_ALPHA_SATURATE=776]="SRC_ALPHA_SATURATE",e[e.CONSTANT_COLOR=32769]="CONSTANT_COLOR",e[e.ONE_MINUS_CONSTANT_COLOR=32770]="ONE_MINUS_CONSTANT_COLOR",e[e.CONSTANT_ALPHA=32771]="CONSTANT_ALPHA",e[e.ONE_MINUS_CONSTANT_ALPHA=32772]="ONE_MINUS_CONSTANT_ALPHA",e[e.FUNC_ADD=32774]="FUNC_ADD",e[e.FUNC_SUBTRACT=32778]="FUNC_SUBTRACT",e[e.FUNC_REVERSE_SUBTRACT=32779]="FUNC_REVERSE_SUBTRACT",e[e.BLEND_EQUATION=32777]="BLEND_EQUATION",e[e.BLEND_EQUATION_RGB=32777]="BLEND_EQUATION_RGB",e[e.BLEND_EQUATION_ALPHA=34877]="BLEND_EQUATION_ALPHA",e[e.BLEND_DST_RGB=32968]="BLEND_DST_RGB",e[e.BLEND_SRC_RGB=32969]="BLEND_SRC_RGB",e[e.BLEND_DST_ALPHA=32970]="BLEND_DST_ALPHA",e[e.BLEND_SRC_ALPHA=32971]="BLEND_SRC_ALPHA",e[e.BLEND_COLOR=32773]="BLEND_COLOR",e[e.ARRAY_BUFFER_BINDING=34964]="ARRAY_BUFFER_BINDING",e[e.ELEMENT_ARRAY_BUFFER_BINDING=34965]="ELEMENT_ARRAY_BUFFER_BINDING",e[e.LINE_WIDTH=2849]="LINE_WIDTH",e[e.ALIASED_POINT_SIZE_RANGE=33901]="ALIASED_POINT_SIZE_RANGE",e[e.ALIASED_LINE_WIDTH_RANGE=33902]="ALIASED_LINE_WIDTH_RANGE",e[e.CULL_FACE_MODE=2885]="CULL_FACE_MODE",e[e.FRONT_FACE=2886]="FRONT_FACE",e[e.DEPTH_RANGE=2928]="DEPTH_RANGE",e[e.DEPTH_WRITEMASK=2930]="DEPTH_WRITEMASK",e[e.DEPTH_CLEAR_VALUE=2931]="DEPTH_CLEAR_VALUE",e[e.DEPTH_FUNC=2932]="DEPTH_FUNC",e[e.STENCIL_CLEAR_VALUE=2961]="STENCIL_CLEAR_VALUE",e[e.STENCIL_FUNC=2962]="STENCIL_FUNC",e[e.STENCIL_FAIL=2964]="STENCIL_FAIL",e[e.STENCIL_PASS_DEPTH_FAIL=2965]="STENCIL_PASS_DEPTH_FAIL",e[e.STENCIL_PASS_DEPTH_PASS=2966]="STENCIL_PASS_DEPTH_PASS",e[e.STENCIL_REF=2967]="STENCIL_REF",e[e.STENCIL_VALUE_MASK=2963]="STENCIL_VALUE_MASK",e[e.STENCIL_WRITEMASK=2968]="STENCIL_WRITEMASK",e[e.STENCIL_BACK_FUNC=34816]="STENCIL_BACK_FUNC",e[e.STENCIL_BACK_FAIL=34817]="STENCIL_BACK_FAIL",e[e.STENCIL_BACK_PASS_DEPTH_FAIL=34818]="STENCIL_BACK_PASS_DEPTH_FAIL",e[e.STENCIL_BACK_PASS_DEPTH_PASS=34819]="STENCIL_BACK_PASS_DEPTH_PASS",e[e.STENCIL_BACK_REF=36003]="STENCIL_BACK_REF",e[e.STENCIL_BACK_VALUE_MASK=36004]="STENCIL_BACK_VALUE_MASK",e[e.STENCIL_BACK_WRITEMASK=36005]="STENCIL_BACK_WRITEMASK",e[e.VIEWPORT=2978]="VIEWPORT",e[e.SCISSOR_BOX=3088]="SCISSOR_BOX",e[e.COLOR_CLEAR_VALUE=3106]="COLOR_CLEAR_VALUE",e[e.COLOR_WRITEMASK=3107]="COLOR_WRITEMASK",e[e.UNPACK_ALIGNMENT=3317]="UNPACK_ALIGNMENT",e[e.PACK_ALIGNMENT=3333]="PACK_ALIGNMENT",e[e.MAX_TEXTURE_SIZE=3379]="MAX_TEXTURE_SIZE",e[e.MAX_VIEWPORT_DIMS=3386]="MAX_VIEWPORT_DIMS",e[e.SUBPIXEL_BITS=3408]="SUBPIXEL_BITS",e[e.RED_BITS=3410]="RED_BITS",e[e.GREEN_BITS=3411]="GREEN_BITS",e[e.BLUE_BITS=3412]="BLUE_BITS",e[e.ALPHA_BITS=3413]="ALPHA_BITS",e[e.DEPTH_BITS=3414]="DEPTH_BITS",e[e.STENCIL_BITS=3415]="STENCIL_BITS",e[e.POLYGON_OFFSET_UNITS=10752]="POLYGON_OFFSET_UNITS",e[e.POLYGON_OFFSET_FACTOR=32824]="POLYGON_OFFSET_FACTOR",e[e.TEXTURE_BINDING_2D=32873]="TEXTURE_BINDING_2D",e[e.SAMPLE_BUFFERS=32936]="SAMPLE_BUFFERS",e[e.SAMPLES=32937]="SAMPLES",e[e.SAMPLE_COVERAGE_VALUE=32938]="SAMPLE_COVERAGE_VALUE",e[e.SAMPLE_COVERAGE_INVERT=32939]="SAMPLE_COVERAGE_INVERT",e[e.COMPRESSED_TEXTURE_FORMATS=34467]="COMPRESSED_TEXTURE_FORMATS",e[e.VENDOR=7936]="VENDOR",e[e.RENDERER=7937]="RENDERER",e[e.VERSION=7938]="VERSION",e[e.IMPLEMENTATION_COLOR_READ_TYPE=35738]="IMPLEMENTATION_COLOR_READ_TYPE",e[e.IMPLEMENTATION_COLOR_READ_FORMAT=35739]="IMPLEMENTATION_COLOR_READ_FORMAT",e[e.BROWSER_DEFAULT_WEBGL=37444]="BROWSER_DEFAULT_WEBGL",e[e.STATIC_DRAW=35044]="STATIC_DRAW",e[e.STREAM_DRAW=35040]="STREAM_DRAW",e[e.DYNAMIC_DRAW=35048]="DYNAMIC_DRAW",e[e.ARRAY_BUFFER=34962]="ARRAY_BUFFER",e[e.ELEMENT_ARRAY_BUFFER=34963]="ELEMENT_ARRAY_BUFFER",e[e.BUFFER_SIZE=34660]="BUFFER_SIZE",e[e.BUFFER_USAGE=34661]="BUFFER_USAGE",e[e.CURRENT_VERTEX_ATTRIB=34342]="CURRENT_VERTEX_ATTRIB",e[e.VERTEX_ATTRIB_ARRAY_ENABLED=34338]="VERTEX_ATTRIB_ARRAY_ENABLED",e[e.VERTEX_ATTRIB_ARRAY_SIZE=34339]="VERTEX_ATTRIB_ARRAY_SIZE",e[e.VERTEX_ATTRIB_ARRAY_STRIDE=34340]="VERTEX_ATTRIB_ARRAY_STRIDE",e[e.VERTEX_ATTRIB_ARRAY_TYPE=34341]="VERTEX_ATTRIB_ARRAY_TYPE",e[e.VERTEX_ATTRIB_ARRAY_NORMALIZED=34922]="VERTEX_ATTRIB_ARRAY_NORMALIZED",e[e.VERTEX_ATTRIB_ARRAY_POINTER=34373]="VERTEX_ATTRIB_ARRAY_POINTER",e[e.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=34975]="VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",e[e.CULL_FACE=2884]="CULL_FACE",e[e.FRONT=1028]="FRONT",e[e.BACK=1029]="BACK",e[e.FRONT_AND_BACK=1032]="FRONT_AND_BACK",e[e.BLEND=3042]="BLEND",e[e.DEPTH_TEST=2929]="DEPTH_TEST",e[e.DITHER=3024]="DITHER",e[e.POLYGON_OFFSET_FILL=32823]="POLYGON_OFFSET_FILL",e[e.SAMPLE_ALPHA_TO_COVERAGE=32926]="SAMPLE_ALPHA_TO_COVERAGE",e[e.SAMPLE_COVERAGE=32928]="SAMPLE_COVERAGE",e[e.SCISSOR_TEST=3089]="SCISSOR_TEST",e[e.STENCIL_TEST=2960]="STENCIL_TEST",e[e.NO_ERROR=0]="NO_ERROR",e[e.INVALID_ENUM=1280]="INVALID_ENUM",e[e.INVALID_VALUE=1281]="INVALID_VALUE",e[e.INVALID_OPERATION=1282]="INVALID_OPERATION",e[e.OUT_OF_MEMORY=1285]="OUT_OF_MEMORY",e[e.CONTEXT_LOST_WEBGL=37442]="CONTEXT_LOST_WEBGL",e[e.CW=2304]="CW",e[e.CCW=2305]="CCW",e[e.DONT_CARE=4352]="DONT_CARE",e[e.FASTEST=4353]="FASTEST",e[e.NICEST=4354]="NICEST",e[e.GENERATE_MIPMAP_HINT=33170]="GENERATE_MIPMAP_HINT",e[e.BYTE=5120]="BYTE",e[e.UNSIGNED_BYTE=5121]="UNSIGNED_BYTE",e[e.SHORT=5122]="SHORT",e[e.UNSIGNED_SHORT=5123]="UNSIGNED_SHORT",e[e.INT=5124]="INT",e[e.UNSIGNED_INT=5125]="UNSIGNED_INT",e[e.FLOAT=5126]="FLOAT",e[e.DOUBLE=5130]="DOUBLE",e[e.DEPTH_COMPONENT=6402]="DEPTH_COMPONENT",e[e.ALPHA=6406]="ALPHA",e[e.RGB=6407]="RGB",e[e.RGBA=6408]="RGBA",e[e.LUMINANCE=6409]="LUMINANCE",e[e.LUMINANCE_ALPHA=6410]="LUMINANCE_ALPHA",e[e.UNSIGNED_SHORT_4_4_4_4=32819]="UNSIGNED_SHORT_4_4_4_4",e[e.UNSIGNED_SHORT_5_5_5_1=32820]="UNSIGNED_SHORT_5_5_5_1",e[e.UNSIGNED_SHORT_5_6_5=33635]="UNSIGNED_SHORT_5_6_5",e[e.FRAGMENT_SHADER=35632]="FRAGMENT_SHADER",e[e.VERTEX_SHADER=35633]="VERTEX_SHADER",e[e.COMPILE_STATUS=35713]="COMPILE_STATUS",e[e.DELETE_STATUS=35712]="DELETE_STATUS",e[e.LINK_STATUS=35714]="LINK_STATUS",e[e.VALIDATE_STATUS=35715]="VALIDATE_STATUS",e[e.ATTACHED_SHADERS=35717]="ATTACHED_SHADERS",e[e.ACTIVE_ATTRIBUTES=35721]="ACTIVE_ATTRIBUTES",e[e.ACTIVE_UNIFORMS=35718]="ACTIVE_UNIFORMS",e[e.MAX_VERTEX_ATTRIBS=34921]="MAX_VERTEX_ATTRIBS",e[e.MAX_VERTEX_UNIFORM_VECTORS=36347]="MAX_VERTEX_UNIFORM_VECTORS",e[e.MAX_VARYING_VECTORS=36348]="MAX_VARYING_VECTORS",e[e.MAX_COMBINED_TEXTURE_IMAGE_UNITS=35661]="MAX_COMBINED_TEXTURE_IMAGE_UNITS",e[e.MAX_VERTEX_TEXTURE_IMAGE_UNITS=35660]="MAX_VERTEX_TEXTURE_IMAGE_UNITS",e[e.MAX_TEXTURE_IMAGE_UNITS=34930]="MAX_TEXTURE_IMAGE_UNITS",e[e.MAX_FRAGMENT_UNIFORM_VECTORS=36349]="MAX_FRAGMENT_UNIFORM_VECTORS",e[e.SHADER_TYPE=35663]="SHADER_TYPE",e[e.SHADING_LANGUAGE_VERSION=35724]="SHADING_LANGUAGE_VERSION",e[e.CURRENT_PROGRAM=35725]="CURRENT_PROGRAM",e[e.NEVER=512]="NEVER",e[e.LESS=513]="LESS",e[e.EQUAL=514]="EQUAL",e[e.LEQUAL=515]="LEQUAL",e[e.GREATER=516]="GREATER",e[e.NOTEQUAL=517]="NOTEQUAL",e[e.GEQUAL=518]="GEQUAL",e[e.ALWAYS=519]="ALWAYS",e[e.KEEP=7680]="KEEP",e[e.REPLACE=7681]="REPLACE",e[e.INCR=7682]="INCR",e[e.DECR=7683]="DECR",e[e.INVERT=5386]="INVERT",e[e.INCR_WRAP=34055]="INCR_WRAP",e[e.DECR_WRAP=34056]="DECR_WRAP",e[e.NEAREST=9728]="NEAREST",e[e.LINEAR=9729]="LINEAR",e[e.NEAREST_MIPMAP_NEAREST=9984]="NEAREST_MIPMAP_NEAREST",e[e.LINEAR_MIPMAP_NEAREST=9985]="LINEAR_MIPMAP_NEAREST",e[e.NEAREST_MIPMAP_LINEAR=9986]="NEAREST_MIPMAP_LINEAR",e[e.LINEAR_MIPMAP_LINEAR=9987]="LINEAR_MIPMAP_LINEAR",e[e.TEXTURE_MAG_FILTER=10240]="TEXTURE_MAG_FILTER",e[e.TEXTURE_MIN_FILTER=10241]="TEXTURE_MIN_FILTER",e[e.TEXTURE_WRAP_S=10242]="TEXTURE_WRAP_S",e[e.TEXTURE_WRAP_T=10243]="TEXTURE_WRAP_T",e[e.TEXTURE_2D=3553]="TEXTURE_2D",e[e.TEXTURE=5890]="TEXTURE",e[e.TEXTURE_CUBE_MAP=34067]="TEXTURE_CUBE_MAP",e[e.TEXTURE_BINDING_CUBE_MAP=34068]="TEXTURE_BINDING_CUBE_MAP",e[e.TEXTURE_CUBE_MAP_POSITIVE_X=34069]="TEXTURE_CUBE_MAP_POSITIVE_X",e[e.TEXTURE_CUBE_MAP_NEGATIVE_X=34070]="TEXTURE_CUBE_MAP_NEGATIVE_X",e[e.TEXTURE_CUBE_MAP_POSITIVE_Y=34071]="TEXTURE_CUBE_MAP_POSITIVE_Y",e[e.TEXTURE_CUBE_MAP_NEGATIVE_Y=34072]="TEXTURE_CUBE_MAP_NEGATIVE_Y",e[e.TEXTURE_CUBE_MAP_POSITIVE_Z=34073]="TEXTURE_CUBE_MAP_POSITIVE_Z",e[e.TEXTURE_CUBE_MAP_NEGATIVE_Z=34074]="TEXTURE_CUBE_MAP_NEGATIVE_Z",e[e.MAX_CUBE_MAP_TEXTURE_SIZE=34076]="MAX_CUBE_MAP_TEXTURE_SIZE",e[e.TEXTURE0=33984]="TEXTURE0",e[e.ACTIVE_TEXTURE=34016]="ACTIVE_TEXTURE",e[e.REPEAT=10497]="REPEAT",e[e.CLAMP_TO_EDGE=33071]="CLAMP_TO_EDGE",e[e.MIRRORED_REPEAT=33648]="MIRRORED_REPEAT",e[e.TEXTURE_WIDTH=4096]="TEXTURE_WIDTH",e[e.TEXTURE_HEIGHT=4097]="TEXTURE_HEIGHT",e[e.FLOAT_VEC2=35664]="FLOAT_VEC2",e[e.FLOAT_VEC3=35665]="FLOAT_VEC3",e[e.FLOAT_VEC4=35666]="FLOAT_VEC4",e[e.INT_VEC2=35667]="INT_VEC2",e[e.INT_VEC3=35668]="INT_VEC3",e[e.INT_VEC4=35669]="INT_VEC4",e[e.BOOL=35670]="BOOL",e[e.BOOL_VEC2=35671]="BOOL_VEC2",e[e.BOOL_VEC3=35672]="BOOL_VEC3",e[e.BOOL_VEC4=35673]="BOOL_VEC4",e[e.FLOAT_MAT2=35674]="FLOAT_MAT2",e[e.FLOAT_MAT3=35675]="FLOAT_MAT3",e[e.FLOAT_MAT4=35676]="FLOAT_MAT4",e[e.SAMPLER_2D=35678]="SAMPLER_2D",e[e.SAMPLER_CUBE=35680]="SAMPLER_CUBE",e[e.LOW_FLOAT=36336]="LOW_FLOAT",e[e.MEDIUM_FLOAT=36337]="MEDIUM_FLOAT",e[e.HIGH_FLOAT=36338]="HIGH_FLOAT",e[e.LOW_INT=36339]="LOW_INT",e[e.MEDIUM_INT=36340]="MEDIUM_INT",e[e.HIGH_INT=36341]="HIGH_INT",e[e.FRAMEBUFFER=36160]="FRAMEBUFFER",e[e.RENDERBUFFER=36161]="RENDERBUFFER",e[e.RGBA4=32854]="RGBA4",e[e.RGB5_A1=32855]="RGB5_A1",e[e.RGB565=36194]="RGB565",e[e.DEPTH_COMPONENT16=33189]="DEPTH_COMPONENT16",e[e.STENCIL_INDEX=6401]="STENCIL_INDEX",e[e.STENCIL_INDEX8=36168]="STENCIL_INDEX8",e[e.DEPTH_STENCIL=34041]="DEPTH_STENCIL",e[e.RENDERBUFFER_WIDTH=36162]="RENDERBUFFER_WIDTH",e[e.RENDERBUFFER_HEIGHT=36163]="RENDERBUFFER_HEIGHT",e[e.RENDERBUFFER_INTERNAL_FORMAT=36164]="RENDERBUFFER_INTERNAL_FORMAT",e[e.RENDERBUFFER_RED_SIZE=36176]="RENDERBUFFER_RED_SIZE",e[e.RENDERBUFFER_GREEN_SIZE=36177]="RENDERBUFFER_GREEN_SIZE",e[e.RENDERBUFFER_BLUE_SIZE=36178]="RENDERBUFFER_BLUE_SIZE",e[e.RENDERBUFFER_ALPHA_SIZE=36179]="RENDERBUFFER_ALPHA_SIZE",e[e.RENDERBUFFER_DEPTH_SIZE=36180]="RENDERBUFFER_DEPTH_SIZE",e[e.RENDERBUFFER_STENCIL_SIZE=36181]="RENDERBUFFER_STENCIL_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=36048]="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",e[e.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=36049]="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",e[e.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=36050]="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",e[e.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=36051]="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",e[e.COLOR_ATTACHMENT0=36064]="COLOR_ATTACHMENT0",e[e.DEPTH_ATTACHMENT=36096]="DEPTH_ATTACHMENT",e[e.STENCIL_ATTACHMENT=36128]="STENCIL_ATTACHMENT",e[e.DEPTH_STENCIL_ATTACHMENT=33306]="DEPTH_STENCIL_ATTACHMENT",e[e.NONE=0]="NONE",e[e.FRAMEBUFFER_COMPLETE=36053]="FRAMEBUFFER_COMPLETE",e[e.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=36054]="FRAMEBUFFER_INCOMPLETE_ATTACHMENT",e[e.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=36055]="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",e[e.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=36057]="FRAMEBUFFER_INCOMPLETE_DIMENSIONS",e[e.FRAMEBUFFER_UNSUPPORTED=36061]="FRAMEBUFFER_UNSUPPORTED",e[e.FRAMEBUFFER_BINDING=36006]="FRAMEBUFFER_BINDING",e[e.RENDERBUFFER_BINDING=36007]="RENDERBUFFER_BINDING",e[e.READ_FRAMEBUFFER=36008]="READ_FRAMEBUFFER",e[e.DRAW_FRAMEBUFFER=36009]="DRAW_FRAMEBUFFER",e[e.MAX_RENDERBUFFER_SIZE=34024]="MAX_RENDERBUFFER_SIZE",e[e.INVALID_FRAMEBUFFER_OPERATION=1286]="INVALID_FRAMEBUFFER_OPERATION",e[e.UNPACK_FLIP_Y_WEBGL=37440]="UNPACK_FLIP_Y_WEBGL",e[e.UNPACK_PREMULTIPLY_ALPHA_WEBGL=37441]="UNPACK_PREMULTIPLY_ALPHA_WEBGL",e[e.UNPACK_COLORSPACE_CONVERSION_WEBGL=37443]="UNPACK_COLORSPACE_CONVERSION_WEBGL",e[e.READ_BUFFER=3074]="READ_BUFFER",e[e.UNPACK_ROW_LENGTH=3314]="UNPACK_ROW_LENGTH",e[e.UNPACK_SKIP_ROWS=3315]="UNPACK_SKIP_ROWS",e[e.UNPACK_SKIP_PIXELS=3316]="UNPACK_SKIP_PIXELS",e[e.PACK_ROW_LENGTH=3330]="PACK_ROW_LENGTH",e[e.PACK_SKIP_ROWS=3331]="PACK_SKIP_ROWS",e[e.PACK_SKIP_PIXELS=3332]="PACK_SKIP_PIXELS",e[e.TEXTURE_BINDING_3D=32874]="TEXTURE_BINDING_3D",e[e.UNPACK_SKIP_IMAGES=32877]="UNPACK_SKIP_IMAGES",e[e.UNPACK_IMAGE_HEIGHT=32878]="UNPACK_IMAGE_HEIGHT",e[e.MAX_3D_TEXTURE_SIZE=32883]="MAX_3D_TEXTURE_SIZE",e[e.MAX_ELEMENTS_VERTICES=33e3]="MAX_ELEMENTS_VERTICES",e[e.MAX_ELEMENTS_INDICES=33001]="MAX_ELEMENTS_INDICES",e[e.MAX_TEXTURE_LOD_BIAS=34045]="MAX_TEXTURE_LOD_BIAS",e[e.MAX_FRAGMENT_UNIFORM_COMPONENTS=35657]="MAX_FRAGMENT_UNIFORM_COMPONENTS",e[e.MAX_VERTEX_UNIFORM_COMPONENTS=35658]="MAX_VERTEX_UNIFORM_COMPONENTS",e[e.MAX_ARRAY_TEXTURE_LAYERS=35071]="MAX_ARRAY_TEXTURE_LAYERS",e[e.MIN_PROGRAM_TEXEL_OFFSET=35076]="MIN_PROGRAM_TEXEL_OFFSET",e[e.MAX_PROGRAM_TEXEL_OFFSET=35077]="MAX_PROGRAM_TEXEL_OFFSET",e[e.MAX_VARYING_COMPONENTS=35659]="MAX_VARYING_COMPONENTS",e[e.FRAGMENT_SHADER_DERIVATIVE_HINT=35723]="FRAGMENT_SHADER_DERIVATIVE_HINT",e[e.RASTERIZER_DISCARD=35977]="RASTERIZER_DISCARD",e[e.VERTEX_ARRAY_BINDING=34229]="VERTEX_ARRAY_BINDING",e[e.MAX_VERTEX_OUTPUT_COMPONENTS=37154]="MAX_VERTEX_OUTPUT_COMPONENTS",e[e.MAX_FRAGMENT_INPUT_COMPONENTS=37157]="MAX_FRAGMENT_INPUT_COMPONENTS",e[e.MAX_SERVER_WAIT_TIMEOUT=37137]="MAX_SERVER_WAIT_TIMEOUT",e[e.MAX_ELEMENT_INDEX=36203]="MAX_ELEMENT_INDEX",e[e.RED=6403]="RED",e[e.RGB8=32849]="RGB8",e[e.RGBA8=32856]="RGBA8",e[e.RGB10_A2=32857]="RGB10_A2",e[e.TEXTURE_3D=32879]="TEXTURE_3D",e[e.TEXTURE_WRAP_R=32882]="TEXTURE_WRAP_R",e[e.TEXTURE_MIN_LOD=33082]="TEXTURE_MIN_LOD",e[e.TEXTURE_MAX_LOD=33083]="TEXTURE_MAX_LOD",e[e.TEXTURE_BASE_LEVEL=33084]="TEXTURE_BASE_LEVEL",e[e.TEXTURE_MAX_LEVEL=33085]="TEXTURE_MAX_LEVEL",e[e.TEXTURE_COMPARE_MODE=34892]="TEXTURE_COMPARE_MODE",e[e.TEXTURE_COMPARE_FUNC=34893]="TEXTURE_COMPARE_FUNC",e[e.SRGB=35904]="SRGB",e[e.SRGB8=35905]="SRGB8",e[e.SRGB8_ALPHA8=35907]="SRGB8_ALPHA8",e[e.COMPARE_REF_TO_TEXTURE=34894]="COMPARE_REF_TO_TEXTURE",e[e.RGBA32F=34836]="RGBA32F",e[e.RGB32F=34837]="RGB32F",e[e.RGBA16F=34842]="RGBA16F",e[e.RGB16F=34843]="RGB16F",e[e.TEXTURE_2D_ARRAY=35866]="TEXTURE_2D_ARRAY",e[e.TEXTURE_BINDING_2D_ARRAY=35869]="TEXTURE_BINDING_2D_ARRAY",e[e.R11F_G11F_B10F=35898]="R11F_G11F_B10F",e[e.RGB9_E5=35901]="RGB9_E5",e[e.RGBA32UI=36208]="RGBA32UI",e[e.RGB32UI=36209]="RGB32UI",e[e.RGBA16UI=36214]="RGBA16UI",e[e.RGB16UI=36215]="RGB16UI",e[e.RGBA8UI=36220]="RGBA8UI",e[e.RGB8UI=36221]="RGB8UI",e[e.RGBA32I=36226]="RGBA32I",e[e.RGB32I=36227]="RGB32I",e[e.RGBA16I=36232]="RGBA16I",e[e.RGB16I=36233]="RGB16I",e[e.RGBA8I=36238]="RGBA8I",e[e.RGB8I=36239]="RGB8I",e[e.RED_INTEGER=36244]="RED_INTEGER",e[e.RGB_INTEGER=36248]="RGB_INTEGER",e[e.RGBA_INTEGER=36249]="RGBA_INTEGER",e[e.R8=33321]="R8",e[e.RG8=33323]="RG8",e[e.R16F=33325]="R16F",e[e.R32F=33326]="R32F",e[e.RG16F=33327]="RG16F",e[e.RG32F=33328]="RG32F",e[e.R8I=33329]="R8I",e[e.R8UI=33330]="R8UI",e[e.R16I=33331]="R16I",e[e.R16UI=33332]="R16UI",e[e.R32I=33333]="R32I",e[e.R32UI=33334]="R32UI",e[e.RG8I=33335]="RG8I",e[e.RG8UI=33336]="RG8UI",e[e.RG16I=33337]="RG16I",e[e.RG16UI=33338]="RG16UI",e[e.RG32I=33339]="RG32I",e[e.RG32UI=33340]="RG32UI",e[e.R8_SNORM=36756]="R8_SNORM",e[e.RG8_SNORM=36757]="RG8_SNORM",e[e.RGB8_SNORM=36758]="RGB8_SNORM",e[e.RGBA8_SNORM=36759]="RGBA8_SNORM",e[e.RGB10_A2UI=36975]="RGB10_A2UI",e[e.TEXTURE_IMMUTABLE_FORMAT=37167]="TEXTURE_IMMUTABLE_FORMAT",e[e.TEXTURE_IMMUTABLE_LEVELS=33503]="TEXTURE_IMMUTABLE_LEVELS",e[e.UNSIGNED_INT_2_10_10_10_REV=33640]="UNSIGNED_INT_2_10_10_10_REV",e[e.UNSIGNED_INT_10F_11F_11F_REV=35899]="UNSIGNED_INT_10F_11F_11F_REV",e[e.UNSIGNED_INT_5_9_9_9_REV=35902]="UNSIGNED_INT_5_9_9_9_REV",e[e.FLOAT_32_UNSIGNED_INT_24_8_REV=36269]="FLOAT_32_UNSIGNED_INT_24_8_REV",e[e.UNSIGNED_INT_24_8=34042]="UNSIGNED_INT_24_8",e[e.HALF_FLOAT=5131]="HALF_FLOAT",e[e.RG=33319]="RG",e[e.RG_INTEGER=33320]="RG_INTEGER",e[e.INT_2_10_10_10_REV=36255]="INT_2_10_10_10_REV",e[e.CURRENT_QUERY=34917]="CURRENT_QUERY",e[e.QUERY_RESULT=34918]="QUERY_RESULT",e[e.QUERY_RESULT_AVAILABLE=34919]="QUERY_RESULT_AVAILABLE",e[e.ANY_SAMPLES_PASSED=35887]="ANY_SAMPLES_PASSED",e[e.ANY_SAMPLES_PASSED_CONSERVATIVE=36202]="ANY_SAMPLES_PASSED_CONSERVATIVE",e[e.MAX_DRAW_BUFFERS=34852]="MAX_DRAW_BUFFERS",e[e.DRAW_BUFFER0=34853]="DRAW_BUFFER0",e[e.DRAW_BUFFER1=34854]="DRAW_BUFFER1",e[e.DRAW_BUFFER2=34855]="DRAW_BUFFER2",e[e.DRAW_BUFFER3=34856]="DRAW_BUFFER3",e[e.DRAW_BUFFER4=34857]="DRAW_BUFFER4",e[e.DRAW_BUFFER5=34858]="DRAW_BUFFER5",e[e.DRAW_BUFFER6=34859]="DRAW_BUFFER6",e[e.DRAW_BUFFER7=34860]="DRAW_BUFFER7",e[e.DRAW_BUFFER8=34861]="DRAW_BUFFER8",e[e.DRAW_BUFFER9=34862]="DRAW_BUFFER9",e[e.DRAW_BUFFER10=34863]="DRAW_BUFFER10",e[e.DRAW_BUFFER11=34864]="DRAW_BUFFER11",e[e.DRAW_BUFFER12=34865]="DRAW_BUFFER12",e[e.DRAW_BUFFER13=34866]="DRAW_BUFFER13",e[e.DRAW_BUFFER14=34867]="DRAW_BUFFER14",e[e.DRAW_BUFFER15=34868]="DRAW_BUFFER15",e[e.MAX_COLOR_ATTACHMENTS=36063]="MAX_COLOR_ATTACHMENTS",e[e.COLOR_ATTACHMENT1=36065]="COLOR_ATTACHMENT1",e[e.COLOR_ATTACHMENT2=36066]="COLOR_ATTACHMENT2",e[e.COLOR_ATTACHMENT3=36067]="COLOR_ATTACHMENT3",e[e.COLOR_ATTACHMENT4=36068]="COLOR_ATTACHMENT4",e[e.COLOR_ATTACHMENT5=36069]="COLOR_ATTACHMENT5",e[e.COLOR_ATTACHMENT6=36070]="COLOR_ATTACHMENT6",e[e.COLOR_ATTACHMENT7=36071]="COLOR_ATTACHMENT7",e[e.COLOR_ATTACHMENT8=36072]="COLOR_ATTACHMENT8",e[e.COLOR_ATTACHMENT9=36073]="COLOR_ATTACHMENT9",e[e.COLOR_ATTACHMENT10=36074]="COLOR_ATTACHMENT10",e[e.COLOR_ATTACHMENT11=36075]="COLOR_ATTACHMENT11",e[e.COLOR_ATTACHMENT12=36076]="COLOR_ATTACHMENT12",e[e.COLOR_ATTACHMENT13=36077]="COLOR_ATTACHMENT13",e[e.COLOR_ATTACHMENT14=36078]="COLOR_ATTACHMENT14",e[e.COLOR_ATTACHMENT15=36079]="COLOR_ATTACHMENT15",e[e.SAMPLER_3D=35679]="SAMPLER_3D",e[e.SAMPLER_2D_SHADOW=35682]="SAMPLER_2D_SHADOW",e[e.SAMPLER_2D_ARRAY=36289]="SAMPLER_2D_ARRAY",e[e.SAMPLER_2D_ARRAY_SHADOW=36292]="SAMPLER_2D_ARRAY_SHADOW",e[e.SAMPLER_CUBE_SHADOW=36293]="SAMPLER_CUBE_SHADOW",e[e.INT_SAMPLER_2D=36298]="INT_SAMPLER_2D",e[e.INT_SAMPLER_3D=36299]="INT_SAMPLER_3D",e[e.INT_SAMPLER_CUBE=36300]="INT_SAMPLER_CUBE",e[e.INT_SAMPLER_2D_ARRAY=36303]="INT_SAMPLER_2D_ARRAY",e[e.UNSIGNED_INT_SAMPLER_2D=36306]="UNSIGNED_INT_SAMPLER_2D",e[e.UNSIGNED_INT_SAMPLER_3D=36307]="UNSIGNED_INT_SAMPLER_3D",e[e.UNSIGNED_INT_SAMPLER_CUBE=36308]="UNSIGNED_INT_SAMPLER_CUBE",e[e.UNSIGNED_INT_SAMPLER_2D_ARRAY=36311]="UNSIGNED_INT_SAMPLER_2D_ARRAY",e[e.MAX_SAMPLES=36183]="MAX_SAMPLES",e[e.SAMPLER_BINDING=35097]="SAMPLER_BINDING",e[e.PIXEL_PACK_BUFFER=35051]="PIXEL_PACK_BUFFER",e[e.PIXEL_UNPACK_BUFFER=35052]="PIXEL_UNPACK_BUFFER",e[e.PIXEL_PACK_BUFFER_BINDING=35053]="PIXEL_PACK_BUFFER_BINDING",e[e.PIXEL_UNPACK_BUFFER_BINDING=35055]="PIXEL_UNPACK_BUFFER_BINDING",e[e.COPY_READ_BUFFER=36662]="COPY_READ_BUFFER",e[e.COPY_WRITE_BUFFER=36663]="COPY_WRITE_BUFFER",e[e.COPY_READ_BUFFER_BINDING=36662]="COPY_READ_BUFFER_BINDING",e[e.COPY_WRITE_BUFFER_BINDING=36663]="COPY_WRITE_BUFFER_BINDING",e[e.FLOAT_MAT2x3=35685]="FLOAT_MAT2x3",e[e.FLOAT_MAT2x4=35686]="FLOAT_MAT2x4",e[e.FLOAT_MAT3x2=35687]="FLOAT_MAT3x2",e[e.FLOAT_MAT3x4=35688]="FLOAT_MAT3x4",e[e.FLOAT_MAT4x2=35689]="FLOAT_MAT4x2",e[e.FLOAT_MAT4x3=35690]="FLOAT_MAT4x3",e[e.UNSIGNED_INT_VEC2=36294]="UNSIGNED_INT_VEC2",e[e.UNSIGNED_INT_VEC3=36295]="UNSIGNED_INT_VEC3",e[e.UNSIGNED_INT_VEC4=36296]="UNSIGNED_INT_VEC4",e[e.UNSIGNED_NORMALIZED=35863]="UNSIGNED_NORMALIZED",e[e.SIGNED_NORMALIZED=36764]="SIGNED_NORMALIZED",e[e.VERTEX_ATTRIB_ARRAY_INTEGER=35069]="VERTEX_ATTRIB_ARRAY_INTEGER",e[e.VERTEX_ATTRIB_ARRAY_DIVISOR=35070]="VERTEX_ATTRIB_ARRAY_DIVISOR",e[e.TRANSFORM_FEEDBACK_BUFFER_MODE=35967]="TRANSFORM_FEEDBACK_BUFFER_MODE",e[e.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS=35968]="MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS",e[e.TRANSFORM_FEEDBACK_VARYINGS=35971]="TRANSFORM_FEEDBACK_VARYINGS",e[e.TRANSFORM_FEEDBACK_BUFFER_START=35972]="TRANSFORM_FEEDBACK_BUFFER_START",e[e.TRANSFORM_FEEDBACK_BUFFER_SIZE=35973]="TRANSFORM_FEEDBACK_BUFFER_SIZE",e[e.TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN=35976]="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN",e[e.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS=35978]="MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS",e[e.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS=35979]="MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS",e[e.INTERLEAVED_ATTRIBS=35980]="INTERLEAVED_ATTRIBS",e[e.SEPARATE_ATTRIBS=35981]="SEPARATE_ATTRIBS",e[e.TRANSFORM_FEEDBACK_BUFFER=35982]="TRANSFORM_FEEDBACK_BUFFER",e[e.TRANSFORM_FEEDBACK_BUFFER_BINDING=35983]="TRANSFORM_FEEDBACK_BUFFER_BINDING",e[e.TRANSFORM_FEEDBACK=36386]="TRANSFORM_FEEDBACK",e[e.TRANSFORM_FEEDBACK_PAUSED=36387]="TRANSFORM_FEEDBACK_PAUSED",e[e.TRANSFORM_FEEDBACK_ACTIVE=36388]="TRANSFORM_FEEDBACK_ACTIVE",e[e.TRANSFORM_FEEDBACK_BINDING=36389]="TRANSFORM_FEEDBACK_BINDING",e[e.FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING=33296]="FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING",e[e.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE=33297]="FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE",e[e.FRAMEBUFFER_ATTACHMENT_RED_SIZE=33298]="FRAMEBUFFER_ATTACHMENT_RED_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_GREEN_SIZE=33299]="FRAMEBUFFER_ATTACHMENT_GREEN_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_BLUE_SIZE=33300]="FRAMEBUFFER_ATTACHMENT_BLUE_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE=33301]="FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE=33302]="FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE=33303]="FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE",e[e.FRAMEBUFFER_DEFAULT=33304]="FRAMEBUFFER_DEFAULT",e[e.DEPTH24_STENCIL8=35056]="DEPTH24_STENCIL8",e[e.DRAW_FRAMEBUFFER_BINDING=36006]="DRAW_FRAMEBUFFER_BINDING",e[e.READ_FRAMEBUFFER_BINDING=36010]="READ_FRAMEBUFFER_BINDING",e[e.RENDERBUFFER_SAMPLES=36011]="RENDERBUFFER_SAMPLES",e[e.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER=36052]="FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER",e[e.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE=36182]="FRAMEBUFFER_INCOMPLETE_MULTISAMPLE",e[e.UNIFORM_BUFFER=35345]="UNIFORM_BUFFER",e[e.UNIFORM_BUFFER_BINDING=35368]="UNIFORM_BUFFER_BINDING",e[e.UNIFORM_BUFFER_START=35369]="UNIFORM_BUFFER_START",e[e.UNIFORM_BUFFER_SIZE=35370]="UNIFORM_BUFFER_SIZE",e[e.MAX_VERTEX_UNIFORM_BLOCKS=35371]="MAX_VERTEX_UNIFORM_BLOCKS",e[e.MAX_FRAGMENT_UNIFORM_BLOCKS=35373]="MAX_FRAGMENT_UNIFORM_BLOCKS",e[e.MAX_COMBINED_UNIFORM_BLOCKS=35374]="MAX_COMBINED_UNIFORM_BLOCKS",e[e.MAX_UNIFORM_BUFFER_BINDINGS=35375]="MAX_UNIFORM_BUFFER_BINDINGS",e[e.MAX_UNIFORM_BLOCK_SIZE=35376]="MAX_UNIFORM_BLOCK_SIZE",e[e.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS=35377]="MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS",e[e.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS=35379]="MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS",e[e.UNIFORM_BUFFER_OFFSET_ALIGNMENT=35380]="UNIFORM_BUFFER_OFFSET_ALIGNMENT",e[e.ACTIVE_UNIFORM_BLOCKS=35382]="ACTIVE_UNIFORM_BLOCKS",e[e.UNIFORM_TYPE=35383]="UNIFORM_TYPE",e[e.UNIFORM_SIZE=35384]="UNIFORM_SIZE",e[e.UNIFORM_BLOCK_INDEX=35386]="UNIFORM_BLOCK_INDEX",e[e.UNIFORM_OFFSET=35387]="UNIFORM_OFFSET",e[e.UNIFORM_ARRAY_STRIDE=35388]="UNIFORM_ARRAY_STRIDE",e[e.UNIFORM_MATRIX_STRIDE=35389]="UNIFORM_MATRIX_STRIDE",e[e.UNIFORM_IS_ROW_MAJOR=35390]="UNIFORM_IS_ROW_MAJOR",e[e.UNIFORM_BLOCK_BINDING=35391]="UNIFORM_BLOCK_BINDING",e[e.UNIFORM_BLOCK_DATA_SIZE=35392]="UNIFORM_BLOCK_DATA_SIZE",e[e.UNIFORM_BLOCK_ACTIVE_UNIFORMS=35394]="UNIFORM_BLOCK_ACTIVE_UNIFORMS",e[e.UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES=35395]="UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES",e[e.UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER=35396]="UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER",e[e.UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER=35398]="UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER",e[e.OBJECT_TYPE=37138]="OBJECT_TYPE",e[e.SYNC_CONDITION=37139]="SYNC_CONDITION",e[e.SYNC_STATUS=37140]="SYNC_STATUS",e[e.SYNC_FLAGS=37141]="SYNC_FLAGS",e[e.SYNC_FENCE=37142]="SYNC_FENCE",e[e.SYNC_GPU_COMMANDS_COMPLETE=37143]="SYNC_GPU_COMMANDS_COMPLETE",e[e.UNSIGNALED=37144]="UNSIGNALED",e[e.SIGNALED=37145]="SIGNALED",e[e.ALREADY_SIGNALED=37146]="ALREADY_SIGNALED",e[e.TIMEOUT_EXPIRED=37147]="TIMEOUT_EXPIRED",e[e.CONDITION_SATISFIED=37148]="CONDITION_SATISFIED",e[e.WAIT_FAILED=37149]="WAIT_FAILED",e[e.SYNC_FLUSH_COMMANDS_BIT=1]="SYNC_FLUSH_COMMANDS_BIT",e[e.COLOR=6144]="COLOR",e[e.DEPTH=6145]="DEPTH",e[e.STENCIL=6146]="STENCIL",e[e.MIN=32775]="MIN",e[e.MAX=32776]="MAX",e[e.DEPTH_COMPONENT24=33190]="DEPTH_COMPONENT24",e[e.STREAM_READ=35041]="STREAM_READ",e[e.STREAM_COPY=35042]="STREAM_COPY",e[e.STATIC_READ=35045]="STATIC_READ",e[e.STATIC_COPY=35046]="STATIC_COPY",e[e.DYNAMIC_READ=35049]="DYNAMIC_READ",e[e.DYNAMIC_COPY=35050]="DYNAMIC_COPY",e[e.DEPTH_COMPONENT32F=36012]="DEPTH_COMPONENT32F",e[e.DEPTH32F_STENCIL8=36013]="DEPTH32F_STENCIL8",e[e.INVALID_INDEX=4294967295]="INVALID_INDEX",e[e.TIMEOUT_IGNORED=-1]="TIMEOUT_IGNORED",e[e.MAX_CLIENT_WAIT_TIMEOUT_WEBGL=37447]="MAX_CLIENT_WAIT_TIMEOUT_WEBGL",e[e.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE=35070]="VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE",e[e.UNMASKED_VENDOR_WEBGL=37445]="UNMASKED_VENDOR_WEBGL",e[e.UNMASKED_RENDERER_WEBGL=37446]="UNMASKED_RENDERER_WEBGL",e[e.MAX_TEXTURE_MAX_ANISOTROPY_EXT=34047]="MAX_TEXTURE_MAX_ANISOTROPY_EXT",e[e.TEXTURE_MAX_ANISOTROPY_EXT=34046]="TEXTURE_MAX_ANISOTROPY_EXT",e[e.SRGB_EXT=35904]="SRGB_EXT",e[e.SRGB_ALPHA_EXT=35906]="SRGB_ALPHA_EXT",e[e.SRGB8_ALPHA8_EXT=35907]="SRGB8_ALPHA8_EXT",e[e.FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT=33296]="FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT",e[e.R16_EXT=33322]="R16_EXT",e[e.RG16_EXT=33324]="RG16_EXT",e[e.RGB16_EXT=32852]="RGB16_EXT",e[e.RGBA16_EXT=32859]="RGBA16_EXT",e[e.R16_SNORM_EXT=36760]="R16_SNORM_EXT",e[e.RG16_SNORM_EXT=36761]="RG16_SNORM_EXT",e[e.RGB16_SNORM_EXT=36762]="RGB16_SNORM_EXT",e[e.RGBA16_SNORM_EXT=36763]="RGBA16_SNORM_EXT",e[e.COMPRESSED_RGB_S3TC_DXT1_EXT=33776]="COMPRESSED_RGB_S3TC_DXT1_EXT",e[e.COMPRESSED_RGBA_S3TC_DXT1_EXT=33777]="COMPRESSED_RGBA_S3TC_DXT1_EXT",e[e.COMPRESSED_RGBA_S3TC_DXT3_EXT=33778]="COMPRESSED_RGBA_S3TC_DXT3_EXT",e[e.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779]="COMPRESSED_RGBA_S3TC_DXT5_EXT",e[e.COMPRESSED_SRGB_S3TC_DXT1_EXT=35916]="COMPRESSED_SRGB_S3TC_DXT1_EXT",e[e.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT=35917]="COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT",e[e.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT=35918]="COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT",e[e.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT=35919]="COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT",e[e.COMPRESSED_RED_RGTC1_EXT=36283]="COMPRESSED_RED_RGTC1_EXT",e[e.COMPRESSED_SIGNED_RED_RGTC1_EXT=36284]="COMPRESSED_SIGNED_RED_RGTC1_EXT",e[e.COMPRESSED_RED_GREEN_RGTC2_EXT=36285]="COMPRESSED_RED_GREEN_RGTC2_EXT",e[e.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT=36286]="COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT",e[e.COMPRESSED_RGBA_BPTC_UNORM_EXT=36492]="COMPRESSED_RGBA_BPTC_UNORM_EXT",e[e.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT=36493]="COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT",e[e.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT=36494]="COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT",e[e.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT=36495]="COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT",e[e.COMPRESSED_R11_EAC=37488]="COMPRESSED_R11_EAC",e[e.COMPRESSED_SIGNED_R11_EAC=37489]="COMPRESSED_SIGNED_R11_EAC",e[e.COMPRESSED_RG11_EAC=37490]="COMPRESSED_RG11_EAC",e[e.COMPRESSED_SIGNED_RG11_EAC=37491]="COMPRESSED_SIGNED_RG11_EAC",e[e.COMPRESSED_RGB8_ETC2=37492]="COMPRESSED_RGB8_ETC2",e[e.COMPRESSED_RGBA8_ETC2_EAC=37493]="COMPRESSED_RGBA8_ETC2_EAC",e[e.COMPRESSED_SRGB8_ETC2=37494]="COMPRESSED_SRGB8_ETC2",e[e.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC=37495]="COMPRESSED_SRGB8_ALPHA8_ETC2_EAC",e[e.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2=37496]="COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2",e[e.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2=37497]="COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2",e[e.COMPRESSED_RGB_PVRTC_4BPPV1_IMG=35840]="COMPRESSED_RGB_PVRTC_4BPPV1_IMG",e[e.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG=35842]="COMPRESSED_RGBA_PVRTC_4BPPV1_IMG",e[e.COMPRESSED_RGB_PVRTC_2BPPV1_IMG=35841]="COMPRESSED_RGB_PVRTC_2BPPV1_IMG",e[e.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG=35843]="COMPRESSED_RGBA_PVRTC_2BPPV1_IMG",e[e.COMPRESSED_RGB_ETC1_WEBGL=36196]="COMPRESSED_RGB_ETC1_WEBGL",e[e.COMPRESSED_RGB_ATC_WEBGL=35986]="COMPRESSED_RGB_ATC_WEBGL",e[e.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL=35986]="COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL",e[e.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL=34798]="COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL",e[e.COMPRESSED_RGBA_ASTC_4x4_KHR=37808]="COMPRESSED_RGBA_ASTC_4x4_KHR",e[e.COMPRESSED_RGBA_ASTC_5x4_KHR=37809]="COMPRESSED_RGBA_ASTC_5x4_KHR",e[e.COMPRESSED_RGBA_ASTC_5x5_KHR=37810]="COMPRESSED_RGBA_ASTC_5x5_KHR",e[e.COMPRESSED_RGBA_ASTC_6x5_KHR=37811]="COMPRESSED_RGBA_ASTC_6x5_KHR",e[e.COMPRESSED_RGBA_ASTC_6x6_KHR=37812]="COMPRESSED_RGBA_ASTC_6x6_KHR",e[e.COMPRESSED_RGBA_ASTC_8x5_KHR=37813]="COMPRESSED_RGBA_ASTC_8x5_KHR",e[e.COMPRESSED_RGBA_ASTC_8x6_KHR=37814]="COMPRESSED_RGBA_ASTC_8x6_KHR",e[e.COMPRESSED_RGBA_ASTC_8x8_KHR=37815]="COMPRESSED_RGBA_ASTC_8x8_KHR",e[e.COMPRESSED_RGBA_ASTC_10x5_KHR=37816]="COMPRESSED_RGBA_ASTC_10x5_KHR",e[e.COMPRESSED_RGBA_ASTC_10x6_KHR=37817]="COMPRESSED_RGBA_ASTC_10x6_KHR",e[e.COMPRESSED_RGBA_ASTC_10x8_KHR=37818]="COMPRESSED_RGBA_ASTC_10x8_KHR",e[e.COMPRESSED_RGBA_ASTC_10x10_KHR=37819]="COMPRESSED_RGBA_ASTC_10x10_KHR",e[e.COMPRESSED_RGBA_ASTC_12x10_KHR=37820]="COMPRESSED_RGBA_ASTC_12x10_KHR",e[e.COMPRESSED_RGBA_ASTC_12x12_KHR=37821]="COMPRESSED_RGBA_ASTC_12x12_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR=37840]="COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR=37841]="COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR=37842]="COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR=37843]="COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR=37844]="COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR=37845]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR=37846]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR=37847]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR=37848]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR=37849]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR=37850]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR=37851]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR=37852]="COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR=37853]="COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR",e[e.UNSIGNED_INT_24_8_WEBGL=34042]="UNSIGNED_INT_24_8_WEBGL",e[e.HALF_FLOAT_OES=36193]="HALF_FLOAT_OES",e[e.RGBA32F_EXT=34836]="RGBA32F_EXT",e[e.RGB32F_EXT=34837]="RGB32F_EXT",e[e.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT=33297]="FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT",e[e.UNSIGNED_NORMALIZED_EXT=35863]="UNSIGNED_NORMALIZED_EXT",e[e.MIN_EXT=32775]="MIN_EXT",e[e.MAX_EXT=32776]="MAX_EXT",e[e.FRAGMENT_SHADER_DERIVATIVE_HINT_OES=35723]="FRAGMENT_SHADER_DERIVATIVE_HINT_OES",e[e.COLOR_ATTACHMENT0_WEBGL=36064]="COLOR_ATTACHMENT0_WEBGL",e[e.COLOR_ATTACHMENT1_WEBGL=36065]="COLOR_ATTACHMENT1_WEBGL",e[e.COLOR_ATTACHMENT2_WEBGL=36066]="COLOR_ATTACHMENT2_WEBGL",e[e.COLOR_ATTACHMENT3_WEBGL=36067]="COLOR_ATTACHMENT3_WEBGL",e[e.COLOR_ATTACHMENT4_WEBGL=36068]="COLOR_ATTACHMENT4_WEBGL",e[e.COLOR_ATTACHMENT5_WEBGL=36069]="COLOR_ATTACHMENT5_WEBGL",e[e.COLOR_ATTACHMENT6_WEBGL=36070]="COLOR_ATTACHMENT6_WEBGL",e[e.COLOR_ATTACHMENT7_WEBGL=36071]="COLOR_ATTACHMENT7_WEBGL",e[e.COLOR_ATTACHMENT8_WEBGL=36072]="COLOR_ATTACHMENT8_WEBGL",e[e.COLOR_ATTACHMENT9_WEBGL=36073]="COLOR_ATTACHMENT9_WEBGL",e[e.COLOR_ATTACHMENT10_WEBGL=36074]="COLOR_ATTACHMENT10_WEBGL",e[e.COLOR_ATTACHMENT11_WEBGL=36075]="COLOR_ATTACHMENT11_WEBGL",e[e.COLOR_ATTACHMENT12_WEBGL=36076]="COLOR_ATTACHMENT12_WEBGL",e[e.COLOR_ATTACHMENT13_WEBGL=36077]="COLOR_ATTACHMENT13_WEBGL",e[e.COLOR_ATTACHMENT14_WEBGL=36078]="COLOR_ATTACHMENT14_WEBGL",e[e.COLOR_ATTACHMENT15_WEBGL=36079]="COLOR_ATTACHMENT15_WEBGL",e[e.DRAW_BUFFER0_WEBGL=34853]="DRAW_BUFFER0_WEBGL",e[e.DRAW_BUFFER1_WEBGL=34854]="DRAW_BUFFER1_WEBGL",e[e.DRAW_BUFFER2_WEBGL=34855]="DRAW_BUFFER2_WEBGL",e[e.DRAW_BUFFER3_WEBGL=34856]="DRAW_BUFFER3_WEBGL",e[e.DRAW_BUFFER4_WEBGL=34857]="DRAW_BUFFER4_WEBGL",e[e.DRAW_BUFFER5_WEBGL=34858]="DRAW_BUFFER5_WEBGL",e[e.DRAW_BUFFER6_WEBGL=34859]="DRAW_BUFFER6_WEBGL",e[e.DRAW_BUFFER7_WEBGL=34860]="DRAW_BUFFER7_WEBGL",e[e.DRAW_BUFFER8_WEBGL=34861]="DRAW_BUFFER8_WEBGL",e[e.DRAW_BUFFER9_WEBGL=34862]="DRAW_BUFFER9_WEBGL",e[e.DRAW_BUFFER10_WEBGL=34863]="DRAW_BUFFER10_WEBGL",e[e.DRAW_BUFFER11_WEBGL=34864]="DRAW_BUFFER11_WEBGL",e[e.DRAW_BUFFER12_WEBGL=34865]="DRAW_BUFFER12_WEBGL",e[e.DRAW_BUFFER13_WEBGL=34866]="DRAW_BUFFER13_WEBGL",e[e.DRAW_BUFFER14_WEBGL=34867]="DRAW_BUFFER14_WEBGL",e[e.DRAW_BUFFER15_WEBGL=34868]="DRAW_BUFFER15_WEBGL",e[e.MAX_COLOR_ATTACHMENTS_WEBGL=36063]="MAX_COLOR_ATTACHMENTS_WEBGL",e[e.MAX_DRAW_BUFFERS_WEBGL=34852]="MAX_DRAW_BUFFERS_WEBGL",e[e.VERTEX_ARRAY_BINDING_OES=34229]="VERTEX_ARRAY_BINDING_OES",e[e.QUERY_COUNTER_BITS_EXT=34916]="QUERY_COUNTER_BITS_EXT",e[e.CURRENT_QUERY_EXT=34917]="CURRENT_QUERY_EXT",e[e.QUERY_RESULT_EXT=34918]="QUERY_RESULT_EXT",e[e.QUERY_RESULT_AVAILABLE_EXT=34919]="QUERY_RESULT_AVAILABLE_EXT",e[e.TIME_ELAPSED_EXT=35007]="TIME_ELAPSED_EXT",e[e.TIMESTAMP_EXT=36392]="TIMESTAMP_EXT",e[e.GPU_DISJOINT_EXT=36795]="GPU_DISJOINT_EXT",e}({});var ks="Invalid WebGLRenderingContext";var Gs="Requires WebGL2";function $r(e){return typeof WebGLRenderingContext<"u"&&e instanceof WebGLRenderingContext||typeof WebGL2RenderingContext<"u"&&e instanceof WebGL2RenderingContext?!0:Boolean(e&&Number.isFinite(e._version))}function W(e){return typeof WebGL2RenderingContext<"u"&&e instanceof WebGL2RenderingContext?!0:Boolean(e&&e._version===2)}function Bt(e){return W(e)?e:null}function _r(e){return F($r(e),ks),e}function _t(e){return F(W(e),Gs),e}var V,Wa="OES_element_index",Va="WEBGL_draw_buffers",zs="EXT_disjoint_timer_query",Zs="EXT_disjoint_timer_query_webgl2",$s="EXT_texture_filter_anisotropic",ja="WEBGL_debug_renderer_info",Qs=35723,qs=4352,Js=36795,eu=34047,tu=37445,ru=37446,Z=function(t){return W(t)?void 0:0},nu=(V={},f(V,a.READ_BUFFER,function(e){return W(e)?void 0:a.COLOR_ATTACHMENT0}),f(V,Qs,function(e){return W(e)?void 0:qs}),f(V,a.RASTERIZER_DISCARD,Z),f(V,a.SAMPLES,Z),f(V,Js,function(e,t){var r=W(e)?e.getExtension(Zs):e.getExtension(zs);return r&&r.GPU_DISJOINT_EXT?t(r.GPU_DISJOINT_EXT):0}),f(V,tu,function(e,t){var r=e.getExtension(ja);return t(r&&r.UNMASKED_VENDOR_WEBGL||a.VENDOR)}),f(V,ru,function(e,t){var r=e.getExtension(ja);return t(r&&r.UNMASKED_RENDERER_WEBGL||a.RENDERER)}),f(V,eu,function(e,t){var r,n=((r=e.luma)===null||r===void 0||(r=r.extensions)===null||r===void 0?void 0:r[$s])||e.getExtension("EXT_texture_filter_anisotropic");return n?t(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT):1}),f(V,a.MAX_3D_TEXTURE_SIZE,Z),f(V,a.MAX_ARRAY_TEXTURE_LAYERS,Z),f(V,a.MAX_CLIENT_WAIT_TIMEOUT_WEBGL,Z),f(V,a.MAX_COLOR_ATTACHMENTS,function(e,t){if(!W(e)){var r=e.getExtension(Va);return r?t(r.MAX_COLOR_ATTACHMENTS_WEBGL):0}}),f(V,a.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS,Z),f(V,a.MAX_COMBINED_UNIFORM_BLOCKS,Z),f(V,a.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS,Z),f(V,a.MAX_DRAW_BUFFERS,function(e){if(!W(e)){var t=e.getExtension(Va);return t?t.MAX_DRAW_BUFFERS_WEBGL:0}}),f(V,a.MAX_ELEMENT_INDEX,function(e){return e.getExtension(Wa)?2147483647:65535}),f(V,a.MAX_ELEMENTS_INDICES,function(e){return e.getExtension(Wa)?16777216:65535}),f(V,a.MAX_ELEMENTS_VERTICES,function(e){return 16777216}),f(V,a.MAX_FRAGMENT_INPUT_COMPONENTS,Z),f(V,a.MAX_FRAGMENT_UNIFORM_BLOCKS,Z),f(V,a.MAX_FRAGMENT_UNIFORM_COMPONENTS,Z),f(V,a.MAX_SAMPLES,Z),f(V,a.MAX_SERVER_WAIT_TIMEOUT,Z),f(V,a.MAX_TEXTURE_LOD_BIAS,Z),f(V,a.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS,Z),f(V,a.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS,Z),f(V,a.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS,Z),f(V,a.MAX_UNIFORM_BLOCK_SIZE,Z),f(V,a.MAX_UNIFORM_BUFFER_BINDINGS,Z),f(V,a.MAX_VARYING_COMPONENTS,Z),f(V,a.MAX_VERTEX_OUTPUT_COMPONENTS,Z),f(V,a.MAX_VERTEX_UNIFORM_BLOCKS,Z),f(V,a.MAX_VERTEX_UNIFORM_COMPONENTS,Z),f(V,a.MIN_PROGRAM_TEXEL_OFFSET,Z),f(V,a.MAX_PROGRAM_TEXEL_OFFSET,Z),f(V,a.UNIFORM_BUFFER_OFFSET_ALIGNMENT,Z),V);function Ka(e,t,r){var n=nu[r],o=typeof n=="function"?n(e,t,r):n,i=o!==void 0?o:t(r);return i}function ct(e){var t=e.luma;if(!t){var r={_polyfilled:!1,_extensions:{}};e.luma=r}return e.luma}var Et,au="OES_vertex_array_object",Ya="ANGLE_instanced_arrays",iu="WEBGL_draw_buffers",ou="EXT_disjoint_timer_query",su="EXT_texture_filter_anisotropic",uu="VertexArray requires WebGL2 or OES_vertex_array_object extension";function fu(e,t){return{webgl2:W(e),ext:e.getExtension(t)}}var Qr=(Et={},f(Et,au,{meta:{suffix:"OES"},createVertexArray:function(){F(!1,uu)},deleteVertexArray:function(){},bindVertexArray:function(){},isVertexArray:function(){return!1}}),f(Et,Ya,{meta:{suffix:"ANGLE"},vertexAttribDivisor:function(t,r){F(r===0,"WebGL instanced rendering not supported")},drawElementsInstanced:function(){},drawArraysInstanced:function(){}}),f(Et,iu,{meta:{suffix:"WEBGL"},drawBuffers:function(){F(!1)}}),f(Et,ou,{meta:{suffix:"EXT"},createQuery:function(){F(!1)},deleteQuery:function(){F(!1)},beginQuery:function(){F(!1)},endQuery:function(){},getQuery:function(t,r){return this.getQueryObject(t,r)},getQueryParameter:function(t,r){return this.getQueryObject(t,r)},getQueryObject:function(t,r){}}),Et),cr={readBuffer:function(t,r,n){W(t)&&r(n)},getVertexAttrib:function(t,r,n,o){var i=fu(t,Ya),s=i.webgl2,u=i.ext,_;switch(o){case a.VERTEX_ATTRIB_ARRAY_INTEGER:_=s?void 0:!1;break;case a.VERTEX_ATTRIB_ARRAY_DIVISOR:_=!s&&!u?0:void 0;break;default:}return _!==void 0?_:r(n,o)},getProgramParameter:function(t,r,n,o){if(!W(t))switch(o){case a.TRANSFORM_FEEDBACK_BUFFER_MODE:return a.SEPARATE_ATTRIBS;case a.TRANSFORM_FEEDBACK_VARYINGS:return 0;case a.ACTIVE_UNIFORM_BLOCKS:return 0;default:}return r(n,o)},getInternalformatParameter:function(t,r,n,o,i){if(!W(t))switch(i){case a.SAMPLES:return new Int32Array([0]);default:}var s=t;return s.getInternalformatParameter(n,o,i)},getTexParameter:function(t,r,n,o){switch(o){case a.TEXTURE_MAX_ANISOTROPY_EXT:var i=ct(t),s=i._extensions,u=s[su];o=u&&u.TEXTURE_MAX_ANISOTROPY_EXT||a.TEXTURE_MAX_ANISOTROPY_EXT;break;default:}return r(n,o)},getParameter:Ka,hint:function(t,r,n,o){return r(n,o)}};function Ga(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=_u(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
17
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function _u(e,t){if(e){if(typeof e=="string")return ka(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ka(e,t)}}function ka(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Er(e){var t=ct(e);return t._polyfilled||(La(e),cu(e),Eu(e,Qr),Ru(e,{target:t,target2:e}),t._polyfilled=!0),e}function cu(e){var t=ct(e),r=e.getSupportedExtensions()||[],n=Ga(r),o;try{for(n.s();!(o=n.n()).done;){var i=o.value,s=e.getExtension(i);t._extensions[i]=s}}catch(u){n.e(u)}finally{n.f()}}function Eu(e,t){var r=ct(e),n=Ga(Object.getOwnPropertyNames(t)),o;try{for(n.s();!(o=n.n()).done;){var i=o.value;i!=="overrides"&&lu(e,{extension:i,target:r,target2:e})}}catch(s){n.e(s)}finally{n.f()}}function lu(e,t){var r=t.extension,n=t.target,o=t.target2,i=Qr[r];F(i);for(var s=i.meta,u=s===void 0?{}:s,_=u.suffix,c=_===void 0?"":_,E=e.getExtension(r),l=function(){var p=d[R],h="".concat(p).concat(c),O=null;p==="meta"||typeof e[p]=="function"||(E&&typeof E[h]=="function"?O=function(){return E[h].apply(E,arguments)}:typeof i[p]=="function"&&(O=i[p].bind(n))),O&&(n[p]=O,o[p]=O)},R=0,d=Object.keys(i);R<d.length;R++)l()}function Ru(e,t){var r=t.target,n=t.target2;Object.keys(cr).forEach(function(o){if(typeof cr[o]=="function"){var i=e[o]?e[o].bind(e):function(){},s=cr[o].bind(null,e,i);r[o]=s,n[o]=s}})}function qr(e){if(Array.isArray(e))return it(e)}function Mt(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Jr(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
18
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function J(e){return qr(e)||Mt(e)||Ye(e)||Jr()}var N,m,me,Ut=(N={},f(N,a.BLEND,!1),f(N,a.BLEND_COLOR,new Float32Array([0,0,0,0])),f(N,a.BLEND_EQUATION_RGB,a.FUNC_ADD),f(N,a.BLEND_EQUATION_ALPHA,a.FUNC_ADD),f(N,a.BLEND_SRC_RGB,a.ONE),f(N,a.BLEND_DST_RGB,a.ZERO),f(N,a.BLEND_SRC_ALPHA,a.ONE),f(N,a.BLEND_DST_ALPHA,a.ZERO),f(N,a.COLOR_CLEAR_VALUE,new Float32Array([0,0,0,0])),f(N,a.COLOR_WRITEMASK,[!0,!0,!0,!0]),f(N,a.CULL_FACE,!1),f(N,a.CULL_FACE_MODE,a.BACK),f(N,a.DEPTH_TEST,!1),f(N,a.DEPTH_CLEAR_VALUE,1),f(N,a.DEPTH_FUNC,a.LESS),f(N,a.DEPTH_RANGE,new Float32Array([0,1])),f(N,a.DEPTH_WRITEMASK,!0),f(N,a.DITHER,!0),f(N,a.CURRENT_PROGRAM,null),f(N,a.FRAMEBUFFER_BINDING,null),f(N,a.RENDERBUFFER_BINDING,null),f(N,a.VERTEX_ARRAY_BINDING,null),f(N,a.ARRAY_BUFFER_BINDING,null),f(N,a.FRONT_FACE,a.CCW),f(N,a.GENERATE_MIPMAP_HINT,a.DONT_CARE),f(N,a.LINE_WIDTH,1),f(N,a.POLYGON_OFFSET_FILL,!1),f(N,a.POLYGON_OFFSET_FACTOR,0),f(N,a.POLYGON_OFFSET_UNITS,0),f(N,a.SAMPLE_ALPHA_TO_COVERAGE,!1),f(N,a.SAMPLE_COVERAGE,!1),f(N,a.SAMPLE_COVERAGE_VALUE,1),f(N,a.SAMPLE_COVERAGE_INVERT,!1),f(N,a.SCISSOR_TEST,!1),f(N,a.SCISSOR_BOX,new Int32Array([0,0,1024,1024])),f(N,a.STENCIL_TEST,!1),f(N,a.STENCIL_CLEAR_VALUE,0),f(N,a.STENCIL_WRITEMASK,4294967295),f(N,a.STENCIL_BACK_WRITEMASK,4294967295),f(N,a.STENCIL_FUNC,a.ALWAYS),f(N,a.STENCIL_REF,0),f(N,a.STENCIL_VALUE_MASK,4294967295),f(N,a.STENCIL_BACK_FUNC,a.ALWAYS),f(N,a.STENCIL_BACK_REF,0),f(N,a.STENCIL_BACK_VALUE_MASK,4294967295),f(N,a.STENCIL_FAIL,a.KEEP),f(N,a.STENCIL_PASS_DEPTH_FAIL,a.KEEP),f(N,a.STENCIL_PASS_DEPTH_PASS,a.KEEP),f(N,a.STENCIL_BACK_FAIL,a.KEEP),f(N,a.STENCIL_BACK_PASS_DEPTH_FAIL,a.KEEP),f(N,a.STENCIL_BACK_PASS_DEPTH_PASS,a.KEEP),f(N,a.VIEWPORT,[0,0,1024,1024]),f(N,a.PACK_ALIGNMENT,4),f(N,a.UNPACK_ALIGNMENT,4),f(N,a.UNPACK_FLIP_Y_WEBGL,!1),f(N,a.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1),f(N,a.UNPACK_COLORSPACE_CONVERSION_WEBGL,a.BROWSER_DEFAULT_WEBGL),f(N,a.TRANSFORM_FEEDBACK_BINDING,null),f(N,a.COPY_READ_BUFFER_BINDING,null),f(N,a.COPY_WRITE_BUFFER_BINDING,null),f(N,a.PIXEL_PACK_BUFFER_BINDING,null),f(N,a.PIXEL_UNPACK_BUFFER_BINDING,null),f(N,a.FRAGMENT_SHADER_DERIVATIVE_HINT,a.DONT_CARE),f(N,a.READ_FRAMEBUFFER_BINDING,null),f(N,a.RASTERIZER_DISCARD,!1),f(N,a.PACK_ROW_LENGTH,0),f(N,a.PACK_SKIP_PIXELS,0),f(N,a.PACK_SKIP_ROWS,0),f(N,a.UNPACK_ROW_LENGTH,0),f(N,a.UNPACK_IMAGE_HEIGHT,0),f(N,a.UNPACK_SKIP_PIXELS,0),f(N,a.UNPACK_SKIP_ROWS,0),f(N,a.UNPACK_SKIP_IMAGES,0),N),be=function(t,r,n){return r?t.enable(n):t.disable(n)},za=function(t,r,n){return t.hint(n,r)},de=function(t,r,n){return t.pixelStorei(n,r)},Za=function(t,r,n){var o;return n===a.FRAMEBUFFER_BINDING?o=W(t)?a.DRAW_FRAMEBUFFER:a.FRAMEBUFFER:o=a.READ_FRAMEBUFFER,t.bindFramebuffer(o,r)},Dt=function(t,r,n){var o,i=(o={},f(o,a.ARRAY_BUFFER_BINDING,a.ARRAY_BUFFER),f(o,a.COPY_READ_BUFFER_BINDING,a.COPY_READ_BUFFER),f(o,a.COPY_WRITE_BUFFER_BINDING,a.COPY_WRITE_BUFFER),f(o,a.PIXEL_PACK_BUFFER_BINDING,a.PIXEL_PACK_BUFFER),f(o,a.PIXEL_UNPACK_BUFFER_BINDING,a.PIXEL_UNPACK_BUFFER),o),s=i[n];t.bindBuffer(s,r)};function en(e){return Array.isArray(e)||ArrayBuffer.isView(e)&&!(e instanceof DataView)}var $a=(m={},f(m,a.BLEND,be),f(m,a.BLEND_COLOR,function(e,t){return e.blendColor.apply(e,J(t))}),f(m,a.BLEND_EQUATION_RGB,"blendEquation"),f(m,a.BLEND_EQUATION_ALPHA,"blendEquation"),f(m,a.BLEND_SRC_RGB,"blendFunc"),f(m,a.BLEND_DST_RGB,"blendFunc"),f(m,a.BLEND_SRC_ALPHA,"blendFunc"),f(m,a.BLEND_DST_ALPHA,"blendFunc"),f(m,a.COLOR_CLEAR_VALUE,function(e,t){return e.clearColor.apply(e,J(t))}),f(m,a.COLOR_WRITEMASK,function(e,t){return e.colorMask.apply(e,J(t))}),f(m,a.CULL_FACE,be),f(m,a.CULL_FACE_MODE,function(e,t){return e.cullFace(t)}),f(m,a.DEPTH_TEST,be),f(m,a.DEPTH_CLEAR_VALUE,function(e,t){return e.clearDepth(t)}),f(m,a.DEPTH_FUNC,function(e,t){return e.depthFunc(t)}),f(m,a.DEPTH_RANGE,function(e,t){return e.depthRange.apply(e,J(t))}),f(m,a.DEPTH_WRITEMASK,function(e,t){return e.depthMask(t)}),f(m,a.DITHER,be),f(m,a.FRAGMENT_SHADER_DERIVATIVE_HINT,za),f(m,a.CURRENT_PROGRAM,function(e,t){return e.useProgram(t)}),f(m,a.RENDERBUFFER_BINDING,function(e,t){return e.bindRenderbuffer(a.RENDERBUFFER,t)}),f(m,a.TRANSFORM_FEEDBACK_BINDING,function(e,t){var r,n;return(r=(n=e).bindTransformFeedback)===null||r===void 0?void 0:r.call(n,a.TRANSFORM_FEEDBACK,t)}),f(m,a.VERTEX_ARRAY_BINDING,function(e,t){return e.bindVertexArray(t)}),f(m,a.FRAMEBUFFER_BINDING,Za),f(m,a.READ_FRAMEBUFFER_BINDING,Za),f(m,a.ARRAY_BUFFER_BINDING,Dt),f(m,a.COPY_READ_BUFFER_BINDING,Dt),f(m,a.COPY_WRITE_BUFFER_BINDING,Dt),f(m,a.PIXEL_PACK_BUFFER_BINDING,Dt),f(m,a.PIXEL_UNPACK_BUFFER_BINDING,Dt),f(m,a.FRONT_FACE,function(e,t){return e.frontFace(t)}),f(m,a.GENERATE_MIPMAP_HINT,za),f(m,a.LINE_WIDTH,function(e,t){return e.lineWidth(t)}),f(m,a.POLYGON_OFFSET_FILL,be),f(m,a.POLYGON_OFFSET_FACTOR,"polygonOffset"),f(m,a.POLYGON_OFFSET_UNITS,"polygonOffset"),f(m,a.RASTERIZER_DISCARD,be),f(m,a.SAMPLE_ALPHA_TO_COVERAGE,be),f(m,a.SAMPLE_COVERAGE,be),f(m,a.SAMPLE_COVERAGE_VALUE,"sampleCoverage"),f(m,a.SAMPLE_COVERAGE_INVERT,"sampleCoverage"),f(m,a.SCISSOR_TEST,be),f(m,a.SCISSOR_BOX,function(e,t){return e.scissor.apply(e,J(t))}),f(m,a.STENCIL_TEST,be),f(m,a.STENCIL_CLEAR_VALUE,function(e,t){return e.clearStencil(t)}),f(m,a.STENCIL_WRITEMASK,function(e,t){return e.stencilMaskSeparate(a.FRONT,t)}),f(m,a.STENCIL_BACK_WRITEMASK,function(e,t){return e.stencilMaskSeparate(a.BACK,t)}),f(m,a.STENCIL_FUNC,"stencilFuncFront"),f(m,a.STENCIL_REF,"stencilFuncFront"),f(m,a.STENCIL_VALUE_MASK,"stencilFuncFront"),f(m,a.STENCIL_BACK_FUNC,"stencilFuncBack"),f(m,a.STENCIL_BACK_REF,"stencilFuncBack"),f(m,a.STENCIL_BACK_VALUE_MASK,"stencilFuncBack"),f(m,a.STENCIL_FAIL,"stencilOpFront"),f(m,a.STENCIL_PASS_DEPTH_FAIL,"stencilOpFront"),f(m,a.STENCIL_PASS_DEPTH_PASS,"stencilOpFront"),f(m,a.STENCIL_BACK_FAIL,"stencilOpBack"),f(m,a.STENCIL_BACK_PASS_DEPTH_FAIL,"stencilOpBack"),f(m,a.STENCIL_BACK_PASS_DEPTH_PASS,"stencilOpBack"),f(m,a.VIEWPORT,function(e,t){return e.viewport.apply(e,J(t))}),f(m,a.PACK_ALIGNMENT,de),f(m,a.UNPACK_ALIGNMENT,de),f(m,a.UNPACK_FLIP_Y_WEBGL,de),f(m,a.UNPACK_PREMULTIPLY_ALPHA_WEBGL,de),f(m,a.UNPACK_COLORSPACE_CONVERSION_WEBGL,de),f(m,a.PACK_ROW_LENGTH,de),f(m,a.PACK_SKIP_PIXELS,de),f(m,a.PACK_SKIP_ROWS,de),f(m,a.UNPACK_ROW_LENGTH,de),f(m,a.UNPACK_IMAGE_HEIGHT,de),f(m,a.UNPACK_SKIP_PIXELS,de),f(m,a.UNPACK_SKIP_ROWS,de),f(m,a.UNPACK_SKIP_IMAGES,de),f(m,"framebuffer",function(t,r){var n=r&&"handle"in r?r.handle:r;return t.bindFramebuffer(a.FRAMEBUFFER,n)}),f(m,"blend",function(t,r){return r?t.enable(a.BLEND):t.disable(a.BLEND)}),f(m,"blendColor",function(t,r){return t.blendColor.apply(t,J(r))}),f(m,"blendEquation",function(t,r){var n=typeof r=="number"?[r,r]:r;t.blendEquationSeparate.apply(t,J(n))}),f(m,"blendFunc",function(t,r){var n=r?.length===2?[].concat(J(r),J(r)):r;t.blendFuncSeparate.apply(t,J(n))}),f(m,"clearColor",function(t,r){return t.clearColor.apply(t,J(r))}),f(m,"clearDepth",function(t,r){return t.clearDepth(r)}),f(m,"clearStencil",function(t,r){return t.clearStencil(r)}),f(m,"colorMask",function(t,r){return t.colorMask.apply(t,J(r))}),f(m,"cull",function(t,r){return r?t.enable(a.CULL_FACE):t.disable(a.CULL_FACE)}),f(m,"cullFace",function(t,r){return t.cullFace(r)}),f(m,"depthTest",function(t,r){return r?t.enable(a.DEPTH_TEST):t.disable(a.DEPTH_TEST)}),f(m,"depthFunc",function(t,r){return t.depthFunc(r)}),f(m,"depthMask",function(t,r){return t.depthMask(r)}),f(m,"depthRange",function(t,r){return t.depthRange.apply(t,J(r))}),f(m,"dither",function(t,r){return r?t.enable(a.DITHER):t.disable(a.DITHER)}),f(m,"derivativeHint",function(t,r){t.hint(a.FRAGMENT_SHADER_DERIVATIVE_HINT,r)}),f(m,"frontFace",function(t,r){return t.frontFace(r)}),f(m,"mipmapHint",function(t,r){return t.hint(a.GENERATE_MIPMAP_HINT,r)}),f(m,"lineWidth",function(t,r){return t.lineWidth(r)}),f(m,"polygonOffsetFill",function(t,r){return r?t.enable(a.POLYGON_OFFSET_FILL):t.disable(a.POLYGON_OFFSET_FILL)}),f(m,"polygonOffset",function(t,r){return t.polygonOffset.apply(t,J(r))}),f(m,"sampleCoverage",function(t,r){return t.sampleCoverage.apply(t,J(r))}),f(m,"scissorTest",function(t,r){return r?t.enable(a.SCISSOR_TEST):t.disable(a.SCISSOR_TEST)}),f(m,"scissor",function(t,r){return t.scissor.apply(t,J(r))}),f(m,"stencilTest",function(t,r){return r?t.enable(a.STENCIL_TEST):t.disable(a.STENCIL_TEST)}),f(m,"stencilMask",function(t,r){r=en(r)?r:[r,r];var n=r,o=H(n,2),i=o[0],s=o[1];t.stencilMaskSeparate(a.FRONT,i),t.stencilMaskSeparate(a.BACK,s)}),f(m,"stencilFunc",function(t,r){r=en(r)&&r.length===3?[].concat(J(r),J(r)):r;var n=r,o=H(n,6),i=o[0],s=o[1],u=o[2],_=o[3],c=o[4],E=o[5];t.stencilFuncSeparate(a.FRONT,i,s,u),t.stencilFuncSeparate(a.BACK,_,c,E)}),f(m,"stencilOp",function(t,r){r=en(r)&&r.length===3?[].concat(J(r),J(r)):r;var n=r,o=H(n,6),i=o[0],s=o[1],u=o[2],_=o[3],c=o[4],E=o[5];t.stencilOpSeparate(a.FRONT,i,s,u),t.stencilOpSeparate(a.BACK,_,c,E)}),f(m,"viewport",function(t,r){return t.viewport.apply(t,J(r))}),m);function te(e,t,r){return t[e]!==void 0?t[e]:r[e]}var Qa={blendEquation:function(t,r,n){return t.blendEquationSeparate(te(a.BLEND_EQUATION_RGB,r,n),te(a.BLEND_EQUATION_ALPHA,r,n))},blendFunc:function(t,r,n){return t.blendFuncSeparate(te(a.BLEND_SRC_RGB,r,n),te(a.BLEND_DST_RGB,r,n),te(a.BLEND_SRC_ALPHA,r,n),te(a.BLEND_DST_ALPHA,r,n))},polygonOffset:function(t,r,n){return t.polygonOffset(te(a.POLYGON_OFFSET_FACTOR,r,n),te(a.POLYGON_OFFSET_UNITS,r,n))},sampleCoverage:function(t,r,n){return t.sampleCoverage(te(a.SAMPLE_COVERAGE_VALUE,r,n),te(a.SAMPLE_COVERAGE_INVERT,r,n))},stencilFuncFront:function(t,r,n){return t.stencilFuncSeparate(a.FRONT,te(a.STENCIL_FUNC,r,n),te(a.STENCIL_REF,r,n),te(a.STENCIL_VALUE_MASK,r,n))},stencilFuncBack:function(t,r,n){return t.stencilFuncSeparate(a.BACK,te(a.STENCIL_BACK_FUNC,r,n),te(a.STENCIL_BACK_REF,r,n),te(a.STENCIL_BACK_VALUE_MASK,r,n))},stencilOpFront:function(t,r,n){return t.stencilOpSeparate(a.FRONT,te(a.STENCIL_FAIL,r,n),te(a.STENCIL_PASS_DEPTH_FAIL,r,n),te(a.STENCIL_PASS_DEPTH_PASS,r,n))},stencilOpBack:function(t,r,n){return t.stencilOpSeparate(a.BACK,te(a.STENCIL_BACK_FAIL,r,n),te(a.STENCIL_BACK_PASS_DEPTH_FAIL,r,n),te(a.STENCIL_BACK_PASS_DEPTH_PASS,r,n))}},tn={enable:function(t,r){return t(f({},r,!0))},disable:function(t,r){return t(f({},r,!1))},pixelStorei:function(t,r,n){return t(f({},r,n))},hint:function(t,r,n){return t(f({},r,n))},useProgram:function(t,r){return t(f({},a.CURRENT_PROGRAM,r))},bindRenderbuffer:function(t,r,n){return t(f({},a.RENDERBUFFER_BINDING,n))},bindTransformFeedback:function(t,r,n){return t(f({},a.TRANSFORM_FEEDBACK_BINDING,n))},bindVertexArray:function(t,r){return t(f({},a.VERTEX_ARRAY_BINDING,r))},bindFramebuffer:function(t,r,n){var o;switch(r){case a.FRAMEBUFFER:return t((o={},f(o,a.DRAW_FRAMEBUFFER_BINDING,n),f(o,a.READ_FRAMEBUFFER_BINDING,n),o));case a.DRAW_FRAMEBUFFER:return t(f({},a.DRAW_FRAMEBUFFER_BINDING,n));case a.READ_FRAMEBUFFER:return t(f({},a.READ_FRAMEBUFFER_BINDING,n));default:return null}},bindBuffer:function(t,r,n){var o,i=(o={},f(o,a.ARRAY_BUFFER,[a.ARRAY_BUFFER_BINDING]),f(o,a.COPY_READ_BUFFER,[a.COPY_READ_BUFFER_BINDING]),f(o,a.COPY_WRITE_BUFFER,[a.COPY_WRITE_BUFFER_BINDING]),f(o,a.PIXEL_PACK_BUFFER,[a.PIXEL_PACK_BUFFER_BINDING]),f(o,a.PIXEL_UNPACK_BUFFER,[a.PIXEL_UNPACK_BUFFER_BINDING]),o)[r];return i?t(f({},i,n)):{valueChanged:!0}},blendColor:function(t,r,n,o,i){return t(f({},a.BLEND_COLOR,new Float32Array([r,n,o,i])))},blendEquation:function(t,r){var n;return t((n={},f(n,a.BLEND_EQUATION_RGB,r),f(n,a.BLEND_EQUATION_ALPHA,r),n))},blendEquationSeparate:function(t,r,n){var o;return t((o={},f(o,a.BLEND_EQUATION_RGB,r),f(o,a.BLEND_EQUATION_ALPHA,n),o))},blendFunc:function(t,r,n){var o;return t((o={},f(o,a.BLEND_SRC_RGB,r),f(o,a.BLEND_DST_RGB,n),f(o,a.BLEND_SRC_ALPHA,r),f(o,a.BLEND_DST_ALPHA,n),o))},blendFuncSeparate:function(t,r,n,o,i){var s;return t((s={},f(s,a.BLEND_SRC_RGB,r),f(s,a.BLEND_DST_RGB,n),f(s,a.BLEND_SRC_ALPHA,o),f(s,a.BLEND_DST_ALPHA,i),s))},clearColor:function(t,r,n,o,i){return t(f({},a.COLOR_CLEAR_VALUE,new Float32Array([r,n,o,i])))},clearDepth:function(t,r){return t(f({},a.DEPTH_CLEAR_VALUE,r))},clearStencil:function(t,r){return t(f({},a.STENCIL_CLEAR_VALUE,r))},colorMask:function(t,r,n,o,i){return t(f({},a.COLOR_WRITEMASK,[r,n,o,i]))},cullFace:function(t,r){return t(f({},a.CULL_FACE_MODE,r))},depthFunc:function(t,r){return t(f({},a.DEPTH_FUNC,r))},depthRange:function(t,r,n){return t(f({},a.DEPTH_RANGE,new Float32Array([r,n])))},depthMask:function(t,r){return t(f({},a.DEPTH_WRITEMASK,r))},frontFace:function(t,r){return t(f({},a.FRONT_FACE,r))},lineWidth:function(t,r){return t(f({},a.LINE_WIDTH,r))},polygonOffset:function(t,r,n){var o;return t((o={},f(o,a.POLYGON_OFFSET_FACTOR,r),f(o,a.POLYGON_OFFSET_UNITS,n),o))},sampleCoverage:function(t,r,n){var o;return t((o={},f(o,a.SAMPLE_COVERAGE_VALUE,r),f(o,a.SAMPLE_COVERAGE_INVERT,n),o))},scissor:function(t,r,n,o,i){return t(f({},a.SCISSOR_BOX,new Int32Array([r,n,o,i])))},stencilMask:function(t,r){var n;return t((n={},f(n,a.STENCIL_WRITEMASK,r),f(n,a.STENCIL_BACK_WRITEMASK,r),n))},stencilMaskSeparate:function(t,r,n){return t(f({},r===a.FRONT?a.STENCIL_WRITEMASK:a.STENCIL_BACK_WRITEMASK,n))},stencilFunc:function(t,r,n,o){var i;return t((i={},f(i,a.STENCIL_FUNC,r),f(i,a.STENCIL_REF,n),f(i,a.STENCIL_VALUE_MASK,o),f(i,a.STENCIL_BACK_FUNC,r),f(i,a.STENCIL_BACK_REF,n),f(i,a.STENCIL_BACK_VALUE_MASK,o),i))},stencilFuncSeparate:function(t,r,n,o,i){var s;return t((s={},f(s,r===a.FRONT?a.STENCIL_FUNC:a.STENCIL_BACK_FUNC,n),f(s,r===a.FRONT?a.STENCIL_REF:a.STENCIL_BACK_REF,o),f(s,r===a.FRONT?a.STENCIL_VALUE_MASK:a.STENCIL_BACK_VALUE_MASK,i),s))},stencilOp:function(t,r,n,o){var i;return t((i={},f(i,a.STENCIL_FAIL,r),f(i,a.STENCIL_PASS_DEPTH_FAIL,n),f(i,a.STENCIL_PASS_DEPTH_PASS,o),f(i,a.STENCIL_BACK_FAIL,r),f(i,a.STENCIL_BACK_PASS_DEPTH_FAIL,n),f(i,a.STENCIL_BACK_PASS_DEPTH_PASS,o),i))},stencilOpSeparate:function(t,r,n,o,i){var s;return t((s={},f(s,r===a.FRONT?a.STENCIL_FAIL:a.STENCIL_BACK_FAIL,n),f(s,r===a.FRONT?a.STENCIL_PASS_DEPTH_FAIL:a.STENCIL_BACK_PASS_DEPTH_FAIL,o),f(s,r===a.FRONT?a.STENCIL_PASS_DEPTH_PASS:a.STENCIL_BACK_PASS_DEPTH_PASS,i),s))},viewport:function(t,r,n,o,i){return t(f({},a.VIEWPORT,[r,n,o,i]))}},Ne=function(t,r){return t.isEnabled(r)},rn=(me={},f(me,a.BLEND,Ne),f(me,a.CULL_FACE,Ne),f(me,a.DEPTH_TEST,Ne),f(me,a.DITHER,Ne),f(me,a.POLYGON_OFFSET_FILL,Ne),f(me,a.SAMPLE_ALPHA_TO_COVERAGE,Ne),f(me,a.SAMPLE_COVERAGE,Ne),f(me,a.SCISSOR_TEST,Ne),f(me,a.STENCIL_TEST,Ne),f(me,a.RASTERIZER_DISCARD,Ne),me),qa=new Set([a.ACTIVE_TEXTURE,a.TRANSFORM_FEEDBACK_ACTIVE,a.TRANSFORM_FEEDBACK_PAUSED,a.TRANSFORM_FEEDBACK_BUFFER_BINDING,a.UNIFORM_BUFFER_BINDING,a.ELEMENT_ARRAY_BUFFER_BINDING,a.IMPLEMENTATION_COLOR_READ_FORMAT,a.IMPLEMENTATION_COLOR_READ_TYPE,a.READ_BUFFER,a.DRAW_BUFFER0,a.DRAW_BUFFER1,a.DRAW_BUFFER2,a.DRAW_BUFFER3,a.DRAW_BUFFER4,a.DRAW_BUFFER5,a.DRAW_BUFFER6,a.DRAW_BUFFER7,a.DRAW_BUFFER8,a.DRAW_BUFFER9,a.DRAW_BUFFER10,a.DRAW_BUFFER11,a.DRAW_BUFFER12,a.DRAW_BUFFER13,a.DRAW_BUFFER14,a.DRAW_BUFFER15,a.SAMPLER_BINDING,a.TEXTURE_BINDING_2D,a.TEXTURE_BINDING_2D_ARRAY,a.TEXTURE_BINDING_3D,a.TEXTURE_BINDING_CUBE_MAP]);function du(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Tu(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
19
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function Tu(e,t){if(e){if(typeof e=="string")return Ja(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Ja(e,t)}}function Ja(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Me(e,t){var r=ue.attach(e),n=r.gl;if(!Au(t)){var o={};for(var i in t){var s=Number(i),u=$a[i];u&&(typeof u=="string"?o[u]=!0:u(n,t[i],s))}var _=n.state&&n.state.cache;if(_)for(var c in o){var E=Qa[c];E(n,t,_)}}}function lr(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ut,r=ue.attach(e),n=r.gl;if(typeof t=="number"){var o=t,i=rn[o];return i?i(n,o):n.getParameter(o)}var s=Array.isArray(t)?t:Object.keys(t),u={},_=du(s),c;try{for(_.s();!(c=_.n()).done;){var E=c.value,l=rn[E];u[E]=l?l(n,Number(E)):n.getParameter(Number(E))}}catch(R){_.e(R)}finally{_.f()}return u}function ei(e){Me(e,Ut)}function Au(e){for(var t in e)return!1;return!0}function ti(e,t){if(e===t)return!0;var r=Array.isArray(e)||ArrayBuffer.isView(e),n=Array.isArray(t)||ArrayBuffer.isView(t);if(r&&n&&e.length===t.length){for(var o=0;o<e.length;++o)if(e[o]!==t[o])return!1;return!0}return!1}var pu=function(){function e(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=n.copyState,i=o===void 0?!1:o,s=n.log,u=s===void 0?function(){}:s;P(this,e),this.gl=void 0,this.program=null,this.stateStack=[],this.enable=!0,this.cache=void 0,this.log=void 0,this.gl=r,this.cache=i?lr(r):Object.assign({},Ut),this.log=u,this._updateCache=this._updateCache.bind(this),Object.seal(this)}var t=e.prototype;return t.push=function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.stateStack.push({})},t.pop=function(){F(this.stateStack.length>0);var n=this.stateStack[this.stateStack.length-1];Me(this.gl,n),this.stateStack.pop()},t._updateCache=function(n){var o=!1,i,s=this.stateStack.length>0?this.stateStack[this.stateStack.length-1]:null;for(var u in n){F(u!==void 0);var _=n[u],c=this.cache[u];ti(_,c)||(o=!0,i=c,s&&!(u in s)&&(s[u]=c),this.cache[u]=_)}return{valueChanged:o,oldValue:i}},y(e)}();function ze(e){return e.state}function xt(e,t){var r=t.enable,n=r===void 0?!0:r,o=t.copyState;if(F(o!==void 0),!e.state){e.state=new pu(e,{copyState:o}),hu(e);for(var i in tn){var s=tn[i];mu(e,i,s)}ri(e,"getParameter"),ri(e,"isEnabled")}var u=ze(e);return u.enable=n,e}function De(e){var t=ze(e);t||(xt(e,{copyState:!1}),t=ze(e)),t.push()}function Ce(e){var t=ze(e);F(t),t.pop()}function ri(e,t){var r=e[t].bind(e);e[t]=function(o){if(o===void 0||qa.has(o))return r(o);var i=ze(e);return o in i.cache||(i.cache[o]=r(o)),i.enable?i.cache[o]:r(o)},Object.defineProperty(e[t],"name",{value:"".concat(t,"-from-cache"),configurable:!1})}function mu(e,t,r){if(e[t]){var n=e[t].bind(e);e[t]=function(){for(var i=ze(e),s=arguments.length,u=new Array(s),_=0;_<s;_++)u[_]=arguments[_];var c=r.apply(void 0,[i._updateCache].concat(u)),E=c.valueChanged,l=c.oldValue;return E&&n.apply(void 0,u),l},Object.defineProperty(e[t],"name",{value:"".concat(t,"-to-cache"),configurable:!1})}}function hu(e){var t=e.useProgram.bind(e);e.useProgram=function(n){var o=ze(e);o.program!==n&&(t(n),o.program=n)}}function ni(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function lt(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ni(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ni(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var Su={webgl2:!0,webgl1:!0,powerPreference:"high-performance",onContextLost:function(){return console.error("WebGL context lost")},onContextRestored:function(){return console.info("WebGL context restored")}};function ai(e,t){t=lt(lt({},Su),t);var r=null,n=function(E){return r=E.statusMessage||r};e.addEventListener("webglcontextcreationerror",n,!1);var o=null;if(t.type==="webgl2"&&(t=lt(lt({},t),{},{webgl1:!1})),t.type==="webgl1"&&(t=lt(lt({},t),{},{webgl2:!1})),!o&&t.webgl2&&(o=e.getContext("webgl2",t)),!o&&t.webgl1&&(o=e.getContext("webgl",t)),e.removeEventListener("webglcontextcreationerror",n,!1),!o)throw new Error("Failed to create ".concat(t.webgl2&&!t.webgl1?"WebGL2":"WebGL"," context: ").concat(r||"Unknown error"));if(t.onContextLost){var i=t,s=i.onContextLost;e.addEventListener("webglcontextlost",function(c){return s(c)},!1)}if(t.onContextRestored){var u=t,_=u.onContextRestored;e.addEventListener("webglcontextrestored",function(c){return _(c)},!1)}return o}function ii(e){var t=e.getParameter(a.VENDOR),r=e.getParameter(a.RENDERER),n=e.getExtension("WEBGL_debug_renderer_info"),o=e.getParameter(n?n.UNMASKED_VENDOR_WEBGL:a.VENDOR),i=e.getParameter(n?n.UNMASKED_RENDERER_WEBGL:a.RENDERER),s=o||t,u=i||r,_=gu(s,u);return{type:W(e)?"webgl2":"webgl",gpu:_,vendor:o||t,renderer:i||r,version:e.getParameter(a.VERSION),shadingLanguages:["glsl"],shadingLanguageVersions:{glsl:e.getParameter(a.SHADING_LANGUAGE_VERSION)}}}function gu(e,t){return/NVIDIA/i.exec(e)||/NVIDIA/i.exec(t)?"nvidia":/INTEL/i.exec(e)||/INTEL/i.exec(t)?"intel":/Apple/i.exec(e)||/Apple/i.exec(t)?"apple":/AMD/i.exec(e)||/AMD/i.exec(t)||/ATI/i.exec(e)||/ATI/i.exec(t)?"amd":/SwiftShader/i.exec(e)||/SwiftShader/i.exec(t)?"software":"unknown"}function oi(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=typeof window<"u"?window.navigator||{}:{},r=e.userAgent||t.userAgent||"",n=r.indexOf("MSIE ")!==-1,o=r.indexOf("Trident/")!==-1;return n||o}function Rr(e){switch(e){case"uint8":return a.UNSIGNED_BYTE;case"sint8":return a.BYTE;case"unorm8":return a.UNSIGNED_BYTE;case"snorm8":return a.BYTE;case"uint16":return a.UNSIGNED_SHORT;case"sint16":return a.SHORT;case"unorm16":return a.UNSIGNED_SHORT;case"snorm16":return a.SHORT;case"uint32":return a.UNSIGNED_INT;case"sint32":return a.INT;case"float16":return a.HALF_FLOAT;case"float32":return a.FLOAT}throw new Error(String(e))}var ce,Ie,fe="texture-compression-bc",Y="texture-compression-astc",Pe="texture-compression-etc2",Ou="texture-compression-etc1-webgl",dr="texture-compression-pvrtc-webgl",nn="texture-compression-atc-webgl",wt="WEBGL_compressed_texture_s3tc",Xt="WEBGL_compressed_texture_s3tc_srgb",Rt="EXT_texture_compression_rgtc",Ht="EXT_texture_compression_bptc",vu="WEBGL_compressed_texture_etc",bu="WEBGL_compressed_texture_astc",Nu="WEBGL_compressed_texture_etc1",Cu="WEBGL_compressed_texture_pvrtc",Iu="WEBGL_compressed_texture_atc",si="EXT_sRGB",Ue="EXT_texture_norm16",Pu="WEBGL_color_buffer_float",yu="EXT_color_buffer_float",Oe=function(t,r){return t.getExtension(r)},Ze=function(t,r){return r.every(function(n){return t.getExtension(n)})},an={"texture-blend-float-webgl1":function(t){return W(t)?!0:Oe(t,"EXT_float_blend")},"texture-formats-srgb-webgl1":function(t){return W(t)?!0:Oe(t,si)},"texture-formats-depth-webgl1":function(t){return W(t)?!0:Oe(t,"WEBGL_depth_texture")},"texture-formats-float32-webgl1":function(t){return W(t)?!0:Oe(t,"OES_texture_float")},"texture-formats-float16-webgl1":function(t){return W(t)?!0:Oe(t,"OES_texture_half_float")},"texture-formats-norm16-webgl":function(t){return W(t)?Oe(t,Ue):!1},"texture-filter-linear-float32-webgl":function(t){return Oe(t,"OES_texture_float_linear")},"texture-filter-linear-float16-webgl":function(t){return Oe(t,"OES_texture_half_float_linear")},"texture-filter-anisotropic-webgl":function(t){return Oe(t,"EXT_texture_filter_anisotropic")},"texture-renderable-float32-webgl":function(t){return Oe(t,"EXT_color_buffer_float")},"texture-renderable-float16-webgl":function(t){return Oe(t,"EXT_color_buffer_half_float")},"texture-compression-bc":function(t){return Ze(t,[wt,Xt,Rt,Ht])},"texture-compression-bc5-webgl":function(t){return Ze(t,[Rt])},"texture-compression-etc2":function(t){return Ze(t,[vu])},"texture-compression-astc":function(t){return Ze(t,[bu])},"texture-compression-etc1-webgl":function(t){return Ze(t,[Nu])},"texture-compression-pvrtc-webgl":function(t){return Ze(t,[Cu])},"texture-compression-atc-webgl":function(t){return Ze(t,[Iu])}};function Fu(e,t){var r;return((r=an[t])===null||r===void 0?void 0:r.call(an,e))||!1}function ui(e){var t=Object.keys(an);return t.filter(function(r){return Fu(e,r)})}var $e={"rgb8unorm-unsized":{gl:a.RGB,gl1:a.RGB,b:4,c:2,bpp:4,dataFormat:a.RGB,types:[a.UNSIGNED_BYTE,a.UNSIGNED_SHORT_5_6_5]},"rgba8unorm-unsized":{gl:a.RGBA,gl1:a.RGBA,b:4,c:2,bpp:4,dataFormat:a.RGBA,types:[a.UNSIGNED_BYTE,a.UNSIGNED_SHORT_4_4_4_4,a.UNSIGNED_SHORT_5_5_5_1]},r8unorm:{gl:a.R8,b:1,c:1,renderbuffer:!0},r8snorm:{gl:a.R8_SNORM,b:1,c:1},r8uint:{gl:a.R8UI,b:1,c:1,renderbuffer:!0},r8sint:{gl:a.R8I,b:1,c:1,renderbuffer:!0},rg8unorm:{gl:a.RG8,b:2,c:2,renderbuffer:!0},rg8snorm:{gl:a.RG8_SNORM,b:2,c:2},rg8uint:{gl:a.RG8UI,b:2,c:2,renderbuffer:!0},rg8sint:{gl:a.RG8I,b:2,c:2,renderbuffer:!0},r16uint:{gl:a.R16UI,b:2,c:1,renderbuffer:!0},r16sint:{gl:a.R16I,b:2,c:1,renderbuffer:!0},r16float:{gl:a.R16F,b:2,c:1,render:"texture-renderable-float16-webgl",filter:"texture-filter-linear-float16-webgl",renderbuffer:!0},"r16unorm-webgl":{gl:a.R16_EXT,b:2,c:1,f:"texture-formats-norm16-webgl",renderbuffer:!0,x:Ue},"r16snorm-webgl":{gl:a.R16_SNORM_EXT,b:2,c:1,f:"texture-formats-norm16-webgl",x:Ue},"rgba4unorm-webgl":{gl:a.RGBA4,b:2,c:4,wgpu:!1,renderbuffer:!0},"rgb565unorm-webgl":{gl:a.RGB565,b:2,c:4,wgpu:!1,renderbuffer:!0},"rgb5a1unorm-webgl":{gl:a.RGB5_A1,b:2,c:4,wgpu:!1,renderbuffer:!0},"rgb8unorm-webgl":{gl:a.RGB8,b:3,c:3,wgpu:!1},"rgb8snorm-webgl":{gl:a.RGB8_SNORM,b:3,c:3,wgpu:!1},rgba8unorm:{gl:a.RGBA8,gl1:a.RGBA,b:4,c:2,bpp:4},"rgba8unorm-srgb":{gl:a.SRGB8_ALPHA8,gl1:a.SRGB_ALPHA_EXT,b:4,c:4,gl1ext:si,bpp:4},rgba8snorm:{gl:a.RGBA8_SNORM,b:4,c:4},rgba8uint:{gl:a.RGBA8UI,b:4,c:4,bpp:4},rgba8sint:{gl:a.RGBA8I,b:4,c:4,bpp:4},bgra8unorm:{b:4,c:4},"bgra8unorm-srgb":{b:4,c:4},rg16uint:{gl:a.RG16UI,b:4,c:1,bpp:4},rg16sint:{gl:a.RG16I,b:4,c:2,bpp:4},rg16float:{gl:a.RG16F,bpp:4,b:4,c:2,render:"texture-renderable-float16-webgl",filter:"texture-filter-linear-float16-webgl",renderbuffer:!0},"rg16unorm-webgl":{gl:a.RG16_EXT,b:2,c:2,f:"texture-formats-norm16-webgl",x:Ue},"rg16snorm-webgl":{gl:a.RG16_SNORM_EXT,b:2,c:2,f:"texture-formats-norm16-webgl",x:Ue},r32uint:{gl:a.R32UI,b:4,c:1,bpp:4,renderbuffer:!0},r32sint:{gl:a.R32I,b:4,c:1,bpp:4,renderbuffer:!0},r32float:{gl:a.R32F,bpp:4,b:4,c:1,render:"texture-renderable-float32-webgl",filter:"texture-filter-linear-float32-webgl"},rgb9e5ufloat:{gl:a.RGB9_E5,b:4,c:3,p:1,render:"texture-renderable-float16-webgl",filter:"texture-filter-linear-float16-webgl"},rg11b10ufloat:{gl:a.R11F_G11F_B10F,b:4,c:3,p:1,render:"texture-renderable-float32-webgl",renderbuffer:!0},rgb10a2unorm:{gl:a.RGB10_A2,b:4,c:4,p:1,renderbuffer:!0},"rgb10a2unorm-webgl":{b:4,c:4,gl:a.RGB10_A2UI,p:1,wgpu:!1,bpp:4,renderbuffer:!0},"rgb16unorm-webgl":{gl:a.RGB16_EXT,b:2,c:3,f:"texture-formats-norm16-webgl",x:Ue},"rgb16snorm-webgl":{gl:a.RGB16_SNORM_EXT,b:2,c:3,f:"texture-formats-norm16-webgl",x:Ue},rg32uint:{gl:a.RG32UI,b:8,c:2,renderbuffer:!0},rg32sint:{gl:a.RG32I,b:8,c:2,renderbuffer:!0},rg32float:{gl:a.RG32F,b:8,c:2,render:"texture-renderable-float32-webgl",filter:"texture-filter-linear-float32-webgl",renderbuffer:!0},rgba16uint:{gl:a.RGBA16UI,b:8,c:4,renderbuffer:!0},rgba16sint:{gl:a.RGBA16I,b:8,c:4,renderbuffer:!0},rgba16float:{gl:a.RGBA16F,gl1:a.RGBA,b:8,c:4,render:"texture-renderable-float16-webgl",filter:"texture-filter-linear-float16-webgl"},"rgba16unorm-webgl":{gl:a.RGBA16_EXT,b:2,c:4,f:"texture-formats-norm16-webgl",renderbuffer:!0,x:Ue},"rgba16snorm-webgl":{gl:a.RGBA16_SNORM_EXT,b:2,c:4,f:"texture-formats-norm16-webgl",x:Ue},"rgb32float-webgl":{gl:a.RGB32F,gl1:a.RGB,render:"texture-renderable-float32-webgl",filter:"texture-filter-linear-float32-webgl",gl2ext:yu,gl1ext:Pu,dataFormat:a.RGB,types:[a.FLOAT]},rgba32uint:{gl:a.RGBA32UI,b:16,c:4,renderbuffer:!0},rgba32sint:{gl:a.RGBA32I,b:16,c:4,renderbuffer:!0},rgba32float:{gl:a.RGBA32F,b:16,c:4,render:"texture-renderable-float32-webgl",filter:"texture-filter-linear-float32-webgl",renderbuffer:!0},stencil8:{gl:a.STENCIL_INDEX8,gl1:a.STENCIL_INDEX8,b:1,c:1,attachment:a.STENCIL_ATTACHMENT,renderbuffer:!0},depth16unorm:{gl:a.DEPTH_COMPONENT16,gl1:a.DEPTH_COMPONENT16,b:2,c:1,attachment:a.DEPTH_ATTACHMENT,renderbuffer:!0},depth24plus:{gl:a.DEPTH_COMPONENT24,b:3,c:1,attachment:a.DEPTH_ATTACHMENT},depth32float:{gl:a.DEPTH_COMPONENT32F,b:4,c:1,attachment:a.DEPTH_ATTACHMENT,renderbuffer:!0},"depth24plus-stencil8":{gl:a.DEPTH_STENCIL,gl1:a.DEPTH_STENCIL,b:4,c:2,p:1,attachment:a.DEPTH_STENCIL_ATTACHMENT,renderbuffer:!0,depthTexture:!0},"depth24unorm-stencil8":{gl:a.DEPTH24_STENCIL8,b:4,c:2,p:1,attachment:a.DEPTH_STENCIL_ATTACHMENT,renderbuffer:!0},"depth32float-stencil8":{gl:a.DEPTH32F_STENCIL8,b:5,c:2,p:1,attachment:a.DEPTH_STENCIL_ATTACHMENT,renderbuffer:!0},"bc1-rgb-unorm-webgl":{gl:a.COMPRESSED_RGB_S3TC_DXT1_EXT,x:wt,f:fe},"bc1-rgb-unorm-srgb-webgl":{gl:a.COMPRESSED_SRGB_S3TC_DXT1_EXT,x:Xt,f:fe},"bc1-rgba-unorm":{gl:a.COMPRESSED_RGBA_S3TC_DXT1_EXT,x:wt,f:fe},"bc1-rgba-unorm-srgb":{gl:a.COMPRESSED_SRGB_S3TC_DXT1_EXT,x:Xt,f:fe},"bc2-rgba-unorm":{gl:a.COMPRESSED_RGBA_S3TC_DXT3_EXT,x:wt,f:fe},"bc2-rgba-unorm-srgb":{gl:a.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,x:Xt,f:fe},"bc3-rgba-unorm":{gl:a.COMPRESSED_RGBA_S3TC_DXT5_EXT,x:wt,f:fe},"bc3-rgba-unorm-srgb":{gl:a.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,x:Xt,f:fe},"bc4-r-unorm":{gl:a.COMPRESSED_RED_RGTC1_EXT,x:Rt,f:fe},"bc4-r-snorm":{gl:a.COMPRESSED_SIGNED_RED_RGTC1_EXT,x:Rt,f:fe},"bc5-rg-unorm":{gl:a.COMPRESSED_RED_GREEN_RGTC2_EXT,x:Rt,f:fe},"bc5-rg-snorm":{gl:a.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,x:Rt,f:fe},"bc6h-rgb-ufloat":{gl:a.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT,x:Ht,f:fe},"bc6h-rgb-float":{gl:a.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT,x:Ht,f:fe},"bc7-rgba-unorm":{gl:a.COMPRESSED_RGBA_BPTC_UNORM_EXT,x:Ht,f:fe},"bc7-rgba-unorm-srgb":{gl:a.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT,x:Ht,f:fe},"etc2-rgb8unorm":{gl:a.COMPRESSED_RGB8_ETC2,f:Pe},"etc2-rgb8unorm-srgb":{gl:a.COMPRESSED_SRGB8_ETC2,f:Pe},"etc2-rgb8a1unorm":{gl:a.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,f:Pe},"etc2-rgb8a1unorm-srgb":{gl:a.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,f:Pe},"etc2-rgba8unorm":{gl:a.COMPRESSED_RGBA8_ETC2_EAC,f:Pe},"etc2-rgba8unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,f:Pe},"eac-r11unorm":{gl:a.COMPRESSED_R11_EAC,f:Pe},"eac-r11snorm":{gl:a.COMPRESSED_SIGNED_R11_EAC,f:Pe},"eac-rg11unorm":{gl:a.COMPRESSED_RG11_EAC,f:Pe},"eac-rg11snorm":{gl:a.COMPRESSED_SIGNED_RG11_EAC,f:Pe},"astc-4x4-unorm":{gl:a.COMPRESSED_RGBA_ASTC_4x4_KHR,f:Y},"astc-4x4-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,f:Y},"astc-5x4-unorm":{gl:a.COMPRESSED_RGBA_ASTC_5x4_KHR,f:Y},"astc-5x4-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR,f:Y},"astc-5x5-unorm":{gl:a.COMPRESSED_RGBA_ASTC_5x5_KHR,f:Y},"astc-5x5-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,f:Y},"astc-6x5-unorm":{gl:a.COMPRESSED_RGBA_ASTC_6x5_KHR,f:Y},"astc-6x5-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,f:Y},"astc-6x6-unorm":{gl:a.COMPRESSED_RGBA_ASTC_6x6_KHR,f:Y},"astc-6x6-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,f:Y},"astc-8x5-unorm":{gl:a.COMPRESSED_RGBA_ASTC_8x5_KHR,f:Y},"astc-8x5-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,f:Y},"astc-8x6-unorm":{gl:a.COMPRESSED_RGBA_ASTC_8x6_KHR,f:Y},"astc-8x6-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,f:Y},"astc-8x8-unorm":{gl:a.COMPRESSED_RGBA_ASTC_8x8_KHR,f:Y},"astc-8x8-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,f:Y},"astc-10x5-unorm":{gl:a.COMPRESSED_RGBA_ASTC_10x10_KHR,f:Y},"astc-10x5-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,f:Y},"astc-10x6-unorm":{gl:a.COMPRESSED_RGBA_ASTC_10x6_KHR,f:Y},"astc-10x6-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,f:Y},"astc-10x8-unorm":{gl:a.COMPRESSED_RGBA_ASTC_10x8_KHR,f:Y},"astc-10x8-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,f:Y},"astc-10x10-unorm":{gl:a.COMPRESSED_RGBA_ASTC_10x10_KHR,f:Y},"astc-10x10-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,f:Y},"astc-12x10-unorm":{gl:a.COMPRESSED_RGBA_ASTC_12x10_KHR,f:Y},"astc-12x10-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,f:Y},"astc-12x12-unorm":{gl:a.COMPRESSED_RGBA_ASTC_12x12_KHR,f:Y},"astc-12x12-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,f:Y},"pvrtc-rgb4unorm-webgl":{gl:a.COMPRESSED_RGB_PVRTC_4BPPV1_IMG,f:dr},"pvrtc-rgba4unorm-webgl":{gl:a.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,f:dr},"pvrtc-rbg2unorm-webgl":{gl:a.COMPRESSED_RGB_PVRTC_2BPPV1_IMG,f:dr},"pvrtc-rgba2unorm-webgl":{gl:a.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,f:dr},"etc1-rbg-unorm-webgl":{gl:a.COMPRESSED_RGB_ETC1_WEBGL,f:Ou},"atc-rgb-unorm-webgl":{gl:a.COMPRESSED_RGB_ATC_WEBGL,f:nn},"atc-rgba-unorm-webgl":{gl:a.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL,f:nn},"atc-rgbai-unorm-webgl":{gl:a.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL,f:nn}},Bu=(ce={},f(ce,a.RED,1),f(ce,a.RED_INTEGER,1),f(ce,a.RG,2),f(ce,a.RG_INTEGER,2),f(ce,a.RGB,3),f(ce,a.RGB_INTEGER,3),f(ce,a.RGBA,4),f(ce,a.RGBA_INTEGER,4),f(ce,a.DEPTH_COMPONENT,1),f(ce,a.DEPTH_STENCIL,1),f(ce,a.ALPHA,1),f(ce,a.LUMINANCE,1),f(ce,a.LUMINANCE_ALPHA,2),ce),Mu=(Ie={},f(Ie,a.FLOAT,4),f(Ie,a.UNSIGNED_INT,4),f(Ie,a.INT,4),f(Ie,a.UNSIGNED_SHORT,2),f(Ie,a.SHORT,2),f(Ie,a.HALF_FLOAT,2),f(Ie,a.BYTE,1),f(Ie,a.UNSIGNED_BYTE,1),Ie);function Lt(e,t){var r=Qe(t),n=$e[r];if(!n||(W(e)?n.gl===void 0:n.gl1===void 0))return!1;var o=n.x||W(e)&&n.gl2ext||n.gl1ext;return o?Boolean(e.getExtension(o)):!0}function fi(e,t){var r;return Lt(e,t)&&((r=$e[t])===null||r===void 0?void 0:r.renderbuffer)}function Qe(e){if(typeof e=="string")return e;var t=Object.entries($e).find(function(r){var n=H(r,2),o=n[1];return o.gl===e||o.gl1===e});if(!t)throw new Error("Unknown texture format ".concat(e));return t[0]}function Wt(e,t){var r=$e[e],n=t?r?.gl:r?.gl1;if(n===void 0)throw new Error("Unsupported texture format ".concat(e));return n}function _i(e,t){var r=Qe(t);if(!Lt(e,r))return!1;try{var n=sr(r);if(n.signed)return!1}catch{return!1}return r.endsWith("32float")?Boolean(e.getExtension("OES_texture_float_linear")):r.endsWith("16float")?Boolean(e.getExtension("OES_texture_half_float_linear")):!0}function ci(e,t){var r=Qe(t);return!(!Lt(e,r)||typeof r=="number")}function Tr(e,t){var r=Qe(e),n=Wt(r,t),o=sr(r);return{format:n,dataFormat:Du(o.format,o.integer,o.normalized,n),type:o.dataType?Rr(o.dataType):a.UNSIGNED_BYTE,compressed:o.compressed}}function Ei(e){var t=$e[e];if(!(t!=null&&t.attachment))throw new Error("".concat(e," is not a depth stencil format"));return t.attachment}function Ar(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.RGBA,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:a.RGBA,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:a.UNSIGNED_BYTE,o=null,i=null;try{o=e.createTexture(),e.bindTexture(a.TEXTURE_2D,o);var s=0,u=1,_=1,c=0,E=new Uint8Array([0,0,255,255]);e.texImage2D(e.TEXTURE_2D,s,t,u,_,c,r,n,E),i=e.createFramebuffer(),e.bindFramebuffer(a.FRAMEBUFFER,i),e.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,o,0);var l=e.checkFramebufferStatus(a.FRAMEBUFFER)===a.FRAMEBUFFER_COMPLETE;return e.bindTexture(a.TEXTURE_2D,null),l}finally{e.deleteTexture(o),e.deleteFramebuffer(i)}}function Vt(e,t){var r=Qe(e),n=Tr(r,t),o=Bu[n.dataFormat]||4,i=Mu[n.type]||1;return o*i}function Du(e,t,r,n){if(n===a.RGBA||n===a.RGB)return n;switch(e){case"r":return t&&!r?a.RED_INTEGER:a.RED;case"rg":return t&&!r?a.RG_INTEGER:a.RG;case"rgb":return t&&!r?a.RGB_INTEGER:a.RGB;case"rgba":return t&&!r?a.RGBA_INTEGER:a.RGBA;default:return a.RGBA}}function Uu(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=xu(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
20
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function xu(e,t){if(e){if(typeof e=="string")return li(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return li(e,t)}}function li(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Ri(e){var t=wu(e),r=Uu(ui(e)),n;try{for(r.s();!(n=r.n()).done;){var o=n.value;t.add(o)}}catch(i){r.e(i)}finally{r.f()}return t}function wu(e){e.getExtension("EXT_color_buffer_float"),e.getExtension("WEBGL_color_buffer_float"),e.getExtension("EXT_float_blend");for(var t=new Set,r=0,n=Object.keys(di);r<n.length;r++){var o=n[r];Xu(e,o)&&t.add(o)}return t}function Xu(e,t){var r=di[t];if(!r)return!1;var n=r||[],o=H(n,2),i=o[0],s=o[1],u=W(e)?s:i;if(typeof u=="boolean")return u;switch(t){case"texture-renderable-rgba32float-webgl":return W(e)?Boolean(e.getExtension(u)):Ar(e);case"glsl-derivatives":return sn(e,u);case"glsl-frag-data":return sn(e,u,{behavior:"require"});case"glsl-frag-depth":return sn(e,u);default:return Boolean(e.getExtension(u))}}var on={};function sn(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(!oi(r))return!0;if(t in on)return on[t];var n=r.behavior||"enable",o="#extension GL_".concat(t," : ").concat(n,`
21
- void main(void) {}`),i=e.createShader(e.VERTEX_SHADER);if(!i)throw new Error("shader");e.shaderSource(i,o),e.compileShader(i);var s=e.getShaderParameter(i,e.COMPILE_STATUS);return e.deleteShader(i),on[t]=s,s}var di={webgl:[!0,!0],webgl2:[!1,!0],"timer-query-webgl":["EXT_disjoint_timer_query","EXT_disjoint_timer_query_webgl2"],"vertex-array-object-webgl1":["OES_vertex_array_object",!0],"instanced-rendering-webgl1":["ANGLE_instanced_arrays",!0],"multiple-render-targets-webgl1":["WEBGL_draw_buffers",!0],"index-uint32-webgl1":["OES_element_index_uint",!0],"blend-minmax-webgl1":["EXT_blend_minmax",!0],"texture-blend-float-webgl1":["EXT_float_blend","EXT_float_blend"],"texture-formats-srgb-webgl1":["EXT_sRGB",!0],"texture-formats-depth-webgl1":["WEBGL_depth_texture",!0],"texture-formats-float32-webgl1":["OES_texture_float",!0],"texture-formats-float16-webgl1":["OES_texture_half_float",!0],"texture-filter-linear-float32-webgl":["OES_texture_float_linear","OES_texture_float_linear"],"texture-filter-linear-float16-webgl":["OES_texture_half_float_linear","OES_texture_half_float_linear"],"texture-filter-anisotropic-webgl":["EXT_texture_filter_anisotropic","EXT_texture_filter_anisotropic"],"texture-renderable-rgba32float-webgl":["WEBGL_color_buffer_float","EXT_color_buffer_float"],"texture-renderable-float32-webgl":[!1,"EXT_color_buffer_float"],"texture-renderable-float16-webgl":["EXT_color_buffer_half_float","EXT_color_buffer_half_float"],"glsl-frag-data":["WEBGL_draw_buffers",!0],"glsl-frag-depth":["EXT_frag_depth",!0],"glsl-derivatives":["OES_standard_derivatives",!0],"glsl-texture-lod":["EXT_shader_texture_lod",!0]};function Ti(e){var t=Bt(e);return{maxTextureDimension1D:0,maxTextureDimension2D:e.getParameter(a.MAX_TEXTURE_SIZE),maxTextureDimension3D:t?t.getParameter(a.MAX_3D_TEXTURE_SIZE):0,maxTextureArrayLayers:t?t.getParameter(a.MAX_ARRAY_TEXTURE_LAYERS):0,maxBindGroups:1,maxDynamicUniformBuffersPerPipelineLayout:0,maxDynamicStorageBuffersPerPipelineLayout:0,maxSampledTexturesPerShaderStage:e.getParameter(a.MAX_VERTEX_TEXTURE_IMAGE_UNITS),maxSamplersPerShaderStage:e.getParameter(a.MAX_COMBINED_TEXTURE_IMAGE_UNITS),maxStorageBuffersPerShaderStage:0,maxStorageTexturesPerShaderStage:0,maxUniformBuffersPerShaderStage:t?t.getParameter(a.MAX_UNIFORM_BUFFER_BINDINGS):0,maxUniformBufferBindingSize:t?t.getParameter(a.MAX_UNIFORM_BLOCK_SIZE):0,maxStorageBufferBindingSize:0,minUniformBufferOffsetAlignment:t?t.getParameter(a.UNIFORM_BUFFER_OFFSET_ALIGNMENT):0,minStorageBufferOffsetAlignment:0,maxVertexBuffers:0,maxVertexAttributes:e.getParameter(a.MAX_VERTEX_ATTRIBS),maxVertexBufferArrayStride:2048,maxInterStageShaderComponents:t?t.getParameter(a.MAX_VARYING_COMPONENTS):0,maxComputeWorkgroupStorageSize:0,maxComputeInvocationsPerWorkgroup:0,maxComputeWorkgroupSizeX:0,maxComputeWorkgroupSizeY:0,maxComputeWorkgroupSizeZ:0,maxComputeWorkgroupsPerDimension:0}}function Ai(e){var t,r=Bt(e);function n(i){return e.getParameter(i)}function o(i,s){return r?r.getParameter(i):s||0}return t={},f(t,a.ALIASED_LINE_WIDTH_RANGE,n(a.ALIASED_LINE_WIDTH_RANGE)),f(t,a.ALIASED_POINT_SIZE_RANGE,n(a.ALIASED_POINT_SIZE_RANGE)),f(t,a.MAX_TEXTURE_SIZE,n(a.MAX_TEXTURE_SIZE)),f(t,a.MAX_CUBE_MAP_TEXTURE_SIZE,n(a.MAX_CUBE_MAP_TEXTURE_SIZE)),f(t,a.MAX_TEXTURE_IMAGE_UNITS,n(a.MAX_TEXTURE_IMAGE_UNITS)),f(t,a.MAX_COMBINED_TEXTURE_IMAGE_UNITS,n(a.MAX_COMBINED_TEXTURE_IMAGE_UNITS)),f(t,a.MAX_VERTEX_TEXTURE_IMAGE_UNITS,n(a.MAX_VERTEX_TEXTURE_IMAGE_UNITS)),f(t,a.MAX_RENDERBUFFER_SIZE,n(a.MAX_RENDERBUFFER_SIZE)),f(t,a.MAX_VARYING_VECTORS,n(a.MAX_VARYING_VECTORS)),f(t,a.MAX_VERTEX_ATTRIBS,n(a.MAX_VERTEX_ATTRIBS)),f(t,a.MAX_VERTEX_UNIFORM_VECTORS,n(a.MAX_VERTEX_UNIFORM_VECTORS)),f(t,a.MAX_FRAGMENT_UNIFORM_VECTORS,n(a.MAX_FRAGMENT_UNIFORM_VECTORS)),f(t,a.MAX_VIEWPORT_DIMS,n(a.MAX_VIEWPORT_DIMS)),f(t,a.MAX_TEXTURE_MAX_ANISOTROPY_EXT,n(a.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),f(t,a.MAX_3D_TEXTURE_SIZE,o(a.MAX_3D_TEXTURE_SIZE)),f(t,a.MAX_ARRAY_TEXTURE_LAYERS,o(a.MAX_ARRAY_TEXTURE_LAYERS)),f(t,a.MAX_CLIENT_WAIT_TIMEOUT_WEBGL,o(a.MAX_CLIENT_WAIT_TIMEOUT_WEBGL)),f(t,a.MAX_COLOR_ATTACHMENTS,o(a.MAX_COLOR_ATTACHMENTS)),f(t,a.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS,o(a.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS)),f(t,a.MAX_COMBINED_UNIFORM_BLOCKS,o(a.MAX_COMBINED_UNIFORM_BLOCKS)),f(t,a.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS,o(a.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS)),f(t,a.MAX_DRAW_BUFFERS,o(a.MAX_DRAW_BUFFERS)),f(t,a.MAX_ELEMENT_INDEX,o(a.MAX_ELEMENT_INDEX)),f(t,a.MAX_ELEMENTS_INDICES,o(a.MAX_ELEMENTS_INDICES)),f(t,a.MAX_ELEMENTS_VERTICES,o(a.MAX_ELEMENTS_VERTICES)),f(t,a.MAX_FRAGMENT_INPUT_COMPONENTS,o(a.MAX_FRAGMENT_INPUT_COMPONENTS)),f(t,a.MAX_FRAGMENT_UNIFORM_BLOCKS,o(a.MAX_FRAGMENT_UNIFORM_BLOCKS)),f(t,a.MAX_FRAGMENT_UNIFORM_COMPONENTS,o(a.MAX_FRAGMENT_UNIFORM_COMPONENTS)),f(t,a.MAX_SAMPLES,o(a.MAX_SAMPLES)),f(t,a.MAX_SERVER_WAIT_TIMEOUT,o(a.MAX_SERVER_WAIT_TIMEOUT)),f(t,a.MAX_TEXTURE_LOD_BIAS,o(a.MAX_TEXTURE_LOD_BIAS)),f(t,a.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS,o(a.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS)),f(t,a.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS,o(a.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS)),f(t,a.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS,o(a.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS)),f(t,a.MAX_UNIFORM_BLOCK_SIZE,o(a.MAX_UNIFORM_BLOCK_SIZE)),f(t,a.MAX_UNIFORM_BUFFER_BINDINGS,o(a.MAX_UNIFORM_BUFFER_BINDINGS)),f(t,a.MAX_VARYING_COMPONENTS,o(a.MAX_VARYING_COMPONENTS)),f(t,a.MAX_VERTEX_OUTPUT_COMPONENTS,o(a.MAX_VERTEX_OUTPUT_COMPONENTS)),f(t,a.MAX_VERTEX_UNIFORM_BLOCKS,o(a.MAX_VERTEX_UNIFORM_BLOCKS)),f(t,a.MAX_VERTEX_UNIFORM_COMPONENTS,o(a.MAX_VERTEX_UNIFORM_COMPONENTS)),f(t,a.MIN_PROGRAM_TEXEL_OFFSET,o(a.MIN_PROGRAM_TEXEL_OFFSET)),f(t,a.MAX_PROGRAM_TEXEL_OFFSET,o(a.MAX_PROGRAM_TEXEL_OFFSET)),f(t,a.UNIFORM_BUFFER_OFFSET_ALIGNMENT,o(a.UNIFORM_BUFFER_OFFSET_ALIGNMENT)),t}function un(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&(e=v(e),e!==null););return e}function Xe(){return typeof Reflect<"u"&&Reflect.get?Xe=Reflect.get.bind():Xe=function(t,r,n){var o=un(t,r);if(o){var i=Object.getOwnPropertyDescriptor(o,r);return i.get?i.get.call(arguments.length<3?t:n):i.value}},Xe.apply(this,arguments)}var Rn=Le(xe(),1);function Ee(e,t,r){var n=ue.attach(e),o=n.gl;if(Hu(t))return r(e);var i=t.nocatch,s=i===void 0?!0:i;De(o),Me(o,t);var u;if(s)u=r(o),Ce(o);else try{u=r(o)}finally{Ce(o)}return u}function Hu(e){for(var t in e)return!1;return!0}function pi(e,t,r){if(at(t))return r(e);De(e.gl);try{return Me(e,t),r(e)}finally{Ce(e.gl)}}function mr(e,t,r){if(at(t))return r(e);De(e.gl);try{return _n(e,t),r(e)}finally{Ce(e.gl)}}function _n(e,t){var r=ue.attach(e),n=r.gl;if(t.cullMode)switch(t.cullMode){case"none":n.disable(a.CULL_FACE);break;case"front":n.enable(a.CULL_FACE),n.cullFace(a.FRONT);break;case"back":n.enable(a.CULL_FACE),n.cullFace(a.BACK);break}if(t.frontFace&&n.frontFace(cn("frontFace",t.frontFace,{ccw:a.CCW,cw:a.CW})),t.depthBias!==void 0&&n.polygonOffset(t.depthBias,t.depthBiasSlopeScale||0),t.depthWriteEnabled!==void 0&&n.depthMask(Wu("depthWriteEnabled",t.depthWriteEnabled)),t.depthCompare&&(t.depthCompare!=="always"?n.enable(a.DEPTH_TEST):n.disable(a.DEPTH_TEST),n.depthFunc(pr("depthCompare",t.depthCompare))),t.stencilWriteMask){var o=t.stencilWriteMask;n.stencilMaskSeparate(a.FRONT,o),n.stencilMaskSeparate(a.BACK,o)}if(t.stencilReadMask&&C.warn("stencilReadMask not supported under WebGL"),t.stencilCompare){var i=t.stencilReadMask||4294967295,s=pr("depthCompare",t.stencilCompare);t.stencilCompare!=="always"?n.enable(a.STENCIL_TEST):n.disable(a.STENCIL_TEST),n.stencilFuncSeparate(a.FRONT,s,0,i),n.stencilFuncSeparate(a.BACK,s,0,i)}if(t.stencilPassOperation&&t.stencilFailOperation&&t.stencilDepthFailOperation){var u=fn("stencilPassOperation",t.stencilPassOperation),_=fn("stencilFailOperation",t.stencilFailOperation),c=fn("stencilDepthFailOperation",t.stencilDepthFailOperation);n.stencilOpSeparate(a.FRONT,_,c,u),n.stencilOpSeparate(a.BACK,_,c,u)}}function pr(e,t){return cn(e,t,{never:a.NEVER,less:a.LESS,equal:a.EQUAL,"less-equal":a.LEQUAL,greater:a.GREATER,"not-equal":a.NOTEQUAL,"greater-equal":a.GEQUAL,always:a.ALWAYS})}function fn(e,t){return cn(e,t,{keep:a.KEEP,zero:a.ZERO,replace:a.REPLACE,invert:a.INVERT,"increment-clamp":a.INCR,"decrement-clamp":a.DECR,"increment-wrap":a.INCR_WRAP,"decrement-wrap":a.DECR_WRAP})}function Lu(e,t){return"Illegal parameter ".concat(t," for ").concat(e)}function cn(e,t,r){if(!(t in r))throw new Error(Lu(e,t));return r[t]}function Wu(e,t){return t}function mi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Vu(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?mi(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):mi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function hr(e){var t={};return e.addressModeU&&(t[a.TEXTURE_WRAP_S]=En(e.addressModeU)),e.addressModeV&&(t[a.TEXTURE_WRAP_T]=En(e.addressModeV)),e.addressModeW&&(t[a.TEXTURE_WRAP_R]=En(e.addressModeW)),e.magFilter&&(t[a.TEXTURE_MAG_FILTER]=hi(e.magFilter)),(e.minFilter||e.mipmapFilter)&&(t[a.TEXTURE_MIN_FILTER]=ju(e.minFilter||"linear",e.mipmapFilter)),e.lodMinClamp!==void 0&&(t[a.TEXTURE_MIN_LOD]=e.lodMinClamp),e.lodMaxClamp!==void 0&&(t[a.TEXTURE_MAX_LOD]=e.lodMaxClamp),e.type==="comparison-sampler"&&(t[a.TEXTURE_COMPARE_MODE]=a.COMPARE_REF_TO_TEXTURE),e.compare&&(t[a.TEXTURE_COMPARE_FUNC]=pr("compare",e.compare)),e.maxAnisotropy&&(t[a.TEXTURE_MAX_ANISOTROPY_EXT]=e.maxAnisotropy),t}function En(e){switch(e){case"clamp-to-edge":return a.CLAMP_TO_EDGE;case"repeat":return a.REPEAT;case"mirror-repeat":return a.MIRRORED_REPEAT}}function hi(e){switch(e){case"nearest":return a.NEAREST;case"linear":return a.LINEAR}}function ju(e,t){if(!t)return hi(e);switch(e){case"nearest":return t==="nearest"?a.NEAREST_MIPMAP_NEAREST:a.NEAREST_MIPMAP_LINEAR;case"linear":return t==="nearest"?a.LINEAR_MIPMAP_NEAREST:a.LINEAR_MIPMAP_LINEAR}}function Si(e){var t=Vu({},e);return e[a.TEXTURE_MIN_FILTER]!==a.NEAREST&&(t[a.TEXTURE_MIN_FILTER]=a.LINEAR),t[a.TEXTURE_WRAP_S]=a.CLAMP_TO_EDGE,t[a.TEXTURE_WRAP_T]=a.CLAMP_TO_EDGE,t}var ln=Le(xe(),1);function gi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Oi(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?gi(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):gi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Ku(e){var t=Yu();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function Yu(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var ku=10,he=function(e){x(r,e);var t=Ku(r);function r(o){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};P(this,r),i=t.call(this,o,s),i.device=void 0,i.gl=void 0,i.gl2=void 0,i.handle=void 0,i.glTarget=void 0,i.glUsage=void 0,i.glIndexType=a.UNSIGNED_SHORT,i.byteLength=void 0,i.bytesUsed=void 0,i.debugData=null,i.device=o,i.gl=i.device.gl,i.gl2=i.device.gl2;var u=_e(s)==="object"?s.handle:void 0;return i.handle=u||i.gl.createBuffer(),o.setSpectorMetadata(i.handle,Oi(Oi({},i.props),{},{data:_e(i.props.data)})),i.glTarget=Gu(i.props.usage),i.glUsage=zu(i.props.usage),i.glIndexType=i.props.indexType==="uint32"?a.UNSIGNED_INT:a.UNSIGNED_SHORT,i.debugData=null,s.data?i._initWithData(s.data,s.byteOffset,s.byteLength):i._initWithByteLength(s.byteLength||0),i}var n=r.prototype;return n._initWithData=function(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:i.byteLength+s;F(ArrayBuffer.isView(i));var _=this._getWriteTarget();return this.gl.bindBuffer(_,this.handle),this.gl.bufferData(_,u,this.glUsage),this.gl.bufferSubData(_,s,i),this.gl.bindBuffer(_,null),this.debugData=i.slice(0,ku),this.bytesUsed=u,this.byteLength=u,this.trackAllocatedMemory(u),this},n._initWithByteLength=function(i){F(i>=0);var s=i;i===0&&(s=new Float32Array(0));var u=this._getWriteTarget();return this.gl.bindBuffer(u,this.handle),this.gl.bufferData(u,s,this.glUsage),this.gl.bindBuffer(u,null),this.debugData=null,this.bytesUsed=i,this.byteLength=i,this},n.destroy=function(){!this.destroyed&&this.handle&&(this.removeStats(),this.trackDeallocatedMemory(),this.gl.deleteBuffer(this.handle),this.destroyed=!0,this.handle=null)},n.write=function(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,u=0,_=void 0,c=this.device.isWebGL2?a.COPY_WRITE_BUFFER:this.glTarget;this.gl.bindBuffer(c,this.handle),u!==0||_!==void 0?(this.device.assertWebGL2(),this.gl2.bufferSubData(c,s,i,u,_)):this.gl.bufferSubData(c,s,i),this.gl.bindBuffer(c,null)},n.readAsync=function(){var o=oe(ln.default.mark(function s(){var u,_,c,E,l=arguments;return ln.default.wrap(function(d){for(;;)switch(d.prev=d.next){case 0:return u=l.length>0&&l[0]!==void 0?l[0]:0,_=l.length>1?l[1]:void 0,this.device.assertWebGL2(),c=new Uint8Array(_),E=0,this.gl.bindBuffer(a.COPY_READ_BUFFER,this.handle),this.gl2.getBufferSubData(a.COPY_READ_BUFFER,u,c,E,_),this.gl.bindBuffer(a.COPY_READ_BUFFER,null),d.abrupt("return",c);case 9:case"end":return d.stop()}},s,this)}));function i(){return o.apply(this,arguments)}return i}(),n._invalidateDebugData=function(){this.debugData=null},n._getWriteTarget=function(){return this.glTarget},n._getReadTarget=function(){return this.glTarget},y(r)}(ee);function Gu(e){return e&ee.INDEX?a.ELEMENT_ARRAY_BUFFER:e&ee.VERTEX?a.ARRAY_BUFFER:e&ee.UNIFORM?a.UNIFORM_BUFFER:a.ARRAY_BUFFER}function zu(e){return e&ee.INDEX?a.STATIC_DRAW:e&ee.VERTEX?a.STATIC_DRAW:e&ee.UNIFORM?a.DYNAMIC_DRAW:a.STATIC_DRAW}function Zu(e){var t=$u();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function $u(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var qe=function(e){x(r,e);var t=Zu(r);function r(o,i){var s;return P(this,r),s=t.call(this,o,i),s.device=void 0,s.handle=void 0,s.parameters=void 0,s.device=o,s.parameters=hr(i),s.device.isWebGL2&&(s.handle=s.handle||s.device.gl2.createSampler(),s._setSamplerParameters(s.parameters)),s}var n=r.prototype;return n.destroy=function(){this.handle&&(this.device.gl2.deleteSampler(this.handle),this.handle=void 0)},n.toString=function(){return"Sampler(".concat(this.id,",").concat(JSON.stringify(this.props),")")},n._setSamplerParameters=function(i){for(var s=0,u=Object.entries(i);s<u.length;s++){var _=H(u[s],2),c=_[0],E=_[1],l=Number(c);switch(l){case a.TEXTURE_MIN_LOD:case a.TEXTURE_MAX_LOD:this.device.gl2.samplerParameterf(this.handle,l,E);break;default:this.device.gl2.samplerParameteri(this.handle,l,E);break}}},y(r)}(tr);function qu(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Ju(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
22
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function Ju(e,t){if(e){if(typeof e=="string")return vi(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return vi(e,t)}}function vi(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function bi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Sr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?bi(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):bi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ef(e){var t=tf();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function tf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var rf={parameters:{},pixelStore:{},pixels:null,border:0,dataFormat:void 0,textureUnit:void 0,target:void 0},Se=function(e){x(r,e);var t=ef(r);function r(o,i){var s,u;return P(this,r),u=t.call(this,o,Sr(Sr({},rf),{},{format:"rgba8unorm"},i)),u.MAX_ATTRIBUTES=void 0,u.device=void 0,u.gl=void 0,u.gl2=void 0,u.handle=void 0,u.sampler=void 0,u.glFormat=void 0,u.type=void 0,u.dataFormat=void 0,u.mipmaps=void 0,u.target=void 0,u.textureUnit=void 0,u.loaded=!1,u._video=void 0,u.device=o,u.gl=u.device.gl,u.gl2=u.device.gl2,u.handle=u.props.handle||u.gl.createTexture(),u.device.setSpectorMetadata(u.handle,Sr(Sr({},u.props),{},{data:_e(u.props.data)})),u.glFormat=a.RGBA,u.target=nf(u.props),u.loaded=!1,typeof((s=u.props)===null||s===void 0?void 0:s.data)=="string"&&Object.assign(u.props,{data:Gr(u.props.data)}),u.initialize(u.props),Object.seal(Ae(u)),u}var n=r.prototype;return n.destroy=function(){this.handle&&(this.gl.deleteTexture(this.handle),this.removeStats(),this.trackDeallocatedMemory("Texture"),this.destroyed=!0)},n.toString=function(){return"Texture(".concat(this.id,",").concat(this.width,"x").concat(this.height,")")},n.initialize=function(){var i=this,s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(this.props.dimension==="cube")return this.initializeCube(s);var u=s.data;if(u instanceof Promise)return u.then(function(g){return i.initialize(Object.assign({},s,{pixels:g,data:g}))}),this;var _=typeof HTMLVideoElement<"u"&&u instanceof HTMLVideoElement;if(_&&u.readyState<HTMLVideoElement.HAVE_METADATA)return this._video=null,u.addEventListener("loadeddata",function(){return i.initialize(s)}),this;var c=s.parameters,E=c===void 0?{}:c,l=s.pixels,R=l===void 0?null:l,d=s.pixelStore,A=d===void 0?{}:d,p=s.textureUnit,h=p===void 0?void 0:p;u||(u=R);var O=s.width,b=s.height,D=s.dataFormat,I=s.type,L=s.compressed,X=L===void 0?!1:L,$=s.mipmaps,z=$===void 0?!0:$,ne=s.depth,K=ne===void 0?0:ne,S=Wt(s.format,this.device.isWebGL2),T=this._deduceParameters({format:s.format,type:I,dataFormat:D,compressed:X,data:u,width:O,height:b});return O=T.width,b=T.height,X=T.compressed,D=T.dataFormat,I=T.type,this.width=O,this.height=b,this.glFormat=S,this.type=I,this.dataFormat=D,this.textureUnit=h,Number.isFinite(this.textureUnit)&&(this.gl.activeTexture(a.TEXTURE0+this.textureUnit),this.gl.bindTexture(this.target,this.handle)),z&&this.device.isWebGL1&&gr(this.width,this.height)&&(C.warn("texture: ".concat(this," is Non-Power-Of-Two, disabling mipmaps"))(),z=!1),this.mipmaps=z,this.setImageData({data:u,width:O,height:b,depth:K,format:S,type:I,dataFormat:D,parameters:A,compressed:X}),this.setSampler(s.sampler),this._setSamplerParameters(E),z&&this.generateMipmap(),_&&(this._video={video:u,parameters:E,lastTime:u.readyState>=HTMLVideoElement.HAVE_CURRENT_DATA?u.currentTime:-1}),this},n.initializeCube=function(i){var s=this,u=i.mipmaps,_=u===void 0?!0:u,c=i.parameters,E=c===void 0?{}:c;return this.setCubeMapImageData(i).then(function(){s.loaded=!0,_&&s.generateMipmap(i),s.setSampler(i.sampler),s._setSamplerParameters(E)}),this},n.setSampler=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},s;i instanceof qe?(this.sampler=i,s=i.props):(this.sampler=new qe(this.device,i),s=i);var u=hr(s);return this._setSamplerParameters(u),this},n.resize=function(i){var s=i.height,u=i.width,_=i.mipmaps,c=_===void 0?!1:_;return u!==this.width||s!==this.height?this.initialize({width:u,height:s,format:this.format,type:this.type,dataFormat:this.dataFormat,mipmaps:c}):this},n.update=function(){if(this._video){var i=this._video,s=i.video,u=i.parameters,_=i.lastTime;if(_===s.currentTime||s.readyState<HTMLVideoElement.HAVE_CURRENT_DATA)return;this.setSubImageData({data:s,parameters:u}),this.mipmaps&&this.generateMipmap(),this._video.lastTime=s.currentTime}},n.generateMipmap=function(){var i=this,s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return this.device.isWebGL1&&gr(this.width,this.height)?(C.warn("texture: ".concat(this," is Non-Power-Of-Two, disabling mipmaping"))(),this):(this.mipmaps=!0,this.gl.bindTexture(this.target,this.handle),Ee(this.gl,s,function(){i.gl.generateMipmap(i.target)}),this.gl.bindTexture(this.target,null),this)},n.setImageData=function(i){var s=this;if(this.props.dimension==="3d"||this.props.dimension==="2d-array")return this.setImageData3D(i);this.trackDeallocatedMemory("Texture");var u=i.target,_=u===void 0?this.target:u,c=i.pixels,E=c===void 0?null:c,l=i.level,R=l===void 0?0:l,d=i.glFormat,A=d===void 0?this.glFormat:d,p=i.offset,h=p===void 0?0:p,O=i.parameters,b=O===void 0?{}:O,D=i.data,I=D===void 0?null:D,L=i.type,X=L===void 0?this.type:L,$=i.width,z=$===void 0?this.width:$,ne=i.height,K=ne===void 0?this.height:ne,S=i.dataFormat,T=S===void 0?this.dataFormat:S,g=i.compressed,B=g===void 0?!1:g;I||(I=E);var U=this._deduceParameters({format:this.props.format,type:X,dataFormat:T,compressed:B,data:I,width:z,height:K});X=U.type,T=U.dataFormat,B=U.compressed,z=U.width,K=U.height;var M=this.gl;M.bindTexture(this.target,this.handle);var k=null,re=this._getDataType({data:I,compressed:B});I=re.data,k=re.dataType;var Q;if(Ee(this.gl,b,function(){switch(k){case"null":M.texImage2D(_,R,A,z,K,0,T,X,I);break;case"typed-array":M.texImage2D(_,R,A,z,K,0,T,X,I,h);break;case"buffer":Q=s.device.assertWebGL2(),Q.bindBuffer(a.PIXEL_UNPACK_BUFFER,I.handle||I),Q.texImage2D(_,R,A,z,K,0,T,X,h),Q.bindBuffer(a.PIXEL_UNPACK_BUFFER,null);break;case"browser-object":s.device.isWebGL2?M.texImage2D(_,R,A,z,K,0,T,X,I):M.texImage2D(_,R,A,T,X,I);break;case"compressed":var ae=qu(I.entries()),Te;try{for(ae.s();!(Te=ae.n()).done;){var yn=H(Te.value,2),mo=yn[0],jt=yn[1];M.compressedTexImage2D(_,mo,jt.format,jt.width,jt.height,0,jt.data)}}catch(ho){ae.e(ho)}finally{ae.f()}break;default:F(!1,"Unknown image data type")}}),I&&I.byteLength)this.trackAllocatedMemory(I.byteLength,"Texture");else{var Re=Vt(this.props.format,this.device.isWebGL2);this.trackAllocatedMemory(this.width*this.height*Re,"Texture")}return this.loaded=!0,this},n.setSubImageData=function(i){var s=this,u=i.target,_=u===void 0?this.target:u,c=i.pixels,E=c===void 0?null:c,l=i.data,R=l===void 0?null:l,d=i.x,A=d===void 0?0:d,p=i.y,h=p===void 0?0:p,O=i.width,b=O===void 0?this.width:O,D=i.height,I=D===void 0?this.height:D,L=i.level,X=L===void 0?0:L,$=i.glFormat,z=$===void 0?this.glFormat:$,ne=i.type,K=ne===void 0?this.type:ne,S=i.dataFormat,T=S===void 0?this.dataFormat:S,g=i.compressed,B=g===void 0?!1:g,U=i.offset,M=U===void 0?0:U,k=i.parameters,re=k===void 0?{}:k,Q=this._deduceParameters({format:this.props.format,type:K,dataFormat:T,compressed:B,data:R,width:b,height:I});if(K=Q.type,T=Q.dataFormat,B=Q.compressed,b=Q.width,I=Q.height,F(this.depth===1,"texSubImage not supported for 3D textures"),R||(R=E),R&&R.data){var Re=R;R=Re.data,b=Re.shape[0],I=Re.shape[1]}R instanceof he&&(R=R.handle),this.gl.bindTexture(this.target,this.handle),Ee(this.gl,re,function(){if(B)s.gl.compressedTexSubImage2D(_,X,A,h,b,I,z,R);else if(R===null)s.gl.texSubImage2D(_,X,A,h,b,I,T,K,null);else if(ArrayBuffer.isView(R))s.gl.texSubImage2D(_,X,A,h,b,I,T,K,R,M);else if(typeof WebGLBuffer<"u"&&R instanceof WebGLBuffer){var ae=s.device.assertWebGL2();ae.bindBuffer(a.PIXEL_UNPACK_BUFFER,R),ae.texSubImage2D(_,X,A,h,b,I,T,K,M),ae.bindBuffer(a.PIXEL_UNPACK_BUFFER,null)}else if(s.device.isWebGL2){var Te=s.device.assertWebGL2();Te.texSubImage2D(_,X,A,h,b,I,T,K,R)}else s.gl.texSubImage2D(_,X,A,h,T,K,R)}),this.gl.bindTexture(this.target,null)},n.copyFramebuffer=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return C.error("Texture.copyFramebuffer({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null},n.getActiveUnit=function(){return this.gl.getParameter(a.ACTIVE_TEXTURE)-a.TEXTURE0},n.bind=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.textureUnit,s=this.gl;return i!==void 0&&(this.textureUnit=i,s.activeTexture(s.TEXTURE0+i)),s.bindTexture(this.target,this.handle),i},n.unbind=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.textureUnit,s=this.gl;return i!==void 0&&(this.textureUnit=i,s.activeTexture(s.TEXTURE0+i)),s.bindTexture(this.target,null),i},n._getDataType=function(i){var s=i.data,u=i.compressed,_=u===void 0?!1:u;return _?{data:s,dataType:"compressed"}:s===null?{data:s,dataType:"null"}:ArrayBuffer.isView(s)?{data:s,dataType:"typed-array"}:s instanceof he?{data:s.handle,dataType:"buffer"}:typeof WebGLBuffer<"u"&&s instanceof WebGLBuffer?{data:s,dataType:"buffer"}:{data:s,dataType:"browser-object"}},n._deduceParameters=function(i){var s=i.format,u=i.data,_=i.width,c=i.height,E=i.dataFormat,l=i.type,R=i.compressed,d=Tr(s,this.device.isWebGL2);E=E||d.dataFormat,l=l||d.type,R=R||d.compressed;var A=this._deduceImageSize(u,_,c);return _=A.width,c=A.height,{dataFormat:E,type:l,compressed:R,width:_,height:c,format:s,data:u}},n._deduceImageSize=function(i,s,u){var _;return typeof ImageData<"u"&&i instanceof ImageData?_={width:i.width,height:i.height}:typeof HTMLImageElement<"u"&&i instanceof HTMLImageElement?_={width:i.naturalWidth,height:i.naturalHeight}:typeof HTMLCanvasElement<"u"&&i instanceof HTMLCanvasElement?_={width:i.width,height:i.height}:typeof ImageBitmap<"u"&&i instanceof ImageBitmap?_={width:i.width,height:i.height}:typeof HTMLVideoElement<"u"&&i instanceof HTMLVideoElement?_={width:i.videoWidth,height:i.videoHeight}:i?_={width:s,height:u}:_={width:s>=0?s:1,height:u>=0?u:1},F(_,"Could not deduced texture size"),F(s===void 0||_.width===s,"Deduced texture width does not match supplied width"),F(u===void 0||_.height===u,"Deduced texture height does not match supplied height"),_},n.setCubeMapImageData=function(){var o=oe(Rn.default.mark(function s(u){var _=this,c,E,l,R,d,A,p,h,O,b,D;return Rn.default.wrap(function(L){for(;;)switch(L.prev=L.next){case 0:return c=this.gl,E=u.width,l=u.height,R=u.pixels,d=u.data,A=u.format,p=A===void 0?a.RGBA:A,h=u.type,O=h===void 0?a.UNSIGNED_BYTE:h,b=R||d,L.next=5,Promise.all(r.FACES.map(function(X){var $=b[X];return Promise.all(Array.isArray($)?$:[$])}));case 5:D=L.sent,this.bind(),r.FACES.forEach(function(X,$){D[$].length>1&&_.props.mipmaps!==!1&&C.warn("".concat(_.id," has mipmap and multiple LODs."))(),D[$].forEach(function(z,ne){E&&l?c.texImage2D(X,ne,p,E,l,0,p,O,z):c.texImage2D(X,ne,p,p,O,z)})}),this.unbind();case 9:case"end":return L.stop()}},s,this)}));function i(s){return o.apply(this,arguments)}return i}(),n.setImageDataForFace=function(i){var s=this,u=i.face,_=i.width,c=i.height,E=i.pixels,l=i.data,R=i.format,d=R===void 0?a.RGBA:R,A=i.type,p=A===void 0?a.UNSIGNED_BYTE:A,h=this.gl,O=E||l;return this.bind(),O instanceof Promise?O.then(function(b){return s.setImageDataForFace(Object.assign({},i,{face:u,data:b,pixels:b}))}):this.width||this.height?h.texImage2D(u,0,d,_,c,0,d,p,O):h.texImage2D(u,0,d,d,p,O),this},n.setImageData3D=function(i){var s=this,u=i.level,_=u===void 0?0:u,c=i.dataFormat,E=i.format,l=i.type,R=i.width,d=i.height,A=i.depth,p=A===void 0?1:A,h=i.offset,O=h===void 0?0:h,b=i.data,D=i.parameters,I=D===void 0?{}:D;this.trackDeallocatedMemory("Texture"),this.gl.bindTexture(this.target,this.handle);var L=Tr(E,this.device.isWebGL2);if(Ee(this.gl,I,function(){ArrayBuffer.isView(b)&&s.gl.texImage3D(s.target,_,L.format,R,d,p,0,L.dataFormat,L.type,b),b instanceof he&&(s.gl.bindBuffer(a.PIXEL_UNPACK_BUFFER,b.handle),s.gl.texImage3D(s.target,_,c,R,d,p,0,E,l,O))}),b&&b.byteLength)this.trackAllocatedMemory(b.byteLength,"Texture");else{var X=Vt(this.props.format,this.device.isWebGL2);this.trackAllocatedMemory(this.width*this.height*this.depth*X,"Texture")}return this.loaded=!0,this},n._setSamplerParameters=function(i){if(this.device.isWebGL1&&gr(this.width,this.height)&&(i=Si(i)),!at(i)){af(i),this.gl.bindTexture(this.target,this.handle);for(var s=0,u=Object.entries(i);s<u.length;s++){var _=H(u[s],2),c=_[0],E=_[1],l=Number(c),R=E;switch(l){case a.TEXTURE_MIN_LOD:case a.TEXTURE_MAX_LOD:this.gl.texParameterf(this.target,l,R);break;default:this.gl.texParameteri(this.target,l,R);break}}this.gl.bindTexture(this.target,null)}},n._getWebGL1NPOTParameterOverride=function(i,s){var u=this.device.isWebGL1&&gr(this.width,this.height);if(u)switch(i){case a.TEXTURE_MIN_FILTER:if(s!==a.LINEAR&&s!==a.NEAREST)return a.LINEAR;break;case a.TEXTURE_WRAP_S:case a.TEXTURE_WRAP_T:return a.CLAMP_TO_EDGE;default:break}return s},y(r)}(se);Se.FACES=[a.TEXTURE_CUBE_MAP_POSITIVE_X,a.TEXTURE_CUBE_MAP_NEGATIVE_X,a.TEXTURE_CUBE_MAP_POSITIVE_Y,a.TEXTURE_CUBE_MAP_NEGATIVE_Y,a.TEXTURE_CUBE_MAP_POSITIVE_Z,a.TEXTURE_CUBE_MAP_NEGATIVE_Z];function nf(e){switch(e.dimension){case"2d":return a.TEXTURE_2D;case"cube":return a.TEXTURE_CUBE_MAP;case"2d-array":return a.TEXTURE_2D_ARRAY;case"3d":return a.TEXTURE_3D;case"1d":case"cube-array":default:throw new Error(e.dimension)}}function gr(e,t){return!e||!t?!1:!qt(e)||!qt(t)}function af(e){C.log(1,"texture sampler parameters",e)()}function Or(e,t){if(typeof t!="string")return t;var r=Number(t);if(!isNaN(r))return r;t=t.replace(/^.*\./,"");var n=e[t];return F(n!==void 0,"Accessing undefined constant GL.".concat(t)),n}function of(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=sf(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
23
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function sf(e,t){if(e){if(typeof e=="string")return Ni(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Ni(e,t)}}function Ni(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function uf(e){var t=ff();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function ff(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var dt="Resource subclass must define virtual methods",Je=function(e){x(r,e);var t=uf(r);function r(o,i,s){var u;P(this,r),u=t.call(this,o,i,s),u.device=void 0,u.gl=void 0,u.gl2=void 0,u._handle=void 0,u._bound=!1,u.byteLength=0,u.device=ue.attach(o);var _=u.device.gl;_r(_);var c=i||{},E=c.id;return u.gl=_,u.gl2=_,u.id=E||ge(u.constructor.name),u._handle=i?.handle,u._handle===void 0&&(u._handle=u._createHandle()),u.byteLength=0,u}var n=r.prototype;return n.toString=function(){return"".concat(this.constructor.name,"(").concat(this.id,")")},n.delete=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},s=i.deleteChildren,u=s===void 0?!1:s,_=this._handle&&this._deleteHandle(this._handle);return this._handle&&this.removeStats(),this._handle=null,_&&u&&_.filter(Boolean).forEach(function(c){return c.destroy()}),this},n.bind=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.handle;if(typeof i!="function")return this._bindHandle(i),this;var s;return this._bound?s=i():(this._bindHandle(this.handle),this._bound=!0,s=i(),this._bound=!1,this._bindHandle(null)),s},n.unbind=function(){this.bind(null)},n.getParameter=function(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};i=Or(this.gl,i),F(i);var u=this.constructor.PARAMETERS||{},_=u[i];if(_){var c=W(this.gl),E=(!("webgl2"in _)||c)&&(!("extension"in _)||this.gl.getExtension(_.extension));if(!E){var l=_.webgl1,R="webgl2"in _?_.webgl2:_.webgl1,d=c?R:l;return d}}return this._getParameter(i,s)},n.getParameters=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},s=i.parameters,u=i.keys,_=this.constructor.PARAMETERS||{},c=W(this.gl),E={},l=s||Object.keys(_),R=of(l),d;try{for(R.s();!(d=R.n()).done;){var A=d.value,p=_[A],h=p&&(!("webgl2"in p)||c)&&(!("extension"in p)||this.gl.getExtension(p.extension));if(h){var O=u?this.device.getGLKey(A):A;E[O]=this.getParameter(A,i),u&&p.type==="GLenum"&&(E[O]=this.device.getGLKey(E[O]))}}}catch(b){R.e(b)}finally{R.f()}return E},n.setParameter=function(i,s){i=Or(this.gl,i),F(i);var u=this.constructor.PARAMETERS||{},_=u[i];if(_){var c=W(this.gl),E=(!("webgl2"in _)||c)&&(!("extension"in _)||this.gl.getExtension(_.extension));if(!E)throw new Error("Parameter not available on this platform");_.type==="GLenum"&&(s=Or(s))}return this._setParameter(i,s),this},n.setParameters=function(i){for(var s in i)this.setParameter(s,i[s]);return this},n.stubRemovedMethods=function(i,s,u){return Kr(this,i,s,u)},n.initialize=function(i){},n._createHandle=function(){throw new Error(dt)},n._deleteHandle=function(){throw new Error(dt)},n._bindHandle=function(i){throw new Error(dt)},n._getOptsFromHandle=function(){throw new Error(dt)},n._getParameter=function(i,s){throw new Error(dt)},n._setParameter=function(i,s){throw new Error(dt)},y(r,[{key:"handle",get:function(){return this._handle}}]),r}(j);var Pi;function Ci(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Ii(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ci(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ci(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function _f(e){var t=cf();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function cf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Pi=Symbol.toStringTag;var Tt=function(e){x(r,e);var t=_f(r);r.isTextureFormatSupported=function(i,s){return fi(i.gl,s)};function r(o,i){var s;if(P(this,r),typeof i.format=="number")throw new Error("Renderbuffer");return s=t.call(this,o,i,r.defaultProps),s.glFormat=void 0,s.glFormat=Wt(s.props.format,o.isWebGL2),s._initialize(s.props),s}var n=r.prototype;return n.resize=function(i){(i.width!==this.width||i.height!==this.height)&&(Object.assign(this.props,Ii(Ii({},i),{},{format:this.format,samples:this.samples})),this._initialize(this.props))},n._initialize=function(i){var s=i.format,u=i.width,_=i.height,c=i.samples;F(s,"Needs format"),this.trackDeallocatedMemory(),this.gl.bindRenderbuffer(a.RENDERBUFFER,this.handle),c!==0&&this.device.isWebGL2?this.gl2.renderbufferStorageMultisample(a.RENDERBUFFER,c,this.glFormat,u,_):this.gl.renderbufferStorage(a.RENDERBUFFER,this.glFormat,u,_),this.gl.bindRenderbuffer(a.RENDERBUFFER,null),this.trackAllocatedMemory(u*_*(c||1)*Vt(this.glFormat,this.device.isWebGL2))},n._createHandle=function(){return this.gl.createRenderbuffer()},n._deleteHandle=function(){this.gl.deleteRenderbuffer(this.handle),this.trackDeallocatedMemory()},n._bindHandle=function(i){this.gl.bindRenderbuffer(a.RENDERBUFFER,i)},y(r,[{key:Pi,get:function(){return"Renderbuffer"}},{key:"width",get:function(){return this.props.width}},{key:"height",get:function(){return this.props.height}},{key:"format",get:function(){return this.props.format}},{key:"samples",get:function(){return this.props.samples}},{key:"attachment",get:function(){}}]),r}(Je);Tt.defaultProps={id:void 0,handle:void 0,userData:void 0,format:void 0,width:1,height:1,samples:0};function Ef(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=lf(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
24
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function lf(e,t){if(e){if(typeof e=="string")return yi(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return yi(e,t)}}function yi(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Rf(e){var t=df();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function df(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var At=function(e){x(r,e);var t=Rf(r);function r(o,i){var s;P(this,r),s=t.call(this,o,i),s.device=void 0,s.gl=void 0,s.handle=void 0;var u=i.handle===null;if(s.device=o,s.gl=o.gl,s.handle=s.props.handle||u?s.props.handle:s.gl.createFramebuffer(),!u){o.setSpectorMetadata(s.handle,{id:s.props.id,props:s.props}),s.autoCreateAttachmentTextures(),s.gl.bindFramebuffer(a.FRAMEBUFFER,s.handle);for(var _=0;_<s.colorAttachments.length;++_){var c=s.colorAttachments[_],E=a.COLOR_ATTACHMENT0+_;c&&s._attachOne(E,c)}s.depthStencilAttachment&&s._attachOne(Ei(s.depthStencilAttachment.format),s.depthStencilAttachment),s.gl.bindFramebuffer(a.FRAMEBUFFER,null)}return i.check!==!1&&s._checkStatus(),s}var n=r.prototype;return n.destroy=function(){Xe(v(r.prototype),"destroy",this).call(this),!this.destroyed&&this.handle!==null&&this.gl.deleteFramebuffer(this.handle)},n._checkStatus=function(){var i=this.gl,s=i.bindFramebuffer(a.FRAMEBUFFER,this.handle),u=i.checkFramebufferStatus(a.FRAMEBUFFER);if(i.bindFramebuffer(a.FRAMEBUFFER,s||null),u!==i.FRAMEBUFFER_COMPLETE)throw new Error("Framebuffer ".concat(Af(u)))},n.createDepthStencilTexture=function(i){return new Tt(this.device,{id:"".concat(this.id,"-depth-stencil"),format:i,width:this.width,height:this.height})},n.resizeAttachments=function(i,s){if(this.handle===null)return this.width=this.gl.drawingBufferWidth,this.height=this.gl.drawingBufferHeight,this;i===void 0&&(i=this.gl.drawingBufferWidth),s===void 0&&(s=this.gl.drawingBufferHeight);var u=Ef(this.colorAttachments),_;try{for(u.s();!(_=u.n()).done;){var c=_.value;c.resize({width:i,height:s})}}catch(E){u.e(E)}finally{u.f()}return this.depthStencilAttachment&&this.depthStencilAttachment.resize({width:i,height:s}),this},n._attachOne=function(i,s){if(s instanceof Tt)return this._attachWEBGLRenderbuffer(i,s),s;if(Array.isArray(s)){var u=H(s,3),_=u[0],c=u[1],E=c===void 0?0:c,l=u[2],R=l===void 0?0:l;return this._attachTexture(i,_,E,R),_}else if(s instanceof Se)return this._attachTexture(i,s,0,0),s;throw new Error("attach")},n._attachWEBGLRenderbuffer=function(i,s){this.gl.framebufferRenderbuffer(a.FRAMEBUFFER,i,a.RENDERBUFFER,s.handle)},n._attachTexture=function(i,s,u,_){var c=this.device,E=c.gl,l=c.gl2;switch(E.bindTexture(s.target,s.handle),s.target){case a.TEXTURE_2D_ARRAY:case a.TEXTURE_3D:this.device.assertWebGL2(),l?.framebufferTextureLayer(a.FRAMEBUFFER,i,s.target,_,u);break;case a.TEXTURE_CUBE_MAP:var R=Tf(u);E.framebufferTexture2D(a.FRAMEBUFFER,i,R,s.handle,_);break;case a.TEXTURE_2D:E.framebufferTexture2D(a.FRAMEBUFFER,i,a.TEXTURE_2D,s.handle,_);break;default:F(!1,"Illegal texture type")}E.bindTexture(s.target,null)},y(r,[{key:"texture",get:function(){return this.colorAttachments[0]}}]),r}(ut);function Tf(e){return e<a.TEXTURE_CUBE_MAP_POSITIVE_X?e+a.TEXTURE_CUBE_MAP_POSITIVE_X:e}function Af(e){switch(e){case a.FRAMEBUFFER_COMPLETE:return"success";case a.FRAMEBUFFER_INCOMPLETE_ATTACHMENT:return"Mismatched attachments";case a.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:return"No attachments";case a.FRAMEBUFFER_INCOMPLETE_DIMENSIONS:return"Height/width mismatch";case a.FRAMEBUFFER_UNSUPPORTED:return"Unsupported or split attachments";case a.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE:return"Samples mismatch";default:return"".concat(e)}}function pf(e){var t=mf();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function mf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var vr=function(e){x(r,e);var t=pf(r);function r(o,i){var s;return P(this,r),s=t.call(this,i),s.device=void 0,s.presentationSize=void 0,s._framebuffer=null,s.device=o,s.presentationSize=[-1,-1],s._setAutoCreatedCanvasId("".concat(s.device.id,"-canvas")),s.update(),s}var n=r.prototype;return n.getCurrentFramebuffer=function(){return this.update(),this._framebuffer=this._framebuffer||new At(this.device,{handle:null}),this._framebuffer},n.update=function(){var i=this.getPixelSize(),s=i[0]!==this.presentationSize[0]||i[1]!==this.presentationSize[1];s&&(this.presentationSize=i)},n.resize=function(i){if(this.canvas){var s=this.getDevicePixelRatio(i?.useDevicePixels);this.setDevicePixelRatio(s,i);return}var u=this.device.gl.getExtension("STACKGL_resize_drawingbuffer");u&&i&&"width"in i&&"height"in i&&u.resize(i.width,i.height)},n.commit=function(){},y(r)}(ot);var dn=Le(xe(),1);function Fi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Bi(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Fi(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Fi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var hf={spector:C.get("spector")||C.get("inspect")},Sf="https://spectorcdn.babylonjs.com/spector.bundle.js",gf=1,le=null,Mi=!1;function Di(e){return Tn.apply(this,arguments)}function Tn(){return Tn=oe(dn.default.mark(function e(t){return dn.default.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(globalThis.SPECTOR){n.next=9;break}return n.prev=1,n.next=4,Pt(Sf);case 4:n.next=9;break;case 6:n.prev=6,n.t0=n.catch(1),C.warn(String(n.t0));case 9:case"end":return n.stop()}},e,null,[[1,6]])})),Tn.apply(this,arguments)}function Ui(e){var t,r;if(e=Bi(Bi({},hf),e),!((t=e)!==null&&t!==void 0&&t.spector)||(!le&&globalThis.SPECTOR&&(C.probe(gf,"SPECTOR found and initialized")(),le=new globalThis.SPECTOR.Spector,globalThis.luma&&(globalThis.luma.spector=le)),!le))return null;if(!Mi){var n,o;Mi=!0,le.spyCanvases(),(n=le)===null||n===void 0||n.onCaptureStarted.add(function(u){return C.info("Spector capture started:",u)()}),(o=le)===null||o===void 0||o.onCapture.add(function(u){var _,c,E;C.info("Spector capture complete:",u)(),(_=le)===null||_===void 0||_.getResultUI(),(c=le)===null||c===void 0||c.resultView.display(),(E=le)===null||E===void 0||E.resultView.addCapture(u)})}if((r=e)!==null&&r!==void 0&&r.canvas){var i,s;if(typeof e.spector=="string"&&e.spector!==e.canvas.id)return le;(i=le)===null||i===void 0||i.startCapture((s=e)===null||s===void 0?void 0:s.canvas,500),new Promise(function(u){return setTimeout(u,2e3)}).then(function(u){var _;C.info("Spector capture stopped after 2 seconds")(),(_=le)===null||_===void 0||_.stopCapture()})}return le}var pn=Le(xe(),1);function Of(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=vf(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
25
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function vf(e,t){if(e){if(typeof e=="string")return xi(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return xi(e,t)}}function xi(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function wi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Xi(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?wi(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):wi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var bf="https://unpkg.com/webgl-debug@2.0.1/index.js";function Hi(e){return e.luma=e.luma||{},e.luma}function Li(){return mn.apply(this,arguments)}function mn(){return mn=oe(pn.default.mark(function e(){return pn.default.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(!(q()&&!globalThis.WebGLDebugUtils)){r.next=5;break}return globalThis.global=globalThis.global||globalThis,globalThis.global.module={},r.next=5,Pt(bf);case 5:case"end":return r.stop()}},e)})),mn.apply(this,arguments)}function Wi(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return e?t.debug?Cf(e,t):Nf(e):null}function Nf(e){var t=Hi(e);return t.realContext?t.realContext:e}function Cf(e,t){if(!globalThis.WebGLDebugUtils)return C.warn("webgl-debug not loaded")(),e;var r=Hi(e);if(r.debugContext)return r.debugContext;globalThis.WebGLDebugUtils.init(Xi(Xi({},a),e));var n=globalThis.WebGLDebugUtils.makeDebugContext(e,If.bind(null,t),Pf.bind(null,t));for(var o in a)!(o in n)&&typeof a[o]=="number"&&(n[o]=a[o]);var i=y(function u(){P(this,u)});Object.setPrototypeOf(n,Object.getPrototypeOf(e)),Object.setPrototypeOf(i,n);var s=Object.create(i);return r.realContext=e,r.debugContext=s,s.debug=!0,s}function An(e,t){t=Array.from(t).map(function(n){return n===void 0?"undefined":n});var r=globalThis.WebGLDebugUtils.glFunctionArgsToString(e,t);return r="".concat(r.slice(0,100)).concat(r.length>100?"...":""),"gl.".concat(e,"(").concat(r,")")}function If(e,t,r,n){n=Array.from(n).map(function(_){return _===void 0?"undefined":_});var o=globalThis.WebGLDebugUtils.glEnumToString(t),i=globalThis.WebGLDebugUtils.glFunctionArgsToString(r,n),s=e.webgl2?"gl2":"gl1",u="".concat(o," in ").concat(s,".").concat(r,"(").concat(i,")");C.error(u)();debugger;if(e.throwOnError)throw new Error(u)}function Pf(e,t,r){var n="";if(C.level>=1&&(n=An(t,r),C.log(1,n)()),e.break&&e.break.length>0){n=n||An(t,r);var o=e.break.every(function(_){return n.indexOf(_)!==-1});if(o)debugger}var i=Of(r),s;try{for(i.s();!(s=i.n()).done;){var u=s.value;if(u===void 0){if(n=n||An(t,r),e.throwOnError)throw new Error("Undefined argument: ".concat(n));C.error("Undefined argument: ".concat(n))();debugger}}}catch(_){i.e(_)}finally{i.f()}}function hn(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function pt(e,t,r){return hn()?pt=Reflect.construct.bind():pt=function(o,i,s){var u=[null];u.push.apply(u,i);var _=Function.bind.apply(o,u),c=new _;return s&&We(c,s.prototype),c},pt.apply(null,arguments)}var yf="Failed to deduce GL constant from typed array";function mt(e){var t=ArrayBuffer.isView(e)?e.constructor:e;switch(t){case Float32Array:return a.FLOAT;case Uint16Array:return a.UNSIGNED_SHORT;case Uint32Array:return a.UNSIGNED_INT;case Uint8Array:return a.UNSIGNED_BYTE;case Uint8ClampedArray:return a.UNSIGNED_BYTE;case Int8Array:return a.BYTE;case Int16Array:return a.SHORT;case Int32Array:return a.INT;default:throw new Error(yf)}}function He(e,t){var r=t||{},n=r.clamped,o=n===void 0?!0:n;switch(e){case a.FLOAT:return Float32Array;case a.UNSIGNED_SHORT:case a.UNSIGNED_SHORT_5_6_5:case a.UNSIGNED_SHORT_4_4_4_4:case a.UNSIGNED_SHORT_5_5_5_1:return Uint16Array;case a.UNSIGNED_INT:return Uint32Array;case a.UNSIGNED_BYTE:return o?Uint8ClampedArray:Uint8Array;case a.BYTE:return Int8Array;case a.SHORT:return Int16Array;case a.INT:return Int32Array;default:throw new Error("Failed to deduce typed array type from GL constant")}}var Ff={offset:0,stride:0,type:a.FLOAT,size:1,divisor:0,normalized:!1,integer:!1},Bf={deprecatedProps:{instanced:"divisor",isInstanced:"divisor"}},ve=function(){e.getBytesPerElement=function(n){var o=He(n.type||a.FLOAT);return o.BYTES_PER_ELEMENT},e.getBytesPerVertex=function(n){F(n.size);var o=He(n.type||a.FLOAT);return o.BYTES_PER_ELEMENT*n.size},e.resolve=function(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];return pt(e,[Ff].concat(o))};function e(){var r=this;P(this,e),this.offset=void 0,this.stride=void 0,this.type=void 0,this.size=void 0,this.divisor=void 0,this.normalized=void 0,this.integer=void 0,this.buffer=void 0,this.index=void 0;for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];o.forEach(function(s){return r._assign(s)}),Object.freeze(this)}var t=e.prototype;return t.toString=function(){return JSON.stringify(this)},t._assign=function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return n=ke("Accessor",n,Bf),n.type!==void 0&&(this.type=n.type,(n.type===a.INT||n.type===a.UNSIGNED_INT)&&(this.integer=!0)),n.size!==void 0&&(this.size=n.size),n.offset!==void 0&&(this.offset=n.offset),n.stride!==void 0&&(this.stride=n.stride),n.normalize!==void 0&&(this.normalized=n.normalize),n.normalized!==void 0&&(this.normalized=n.normalized),n.integer!==void 0&&(this.integer=n.integer),n.divisor!==void 0&&(this.divisor=n.divisor),n.buffer!==void 0&&(this.buffer=n.buffer),n.index!==void 0&&(typeof n.index=="boolean"?this.index=n.index?1:0:this.index=n.index),n.instanced!==void 0&&(this.divisor=n.instanced?1:0),n.isInstanced!==void 0&&(this.divisor=n.isInstanced?1:0),this.offset===void 0&&delete this.offset,this.stride===void 0&&delete this.stride,this.type===void 0&&delete this.type,this.size===void 0&&delete this.size,this.divisor===void 0&&delete this.divisor,this.normalized===void 0&&delete this.normalized,this.integer===void 0&&delete this.integer,this.buffer===void 0&&delete this.buffer,this.index===void 0&&delete this.index,this},y(e,[{key:"BYTES_PER_ELEMENT",get:function(){return e.getBytesPerElement(this)}},{key:"BYTES_PER_VERTEX",get:function(){return e.getBytesPerVertex(this)}}]),e}();function Mf(e){var t=Df();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function Df(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function Vi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Uf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Vi(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Vi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var ji=10,Ki={offset:"accessor.offset",stride:"accessor.stride",type:"accessor.type",size:"accessor.size",divisor:"accessor.divisor",normalized:"accessor.normalized",integer:"accessor.integer",instanced:"accessor.divisor",isInstanced:"accessor.divisor"},Yi={removedProps:{},replacedProps:{bytes:"byteLength"},deprecatedProps:Ki},xf={removedProps:Ki};function wf(e){if(ArrayBuffer.isView(e))return{data:e};if(typeof e=="number")return{byteLength:e};e=ke("Buffer",e,Yi);var t=Uf({},e);return t}var ht=function(e){x(r,e);var t=Mf(r);function r(o){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(P(this,r),i=t.call(this,ue.attach(o),wf(s)),i.accessor=void 0,i.setAccessor(Object.assign({},s,s.accessor)),i.props.data){var u=mt(i.props.data);F(u),i.setAccessor(new ve(i.accessor,{type:u}))}return Object.seal(Ae(i)),i}var n=r.prototype;return n.getElementCount=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.accessor;return Math.round(this.byteLength/ve.getBytesPerElement(i))},n.getVertexCount=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.accessor;return Math.round(this.byteLength/ve.getBytesPerVertex(i))},n.initialize=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return ArrayBuffer.isView(i)&&(i={data:i}),Number.isFinite(i)&&(i={byteLength:i}),i=ke("Buffer",i,Yi),this.glUsage=i.glUsage||a.STATIC_DRAW,this.debugData=null,this.setAccessor(Object.assign({},i,i.accessor)),i.data?this._setData(i.data,i.byteOffset,i.byteLength):this._setByteLength(i.byteLength||0),this},n.setProps=function(i){return i=ke("Buffer",i,xf),"accessor"in i&&this.setAccessor(i.accessor),this},n.setAccessor=function(i){return i=Object.assign({},i),delete i.buffer,this.accessor=new ve(i),this},n.reallocate=function(i){return i>this.byteLength?(this._setByteLength(i),!0):(this.bytesUsed=i,!1)},n.setData=function(i){return this.initialize(i)},n.subData=function(i){ArrayBuffer.isView(i)&&(i={data:i});var s=i,u=s.data,_=s.offset,c=_===void 0?0:_,E=s.srcOffset,l=E===void 0?0:E,R=i.byteLength||i.length;F(u);var d=this.gl.webgl2?a.COPY_WRITE_BUFFER:this.glTarget;return this.gl.bindBuffer(d,this.handle),l!==0||R!==void 0?(_t(this.gl),this.gl.bufferSubData(this.glTarget,c,u,l,R)):this.gl.bufferSubData(d,c,u),this.gl.bindBuffer(d,null),this.debugData=null,this._inferType(u),this},n.copyData=function(i){var s=i.sourceBuffer,u=i.readOffset,_=u===void 0?0:u,c=i.writeOffset,E=c===void 0?0:c,l=i.size,R=this.gl,d=this.gl2;return _t(R),R.bindBuffer(a.COPY_READ_BUFFER,s.handle),R.bindBuffer(a.COPY_WRITE_BUFFER,this.handle),d?.copyBufferSubData(a.COPY_READ_BUFFER,a.COPY_WRITE_BUFFER,_,E,l),R.bindBuffer(a.COPY_READ_BUFFER,null),R.bindBuffer(a.COPY_WRITE_BUFFER,null),this.debugData=null,this},n.getData=function(i){var s,u=i||{},_=u.dstData,c=_===void 0?null:_,E=u.length,l=E===void 0?0:E,R=i||{},d=R.srcByteOffset,A=d===void 0?0:d,p=R.dstOffset,h=p===void 0?0:p;_t(this.gl);var O=He(this.accessor.type||a.FLOAT,{clamped:!1}),b=this._getAvailableElementCount(A),D=h,I,L;c?(L=c.length,I=L-D):(I=Math.min(b,l||b),L=D+I);var X=Math.min(b,I);return l=l||X,F(l<=X),c=c||new O(L),this.gl.bindBuffer(a.COPY_READ_BUFFER,this.handle),(s=this.gl2)===null||s===void 0||s.getBufferSubData(a.COPY_READ_BUFFER,A,c,h,l),this.gl.bindBuffer(a.COPY_READ_BUFFER,null),c},n.bind=function(i){var s=i||{},u=s.glTarget,_=u===void 0?this.glTarget:u,c=s.index,E=c===void 0?this.accessor&&this.accessor.index:c,l=s.offset,R=l===void 0?0:l,d=s.size;if(_===a.UNIFORM_BUFFER||_===a.TRANSFORM_FEEDBACK_BUFFER)if(d!==void 0){var A;(A=this.gl2)===null||A===void 0||A.bindBufferRange(_,E,this.handle,R,d)}else{var p;F(R===0),(p=this.gl2)===null||p===void 0||p.bindBufferBase(_,E,this.handle)}else this.gl.bindBuffer(_,this.handle);return this},n.unbind=function(i){var s=i||{},u=s.glTarget,_=u===void 0?this.glTarget:u,c=s.index,E=c===void 0?this.accessor&&this.accessor.index:c,l=_===a.UNIFORM_BUFFER||_===a.TRANSFORM_FEEDBACK_BUFFER;if(l){var R;(R=this.gl2)===null||R===void 0||R.bindBufferBase(_,E,null)}else this.gl.bindBuffer(_,null);return this},n.getDebugData=function(){return this.debugData?{data:this.debugData,changed:!1}:(this.debugData=this.getData({length:Math.min(ji,this.byteLength)}),{data:this.debugData,changed:!0})},n.invalidateDebugData=function(){this.debugData=null},n._setData=function(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:i.byteLength+s;F(ArrayBuffer.isView(i)),this.trackDeallocatedMemory();var _=this._getTarget();this.gl.bindBuffer(_,this.handle),this.gl.bufferData(_,u,this.glUsage),this.gl.bufferSubData(_,s,i),this.gl.bindBuffer(_,null),this.debugData=i.slice(0,ji),this.bytesUsed=u,this.byteLength=u,this.trackAllocatedMemory(u);var c=mt(i);return F(c),this.setAccessor(new ve(this.accessor,{type:c})),this},n._setByteLength=function(i){F(i>=0),this.trackDeallocatedMemory();var s=i;i===0&&(s=new Float32Array(0));var u=this._getTarget();return this.gl.bindBuffer(u,this.handle),this.gl.bufferData(u,s,this.glUsage),this.gl.bindBuffer(u,null),this.debugData=null,this.bytesUsed=i,this.byteLength=i,this.trackAllocatedMemory(i),this},n._getTarget=function(){return this.gl.webgl2?a.COPY_WRITE_BUFFER:this.glTarget},n._getAvailableElementCount=function(i){var s=He(this.accessor.type||a.FLOAT,{clamped:!1}),u=i/s.BYTES_PER_ELEMENT;return this.getElementCount()-u},n._inferType=function(i){this.accessor.type||this.setAccessor(new ve(this.accessor,{type:mt(i)}))},n.getParameter=function(i){this.gl.bindBuffer(this.glTarget,this.handle);var s=this.gl.getBufferParameter(this.glTarget,i);return this.gl.bindBuffer(this.glTarget,null),s},y(r,[{key:"type",get:function(){return this.accessor.type}}]),r}(he);var vn=Le(xe(),1);function Sn(e,t){return{name:Xf(e,t),language:"glsl",version:Hf(e)}}function Xf(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"unnamed",r=/#define[\s*]SHADER_NAME[\s*]([A-Za-z0-9_-]+)[\s*]/,n=r.exec(e);return n?n[1]:t}function Hf(e){var t=100,r=e.match(/[^\s]+/g);if(r&&r.length>=2&&r[0]==="#version"){var n=parseInt(r[1],10);Number.isFinite(n)&&(t=n)}return t}function gn(e){return Nt(e)||Mt(e)||Ye(e)||Ct()}function Lf(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Wf(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
26
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function Wf(e,t){if(e){if(typeof e=="string")return ki(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ki(e,t)}}function ki(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Vf=["warning","error","info"];function On(e){var t=e.split(/\r?\n/),r=[],n=Lf(t),o;try{for(n.s();!(o=n.n()).done;){var i=o.value;if(!(i.length<=1)){var s=i.split(":"),u=gn(s),_=u[0],c=u[1],E=u[2],l=u.slice(3),R=parseInt(E,10);isNaN(R)&&(R=0);var d=parseInt(c,10);isNaN(d)&&(d=0);var A=_.toLowerCase(),p=Vf.includes(A)?A:"info";r.push({message:l.join(":").trim(),type:p,lineNum:R,linePos:d})}}}catch(h){n.e(h)}finally{n.f()}return r}function Gi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function jf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Gi(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Gi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Kf(e){var t=Yf();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function Yf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var br=function(e){x(r,e);var t=Kf(r);function r(o,i){var s;switch(P(this,r),s=t.call(this,o,jf({id:kf(i)},i)),s.device=void 0,s.handle=void 0,s.device=o,s.props.stage){case"vertex":s.handle=s.props.handle||s.device.gl.createShader(a.VERTEX_SHADER);break;case"fragment":s.handle=s.props.handle||s.device.gl.createShader(a.FRAGMENT_SHADER);break;default:throw new Error(s.props.stage)}return s._compile(s.source),s}var n=r.prototype;return n.destroy=function(){this.handle&&(this.removeStats(),this.device.gl.deleteShader(this.handle),this.destroyed=!0)},n.compilationInfo=function(){var o=oe(vn.default.mark(function s(){var u;return vn.default.wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return u=this.device.gl.getShaderInfoLog(this.handle),c.abrupt("return",u?On(u):[]);case 2:case"end":return c.stop()}},s,this)}));function i(){return o.apply(this,arguments)}return i}(),n._compile=function(i){var s=function(h){return h.startsWith("#version ")?h:`#version 100
27
- `.concat(h)};i=s(i);var u=this.device.gl;u.shaderSource(this.handle,i),u.compileShader(this.handle);var _=u.getShaderParameter(this.handle,a.COMPILE_STATUS);if(!_){var c=u.getShaderInfoLog(this.handle),E=c?On(c):[],l=E.filter(function(p){return p.type==="error"}),R=Wr(l,i),d=Sn(i).name,A="".concat(this.stage," shader ").concat(d);throw C.error("GLSL compilation errors in ".concat(A,`
28
- `).concat(R))(),new Error("GLSL compilation errors in ".concat(d))}},y(r)}(er);function kf(e){return Sn(e.source).name||e.id||ge("unnamed ".concat(e.stage,"-shader"))}function zi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Gf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?zi(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):zi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function zf(e){var t=Zf();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function Zf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var $f=256,Qf=1024,qf=16384,bn=6144,Nr=function(e){x(r,e);var t=zf(r);function r(o,i){var s;return P(this,r),s=t.call(this,o,i),s.device=void 0,s.glParameters=void 0,s.device=o,s.setParameters(s.props.parameters),s.clear(),s}var n=r.prototype;return n.end=function(){},n.pushDebugGroup=function(i){},n.popDebugGroup=function(){},n.insertDebugMarker=function(i){},n.setParameters=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},s={};this.props.framebuffer&&(s.framebuffer=this.props.framebuffer),this.props.depthReadOnly&&(s.depthMask=!this.props.depthReadOnly),s.stencilMask=this.props.stencilReadOnly?0:1,s[a.RASTERIZER_DISCARD]=this.props.discard,i.viewport&&(i.viewport.length>=6?(s.viewport=i.viewport.slice(0,4),s.depthRange=[i.viewport[4],i.viewport[5]]):s.viewport=i.viewport),s.scissorTest=Boolean(i.scissorRect),i.scissorRect&&(s.scissor=i.scissorRect),i.blendConstant&&(s.blendColor=i.blendConstant),i.stencilReference&&(console.warn("RenderPassParameters.stencilReference not yet implemented in WebGL"),i[a.STENCIL_REF]=i.stencilReference),this.glParameters=s},n.clear=function(){var i=this,s=Gf({},this.glParameters),u=0;this.props.clearColor!==!1&&(u|=qf,s.clearColor=this.props.clearColor),this.props.clearDepth!==!1&&(u|=$f,s.clearDepth=this.props.clearDepth),this.props.clearStencil!==!1&&(u|=Qf,s.clearStencil=this.props.clearStencil),u!==0&&Ee(this.device,s,function(){i.device.gl.clear(u)})},n.clearColorBuffer=function(){var i=this,s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0,0,0,0];Ee(this.device.gl2,{framebuffer:this.props.framebuffer},function(){switch(u.constructor){case Int32Array:i.device.gl2.clearBufferiv(bn,s,u);break;case Uint32Array:i.device.gl2.clearBufferuiv(bn,s,u);break;case Float32Array:default:i.device.gl2.clearBufferfv(bn,s,u);break}})},y(r)}(nr);var G;function Zi(e){return Jf.includes(e)}var Jf=[a.SAMPLER_2D,a.SAMPLER_CUBE,a.SAMPLER_3D,a.SAMPLER_2D_SHADOW,a.SAMPLER_2D_ARRAY,a.SAMPLER_2D_ARRAY_SHADOW,a.SAMPLER_CUBE_SHADOW,a.INT_SAMPLER_2D,a.INT_SAMPLER_3D,a.INT_SAMPLER_CUBE,a.INT_SAMPLER_2D_ARRAY,a.UNSIGNED_INT_SAMPLER_2D,a.UNSIGNED_INT_SAMPLER_3D,a.UNSIGNED_INT_SAMPLER_CUBE,a.UNSIGNED_INT_SAMPLER_2D_ARRAY],$i=(G={},f(G,a.FLOAT,[a.FLOAT,1,"float","f32","float32"]),f(G,a.FLOAT_VEC2,[a.FLOAT,2,"vec2","vec2<f32>","float32x2"]),f(G,a.FLOAT_VEC3,[a.FLOAT,3,"vec3","vec3<f32>","float32x3"]),f(G,a.FLOAT_VEC4,[a.FLOAT,4,"vec4","vec4<f32>","float32x4"]),f(G,a.INT,[a.INT,1,"int","i32","sint32"]),f(G,a.INT_VEC2,[a.INT,2,"ivec2","vec2<i32>","sint32x2"]),f(G,a.INT_VEC3,[a.INT,3,"ivec3","vec3<i32>","sint32x3"]),f(G,a.INT_VEC4,[a.INT,4,"ivec4","vec4<i32>","sint32x4"]),f(G,a.UNSIGNED_INT,[a.UNSIGNED_INT,1,"uint","u32","uint32"]),f(G,a.UNSIGNED_INT_VEC2,[a.UNSIGNED_INT,2,"uvec2","vec2<u32>","uint32x2"]),f(G,a.UNSIGNED_INT_VEC3,[a.UNSIGNED_INT,3,"uvec3","vec3<u32>","uint32x3"]),f(G,a.UNSIGNED_INT_VEC4,[a.UNSIGNED_INT,4,"uvec4","vec4<u32>","uint32x4"]),f(G,a.BOOL,[a.FLOAT,1,"bool","f32","float32"]),f(G,a.BOOL_VEC2,[a.FLOAT,2,"bvec2","vec2<f32>","float32x2"]),f(G,a.BOOL_VEC3,[a.FLOAT,3,"bvec3","vec3<f32>","float32x3"]),f(G,a.BOOL_VEC4,[a.FLOAT,4,"bvec4","vec4<f32>","float32x4"]),f(G,a.FLOAT_MAT2,[a.FLOAT,8,"mat2","mat2x2<f32>"]),f(G,a.FLOAT_MAT2x3,[a.FLOAT,8,"mat2x3","mat2x3<f32>"]),f(G,a.FLOAT_MAT2x4,[a.FLOAT,8,"mat2x4","mat2x4<f32>"]),f(G,a.FLOAT_MAT3x2,[a.FLOAT,12,"mat3x2","mat3x2<f32>"]),f(G,a.FLOAT_MAT3,[a.FLOAT,12,"mat3","mat3x3<f32>"]),f(G,a.FLOAT_MAT3x4,[a.FLOAT,12,"mat3x4","mat3x4<f32>"]),f(G,a.FLOAT_MAT4x2,[a.FLOAT,16,"mat4x2","mat4x2<f32>"]),f(G,a.FLOAT_MAT4x3,[a.FLOAT,16,"mat4x3","mat4x3<f32>"]),f(G,a.FLOAT_MAT4,[a.FLOAT,16,"mat4","mat4x4<f32>"]),G);function Nn(e){var t=$i[e];if(!t)throw new Error("uniform");var r=H(t,4),n=r[0],o=r[1],i=r[3];return{format:i,components:o,glType:n}}function Qi(e){var t=$i[e];if(!t)throw new Error("attribute");var r=H(t,5),n=r[1],o=r[3],i=r[4],s=o;return{attributeType:s,vertexFormat:i,components:n}}var ie;function qi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Ji(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?qi(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):qi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Cr(e,t){var r={attributes:[],bindings:[]};r.attributes=e_(e,t);for(var n=n_(e,t),o=0,i=n;o<i.length;o++){var s=i[o],u=s.uniforms.map(function(O){return{name:O.name,format:O.format,byteOffset:O.byteOffset,byteStride:O.byteStride,arrayLength:O.arrayLength}});r.bindings.push({type:"uniform",name:s.name,location:s.location,visibility:(s.vertex?1:0)&(s.fragment?2:0),minBindingSize:s.byteLength,uniforms:u})}for(var _=r_(e,t),c=0,E=0,l=_;E<l.length;E++){var R=l[E];if(Zi(R.type)){var d=i_(R.type),A=d.viewDimension,p=d.sampleType;r.bindings.push({type:"texture",name:R.name,location:c,viewDimension:A,sampleType:p}),R.textureUnit=c,c+=1}}_.length&&(r.uniforms=_);var h=t_(e,t);return h!=null&&h.length&&(r.varyings=h),r}function e_(e,t){for(var r=[],n=e.getProgramParameter(t,e.ACTIVE_ATTRIBUTES),o=0;o<n;o++){var i=e.getActiveAttrib(t,o);if(!i)throw new Error("activeInfo");var s=i.name,u=i.type,_=e.getAttribLocation(t,s);if(_>=0){var c=Qi(u),E=c.attributeType,l=/instance/i.test(s)?"instance":"vertex";r.push({name:s,location:_,stepMode:l,type:E})}}return r.sort(function(R,d){return R.location-d.location}),r}function t_(e,t){if(!W(e))return[];for(var r=e,n=[],o=e.getProgramParameter(t,a.TRANSFORM_FEEDBACK_VARYINGS),i=0;i<o;i++){var s=r.getTransformFeedbackVarying(t,i);if(!s)throw new Error("activeInfo");var u=s.name,_=s.type,c=s.size,E=Nn(_),l=E.glType,R=E.components,d=new ve({type:l,size:c*R}),A={location:i,name:u,accessor:d};n.push(A)}return n.sort(function(p,h){return p.location-h.location}),n}function r_(e,t){for(var r=[],n=e.getProgramParameter(t,a.ACTIVE_UNIFORMS),o=0;o<n;o++){var i=e.getActiveUniform(t,o);if(!i)throw new Error("activeInfo");var s=i.name,u=i.size,_=i.type,c=o_(s),E=c.name,l=c.isArray,R=e.getUniformLocation(t,E),d={location:R,name:E,size:u,type:_,isArray:l};if(r.push(d),d.size>1)for(var A=0;A<d.size;A++){var p="".concat(E,"[").concat(A,"]");R=e.getUniformLocation(t,p);var h=Ji(Ji({},d),{},{name:p,location:R});r.push(h)}}return r}function n_(e,t){if(!W(e))return[];for(var r=e,n=function(h,O){return r.getActiveUniformBlockParameter(t,h,O)},o=[],i=r.getProgramParameter(t,a.ACTIVE_UNIFORM_BLOCKS),s=0;s<i;s++){for(var u={name:r.getActiveUniformBlockName(t,s)||"",location:n(s,a.UNIFORM_BLOCK_BINDING),byteLength:n(s,a.UNIFORM_BLOCK_DATA_SIZE),vertex:n(s,a.UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER),fragment:n(s,a.UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER),uniformCount:n(s,a.UNIFORM_BLOCK_ACTIVE_UNIFORMS),uniforms:[]},_=n(s,a.UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES)||[],c=r.getActiveUniforms(t,_,a.UNIFORM_TYPE),E=r.getActiveUniforms(t,_,a.UNIFORM_SIZE),l=r.getActiveUniforms(t,_,a.UNIFORM_OFFSET),R=r.getActiveUniforms(t,_,a.UNIFORM_ARRAY_STRIDE),d=0;d<u.uniformCount;++d){var A=r.getActiveUniform(t,_[d]);if(!A)throw new Error("activeInfo");u.uniforms.push({name:A.name,format:Nn(c[d]).format,type:c[d],arrayLength:E[d],byteOffset:l[d],byteStride:R[d]})}o.push(u)}return o.sort(function(p,h){return p.location-h.location}),o}var a_=(ie={},f(ie,a.SAMPLER_2D,["2d","float"]),f(ie,a.SAMPLER_CUBE,["cube","float"]),f(ie,a.SAMPLER_3D,["3d","float"]),f(ie,a.SAMPLER_2D_SHADOW,["3d","depth"]),f(ie,a.SAMPLER_2D_ARRAY,["2d-array","float"]),f(ie,a.SAMPLER_2D_ARRAY_SHADOW,["2d-array","depth"]),f(ie,a.SAMPLER_CUBE_SHADOW,["cube","float"]),f(ie,a.INT_SAMPLER_2D,["2d","sint"]),f(ie,a.INT_SAMPLER_3D,["3d","sint"]),f(ie,a.INT_SAMPLER_CUBE,["cube","sint"]),f(ie,a.INT_SAMPLER_2D_ARRAY,["2d-array","uint"]),f(ie,a.UNSIGNED_INT_SAMPLER_2D,["2d","uint"]),f(ie,a.UNSIGNED_INT_SAMPLER_3D,["3d","uint"]),f(ie,a.UNSIGNED_INT_SAMPLER_CUBE,["cube","uint"]),f(ie,a.UNSIGNED_INT_SAMPLER_2D_ARRAY,["2d-array","uint"]),ie);function i_(e){var t=a_[e];if(!t)throw new Error("sampler");var r=H(t,2),n=r[0],o=r[1];return{viewDimension:n,sampleType:o}}function o_(e){if(e[e.length-1]!=="]")return{name:e,length:1,isArray:!1};var t=/([^[]*)(\[[0-9]+\])?/,r=t.exec(e);if(!r||r.length<2)throw new Error("Failed to parse GLSL uniform name ".concat(e));return{name:r[1],length:r[2]?1:0,isArray:Boolean(r[2])}}function eo(e,t,r,n){var o=e,i=n;i===!0&&(i=1),i===!1&&(i=0);var s=typeof i=="number"?[i]:i;switch(r){case a.SAMPLER_2D:case a.SAMPLER_CUBE:case a.SAMPLER_3D:case a.SAMPLER_2D_SHADOW:case a.SAMPLER_2D_ARRAY:case a.SAMPLER_2D_ARRAY_SHADOW:case a.SAMPLER_CUBE_SHADOW:case a.INT_SAMPLER_2D:case a.INT_SAMPLER_3D:case a.INT_SAMPLER_CUBE:case a.INT_SAMPLER_2D_ARRAY:case a.UNSIGNED_INT_SAMPLER_2D:case a.UNSIGNED_INT_SAMPLER_3D:case a.UNSIGNED_INT_SAMPLER_CUBE:case a.UNSIGNED_INT_SAMPLER_2D_ARRAY:if(typeof n!="number")throw new Error("samplers must be set to integers");return e.uniform1i(t,n);case a.FLOAT:return e.uniform1fv(t,s);case a.FLOAT_VEC2:return e.uniform2fv(t,s);case a.FLOAT_VEC3:return e.uniform3fv(t,s);case a.FLOAT_VEC4:return e.uniform4fv(t,s);case a.INT:return e.uniform1iv(t,s);case a.INT_VEC2:return e.uniform2iv(t,s);case a.INT_VEC3:return e.uniform3iv(t,s);case a.INT_VEC4:return e.uniform4iv(t,s);case a.BOOL:return e.uniform1iv(t,s);case a.BOOL_VEC2:return e.uniform2iv(t,s);case a.BOOL_VEC3:return e.uniform3iv(t,s);case a.BOOL_VEC4:return e.uniform4iv(t,s);case a.UNSIGNED_INT:return o.uniform1uiv(t,s,1);case a.UNSIGNED_INT_VEC2:return o.uniform2uiv(t,s,2);case a.UNSIGNED_INT_VEC3:return o.uniform3uiv(t,s,3);case a.UNSIGNED_INT_VEC4:return o.uniform4uiv(t,s,4);case a.FLOAT_MAT2:return e.uniformMatrix2fv(t,!1,s);case a.FLOAT_MAT3:return e.uniformMatrix3fv(t,!1,s);case a.FLOAT_MAT4:return e.uniformMatrix4fv(t,!1,s);case a.FLOAT_MAT2x3:return o.uniformMatrix2x3fv(t,!1,s);case a.FLOAT_MAT2x4:return o.uniformMatrix2x4fv(t,!1,s);case a.FLOAT_MAT3x2:return o.uniformMatrix3x2fv(t,!1,s);case a.FLOAT_MAT3x4:return o.uniformMatrix3x4fv(t,!1,s);case a.FLOAT_MAT4x2:return o.uniformMatrix4x2fv(t,!1,s);case a.FLOAT_MAT4x3:return o.uniformMatrix4x3fv(t,!1,s)}throw new Error("Illegal uniform")}var no;function to(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function ro(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?to(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):to(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function s_(e){var t=u_();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function u_(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var f_="elements must be GL.ELEMENT_ARRAY_BUFFER";no=Symbol.toStringTag;var Ir=function(e){x(r,e);var t=s_(r);r.isConstantAttributeZeroSupported=function(i){return i.info.type==="webgl2"||Ot()==="Chrome"};function r(o,i){var s;return P(this,r),s=t.call(this,o,i,ro(ro({},j.defaultProps),{},{constantAttributeZero:!1})),s.buffer=null,s.bufferValue=null,Object.seal(Ae(s)),s}var n=r.prototype;return n.destroy=function(){if(Xe(v(r.prototype),"destroy",this).call(this),this.buffer){var i;(i=this.buffer)===null||i===void 0||i.destroy()}},n._createHandle=function(){return this.gl2.createVertexArray()},n._deleteHandle=function(){return this.gl2.deleteVertexArray(this.handle),[this.elements]},n._bindHandle=function(i){this.gl2.bindVertexArray(i)},n.enable=function(i){var s=this,u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,_=this.device.isWebGL2||Ot()==="Chrome",c=_||i!==0;(u||c)&&(i=Number(i),this.bind(function(){return u?s.gl.enableVertexAttribArray(i):s.gl.disableVertexAttribArray(i)}))},n.setElementBuffer=function(){var i=this,s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null,u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};F(!s||s.glTarget===a.ELEMENT_ARRAY_BUFFER,f_),this.bind(function(){i.gl.bindBuffer(a.ELEMENT_ARRAY_BUFFER,s?s.handle:null)})},n.setBuffer=function(i,s,u){var _=this;if(s.glTarget===a.ELEMENT_ARRAY_BUFFER){this.setElementBuffer(s,u);return}var c=u.size,E=u.type,l=u.stride,R=u.offset,d=u.normalized,A=u.integer,p=u.divisor,h=this.gl,O=this.gl2;i=Number(i),this.bind(function(){h.bindBuffer(h.ARRAY_BUFFER,s.handle),A?(_.device.assertWebGL2(),O.vertexAttribIPointer(i,c,E,l,R)):h.vertexAttribPointer(i,c,E,d,l,R),h.enableVertexAttribArray(i),O.vertexAttribDivisor(i,p||0)})},n.setConstant=function(i,s){switch(s.constructor){case Float32Array:__(this.device,i,s);break;case Int32Array:c_(this.device,i,s);break;case Uint32Array:E_(this.device,i,s);break;default:F(!1)}},n.getConstantBuffer=function(i,s){var u=l_(s),_=u.byteLength*i,c=u.length*i,E=!this.buffer;if(this.buffer=this.buffer||this.device.createBuffer({byteLength:_}),E=E||this.buffer.reallocate(_),E=E||!R_(u,this.bufferValue),E){var l=zr(s.constructor,c);Zr({target:l,source:u,start:0,count:c}),this.buffer.subData(l),this.bufferValue=s}return this.buffer},y(r,[{key:no,get:function(){return"BaseVertexArrayObject"}}]),r}(Je);function __(e,t,r){switch(r.length){case 1:e.gl.vertexAttrib1fv(t,r);break;case 2:e.gl.vertexAttrib2fv(t,r);break;case 3:e.gl.vertexAttrib3fv(t,r);break;case 4:e.gl.vertexAttrib4fv(t,r);break;default:F(!1)}}function c_(e,t,r){var n;e.assertWebGL2(),(n=e.gl2)===null||n===void 0||n.vertexAttribI4iv(t,r)}function E_(e,t,r){var n;e.assertWebGL2(),(n=e.gl2)===null||n===void 0||n.vertexAttribI4uiv(t,r)}function l_(e){return Array.isArray(e)?new Float32Array(e):e}function R_(e,t){if(!e||!t||e.length!==t.length||e.constructor!==t.constructor)return!1;for(var r=0;r<e.length;++r)if(e[r]!==t[r])return!1;return!0}function ao(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=d_(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
29
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function d_(e,t){if(e){if(typeof e=="string")return io(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return io(e,t)}}function io(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function T_(e){var t=A_();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function A_(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var oo=4,Pr=function(e){x(r,e);var t=T_(r);function r(o,i){var s;P(this,r),s=t.call(this,o,i),s.device=void 0,s.handle=void 0,s.vs=void 0,s.fs=void 0,s.introspectedLayout=void 0,s.shaderLayout=void 0,s.bufferLayout=void 0,s.uniforms={},s.bindings={},s.constantAttributes={},s._indexBuffer=void 0,s.varyings=null,s.vertexArrayObject=void 0,s._textureUniforms={},s._textureIndexCounter=0,s._uniformCount=0,s._uniformSetters={},s.device=o,s.handle=s.props.handle||s.device.gl.createProgram(),s.device.setSpectorMetadata(s.handle,{id:s.props.id}),s.vs=i.vs,s.fs=i.fs;var u=i.varyings,_=i.bufferMode,c=_===void 0?a.SEPARATE_ATTRIBS:_;if(u&&u.length>0){var E;s.device.assertWebGL2(),s.varyings=u,(E=s.device.gl2)===null||E===void 0||E.transformFeedbackVaryings(s.handle,u,c)}return s._compileAndLink(),s.introspectedLayout=Cr(s.device.gl,s.handle),s.shaderLayout=jr(s.introspectedLayout,i.shaderLayout),s.bufferLayout=i.bufferLayout||[],s.vertexArrayObject=new Ir(s.device),s}var n=r.prototype;return n.destroy=function(){this.handle&&(this.device.gl.deleteProgram(this.handle),this.destroyed=!0)},n.setIndexBuffer=function(i){var s=i;this.vertexArrayObject.setElementBuffer(s),this._indexBuffer=s},n.setAttributes=function(i){for(var s=ur(this.shaderLayout,this.bufferLayout),u=0,_=Object.entries(i);u<_.length;u++){for(var c=H(_[u],2),E=c[0],l=c[1],R=!1,d=0,A=Object.values(s);d<A.length;d++){var p=A[d];if(p.bufferName===E){var h=l,O=Rr(p.bufferDataType);C.log(2,{setAttribute:p.attributeName,toBuffer:E,size:p.bufferComponents,type:O,stride:p.byteStride,offset:p.byteOffset,normalized:p.normalized,integer:p.integer,divisor:p.stepMode==="instance"?1:0})(),this.vertexArrayObject.setBuffer(p.location,h,{size:p.bufferComponents,type:O,stride:p.byteStride,offset:p.byteOffset,normalized:p.normalized,integer:p.integer,divisor:p.stepMode==="instance"?1:0}),R=!0}}R||C.warn('setAttributes(): Ignoring (buffer "'.concat(l.id,'" for unknown attribute "').concat(name,'" in pipeline "').concat(this.id,'"'))()}},n.setConstantAttributes=function(i){Object.assign(this.constantAttributes,i)},n.setBindings=function(i){for(var s=this,u=function(){var R=H(c[_],2),d=R[0],A=R[1],p=s.shaderLayout.bindings.find(function(h){return h.name===d});if(!p)return C.warn("Unknown binding ".concat(d," in render pipeline ").concat(s.id))(),"continue";switch(A||C.warn("Unsetting binding ".concat(d," in render pipeline ").concat(s.id))(),p.type){case"uniform":if(!(A instanceof he)&&!(A.buffer instanceof he))throw new Error("buffer value");break;case"texture":if(!(A instanceof Se))throw new Error("texture value");break;case"sampler":C.warn("Ignoring sampler ".concat(d))();break;default:throw new Error(p.type)}s.bindings[d]=A},_=0,c=Object.entries(i);_<c.length;_++)var E=u()},n.setUniforms=function(i){Object.assign(this.uniforms,i)},n.draw=function(i){var s,u=this,_=i.renderPass,c=i.vertexCount,E=i.instanceCount,l=i.firstVertex,R=l===void 0?0:l,d=p_(this.props.topology),A=Boolean(this._indexBuffer),p=(s=this._indexBuffer)===null||s===void 0?void 0:s.glIndexType,h=Number(i.instanceCount)>0;return!this._areTexturesRenderable()||i.vertexCount===0?!1:(this.device.gl.useProgram(this.handle),this.vertexArrayObject.bind(function(){var O=m_(u.props.topology),b=null;b&&b.begin(O),u._applyBindings(),u._applyUniforms(),u._applyConstantAttributes();var D=_;mr(u.device,u.props.parameters,function(){pi(u.device,D.glParameters,function(){if(A&&h){var I;(I=u.device.gl2)===null||I===void 0||I.drawElementsInstanced(d,c||0,p,R,E||0)}else if(A)u.device.gl.drawElements(d,c||0,p,R);else if(h){var L;(L=u.device.gl2)===null||L===void 0||L.drawArraysInstanced(d,R,c||0,E||0)}else u.device.gl.drawArrays(d,R,c||0)}),b&&b.end()})}),!0)},n._compileAndLink=function(){var i=this.device.gl;if(i.attachShader(this.handle,this.vs.handle),i.attachShader(this.handle,this.fs.handle),C.time(oo,"linkProgram for ".concat(this.id))(),i.linkProgram(this.handle),C.timeEnd(oo,"linkProgram for ".concat(this.id))(),i.debug||C.level>0){var s=i.getProgramParameter(this.handle,i.LINK_STATUS);if(!s)throw new Error("Error linking: ".concat(i.getProgramInfoLog(this.handle)));i.validateProgram(this.handle);var u=i.getProgramParameter(this.handle,i.VALIDATE_STATUS);if(!u)throw new Error("Error validating: ".concat(i.getProgramInfoLog(this.handle)))}},n._areTexturesRenderable=function(){for(var i=!0,s=0,u=Object.entries(this._textureUniforms);s<u.length;s++){var _=H(u[s],2),c=_[1];c.update(),i=i&&c.loaded}for(var E=0,l=Object.entries(this.bindings);E<l.length;E++){var R=H(l[E],2),d=R[1];d.loaded!==void 0&&(i=i&&d.loaded)}return i},n._applyConstantAttributes=function(){for(var i=ur(this.shaderLayout,this.bufferLayout),s=0,u=Object.entries(this.constantAttributes);s<u.length;s++){var _=H(u[s],2),c=_[0],E=_[1],l=i[c];if(!l){C.warn('Ignoring constant value supplied for unknown attribute "'.concat(c,'" in pipeline "').concat(this.id,'"'))();continue}this.vertexArrayObject.setConstant(l.location,E),this.vertexArrayObject.enable(l.location,!1)}},n._applyBindings=function(){this.device.gl.useProgram(this.handle);var i=this.device.gl2;if(!i)throw new Error("bindings");var s=0,u=0,_=ao(this.shaderLayout.bindings),c;try{for(_.s();!(c=_.n()).done;){var E=c.value,l=this.bindings[E.name];if(!l)throw new Error("No value for binding ".concat(E.name," in ").concat(this.id));switch(E.type){case"uniform":var R=E.name,d=i.getUniformBlockIndex(this.handle,R);if(d===a.INVALID_INDEX)throw new Error("Invalid uniform block name ".concat(R));i.uniformBlockBinding(this.handle,u,d),l instanceof he?i.bindBufferBase(a.UNIFORM_BUFFER,u,l.handle):i.bindBufferRange(a.UNIFORM_BUFFER,u,l.buffer.handle,l.offset||0,l.size||l.buffer.byteLength-l.offset),u+=1;break;case"texture":if(!(l instanceof Se))throw new Error("texture");var A=l;i.activeTexture(a.TEXTURE0+s),i.bindTexture(A.target,A.handle),s+=1;break;case"sampler":break;case"storage":case"read-only-storage":throw new Error("binding type '".concat(E.type,"' not supported in WebGL"))}}}catch(p){_.e(p)}finally{_.f()}},n._applyUniforms=function(){var i=ao(this.shaderLayout.uniforms||[]),s;try{for(i.s();!(s=i.n()).done;){var u,_=s.value,c=_.name,E=_.location,l=_.type,R=_.textureUnit,d=(u=this.uniforms[c])!==null&&u!==void 0?u:R;d!==void 0&&eo(this.device.gl,E,l,d)}}catch(A){i.e(A)}finally{i.f()}},y(r)}(rr);function p_(e){switch(e){case"point-list":return a.POINTS;case"line-list":return a.LINES;case"line-strip":return a.LINE_STRIP;case"line-loop-webgl":return a.LINE_LOOP;case"triangle-list":return a.TRIANGLES;case"triangle-strip":return a.TRIANGLE_STRIP;case"triangle-fan-webgl":return a.TRIANGLE_FAN;default:throw new Error(e)}}function m_(e){switch(e){case"point-list":return a.POINTS;case"line-list":return a.LINES;case"line-strip":return a.LINES;case"line-loop-webgl":return a.LINES;case"triangle-list":return a.TRIANGLES;case"triangle-strip":return a.TRIANGLES;case"triangle-fan-webgl":return a.TRIANGLES;default:throw new Error(e)}}function h_(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=S_(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
30
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function S_(e,t){if(e){if(typeof e=="string")return so(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return so(e,t)}}function so(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function g_(e){var t=O_();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function O_(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var uo=function(e){x(r,e);var t=g_(r);function r(o){var i;return P(this,r),i=t.call(this,{}),i.device=void 0,i.commands=[],i.device=o,i}var n=r.prototype;return n.submitCommands=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.commands,s=h_(i),u;try{for(s.s();!(u=s.n()).done;){var _=u.value;switch(_.name){case"copy-buffer-to-buffer":v_(this.device,_.options);break;case"copy-buffer-to-texture":b_(this.device,_.options);break;case"copy-texture-to-buffer":N_(this.device,_.options);break;case"copy-texture-to-texture":C_(this.device,_.options);break}}}catch(c){s.e(c)}finally{s.f()}},y(r)}(ir);function v_(e,t){var r=t.source,n=t.destination,o=e.assertWebGL2();if(o){var i,s;o.bindBuffer(a.COPY_READ_BUFFER,r.handle),o.bindBuffer(a.COPY_WRITE_BUFFER,n.handle),o.copyBufferSubData(a.COPY_READ_BUFFER,a.COPY_WRITE_BUFFER,(i=t.sourceOffset)!==null&&i!==void 0?i:0,(s=t.destinationOffset)!==null&&s!==void 0?s:0,t.size),o.bindBuffer(a.COPY_READ_BUFFER,null),o.bindBuffer(a.COPY_WRITE_BUFFER,null)}else throw new Error("copyBufferToBuffer not implemented in WebGL1")}function b_(e,t){throw new Error("Not implemented")}function N_(e,t){var r=t.source,n=t.mipLevel,o=n===void 0?0:n,i=t.aspect,s=i===void 0?"all":i,u=t.width,_=u===void 0?t.source.width:u,c=t.height,E=c===void 0?t.source.height:c,l=t.depthOrArrayLayers,R=l===void 0?0:l,d=t.origin,A=d===void 0?[0,0]:d,p=t.destination,h=t.byteOffset,O=h===void 0?0:h,b=t.bytesPerRow,D=t.rowsPerImage;if(s!=="all")throw new Error("not supported");if(o!==0||R!==void 0||b||D)throw new Error("not implemented");var I=e.assertWebGL2(),L=fo(r),X=L.framebuffer,$=L.destroyFramebuffer;try{var z=p,ne=_||X.width,K=E||X.height,S=a.RGBA,T=a.UNSIGNED_BYTE;I.bindBuffer(a.PIXEL_PACK_BUFFER,z.handle),I.bindFramebuffer(a.FRAMEBUFFER,X.handle),I.readPixels(A[0],A[1],ne,K,S,T,O)}finally{I.bindBuffer(a.PIXEL_PACK_BUFFER,null),I.bindFramebuffer(a.FRAMEBUFFER,null),$&&X.destroy()}}function C_(e,t){var r=t.source,n=t.origin,o=n===void 0?[0,0]:n,i=t.destination,s=t.width,u=s===void 0?t.destination.width:s,_=t.height,c=_===void 0?t.destination.width:_,E=0,l=a.RGBA,R=fo(r),d=R.framebuffer,A=R.destroyFramebuffer,p=H(o,2),h=p[0],O=p[1],b=!1;e.gl.bindFramebuffer(a.FRAMEBUFFER,d.handle);var D=null,I;if(i instanceof Se)D=i,u=Number.isFinite(u)?u:D.width,c=Number.isFinite(c)?c:D.height,D.bind(0),I=D.destination;else throw new Error("whoops");return b||e.gl.copyTexImage2D(I,E,l,h,O,u,c,0),D&&D.unbind(),e.gl.bindFramebuffer(a.FRAMEBUFFER,prevHandle||null),A&&d.destroy(),D}function fo(e){if(e instanceof se){var t=e.width,r=e.height,n=e.id,o=e.device.createFramebuffer({id:"framebuffer-for-".concat(n),width:t,height:r,colorAttachments:[e]});return{framebuffer:o,destroyFramebuffer:!0}}return{framebuffer:e,destroyFramebuffer:!1}}function I_(e){var t=P_();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function P_(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var yr=function(e){x(r,e);var t=I_(r);function r(o,i){var s;return P(this,r),s=t.call(this,o,i),s.device=void 0,s.commandBuffer=void 0,s.device=o,s.commandBuffer=new uo(o),s}var n=r.prototype;return n.destroy=function(){},n.finish=function(){this.commandBuffer.submitCommands()},n.copyBufferToBuffer=function(i){this.commandBuffer.commands.push({name:"copy-buffer-to-buffer",options:i})},n.copyBufferToTexture=function(i){this.commandBuffer.commands.push({name:"copy-buffer-to-texture",options:i})},n.copyTextureToBuffer=function(i){this.commandBuffer.commands.push({name:"copy-texture-to-buffer",options:i})},n.copyTextureToTexture=function(i){this.commandBuffer.commands.push({name:"copy-texture-to-texture",options:i})},n.pushDebugGroup=function(i){},n.popDebugGroup=function(){},n.insertDebugMarker=function(i){},y(r)}(ar);function _o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function ye(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?_o(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):_o(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function y_(e){var t=F_();return function(){var n=v(e),o;if(t){var i=v(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return w(this,o)}}function F_(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var Fr=1,ue=function(e){x(r,e);var t=y_(r);r.isSupported=function(){return typeof WebGLRenderingContext<"u"||Un()},r.attach=function(i){if(i instanceof r)return i;if(i?.device instanceof bt)return i.device;if(!B_(i))throw new Error("Invalid WebGLRenderingContext");return new r({gl:i})},r.create=function(){var o=oe(Cn.default.mark(function s(){var u,_,c=arguments;return Cn.default.wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(u=c.length>0&&c[0]!==void 0?c[0]:{},C.groupCollapsed(Fr,"WebGLDevice created"),typeof u.canvas!="string"){l.next=5;break}return l.next=5,ot.pageLoaded;case 5:if(!(C.get("debug")||u.debug)){l.next=8;break}return l.next=8,Li();case 8:if(_=u.spector,!(C.get("spector")||_)){l.next=12;break}return l.next=12,Di();case 12:if(C.probe(Fr+1,"DOM is loaded")(),!(u.gl&&u.gl.device)){l.next=15;break}return l.abrupt("return",r.attach(u.gl));case 15:return l.abrupt("return",new r(u));case 16:case"end":return l.stop()}},s)}));function i(){return o.apply(this,arguments)}return i}();function r(o){var i,s;P(this,r),s=t.call(this,ye(ye({},o),{},{id:o.id||ge("webgl-device")})),s.info=void 0,s.canvasContext=void 0,s.handle=void 0,s.lost=void 0,s._resolveContextLost=void 0,s._features=void 0,s._limits=void 0,s.renderPass=null,s.gl=void 0,s.gl2=null,s.debug=!1,s.isWebGL1=void 0,s.isWebGL2=void 0,s._canvasSizeInfo={clientWidth:0,clientHeight:0,devicePixelRatio:1},s._extensions={},s._polyfilled=!1,s.spector=void 0,s._webglLimits=void 0;var u=(i=o.gl)===null||i===void 0?void 0:i.device;if(u)throw new Error("WebGL context already attached to device ".concat(u.id));s.canvasContext=new vr(Ae(s),o),s.lost=new Promise(function(h){s._resolveContextLost=h});var _=function(O){var b,D;return(b=(D=s)._resolveContextLost)===null||b===void 0?void 0:b.call(D,{reason:"destroyed",message:"Computer entered sleep mode, or too many apps or browser tabs are using the GPU."})},c=o.gl||null;if(c=c||(q()?ai(s.canvasContext.canvas,ye(ye({},o),{},{onContextLost:_})):null),c=c||(q()?null:xn(ye(ye({},o),{},{onContextLost:_}))),!c)throw new Error("WebGL context creation failed");s.handle=c,s.gl=s.handle,s.gl2=s.gl,s.isWebGL2=M_(s.gl),s.isWebGL1=!s.isWebGL2,s.info=ii(s.gl),s.gl.device=Ae(s),s.gl._version=s.isWebGL2?2:1,Er(s.gl);var E=o.enable,l=E===void 0?!0:E,R=o.copyState,d=R===void 0?!1:R;if(xt(s.gl,{enable:l,copyState:d,log:function(){for(var O=arguments.length,b=new Array(O),D=0;D<O;D++)b[D]=arguments[D];return C.log.apply(C,[1].concat(b))()}}),q()&&o.debug&&(s.gl=Wi(s.gl,ye(ye({},o),{},{webgl2:s.isWebGL2,throwOnError:!0})),s.gl2=s.gl,s.debug=!0,C.level=Math.max(C.level,1),C.warn("WebGL debug mode activated. Performance reduced.")()),q()&&o.spector){var A=s.handle.canvas||o.canvas;s.spector=Ui(ye(ye({},s.props),{},{canvas:A}))}var p="Created ".concat(s.info.type).concat(s.debug?" debug":""," context: ").concat(s.info.vendor,", ").concat(s.info.renderer," for canvas: ").concat(s.canvasContext.id);return C.probe(Fr,p)(),C.groupEnd(Fr)(),s}var n=r.prototype;return n.destroy=function(){var i=this.gl.getExtension("STACKGL_destroy_context");i&&i.destroy()},n.getSize=function(){return[this.gl.drawingBufferWidth,this.gl.drawingBufferHeight]},n.isTextureFormatSupported=function(i){return Lt(this.gl,i)},n.isTextureFormatFilterable=function(i){return _i(this.gl,i)},n.isTextureFormatRenderable=function(i){return ci(this.gl,i)},n.assertWebGL2=function(){if(!this.gl2)throw new Error("Requires WebGL2");return this.gl2},n.createCanvasContext=function(i){throw new Error("WebGL only supports a single canvas")},n.createBuffer=function(i){var s=this._getBufferProps(i);return new ht(this,s)},n._createTexture=function(i){return new Se(this,i)},n.createExternalTexture=function(i){throw new Error("createExternalTexture() not implemented")},n.createSampler=function(i){return new qe(this,i)},n.createShader=function(i){return new br(this,i)},n.createFramebuffer=function(i){return new At(this,i)},n.createRenderPipeline=function(i){return new Pr(this,i)},n.beginRenderPass=function(i){return new Nr(this,i)},n.createComputePipeline=function(i){throw new Error("ComputePipeline not supported in WebGL")},n.beginComputePass=function(i){throw new Error("compute shaders not supported in WebGL")},n.getDefaultRenderPass=function(){return this.renderPass=this.renderPass||this.beginRenderPass({framebuffer:this.canvasContext.getCurrentFramebuffer()}),this.renderPass},n.createCommandEncoder=function(i){return new yr(this,i)},n.submit=function(){var i;(i=this.renderPass)===null||i===void 0||i.end(),this.renderPass=null},n.loseDevice=function(){var i,s=!1,u=this.gl.getExtension("WEBGL_lose_context");return u&&(s=!0,u.loseContext()),(i=this._resolveContextLost)===null||i===void 0||i.call(this,{reason:"destroyed",message:"Application triggered context loss"}),s},n.pushState=function(){De(this.gl)},n.popState=function(){Ce(this.gl)},n.setSpectorMetadata=function(i,s){i.__SPECTOR_Metadata=s},n.getGLKey=function(i,s){s=s||this.gl2||this.gl;var u=Number(i);for(var _ in s)if(s[_]===u)return"GL.".concat(_);return String(i)},y(r,[{key:"features",get:function(){return this._features=this._features||Ri(this.gl),this._features}},{key:"limits",get:function(){return this._limits=this._limits||Ti(this.gl),this._limits}},{key:"isLost",get:function(){return this.gl.isContextLost()}},{key:"webglLimits",get:function(){return this._webglLimits=this._webglLimits||Ai(this.gl),this._webglLimits}}]),r}(bt);ue.type="webgl";function B_(e){return typeof WebGLRenderingContext<"u"&&e instanceof WebGLRenderingContext||typeof WebGL2RenderingContext<"u"&&e instanceof WebGL2RenderingContext?!0:Boolean(e&&Number.isFinite(e._version))}function M_(e){return typeof WebGL2RenderingContext<"u"&&e instanceof WebGL2RenderingContext?!0:Boolean(e&&e._version===2)}var D_=256,U_=1024,x_=16384;var w_="clear: bad arguments";function co(e,t){var r=ue.attach(e),n=t||{},o=n.framebuffer,i=o===void 0?null:o,s=n.color,u=s===void 0?null:s,_=n.depth,c=_===void 0?null:_,E=n.stencil,l=E===void 0?null:E,R={};i&&(R.framebuffer=i);var d=0;u&&(d|=x_,u!==!0&&(R.clearColor=u)),c&&(d|=D_,c!==!0&&(R.clearDepth=c)),l&&(d|=U_,c!==!0&&(R.clearStencil=c)),F(d!==0,w_),Ee(r.gl,R,function(){r.gl.clear(d)})}function In(e){switch(e){case a.ALPHA:case a.R32F:case a.RED:return 1;case a.RG32F:case a.RG:return 2;case a.RGB:case a.RGB32F:return 3;case a.RGBA:case a.RGBA32F:return 4;default:return F(!1),0}}function Eo(e){switch(e){case a.UNSIGNED_BYTE:return 1;case a.UNSIGNED_SHORT_5_6_5:case a.UNSIGNED_SHORT_4_4_4_4:case a.UNSIGNED_SHORT_5_5_5_1:return 2;case a.FLOAT:return 4;default:return F(!1),0}}function lo(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Ro(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?lo(Object(r),!0).forEach(function(n){f(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):lo(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function To(e,t){var r=t||{},n=r.sourceX,o=n===void 0?0:n,i=r.sourceY,s=i===void 0?0:i,u=r.sourceFormat,_=u===void 0?a.RGBA:u,c=t||{},E=c.sourceAttachment,l=E===void 0?a.COLOR_ATTACHMENT0:E,R=c.target,d=R===void 0?null:R,A=c.sourceWidth,p=c.sourceHeight,h=c.sourceType,O=Pn(e),b=O.framebuffer,D=O.deleteFramebuffer;F(b);var I=b,L=I.gl,X=I.handle;A=A||b.width,p=p||b.height,l===a.COLOR_ATTACHMENT0&&X===null&&(l=a.FRONT);var $=l-a.COLOR_ATTACHMENT0;h=h||b.colorAttachments[$].type,d=H_(d,h,_,A,p),h=h||mt(d);var z=L.bindFramebuffer(a.FRAMEBUFFER,X);return L.readPixels(o,s,A,p,_,h,d),L.bindFramebuffer(a.FRAMEBUFFER,z||null),D&&b.destroy(),d}function Ao(e,t){var r=t||{},n=r.sourceX,o=n===void 0?0:n,i=r.sourceY,s=i===void 0?0:i,u=r.sourceFormat,_=u===void 0?a.RGBA:u,c=r.targetByteOffset,E=c===void 0?0:c,l=t||{},R=l.target,d=l.sourceWidth,A=l.sourceHeight,p=l.sourceType,h=Pn(e),O=h.framebuffer,b=h.deleteFramebuffer;F(O),d=d||O.width,A=A||O.height;var D=O,I=D.device.assertWebGL2();if(p=p||(R?R.type:a.UNSIGNED_BYTE),!R){var L=In(_),X=Eo(p),$=E+d*A*L*X;R=new ht(I,{byteLength:$,accessor:{type:p,size:L}})}return R.bind({glTarget:a.PIXEL_PACK_BUFFER}),Ee(I,{framebuffer:O},function(){I.readPixels(o,s,d,A,_,p,E)}),R.unbind({glTarget:a.PIXEL_PACK_BUFFER}),b&&O.destroy(),R}function po(e,t,r){var n=r||{},o=n.sourceX,i=o===void 0?0:o,s=n.sourceY,u=s===void 0?0:s,_=n.targetMipmaplevel,c=_===void 0?0:_,E=n.targetInternalFormat,l=E===void 0?a.RGBA:E,R=r||{},d=R.targetX,A=R.targetY,p=R.targetZ,h=R.width,O=R.height,b=Pn(e),D=b.framebuffer,I=b.deleteFramebuffer;F(D);var L=D,X=L.device,$=L.handle,z=typeof d<"u"||typeof A<"u"||typeof p<"u";d=d||0,A=A||0,p=p||0;var ne=X.gl.bindFramebuffer(a.FRAMEBUFFER,$);F(t);var K=null,S;if(t instanceof se?(K=t,h=Number.isFinite(h)?h:K.width,O=Number.isFinite(O)?O:K.height,K.bind(0),S=K.target):S=t,!z)X.gl.copyTexImage2D(S,c,l,i,u,h,O,0);else switch(S){case a.TEXTURE_2D:case a.TEXTURE_CUBE_MAP:X.gl.copyTexSubImage2D(S,c,d,A,i,u,h,O);break;case a.TEXTURE_2D_ARRAY:case a.TEXTURE_3D:X.assertWebGL2(),X.gl2.copyTexSubImage3D(S,c,d,A,p,i,u,h,O);break;default:}return K&&K.unbind(),gl.bindFramebuffer(a.FRAMEBUFFER,ne||null),I&&D.destroy(),K}function Pn(e){return e instanceof ut?{framebuffer:e,deleteFramebuffer:!1}:{framebuffer:X_(e),deleteFramebuffer:!0}}function X_(e,t){var r=e.device,n=e.width,o=e.height,i=e.id,s=r.createFramebuffer(Ro(Ro({},t),{},{id:"framebuffer-for-".concat(i),width:n,height:o,colorAttachments:[e]}));return s}function H_(e,t,r,n,o){if(e)return e;t=t||a.UNSIGNED_BYTE;var i=He(t,{clamped:!1}),s=In(r);return new i(n*o*s)}return Co(L_);})();
15
+ `)}function Ks(e,t){for(var r="",n=t-2;n<=t;n++){var o=e[n];o!==void 0&&(r+="".concat(Ys(String(n),4),": ").concat(o,`
16
+ `))}return r}function Ys(e,t){for(var r="",n=e.length;n<t;++n)r+=" ";return r+e}function kr(e,t,r,n){var o="See luma.gl ".concat(r," Upgrade Guide at https://luma.gl/docs/upgrade-guide"),i=Object.getPrototypeOf(e);n.forEach(function(s){i.methodName||(i[s]=function(){throw C.removed("Calling removed method ".concat(t,".").concat(s,": "),o)(),new Error(s)})})}function ke(e,t,r){var n=r.removedProps,o=n===void 0?{}:n,i=r.deprecatedProps,s=i===void 0?{}:i,u=r.replacedProps,f=u===void 0?{}:u;for(var c in o)if(c in t){var E=o[c],R=E?"".concat(e,".").concat(o[c]):"N/A";C.removed("".concat(e,".").concat(c),R)()}for(var l in s)if(l in t){var d=s[l];C.deprecated("".concat(e,".").concat(l),"".concat(e,".").concat(d))()}for(var A=null,m=0,g=Object.entries(f);m<g.length;m++){var v=L(g[m],2),N=v[0],y=v[1];N in t&&(C.deprecated("".concat(e,".").concat(N),"".concat(e,".").concat(y))(),A=A||Object.assign({},t),A[y]=t[N],delete A[N])}return A||t}var Nt=He(Ue(),1),ks="";function $r(e,t){return Gr.apply(this,arguments)}function Gr(){return Gr=oe(Nt.default.mark(function e(t,r){return Nt.default.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:return o.abrupt("return",new Promise(function(i,s){try{var u=new Image;u.onload=function(){return i(u)},u.onerror=function(){return s(new Error("Could not load image ".concat(t,".")))},u.crossOrigin=r?.crossOrigin||"anonymous",u.src=t.startsWith("http")?t:ks+t}catch(f){s(f)}}));case 1:case"end":return o.stop()}},e)})),Gr.apply(this,arguments)}function Ct(e,t){return zr.apply(this,arguments)}function zr(){return zr=oe(Nt.default.mark(function e(t,r){var n,o;return Nt.default.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(n=document.getElementsByTagName("head")[0],n){s.next=3;break}throw new Error("loadScript");case 3:return o=document.createElement("script"),o.setAttribute("type","text/javascript"),o.setAttribute("src",t),r&&(o.id=r),s.abrupt("return",new Promise(function(u,f){o.onload=u,o.onerror=function(c){return f(new Error("Unable to load script '".concat(t,"': ").concat(c)))},n.appendChild(o)}));case 8:case"end":return s.stop()}},e)})),zr.apply(this,arguments)}var It={};function Gs(e){globalThis.console&&globalThis.console.error&&globalThis.console.error(e)}function zs(e){globalThis.console&&globalThis.console.log&&globalThis.console.log(e)}function $s(e,t){It[e]=!0,t!==void 0&&Gs(t)}function Zs(e){var t=e.getError;e.getError=function(){var n;do n=t.apply(e),n!==e.NO_ERROR&&(It[n]=!0);while(n!==e.NO_ERROR);for(n in It)if(It[n])return delete It[n],parseInt(n,10);return e.NO_ERROR}}var Pt=function e(t){var r=t.gl;this.ext=t,this.isAlive=!0,this.hasBeenBound=!1,this.elementArrayBuffer=null,this.attribs=new Array(t.maxVertexAttribs);for(var n=0;n<this.attribs.length;n++){var o=new e.VertexAttrib(r);this.attribs[n]=o}this.maxAttrib=0};Pt.VertexAttrib=function(t){this.enabled=!1,this.buffer=null,this.size=4,this.type=t.FLOAT,this.normalized=!1,this.stride=16,this.offset=0,this.cached="",this.recache()};Pt.VertexAttrib.prototype.recache=function(){this.cached=[this.size,this.type,this.normalized,this.stride,this.offset].join(":")};var Ge=function(t){var r=this;this.gl=t,Zs(t);var n=this.original={getParameter:t.getParameter,enableVertexAttribArray:t.enableVertexAttribArray,disableVertexAttribArray:t.disableVertexAttribArray,bindBuffer:t.bindBuffer,getVertexAttrib:t.getVertexAttrib,vertexAttribPointer:t.vertexAttribPointer};t.getParameter=function(i){return i===r.VERTEX_ARRAY_BINDING_OES?r.currentVertexArrayObject===r.defaultVertexArrayObject?null:r.currentVertexArrayObject:n.getParameter.apply(this,arguments)},t.enableVertexAttribArray=function(i){var s=r.currentVertexArrayObject;s.maxAttrib=Math.max(s.maxAttrib,i);var u=s.attribs[i];return u.enabled=!0,n.enableVertexAttribArray.apply(this,arguments)},t.disableVertexAttribArray=function(i){var s=r.currentVertexArrayObject;s.maxAttrib=Math.max(s.maxAttrib,i);var u=s.attribs[i];return u.enabled=!1,n.disableVertexAttribArray.apply(this,arguments)},t.bindBuffer=function(i,s){switch(i){case t.ARRAY_BUFFER:r.currentArrayBuffer=s;break;case t.ELEMENT_ARRAY_BUFFER:r.currentVertexArrayObject.elementArrayBuffer=s;break;default:}return n.bindBuffer.apply(this,arguments)},t.getVertexAttrib=function(i,s){var u=r.currentVertexArrayObject,f=u.attribs[i];switch(s){case t.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:return f.buffer;case t.VERTEX_ATTRIB_ARRAY_ENABLED:return f.enabled;case t.VERTEX_ATTRIB_ARRAY_SIZE:return f.size;case t.VERTEX_ATTRIB_ARRAY_STRIDE:return f.stride;case t.VERTEX_ATTRIB_ARRAY_TYPE:return f.type;case t.VERTEX_ATTRIB_ARRAY_NORMALIZED:return f.normalized;default:return n.getVertexAttrib.apply(this,arguments)}},t.vertexAttribPointer=function(i,s,u,f,c,E){var R=r.currentVertexArrayObject;R.maxAttrib=Math.max(R.maxAttrib,i);var l=R.attribs[i];return l.buffer=r.currentArrayBuffer,l.size=s,l.type=u,l.normalized=f,l.stride=c,l.offset=E,l.recache(),n.vertexAttribPointer.apply(this,arguments)},t.instrumentExtension&&t.instrumentExtension(this,"OES_vertex_array_object"),t.canvas&&t.canvas.addEventListener("webglcontextrestored",function(){zs("OESVertexArrayObject emulation library context restored"),r.reset_()},!0),this.reset_()};Ge.prototype.VERTEX_ARRAY_BINDING_OES=34229;Ge.prototype.reset_=function(){var t=this.vertexArrayObjects!==void 0;if(t)for(var r=0;r<this.vertexArrayObjects.length;++r)this.vertexArrayObjects.isAlive=!1;var n=this.gl;this.maxVertexAttribs=n.getParameter(n.MAX_VERTEX_ATTRIBS),this.defaultVertexArrayObject=new Pt(this),this.currentVertexArrayObject=null,this.currentArrayBuffer=null,this.vertexArrayObjects=[this.defaultVertexArrayObject],this.bindVertexArrayOES(null)};Ge.prototype.createVertexArrayOES=function(){var t=new Pt(this);return this.vertexArrayObjects.push(t),t};Ge.prototype.deleteVertexArrayOES=function(t){t.isAlive=!1,this.vertexArrayObjects.splice(this.vertexArrayObjects.indexOf(t),1),this.currentVertexArrayObject===t&&this.bindVertexArrayOES(null)};Ge.prototype.isVertexArrayOES=function(t){return!!(t&&t instanceof Pt&&t.hasBeenBound&&t.ext===this)};Ge.prototype.bindVertexArrayOES=function(t){var r=this.gl;if(t&&!t.isAlive){$s(r.INVALID_OPERATION,"bindVertexArrayOES: attempt to bind deleted arrayObject");return}var n=this.original,o=this.currentVertexArrayObject;this.currentVertexArrayObject=t||this.defaultVertexArrayObject,this.currentVertexArrayObject.hasBeenBound=!0;var i=this.currentVertexArrayObject;if(o!==i){(!o||i.elementArrayBuffer!==o.elementArrayBuffer)&&n.bindBuffer.call(r,r.ELEMENT_ARRAY_BUFFER,i.elementArrayBuffer);for(var s=this.currentArrayBuffer,u=Math.max(o?o.maxAttrib:0,i.maxAttrib),f=0;f<=u;f++){var c=i.attribs[f],E=o?o.attribs[f]:null;if((!o||c.enabled!==E.enabled)&&(c.enabled?n.enableVertexAttribArray.call(r,f):n.disableVertexAttribArray.call(r,f)),c.enabled){var R=!1;(!o||c.buffer!==E.buffer)&&(s!==c.buffer&&(n.bindBuffer.call(r,r.ARRAY_BUFFER,c.buffer),s=c.buffer),R=!0),(R||c.cached!==E.cached)&&n.vertexAttribPointer.call(r,f,c.size,c.type,c.normalized,c.stride,c.offset)}}this.currentArrayBuffer!==s&&n.bindBuffer.call(r,r.ARRAY_BUFFER,this.currentArrayBuffer)}};function Ka(e){if(typeof e.createVertexArray!="function"){var t=e.getSupportedExtensions;e.getSupportedExtensions=function(){var o=t.call(this)||[];return o.indexOf("OES_vertex_array_object")<0&&o.push("OES_vertex_array_object"),o};var r=e.getExtension;e.getExtension=function(o){var i=r.call(this,o);return i||(o!=="OES_vertex_array_object"?null:(e.__OESVertexArrayObject||(this.__OESVertexArrayObject=new Ge(this)),this.__OESVertexArrayObject))}}}var a=function(e){return e[e.DEPTH_BUFFER_BIT=256]="DEPTH_BUFFER_BIT",e[e.STENCIL_BUFFER_BIT=1024]="STENCIL_BUFFER_BIT",e[e.COLOR_BUFFER_BIT=16384]="COLOR_BUFFER_BIT",e[e.POINTS=0]="POINTS",e[e.LINES=1]="LINES",e[e.LINE_LOOP=2]="LINE_LOOP",e[e.LINE_STRIP=3]="LINE_STRIP",e[e.TRIANGLES=4]="TRIANGLES",e[e.TRIANGLE_STRIP=5]="TRIANGLE_STRIP",e[e.TRIANGLE_FAN=6]="TRIANGLE_FAN",e[e.ZERO=0]="ZERO",e[e.ONE=1]="ONE",e[e.SRC_COLOR=768]="SRC_COLOR",e[e.ONE_MINUS_SRC_COLOR=769]="ONE_MINUS_SRC_COLOR",e[e.SRC_ALPHA=770]="SRC_ALPHA",e[e.ONE_MINUS_SRC_ALPHA=771]="ONE_MINUS_SRC_ALPHA",e[e.DST_ALPHA=772]="DST_ALPHA",e[e.ONE_MINUS_DST_ALPHA=773]="ONE_MINUS_DST_ALPHA",e[e.DST_COLOR=774]="DST_COLOR",e[e.ONE_MINUS_DST_COLOR=775]="ONE_MINUS_DST_COLOR",e[e.SRC_ALPHA_SATURATE=776]="SRC_ALPHA_SATURATE",e[e.CONSTANT_COLOR=32769]="CONSTANT_COLOR",e[e.ONE_MINUS_CONSTANT_COLOR=32770]="ONE_MINUS_CONSTANT_COLOR",e[e.CONSTANT_ALPHA=32771]="CONSTANT_ALPHA",e[e.ONE_MINUS_CONSTANT_ALPHA=32772]="ONE_MINUS_CONSTANT_ALPHA",e[e.FUNC_ADD=32774]="FUNC_ADD",e[e.FUNC_SUBTRACT=32778]="FUNC_SUBTRACT",e[e.FUNC_REVERSE_SUBTRACT=32779]="FUNC_REVERSE_SUBTRACT",e[e.BLEND_EQUATION=32777]="BLEND_EQUATION",e[e.BLEND_EQUATION_RGB=32777]="BLEND_EQUATION_RGB",e[e.BLEND_EQUATION_ALPHA=34877]="BLEND_EQUATION_ALPHA",e[e.BLEND_DST_RGB=32968]="BLEND_DST_RGB",e[e.BLEND_SRC_RGB=32969]="BLEND_SRC_RGB",e[e.BLEND_DST_ALPHA=32970]="BLEND_DST_ALPHA",e[e.BLEND_SRC_ALPHA=32971]="BLEND_SRC_ALPHA",e[e.BLEND_COLOR=32773]="BLEND_COLOR",e[e.ARRAY_BUFFER_BINDING=34964]="ARRAY_BUFFER_BINDING",e[e.ELEMENT_ARRAY_BUFFER_BINDING=34965]="ELEMENT_ARRAY_BUFFER_BINDING",e[e.LINE_WIDTH=2849]="LINE_WIDTH",e[e.ALIASED_POINT_SIZE_RANGE=33901]="ALIASED_POINT_SIZE_RANGE",e[e.ALIASED_LINE_WIDTH_RANGE=33902]="ALIASED_LINE_WIDTH_RANGE",e[e.CULL_FACE_MODE=2885]="CULL_FACE_MODE",e[e.FRONT_FACE=2886]="FRONT_FACE",e[e.DEPTH_RANGE=2928]="DEPTH_RANGE",e[e.DEPTH_WRITEMASK=2930]="DEPTH_WRITEMASK",e[e.DEPTH_CLEAR_VALUE=2931]="DEPTH_CLEAR_VALUE",e[e.DEPTH_FUNC=2932]="DEPTH_FUNC",e[e.STENCIL_CLEAR_VALUE=2961]="STENCIL_CLEAR_VALUE",e[e.STENCIL_FUNC=2962]="STENCIL_FUNC",e[e.STENCIL_FAIL=2964]="STENCIL_FAIL",e[e.STENCIL_PASS_DEPTH_FAIL=2965]="STENCIL_PASS_DEPTH_FAIL",e[e.STENCIL_PASS_DEPTH_PASS=2966]="STENCIL_PASS_DEPTH_PASS",e[e.STENCIL_REF=2967]="STENCIL_REF",e[e.STENCIL_VALUE_MASK=2963]="STENCIL_VALUE_MASK",e[e.STENCIL_WRITEMASK=2968]="STENCIL_WRITEMASK",e[e.STENCIL_BACK_FUNC=34816]="STENCIL_BACK_FUNC",e[e.STENCIL_BACK_FAIL=34817]="STENCIL_BACK_FAIL",e[e.STENCIL_BACK_PASS_DEPTH_FAIL=34818]="STENCIL_BACK_PASS_DEPTH_FAIL",e[e.STENCIL_BACK_PASS_DEPTH_PASS=34819]="STENCIL_BACK_PASS_DEPTH_PASS",e[e.STENCIL_BACK_REF=36003]="STENCIL_BACK_REF",e[e.STENCIL_BACK_VALUE_MASK=36004]="STENCIL_BACK_VALUE_MASK",e[e.STENCIL_BACK_WRITEMASK=36005]="STENCIL_BACK_WRITEMASK",e[e.VIEWPORT=2978]="VIEWPORT",e[e.SCISSOR_BOX=3088]="SCISSOR_BOX",e[e.COLOR_CLEAR_VALUE=3106]="COLOR_CLEAR_VALUE",e[e.COLOR_WRITEMASK=3107]="COLOR_WRITEMASK",e[e.UNPACK_ALIGNMENT=3317]="UNPACK_ALIGNMENT",e[e.PACK_ALIGNMENT=3333]="PACK_ALIGNMENT",e[e.MAX_TEXTURE_SIZE=3379]="MAX_TEXTURE_SIZE",e[e.MAX_VIEWPORT_DIMS=3386]="MAX_VIEWPORT_DIMS",e[e.SUBPIXEL_BITS=3408]="SUBPIXEL_BITS",e[e.RED_BITS=3410]="RED_BITS",e[e.GREEN_BITS=3411]="GREEN_BITS",e[e.BLUE_BITS=3412]="BLUE_BITS",e[e.ALPHA_BITS=3413]="ALPHA_BITS",e[e.DEPTH_BITS=3414]="DEPTH_BITS",e[e.STENCIL_BITS=3415]="STENCIL_BITS",e[e.POLYGON_OFFSET_UNITS=10752]="POLYGON_OFFSET_UNITS",e[e.POLYGON_OFFSET_FACTOR=32824]="POLYGON_OFFSET_FACTOR",e[e.TEXTURE_BINDING_2D=32873]="TEXTURE_BINDING_2D",e[e.SAMPLE_BUFFERS=32936]="SAMPLE_BUFFERS",e[e.SAMPLES=32937]="SAMPLES",e[e.SAMPLE_COVERAGE_VALUE=32938]="SAMPLE_COVERAGE_VALUE",e[e.SAMPLE_COVERAGE_INVERT=32939]="SAMPLE_COVERAGE_INVERT",e[e.COMPRESSED_TEXTURE_FORMATS=34467]="COMPRESSED_TEXTURE_FORMATS",e[e.VENDOR=7936]="VENDOR",e[e.RENDERER=7937]="RENDERER",e[e.VERSION=7938]="VERSION",e[e.IMPLEMENTATION_COLOR_READ_TYPE=35738]="IMPLEMENTATION_COLOR_READ_TYPE",e[e.IMPLEMENTATION_COLOR_READ_FORMAT=35739]="IMPLEMENTATION_COLOR_READ_FORMAT",e[e.BROWSER_DEFAULT_WEBGL=37444]="BROWSER_DEFAULT_WEBGL",e[e.STATIC_DRAW=35044]="STATIC_DRAW",e[e.STREAM_DRAW=35040]="STREAM_DRAW",e[e.DYNAMIC_DRAW=35048]="DYNAMIC_DRAW",e[e.ARRAY_BUFFER=34962]="ARRAY_BUFFER",e[e.ELEMENT_ARRAY_BUFFER=34963]="ELEMENT_ARRAY_BUFFER",e[e.BUFFER_SIZE=34660]="BUFFER_SIZE",e[e.BUFFER_USAGE=34661]="BUFFER_USAGE",e[e.CURRENT_VERTEX_ATTRIB=34342]="CURRENT_VERTEX_ATTRIB",e[e.VERTEX_ATTRIB_ARRAY_ENABLED=34338]="VERTEX_ATTRIB_ARRAY_ENABLED",e[e.VERTEX_ATTRIB_ARRAY_SIZE=34339]="VERTEX_ATTRIB_ARRAY_SIZE",e[e.VERTEX_ATTRIB_ARRAY_STRIDE=34340]="VERTEX_ATTRIB_ARRAY_STRIDE",e[e.VERTEX_ATTRIB_ARRAY_TYPE=34341]="VERTEX_ATTRIB_ARRAY_TYPE",e[e.VERTEX_ATTRIB_ARRAY_NORMALIZED=34922]="VERTEX_ATTRIB_ARRAY_NORMALIZED",e[e.VERTEX_ATTRIB_ARRAY_POINTER=34373]="VERTEX_ATTRIB_ARRAY_POINTER",e[e.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=34975]="VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",e[e.CULL_FACE=2884]="CULL_FACE",e[e.FRONT=1028]="FRONT",e[e.BACK=1029]="BACK",e[e.FRONT_AND_BACK=1032]="FRONT_AND_BACK",e[e.BLEND=3042]="BLEND",e[e.DEPTH_TEST=2929]="DEPTH_TEST",e[e.DITHER=3024]="DITHER",e[e.POLYGON_OFFSET_FILL=32823]="POLYGON_OFFSET_FILL",e[e.SAMPLE_ALPHA_TO_COVERAGE=32926]="SAMPLE_ALPHA_TO_COVERAGE",e[e.SAMPLE_COVERAGE=32928]="SAMPLE_COVERAGE",e[e.SCISSOR_TEST=3089]="SCISSOR_TEST",e[e.STENCIL_TEST=2960]="STENCIL_TEST",e[e.NO_ERROR=0]="NO_ERROR",e[e.INVALID_ENUM=1280]="INVALID_ENUM",e[e.INVALID_VALUE=1281]="INVALID_VALUE",e[e.INVALID_OPERATION=1282]="INVALID_OPERATION",e[e.OUT_OF_MEMORY=1285]="OUT_OF_MEMORY",e[e.CONTEXT_LOST_WEBGL=37442]="CONTEXT_LOST_WEBGL",e[e.CW=2304]="CW",e[e.CCW=2305]="CCW",e[e.DONT_CARE=4352]="DONT_CARE",e[e.FASTEST=4353]="FASTEST",e[e.NICEST=4354]="NICEST",e[e.GENERATE_MIPMAP_HINT=33170]="GENERATE_MIPMAP_HINT",e[e.BYTE=5120]="BYTE",e[e.UNSIGNED_BYTE=5121]="UNSIGNED_BYTE",e[e.SHORT=5122]="SHORT",e[e.UNSIGNED_SHORT=5123]="UNSIGNED_SHORT",e[e.INT=5124]="INT",e[e.UNSIGNED_INT=5125]="UNSIGNED_INT",e[e.FLOAT=5126]="FLOAT",e[e.DOUBLE=5130]="DOUBLE",e[e.DEPTH_COMPONENT=6402]="DEPTH_COMPONENT",e[e.ALPHA=6406]="ALPHA",e[e.RGB=6407]="RGB",e[e.RGBA=6408]="RGBA",e[e.LUMINANCE=6409]="LUMINANCE",e[e.LUMINANCE_ALPHA=6410]="LUMINANCE_ALPHA",e[e.UNSIGNED_SHORT_4_4_4_4=32819]="UNSIGNED_SHORT_4_4_4_4",e[e.UNSIGNED_SHORT_5_5_5_1=32820]="UNSIGNED_SHORT_5_5_5_1",e[e.UNSIGNED_SHORT_5_6_5=33635]="UNSIGNED_SHORT_5_6_5",e[e.FRAGMENT_SHADER=35632]="FRAGMENT_SHADER",e[e.VERTEX_SHADER=35633]="VERTEX_SHADER",e[e.COMPILE_STATUS=35713]="COMPILE_STATUS",e[e.DELETE_STATUS=35712]="DELETE_STATUS",e[e.LINK_STATUS=35714]="LINK_STATUS",e[e.VALIDATE_STATUS=35715]="VALIDATE_STATUS",e[e.ATTACHED_SHADERS=35717]="ATTACHED_SHADERS",e[e.ACTIVE_ATTRIBUTES=35721]="ACTIVE_ATTRIBUTES",e[e.ACTIVE_UNIFORMS=35718]="ACTIVE_UNIFORMS",e[e.MAX_VERTEX_ATTRIBS=34921]="MAX_VERTEX_ATTRIBS",e[e.MAX_VERTEX_UNIFORM_VECTORS=36347]="MAX_VERTEX_UNIFORM_VECTORS",e[e.MAX_VARYING_VECTORS=36348]="MAX_VARYING_VECTORS",e[e.MAX_COMBINED_TEXTURE_IMAGE_UNITS=35661]="MAX_COMBINED_TEXTURE_IMAGE_UNITS",e[e.MAX_VERTEX_TEXTURE_IMAGE_UNITS=35660]="MAX_VERTEX_TEXTURE_IMAGE_UNITS",e[e.MAX_TEXTURE_IMAGE_UNITS=34930]="MAX_TEXTURE_IMAGE_UNITS",e[e.MAX_FRAGMENT_UNIFORM_VECTORS=36349]="MAX_FRAGMENT_UNIFORM_VECTORS",e[e.SHADER_TYPE=35663]="SHADER_TYPE",e[e.SHADING_LANGUAGE_VERSION=35724]="SHADING_LANGUAGE_VERSION",e[e.CURRENT_PROGRAM=35725]="CURRENT_PROGRAM",e[e.NEVER=512]="NEVER",e[e.LESS=513]="LESS",e[e.EQUAL=514]="EQUAL",e[e.LEQUAL=515]="LEQUAL",e[e.GREATER=516]="GREATER",e[e.NOTEQUAL=517]="NOTEQUAL",e[e.GEQUAL=518]="GEQUAL",e[e.ALWAYS=519]="ALWAYS",e[e.KEEP=7680]="KEEP",e[e.REPLACE=7681]="REPLACE",e[e.INCR=7682]="INCR",e[e.DECR=7683]="DECR",e[e.INVERT=5386]="INVERT",e[e.INCR_WRAP=34055]="INCR_WRAP",e[e.DECR_WRAP=34056]="DECR_WRAP",e[e.NEAREST=9728]="NEAREST",e[e.LINEAR=9729]="LINEAR",e[e.NEAREST_MIPMAP_NEAREST=9984]="NEAREST_MIPMAP_NEAREST",e[e.LINEAR_MIPMAP_NEAREST=9985]="LINEAR_MIPMAP_NEAREST",e[e.NEAREST_MIPMAP_LINEAR=9986]="NEAREST_MIPMAP_LINEAR",e[e.LINEAR_MIPMAP_LINEAR=9987]="LINEAR_MIPMAP_LINEAR",e[e.TEXTURE_MAG_FILTER=10240]="TEXTURE_MAG_FILTER",e[e.TEXTURE_MIN_FILTER=10241]="TEXTURE_MIN_FILTER",e[e.TEXTURE_WRAP_S=10242]="TEXTURE_WRAP_S",e[e.TEXTURE_WRAP_T=10243]="TEXTURE_WRAP_T",e[e.TEXTURE_2D=3553]="TEXTURE_2D",e[e.TEXTURE=5890]="TEXTURE",e[e.TEXTURE_CUBE_MAP=34067]="TEXTURE_CUBE_MAP",e[e.TEXTURE_BINDING_CUBE_MAP=34068]="TEXTURE_BINDING_CUBE_MAP",e[e.TEXTURE_CUBE_MAP_POSITIVE_X=34069]="TEXTURE_CUBE_MAP_POSITIVE_X",e[e.TEXTURE_CUBE_MAP_NEGATIVE_X=34070]="TEXTURE_CUBE_MAP_NEGATIVE_X",e[e.TEXTURE_CUBE_MAP_POSITIVE_Y=34071]="TEXTURE_CUBE_MAP_POSITIVE_Y",e[e.TEXTURE_CUBE_MAP_NEGATIVE_Y=34072]="TEXTURE_CUBE_MAP_NEGATIVE_Y",e[e.TEXTURE_CUBE_MAP_POSITIVE_Z=34073]="TEXTURE_CUBE_MAP_POSITIVE_Z",e[e.TEXTURE_CUBE_MAP_NEGATIVE_Z=34074]="TEXTURE_CUBE_MAP_NEGATIVE_Z",e[e.MAX_CUBE_MAP_TEXTURE_SIZE=34076]="MAX_CUBE_MAP_TEXTURE_SIZE",e[e.TEXTURE0=33984]="TEXTURE0",e[e.ACTIVE_TEXTURE=34016]="ACTIVE_TEXTURE",e[e.REPEAT=10497]="REPEAT",e[e.CLAMP_TO_EDGE=33071]="CLAMP_TO_EDGE",e[e.MIRRORED_REPEAT=33648]="MIRRORED_REPEAT",e[e.TEXTURE_WIDTH=4096]="TEXTURE_WIDTH",e[e.TEXTURE_HEIGHT=4097]="TEXTURE_HEIGHT",e[e.FLOAT_VEC2=35664]="FLOAT_VEC2",e[e.FLOAT_VEC3=35665]="FLOAT_VEC3",e[e.FLOAT_VEC4=35666]="FLOAT_VEC4",e[e.INT_VEC2=35667]="INT_VEC2",e[e.INT_VEC3=35668]="INT_VEC3",e[e.INT_VEC4=35669]="INT_VEC4",e[e.BOOL=35670]="BOOL",e[e.BOOL_VEC2=35671]="BOOL_VEC2",e[e.BOOL_VEC3=35672]="BOOL_VEC3",e[e.BOOL_VEC4=35673]="BOOL_VEC4",e[e.FLOAT_MAT2=35674]="FLOAT_MAT2",e[e.FLOAT_MAT3=35675]="FLOAT_MAT3",e[e.FLOAT_MAT4=35676]="FLOAT_MAT4",e[e.SAMPLER_2D=35678]="SAMPLER_2D",e[e.SAMPLER_CUBE=35680]="SAMPLER_CUBE",e[e.LOW_FLOAT=36336]="LOW_FLOAT",e[e.MEDIUM_FLOAT=36337]="MEDIUM_FLOAT",e[e.HIGH_FLOAT=36338]="HIGH_FLOAT",e[e.LOW_INT=36339]="LOW_INT",e[e.MEDIUM_INT=36340]="MEDIUM_INT",e[e.HIGH_INT=36341]="HIGH_INT",e[e.FRAMEBUFFER=36160]="FRAMEBUFFER",e[e.RENDERBUFFER=36161]="RENDERBUFFER",e[e.RGBA4=32854]="RGBA4",e[e.RGB5_A1=32855]="RGB5_A1",e[e.RGB565=36194]="RGB565",e[e.DEPTH_COMPONENT16=33189]="DEPTH_COMPONENT16",e[e.STENCIL_INDEX=6401]="STENCIL_INDEX",e[e.STENCIL_INDEX8=36168]="STENCIL_INDEX8",e[e.DEPTH_STENCIL=34041]="DEPTH_STENCIL",e[e.RENDERBUFFER_WIDTH=36162]="RENDERBUFFER_WIDTH",e[e.RENDERBUFFER_HEIGHT=36163]="RENDERBUFFER_HEIGHT",e[e.RENDERBUFFER_INTERNAL_FORMAT=36164]="RENDERBUFFER_INTERNAL_FORMAT",e[e.RENDERBUFFER_RED_SIZE=36176]="RENDERBUFFER_RED_SIZE",e[e.RENDERBUFFER_GREEN_SIZE=36177]="RENDERBUFFER_GREEN_SIZE",e[e.RENDERBUFFER_BLUE_SIZE=36178]="RENDERBUFFER_BLUE_SIZE",e[e.RENDERBUFFER_ALPHA_SIZE=36179]="RENDERBUFFER_ALPHA_SIZE",e[e.RENDERBUFFER_DEPTH_SIZE=36180]="RENDERBUFFER_DEPTH_SIZE",e[e.RENDERBUFFER_STENCIL_SIZE=36181]="RENDERBUFFER_STENCIL_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=36048]="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",e[e.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=36049]="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",e[e.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=36050]="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",e[e.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=36051]="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",e[e.COLOR_ATTACHMENT0=36064]="COLOR_ATTACHMENT0",e[e.DEPTH_ATTACHMENT=36096]="DEPTH_ATTACHMENT",e[e.STENCIL_ATTACHMENT=36128]="STENCIL_ATTACHMENT",e[e.DEPTH_STENCIL_ATTACHMENT=33306]="DEPTH_STENCIL_ATTACHMENT",e[e.NONE=0]="NONE",e[e.FRAMEBUFFER_COMPLETE=36053]="FRAMEBUFFER_COMPLETE",e[e.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=36054]="FRAMEBUFFER_INCOMPLETE_ATTACHMENT",e[e.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=36055]="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",e[e.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=36057]="FRAMEBUFFER_INCOMPLETE_DIMENSIONS",e[e.FRAMEBUFFER_UNSUPPORTED=36061]="FRAMEBUFFER_UNSUPPORTED",e[e.FRAMEBUFFER_BINDING=36006]="FRAMEBUFFER_BINDING",e[e.RENDERBUFFER_BINDING=36007]="RENDERBUFFER_BINDING",e[e.READ_FRAMEBUFFER=36008]="READ_FRAMEBUFFER",e[e.DRAW_FRAMEBUFFER=36009]="DRAW_FRAMEBUFFER",e[e.MAX_RENDERBUFFER_SIZE=34024]="MAX_RENDERBUFFER_SIZE",e[e.INVALID_FRAMEBUFFER_OPERATION=1286]="INVALID_FRAMEBUFFER_OPERATION",e[e.UNPACK_FLIP_Y_WEBGL=37440]="UNPACK_FLIP_Y_WEBGL",e[e.UNPACK_PREMULTIPLY_ALPHA_WEBGL=37441]="UNPACK_PREMULTIPLY_ALPHA_WEBGL",e[e.UNPACK_COLORSPACE_CONVERSION_WEBGL=37443]="UNPACK_COLORSPACE_CONVERSION_WEBGL",e[e.READ_BUFFER=3074]="READ_BUFFER",e[e.UNPACK_ROW_LENGTH=3314]="UNPACK_ROW_LENGTH",e[e.UNPACK_SKIP_ROWS=3315]="UNPACK_SKIP_ROWS",e[e.UNPACK_SKIP_PIXELS=3316]="UNPACK_SKIP_PIXELS",e[e.PACK_ROW_LENGTH=3330]="PACK_ROW_LENGTH",e[e.PACK_SKIP_ROWS=3331]="PACK_SKIP_ROWS",e[e.PACK_SKIP_PIXELS=3332]="PACK_SKIP_PIXELS",e[e.TEXTURE_BINDING_3D=32874]="TEXTURE_BINDING_3D",e[e.UNPACK_SKIP_IMAGES=32877]="UNPACK_SKIP_IMAGES",e[e.UNPACK_IMAGE_HEIGHT=32878]="UNPACK_IMAGE_HEIGHT",e[e.MAX_3D_TEXTURE_SIZE=32883]="MAX_3D_TEXTURE_SIZE",e[e.MAX_ELEMENTS_VERTICES=33e3]="MAX_ELEMENTS_VERTICES",e[e.MAX_ELEMENTS_INDICES=33001]="MAX_ELEMENTS_INDICES",e[e.MAX_TEXTURE_LOD_BIAS=34045]="MAX_TEXTURE_LOD_BIAS",e[e.MAX_FRAGMENT_UNIFORM_COMPONENTS=35657]="MAX_FRAGMENT_UNIFORM_COMPONENTS",e[e.MAX_VERTEX_UNIFORM_COMPONENTS=35658]="MAX_VERTEX_UNIFORM_COMPONENTS",e[e.MAX_ARRAY_TEXTURE_LAYERS=35071]="MAX_ARRAY_TEXTURE_LAYERS",e[e.MIN_PROGRAM_TEXEL_OFFSET=35076]="MIN_PROGRAM_TEXEL_OFFSET",e[e.MAX_PROGRAM_TEXEL_OFFSET=35077]="MAX_PROGRAM_TEXEL_OFFSET",e[e.MAX_VARYING_COMPONENTS=35659]="MAX_VARYING_COMPONENTS",e[e.FRAGMENT_SHADER_DERIVATIVE_HINT=35723]="FRAGMENT_SHADER_DERIVATIVE_HINT",e[e.RASTERIZER_DISCARD=35977]="RASTERIZER_DISCARD",e[e.VERTEX_ARRAY_BINDING=34229]="VERTEX_ARRAY_BINDING",e[e.MAX_VERTEX_OUTPUT_COMPONENTS=37154]="MAX_VERTEX_OUTPUT_COMPONENTS",e[e.MAX_FRAGMENT_INPUT_COMPONENTS=37157]="MAX_FRAGMENT_INPUT_COMPONENTS",e[e.MAX_SERVER_WAIT_TIMEOUT=37137]="MAX_SERVER_WAIT_TIMEOUT",e[e.MAX_ELEMENT_INDEX=36203]="MAX_ELEMENT_INDEX",e[e.RED=6403]="RED",e[e.RGB8=32849]="RGB8",e[e.RGBA8=32856]="RGBA8",e[e.RGB10_A2=32857]="RGB10_A2",e[e.TEXTURE_3D=32879]="TEXTURE_3D",e[e.TEXTURE_WRAP_R=32882]="TEXTURE_WRAP_R",e[e.TEXTURE_MIN_LOD=33082]="TEXTURE_MIN_LOD",e[e.TEXTURE_MAX_LOD=33083]="TEXTURE_MAX_LOD",e[e.TEXTURE_BASE_LEVEL=33084]="TEXTURE_BASE_LEVEL",e[e.TEXTURE_MAX_LEVEL=33085]="TEXTURE_MAX_LEVEL",e[e.TEXTURE_COMPARE_MODE=34892]="TEXTURE_COMPARE_MODE",e[e.TEXTURE_COMPARE_FUNC=34893]="TEXTURE_COMPARE_FUNC",e[e.SRGB=35904]="SRGB",e[e.SRGB8=35905]="SRGB8",e[e.SRGB8_ALPHA8=35907]="SRGB8_ALPHA8",e[e.COMPARE_REF_TO_TEXTURE=34894]="COMPARE_REF_TO_TEXTURE",e[e.RGBA32F=34836]="RGBA32F",e[e.RGB32F=34837]="RGB32F",e[e.RGBA16F=34842]="RGBA16F",e[e.RGB16F=34843]="RGB16F",e[e.TEXTURE_2D_ARRAY=35866]="TEXTURE_2D_ARRAY",e[e.TEXTURE_BINDING_2D_ARRAY=35869]="TEXTURE_BINDING_2D_ARRAY",e[e.R11F_G11F_B10F=35898]="R11F_G11F_B10F",e[e.RGB9_E5=35901]="RGB9_E5",e[e.RGBA32UI=36208]="RGBA32UI",e[e.RGB32UI=36209]="RGB32UI",e[e.RGBA16UI=36214]="RGBA16UI",e[e.RGB16UI=36215]="RGB16UI",e[e.RGBA8UI=36220]="RGBA8UI",e[e.RGB8UI=36221]="RGB8UI",e[e.RGBA32I=36226]="RGBA32I",e[e.RGB32I=36227]="RGB32I",e[e.RGBA16I=36232]="RGBA16I",e[e.RGB16I=36233]="RGB16I",e[e.RGBA8I=36238]="RGBA8I",e[e.RGB8I=36239]="RGB8I",e[e.RED_INTEGER=36244]="RED_INTEGER",e[e.RGB_INTEGER=36248]="RGB_INTEGER",e[e.RGBA_INTEGER=36249]="RGBA_INTEGER",e[e.R8=33321]="R8",e[e.RG8=33323]="RG8",e[e.R16F=33325]="R16F",e[e.R32F=33326]="R32F",e[e.RG16F=33327]="RG16F",e[e.RG32F=33328]="RG32F",e[e.R8I=33329]="R8I",e[e.R8UI=33330]="R8UI",e[e.R16I=33331]="R16I",e[e.R16UI=33332]="R16UI",e[e.R32I=33333]="R32I",e[e.R32UI=33334]="R32UI",e[e.RG8I=33335]="RG8I",e[e.RG8UI=33336]="RG8UI",e[e.RG16I=33337]="RG16I",e[e.RG16UI=33338]="RG16UI",e[e.RG32I=33339]="RG32I",e[e.RG32UI=33340]="RG32UI",e[e.R8_SNORM=36756]="R8_SNORM",e[e.RG8_SNORM=36757]="RG8_SNORM",e[e.RGB8_SNORM=36758]="RGB8_SNORM",e[e.RGBA8_SNORM=36759]="RGBA8_SNORM",e[e.RGB10_A2UI=36975]="RGB10_A2UI",e[e.TEXTURE_IMMUTABLE_FORMAT=37167]="TEXTURE_IMMUTABLE_FORMAT",e[e.TEXTURE_IMMUTABLE_LEVELS=33503]="TEXTURE_IMMUTABLE_LEVELS",e[e.UNSIGNED_INT_2_10_10_10_REV=33640]="UNSIGNED_INT_2_10_10_10_REV",e[e.UNSIGNED_INT_10F_11F_11F_REV=35899]="UNSIGNED_INT_10F_11F_11F_REV",e[e.UNSIGNED_INT_5_9_9_9_REV=35902]="UNSIGNED_INT_5_9_9_9_REV",e[e.FLOAT_32_UNSIGNED_INT_24_8_REV=36269]="FLOAT_32_UNSIGNED_INT_24_8_REV",e[e.UNSIGNED_INT_24_8=34042]="UNSIGNED_INT_24_8",e[e.HALF_FLOAT=5131]="HALF_FLOAT",e[e.RG=33319]="RG",e[e.RG_INTEGER=33320]="RG_INTEGER",e[e.INT_2_10_10_10_REV=36255]="INT_2_10_10_10_REV",e[e.CURRENT_QUERY=34917]="CURRENT_QUERY",e[e.QUERY_RESULT=34918]="QUERY_RESULT",e[e.QUERY_RESULT_AVAILABLE=34919]="QUERY_RESULT_AVAILABLE",e[e.ANY_SAMPLES_PASSED=35887]="ANY_SAMPLES_PASSED",e[e.ANY_SAMPLES_PASSED_CONSERVATIVE=36202]="ANY_SAMPLES_PASSED_CONSERVATIVE",e[e.MAX_DRAW_BUFFERS=34852]="MAX_DRAW_BUFFERS",e[e.DRAW_BUFFER0=34853]="DRAW_BUFFER0",e[e.DRAW_BUFFER1=34854]="DRAW_BUFFER1",e[e.DRAW_BUFFER2=34855]="DRAW_BUFFER2",e[e.DRAW_BUFFER3=34856]="DRAW_BUFFER3",e[e.DRAW_BUFFER4=34857]="DRAW_BUFFER4",e[e.DRAW_BUFFER5=34858]="DRAW_BUFFER5",e[e.DRAW_BUFFER6=34859]="DRAW_BUFFER6",e[e.DRAW_BUFFER7=34860]="DRAW_BUFFER7",e[e.DRAW_BUFFER8=34861]="DRAW_BUFFER8",e[e.DRAW_BUFFER9=34862]="DRAW_BUFFER9",e[e.DRAW_BUFFER10=34863]="DRAW_BUFFER10",e[e.DRAW_BUFFER11=34864]="DRAW_BUFFER11",e[e.DRAW_BUFFER12=34865]="DRAW_BUFFER12",e[e.DRAW_BUFFER13=34866]="DRAW_BUFFER13",e[e.DRAW_BUFFER14=34867]="DRAW_BUFFER14",e[e.DRAW_BUFFER15=34868]="DRAW_BUFFER15",e[e.MAX_COLOR_ATTACHMENTS=36063]="MAX_COLOR_ATTACHMENTS",e[e.COLOR_ATTACHMENT1=36065]="COLOR_ATTACHMENT1",e[e.COLOR_ATTACHMENT2=36066]="COLOR_ATTACHMENT2",e[e.COLOR_ATTACHMENT3=36067]="COLOR_ATTACHMENT3",e[e.COLOR_ATTACHMENT4=36068]="COLOR_ATTACHMENT4",e[e.COLOR_ATTACHMENT5=36069]="COLOR_ATTACHMENT5",e[e.COLOR_ATTACHMENT6=36070]="COLOR_ATTACHMENT6",e[e.COLOR_ATTACHMENT7=36071]="COLOR_ATTACHMENT7",e[e.COLOR_ATTACHMENT8=36072]="COLOR_ATTACHMENT8",e[e.COLOR_ATTACHMENT9=36073]="COLOR_ATTACHMENT9",e[e.COLOR_ATTACHMENT10=36074]="COLOR_ATTACHMENT10",e[e.COLOR_ATTACHMENT11=36075]="COLOR_ATTACHMENT11",e[e.COLOR_ATTACHMENT12=36076]="COLOR_ATTACHMENT12",e[e.COLOR_ATTACHMENT13=36077]="COLOR_ATTACHMENT13",e[e.COLOR_ATTACHMENT14=36078]="COLOR_ATTACHMENT14",e[e.COLOR_ATTACHMENT15=36079]="COLOR_ATTACHMENT15",e[e.SAMPLER_3D=35679]="SAMPLER_3D",e[e.SAMPLER_2D_SHADOW=35682]="SAMPLER_2D_SHADOW",e[e.SAMPLER_2D_ARRAY=36289]="SAMPLER_2D_ARRAY",e[e.SAMPLER_2D_ARRAY_SHADOW=36292]="SAMPLER_2D_ARRAY_SHADOW",e[e.SAMPLER_CUBE_SHADOW=36293]="SAMPLER_CUBE_SHADOW",e[e.INT_SAMPLER_2D=36298]="INT_SAMPLER_2D",e[e.INT_SAMPLER_3D=36299]="INT_SAMPLER_3D",e[e.INT_SAMPLER_CUBE=36300]="INT_SAMPLER_CUBE",e[e.INT_SAMPLER_2D_ARRAY=36303]="INT_SAMPLER_2D_ARRAY",e[e.UNSIGNED_INT_SAMPLER_2D=36306]="UNSIGNED_INT_SAMPLER_2D",e[e.UNSIGNED_INT_SAMPLER_3D=36307]="UNSIGNED_INT_SAMPLER_3D",e[e.UNSIGNED_INT_SAMPLER_CUBE=36308]="UNSIGNED_INT_SAMPLER_CUBE",e[e.UNSIGNED_INT_SAMPLER_2D_ARRAY=36311]="UNSIGNED_INT_SAMPLER_2D_ARRAY",e[e.MAX_SAMPLES=36183]="MAX_SAMPLES",e[e.SAMPLER_BINDING=35097]="SAMPLER_BINDING",e[e.PIXEL_PACK_BUFFER=35051]="PIXEL_PACK_BUFFER",e[e.PIXEL_UNPACK_BUFFER=35052]="PIXEL_UNPACK_BUFFER",e[e.PIXEL_PACK_BUFFER_BINDING=35053]="PIXEL_PACK_BUFFER_BINDING",e[e.PIXEL_UNPACK_BUFFER_BINDING=35055]="PIXEL_UNPACK_BUFFER_BINDING",e[e.COPY_READ_BUFFER=36662]="COPY_READ_BUFFER",e[e.COPY_WRITE_BUFFER=36663]="COPY_WRITE_BUFFER",e[e.COPY_READ_BUFFER_BINDING=36662]="COPY_READ_BUFFER_BINDING",e[e.COPY_WRITE_BUFFER_BINDING=36663]="COPY_WRITE_BUFFER_BINDING",e[e.FLOAT_MAT2x3=35685]="FLOAT_MAT2x3",e[e.FLOAT_MAT2x4=35686]="FLOAT_MAT2x4",e[e.FLOAT_MAT3x2=35687]="FLOAT_MAT3x2",e[e.FLOAT_MAT3x4=35688]="FLOAT_MAT3x4",e[e.FLOAT_MAT4x2=35689]="FLOAT_MAT4x2",e[e.FLOAT_MAT4x3=35690]="FLOAT_MAT4x3",e[e.UNSIGNED_INT_VEC2=36294]="UNSIGNED_INT_VEC2",e[e.UNSIGNED_INT_VEC3=36295]="UNSIGNED_INT_VEC3",e[e.UNSIGNED_INT_VEC4=36296]="UNSIGNED_INT_VEC4",e[e.UNSIGNED_NORMALIZED=35863]="UNSIGNED_NORMALIZED",e[e.SIGNED_NORMALIZED=36764]="SIGNED_NORMALIZED",e[e.VERTEX_ATTRIB_ARRAY_INTEGER=35069]="VERTEX_ATTRIB_ARRAY_INTEGER",e[e.VERTEX_ATTRIB_ARRAY_DIVISOR=35070]="VERTEX_ATTRIB_ARRAY_DIVISOR",e[e.TRANSFORM_FEEDBACK_BUFFER_MODE=35967]="TRANSFORM_FEEDBACK_BUFFER_MODE",e[e.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS=35968]="MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS",e[e.TRANSFORM_FEEDBACK_VARYINGS=35971]="TRANSFORM_FEEDBACK_VARYINGS",e[e.TRANSFORM_FEEDBACK_BUFFER_START=35972]="TRANSFORM_FEEDBACK_BUFFER_START",e[e.TRANSFORM_FEEDBACK_BUFFER_SIZE=35973]="TRANSFORM_FEEDBACK_BUFFER_SIZE",e[e.TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN=35976]="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN",e[e.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS=35978]="MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS",e[e.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS=35979]="MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS",e[e.INTERLEAVED_ATTRIBS=35980]="INTERLEAVED_ATTRIBS",e[e.SEPARATE_ATTRIBS=35981]="SEPARATE_ATTRIBS",e[e.TRANSFORM_FEEDBACK_BUFFER=35982]="TRANSFORM_FEEDBACK_BUFFER",e[e.TRANSFORM_FEEDBACK_BUFFER_BINDING=35983]="TRANSFORM_FEEDBACK_BUFFER_BINDING",e[e.TRANSFORM_FEEDBACK=36386]="TRANSFORM_FEEDBACK",e[e.TRANSFORM_FEEDBACK_PAUSED=36387]="TRANSFORM_FEEDBACK_PAUSED",e[e.TRANSFORM_FEEDBACK_ACTIVE=36388]="TRANSFORM_FEEDBACK_ACTIVE",e[e.TRANSFORM_FEEDBACK_BINDING=36389]="TRANSFORM_FEEDBACK_BINDING",e[e.FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING=33296]="FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING",e[e.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE=33297]="FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE",e[e.FRAMEBUFFER_ATTACHMENT_RED_SIZE=33298]="FRAMEBUFFER_ATTACHMENT_RED_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_GREEN_SIZE=33299]="FRAMEBUFFER_ATTACHMENT_GREEN_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_BLUE_SIZE=33300]="FRAMEBUFFER_ATTACHMENT_BLUE_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE=33301]="FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE=33302]="FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE",e[e.FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE=33303]="FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE",e[e.FRAMEBUFFER_DEFAULT=33304]="FRAMEBUFFER_DEFAULT",e[e.DEPTH24_STENCIL8=35056]="DEPTH24_STENCIL8",e[e.DRAW_FRAMEBUFFER_BINDING=36006]="DRAW_FRAMEBUFFER_BINDING",e[e.READ_FRAMEBUFFER_BINDING=36010]="READ_FRAMEBUFFER_BINDING",e[e.RENDERBUFFER_SAMPLES=36011]="RENDERBUFFER_SAMPLES",e[e.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER=36052]="FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER",e[e.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE=36182]="FRAMEBUFFER_INCOMPLETE_MULTISAMPLE",e[e.UNIFORM_BUFFER=35345]="UNIFORM_BUFFER",e[e.UNIFORM_BUFFER_BINDING=35368]="UNIFORM_BUFFER_BINDING",e[e.UNIFORM_BUFFER_START=35369]="UNIFORM_BUFFER_START",e[e.UNIFORM_BUFFER_SIZE=35370]="UNIFORM_BUFFER_SIZE",e[e.MAX_VERTEX_UNIFORM_BLOCKS=35371]="MAX_VERTEX_UNIFORM_BLOCKS",e[e.MAX_FRAGMENT_UNIFORM_BLOCKS=35373]="MAX_FRAGMENT_UNIFORM_BLOCKS",e[e.MAX_COMBINED_UNIFORM_BLOCKS=35374]="MAX_COMBINED_UNIFORM_BLOCKS",e[e.MAX_UNIFORM_BUFFER_BINDINGS=35375]="MAX_UNIFORM_BUFFER_BINDINGS",e[e.MAX_UNIFORM_BLOCK_SIZE=35376]="MAX_UNIFORM_BLOCK_SIZE",e[e.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS=35377]="MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS",e[e.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS=35379]="MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS",e[e.UNIFORM_BUFFER_OFFSET_ALIGNMENT=35380]="UNIFORM_BUFFER_OFFSET_ALIGNMENT",e[e.ACTIVE_UNIFORM_BLOCKS=35382]="ACTIVE_UNIFORM_BLOCKS",e[e.UNIFORM_TYPE=35383]="UNIFORM_TYPE",e[e.UNIFORM_SIZE=35384]="UNIFORM_SIZE",e[e.UNIFORM_BLOCK_INDEX=35386]="UNIFORM_BLOCK_INDEX",e[e.UNIFORM_OFFSET=35387]="UNIFORM_OFFSET",e[e.UNIFORM_ARRAY_STRIDE=35388]="UNIFORM_ARRAY_STRIDE",e[e.UNIFORM_MATRIX_STRIDE=35389]="UNIFORM_MATRIX_STRIDE",e[e.UNIFORM_IS_ROW_MAJOR=35390]="UNIFORM_IS_ROW_MAJOR",e[e.UNIFORM_BLOCK_BINDING=35391]="UNIFORM_BLOCK_BINDING",e[e.UNIFORM_BLOCK_DATA_SIZE=35392]="UNIFORM_BLOCK_DATA_SIZE",e[e.UNIFORM_BLOCK_ACTIVE_UNIFORMS=35394]="UNIFORM_BLOCK_ACTIVE_UNIFORMS",e[e.UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES=35395]="UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES",e[e.UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER=35396]="UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER",e[e.UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER=35398]="UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER",e[e.OBJECT_TYPE=37138]="OBJECT_TYPE",e[e.SYNC_CONDITION=37139]="SYNC_CONDITION",e[e.SYNC_STATUS=37140]="SYNC_STATUS",e[e.SYNC_FLAGS=37141]="SYNC_FLAGS",e[e.SYNC_FENCE=37142]="SYNC_FENCE",e[e.SYNC_GPU_COMMANDS_COMPLETE=37143]="SYNC_GPU_COMMANDS_COMPLETE",e[e.UNSIGNALED=37144]="UNSIGNALED",e[e.SIGNALED=37145]="SIGNALED",e[e.ALREADY_SIGNALED=37146]="ALREADY_SIGNALED",e[e.TIMEOUT_EXPIRED=37147]="TIMEOUT_EXPIRED",e[e.CONDITION_SATISFIED=37148]="CONDITION_SATISFIED",e[e.WAIT_FAILED=37149]="WAIT_FAILED",e[e.SYNC_FLUSH_COMMANDS_BIT=1]="SYNC_FLUSH_COMMANDS_BIT",e[e.COLOR=6144]="COLOR",e[e.DEPTH=6145]="DEPTH",e[e.STENCIL=6146]="STENCIL",e[e.MIN=32775]="MIN",e[e.MAX=32776]="MAX",e[e.DEPTH_COMPONENT24=33190]="DEPTH_COMPONENT24",e[e.STREAM_READ=35041]="STREAM_READ",e[e.STREAM_COPY=35042]="STREAM_COPY",e[e.STATIC_READ=35045]="STATIC_READ",e[e.STATIC_COPY=35046]="STATIC_COPY",e[e.DYNAMIC_READ=35049]="DYNAMIC_READ",e[e.DYNAMIC_COPY=35050]="DYNAMIC_COPY",e[e.DEPTH_COMPONENT32F=36012]="DEPTH_COMPONENT32F",e[e.DEPTH32F_STENCIL8=36013]="DEPTH32F_STENCIL8",e[e.INVALID_INDEX=4294967295]="INVALID_INDEX",e[e.TIMEOUT_IGNORED=-1]="TIMEOUT_IGNORED",e[e.MAX_CLIENT_WAIT_TIMEOUT_WEBGL=37447]="MAX_CLIENT_WAIT_TIMEOUT_WEBGL",e[e.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE=35070]="VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE",e[e.UNMASKED_VENDOR_WEBGL=37445]="UNMASKED_VENDOR_WEBGL",e[e.UNMASKED_RENDERER_WEBGL=37446]="UNMASKED_RENDERER_WEBGL",e[e.MAX_TEXTURE_MAX_ANISOTROPY_EXT=34047]="MAX_TEXTURE_MAX_ANISOTROPY_EXT",e[e.TEXTURE_MAX_ANISOTROPY_EXT=34046]="TEXTURE_MAX_ANISOTROPY_EXT",e[e.SRGB_EXT=35904]="SRGB_EXT",e[e.SRGB_ALPHA_EXT=35906]="SRGB_ALPHA_EXT",e[e.SRGB8_ALPHA8_EXT=35907]="SRGB8_ALPHA8_EXT",e[e.FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT=33296]="FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT",e[e.R16_EXT=33322]="R16_EXT",e[e.RG16_EXT=33324]="RG16_EXT",e[e.RGB16_EXT=32852]="RGB16_EXT",e[e.RGBA16_EXT=32859]="RGBA16_EXT",e[e.R16_SNORM_EXT=36760]="R16_SNORM_EXT",e[e.RG16_SNORM_EXT=36761]="RG16_SNORM_EXT",e[e.RGB16_SNORM_EXT=36762]="RGB16_SNORM_EXT",e[e.RGBA16_SNORM_EXT=36763]="RGBA16_SNORM_EXT",e[e.COMPRESSED_RGB_S3TC_DXT1_EXT=33776]="COMPRESSED_RGB_S3TC_DXT1_EXT",e[e.COMPRESSED_RGBA_S3TC_DXT1_EXT=33777]="COMPRESSED_RGBA_S3TC_DXT1_EXT",e[e.COMPRESSED_RGBA_S3TC_DXT3_EXT=33778]="COMPRESSED_RGBA_S3TC_DXT3_EXT",e[e.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779]="COMPRESSED_RGBA_S3TC_DXT5_EXT",e[e.COMPRESSED_SRGB_S3TC_DXT1_EXT=35916]="COMPRESSED_SRGB_S3TC_DXT1_EXT",e[e.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT=35917]="COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT",e[e.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT=35918]="COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT",e[e.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT=35919]="COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT",e[e.COMPRESSED_RED_RGTC1_EXT=36283]="COMPRESSED_RED_RGTC1_EXT",e[e.COMPRESSED_SIGNED_RED_RGTC1_EXT=36284]="COMPRESSED_SIGNED_RED_RGTC1_EXT",e[e.COMPRESSED_RED_GREEN_RGTC2_EXT=36285]="COMPRESSED_RED_GREEN_RGTC2_EXT",e[e.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT=36286]="COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT",e[e.COMPRESSED_RGBA_BPTC_UNORM_EXT=36492]="COMPRESSED_RGBA_BPTC_UNORM_EXT",e[e.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT=36493]="COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT",e[e.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT=36494]="COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT",e[e.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT=36495]="COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT",e[e.COMPRESSED_R11_EAC=37488]="COMPRESSED_R11_EAC",e[e.COMPRESSED_SIGNED_R11_EAC=37489]="COMPRESSED_SIGNED_R11_EAC",e[e.COMPRESSED_RG11_EAC=37490]="COMPRESSED_RG11_EAC",e[e.COMPRESSED_SIGNED_RG11_EAC=37491]="COMPRESSED_SIGNED_RG11_EAC",e[e.COMPRESSED_RGB8_ETC2=37492]="COMPRESSED_RGB8_ETC2",e[e.COMPRESSED_RGBA8_ETC2_EAC=37493]="COMPRESSED_RGBA8_ETC2_EAC",e[e.COMPRESSED_SRGB8_ETC2=37494]="COMPRESSED_SRGB8_ETC2",e[e.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC=37495]="COMPRESSED_SRGB8_ALPHA8_ETC2_EAC",e[e.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2=37496]="COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2",e[e.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2=37497]="COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2",e[e.COMPRESSED_RGB_PVRTC_4BPPV1_IMG=35840]="COMPRESSED_RGB_PVRTC_4BPPV1_IMG",e[e.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG=35842]="COMPRESSED_RGBA_PVRTC_4BPPV1_IMG",e[e.COMPRESSED_RGB_PVRTC_2BPPV1_IMG=35841]="COMPRESSED_RGB_PVRTC_2BPPV1_IMG",e[e.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG=35843]="COMPRESSED_RGBA_PVRTC_2BPPV1_IMG",e[e.COMPRESSED_RGB_ETC1_WEBGL=36196]="COMPRESSED_RGB_ETC1_WEBGL",e[e.COMPRESSED_RGB_ATC_WEBGL=35986]="COMPRESSED_RGB_ATC_WEBGL",e[e.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL=35986]="COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL",e[e.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL=34798]="COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL",e[e.COMPRESSED_RGBA_ASTC_4x4_KHR=37808]="COMPRESSED_RGBA_ASTC_4x4_KHR",e[e.COMPRESSED_RGBA_ASTC_5x4_KHR=37809]="COMPRESSED_RGBA_ASTC_5x4_KHR",e[e.COMPRESSED_RGBA_ASTC_5x5_KHR=37810]="COMPRESSED_RGBA_ASTC_5x5_KHR",e[e.COMPRESSED_RGBA_ASTC_6x5_KHR=37811]="COMPRESSED_RGBA_ASTC_6x5_KHR",e[e.COMPRESSED_RGBA_ASTC_6x6_KHR=37812]="COMPRESSED_RGBA_ASTC_6x6_KHR",e[e.COMPRESSED_RGBA_ASTC_8x5_KHR=37813]="COMPRESSED_RGBA_ASTC_8x5_KHR",e[e.COMPRESSED_RGBA_ASTC_8x6_KHR=37814]="COMPRESSED_RGBA_ASTC_8x6_KHR",e[e.COMPRESSED_RGBA_ASTC_8x8_KHR=37815]="COMPRESSED_RGBA_ASTC_8x8_KHR",e[e.COMPRESSED_RGBA_ASTC_10x5_KHR=37816]="COMPRESSED_RGBA_ASTC_10x5_KHR",e[e.COMPRESSED_RGBA_ASTC_10x6_KHR=37817]="COMPRESSED_RGBA_ASTC_10x6_KHR",e[e.COMPRESSED_RGBA_ASTC_10x8_KHR=37818]="COMPRESSED_RGBA_ASTC_10x8_KHR",e[e.COMPRESSED_RGBA_ASTC_10x10_KHR=37819]="COMPRESSED_RGBA_ASTC_10x10_KHR",e[e.COMPRESSED_RGBA_ASTC_12x10_KHR=37820]="COMPRESSED_RGBA_ASTC_12x10_KHR",e[e.COMPRESSED_RGBA_ASTC_12x12_KHR=37821]="COMPRESSED_RGBA_ASTC_12x12_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR=37840]="COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR=37841]="COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR=37842]="COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR=37843]="COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR=37844]="COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR=37845]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR=37846]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR=37847]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR=37848]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR=37849]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR=37850]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR=37851]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR=37852]="COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR",e[e.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR=37853]="COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR",e[e.UNSIGNED_INT_24_8_WEBGL=34042]="UNSIGNED_INT_24_8_WEBGL",e[e.HALF_FLOAT_OES=36193]="HALF_FLOAT_OES",e[e.RGBA32F_EXT=34836]="RGBA32F_EXT",e[e.RGB32F_EXT=34837]="RGB32F_EXT",e[e.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT=33297]="FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT",e[e.UNSIGNED_NORMALIZED_EXT=35863]="UNSIGNED_NORMALIZED_EXT",e[e.MIN_EXT=32775]="MIN_EXT",e[e.MAX_EXT=32776]="MAX_EXT",e[e.FRAGMENT_SHADER_DERIVATIVE_HINT_OES=35723]="FRAGMENT_SHADER_DERIVATIVE_HINT_OES",e[e.COLOR_ATTACHMENT0_WEBGL=36064]="COLOR_ATTACHMENT0_WEBGL",e[e.COLOR_ATTACHMENT1_WEBGL=36065]="COLOR_ATTACHMENT1_WEBGL",e[e.COLOR_ATTACHMENT2_WEBGL=36066]="COLOR_ATTACHMENT2_WEBGL",e[e.COLOR_ATTACHMENT3_WEBGL=36067]="COLOR_ATTACHMENT3_WEBGL",e[e.COLOR_ATTACHMENT4_WEBGL=36068]="COLOR_ATTACHMENT4_WEBGL",e[e.COLOR_ATTACHMENT5_WEBGL=36069]="COLOR_ATTACHMENT5_WEBGL",e[e.COLOR_ATTACHMENT6_WEBGL=36070]="COLOR_ATTACHMENT6_WEBGL",e[e.COLOR_ATTACHMENT7_WEBGL=36071]="COLOR_ATTACHMENT7_WEBGL",e[e.COLOR_ATTACHMENT8_WEBGL=36072]="COLOR_ATTACHMENT8_WEBGL",e[e.COLOR_ATTACHMENT9_WEBGL=36073]="COLOR_ATTACHMENT9_WEBGL",e[e.COLOR_ATTACHMENT10_WEBGL=36074]="COLOR_ATTACHMENT10_WEBGL",e[e.COLOR_ATTACHMENT11_WEBGL=36075]="COLOR_ATTACHMENT11_WEBGL",e[e.COLOR_ATTACHMENT12_WEBGL=36076]="COLOR_ATTACHMENT12_WEBGL",e[e.COLOR_ATTACHMENT13_WEBGL=36077]="COLOR_ATTACHMENT13_WEBGL",e[e.COLOR_ATTACHMENT14_WEBGL=36078]="COLOR_ATTACHMENT14_WEBGL",e[e.COLOR_ATTACHMENT15_WEBGL=36079]="COLOR_ATTACHMENT15_WEBGL",e[e.DRAW_BUFFER0_WEBGL=34853]="DRAW_BUFFER0_WEBGL",e[e.DRAW_BUFFER1_WEBGL=34854]="DRAW_BUFFER1_WEBGL",e[e.DRAW_BUFFER2_WEBGL=34855]="DRAW_BUFFER2_WEBGL",e[e.DRAW_BUFFER3_WEBGL=34856]="DRAW_BUFFER3_WEBGL",e[e.DRAW_BUFFER4_WEBGL=34857]="DRAW_BUFFER4_WEBGL",e[e.DRAW_BUFFER5_WEBGL=34858]="DRAW_BUFFER5_WEBGL",e[e.DRAW_BUFFER6_WEBGL=34859]="DRAW_BUFFER6_WEBGL",e[e.DRAW_BUFFER7_WEBGL=34860]="DRAW_BUFFER7_WEBGL",e[e.DRAW_BUFFER8_WEBGL=34861]="DRAW_BUFFER8_WEBGL",e[e.DRAW_BUFFER9_WEBGL=34862]="DRAW_BUFFER9_WEBGL",e[e.DRAW_BUFFER10_WEBGL=34863]="DRAW_BUFFER10_WEBGL",e[e.DRAW_BUFFER11_WEBGL=34864]="DRAW_BUFFER11_WEBGL",e[e.DRAW_BUFFER12_WEBGL=34865]="DRAW_BUFFER12_WEBGL",e[e.DRAW_BUFFER13_WEBGL=34866]="DRAW_BUFFER13_WEBGL",e[e.DRAW_BUFFER14_WEBGL=34867]="DRAW_BUFFER14_WEBGL",e[e.DRAW_BUFFER15_WEBGL=34868]="DRAW_BUFFER15_WEBGL",e[e.MAX_COLOR_ATTACHMENTS_WEBGL=36063]="MAX_COLOR_ATTACHMENTS_WEBGL",e[e.MAX_DRAW_BUFFERS_WEBGL=34852]="MAX_DRAW_BUFFERS_WEBGL",e[e.VERTEX_ARRAY_BINDING_OES=34229]="VERTEX_ARRAY_BINDING_OES",e[e.QUERY_COUNTER_BITS_EXT=34916]="QUERY_COUNTER_BITS_EXT",e[e.CURRENT_QUERY_EXT=34917]="CURRENT_QUERY_EXT",e[e.QUERY_RESULT_EXT=34918]="QUERY_RESULT_EXT",e[e.QUERY_RESULT_AVAILABLE_EXT=34919]="QUERY_RESULT_AVAILABLE_EXT",e[e.TIME_ELAPSED_EXT=35007]="TIME_ELAPSED_EXT",e[e.TIMESTAMP_EXT=36392]="TIMESTAMP_EXT",e[e.GPU_DISJOINT_EXT=36795]="GPU_DISJOINT_EXT",e}({});var Qs="Invalid WebGLRenderingContext";var qs="Requires WebGL2";function Zr(e){return typeof WebGLRenderingContext<"u"&&e instanceof WebGLRenderingContext||typeof WebGL2RenderingContext<"u"&&e instanceof WebGL2RenderingContext?!0:Boolean(e&&Number.isFinite(e._version))}function W(e){return typeof WebGL2RenderingContext<"u"&&e instanceof WebGL2RenderingContext?!0:Boolean(e&&e._version===2)}function yt(e){return W(e)?e:null}function _r(e){return B(Zr(e),Qs),e}function ft(e){return B(W(e),qs),e}var V,Ya="OES_element_index",ka="WEBGL_draw_buffers",Js="EXT_disjoint_timer_query",eu="EXT_disjoint_timer_query_webgl2",tu="EXT_texture_filter_anisotropic",Ga="WEBGL_debug_renderer_info",ru=35723,nu=4352,au=36795,iu=34047,ou=37445,su=37446,$=function(t){return W(t)?void 0:0},uu=(V={},_(V,a.READ_BUFFER,function(e){return W(e)?void 0:a.COLOR_ATTACHMENT0}),_(V,ru,function(e){return W(e)?void 0:nu}),_(V,a.RASTERIZER_DISCARD,$),_(V,a.SAMPLES,$),_(V,au,function(e,t){var r=W(e)?e.getExtension(eu):e.getExtension(Js);return r&&r.GPU_DISJOINT_EXT?t(r.GPU_DISJOINT_EXT):0}),_(V,ou,function(e,t){var r=e.getExtension(Ga);return t(r&&r.UNMASKED_VENDOR_WEBGL||a.VENDOR)}),_(V,su,function(e,t){var r=e.getExtension(Ga);return t(r&&r.UNMASKED_RENDERER_WEBGL||a.RENDERER)}),_(V,iu,function(e,t){var r,n=((r=e.luma)===null||r===void 0||(r=r.extensions)===null||r===void 0?void 0:r[tu])||e.getExtension("EXT_texture_filter_anisotropic");return n?t(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT):1}),_(V,a.MAX_3D_TEXTURE_SIZE,$),_(V,a.MAX_ARRAY_TEXTURE_LAYERS,$),_(V,a.MAX_CLIENT_WAIT_TIMEOUT_WEBGL,$),_(V,a.MAX_COLOR_ATTACHMENTS,function(e,t){if(!W(e)){var r=e.getExtension(ka);return r?t(r.MAX_COLOR_ATTACHMENTS_WEBGL):0}}),_(V,a.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS,$),_(V,a.MAX_COMBINED_UNIFORM_BLOCKS,$),_(V,a.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS,$),_(V,a.MAX_DRAW_BUFFERS,function(e){if(!W(e)){var t=e.getExtension(ka);return t?t.MAX_DRAW_BUFFERS_WEBGL:0}}),_(V,a.MAX_ELEMENT_INDEX,function(e){return e.getExtension(Ya)?2147483647:65535}),_(V,a.MAX_ELEMENTS_INDICES,function(e){return e.getExtension(Ya)?16777216:65535}),_(V,a.MAX_ELEMENTS_VERTICES,function(e){return 16777216}),_(V,a.MAX_FRAGMENT_INPUT_COMPONENTS,$),_(V,a.MAX_FRAGMENT_UNIFORM_BLOCKS,$),_(V,a.MAX_FRAGMENT_UNIFORM_COMPONENTS,$),_(V,a.MAX_SAMPLES,$),_(V,a.MAX_SERVER_WAIT_TIMEOUT,$),_(V,a.MAX_TEXTURE_LOD_BIAS,$),_(V,a.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS,$),_(V,a.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS,$),_(V,a.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS,$),_(V,a.MAX_UNIFORM_BLOCK_SIZE,$),_(V,a.MAX_UNIFORM_BUFFER_BINDINGS,$),_(V,a.MAX_VARYING_COMPONENTS,$),_(V,a.MAX_VERTEX_OUTPUT_COMPONENTS,$),_(V,a.MAX_VERTEX_UNIFORM_BLOCKS,$),_(V,a.MAX_VERTEX_UNIFORM_COMPONENTS,$),_(V,a.MIN_PROGRAM_TEXEL_OFFSET,$),_(V,a.MAX_PROGRAM_TEXEL_OFFSET,$),_(V,a.UNIFORM_BUFFER_OFFSET_ALIGNMENT,$),V);function za(e,t,r){var n=uu[r],o=typeof n=="function"?n(e,t,r):n,i=o!==void 0?o:t(r);return i}function _t(e){var t=e.luma;if(!t){var r={_polyfilled:!1,_extensions:{}};e.luma=r}return e.luma}var ct,fu="OES_vertex_array_object",$a="ANGLE_instanced_arrays",_u="WEBGL_draw_buffers",cu="EXT_disjoint_timer_query",Eu="EXT_texture_filter_anisotropic",lu="VertexArray requires WebGL2 or OES_vertex_array_object extension";function Ru(e,t){return{webgl2:W(e),ext:e.getExtension(t)}}var Qr=(ct={},_(ct,fu,{meta:{suffix:"OES"},createVertexArray:function(){B(!1,lu)},deleteVertexArray:function(){},bindVertexArray:function(){},isVertexArray:function(){return!1}}),_(ct,$a,{meta:{suffix:"ANGLE"},vertexAttribDivisor:function(t,r){B(r===0,"WebGL instanced rendering not supported")},drawElementsInstanced:function(){},drawArraysInstanced:function(){}}),_(ct,_u,{meta:{suffix:"WEBGL"},drawBuffers:function(){B(!1)}}),_(ct,cu,{meta:{suffix:"EXT"},createQuery:function(){B(!1)},deleteQuery:function(){B(!1)},beginQuery:function(){B(!1)},endQuery:function(){},getQuery:function(t,r){return this.getQueryObject(t,r)},getQueryParameter:function(t,r){return this.getQueryObject(t,r)},getQueryObject:function(t,r){}}),ct),cr={readBuffer:function(t,r,n){W(t)&&r(n)},getVertexAttrib:function(t,r,n,o){var i=Ru(t,$a),s=i.webgl2,u=i.ext,f;switch(o){case a.VERTEX_ATTRIB_ARRAY_INTEGER:f=s?void 0:!1;break;case a.VERTEX_ATTRIB_ARRAY_DIVISOR:f=!s&&!u?0:void 0;break;default:}return f!==void 0?f:r(n,o)},getProgramParameter:function(t,r,n,o){if(!W(t))switch(o){case a.TRANSFORM_FEEDBACK_BUFFER_MODE:return a.SEPARATE_ATTRIBS;case a.TRANSFORM_FEEDBACK_VARYINGS:return 0;case a.ACTIVE_UNIFORM_BLOCKS:return 0;default:}return r(n,o)},getInternalformatParameter:function(t,r,n,o,i){if(!W(t))switch(i){case a.SAMPLES:return new Int32Array([0]);default:}var s=t;return s.getInternalformatParameter(n,o,i)},getTexParameter:function(t,r,n,o){switch(o){case a.TEXTURE_MAX_ANISOTROPY_EXT:var i=_t(t),s=i._extensions,u=s[Eu];o=u&&u.TEXTURE_MAX_ANISOTROPY_EXT||a.TEXTURE_MAX_ANISOTROPY_EXT;break;default:}return r(n,o)},getParameter:za,hint:function(t,r,n,o){return r(n,o)}};function Qa(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=du(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
17
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function du(e,t){if(e){if(typeof e=="string")return Za(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Za(e,t)}}function Za(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Er(e){var t=_t(e);return t._polyfilled||(Ka(e),Tu(e),Au(e,Qr),mu(e,{target:t,target2:e}),t._polyfilled=!0),e}function Tu(e){var t=_t(e),r=e.getSupportedExtensions()||[],n=Qa(r),o;try{for(n.s();!(o=n.n()).done;){var i=o.value,s=e.getExtension(i);t._extensions[i]=s}}catch(u){n.e(u)}finally{n.f()}}function Au(e,t){var r=_t(e),n=Qa(Object.getOwnPropertyNames(t)),o;try{for(n.s();!(o=n.n()).done;){var i=o.value;i!=="overrides"&&pu(e,{extension:i,target:r,target2:e})}}catch(s){n.e(s)}finally{n.f()}}function pu(e,t){var r=t.extension,n=t.target,o=t.target2,i=Qr[r];B(i);for(var s=i.meta,u=s===void 0?{}:s,f=u.suffix,c=f===void 0?"":f,E=e.getExtension(r),R=function(){var m=d[l],g="".concat(m).concat(c),v=null;m==="meta"||typeof e[m]=="function"||(E&&typeof E[g]=="function"?v=function(){return E[g].apply(E,arguments)}:typeof i[m]=="function"&&(v=i[m].bind(n))),v&&(n[m]=v,o[m]=v)},l=0,d=Object.keys(i);l<d.length;l++)R()}function mu(e,t){var r=t.target,n=t.target2;Object.keys(cr).forEach(function(o){if(typeof cr[o]=="function"){var i=e[o]?e[o].bind(e):function(){},s=cr[o].bind(null,e,i);r[o]=s,n[o]=s}})}function qr(e){if(Array.isArray(e))return at(e)}function Ft(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Jr(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
18
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function J(e){return qr(e)||Ft(e)||Ye(e)||Jr()}var b,p,pe,Mt=(b={},_(b,a.BLEND,!1),_(b,a.BLEND_COLOR,new Float32Array([0,0,0,0])),_(b,a.BLEND_EQUATION_RGB,a.FUNC_ADD),_(b,a.BLEND_EQUATION_ALPHA,a.FUNC_ADD),_(b,a.BLEND_SRC_RGB,a.ONE),_(b,a.BLEND_DST_RGB,a.ZERO),_(b,a.BLEND_SRC_ALPHA,a.ONE),_(b,a.BLEND_DST_ALPHA,a.ZERO),_(b,a.COLOR_CLEAR_VALUE,new Float32Array([0,0,0,0])),_(b,a.COLOR_WRITEMASK,[!0,!0,!0,!0]),_(b,a.CULL_FACE,!1),_(b,a.CULL_FACE_MODE,a.BACK),_(b,a.DEPTH_TEST,!1),_(b,a.DEPTH_CLEAR_VALUE,1),_(b,a.DEPTH_FUNC,a.LESS),_(b,a.DEPTH_RANGE,new Float32Array([0,1])),_(b,a.DEPTH_WRITEMASK,!0),_(b,a.DITHER,!0),_(b,a.CURRENT_PROGRAM,null),_(b,a.FRAMEBUFFER_BINDING,null),_(b,a.RENDERBUFFER_BINDING,null),_(b,a.VERTEX_ARRAY_BINDING,null),_(b,a.ARRAY_BUFFER_BINDING,null),_(b,a.FRONT_FACE,a.CCW),_(b,a.GENERATE_MIPMAP_HINT,a.DONT_CARE),_(b,a.LINE_WIDTH,1),_(b,a.POLYGON_OFFSET_FILL,!1),_(b,a.POLYGON_OFFSET_FACTOR,0),_(b,a.POLYGON_OFFSET_UNITS,0),_(b,a.SAMPLE_ALPHA_TO_COVERAGE,!1),_(b,a.SAMPLE_COVERAGE,!1),_(b,a.SAMPLE_COVERAGE_VALUE,1),_(b,a.SAMPLE_COVERAGE_INVERT,!1),_(b,a.SCISSOR_TEST,!1),_(b,a.SCISSOR_BOX,new Int32Array([0,0,1024,1024])),_(b,a.STENCIL_TEST,!1),_(b,a.STENCIL_CLEAR_VALUE,0),_(b,a.STENCIL_WRITEMASK,4294967295),_(b,a.STENCIL_BACK_WRITEMASK,4294967295),_(b,a.STENCIL_FUNC,a.ALWAYS),_(b,a.STENCIL_REF,0),_(b,a.STENCIL_VALUE_MASK,4294967295),_(b,a.STENCIL_BACK_FUNC,a.ALWAYS),_(b,a.STENCIL_BACK_REF,0),_(b,a.STENCIL_BACK_VALUE_MASK,4294967295),_(b,a.STENCIL_FAIL,a.KEEP),_(b,a.STENCIL_PASS_DEPTH_FAIL,a.KEEP),_(b,a.STENCIL_PASS_DEPTH_PASS,a.KEEP),_(b,a.STENCIL_BACK_FAIL,a.KEEP),_(b,a.STENCIL_BACK_PASS_DEPTH_FAIL,a.KEEP),_(b,a.STENCIL_BACK_PASS_DEPTH_PASS,a.KEEP),_(b,a.VIEWPORT,[0,0,1024,1024]),_(b,a.PACK_ALIGNMENT,4),_(b,a.UNPACK_ALIGNMENT,4),_(b,a.UNPACK_FLIP_Y_WEBGL,!1),_(b,a.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1),_(b,a.UNPACK_COLORSPACE_CONVERSION_WEBGL,a.BROWSER_DEFAULT_WEBGL),_(b,a.TRANSFORM_FEEDBACK_BINDING,null),_(b,a.COPY_READ_BUFFER_BINDING,null),_(b,a.COPY_WRITE_BUFFER_BINDING,null),_(b,a.PIXEL_PACK_BUFFER_BINDING,null),_(b,a.PIXEL_UNPACK_BUFFER_BINDING,null),_(b,a.FRAGMENT_SHADER_DERIVATIVE_HINT,a.DONT_CARE),_(b,a.READ_FRAMEBUFFER_BINDING,null),_(b,a.RASTERIZER_DISCARD,!1),_(b,a.PACK_ROW_LENGTH,0),_(b,a.PACK_SKIP_PIXELS,0),_(b,a.PACK_SKIP_ROWS,0),_(b,a.UNPACK_ROW_LENGTH,0),_(b,a.UNPACK_IMAGE_HEIGHT,0),_(b,a.UNPACK_SKIP_PIXELS,0),_(b,a.UNPACK_SKIP_ROWS,0),_(b,a.UNPACK_SKIP_IMAGES,0),b),Ne=function(t,r,n){return r?t.enable(n):t.disable(n)},qa=function(t,r,n){return t.hint(n,r)},de=function(t,r,n){return t.pixelStorei(n,r)},Ja=function(t,r,n){var o;return n===a.FRAMEBUFFER_BINDING?o=W(t)?a.DRAW_FRAMEBUFFER:a.FRAMEBUFFER:o=a.READ_FRAMEBUFFER,t.bindFramebuffer(o,r)},Bt=function(t,r,n){var o,i=(o={},_(o,a.ARRAY_BUFFER_BINDING,a.ARRAY_BUFFER),_(o,a.COPY_READ_BUFFER_BINDING,a.COPY_READ_BUFFER),_(o,a.COPY_WRITE_BUFFER_BINDING,a.COPY_WRITE_BUFFER),_(o,a.PIXEL_PACK_BUFFER_BINDING,a.PIXEL_PACK_BUFFER),_(o,a.PIXEL_UNPACK_BUFFER_BINDING,a.PIXEL_UNPACK_BUFFER),o),s=i[n];t.bindBuffer(s,r)};function en(e){return Array.isArray(e)||ArrayBuffer.isView(e)&&!(e instanceof DataView)}var ei=(p={},_(p,a.BLEND,Ne),_(p,a.BLEND_COLOR,function(e,t){return e.blendColor.apply(e,J(t))}),_(p,a.BLEND_EQUATION_RGB,"blendEquation"),_(p,a.BLEND_EQUATION_ALPHA,"blendEquation"),_(p,a.BLEND_SRC_RGB,"blendFunc"),_(p,a.BLEND_DST_RGB,"blendFunc"),_(p,a.BLEND_SRC_ALPHA,"blendFunc"),_(p,a.BLEND_DST_ALPHA,"blendFunc"),_(p,a.COLOR_CLEAR_VALUE,function(e,t){return e.clearColor.apply(e,J(t))}),_(p,a.COLOR_WRITEMASK,function(e,t){return e.colorMask.apply(e,J(t))}),_(p,a.CULL_FACE,Ne),_(p,a.CULL_FACE_MODE,function(e,t){return e.cullFace(t)}),_(p,a.DEPTH_TEST,Ne),_(p,a.DEPTH_CLEAR_VALUE,function(e,t){return e.clearDepth(t)}),_(p,a.DEPTH_FUNC,function(e,t){return e.depthFunc(t)}),_(p,a.DEPTH_RANGE,function(e,t){return e.depthRange.apply(e,J(t))}),_(p,a.DEPTH_WRITEMASK,function(e,t){return e.depthMask(t)}),_(p,a.DITHER,Ne),_(p,a.FRAGMENT_SHADER_DERIVATIVE_HINT,qa),_(p,a.CURRENT_PROGRAM,function(e,t){return e.useProgram(t)}),_(p,a.RENDERBUFFER_BINDING,function(e,t){return e.bindRenderbuffer(a.RENDERBUFFER,t)}),_(p,a.TRANSFORM_FEEDBACK_BINDING,function(e,t){var r,n;return(r=(n=e).bindTransformFeedback)===null||r===void 0?void 0:r.call(n,a.TRANSFORM_FEEDBACK,t)}),_(p,a.VERTEX_ARRAY_BINDING,function(e,t){return e.bindVertexArray(t)}),_(p,a.FRAMEBUFFER_BINDING,Ja),_(p,a.READ_FRAMEBUFFER_BINDING,Ja),_(p,a.ARRAY_BUFFER_BINDING,Bt),_(p,a.COPY_READ_BUFFER_BINDING,Bt),_(p,a.COPY_WRITE_BUFFER_BINDING,Bt),_(p,a.PIXEL_PACK_BUFFER_BINDING,Bt),_(p,a.PIXEL_UNPACK_BUFFER_BINDING,Bt),_(p,a.FRONT_FACE,function(e,t){return e.frontFace(t)}),_(p,a.GENERATE_MIPMAP_HINT,qa),_(p,a.LINE_WIDTH,function(e,t){return e.lineWidth(t)}),_(p,a.POLYGON_OFFSET_FILL,Ne),_(p,a.POLYGON_OFFSET_FACTOR,"polygonOffset"),_(p,a.POLYGON_OFFSET_UNITS,"polygonOffset"),_(p,a.RASTERIZER_DISCARD,Ne),_(p,a.SAMPLE_ALPHA_TO_COVERAGE,Ne),_(p,a.SAMPLE_COVERAGE,Ne),_(p,a.SAMPLE_COVERAGE_VALUE,"sampleCoverage"),_(p,a.SAMPLE_COVERAGE_INVERT,"sampleCoverage"),_(p,a.SCISSOR_TEST,Ne),_(p,a.SCISSOR_BOX,function(e,t){return e.scissor.apply(e,J(t))}),_(p,a.STENCIL_TEST,Ne),_(p,a.STENCIL_CLEAR_VALUE,function(e,t){return e.clearStencil(t)}),_(p,a.STENCIL_WRITEMASK,function(e,t){return e.stencilMaskSeparate(a.FRONT,t)}),_(p,a.STENCIL_BACK_WRITEMASK,function(e,t){return e.stencilMaskSeparate(a.BACK,t)}),_(p,a.STENCIL_FUNC,"stencilFuncFront"),_(p,a.STENCIL_REF,"stencilFuncFront"),_(p,a.STENCIL_VALUE_MASK,"stencilFuncFront"),_(p,a.STENCIL_BACK_FUNC,"stencilFuncBack"),_(p,a.STENCIL_BACK_REF,"stencilFuncBack"),_(p,a.STENCIL_BACK_VALUE_MASK,"stencilFuncBack"),_(p,a.STENCIL_FAIL,"stencilOpFront"),_(p,a.STENCIL_PASS_DEPTH_FAIL,"stencilOpFront"),_(p,a.STENCIL_PASS_DEPTH_PASS,"stencilOpFront"),_(p,a.STENCIL_BACK_FAIL,"stencilOpBack"),_(p,a.STENCIL_BACK_PASS_DEPTH_FAIL,"stencilOpBack"),_(p,a.STENCIL_BACK_PASS_DEPTH_PASS,"stencilOpBack"),_(p,a.VIEWPORT,function(e,t){return e.viewport.apply(e,J(t))}),_(p,a.PACK_ALIGNMENT,de),_(p,a.UNPACK_ALIGNMENT,de),_(p,a.UNPACK_FLIP_Y_WEBGL,de),_(p,a.UNPACK_PREMULTIPLY_ALPHA_WEBGL,de),_(p,a.UNPACK_COLORSPACE_CONVERSION_WEBGL,de),_(p,a.PACK_ROW_LENGTH,de),_(p,a.PACK_SKIP_PIXELS,de),_(p,a.PACK_SKIP_ROWS,de),_(p,a.UNPACK_ROW_LENGTH,de),_(p,a.UNPACK_IMAGE_HEIGHT,de),_(p,a.UNPACK_SKIP_PIXELS,de),_(p,a.UNPACK_SKIP_ROWS,de),_(p,a.UNPACK_SKIP_IMAGES,de),_(p,"framebuffer",function(t,r){var n=r&&"handle"in r?r.handle:r;return t.bindFramebuffer(a.FRAMEBUFFER,n)}),_(p,"blend",function(t,r){return r?t.enable(a.BLEND):t.disable(a.BLEND)}),_(p,"blendColor",function(t,r){return t.blendColor.apply(t,J(r))}),_(p,"blendEquation",function(t,r){var n=typeof r=="number"?[r,r]:r;t.blendEquationSeparate.apply(t,J(n))}),_(p,"blendFunc",function(t,r){var n=r?.length===2?[].concat(J(r),J(r)):r;t.blendFuncSeparate.apply(t,J(n))}),_(p,"clearColor",function(t,r){return t.clearColor.apply(t,J(r))}),_(p,"clearDepth",function(t,r){return t.clearDepth(r)}),_(p,"clearStencil",function(t,r){return t.clearStencil(r)}),_(p,"colorMask",function(t,r){return t.colorMask.apply(t,J(r))}),_(p,"cull",function(t,r){return r?t.enable(a.CULL_FACE):t.disable(a.CULL_FACE)}),_(p,"cullFace",function(t,r){return t.cullFace(r)}),_(p,"depthTest",function(t,r){return r?t.enable(a.DEPTH_TEST):t.disable(a.DEPTH_TEST)}),_(p,"depthFunc",function(t,r){return t.depthFunc(r)}),_(p,"depthMask",function(t,r){return t.depthMask(r)}),_(p,"depthRange",function(t,r){return t.depthRange.apply(t,J(r))}),_(p,"dither",function(t,r){return r?t.enable(a.DITHER):t.disable(a.DITHER)}),_(p,"derivativeHint",function(t,r){t.hint(a.FRAGMENT_SHADER_DERIVATIVE_HINT,r)}),_(p,"frontFace",function(t,r){return t.frontFace(r)}),_(p,"mipmapHint",function(t,r){return t.hint(a.GENERATE_MIPMAP_HINT,r)}),_(p,"lineWidth",function(t,r){return t.lineWidth(r)}),_(p,"polygonOffsetFill",function(t,r){return r?t.enable(a.POLYGON_OFFSET_FILL):t.disable(a.POLYGON_OFFSET_FILL)}),_(p,"polygonOffset",function(t,r){return t.polygonOffset.apply(t,J(r))}),_(p,"sampleCoverage",function(t,r){return t.sampleCoverage.apply(t,J(r))}),_(p,"scissorTest",function(t,r){return r?t.enable(a.SCISSOR_TEST):t.disable(a.SCISSOR_TEST)}),_(p,"scissor",function(t,r){return t.scissor.apply(t,J(r))}),_(p,"stencilTest",function(t,r){return r?t.enable(a.STENCIL_TEST):t.disable(a.STENCIL_TEST)}),_(p,"stencilMask",function(t,r){r=en(r)?r:[r,r];var n=r,o=L(n,2),i=o[0],s=o[1];t.stencilMaskSeparate(a.FRONT,i),t.stencilMaskSeparate(a.BACK,s)}),_(p,"stencilFunc",function(t,r){r=en(r)&&r.length===3?[].concat(J(r),J(r)):r;var n=r,o=L(n,6),i=o[0],s=o[1],u=o[2],f=o[3],c=o[4],E=o[5];t.stencilFuncSeparate(a.FRONT,i,s,u),t.stencilFuncSeparate(a.BACK,f,c,E)}),_(p,"stencilOp",function(t,r){r=en(r)&&r.length===3?[].concat(J(r),J(r)):r;var n=r,o=L(n,6),i=o[0],s=o[1],u=o[2],f=o[3],c=o[4],E=o[5];t.stencilOpSeparate(a.FRONT,i,s,u),t.stencilOpSeparate(a.BACK,f,c,E)}),_(p,"viewport",function(t,r){return t.viewport.apply(t,J(r))}),p);function te(e,t,r){return t[e]!==void 0?t[e]:r[e]}var ti={blendEquation:function(t,r,n){return t.blendEquationSeparate(te(a.BLEND_EQUATION_RGB,r,n),te(a.BLEND_EQUATION_ALPHA,r,n))},blendFunc:function(t,r,n){return t.blendFuncSeparate(te(a.BLEND_SRC_RGB,r,n),te(a.BLEND_DST_RGB,r,n),te(a.BLEND_SRC_ALPHA,r,n),te(a.BLEND_DST_ALPHA,r,n))},polygonOffset:function(t,r,n){return t.polygonOffset(te(a.POLYGON_OFFSET_FACTOR,r,n),te(a.POLYGON_OFFSET_UNITS,r,n))},sampleCoverage:function(t,r,n){return t.sampleCoverage(te(a.SAMPLE_COVERAGE_VALUE,r,n),te(a.SAMPLE_COVERAGE_INVERT,r,n))},stencilFuncFront:function(t,r,n){return t.stencilFuncSeparate(a.FRONT,te(a.STENCIL_FUNC,r,n),te(a.STENCIL_REF,r,n),te(a.STENCIL_VALUE_MASK,r,n))},stencilFuncBack:function(t,r,n){return t.stencilFuncSeparate(a.BACK,te(a.STENCIL_BACK_FUNC,r,n),te(a.STENCIL_BACK_REF,r,n),te(a.STENCIL_BACK_VALUE_MASK,r,n))},stencilOpFront:function(t,r,n){return t.stencilOpSeparate(a.FRONT,te(a.STENCIL_FAIL,r,n),te(a.STENCIL_PASS_DEPTH_FAIL,r,n),te(a.STENCIL_PASS_DEPTH_PASS,r,n))},stencilOpBack:function(t,r,n){return t.stencilOpSeparate(a.BACK,te(a.STENCIL_BACK_FAIL,r,n),te(a.STENCIL_BACK_PASS_DEPTH_FAIL,r,n),te(a.STENCIL_BACK_PASS_DEPTH_PASS,r,n))}},tn={enable:function(t,r){return t(_({},r,!0))},disable:function(t,r){return t(_({},r,!1))},pixelStorei:function(t,r,n){return t(_({},r,n))},hint:function(t,r,n){return t(_({},r,n))},useProgram:function(t,r){return t(_({},a.CURRENT_PROGRAM,r))},bindRenderbuffer:function(t,r,n){return t(_({},a.RENDERBUFFER_BINDING,n))},bindTransformFeedback:function(t,r,n){return t(_({},a.TRANSFORM_FEEDBACK_BINDING,n))},bindVertexArray:function(t,r){return t(_({},a.VERTEX_ARRAY_BINDING,r))},bindFramebuffer:function(t,r,n){var o;switch(r){case a.FRAMEBUFFER:return t((o={},_(o,a.DRAW_FRAMEBUFFER_BINDING,n),_(o,a.READ_FRAMEBUFFER_BINDING,n),o));case a.DRAW_FRAMEBUFFER:return t(_({},a.DRAW_FRAMEBUFFER_BINDING,n));case a.READ_FRAMEBUFFER:return t(_({},a.READ_FRAMEBUFFER_BINDING,n));default:return null}},bindBuffer:function(t,r,n){var o,i=(o={},_(o,a.ARRAY_BUFFER,[a.ARRAY_BUFFER_BINDING]),_(o,a.COPY_READ_BUFFER,[a.COPY_READ_BUFFER_BINDING]),_(o,a.COPY_WRITE_BUFFER,[a.COPY_WRITE_BUFFER_BINDING]),_(o,a.PIXEL_PACK_BUFFER,[a.PIXEL_PACK_BUFFER_BINDING]),_(o,a.PIXEL_UNPACK_BUFFER,[a.PIXEL_UNPACK_BUFFER_BINDING]),o)[r];return i?t(_({},i,n)):{valueChanged:!0}},blendColor:function(t,r,n,o,i){return t(_({},a.BLEND_COLOR,new Float32Array([r,n,o,i])))},blendEquation:function(t,r){var n;return t((n={},_(n,a.BLEND_EQUATION_RGB,r),_(n,a.BLEND_EQUATION_ALPHA,r),n))},blendEquationSeparate:function(t,r,n){var o;return t((o={},_(o,a.BLEND_EQUATION_RGB,r),_(o,a.BLEND_EQUATION_ALPHA,n),o))},blendFunc:function(t,r,n){var o;return t((o={},_(o,a.BLEND_SRC_RGB,r),_(o,a.BLEND_DST_RGB,n),_(o,a.BLEND_SRC_ALPHA,r),_(o,a.BLEND_DST_ALPHA,n),o))},blendFuncSeparate:function(t,r,n,o,i){var s;return t((s={},_(s,a.BLEND_SRC_RGB,r),_(s,a.BLEND_DST_RGB,n),_(s,a.BLEND_SRC_ALPHA,o),_(s,a.BLEND_DST_ALPHA,i),s))},clearColor:function(t,r,n,o,i){return t(_({},a.COLOR_CLEAR_VALUE,new Float32Array([r,n,o,i])))},clearDepth:function(t,r){return t(_({},a.DEPTH_CLEAR_VALUE,r))},clearStencil:function(t,r){return t(_({},a.STENCIL_CLEAR_VALUE,r))},colorMask:function(t,r,n,o,i){return t(_({},a.COLOR_WRITEMASK,[r,n,o,i]))},cullFace:function(t,r){return t(_({},a.CULL_FACE_MODE,r))},depthFunc:function(t,r){return t(_({},a.DEPTH_FUNC,r))},depthRange:function(t,r,n){return t(_({},a.DEPTH_RANGE,new Float32Array([r,n])))},depthMask:function(t,r){return t(_({},a.DEPTH_WRITEMASK,r))},frontFace:function(t,r){return t(_({},a.FRONT_FACE,r))},lineWidth:function(t,r){return t(_({},a.LINE_WIDTH,r))},polygonOffset:function(t,r,n){var o;return t((o={},_(o,a.POLYGON_OFFSET_FACTOR,r),_(o,a.POLYGON_OFFSET_UNITS,n),o))},sampleCoverage:function(t,r,n){var o;return t((o={},_(o,a.SAMPLE_COVERAGE_VALUE,r),_(o,a.SAMPLE_COVERAGE_INVERT,n),o))},scissor:function(t,r,n,o,i){return t(_({},a.SCISSOR_BOX,new Int32Array([r,n,o,i])))},stencilMask:function(t,r){var n;return t((n={},_(n,a.STENCIL_WRITEMASK,r),_(n,a.STENCIL_BACK_WRITEMASK,r),n))},stencilMaskSeparate:function(t,r,n){return t(_({},r===a.FRONT?a.STENCIL_WRITEMASK:a.STENCIL_BACK_WRITEMASK,n))},stencilFunc:function(t,r,n,o){var i;return t((i={},_(i,a.STENCIL_FUNC,r),_(i,a.STENCIL_REF,n),_(i,a.STENCIL_VALUE_MASK,o),_(i,a.STENCIL_BACK_FUNC,r),_(i,a.STENCIL_BACK_REF,n),_(i,a.STENCIL_BACK_VALUE_MASK,o),i))},stencilFuncSeparate:function(t,r,n,o,i){var s;return t((s={},_(s,r===a.FRONT?a.STENCIL_FUNC:a.STENCIL_BACK_FUNC,n),_(s,r===a.FRONT?a.STENCIL_REF:a.STENCIL_BACK_REF,o),_(s,r===a.FRONT?a.STENCIL_VALUE_MASK:a.STENCIL_BACK_VALUE_MASK,i),s))},stencilOp:function(t,r,n,o){var i;return t((i={},_(i,a.STENCIL_FAIL,r),_(i,a.STENCIL_PASS_DEPTH_FAIL,n),_(i,a.STENCIL_PASS_DEPTH_PASS,o),_(i,a.STENCIL_BACK_FAIL,r),_(i,a.STENCIL_BACK_PASS_DEPTH_FAIL,n),_(i,a.STENCIL_BACK_PASS_DEPTH_PASS,o),i))},stencilOpSeparate:function(t,r,n,o,i){var s;return t((s={},_(s,r===a.FRONT?a.STENCIL_FAIL:a.STENCIL_BACK_FAIL,n),_(s,r===a.FRONT?a.STENCIL_PASS_DEPTH_FAIL:a.STENCIL_BACK_PASS_DEPTH_FAIL,o),_(s,r===a.FRONT?a.STENCIL_PASS_DEPTH_PASS:a.STENCIL_BACK_PASS_DEPTH_PASS,i),s))},viewport:function(t,r,n,o,i){return t(_({},a.VIEWPORT,[r,n,o,i]))}},Ce=function(t,r){return t.isEnabled(r)},rn=(pe={},_(pe,a.BLEND,Ce),_(pe,a.CULL_FACE,Ce),_(pe,a.DEPTH_TEST,Ce),_(pe,a.DITHER,Ce),_(pe,a.POLYGON_OFFSET_FILL,Ce),_(pe,a.SAMPLE_ALPHA_TO_COVERAGE,Ce),_(pe,a.SAMPLE_COVERAGE,Ce),_(pe,a.SCISSOR_TEST,Ce),_(pe,a.STENCIL_TEST,Ce),_(pe,a.RASTERIZER_DISCARD,Ce),pe),ri=new Set([a.ACTIVE_TEXTURE,a.TRANSFORM_FEEDBACK_ACTIVE,a.TRANSFORM_FEEDBACK_PAUSED,a.TRANSFORM_FEEDBACK_BUFFER_BINDING,a.UNIFORM_BUFFER_BINDING,a.ELEMENT_ARRAY_BUFFER_BINDING,a.IMPLEMENTATION_COLOR_READ_FORMAT,a.IMPLEMENTATION_COLOR_READ_TYPE,a.READ_BUFFER,a.DRAW_BUFFER0,a.DRAW_BUFFER1,a.DRAW_BUFFER2,a.DRAW_BUFFER3,a.DRAW_BUFFER4,a.DRAW_BUFFER5,a.DRAW_BUFFER6,a.DRAW_BUFFER7,a.DRAW_BUFFER8,a.DRAW_BUFFER9,a.DRAW_BUFFER10,a.DRAW_BUFFER11,a.DRAW_BUFFER12,a.DRAW_BUFFER13,a.DRAW_BUFFER14,a.DRAW_BUFFER15,a.SAMPLER_BINDING,a.TEXTURE_BINDING_2D,a.TEXTURE_BINDING_2D_ARRAY,a.TEXTURE_BINDING_3D,a.TEXTURE_BINDING_CUBE_MAP]);function hu(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Su(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
19
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function Su(e,t){if(e){if(typeof e=="string")return ni(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ni(e,t)}}function ni(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function ge(e,t){var r=ue.attach(e),n=r.gl;if(!gu(t)){var o={};for(var i in t){var s=Number(i),u=ei[i];u&&(typeof u=="string"?o[u]=!0:u(n,t[i],s))}var f=n.state&&n.state.cache;if(f)for(var c in o){var E=ti[c];E(n,t,f)}}}function lr(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Mt,r=ue.attach(e),n=r.gl;if(typeof t=="number"){var o=t,i=rn[o];return i?i(n,o):n.getParameter(o)}var s=Array.isArray(t)?t:Object.keys(t),u={},f=hu(s),c;try{for(f.s();!(c=f.n()).done;){var E=c.value,R=rn[E];u[E]=R?R(n,Number(E)):n.getParameter(Number(E))}}catch(l){f.e(l)}finally{f.f()}return u}function ai(e){ge(e,Mt)}function gu(e){for(var t in e)return!1;return!0}function ii(e,t){if(e===t)return!0;var r=Array.isArray(e)||ArrayBuffer.isView(e),n=Array.isArray(t)||ArrayBuffer.isView(t);if(r&&n&&e.length===t.length){for(var o=0;o<e.length;++o)if(e[o]!==t[o])return!1;return!0}return!1}var Ou=function(){function e(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=n.copyState,i=o===void 0?!1:o,s=n.log,u=s===void 0?function(){}:s;I(this,e),this.gl=void 0,this.program=null,this.stateStack=[],this.enable=!0,this.cache=void 0,this.log=void 0,this.gl=r,this.cache=i?lr(r):Object.assign({},Mt),this.log=u,this._updateCache=this._updateCache.bind(this),Object.seal(this)}var t=e.prototype;return t.push=function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.stateStack.push({})},t.pop=function(){B(this.stateStack.length>0);var n=this.stateStack[this.stateStack.length-1];ge(this.gl,n),this.stateStack.pop()},t._updateCache=function(n){var o=!1,i,s=this.stateStack.length>0?this.stateStack[this.stateStack.length-1]:null;for(var u in n){B(u!==void 0);var f=n[u],c=this.cache[u];ii(f,c)||(o=!0,i=c,s&&!(u in s)&&(s[u]=c),this.cache[u]=f)}return{valueChanged:o,oldValue:i}},P(e)}();function ze(e){return e.state}function Dt(e,t){var r=t.enable,n=r===void 0?!0:r,o=t.copyState;if(B(o!==void 0),!e.state){e.state=new Ou(e,{copyState:o}),bu(e);for(var i in tn){var s=tn[i];vu(e,i,s)}oi(e,"getParameter"),oi(e,"isEnabled")}var u=ze(e);return u.enable=n,e}function De(e){var t=ze(e);t||(Dt(e,{copyState:!1}),t=ze(e)),t.push()}function Ie(e){var t=ze(e);B(t),t.pop()}function oi(e,t){var r=e[t].bind(e);e[t]=function(o){if(o===void 0||ri.has(o))return r(o);var i=ze(e);return o in i.cache||(i.cache[o]=r(o)),i.enable?i.cache[o]:r(o)},Object.defineProperty(e[t],"name",{value:"".concat(t,"-from-cache"),configurable:!1})}function vu(e,t,r){if(e[t]){var n=e[t].bind(e);e[t]=function(){for(var i=ze(e),s=arguments.length,u=new Array(s),f=0;f<s;f++)u[f]=arguments[f];var c=r.apply(void 0,[i._updateCache].concat(u)),E=c.valueChanged,R=c.oldValue;return E&&n.apply(void 0,u),R},Object.defineProperty(e[t],"name",{value:"".concat(t,"-to-cache"),configurable:!1})}}function bu(e){var t=e.useProgram.bind(e);e.useProgram=function(n){var o=ze(e);o.program!==n&&(t(n),o.program=n)}}function si(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Et(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?si(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):si(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var Nu={webgl2:!0,webgl1:!0,powerPreference:"high-performance",onContextLost:function(){return console.error("WebGL context lost")},onContextRestored:function(){return console.info("WebGL context restored")}};function ui(e,t){t=Et(Et({},Nu),t);var r=null,n=function(E){return r=E.statusMessage||r};e.addEventListener("webglcontextcreationerror",n,!1);var o=null;if(t.type==="webgl2"&&(t=Et(Et({},t),{},{webgl1:!1})),t.type==="webgl1"&&(t=Et(Et({},t),{},{webgl2:!1})),!o&&t.webgl2&&(o=e.getContext("webgl2",t)),!o&&t.webgl1&&(o=e.getContext("webgl",t)),e.removeEventListener("webglcontextcreationerror",n,!1),!o)throw new Error("Failed to create ".concat(t.webgl2&&!t.webgl1?"WebGL2":"WebGL"," context: ").concat(r||"Unknown error"));if(t.onContextLost){var i=t,s=i.onContextLost;e.addEventListener("webglcontextlost",function(c){return s(c)},!1)}if(t.onContextRestored){var u=t,f=u.onContextRestored;e.addEventListener("webglcontextrestored",function(c){return f(c)},!1)}return o}function fi(e){var t=e.getParameter(a.VENDOR),r=e.getParameter(a.RENDERER),n=e.getExtension("WEBGL_debug_renderer_info"),o=e.getParameter(n?n.UNMASKED_VENDOR_WEBGL:a.VENDOR),i=e.getParameter(n?n.UNMASKED_RENDERER_WEBGL:a.RENDERER),s=o||t,u=i||r,f=Cu(s,u);return{type:W(e)?"webgl2":"webgl",gpu:f,vendor:o||t,renderer:i||r,version:e.getParameter(a.VERSION),shadingLanguages:["glsl"],shadingLanguageVersions:{glsl:e.getParameter(a.SHADING_LANGUAGE_VERSION)}}}function Cu(e,t){return/NVIDIA/i.exec(e)||/NVIDIA/i.exec(t)?"nvidia":/INTEL/i.exec(e)||/INTEL/i.exec(t)?"intel":/Apple/i.exec(e)||/Apple/i.exec(t)?"apple":/AMD/i.exec(e)||/AMD/i.exec(t)||/ATI/i.exec(e)||/ATI/i.exec(t)?"amd":/SwiftShader/i.exec(e)||/SwiftShader/i.exec(t)?"software":"unknown"}function _i(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=typeof window<"u"?window.navigator||{}:{},r=e.userAgent||t.userAgent||"",n=r.indexOf("MSIE ")!==-1,o=r.indexOf("Trident/")!==-1;return n||o}function Rr(e){switch(e){case"uint8":return a.UNSIGNED_BYTE;case"sint8":return a.BYTE;case"unorm8":return a.UNSIGNED_BYTE;case"snorm8":return a.BYTE;case"uint16":return a.UNSIGNED_SHORT;case"sint16":return a.SHORT;case"unorm16":return a.UNSIGNED_SHORT;case"snorm16":return a.SHORT;case"uint32":return a.UNSIGNED_INT;case"sint32":return a.INT;case"float16":return a.HALF_FLOAT;case"float32":return a.FLOAT}throw new Error(String(e))}var ce,Pe,fe="texture-compression-bc",Y="texture-compression-astc",ye="texture-compression-etc2",Iu="texture-compression-etc1-webgl",dr="texture-compression-pvrtc-webgl",nn="texture-compression-atc-webgl",xt="WEBGL_compressed_texture_s3tc",Ut="WEBGL_compressed_texture_s3tc_srgb",lt="EXT_texture_compression_rgtc",wt="EXT_texture_compression_bptc",Pu="WEBGL_compressed_texture_etc",yu="WEBGL_compressed_texture_astc",Fu="WEBGL_compressed_texture_etc1",Bu="WEBGL_compressed_texture_pvrtc",Mu="WEBGL_compressed_texture_atc",ci="EXT_sRGB",xe="EXT_texture_norm16",Du="WEBGL_color_buffer_float",xu="EXT_color_buffer_float",Oe=function(t,r){return t.getExtension(r)},$e=function(t,r){return r.every(function(n){return t.getExtension(n)})},an={"texture-blend-float-webgl1":function(t){return W(t)?!0:Oe(t,"EXT_float_blend")},"texture-formats-srgb-webgl1":function(t){return W(t)?!0:Oe(t,ci)},"texture-formats-depth-webgl1":function(t){return W(t)?!0:Oe(t,"WEBGL_depth_texture")},"texture-formats-float32-webgl1":function(t){return W(t)?!0:Oe(t,"OES_texture_float")},"texture-formats-float16-webgl1":function(t){return W(t)?!0:Oe(t,"OES_texture_half_float")},"texture-formats-norm16-webgl":function(t){return W(t)?Oe(t,xe):!1},"texture-filter-linear-float32-webgl":function(t){return Oe(t,"OES_texture_float_linear")},"texture-filter-linear-float16-webgl":function(t){return Oe(t,"OES_texture_half_float_linear")},"texture-filter-anisotropic-webgl":function(t){return Oe(t,"EXT_texture_filter_anisotropic")},"texture-renderable-float32-webgl":function(t){return Oe(t,"EXT_color_buffer_float")},"texture-renderable-float16-webgl":function(t){return Oe(t,"EXT_color_buffer_half_float")},"texture-compression-bc":function(t){return $e(t,[xt,Ut,lt,wt])},"texture-compression-bc5-webgl":function(t){return $e(t,[lt])},"texture-compression-etc2":function(t){return $e(t,[Pu])},"texture-compression-astc":function(t){return $e(t,[yu])},"texture-compression-etc1-webgl":function(t){return $e(t,[Fu])},"texture-compression-pvrtc-webgl":function(t){return $e(t,[Bu])},"texture-compression-atc-webgl":function(t){return $e(t,[Mu])}};function Uu(e,t){var r;return((r=an[t])===null||r===void 0?void 0:r.call(an,e))||!1}function Ei(e){var t=Object.keys(an);return t.filter(function(r){return Uu(e,r)})}var Ze={"rgb8unorm-unsized":{gl:a.RGB,gl1:a.RGB,b:4,c:2,bpp:4,dataFormat:a.RGB,types:[a.UNSIGNED_BYTE,a.UNSIGNED_SHORT_5_6_5]},"rgba8unorm-unsized":{gl:a.RGBA,gl1:a.RGBA,b:4,c:2,bpp:4,dataFormat:a.RGBA,types:[a.UNSIGNED_BYTE,a.UNSIGNED_SHORT_4_4_4_4,a.UNSIGNED_SHORT_5_5_5_1]},r8unorm:{gl:a.R8,b:1,c:1,renderbuffer:!0},r8snorm:{gl:a.R8_SNORM,b:1,c:1},r8uint:{gl:a.R8UI,b:1,c:1,renderbuffer:!0},r8sint:{gl:a.R8I,b:1,c:1,renderbuffer:!0},rg8unorm:{gl:a.RG8,b:2,c:2,renderbuffer:!0},rg8snorm:{gl:a.RG8_SNORM,b:2,c:2},rg8uint:{gl:a.RG8UI,b:2,c:2,renderbuffer:!0},rg8sint:{gl:a.RG8I,b:2,c:2,renderbuffer:!0},r16uint:{gl:a.R16UI,b:2,c:1,renderbuffer:!0},r16sint:{gl:a.R16I,b:2,c:1,renderbuffer:!0},r16float:{gl:a.R16F,b:2,c:1,render:"texture-renderable-float16-webgl",filter:"texture-filter-linear-float16-webgl",renderbuffer:!0},"r16unorm-webgl":{gl:a.R16_EXT,b:2,c:1,f:"texture-formats-norm16-webgl",renderbuffer:!0,x:xe},"r16snorm-webgl":{gl:a.R16_SNORM_EXT,b:2,c:1,f:"texture-formats-norm16-webgl",x:xe},"rgba4unorm-webgl":{gl:a.RGBA4,b:2,c:4,wgpu:!1,renderbuffer:!0},"rgb565unorm-webgl":{gl:a.RGB565,b:2,c:4,wgpu:!1,renderbuffer:!0},"rgb5a1unorm-webgl":{gl:a.RGB5_A1,b:2,c:4,wgpu:!1,renderbuffer:!0},"rgb8unorm-webgl":{gl:a.RGB8,b:3,c:3,wgpu:!1},"rgb8snorm-webgl":{gl:a.RGB8_SNORM,b:3,c:3,wgpu:!1},rgba8unorm:{gl:a.RGBA8,gl1:a.RGBA,b:4,c:2,bpp:4},"rgba8unorm-srgb":{gl:a.SRGB8_ALPHA8,gl1:a.SRGB_ALPHA_EXT,b:4,c:4,gl1ext:ci,bpp:4},rgba8snorm:{gl:a.RGBA8_SNORM,b:4,c:4},rgba8uint:{gl:a.RGBA8UI,b:4,c:4,bpp:4},rgba8sint:{gl:a.RGBA8I,b:4,c:4,bpp:4},bgra8unorm:{b:4,c:4},"bgra8unorm-srgb":{b:4,c:4},rg16uint:{gl:a.RG16UI,b:4,c:1,bpp:4},rg16sint:{gl:a.RG16I,b:4,c:2,bpp:4},rg16float:{gl:a.RG16F,bpp:4,b:4,c:2,render:"texture-renderable-float16-webgl",filter:"texture-filter-linear-float16-webgl",renderbuffer:!0},"rg16unorm-webgl":{gl:a.RG16_EXT,b:2,c:2,f:"texture-formats-norm16-webgl",x:xe},"rg16snorm-webgl":{gl:a.RG16_SNORM_EXT,b:2,c:2,f:"texture-formats-norm16-webgl",x:xe},r32uint:{gl:a.R32UI,b:4,c:1,bpp:4,renderbuffer:!0},r32sint:{gl:a.R32I,b:4,c:1,bpp:4,renderbuffer:!0},r32float:{gl:a.R32F,bpp:4,b:4,c:1,render:"texture-renderable-float32-webgl",filter:"texture-filter-linear-float32-webgl"},rgb9e5ufloat:{gl:a.RGB9_E5,b:4,c:3,p:1,render:"texture-renderable-float16-webgl",filter:"texture-filter-linear-float16-webgl"},rg11b10ufloat:{gl:a.R11F_G11F_B10F,b:4,c:3,p:1,render:"texture-renderable-float32-webgl",renderbuffer:!0},rgb10a2unorm:{gl:a.RGB10_A2,b:4,c:4,p:1,renderbuffer:!0},"rgb10a2unorm-webgl":{b:4,c:4,gl:a.RGB10_A2UI,p:1,wgpu:!1,bpp:4,renderbuffer:!0},"rgb16unorm-webgl":{gl:a.RGB16_EXT,b:2,c:3,f:"texture-formats-norm16-webgl",x:xe},"rgb16snorm-webgl":{gl:a.RGB16_SNORM_EXT,b:2,c:3,f:"texture-formats-norm16-webgl",x:xe},rg32uint:{gl:a.RG32UI,b:8,c:2,renderbuffer:!0},rg32sint:{gl:a.RG32I,b:8,c:2,renderbuffer:!0},rg32float:{gl:a.RG32F,b:8,c:2,render:"texture-renderable-float32-webgl",filter:"texture-filter-linear-float32-webgl",renderbuffer:!0},rgba16uint:{gl:a.RGBA16UI,b:8,c:4,renderbuffer:!0},rgba16sint:{gl:a.RGBA16I,b:8,c:4,renderbuffer:!0},rgba16float:{gl:a.RGBA16F,gl1:a.RGBA,b:8,c:4,render:"texture-renderable-float16-webgl",filter:"texture-filter-linear-float16-webgl"},"rgba16unorm-webgl":{gl:a.RGBA16_EXT,b:2,c:4,f:"texture-formats-norm16-webgl",renderbuffer:!0,x:xe},"rgba16snorm-webgl":{gl:a.RGBA16_SNORM_EXT,b:2,c:4,f:"texture-formats-norm16-webgl",x:xe},"rgb32float-webgl":{gl:a.RGB32F,gl1:a.RGB,render:"texture-renderable-float32-webgl",filter:"texture-filter-linear-float32-webgl",gl2ext:xu,gl1ext:Du,dataFormat:a.RGB,types:[a.FLOAT]},rgba32uint:{gl:a.RGBA32UI,b:16,c:4,renderbuffer:!0},rgba32sint:{gl:a.RGBA32I,b:16,c:4,renderbuffer:!0},rgba32float:{gl:a.RGBA32F,b:16,c:4,render:"texture-renderable-float32-webgl",filter:"texture-filter-linear-float32-webgl",renderbuffer:!0},stencil8:{gl:a.STENCIL_INDEX8,gl1:a.STENCIL_INDEX8,b:1,c:1,attachment:a.STENCIL_ATTACHMENT,renderbuffer:!0},depth16unorm:{gl:a.DEPTH_COMPONENT16,gl1:a.DEPTH_COMPONENT16,b:2,c:1,attachment:a.DEPTH_ATTACHMENT,renderbuffer:!0},depth24plus:{gl:a.DEPTH_COMPONENT24,b:3,c:1,attachment:a.DEPTH_ATTACHMENT},depth32float:{gl:a.DEPTH_COMPONENT32F,b:4,c:1,attachment:a.DEPTH_ATTACHMENT,renderbuffer:!0},"depth24plus-stencil8":{gl:a.DEPTH_STENCIL,gl1:a.DEPTH_STENCIL,b:4,c:2,p:1,attachment:a.DEPTH_STENCIL_ATTACHMENT,renderbuffer:!0,depthTexture:!0},"depth24unorm-stencil8":{gl:a.DEPTH24_STENCIL8,b:4,c:2,p:1,attachment:a.DEPTH_STENCIL_ATTACHMENT,renderbuffer:!0},"depth32float-stencil8":{gl:a.DEPTH32F_STENCIL8,b:5,c:2,p:1,attachment:a.DEPTH_STENCIL_ATTACHMENT,renderbuffer:!0},"bc1-rgb-unorm-webgl":{gl:a.COMPRESSED_RGB_S3TC_DXT1_EXT,x:xt,f:fe},"bc1-rgb-unorm-srgb-webgl":{gl:a.COMPRESSED_SRGB_S3TC_DXT1_EXT,x:Ut,f:fe},"bc1-rgba-unorm":{gl:a.COMPRESSED_RGBA_S3TC_DXT1_EXT,x:xt,f:fe},"bc1-rgba-unorm-srgb":{gl:a.COMPRESSED_SRGB_S3TC_DXT1_EXT,x:Ut,f:fe},"bc2-rgba-unorm":{gl:a.COMPRESSED_RGBA_S3TC_DXT3_EXT,x:xt,f:fe},"bc2-rgba-unorm-srgb":{gl:a.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,x:Ut,f:fe},"bc3-rgba-unorm":{gl:a.COMPRESSED_RGBA_S3TC_DXT5_EXT,x:xt,f:fe},"bc3-rgba-unorm-srgb":{gl:a.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,x:Ut,f:fe},"bc4-r-unorm":{gl:a.COMPRESSED_RED_RGTC1_EXT,x:lt,f:fe},"bc4-r-snorm":{gl:a.COMPRESSED_SIGNED_RED_RGTC1_EXT,x:lt,f:fe},"bc5-rg-unorm":{gl:a.COMPRESSED_RED_GREEN_RGTC2_EXT,x:lt,f:fe},"bc5-rg-snorm":{gl:a.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,x:lt,f:fe},"bc6h-rgb-ufloat":{gl:a.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT,x:wt,f:fe},"bc6h-rgb-float":{gl:a.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT,x:wt,f:fe},"bc7-rgba-unorm":{gl:a.COMPRESSED_RGBA_BPTC_UNORM_EXT,x:wt,f:fe},"bc7-rgba-unorm-srgb":{gl:a.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT,x:wt,f:fe},"etc2-rgb8unorm":{gl:a.COMPRESSED_RGB8_ETC2,f:ye},"etc2-rgb8unorm-srgb":{gl:a.COMPRESSED_SRGB8_ETC2,f:ye},"etc2-rgb8a1unorm":{gl:a.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,f:ye},"etc2-rgb8a1unorm-srgb":{gl:a.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,f:ye},"etc2-rgba8unorm":{gl:a.COMPRESSED_RGBA8_ETC2_EAC,f:ye},"etc2-rgba8unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,f:ye},"eac-r11unorm":{gl:a.COMPRESSED_R11_EAC,f:ye},"eac-r11snorm":{gl:a.COMPRESSED_SIGNED_R11_EAC,f:ye},"eac-rg11unorm":{gl:a.COMPRESSED_RG11_EAC,f:ye},"eac-rg11snorm":{gl:a.COMPRESSED_SIGNED_RG11_EAC,f:ye},"astc-4x4-unorm":{gl:a.COMPRESSED_RGBA_ASTC_4x4_KHR,f:Y},"astc-4x4-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,f:Y},"astc-5x4-unorm":{gl:a.COMPRESSED_RGBA_ASTC_5x4_KHR,f:Y},"astc-5x4-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR,f:Y},"astc-5x5-unorm":{gl:a.COMPRESSED_RGBA_ASTC_5x5_KHR,f:Y},"astc-5x5-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,f:Y},"astc-6x5-unorm":{gl:a.COMPRESSED_RGBA_ASTC_6x5_KHR,f:Y},"astc-6x5-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,f:Y},"astc-6x6-unorm":{gl:a.COMPRESSED_RGBA_ASTC_6x6_KHR,f:Y},"astc-6x6-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,f:Y},"astc-8x5-unorm":{gl:a.COMPRESSED_RGBA_ASTC_8x5_KHR,f:Y},"astc-8x5-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,f:Y},"astc-8x6-unorm":{gl:a.COMPRESSED_RGBA_ASTC_8x6_KHR,f:Y},"astc-8x6-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,f:Y},"astc-8x8-unorm":{gl:a.COMPRESSED_RGBA_ASTC_8x8_KHR,f:Y},"astc-8x8-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,f:Y},"astc-10x5-unorm":{gl:a.COMPRESSED_RGBA_ASTC_10x10_KHR,f:Y},"astc-10x5-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,f:Y},"astc-10x6-unorm":{gl:a.COMPRESSED_RGBA_ASTC_10x6_KHR,f:Y},"astc-10x6-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,f:Y},"astc-10x8-unorm":{gl:a.COMPRESSED_RGBA_ASTC_10x8_KHR,f:Y},"astc-10x8-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,f:Y},"astc-10x10-unorm":{gl:a.COMPRESSED_RGBA_ASTC_10x10_KHR,f:Y},"astc-10x10-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,f:Y},"astc-12x10-unorm":{gl:a.COMPRESSED_RGBA_ASTC_12x10_KHR,f:Y},"astc-12x10-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,f:Y},"astc-12x12-unorm":{gl:a.COMPRESSED_RGBA_ASTC_12x12_KHR,f:Y},"astc-12x12-unorm-srgb":{gl:a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,f:Y},"pvrtc-rgb4unorm-webgl":{gl:a.COMPRESSED_RGB_PVRTC_4BPPV1_IMG,f:dr},"pvrtc-rgba4unorm-webgl":{gl:a.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,f:dr},"pvrtc-rbg2unorm-webgl":{gl:a.COMPRESSED_RGB_PVRTC_2BPPV1_IMG,f:dr},"pvrtc-rgba2unorm-webgl":{gl:a.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,f:dr},"etc1-rbg-unorm-webgl":{gl:a.COMPRESSED_RGB_ETC1_WEBGL,f:Iu},"atc-rgb-unorm-webgl":{gl:a.COMPRESSED_RGB_ATC_WEBGL,f:nn},"atc-rgba-unorm-webgl":{gl:a.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL,f:nn},"atc-rgbai-unorm-webgl":{gl:a.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL,f:nn}},wu=(ce={},_(ce,a.RED,1),_(ce,a.RED_INTEGER,1),_(ce,a.RG,2),_(ce,a.RG_INTEGER,2),_(ce,a.RGB,3),_(ce,a.RGB_INTEGER,3),_(ce,a.RGBA,4),_(ce,a.RGBA_INTEGER,4),_(ce,a.DEPTH_COMPONENT,1),_(ce,a.DEPTH_STENCIL,1),_(ce,a.ALPHA,1),_(ce,a.LUMINANCE,1),_(ce,a.LUMINANCE_ALPHA,2),ce),Xu=(Pe={},_(Pe,a.FLOAT,4),_(Pe,a.UNSIGNED_INT,4),_(Pe,a.INT,4),_(Pe,a.UNSIGNED_SHORT,2),_(Pe,a.SHORT,2),_(Pe,a.HALF_FLOAT,2),_(Pe,a.BYTE,1),_(Pe,a.UNSIGNED_BYTE,1),Pe);function Xt(e,t){var r=Qe(t),n=Ze[r];if(!n||(W(e)?n.gl===void 0:n.gl1===void 0))return!1;var o=n.x||W(e)&&n.gl2ext||n.gl1ext;return o?Boolean(e.getExtension(o)):!0}function li(e,t){var r;return Xt(e,t)&&((r=Ze[t])===null||r===void 0?void 0:r.renderbuffer)}function Qe(e){if(typeof e=="string")return e;var t=Object.entries(Ze).find(function(r){var n=L(r,2),o=n[1];return o.gl===e||o.gl1===e});if(!t)throw new Error("Unknown texture format ".concat(e));return t[0]}function Lt(e,t){var r=Ze[e],n=t?r?.gl:r?.gl1;if(n===void 0)throw new Error("Unsupported texture format ".concat(e));return n}function Ri(e,t){var r=Qe(t);if(!Xt(e,r))return!1;try{var n=fr(r);if(n.signed)return!1}catch{return!1}return r.endsWith("32float")?Boolean(e.getExtension("OES_texture_float_linear")):r.endsWith("16float")?Boolean(e.getExtension("OES_texture_half_float_linear")):!0}function di(e,t){var r=Qe(t);return!(!Xt(e,r)||typeof r=="number")}function Tr(e,t){var r=Qe(e),n=Lt(r,t),o=fr(r);return{format:n,dataFormat:Lu(o.format,o.integer,o.normalized,n),type:o.dataType?Rr(o.dataType):a.UNSIGNED_BYTE,compressed:o.compressed}}function Ti(e){var t=Ze[e];if(!(t!=null&&t.attachment))throw new Error("".concat(e," is not a depth stencil format"));return t.attachment}function Ar(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.RGBA,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:a.RGBA,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:a.UNSIGNED_BYTE,o=null,i=null;try{o=e.createTexture(),e.bindTexture(a.TEXTURE_2D,o);var s=0,u=1,f=1,c=0,E=new Uint8Array([0,0,255,255]);e.texImage2D(e.TEXTURE_2D,s,t,u,f,c,r,n,E),i=e.createFramebuffer(),e.bindFramebuffer(a.FRAMEBUFFER,i),e.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,o,0);var R=e.checkFramebufferStatus(a.FRAMEBUFFER)===a.FRAMEBUFFER_COMPLETE;return e.bindTexture(a.TEXTURE_2D,null),R}finally{e.deleteTexture(o),e.deleteFramebuffer(i)}}function Ht(e,t){var r=Qe(e),n=Tr(r,t),o=wu[n.dataFormat]||4,i=Xu[n.type]||1;return o*i}function Lu(e,t,r,n){if(n===a.RGBA||n===a.RGB)return n;switch(e){case"r":return t&&!r?a.RED_INTEGER:a.RED;case"rg":return t&&!r?a.RG_INTEGER:a.RG;case"rgb":return t&&!r?a.RGB_INTEGER:a.RGB;case"rgba":return t&&!r?a.RGBA_INTEGER:a.RGBA;default:return a.RGBA}}function Hu(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Wu(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
20
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function Wu(e,t){if(e){if(typeof e=="string")return Ai(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Ai(e,t)}}function Ai(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function pi(e){var t=Vu(e),r=Hu(Ei(e)),n;try{for(r.s();!(n=r.n()).done;){var o=n.value;t.add(o)}}catch(i){r.e(i)}finally{r.f()}return t}function Vu(e){e.getExtension("EXT_color_buffer_float"),e.getExtension("WEBGL_color_buffer_float"),e.getExtension("EXT_float_blend");for(var t=new Set,r=0,n=Object.keys(mi);r<n.length;r++){var o=n[r];ju(e,o)&&t.add(o)}return t}function ju(e,t){var r=mi[t];if(!r)return!1;var n=r||[],o=L(n,2),i=o[0],s=o[1],u=W(e)?s:i;if(typeof u=="boolean")return u;switch(t){case"texture-renderable-rgba32float-webgl":return W(e)?Boolean(e.getExtension(u)):Ar(e);case"glsl-derivatives":return sn(e,u);case"glsl-frag-data":return sn(e,u,{behavior:"require"});case"glsl-frag-depth":return sn(e,u);default:return Boolean(e.getExtension(u))}}var on={};function sn(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(!_i(r))return!0;if(t in on)return on[t];var n=r.behavior||"enable",o="#extension GL_".concat(t," : ").concat(n,`
21
+ void main(void) {}`),i=e.createShader(e.VERTEX_SHADER);if(!i)throw new Error("shader");e.shaderSource(i,o),e.compileShader(i);var s=e.getShaderParameter(i,e.COMPILE_STATUS);return e.deleteShader(i),on[t]=s,s}var mi={webgl:[!0,!0],webgl2:[!1,!0],"timer-query-webgl":["EXT_disjoint_timer_query","EXT_disjoint_timer_query_webgl2"],"vertex-array-object-webgl1":["OES_vertex_array_object",!0],"instanced-rendering-webgl1":["ANGLE_instanced_arrays",!0],"multiple-render-targets-webgl1":["WEBGL_draw_buffers",!0],"index-uint32-webgl1":["OES_element_index_uint",!0],"blend-minmax-webgl1":["EXT_blend_minmax",!0],"texture-blend-float-webgl1":["EXT_float_blend","EXT_float_blend"],"texture-formats-srgb-webgl1":["EXT_sRGB",!0],"texture-formats-depth-webgl1":["WEBGL_depth_texture",!0],"texture-formats-float32-webgl1":["OES_texture_float",!0],"texture-formats-float16-webgl1":["OES_texture_half_float",!0],"texture-filter-linear-float32-webgl":["OES_texture_float_linear","OES_texture_float_linear"],"texture-filter-linear-float16-webgl":["OES_texture_half_float_linear","OES_texture_half_float_linear"],"texture-filter-anisotropic-webgl":["EXT_texture_filter_anisotropic","EXT_texture_filter_anisotropic"],"texture-renderable-rgba32float-webgl":["WEBGL_color_buffer_float","EXT_color_buffer_float"],"texture-renderable-float32-webgl":[!1,"EXT_color_buffer_float"],"texture-renderable-float16-webgl":["EXT_color_buffer_half_float","EXT_color_buffer_half_float"],"glsl-frag-data":["WEBGL_draw_buffers",!0],"glsl-frag-depth":["EXT_frag_depth",!0],"glsl-derivatives":["OES_standard_derivatives",!0],"glsl-texture-lod":["EXT_shader_texture_lod",!0]};function hi(e){var t=yt(e);return{maxTextureDimension1D:0,maxTextureDimension2D:e.getParameter(a.MAX_TEXTURE_SIZE),maxTextureDimension3D:t?t.getParameter(a.MAX_3D_TEXTURE_SIZE):0,maxTextureArrayLayers:t?t.getParameter(a.MAX_ARRAY_TEXTURE_LAYERS):0,maxBindGroups:1,maxDynamicUniformBuffersPerPipelineLayout:0,maxDynamicStorageBuffersPerPipelineLayout:0,maxSampledTexturesPerShaderStage:e.getParameter(a.MAX_VERTEX_TEXTURE_IMAGE_UNITS),maxSamplersPerShaderStage:e.getParameter(a.MAX_COMBINED_TEXTURE_IMAGE_UNITS),maxStorageBuffersPerShaderStage:0,maxStorageTexturesPerShaderStage:0,maxUniformBuffersPerShaderStage:t?t.getParameter(a.MAX_UNIFORM_BUFFER_BINDINGS):0,maxUniformBufferBindingSize:t?t.getParameter(a.MAX_UNIFORM_BLOCK_SIZE):0,maxStorageBufferBindingSize:0,minUniformBufferOffsetAlignment:t?t.getParameter(a.UNIFORM_BUFFER_OFFSET_ALIGNMENT):0,minStorageBufferOffsetAlignment:0,maxVertexBuffers:0,maxVertexAttributes:e.getParameter(a.MAX_VERTEX_ATTRIBS),maxVertexBufferArrayStride:2048,maxInterStageShaderComponents:t?t.getParameter(a.MAX_VARYING_COMPONENTS):0,maxComputeWorkgroupStorageSize:0,maxComputeInvocationsPerWorkgroup:0,maxComputeWorkgroupSizeX:0,maxComputeWorkgroupSizeY:0,maxComputeWorkgroupSizeZ:0,maxComputeWorkgroupsPerDimension:0}}function Si(e){var t,r=yt(e);function n(i){return e.getParameter(i)}function o(i,s){return r?r.getParameter(i):s||0}return t={},_(t,a.ALIASED_LINE_WIDTH_RANGE,n(a.ALIASED_LINE_WIDTH_RANGE)),_(t,a.ALIASED_POINT_SIZE_RANGE,n(a.ALIASED_POINT_SIZE_RANGE)),_(t,a.MAX_TEXTURE_SIZE,n(a.MAX_TEXTURE_SIZE)),_(t,a.MAX_CUBE_MAP_TEXTURE_SIZE,n(a.MAX_CUBE_MAP_TEXTURE_SIZE)),_(t,a.MAX_TEXTURE_IMAGE_UNITS,n(a.MAX_TEXTURE_IMAGE_UNITS)),_(t,a.MAX_COMBINED_TEXTURE_IMAGE_UNITS,n(a.MAX_COMBINED_TEXTURE_IMAGE_UNITS)),_(t,a.MAX_VERTEX_TEXTURE_IMAGE_UNITS,n(a.MAX_VERTEX_TEXTURE_IMAGE_UNITS)),_(t,a.MAX_RENDERBUFFER_SIZE,n(a.MAX_RENDERBUFFER_SIZE)),_(t,a.MAX_VARYING_VECTORS,n(a.MAX_VARYING_VECTORS)),_(t,a.MAX_VERTEX_ATTRIBS,n(a.MAX_VERTEX_ATTRIBS)),_(t,a.MAX_VERTEX_UNIFORM_VECTORS,n(a.MAX_VERTEX_UNIFORM_VECTORS)),_(t,a.MAX_FRAGMENT_UNIFORM_VECTORS,n(a.MAX_FRAGMENT_UNIFORM_VECTORS)),_(t,a.MAX_VIEWPORT_DIMS,n(a.MAX_VIEWPORT_DIMS)),_(t,a.MAX_TEXTURE_MAX_ANISOTROPY_EXT,n(a.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),_(t,a.MAX_3D_TEXTURE_SIZE,o(a.MAX_3D_TEXTURE_SIZE)),_(t,a.MAX_ARRAY_TEXTURE_LAYERS,o(a.MAX_ARRAY_TEXTURE_LAYERS)),_(t,a.MAX_CLIENT_WAIT_TIMEOUT_WEBGL,o(a.MAX_CLIENT_WAIT_TIMEOUT_WEBGL)),_(t,a.MAX_COLOR_ATTACHMENTS,o(a.MAX_COLOR_ATTACHMENTS)),_(t,a.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS,o(a.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS)),_(t,a.MAX_COMBINED_UNIFORM_BLOCKS,o(a.MAX_COMBINED_UNIFORM_BLOCKS)),_(t,a.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS,o(a.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS)),_(t,a.MAX_DRAW_BUFFERS,o(a.MAX_DRAW_BUFFERS)),_(t,a.MAX_ELEMENT_INDEX,o(a.MAX_ELEMENT_INDEX)),_(t,a.MAX_ELEMENTS_INDICES,o(a.MAX_ELEMENTS_INDICES)),_(t,a.MAX_ELEMENTS_VERTICES,o(a.MAX_ELEMENTS_VERTICES)),_(t,a.MAX_FRAGMENT_INPUT_COMPONENTS,o(a.MAX_FRAGMENT_INPUT_COMPONENTS)),_(t,a.MAX_FRAGMENT_UNIFORM_BLOCKS,o(a.MAX_FRAGMENT_UNIFORM_BLOCKS)),_(t,a.MAX_FRAGMENT_UNIFORM_COMPONENTS,o(a.MAX_FRAGMENT_UNIFORM_COMPONENTS)),_(t,a.MAX_SAMPLES,o(a.MAX_SAMPLES)),_(t,a.MAX_SERVER_WAIT_TIMEOUT,o(a.MAX_SERVER_WAIT_TIMEOUT)),_(t,a.MAX_TEXTURE_LOD_BIAS,o(a.MAX_TEXTURE_LOD_BIAS)),_(t,a.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS,o(a.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS)),_(t,a.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS,o(a.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS)),_(t,a.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS,o(a.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS)),_(t,a.MAX_UNIFORM_BLOCK_SIZE,o(a.MAX_UNIFORM_BLOCK_SIZE)),_(t,a.MAX_UNIFORM_BUFFER_BINDINGS,o(a.MAX_UNIFORM_BUFFER_BINDINGS)),_(t,a.MAX_VARYING_COMPONENTS,o(a.MAX_VARYING_COMPONENTS)),_(t,a.MAX_VERTEX_OUTPUT_COMPONENTS,o(a.MAX_VERTEX_OUTPUT_COMPONENTS)),_(t,a.MAX_VERTEX_UNIFORM_BLOCKS,o(a.MAX_VERTEX_UNIFORM_BLOCKS)),_(t,a.MAX_VERTEX_UNIFORM_COMPONENTS,o(a.MAX_VERTEX_UNIFORM_COMPONENTS)),_(t,a.MIN_PROGRAM_TEXEL_OFFSET,o(a.MIN_PROGRAM_TEXEL_OFFSET)),_(t,a.MAX_PROGRAM_TEXEL_OFFSET,o(a.MAX_PROGRAM_TEXEL_OFFSET)),_(t,a.UNIFORM_BUFFER_OFFSET_ALIGNMENT,o(a.UNIFORM_BUFFER_OFFSET_ALIGNMENT)),t}function un(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&(e=O(e),e!==null););return e}function Xe(){return typeof Reflect<"u"&&Reflect.get?Xe=Reflect.get.bind():Xe=function(t,r,n){var o=un(t,r);if(o){var i=Object.getOwnPropertyDescriptor(o,r);return i.get?i.get.call(arguments.length<3?t:n):i.value}},Xe.apply(this,arguments)}var ln=He(Ue(),1);function Ee(e,t,r){var n=ue.attach(e),o=n.gl;if(Ku(t))return r(e);var i=t.nocatch,s=i===void 0?!0:i;De(o),ge(o,t);var u;if(s)u=r(o),Ie(o);else try{u=r(o)}finally{Ie(o)}return u}function Ku(e){for(var t in e)return!1;return!0}function gi(e,t,r,n){if(nt(t))return n(e);De(e.gl);try{return mr(e,t),ge(e,r),n(e)}finally{Ie(e.gl)}}function Oi(e,t,r){if(nt(t))return r(e);De(e.gl);try{return mr(e,t),r(e)}finally{Ie(e.gl)}}function mr(e,t){var r=ue.attach(e),n=r.gl;if(t.cullMode)switch(t.cullMode){case"none":n.disable(a.CULL_FACE);break;case"front":n.enable(a.CULL_FACE),n.cullFace(a.FRONT);break;case"back":n.enable(a.CULL_FACE),n.cullFace(a.BACK);break}if(t.frontFace&&n.frontFace(_n("frontFace",t.frontFace,{ccw:a.CCW,cw:a.CW})),t.depthBias!==void 0&&n.polygonOffset(t.depthBias,t.depthBiasSlopeScale||0),t.depthWriteEnabled!==void 0&&n.depthMask(ku("depthWriteEnabled",t.depthWriteEnabled)),t.depthCompare&&(t.depthCompare!=="always"?n.enable(a.DEPTH_TEST):n.disable(a.DEPTH_TEST),n.depthFunc(pr("depthCompare",t.depthCompare))),t.stencilWriteMask){var o=t.stencilWriteMask;n.stencilMaskSeparate(a.FRONT,o),n.stencilMaskSeparate(a.BACK,o)}if(t.stencilReadMask&&C.warn("stencilReadMask not supported under WebGL"),t.stencilCompare){var i=t.stencilReadMask||4294967295,s=pr("depthCompare",t.stencilCompare);t.stencilCompare!=="always"?n.enable(a.STENCIL_TEST):n.disable(a.STENCIL_TEST),n.stencilFuncSeparate(a.FRONT,s,0,i),n.stencilFuncSeparate(a.BACK,s,0,i)}if(t.stencilPassOperation&&t.stencilFailOperation&&t.stencilDepthFailOperation){var u=fn("stencilPassOperation",t.stencilPassOperation),f=fn("stencilFailOperation",t.stencilFailOperation),c=fn("stencilDepthFailOperation",t.stencilDepthFailOperation);n.stencilOpSeparate(a.FRONT,f,c,u),n.stencilOpSeparate(a.BACK,f,c,u)}}function pr(e,t){return _n(e,t,{never:a.NEVER,less:a.LESS,equal:a.EQUAL,"less-equal":a.LEQUAL,greater:a.GREATER,"not-equal":a.NOTEQUAL,"greater-equal":a.GEQUAL,always:a.ALWAYS})}function fn(e,t){return _n(e,t,{keep:a.KEEP,zero:a.ZERO,replace:a.REPLACE,invert:a.INVERT,"increment-clamp":a.INCR,"decrement-clamp":a.DECR,"increment-wrap":a.INCR_WRAP,"decrement-wrap":a.DECR_WRAP})}function Yu(e,t){return"Illegal parameter ".concat(t," for ").concat(e)}function _n(e,t,r){if(!(t in r))throw new Error(Yu(e,t));return r[t]}function ku(e,t){return t}function vi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Gu(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?vi(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):vi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function hr(e){var t={};return e.addressModeU&&(t[a.TEXTURE_WRAP_S]=cn(e.addressModeU)),e.addressModeV&&(t[a.TEXTURE_WRAP_T]=cn(e.addressModeV)),e.addressModeW&&(t[a.TEXTURE_WRAP_R]=cn(e.addressModeW)),e.magFilter&&(t[a.TEXTURE_MAG_FILTER]=bi(e.magFilter)),(e.minFilter||e.mipmapFilter)&&(t[a.TEXTURE_MIN_FILTER]=zu(e.minFilter||"linear",e.mipmapFilter)),e.lodMinClamp!==void 0&&(t[a.TEXTURE_MIN_LOD]=e.lodMinClamp),e.lodMaxClamp!==void 0&&(t[a.TEXTURE_MAX_LOD]=e.lodMaxClamp),e.type==="comparison-sampler"&&(t[a.TEXTURE_COMPARE_MODE]=a.COMPARE_REF_TO_TEXTURE),e.compare&&(t[a.TEXTURE_COMPARE_FUNC]=pr("compare",e.compare)),e.maxAnisotropy&&(t[a.TEXTURE_MAX_ANISOTROPY_EXT]=e.maxAnisotropy),t}function cn(e){switch(e){case"clamp-to-edge":return a.CLAMP_TO_EDGE;case"repeat":return a.REPEAT;case"mirror-repeat":return a.MIRRORED_REPEAT}}function bi(e){switch(e){case"nearest":return a.NEAREST;case"linear":return a.LINEAR}}function zu(e,t){if(!t)return bi(e);switch(e){case"nearest":return t==="nearest"?a.NEAREST_MIPMAP_NEAREST:a.NEAREST_MIPMAP_LINEAR;case"linear":return t==="nearest"?a.LINEAR_MIPMAP_NEAREST:a.LINEAR_MIPMAP_LINEAR}}function Ni(e){var t=Gu({},e);return e[a.TEXTURE_MIN_FILTER]!==a.NEAREST&&(t[a.TEXTURE_MIN_FILTER]=a.LINEAR),t[a.TEXTURE_WRAP_S]=a.CLAMP_TO_EDGE,t[a.TEXTURE_WRAP_T]=a.CLAMP_TO_EDGE,t}var En=He(Ue(),1);function Ci(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Ii(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ci(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ci(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function $u(e){var t=Zu();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function Zu(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var Qu=10,me=function(e){w(r,e);var t=$u(r);function r(o){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};I(this,r),i=t.call(this,o,s),i.device=void 0,i.gl=void 0,i.gl2=void 0,i.handle=void 0,i.glTarget=void 0,i.glUsage=void 0,i.glIndexType=a.UNSIGNED_SHORT,i.byteLength=void 0,i.bytesUsed=void 0,i.debugData=null,i.device=o,i.gl=i.device.gl,i.gl2=i.device.gl2;var u=_e(s)==="object"?s.handle:void 0;return i.handle=u||i.gl.createBuffer(),o.setSpectorMetadata(i.handle,Ii(Ii({},i.props),{},{data:_e(i.props.data)})),i.glTarget=qu(i.props.usage),i.glUsage=Ju(i.props.usage),i.glIndexType=i.props.indexType==="uint32"?a.UNSIGNED_INT:a.UNSIGNED_SHORT,i.debugData=null,s.data?i._initWithData(s.data,s.byteOffset,s.byteLength):i._initWithByteLength(s.byteLength||0),i}var n=r.prototype;return n._initWithData=function(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:i.byteLength+s;B(ArrayBuffer.isView(i));var f=this._getWriteTarget();return this.gl.bindBuffer(f,this.handle),this.gl.bufferData(f,u,this.glUsage),this.gl.bufferSubData(f,s,i),this.gl.bindBuffer(f,null),this.debugData=i.slice(0,Qu),this.bytesUsed=u,this.byteLength=u,this.trackAllocatedMemory(u),this},n._initWithByteLength=function(i){B(i>=0);var s=i;i===0&&(s=new Float32Array(0));var u=this._getWriteTarget();return this.gl.bindBuffer(u,this.handle),this.gl.bufferData(u,s,this.glUsage),this.gl.bindBuffer(u,null),this.debugData=null,this.bytesUsed=i,this.byteLength=i,this},n.destroy=function(){!this.destroyed&&this.handle&&(this.removeStats(),this.trackDeallocatedMemory(),this.gl.deleteBuffer(this.handle),this.destroyed=!0,this.handle=null)},n.write=function(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,u=0,f=void 0,c=this.device.isWebGL2?a.COPY_WRITE_BUFFER:this.glTarget;this.gl.bindBuffer(c,this.handle),u!==0||f!==void 0?(this.device.assertWebGL2(),this.gl2.bufferSubData(c,s,i,u,f)):this.gl.bufferSubData(c,s,i),this.gl.bindBuffer(c,null)},n.readAsync=function(){var o=oe(En.default.mark(function s(){var u,f,c,E,R=arguments;return En.default.wrap(function(d){for(;;)switch(d.prev=d.next){case 0:return u=R.length>0&&R[0]!==void 0?R[0]:0,f=R.length>1?R[1]:void 0,this.device.assertWebGL2(),c=new Uint8Array(f),E=0,this.gl.bindBuffer(a.COPY_READ_BUFFER,this.handle),this.gl2.getBufferSubData(a.COPY_READ_BUFFER,u,c,E,f),this.gl.bindBuffer(a.COPY_READ_BUFFER,null),d.abrupt("return",c);case 9:case"end":return d.stop()}},s,this)}));function i(){return o.apply(this,arguments)}return i}(),n._invalidateDebugData=function(){this.debugData=null},n._getWriteTarget=function(){return this.glTarget},n._getReadTarget=function(){return this.glTarget},P(r)}(ee);function qu(e){return e&ee.INDEX?a.ELEMENT_ARRAY_BUFFER:e&ee.VERTEX?a.ARRAY_BUFFER:e&ee.UNIFORM?a.UNIFORM_BUFFER:a.ARRAY_BUFFER}function Ju(e){return e&ee.INDEX?a.STATIC_DRAW:e&ee.VERTEX?a.STATIC_DRAW:e&ee.UNIFORM?a.DYNAMIC_DRAW:a.STATIC_DRAW}function ef(e){var t=tf();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function tf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var qe=function(e){w(r,e);var t=ef(r);function r(o,i){var s;return I(this,r),s=t.call(this,o,i),s.device=void 0,s.handle=void 0,s.parameters=void 0,s.device=o,s.parameters=hr(i),s.device.isWebGL2&&(s.handle=s.handle||s.device.gl2.createSampler(),s._setSamplerParameters(s.parameters)),s}var n=r.prototype;return n.destroy=function(){this.handle&&(this.device.gl2.deleteSampler(this.handle),this.handle=void 0)},n.toString=function(){return"Sampler(".concat(this.id,",").concat(JSON.stringify(this.props),")")},n._setSamplerParameters=function(i){for(var s=0,u=Object.entries(i);s<u.length;s++){var f=L(u[s],2),c=f[0],E=f[1],R=Number(c);switch(R){case a.TEXTURE_MIN_LOD:case a.TEXTURE_MAX_LOD:this.device.gl2.samplerParameterf(this.handle,R,E);break;default:this.device.gl2.samplerParameteri(this.handle,R,E);break}}},P(r)}(tr);function nf(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=af(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
22
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function af(e,t){if(e){if(typeof e=="string")return Pi(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Pi(e,t)}}function Pi(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function yi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Sr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?yi(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):yi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function of(e){var t=sf();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function sf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var uf={parameters:{},pixelStore:{},pixels:null,border:0,dataFormat:void 0,textureUnit:void 0,target:void 0},he=function(e){w(r,e);var t=of(r);function r(o,i){var s,u;return I(this,r),u=t.call(this,o,Sr(Sr({},uf),{},{format:"rgba8unorm"},i)),u.MAX_ATTRIBUTES=void 0,u.device=void 0,u.gl=void 0,u.gl2=void 0,u.handle=void 0,u.sampler=void 0,u.glFormat=void 0,u.type=void 0,u.dataFormat=void 0,u.mipmaps=void 0,u.target=void 0,u.textureUnit=void 0,u.loaded=!1,u._video=void 0,u.device=o,u.gl=u.device.gl,u.gl2=u.device.gl2,u.handle=u.props.handle||u.gl.createTexture(),u.device.setSpectorMetadata(u.handle,Sr(Sr({},u.props),{},{data:_e(u.props.data)})),u.glFormat=a.RGBA,u.target=ff(u.props),u.loaded=!1,typeof((s=u.props)===null||s===void 0?void 0:s.data)=="string"&&Object.assign(u.props,{data:$r(u.props.data)}),u.initialize(u.props),Object.seal(be(u)),u}var n=r.prototype;return n.destroy=function(){this.handle&&(this.gl.deleteTexture(this.handle),this.removeStats(),this.trackDeallocatedMemory("Texture"),this.destroyed=!0)},n.toString=function(){return"Texture(".concat(this.id,",").concat(this.width,"x").concat(this.height,")")},n.initialize=function(){var i=this,s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(this.props.dimension==="cube")return this.initializeCube(s);var u=s.data;if(u instanceof Promise)return u.then(function(S){return i.initialize(Object.assign({},s,{pixels:S,data:S}))}),this;var f=typeof HTMLVideoElement<"u"&&u instanceof HTMLVideoElement;if(f&&u.readyState<HTMLVideoElement.HAVE_METADATA)return this._video=null,u.addEventListener("loadeddata",function(){return i.initialize(s)}),this;var c=s.parameters,E=c===void 0?{}:c,R=s.pixels,l=R===void 0?null:R,d=s.pixelStore,A=d===void 0?{}:d,m=s.textureUnit,g=m===void 0?void 0:m;u||(u=l);var v=s.width,N=s.height,y=s.dataFormat,F=s.type,H=s.compressed,x=H===void 0?!1:H,Z=s.mipmaps,z=Z===void 0?!0:Z,re=s.depth,K=re===void 0?0:re,h=Lt(s.format,this.device.isWebGL2),T=this._deduceParameters({format:s.format,type:F,dataFormat:y,compressed:x,data:u,width:v,height:N});return v=T.width,N=T.height,x=T.compressed,y=T.dataFormat,F=T.type,this.width=v,this.height=N,this.glFormat=h,this.type=F,this.dataFormat=y,this.textureUnit=g,Number.isFinite(this.textureUnit)&&(this.gl.activeTexture(a.TEXTURE0+this.textureUnit),this.gl.bindTexture(this.target,this.handle)),z&&this.device.isWebGL1&&gr(this.width,this.height)&&(C.warn("texture: ".concat(this," is Non-Power-Of-Two, disabling mipmaps"))(),z=!1),this.mipmaps=z,this.setImageData({data:u,width:v,height:N,depth:K,format:h,type:F,dataFormat:y,parameters:A,compressed:x}),this.setSampler(s.sampler),this._setSamplerParameters(E),z&&this.generateMipmap(),f&&(this._video={video:u,parameters:E,lastTime:u.readyState>=HTMLVideoElement.HAVE_CURRENT_DATA?u.currentTime:-1}),this},n.initializeCube=function(i){var s=this,u=i.mipmaps,f=u===void 0?!0:u,c=i.parameters,E=c===void 0?{}:c;return this.setCubeMapImageData(i).then(function(){s.loaded=!0,f&&s.generateMipmap(i),s.setSampler(i.sampler),s._setSamplerParameters(E)}),this},n.setSampler=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},s;i instanceof qe?(this.sampler=i,s=i.props):(this.sampler=new qe(this.device,i),s=i);var u=hr(s);return this._setSamplerParameters(u),this},n.resize=function(i){var s=i.height,u=i.width,f=i.mipmaps,c=f===void 0?!1:f;return u!==this.width||s!==this.height?this.initialize({width:u,height:s,format:this.format,type:this.type,dataFormat:this.dataFormat,mipmaps:c}):this},n.update=function(){if(this._video){var i=this._video,s=i.video,u=i.parameters,f=i.lastTime;if(f===s.currentTime||s.readyState<HTMLVideoElement.HAVE_CURRENT_DATA)return;this.setSubImageData({data:s,parameters:u}),this.mipmaps&&this.generateMipmap(),this._video.lastTime=s.currentTime}},n.generateMipmap=function(){var i=this,s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return this.device.isWebGL1&&gr(this.width,this.height)?(C.warn("texture: ".concat(this," is Non-Power-Of-Two, disabling mipmaping"))(),this):(this.mipmaps=!0,this.gl.bindTexture(this.target,this.handle),Ee(this.gl,s,function(){i.gl.generateMipmap(i.target)}),this.gl.bindTexture(this.target,null),this)},n.setImageData=function(i){var s=this;if(this.props.dimension==="3d"||this.props.dimension==="2d-array")return this.setImageData3D(i);this.trackDeallocatedMemory("Texture");var u=i.target,f=u===void 0?this.target:u,c=i.pixels,E=c===void 0?null:c,R=i.level,l=R===void 0?0:R,d=i.glFormat,A=d===void 0?this.glFormat:d,m=i.offset,g=m===void 0?0:m,v=i.parameters,N=v===void 0?{}:v,y=i.data,F=y===void 0?null:y,H=i.type,x=H===void 0?this.type:H,Z=i.width,z=Z===void 0?this.width:Z,re=i.height,K=re===void 0?this.height:re,h=i.dataFormat,T=h===void 0?this.dataFormat:h,S=i.compressed,M=S===void 0?!1:S;F||(F=E);var U=this._deduceParameters({format:this.props.format,type:x,dataFormat:T,compressed:M,data:F,width:z,height:K});x=U.type,T=U.dataFormat,M=U.compressed,z=U.width,K=U.height;var D=this.gl;D.bindTexture(this.target,this.handle);var k=null,ne=this._getDataType({data:F,compressed:M});F=ne.data,k=ne.dataType;var Q;if(Ee(this.gl,N,function(){switch(k){case"null":D.texImage2D(f,l,A,z,K,0,T,x,F);break;case"typed-array":D.texImage2D(f,l,A,z,K,0,T,x,F,g);break;case"buffer":Q=s.device.assertWebGL2(),Q.bindBuffer(a.PIXEL_UNPACK_BUFFER,F.handle||F),Q.texImage2D(f,l,A,z,K,0,T,x,g),Q.bindBuffer(a.PIXEL_UNPACK_BUFFER,null);break;case"browser-object":s.device.isWebGL2?D.texImage2D(f,l,A,z,K,0,T,x,F):D.texImage2D(f,l,A,T,x,F);break;case"compressed":var ae=nf(F.entries()),Te;try{for(ae.s();!(Te=ae.n()).done;){var Pn=L(Te.value,2),go=Pn[0],Vt=Pn[1];D.compressedTexImage2D(f,go,Vt.format,Vt.width,Vt.height,0,Vt.data)}}catch(Oo){ae.e(Oo)}finally{ae.f()}break;default:B(!1,"Unknown image data type")}}),F&&F.byteLength)this.trackAllocatedMemory(F.byteLength,"Texture");else{var Re=Ht(this.props.format,this.device.isWebGL2);this.trackAllocatedMemory(this.width*this.height*Re,"Texture")}return this.loaded=!0,this},n.setSubImageData=function(i){var s=this,u=i.target,f=u===void 0?this.target:u,c=i.pixels,E=c===void 0?null:c,R=i.data,l=R===void 0?null:R,d=i.x,A=d===void 0?0:d,m=i.y,g=m===void 0?0:m,v=i.width,N=v===void 0?this.width:v,y=i.height,F=y===void 0?this.height:y,H=i.level,x=H===void 0?0:H,Z=i.glFormat,z=Z===void 0?this.glFormat:Z,re=i.type,K=re===void 0?this.type:re,h=i.dataFormat,T=h===void 0?this.dataFormat:h,S=i.compressed,M=S===void 0?!1:S,U=i.offset,D=U===void 0?0:U,k=i.parameters,ne=k===void 0?{}:k,Q=this._deduceParameters({format:this.props.format,type:K,dataFormat:T,compressed:M,data:l,width:N,height:F});if(K=Q.type,T=Q.dataFormat,M=Q.compressed,N=Q.width,F=Q.height,B(this.depth===1,"texSubImage not supported for 3D textures"),l||(l=E),l&&l.data){var Re=l;l=Re.data,N=Re.shape[0],F=Re.shape[1]}l instanceof me&&(l=l.handle),this.gl.bindTexture(this.target,this.handle),Ee(this.gl,ne,function(){if(M)s.gl.compressedTexSubImage2D(f,x,A,g,N,F,z,l);else if(l===null)s.gl.texSubImage2D(f,x,A,g,N,F,T,K,null);else if(ArrayBuffer.isView(l))s.gl.texSubImage2D(f,x,A,g,N,F,T,K,l,D);else if(typeof WebGLBuffer<"u"&&l instanceof WebGLBuffer){var ae=s.device.assertWebGL2();ae.bindBuffer(a.PIXEL_UNPACK_BUFFER,l),ae.texSubImage2D(f,x,A,g,N,F,T,K,D),ae.bindBuffer(a.PIXEL_UNPACK_BUFFER,null)}else if(s.device.isWebGL2){var Te=s.device.assertWebGL2();Te.texSubImage2D(f,x,A,g,N,F,T,K,l)}else s.gl.texSubImage2D(f,x,A,g,T,K,l)}),this.gl.bindTexture(this.target,null)},n.copyFramebuffer=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return C.error("Texture.copyFramebuffer({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null},n.getActiveUnit=function(){return this.gl.getParameter(a.ACTIVE_TEXTURE)-a.TEXTURE0},n.bind=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.textureUnit,s=this.gl;return i!==void 0&&(this.textureUnit=i,s.activeTexture(s.TEXTURE0+i)),s.bindTexture(this.target,this.handle),i},n.unbind=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.textureUnit,s=this.gl;return i!==void 0&&(this.textureUnit=i,s.activeTexture(s.TEXTURE0+i)),s.bindTexture(this.target,null),i},n._getDataType=function(i){var s=i.data,u=i.compressed,f=u===void 0?!1:u;return f?{data:s,dataType:"compressed"}:s===null?{data:s,dataType:"null"}:ArrayBuffer.isView(s)?{data:s,dataType:"typed-array"}:s instanceof me?{data:s.handle,dataType:"buffer"}:typeof WebGLBuffer<"u"&&s instanceof WebGLBuffer?{data:s,dataType:"buffer"}:{data:s,dataType:"browser-object"}},n._deduceParameters=function(i){var s=i.format,u=i.data,f=i.width,c=i.height,E=i.dataFormat,R=i.type,l=i.compressed,d=Tr(s,this.device.isWebGL2);E=E||d.dataFormat,R=R||d.type,l=l||d.compressed;var A=this._deduceImageSize(u,f,c);return f=A.width,c=A.height,{dataFormat:E,type:R,compressed:l,width:f,height:c,format:s,data:u}},n._deduceImageSize=function(i,s,u){var f;return typeof ImageData<"u"&&i instanceof ImageData?f={width:i.width,height:i.height}:typeof HTMLImageElement<"u"&&i instanceof HTMLImageElement?f={width:i.naturalWidth,height:i.naturalHeight}:typeof HTMLCanvasElement<"u"&&i instanceof HTMLCanvasElement?f={width:i.width,height:i.height}:typeof ImageBitmap<"u"&&i instanceof ImageBitmap?f={width:i.width,height:i.height}:typeof HTMLVideoElement<"u"&&i instanceof HTMLVideoElement?f={width:i.videoWidth,height:i.videoHeight}:i?f={width:s,height:u}:f={width:s>=0?s:1,height:u>=0?u:1},B(f,"Could not deduced texture size"),B(s===void 0||f.width===s,"Deduced texture width does not match supplied width"),B(u===void 0||f.height===u,"Deduced texture height does not match supplied height"),f},n.setCubeMapImageData=function(){var o=oe(ln.default.mark(function s(u){var f=this,c,E,R,l,d,A,m,g,v,N,y;return ln.default.wrap(function(H){for(;;)switch(H.prev=H.next){case 0:return c=this.gl,E=u.width,R=u.height,l=u.pixels,d=u.data,A=u.format,m=A===void 0?a.RGBA:A,g=u.type,v=g===void 0?a.UNSIGNED_BYTE:g,N=l||d,H.next=5,Promise.all(r.FACES.map(function(x){var Z=N[x];return Promise.all(Array.isArray(Z)?Z:[Z])}));case 5:y=H.sent,this.bind(),r.FACES.forEach(function(x,Z){y[Z].length>1&&f.props.mipmaps!==!1&&C.warn("".concat(f.id," has mipmap and multiple LODs."))(),y[Z].forEach(function(z,re){E&&R?c.texImage2D(x,re,m,E,R,0,m,v,z):c.texImage2D(x,re,m,m,v,z)})}),this.unbind();case 9:case"end":return H.stop()}},s,this)}));function i(s){return o.apply(this,arguments)}return i}(),n.setImageDataForFace=function(i){var s=this,u=i.face,f=i.width,c=i.height,E=i.pixels,R=i.data,l=i.format,d=l===void 0?a.RGBA:l,A=i.type,m=A===void 0?a.UNSIGNED_BYTE:A,g=this.gl,v=E||R;return this.bind(),v instanceof Promise?v.then(function(N){return s.setImageDataForFace(Object.assign({},i,{face:u,data:N,pixels:N}))}):this.width||this.height?g.texImage2D(u,0,d,f,c,0,d,m,v):g.texImage2D(u,0,d,d,m,v),this},n.setImageData3D=function(i){var s=this,u=i.level,f=u===void 0?0:u,c=i.dataFormat,E=i.format,R=i.type,l=i.width,d=i.height,A=i.depth,m=A===void 0?1:A,g=i.offset,v=g===void 0?0:g,N=i.data,y=i.parameters,F=y===void 0?{}:y;this.trackDeallocatedMemory("Texture"),this.gl.bindTexture(this.target,this.handle);var H=Tr(E,this.device.isWebGL2);if(Ee(this.gl,F,function(){ArrayBuffer.isView(N)&&s.gl.texImage3D(s.target,f,H.format,l,d,m,0,H.dataFormat,H.type,N),N instanceof me&&(s.gl.bindBuffer(a.PIXEL_UNPACK_BUFFER,N.handle),s.gl.texImage3D(s.target,f,c,l,d,m,0,E,R,v))}),N&&N.byteLength)this.trackAllocatedMemory(N.byteLength,"Texture");else{var x=Ht(this.props.format,this.device.isWebGL2);this.trackAllocatedMemory(this.width*this.height*this.depth*x,"Texture")}return this.loaded=!0,this},n._setSamplerParameters=function(i){if(this.device.isWebGL1&&gr(this.width,this.height)&&(i=Ni(i)),!nt(i)){_f(i),this.gl.bindTexture(this.target,this.handle);for(var s=0,u=Object.entries(i);s<u.length;s++){var f=L(u[s],2),c=f[0],E=f[1],R=Number(c),l=E;switch(R){case a.TEXTURE_MIN_LOD:case a.TEXTURE_MAX_LOD:this.gl.texParameterf(this.target,R,l);break;default:this.gl.texParameteri(this.target,R,l);break}}this.gl.bindTexture(this.target,null)}},n._getWebGL1NPOTParameterOverride=function(i,s){var u=this.device.isWebGL1&&gr(this.width,this.height);if(u)switch(i){case a.TEXTURE_MIN_FILTER:if(s!==a.LINEAR&&s!==a.NEAREST)return a.LINEAR;break;case a.TEXTURE_WRAP_S:case a.TEXTURE_WRAP_T:return a.CLAMP_TO_EDGE;default:break}return s},P(r)}(se);he.FACES=[a.TEXTURE_CUBE_MAP_POSITIVE_X,a.TEXTURE_CUBE_MAP_NEGATIVE_X,a.TEXTURE_CUBE_MAP_POSITIVE_Y,a.TEXTURE_CUBE_MAP_NEGATIVE_Y,a.TEXTURE_CUBE_MAP_POSITIVE_Z,a.TEXTURE_CUBE_MAP_NEGATIVE_Z];function ff(e){switch(e.dimension){case"2d":return a.TEXTURE_2D;case"cube":return a.TEXTURE_CUBE_MAP;case"2d-array":return a.TEXTURE_2D_ARRAY;case"3d":return a.TEXTURE_3D;case"1d":case"cube-array":default:throw new Error(e.dimension)}}function gr(e,t){return!e||!t?!1:!qt(e)||!qt(t)}function _f(e){C.log(1,"texture sampler parameters",e)()}function Or(e,t){if(typeof t!="string")return t;var r=Number(t);if(!isNaN(r))return r;t=t.replace(/^.*\./,"");var n=e[t];return B(n!==void 0,"Accessing undefined constant GL.".concat(t)),n}function cf(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Ef(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
23
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function Ef(e,t){if(e){if(typeof e=="string")return Fi(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Fi(e,t)}}function Fi(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function lf(e){var t=Rf();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function Rf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var Rt="Resource subclass must define virtual methods",Wt=function(e){w(r,e);var t=lf(r);function r(o,i,s){var u;I(this,r),u=t.call(this,o,i,s),u.device=void 0,u.gl=void 0,u.gl2=void 0,u._handle=void 0,u._bound=!1,u.byteLength=0,u.device=ue.attach(o);var f=u.device.gl;_r(f);var c=i||{},E=c.id;return u.gl=f,u.gl2=f,u.id=E||Se(u.constructor.name),u._handle=i?.handle,u._handle===void 0&&(u._handle=u._createHandle()),u.byteLength=0,u}var n=r.prototype;return n.toString=function(){return"".concat(this.constructor.name,"(").concat(this.id,")")},n.delete=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},s=i.deleteChildren,u=s===void 0?!1:s,f=this._handle&&this._deleteHandle(this._handle);return this._handle&&this.removeStats(),this._handle=null,f&&u&&f.filter(Boolean).forEach(function(c){return c.destroy()}),this},n.bind=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.handle;if(typeof i!="function")return this._bindHandle(i),this;var s;return this._bound?s=i():(this._bindHandle(this.handle),this._bound=!0,s=i(),this._bound=!1,this._bindHandle(null)),s},n.unbind=function(){this.bind(null)},n.getParameter=function(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};i=Or(this.gl,i),B(i);var u=this.constructor.PARAMETERS||{},f=u[i];if(f){var c=W(this.gl),E=(!("webgl2"in f)||c)&&(!("extension"in f)||this.gl.getExtension(f.extension));if(!E){var R=f.webgl1,l="webgl2"in f?f.webgl2:f.webgl1,d=c?l:R;return d}}return this._getParameter(i,s)},n.getParameters=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},s=i.parameters,u=i.keys,f=this.constructor.PARAMETERS||{},c=W(this.gl),E={},R=s||Object.keys(f),l=cf(R),d;try{for(l.s();!(d=l.n()).done;){var A=d.value,m=f[A],g=m&&(!("webgl2"in m)||c)&&(!("extension"in m)||this.gl.getExtension(m.extension));if(g){var v=u?this.device.getGLKey(A):A;E[v]=this.getParameter(A,i),u&&m.type==="GLenum"&&(E[v]=this.device.getGLKey(E[v]))}}}catch(N){l.e(N)}finally{l.f()}return E},n.setParameter=function(i,s){i=Or(this.gl,i),B(i);var u=this.constructor.PARAMETERS||{},f=u[i];if(f){var c=W(this.gl),E=(!("webgl2"in f)||c)&&(!("extension"in f)||this.gl.getExtension(f.extension));if(!E)throw new Error("Parameter not available on this platform");f.type==="GLenum"&&(s=Or(s))}return this._setParameter(i,s),this},n.setParameters=function(i){for(var s in i)this.setParameter(s,i[s]);return this},n.stubRemovedMethods=function(i,s,u){return kr(this,i,s,u)},n.initialize=function(i){},n._createHandle=function(){throw new Error(Rt)},n._deleteHandle=function(){throw new Error(Rt)},n._bindHandle=function(i){throw new Error(Rt)},n._getOptsFromHandle=function(){throw new Error(Rt)},n._getParameter=function(i,s){throw new Error(Rt)},n._setParameter=function(i,s){throw new Error(Rt)},P(r,[{key:"handle",get:function(){return this._handle}}]),r}(j);var Di;function Bi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Mi(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Bi(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Bi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function df(e){var t=Tf();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function Tf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Di=Symbol.toStringTag;var dt=function(e){w(r,e);var t=df(r);r.isTextureFormatSupported=function(i,s){return li(i.gl,s)};function r(o,i){var s;if(I(this,r),typeof i.format=="number")throw new Error("Renderbuffer");return s=t.call(this,o,i,r.defaultProps),s.glFormat=void 0,s.glFormat=Lt(s.props.format,o.isWebGL2),s._initialize(s.props),s}var n=r.prototype;return n.resize=function(i){(i.width!==this.width||i.height!==this.height)&&(Object.assign(this.props,Mi(Mi({},i),{},{format:this.format,samples:this.samples})),this._initialize(this.props))},n._initialize=function(i){var s=i.format,u=i.width,f=i.height,c=i.samples;B(s,"Needs format"),this.trackDeallocatedMemory(),this.gl.bindRenderbuffer(a.RENDERBUFFER,this.handle),c!==0&&this.device.isWebGL2?this.gl2.renderbufferStorageMultisample(a.RENDERBUFFER,c,this.glFormat,u,f):this.gl.renderbufferStorage(a.RENDERBUFFER,this.glFormat,u,f),this.gl.bindRenderbuffer(a.RENDERBUFFER,null),this.trackAllocatedMemory(u*f*(c||1)*Ht(this.glFormat,this.device.isWebGL2))},n._createHandle=function(){return this.gl.createRenderbuffer()},n._deleteHandle=function(){this.gl.deleteRenderbuffer(this.handle),this.trackDeallocatedMemory()},n._bindHandle=function(i){this.gl.bindRenderbuffer(a.RENDERBUFFER,i)},P(r,[{key:Di,get:function(){return"Renderbuffer"}},{key:"width",get:function(){return this.props.width}},{key:"height",get:function(){return this.props.height}},{key:"format",get:function(){return this.props.format}},{key:"samples",get:function(){return this.props.samples}},{key:"attachment",get:function(){}}]),r}(Wt);dt.defaultProps={id:void 0,handle:void 0,userData:void 0,format:void 0,width:1,height:1,samples:0};function Af(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=pf(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
24
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function pf(e,t){if(e){if(typeof e=="string")return xi(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return xi(e,t)}}function xi(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function mf(e){var t=hf();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function hf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var Tt=function(e){w(r,e);var t=mf(r);function r(o,i){var s;I(this,r),s=t.call(this,o,i),s.device=void 0,s.gl=void 0,s.handle=void 0;var u=i.handle===null;if(s.device=o,s.gl=o.gl,s.handle=s.props.handle||u?s.props.handle:s.gl.createFramebuffer(),!u){o.setSpectorMetadata(s.handle,{id:s.props.id,props:s.props}),s.autoCreateAttachmentTextures(),s.gl.bindFramebuffer(a.FRAMEBUFFER,s.handle);for(var f=0;f<s.colorAttachments.length;++f){var c=s.colorAttachments[f],E=a.COLOR_ATTACHMENT0+f;c&&s._attachOne(E,c)}s.depthStencilAttachment&&s._attachOne(Ti(s.depthStencilAttachment.format),s.depthStencilAttachment),s.gl.bindFramebuffer(a.FRAMEBUFFER,null)}return i.check!==!1&&s._checkStatus(),s}var n=r.prototype;return n.destroy=function(){Xe(O(r.prototype),"destroy",this).call(this),!this.destroyed&&this.handle!==null&&this.gl.deleteFramebuffer(this.handle)},n._checkStatus=function(){var i=this.gl,s=i.bindFramebuffer(a.FRAMEBUFFER,this.handle),u=i.checkFramebufferStatus(a.FRAMEBUFFER);if(i.bindFramebuffer(a.FRAMEBUFFER,s||null),u!==i.FRAMEBUFFER_COMPLETE)throw new Error("Framebuffer ".concat(gf(u)))},n.createDepthStencilTexture=function(i){return new dt(this.device,{id:"".concat(this.id,"-depth-stencil"),format:i,width:this.width,height:this.height})},n.resizeAttachments=function(i,s){if(this.handle===null)return this.width=this.gl.drawingBufferWidth,this.height=this.gl.drawingBufferHeight,this;i===void 0&&(i=this.gl.drawingBufferWidth),s===void 0&&(s=this.gl.drawingBufferHeight);var u=Af(this.colorAttachments),f;try{for(u.s();!(f=u.n()).done;){var c=f.value;c.resize({width:i,height:s})}}catch(E){u.e(E)}finally{u.f()}return this.depthStencilAttachment&&this.depthStencilAttachment.resize({width:i,height:s}),this},n._attachOne=function(i,s){if(s instanceof dt)return this._attachWEBGLRenderbuffer(i,s),s;if(Array.isArray(s)){var u=L(s,3),f=u[0],c=u[1],E=c===void 0?0:c,R=u[2],l=R===void 0?0:R;return this._attachTexture(i,f,E,l),f}else if(s instanceof he)return this._attachTexture(i,s,0,0),s;throw new Error("attach")},n._attachWEBGLRenderbuffer=function(i,s){this.gl.framebufferRenderbuffer(a.FRAMEBUFFER,i,a.RENDERBUFFER,s.handle)},n._attachTexture=function(i,s,u,f){var c=this.device,E=c.gl,R=c.gl2;switch(E.bindTexture(s.target,s.handle),s.target){case a.TEXTURE_2D_ARRAY:case a.TEXTURE_3D:this.device.assertWebGL2(),R?.framebufferTextureLayer(a.FRAMEBUFFER,i,s.target,f,u);break;case a.TEXTURE_CUBE_MAP:var l=Sf(u);E.framebufferTexture2D(a.FRAMEBUFFER,i,l,s.handle,f);break;case a.TEXTURE_2D:E.framebufferTexture2D(a.FRAMEBUFFER,i,a.TEXTURE_2D,s.handle,f);break;default:B(!1,"Illegal texture type")}E.bindTexture(s.target,null)},P(r,[{key:"texture",get:function(){return this.colorAttachments[0]}}]),r}(st);function Sf(e){return e<a.TEXTURE_CUBE_MAP_POSITIVE_X?e+a.TEXTURE_CUBE_MAP_POSITIVE_X:e}function gf(e){switch(e){case a.FRAMEBUFFER_COMPLETE:return"success";case a.FRAMEBUFFER_INCOMPLETE_ATTACHMENT:return"Mismatched attachments";case a.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:return"No attachments";case a.FRAMEBUFFER_INCOMPLETE_DIMENSIONS:return"Height/width mismatch";case a.FRAMEBUFFER_UNSUPPORTED:return"Unsupported or split attachments";case a.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE:return"Samples mismatch";default:return"".concat(e)}}function Of(e){var t=vf();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function vf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var vr=function(e){w(r,e);var t=Of(r);function r(o,i){var s;return I(this,r),s=t.call(this,i),s.device=void 0,s.presentationSize=void 0,s._framebuffer=null,s.device=o,s.presentationSize=[-1,-1],s._setAutoCreatedCanvasId("".concat(s.device.id,"-canvas")),s.update(),s}var n=r.prototype;return n.getCurrentFramebuffer=function(){return this.update(),this._framebuffer=this._framebuffer||new Tt(this.device,{handle:null}),this._framebuffer},n.update=function(){var i=this.getPixelSize(),s=i[0]!==this.presentationSize[0]||i[1]!==this.presentationSize[1];s&&(this.presentationSize=i)},n.resize=function(i){if(this.canvas){var s=this.getDevicePixelRatio(i?.useDevicePixels);this.setDevicePixelRatio(s,i);return}var u=this.device.gl.getExtension("STACKGL_resize_drawingbuffer");u&&i&&"width"in i&&"height"in i&&u.resize(i.width,i.height)},n.commit=function(){},P(r)}(it);var Rn=He(Ue(),1);function Ui(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function wi(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ui(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ui(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var bf={spector:C.get("spector")||C.get("inspect")},Nf="https://spectorcdn.babylonjs.com/spector.bundle.js",Cf=1,le=null,Xi=!1;function Li(e){return dn.apply(this,arguments)}function dn(){return dn=oe(Rn.default.mark(function e(t){return Rn.default.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(globalThis.SPECTOR){n.next=9;break}return n.prev=1,n.next=4,Ct(Nf);case 4:n.next=9;break;case 6:n.prev=6,n.t0=n.catch(1),C.warn(String(n.t0));case 9:case"end":return n.stop()}},e,null,[[1,6]])})),dn.apply(this,arguments)}function Hi(e){var t,r;if(e=wi(wi({},bf),e),!((t=e)!==null&&t!==void 0&&t.spector)||(!le&&globalThis.SPECTOR&&(C.probe(Cf,"SPECTOR found and initialized")(),le=new globalThis.SPECTOR.Spector,globalThis.luma&&(globalThis.luma.spector=le)),!le))return null;if(!Xi){var n,o;Xi=!0,le.spyCanvases(),(n=le)===null||n===void 0||n.onCaptureStarted.add(function(u){return C.info("Spector capture started:",u)()}),(o=le)===null||o===void 0||o.onCapture.add(function(u){var f,c,E;C.info("Spector capture complete:",u)(),(f=le)===null||f===void 0||f.getResultUI(),(c=le)===null||c===void 0||c.resultView.display(),(E=le)===null||E===void 0||E.resultView.addCapture(u)})}if((r=e)!==null&&r!==void 0&&r.canvas){var i,s;if(typeof e.spector=="string"&&e.spector!==e.canvas.id)return le;(i=le)===null||i===void 0||i.startCapture((s=e)===null||s===void 0?void 0:s.canvas,500),new Promise(function(u){return setTimeout(u,2e3)}).then(function(u){var f;C.info("Spector capture stopped after 2 seconds")(),(f=le)===null||f===void 0||f.stopCapture()})}return le}var An=He(Ue(),1);function If(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Pf(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
25
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function Pf(e,t){if(e){if(typeof e=="string")return Wi(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Wi(e,t)}}function Wi(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Vi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function ji(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Vi(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Vi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var yf="https://unpkg.com/webgl-debug@2.0.1/index.js";function Ki(e){return e.luma=e.luma||{},e.luma}function Yi(){return pn.apply(this,arguments)}function pn(){return pn=oe(An.default.mark(function e(){return An.default.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(!(q()&&!globalThis.WebGLDebugUtils)){r.next=5;break}return globalThis.global=globalThis.global||globalThis,globalThis.global.module={},r.next=5,Ct(yf);case 5:case"end":return r.stop()}},e)})),pn.apply(this,arguments)}function ki(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return e?t.debug?Bf(e,t):Ff(e):null}function Ff(e){var t=Ki(e);return t.realContext?t.realContext:e}function Bf(e,t){if(!globalThis.WebGLDebugUtils)return C.warn("webgl-debug not loaded")(),e;var r=Ki(e);if(r.debugContext)return r.debugContext;globalThis.WebGLDebugUtils.init(ji(ji({},a),e));var n=globalThis.WebGLDebugUtils.makeDebugContext(e,Mf.bind(null,t),Df.bind(null,t));for(var o in a)!(o in n)&&typeof a[o]=="number"&&(n[o]=a[o]);var i=P(function u(){I(this,u)});Object.setPrototypeOf(n,Object.getPrototypeOf(e)),Object.setPrototypeOf(i,n);var s=Object.create(i);return r.realContext=e,r.debugContext=s,s.debug=!0,s}function Tn(e,t){t=Array.from(t).map(function(n){return n===void 0?"undefined":n});var r=globalThis.WebGLDebugUtils.glFunctionArgsToString(e,t);return r="".concat(r.slice(0,100)).concat(r.length>100?"...":""),"gl.".concat(e,"(").concat(r,")")}function Mf(e,t,r,n){n=Array.from(n).map(function(f){return f===void 0?"undefined":f});var o=globalThis.WebGLDebugUtils.glEnumToString(t),i=globalThis.WebGLDebugUtils.glFunctionArgsToString(r,n),s=e.webgl2?"gl2":"gl1",u="".concat(o," in ").concat(s,".").concat(r,"(").concat(i,")");C.error(u)();debugger;if(e.throwOnError)throw new Error(u)}function Df(e,t,r){var n="";if(C.level>=1&&(n=Tn(t,r),C.log(1,n)()),e.break&&e.break.length>0){n=n||Tn(t,r);var o=e.break.every(function(f){return n.indexOf(f)!==-1});if(o)debugger}var i=If(r),s;try{for(i.s();!(s=i.n()).done;){var u=s.value;if(u===void 0){if(n=n||Tn(t,r),e.throwOnError)throw new Error("Undefined argument: ".concat(n));C.error("Undefined argument: ".concat(n))();debugger}}}catch(f){i.e(f)}finally{i.f()}}function mn(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function At(e,t,r){return mn()?At=Reflect.construct.bind():At=function(o,i,s){var u=[null];u.push.apply(u,i);var f=Function.bind.apply(o,u),c=new f;return s&&We(c,s.prototype),c},At.apply(null,arguments)}var xf="Failed to deduce GL constant from typed array";function pt(e){var t=ArrayBuffer.isView(e)?e.constructor:e;switch(t){case Float32Array:return a.FLOAT;case Uint16Array:return a.UNSIGNED_SHORT;case Uint32Array:return a.UNSIGNED_INT;case Uint8Array:return a.UNSIGNED_BYTE;case Uint8ClampedArray:return a.UNSIGNED_BYTE;case Int8Array:return a.BYTE;case Int16Array:return a.SHORT;case Int32Array:return a.INT;default:throw new Error(xf)}}function Le(e,t){var r=t||{},n=r.clamped,o=n===void 0?!0:n;switch(e){case a.FLOAT:return Float32Array;case a.UNSIGNED_SHORT:case a.UNSIGNED_SHORT_5_6_5:case a.UNSIGNED_SHORT_4_4_4_4:case a.UNSIGNED_SHORT_5_5_5_1:return Uint16Array;case a.UNSIGNED_INT:return Uint32Array;case a.UNSIGNED_BYTE:return o?Uint8ClampedArray:Uint8Array;case a.BYTE:return Int8Array;case a.SHORT:return Int16Array;case a.INT:return Int32Array;default:throw new Error("Failed to deduce typed array type from GL constant")}}var Uf={offset:0,stride:0,type:a.FLOAT,size:1,divisor:0,normalized:!1,integer:!1},wf={deprecatedProps:{instanced:"divisor",isInstanced:"divisor"}},ve=function(){e.getBytesPerElement=function(n){var o=Le(n.type||a.FLOAT);return o.BYTES_PER_ELEMENT},e.getBytesPerVertex=function(n){B(n.size);var o=Le(n.type||a.FLOAT);return o.BYTES_PER_ELEMENT*n.size},e.resolve=function(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];return At(e,[Uf].concat(o))};function e(){var r=this;I(this,e),this.offset=void 0,this.stride=void 0,this.type=void 0,this.size=void 0,this.divisor=void 0,this.normalized=void 0,this.integer=void 0,this.buffer=void 0,this.index=void 0;for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];o.forEach(function(s){return r._assign(s)}),Object.freeze(this)}var t=e.prototype;return t.toString=function(){return JSON.stringify(this)},t._assign=function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return n=ke("Accessor",n,wf),n.type!==void 0&&(this.type=n.type,(n.type===a.INT||n.type===a.UNSIGNED_INT)&&(this.integer=!0)),n.size!==void 0&&(this.size=n.size),n.offset!==void 0&&(this.offset=n.offset),n.stride!==void 0&&(this.stride=n.stride),n.normalize!==void 0&&(this.normalized=n.normalize),n.normalized!==void 0&&(this.normalized=n.normalized),n.integer!==void 0&&(this.integer=n.integer),n.divisor!==void 0&&(this.divisor=n.divisor),n.buffer!==void 0&&(this.buffer=n.buffer),n.index!==void 0&&(typeof n.index=="boolean"?this.index=n.index?1:0:this.index=n.index),n.instanced!==void 0&&(this.divisor=n.instanced?1:0),n.isInstanced!==void 0&&(this.divisor=n.isInstanced?1:0),this.offset===void 0&&delete this.offset,this.stride===void 0&&delete this.stride,this.type===void 0&&delete this.type,this.size===void 0&&delete this.size,this.divisor===void 0&&delete this.divisor,this.normalized===void 0&&delete this.normalized,this.integer===void 0&&delete this.integer,this.buffer===void 0&&delete this.buffer,this.index===void 0&&delete this.index,this},P(e,[{key:"BYTES_PER_ELEMENT",get:function(){return e.getBytesPerElement(this)}},{key:"BYTES_PER_VERTEX",get:function(){return e.getBytesPerVertex(this)}}]),e}();function Xf(e){var t=Lf();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function Lf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function Gi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Hf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Gi(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Gi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var zi=10,$i={offset:"accessor.offset",stride:"accessor.stride",type:"accessor.type",size:"accessor.size",divisor:"accessor.divisor",normalized:"accessor.normalized",integer:"accessor.integer",instanced:"accessor.divisor",isInstanced:"accessor.divisor"},Zi={removedProps:{},replacedProps:{bytes:"byteLength"},deprecatedProps:$i},Wf={removedProps:$i};function Vf(e){if(ArrayBuffer.isView(e))return{data:e};if(typeof e=="number")return{byteLength:e};e=ke("Buffer",e,Zi);var t=Hf({},e);return t}var mt=function(e){w(r,e);var t=Xf(r);function r(o){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(I(this,r),i=t.call(this,ue.attach(o),Vf(s)),i.accessor=void 0,i.setAccessor(Object.assign({},s,s.accessor)),i.props.data){var u=pt(i.props.data);B(u),i.setAccessor(new ve(i.accessor,{type:u}))}return Object.seal(be(i)),i}var n=r.prototype;return n.getElementCount=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.accessor;return Math.round(this.byteLength/ve.getBytesPerElement(i))},n.getVertexCount=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.accessor;return Math.round(this.byteLength/ve.getBytesPerVertex(i))},n.initialize=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return ArrayBuffer.isView(i)&&(i={data:i}),Number.isFinite(i)&&(i={byteLength:i}),i=ke("Buffer",i,Zi),this.glUsage=i.glUsage||a.STATIC_DRAW,this.debugData=null,this.setAccessor(Object.assign({},i,i.accessor)),i.data?this._setData(i.data,i.byteOffset,i.byteLength):this._setByteLength(i.byteLength||0),this},n.setProps=function(i){return i=ke("Buffer",i,Wf),"accessor"in i&&this.setAccessor(i.accessor),this},n.setAccessor=function(i){return i=Object.assign({},i),delete i.buffer,this.accessor=new ve(i),this},n.reallocate=function(i){return i>this.byteLength?(this._setByteLength(i),!0):(this.bytesUsed=i,!1)},n.setData=function(i){return this.initialize(i)},n.subData=function(i){ArrayBuffer.isView(i)&&(i={data:i});var s=i,u=s.data,f=s.offset,c=f===void 0?0:f,E=s.srcOffset,R=E===void 0?0:E,l=i.byteLength||i.length;B(u);var d=this.gl.webgl2?a.COPY_WRITE_BUFFER:this.glTarget;return this.gl.bindBuffer(d,this.handle),R!==0||l!==void 0?(ft(this.gl),this.gl.bufferSubData(this.glTarget,c,u,R,l)):this.gl.bufferSubData(d,c,u),this.gl.bindBuffer(d,null),this.debugData=null,this._inferType(u),this},n.copyData=function(i){var s=i.sourceBuffer,u=i.readOffset,f=u===void 0?0:u,c=i.writeOffset,E=c===void 0?0:c,R=i.size,l=this.gl,d=this.gl2;return ft(l),l.bindBuffer(a.COPY_READ_BUFFER,s.handle),l.bindBuffer(a.COPY_WRITE_BUFFER,this.handle),d?.copyBufferSubData(a.COPY_READ_BUFFER,a.COPY_WRITE_BUFFER,f,E,R),l.bindBuffer(a.COPY_READ_BUFFER,null),l.bindBuffer(a.COPY_WRITE_BUFFER,null),this.debugData=null,this},n.getData=function(i){var s,u=i||{},f=u.dstData,c=f===void 0?null:f,E=u.length,R=E===void 0?0:E,l=i||{},d=l.srcByteOffset,A=d===void 0?0:d,m=l.dstOffset,g=m===void 0?0:m;ft(this.gl);var v=Le(this.accessor.type||a.FLOAT,{clamped:!1}),N=this._getAvailableElementCount(A),y=g,F,H;c?(H=c.length,F=H-y):(F=Math.min(N,R||N),H=y+F);var x=Math.min(N,F);return R=R||x,B(R<=x),c=c||new v(H),this.gl.bindBuffer(a.COPY_READ_BUFFER,this.handle),(s=this.gl2)===null||s===void 0||s.getBufferSubData(a.COPY_READ_BUFFER,A,c,g,R),this.gl.bindBuffer(a.COPY_READ_BUFFER,null),c},n.bind=function(i){var s=i||{},u=s.glTarget,f=u===void 0?this.glTarget:u,c=s.index,E=c===void 0?this.accessor&&this.accessor.index:c,R=s.offset,l=R===void 0?0:R,d=s.size;if(f===a.UNIFORM_BUFFER||f===a.TRANSFORM_FEEDBACK_BUFFER)if(d!==void 0){var A;(A=this.gl2)===null||A===void 0||A.bindBufferRange(f,E,this.handle,l,d)}else{var m;B(l===0),(m=this.gl2)===null||m===void 0||m.bindBufferBase(f,E,this.handle)}else this.gl.bindBuffer(f,this.handle);return this},n.unbind=function(i){var s=i||{},u=s.glTarget,f=u===void 0?this.glTarget:u,c=s.index,E=c===void 0?this.accessor&&this.accessor.index:c,R=f===a.UNIFORM_BUFFER||f===a.TRANSFORM_FEEDBACK_BUFFER;if(R){var l;(l=this.gl2)===null||l===void 0||l.bindBufferBase(f,E,null)}else this.gl.bindBuffer(f,null);return this},n.getDebugData=function(){return this.debugData?{data:this.debugData,changed:!1}:(this.debugData=this.getData({length:Math.min(zi,this.byteLength)}),{data:this.debugData,changed:!0})},n.invalidateDebugData=function(){this.debugData=null},n._setData=function(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:i.byteLength+s;B(ArrayBuffer.isView(i)),this.trackDeallocatedMemory();var f=this._getTarget();this.gl.bindBuffer(f,this.handle),this.gl.bufferData(f,u,this.glUsage),this.gl.bufferSubData(f,s,i),this.gl.bindBuffer(f,null),this.debugData=i.slice(0,zi),this.bytesUsed=u,this.byteLength=u,this.trackAllocatedMemory(u);var c=pt(i);return B(c),this.setAccessor(new ve(this.accessor,{type:c})),this},n._setByteLength=function(i){B(i>=0),this.trackDeallocatedMemory();var s=i;i===0&&(s=new Float32Array(0));var u=this._getTarget();return this.gl.bindBuffer(u,this.handle),this.gl.bufferData(u,s,this.glUsage),this.gl.bindBuffer(u,null),this.debugData=null,this.bytesUsed=i,this.byteLength=i,this.trackAllocatedMemory(i),this},n._getTarget=function(){return this.gl.webgl2?a.COPY_WRITE_BUFFER:this.glTarget},n._getAvailableElementCount=function(i){var s=Le(this.accessor.type||a.FLOAT,{clamped:!1}),u=i/s.BYTES_PER_ELEMENT;return this.getElementCount()-u},n._inferType=function(i){this.accessor.type||this.setAccessor(new ve(this.accessor,{type:pt(i)}))},n.getParameter=function(i){this.gl.bindBuffer(this.glTarget,this.handle);var s=this.gl.getBufferParameter(this.glTarget,i);return this.gl.bindBuffer(this.glTarget,null),s},P(r,[{key:"type",get:function(){return this.accessor.type}}]),r}(me);var On=He(Ue(),1);function hn(e,t){return{name:jf(e,t),language:"glsl",version:Kf(e)}}function jf(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"unnamed",r=/#define[\s*]SHADER_NAME[\s*]([A-Za-z0-9_-]+)[\s*]/,n=r.exec(e);return n?n[1]:t}function Kf(e){var t=100,r=e.match(/[^\s]+/g);if(r&&r.length>=2&&r[0]==="#version"){var n=parseInt(r[1],10);Number.isFinite(n)&&(t=n)}return t}function Sn(e){return vt(e)||Ft(e)||Ye(e)||bt()}function Yf(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=kf(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
26
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function kf(e,t){if(e){if(typeof e=="string")return Qi(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Qi(e,t)}}function Qi(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Gf=["warning","error","info"];function gn(e){var t=e.split(/\r?\n/),r=[],n=Yf(t),o;try{for(n.s();!(o=n.n()).done;){var i=o.value;if(!(i.length<=1)){var s=i.split(":"),u=Sn(s),f=u[0],c=u[1],E=u[2],R=u.slice(3),l=parseInt(E,10);isNaN(l)&&(l=0);var d=parseInt(c,10);isNaN(d)&&(d=0);var A=f.toLowerCase(),m=Gf.includes(A)?A:"info";r.push({message:R.join(":").trim(),type:m,lineNum:l,linePos:d})}}}catch(g){n.e(g)}finally{n.f()}return r}function qi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function zf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?qi(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):qi(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function $f(e){var t=Zf();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function Zf(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var br=function(e){w(r,e);var t=$f(r);function r(o,i){var s;switch(I(this,r),s=t.call(this,o,zf({id:Qf(i)},i)),s.device=void 0,s.handle=void 0,s.device=o,s.props.stage){case"vertex":s.handle=s.props.handle||s.device.gl.createShader(a.VERTEX_SHADER);break;case"fragment":s.handle=s.props.handle||s.device.gl.createShader(a.FRAGMENT_SHADER);break;default:throw new Error(s.props.stage)}return s._compile(s.source),s}var n=r.prototype;return n.destroy=function(){this.handle&&(this.removeStats(),this.device.gl.deleteShader(this.handle),this.destroyed=!0)},n.compilationInfo=function(){var o=oe(On.default.mark(function s(){var u;return On.default.wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return u=this.device.gl.getShaderInfoLog(this.handle),c.abrupt("return",u?gn(u):[]);case 2:case"end":return c.stop()}},s,this)}));function i(){return o.apply(this,arguments)}return i}(),n._compile=function(i){var s=function(g){return g.startsWith("#version ")?g:`#version 100
27
+ `.concat(g)};i=s(i);var u=this.device.gl;u.shaderSource(this.handle,i),u.compileShader(this.handle);var f=u.getShaderParameter(this.handle,a.COMPILE_STATUS);if(!f){var c=u.getShaderInfoLog(this.handle),E=c?gn(c):[],R=E.filter(function(m){return m.type==="error"}),l=Yr(R,i,{showSourceCode:!0}),d=hn(i).name,A="".concat(this.stage," shader ").concat(d);throw C.error("GLSL compilation errors in ".concat(A,`
28
+ `).concat(l))(),new Error("GLSL compilation errors in ".concat(d))}},P(r)}(er);function Qf(e){return hn(e.source).name||e.id||Se("unnamed ".concat(e.stage,"-shader"))}function Ji(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function qf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ji(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ji(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Jf(e){var t=e_();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function e_(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var t_=256,r_=1024,n_=16384,vn=6144,Nr=function(e){w(r,e);var t=Jf(r);function r(o,i){var s;return I(this,r),s=t.call(this,o,i),s.device=void 0,s.glParameters=void 0,s.device=o,s.setParameters(s.props.parameters),s.clear(),s}var n=r.prototype;return n.end=function(){},n.pushDebugGroup=function(i){},n.popDebugGroup=function(){},n.insertDebugMarker=function(i){},n.setParameters=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},s={};this.props.framebuffer&&(s.framebuffer=this.props.framebuffer),this.props.depthReadOnly&&(s.depthMask=!this.props.depthReadOnly),s.stencilMask=this.props.stencilReadOnly?0:1,s[a.RASTERIZER_DISCARD]=this.props.discard,i.viewport&&(i.viewport.length>=6?(s.viewport=i.viewport.slice(0,4),s.depthRange=[i.viewport[4],i.viewport[5]]):s.viewport=i.viewport),s.scissorTest=Boolean(i.scissorRect),i.scissorRect&&(s.scissor=i.scissorRect),i.blendConstant&&(s.blendColor=i.blendConstant),i.stencilReference&&(console.warn("RenderPassParameters.stencilReference not yet implemented in WebGL"),i[a.STENCIL_REF]=i.stencilReference),this.glParameters=s,ge(this.device,s)},n.clear=function(){var i=this,s=qf({},this.glParameters),u=0;this.props.clearColor!==!1&&(u|=n_,s.clearColor=this.props.clearColor),this.props.clearDepth!==!1&&(u|=t_,s.clearDepth=this.props.clearDepth),this.props.clearStencil!==!1&&(u|=r_,s.clearStencil=this.props.clearStencil),u!==0&&Ee(this.device,s,function(){i.device.gl.clear(u)})},n.clearColorBuffer=function(){var i=this,s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0,0,0,0];Ee(this.device.gl2,{framebuffer:this.props.framebuffer},function(){switch(u.constructor){case Int32Array:i.device.gl2.clearBufferiv(vn,s,u);break;case Uint32Array:i.device.gl2.clearBufferuiv(vn,s,u);break;case Float32Array:default:i.device.gl2.clearBufferfv(vn,s,u);break}})},P(r)}(nr);var G;function eo(e){return a_.includes(e)}var a_=[a.SAMPLER_2D,a.SAMPLER_CUBE,a.SAMPLER_3D,a.SAMPLER_2D_SHADOW,a.SAMPLER_2D_ARRAY,a.SAMPLER_2D_ARRAY_SHADOW,a.SAMPLER_CUBE_SHADOW,a.INT_SAMPLER_2D,a.INT_SAMPLER_3D,a.INT_SAMPLER_CUBE,a.INT_SAMPLER_2D_ARRAY,a.UNSIGNED_INT_SAMPLER_2D,a.UNSIGNED_INT_SAMPLER_3D,a.UNSIGNED_INT_SAMPLER_CUBE,a.UNSIGNED_INT_SAMPLER_2D_ARRAY],to=(G={},_(G,a.FLOAT,[a.FLOAT,1,"float","f32","float32"]),_(G,a.FLOAT_VEC2,[a.FLOAT,2,"vec2","vec2<f32>","float32x2"]),_(G,a.FLOAT_VEC3,[a.FLOAT,3,"vec3","vec3<f32>","float32x3"]),_(G,a.FLOAT_VEC4,[a.FLOAT,4,"vec4","vec4<f32>","float32x4"]),_(G,a.INT,[a.INT,1,"int","i32","sint32"]),_(G,a.INT_VEC2,[a.INT,2,"ivec2","vec2<i32>","sint32x2"]),_(G,a.INT_VEC3,[a.INT,3,"ivec3","vec3<i32>","sint32x3"]),_(G,a.INT_VEC4,[a.INT,4,"ivec4","vec4<i32>","sint32x4"]),_(G,a.UNSIGNED_INT,[a.UNSIGNED_INT,1,"uint","u32","uint32"]),_(G,a.UNSIGNED_INT_VEC2,[a.UNSIGNED_INT,2,"uvec2","vec2<u32>","uint32x2"]),_(G,a.UNSIGNED_INT_VEC3,[a.UNSIGNED_INT,3,"uvec3","vec3<u32>","uint32x3"]),_(G,a.UNSIGNED_INT_VEC4,[a.UNSIGNED_INT,4,"uvec4","vec4<u32>","uint32x4"]),_(G,a.BOOL,[a.FLOAT,1,"bool","f32","float32"]),_(G,a.BOOL_VEC2,[a.FLOAT,2,"bvec2","vec2<f32>","float32x2"]),_(G,a.BOOL_VEC3,[a.FLOAT,3,"bvec3","vec3<f32>","float32x3"]),_(G,a.BOOL_VEC4,[a.FLOAT,4,"bvec4","vec4<f32>","float32x4"]),_(G,a.FLOAT_MAT2,[a.FLOAT,8,"mat2","mat2x2<f32>"]),_(G,a.FLOAT_MAT2x3,[a.FLOAT,8,"mat2x3","mat2x3<f32>"]),_(G,a.FLOAT_MAT2x4,[a.FLOAT,8,"mat2x4","mat2x4<f32>"]),_(G,a.FLOAT_MAT3x2,[a.FLOAT,12,"mat3x2","mat3x2<f32>"]),_(G,a.FLOAT_MAT3,[a.FLOAT,12,"mat3","mat3x3<f32>"]),_(G,a.FLOAT_MAT3x4,[a.FLOAT,12,"mat3x4","mat3x4<f32>"]),_(G,a.FLOAT_MAT4x2,[a.FLOAT,16,"mat4x2","mat4x2<f32>"]),_(G,a.FLOAT_MAT4x3,[a.FLOAT,16,"mat4x3","mat4x3<f32>"]),_(G,a.FLOAT_MAT4,[a.FLOAT,16,"mat4","mat4x4<f32>"]),G);function bn(e){var t=to[e];if(!t)throw new Error("uniform");var r=L(t,4),n=r[0],o=r[1],i=r[3];return{format:i,components:o,glType:n}}function ro(e){var t=to[e];if(!t)throw new Error("attribute");var r=L(t,5),n=r[1],o=r[3],i=r[4],s=o;return{attributeType:s,vertexFormat:i,components:n}}var ie;function no(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function ao(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?no(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):no(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Cr(e,t){var r={attributes:[],bindings:[]};r.attributes=i_(e,t);for(var n=u_(e,t),o=0,i=n;o<i.length;o++){var s=i[o],u=s.uniforms.map(function(v){return{name:v.name,format:v.format,byteOffset:v.byteOffset,byteStride:v.byteStride,arrayLength:v.arrayLength}});r.bindings.push({type:"uniform",name:s.name,location:s.location,visibility:(s.vertex?1:0)&(s.fragment?2:0),minBindingSize:s.byteLength,uniforms:u})}for(var f=s_(e,t),c=0,E=0,R=f;E<R.length;E++){var l=R[E];if(eo(l.type)){var d=__(l.type),A=d.viewDimension,m=d.sampleType;r.bindings.push({type:"texture",name:l.name,location:c,viewDimension:A,sampleType:m}),l.textureUnit=c,c+=1}}f.length&&(r.uniforms=f);var g=o_(e,t);return g!=null&&g.length&&(r.varyings=g),r}function i_(e,t){for(var r=[],n=e.getProgramParameter(t,e.ACTIVE_ATTRIBUTES),o=0;o<n;o++){var i=e.getActiveAttrib(t,o);if(!i)throw new Error("activeInfo");var s=i.name,u=i.type,f=e.getAttribLocation(t,s);if(f>=0){var c=ro(u),E=c.attributeType,R=/instance/i.test(s)?"instance":"vertex";r.push({name:s,location:f,stepMode:R,type:E})}}return r.sort(function(l,d){return l.location-d.location}),r}function o_(e,t){if(!W(e))return[];for(var r=e,n=[],o=e.getProgramParameter(t,a.TRANSFORM_FEEDBACK_VARYINGS),i=0;i<o;i++){var s=r.getTransformFeedbackVarying(t,i);if(!s)throw new Error("activeInfo");var u=s.name,f=s.type,c=s.size,E=bn(f),R=E.glType,l=E.components,d=new ve({type:R,size:c*l}),A={location:i,name:u,accessor:d};n.push(A)}return n.sort(function(m,g){return m.location-g.location}),n}function s_(e,t){for(var r=[],n=e.getProgramParameter(t,a.ACTIVE_UNIFORMS),o=0;o<n;o++){var i=e.getActiveUniform(t,o);if(!i)throw new Error("activeInfo");var s=i.name,u=i.size,f=i.type,c=c_(s),E=c.name,R=c.isArray,l=e.getUniformLocation(t,E),d={location:l,name:E,size:u,type:f,isArray:R};if(r.push(d),d.size>1)for(var A=0;A<d.size;A++){var m="".concat(E,"[").concat(A,"]");l=e.getUniformLocation(t,m);var g=ao(ao({},d),{},{name:m,location:l});r.push(g)}}return r}function u_(e,t){if(!W(e))return[];for(var r=e,n=function(g,v){return r.getActiveUniformBlockParameter(t,g,v)},o=[],i=r.getProgramParameter(t,a.ACTIVE_UNIFORM_BLOCKS),s=0;s<i;s++){for(var u={name:r.getActiveUniformBlockName(t,s)||"",location:n(s,a.UNIFORM_BLOCK_BINDING),byteLength:n(s,a.UNIFORM_BLOCK_DATA_SIZE),vertex:n(s,a.UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER),fragment:n(s,a.UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER),uniformCount:n(s,a.UNIFORM_BLOCK_ACTIVE_UNIFORMS),uniforms:[]},f=n(s,a.UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES)||[],c=r.getActiveUniforms(t,f,a.UNIFORM_TYPE),E=r.getActiveUniforms(t,f,a.UNIFORM_SIZE),R=r.getActiveUniforms(t,f,a.UNIFORM_OFFSET),l=r.getActiveUniforms(t,f,a.UNIFORM_ARRAY_STRIDE),d=0;d<u.uniformCount;++d){var A=r.getActiveUniform(t,f[d]);if(!A)throw new Error("activeInfo");u.uniforms.push({name:A.name,format:bn(c[d]).format,type:c[d],arrayLength:E[d],byteOffset:R[d],byteStride:l[d]})}o.push(u)}return o.sort(function(m,g){return m.location-g.location}),o}var f_=(ie={},_(ie,a.SAMPLER_2D,["2d","float"]),_(ie,a.SAMPLER_CUBE,["cube","float"]),_(ie,a.SAMPLER_3D,["3d","float"]),_(ie,a.SAMPLER_2D_SHADOW,["3d","depth"]),_(ie,a.SAMPLER_2D_ARRAY,["2d-array","float"]),_(ie,a.SAMPLER_2D_ARRAY_SHADOW,["2d-array","depth"]),_(ie,a.SAMPLER_CUBE_SHADOW,["cube","float"]),_(ie,a.INT_SAMPLER_2D,["2d","sint"]),_(ie,a.INT_SAMPLER_3D,["3d","sint"]),_(ie,a.INT_SAMPLER_CUBE,["cube","sint"]),_(ie,a.INT_SAMPLER_2D_ARRAY,["2d-array","uint"]),_(ie,a.UNSIGNED_INT_SAMPLER_2D,["2d","uint"]),_(ie,a.UNSIGNED_INT_SAMPLER_3D,["3d","uint"]),_(ie,a.UNSIGNED_INT_SAMPLER_CUBE,["cube","uint"]),_(ie,a.UNSIGNED_INT_SAMPLER_2D_ARRAY,["2d-array","uint"]),ie);function __(e){var t=f_[e];if(!t)throw new Error("sampler");var r=L(t,2),n=r[0],o=r[1];return{viewDimension:n,sampleType:o}}function c_(e){if(e[e.length-1]!=="]")return{name:e,length:1,isArray:!1};var t=/([^[]*)(\[[0-9]+\])?/,r=t.exec(e);if(!r||r.length<2)throw new Error("Failed to parse GLSL uniform name ".concat(e));return{name:r[1],length:r[2]?1:0,isArray:Boolean(r[2])}}function io(e,t,r,n){var o=e,i=n;i===!0&&(i=1),i===!1&&(i=0);var s=typeof i=="number"?[i]:i;switch(r){case a.SAMPLER_2D:case a.SAMPLER_CUBE:case a.SAMPLER_3D:case a.SAMPLER_2D_SHADOW:case a.SAMPLER_2D_ARRAY:case a.SAMPLER_2D_ARRAY_SHADOW:case a.SAMPLER_CUBE_SHADOW:case a.INT_SAMPLER_2D:case a.INT_SAMPLER_3D:case a.INT_SAMPLER_CUBE:case a.INT_SAMPLER_2D_ARRAY:case a.UNSIGNED_INT_SAMPLER_2D:case a.UNSIGNED_INT_SAMPLER_3D:case a.UNSIGNED_INT_SAMPLER_CUBE:case a.UNSIGNED_INT_SAMPLER_2D_ARRAY:if(typeof n!="number")throw new Error("samplers must be set to integers");return e.uniform1i(t,n);case a.FLOAT:return e.uniform1fv(t,s);case a.FLOAT_VEC2:return e.uniform2fv(t,s);case a.FLOAT_VEC3:return e.uniform3fv(t,s);case a.FLOAT_VEC4:return e.uniform4fv(t,s);case a.INT:return e.uniform1iv(t,s);case a.INT_VEC2:return e.uniform2iv(t,s);case a.INT_VEC3:return e.uniform3iv(t,s);case a.INT_VEC4:return e.uniform4iv(t,s);case a.BOOL:return e.uniform1iv(t,s);case a.BOOL_VEC2:return e.uniform2iv(t,s);case a.BOOL_VEC3:return e.uniform3iv(t,s);case a.BOOL_VEC4:return e.uniform4iv(t,s);case a.UNSIGNED_INT:return o.uniform1uiv(t,s,1);case a.UNSIGNED_INT_VEC2:return o.uniform2uiv(t,s,2);case a.UNSIGNED_INT_VEC3:return o.uniform3uiv(t,s,3);case a.UNSIGNED_INT_VEC4:return o.uniform4uiv(t,s,4);case a.FLOAT_MAT2:return e.uniformMatrix2fv(t,!1,s);case a.FLOAT_MAT3:return e.uniformMatrix3fv(t,!1,s);case a.FLOAT_MAT4:return e.uniformMatrix4fv(t,!1,s);case a.FLOAT_MAT2x3:return o.uniformMatrix2x3fv(t,!1,s);case a.FLOAT_MAT2x4:return o.uniformMatrix2x4fv(t,!1,s);case a.FLOAT_MAT3x2:return o.uniformMatrix3x2fv(t,!1,s);case a.FLOAT_MAT3x4:return o.uniformMatrix3x4fv(t,!1,s);case a.FLOAT_MAT4x2:return o.uniformMatrix4x2fv(t,!1,s);case a.FLOAT_MAT4x3:return o.uniformMatrix4x3fv(t,!1,s)}throw new Error("Illegal uniform")}function oo(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=E_(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
29
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function E_(e,t){if(e){if(typeof e=="string")return so(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return so(e,t)}}function so(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function l_(e){var t=R_();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function R_(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var uo=4,Ir=function(e){w(r,e);var t=l_(r);function r(o,i){var s;I(this,r),s=t.call(this,o,i),s.device=void 0,s.handle=void 0,s.vs=void 0,s.fs=void 0,s.introspectedLayout=void 0,s.uniforms={},s.bindings={},s.varyings=null,s._textureUniforms={},s._textureIndexCounter=0,s._uniformCount=0,s._uniformSetters={},s.device=o,s.handle=s.props.handle||s.device.gl.createProgram(),s.device.setSpectorMetadata(s.handle,{id:s.props.id}),s.vs=i.vs,s.fs=i.fs;var u=i.varyings,f=i.bufferMode,c=f===void 0?a.SEPARATE_ATTRIBS:f;if(u&&u.length>0){var E;s.device.assertWebGL2(),s.varyings=u,(E=s.device.gl2)===null||E===void 0||E.transformFeedbackVaryings(s.handle,u,c)}return s._compileAndLink(),s.introspectedLayout=Cr(s.device.gl,s.handle),s.shaderLayout=Vr(s.introspectedLayout,i.shaderLayout),s}var n=r.prototype;return n.destroy=function(){this.handle&&(this.device.gl.deleteProgram(this.handle),this.destroyed=!0)},n.setBindings=function(i){for(var s=this,u=function(){var l=L(c[f],2),d=l[0],A=l[1],m=s.shaderLayout.bindings.find(function(g){return g.name===d});if(!m)return C.warn("Unknown binding ".concat(d," in render pipeline ").concat(s.id))(),"continue";switch(A||C.warn("Unsetting binding ".concat(d," in render pipeline ").concat(s.id))(),m.type){case"uniform":if(!(A instanceof me)&&!(A.buffer instanceof me))throw new Error("buffer value");break;case"texture":if(!(A instanceof he))throw new Error("texture value");break;case"sampler":C.warn("Ignoring sampler ".concat(d))();break;default:throw new Error(m.type)}s.bindings[d]=A},f=0,c=Object.entries(i);f<c.length;f++)var E=u()},n.setUniforms=function(i){Object.assign(this.uniforms,i)},n.draw=function(i){var s,u=this,f=i.renderPass,c=i.vertexArray,E=i.vertexCount,R=i.instanceCount,l=i.firstVertex,d=l===void 0?0:l,A=d_(this.props.topology),m=Boolean(c.indexBuffer),g=(s=c.indexBuffer)===null||s===void 0?void 0:s.glIndexType,v=Number(R)>0;if(!this._areTexturesRenderable()||E===0)return!1;this.device.gl.useProgram(this.handle),c.bindBeforeRender(f);var N=T_(this.props.topology),y=null;y&&y.begin(N),this._applyBindings(),this._applyUniforms();var F=f;return gi(this.device,this.props.parameters,F.glParameters,function(){if(m&&v){var H;(H=u.device.gl2)===null||H===void 0||H.drawElementsInstanced(A,E||0,g,d,R||0)}else if(m)u.device.gl.drawElements(A,E||0,g,d);else if(v){var x;(x=u.device.gl2)===null||x===void 0||x.drawArraysInstanced(A,d,E||0,R||0)}else u.device.gl.drawArrays(A,d,E||0);y&&y.end()}),c.unbindAfterRender(f),!0},n._compileAndLink=function(){var i=this.device.gl;i.attachShader(this.handle,this.vs.handle),i.attachShader(this.handle,this.fs.handle),C.time(uo,"linkProgram for ".concat(this.id))(),i.linkProgram(this.handle),C.timeEnd(uo,"linkProgram for ".concat(this.id))(),!i.debug&&C.level;var s=i.getProgramParameter(this.handle,i.LINK_STATUS);if(!s)throw new Error("Error linking: ".concat(i.getProgramInfoLog(this.handle)));i.validateProgram(this.handle);var u=i.getProgramParameter(this.handle,i.VALIDATE_STATUS);if(!u)throw new Error("Error validating: ".concat(i.getProgramInfoLog(this.handle)))},n._areTexturesRenderable=function(){for(var i=!0,s=0,u=Object.entries(this._textureUniforms);s<u.length;s++){var f=L(u[s],2),c=f[1];c.update(),i=i&&c.loaded}for(var E=0,R=Object.entries(this.bindings);E<R.length;E++){var l=L(R[E],2),d=l[1];d.loaded!==void 0&&(i=i&&d.loaded)}return i},n._applyBindings=function(){this.device.gl.useProgram(this.handle);var i=this.device.gl2;if(!i)throw new Error("bindings");var s=0,u=0,f=oo(this.shaderLayout.bindings),c;try{for(f.s();!(c=f.n()).done;){var E=c.value,R=this.bindings[E.name];if(!R)throw new Error("No value for binding ".concat(E.name," in ").concat(this.id));switch(E.type){case"uniform":var l=E.name,d=i.getUniformBlockIndex(this.handle,l);if(d===a.INVALID_INDEX)throw new Error("Invalid uniform block name ".concat(l));i.uniformBlockBinding(this.handle,u,d),R instanceof me?i.bindBufferBase(a.UNIFORM_BUFFER,u,R.handle):i.bindBufferRange(a.UNIFORM_BUFFER,u,R.buffer.handle,R.offset||0,R.size||R.buffer.byteLength-R.offset),u+=1;break;case"texture":if(!(R instanceof he))throw new Error("texture");var A=R;i.activeTexture(a.TEXTURE0+s),i.bindTexture(A.target,A.handle),s+=1;break;case"sampler":break;case"storage":case"read-only-storage":throw new Error("binding type '".concat(E.type,"' not supported in WebGL"))}}}catch(m){f.e(m)}finally{f.f()}},n._applyUniforms=function(){var i=oo(this.shaderLayout.uniforms||[]),s;try{for(i.s();!(s=i.n()).done;){var u,f=s.value,c=f.name,E=f.location,R=f.type,l=f.textureUnit,d=(u=this.uniforms[c])!==null&&u!==void 0?u:l;d!==void 0&&io(this.device.gl,E,R,d)}}catch(A){i.e(A)}finally{i.f()}},P(r)}(rr);function d_(e){switch(e){case"point-list":return a.POINTS;case"line-list":return a.LINES;case"line-strip":return a.LINE_STRIP;case"line-loop-webgl":return a.LINE_LOOP;case"triangle-list":return a.TRIANGLES;case"triangle-strip":return a.TRIANGLE_STRIP;case"triangle-fan-webgl":return a.TRIANGLE_FAN;default:throw new Error(e)}}function T_(e){switch(e){case"point-list":return a.POINTS;case"line-list":return a.LINES;case"line-strip":return a.LINES;case"line-loop-webgl":return a.LINES;case"triangle-list":return a.TRIANGLES;case"triangle-strip":return a.TRIANGLES;case"triangle-fan-webgl":return a.TRIANGLES;default:throw new Error(e)}}function A_(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=p_(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
30
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,s=!1,u;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return i=c.done,c},e:function(c){s=!0,u=c},f:function(){try{!i&&r.return!=null&&r.return()}finally{if(s)throw u}}}}function p_(e,t){if(e){if(typeof e=="string")return fo(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return fo(e,t)}}function fo(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function m_(e){var t=h_();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function h_(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var _o=function(e){w(r,e);var t=m_(r);function r(o){var i;return I(this,r),i=t.call(this,{}),i.device=void 0,i.commands=[],i.device=o,i}var n=r.prototype;return n.submitCommands=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.commands,s=A_(i),u;try{for(s.s();!(u=s.n()).done;){var f=u.value;switch(f.name){case"copy-buffer-to-buffer":S_(this.device,f.options);break;case"copy-buffer-to-texture":g_(this.device,f.options);break;case"copy-texture-to-buffer":O_(this.device,f.options);break;case"copy-texture-to-texture":v_(this.device,f.options);break}}}catch(c){s.e(c)}finally{s.f()}},P(r)}(ir);function S_(e,t){var r=t.source,n=t.destination,o=e.assertWebGL2();if(o){var i,s;o.bindBuffer(a.COPY_READ_BUFFER,r.handle),o.bindBuffer(a.COPY_WRITE_BUFFER,n.handle),o.copyBufferSubData(a.COPY_READ_BUFFER,a.COPY_WRITE_BUFFER,(i=t.sourceOffset)!==null&&i!==void 0?i:0,(s=t.destinationOffset)!==null&&s!==void 0?s:0,t.size),o.bindBuffer(a.COPY_READ_BUFFER,null),o.bindBuffer(a.COPY_WRITE_BUFFER,null)}else throw new Error("copyBufferToBuffer not implemented in WebGL1")}function g_(e,t){throw new Error("Not implemented")}function O_(e,t){var r=t.source,n=t.mipLevel,o=n===void 0?0:n,i=t.aspect,s=i===void 0?"all":i,u=t.width,f=u===void 0?t.source.width:u,c=t.height,E=c===void 0?t.source.height:c,R=t.depthOrArrayLayers,l=R===void 0?0:R,d=t.origin,A=d===void 0?[0,0]:d,m=t.destination,g=t.byteOffset,v=g===void 0?0:g,N=t.bytesPerRow,y=t.rowsPerImage;if(s!=="all")throw new Error("not supported");if(o!==0||l!==void 0||N||y)throw new Error("not implemented");var F=e.assertWebGL2(),H=co(r),x=H.framebuffer,Z=H.destroyFramebuffer;try{var z=m,re=f||x.width,K=E||x.height,h=a.RGBA,T=a.UNSIGNED_BYTE;F.bindBuffer(a.PIXEL_PACK_BUFFER,z.handle),F.bindFramebuffer(a.FRAMEBUFFER,x.handle),F.readPixels(A[0],A[1],re,K,h,T,v)}finally{F.bindBuffer(a.PIXEL_PACK_BUFFER,null),F.bindFramebuffer(a.FRAMEBUFFER,null),Z&&x.destroy()}}function v_(e,t){var r=t.source,n=t.origin,o=n===void 0?[0,0]:n,i=t.destination,s=t.width,u=s===void 0?t.destination.width:s,f=t.height,c=f===void 0?t.destination.width:f,E=0,R=a.RGBA,l=co(r),d=l.framebuffer,A=l.destroyFramebuffer,m=L(o,2),g=m[0],v=m[1],N=!1;e.gl.bindFramebuffer(a.FRAMEBUFFER,d.handle);var y=null,F;if(i instanceof he)y=i,u=Number.isFinite(u)?u:y.width,c=Number.isFinite(c)?c:y.height,y.bind(0),F=y.destination;else throw new Error("whoops");return N||e.gl.copyTexImage2D(F,E,R,g,v,u,c,0),y&&y.unbind(),A&&d.destroy(),y}function co(e){if(e instanceof se){var t=e.width,r=e.height,n=e.id,o=e.device.createFramebuffer({id:"framebuffer-for-".concat(n),width:t,height:r,colorAttachments:[e]});return{framebuffer:o,destroyFramebuffer:!0}}return{framebuffer:e,destroyFramebuffer:!1}}function b_(e){var t=N_();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function N_(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var Pr=function(e){w(r,e);var t=b_(r);function r(o,i){var s;return I(this,r),s=t.call(this,o,i),s.device=void 0,s.commandBuffer=void 0,s.device=o,s.commandBuffer=new _o(o),s}var n=r.prototype;return n.destroy=function(){},n.finish=function(){this.commandBuffer.submitCommands()},n.copyBufferToBuffer=function(i){this.commandBuffer.commands.push({name:"copy-buffer-to-buffer",options:i})},n.copyBufferToTexture=function(i){this.commandBuffer.commands.push({name:"copy-buffer-to-texture",options:i})},n.copyTextureToBuffer=function(i){this.commandBuffer.commands.push({name:"copy-texture-to-buffer",options:i})},n.copyTextureToTexture=function(i){this.commandBuffer.commands.push({name:"copy-texture-to-texture",options:i})},n.pushDebugGroup=function(i){},n.popDebugGroup=function(){},n.insertDebugMarker=function(i){},P(r)}(ar);var Eo;function C_(e){var t=I_();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function I_(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}Eo=Symbol.toStringTag;var yr=function(e){w(r,e);var t=C_(r);r.isConstantAttributeZeroSupported=function(i){return i.info.type==="webgl2"||Gt()==="Chrome"};function r(o,i){var s;return I(this,r),s=t.call(this,o,i),s.device=void 0,s.handle=void 0,s.buffer=null,s.bufferValue=null,s.init=!1,s.device=o,s.handle=s.device.gl2.createVertexArray(),s}var n=r.prototype;return n.destroy=function(){if(Xe(O(r.prototype),"destroy",this).call(this),this.buffer){var i;(i=this.buffer)===null||i===void 0||i.destroy()}this.handle&&(this.device.gl2.deleteVertexArray(this.handle),this.handle=void 0)},n.setIndexBuffer=function(i){var s=i;if(s&&s.glTarget!==a.ELEMENT_ARRAY_BUFFER)throw new Error("Use .setBuffer()");this.device.gl2.bindVertexArray(this.handle),this.device.gl2.bindBuffer(a.ELEMENT_ARRAY_BUFFER,s?s.handle:null),this.indexBuffer=s},n.setBuffer=function(i,s){var u=s;if(u.glTarget===a.ELEMENT_ARRAY_BUFFER)throw new Error("Use .setIndexBuffer()");var f=this._getAccessor(i),c=f.size,E=f.type,R=f.stride,l=f.offset,d=f.normalized,A=f.integer,m=f.divisor;this.device.gl2.bindVertexArray(this.handle),this.device.gl.bindBuffer(a.ARRAY_BUFFER,u.handle),A?(this.device.assertWebGL2(),this.device.gl2.vertexAttribIPointer(i,c,E,R,l)):this.device.gl.vertexAttribPointer(i,c,E,d,R,l),this.device.gl.enableVertexAttribArray(i),this.device.gl2.vertexAttribDivisor(i,m||0),this.attributes[i]=u},n.setConstant=function(i,s){this._enable(i,!1),this.attributes[i]=s},n.bindBeforeRender=function(){if(this.device.gl2.bindVertexArray(this.handle),!this.init){var i=this.indexBuffer;this.device.gl2.bindBuffer(a.ELEMENT_ARRAY_BUFFER,i?.handle||null),this.init=!0}this._applyConstantAttributes()},n.unbindAfterRender=function(){this.device.gl2.bindVertexArray(null)},n._applyConstantAttributes=function(){for(var i=0;i<this.maxVertexAttributes;++i){var s=this.attributes[i];ArrayBuffer.isView(s)&&this.device.setConstantAttribute(i,s)}},n._getAccessor=function(i){var s=this.attributeInfos[i];if(!s)throw new Error("Unknown attribute location ".concat(i));var u=Rr(s.bufferDataType);return{size:s.bufferComponents,type:u,stride:s.byteStride,offset:s.byteOffset,normalized:s.normalized,integer:s.integer,divisor:s.stepMode==="instance"?1:0}},n._enable=function(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,u=r.isConstantAttributeZeroSupported(this.device),f=u||i!==0;(s||f)&&(i=Number(i),this.device.gl2.bindVertexArray(this.handle),s?this.device.gl.enableVertexAttribArray(i):this.device.gl.disableVertexAttribArray(i),this.device.gl2.bindVertexArray(null))},n.getConstantBuffer=function(i,s){var u=P_(s),f=u.byteLength*i,c=u.length*i,E=!this.buffer;if(this.buffer=this.buffer||this.device.createBuffer({byteLength:f}),E=E||this.buffer.reallocate(f),E=E||!y_(u,this.bufferValue),E){var R=jr(s.constructor,c);Kr({target:R,source:u,start:0,count:c}),this.buffer.subData(R),this.bufferValue=s}return this.buffer},P(r,[{key:Eo,get:function(){return"VertexArray"}}]),r}(sr);function P_(e){return Array.isArray(e)?new Float32Array(e):e}function y_(e,t){if(!e||!t||e.length!==t.length||e.constructor!==t.constructor)return!1;for(var r=0;r<e.length;++r)if(e[r]!==t[r])return!1;return!0}function lo(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Fe(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?lo(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):lo(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function F_(e){var t=B_();return function(){var n=O(e),o;if(t){var i=O(this).constructor;o=Reflect.construct(n,arguments,i)}else o=n.apply(this,arguments);return X(this,o)}}function B_(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var Fr=1,ue=function(e){w(r,e);var t=F_(r);r.isSupported=function(){return typeof WebGLRenderingContext<"u"||Dn()},r.attach=function(i){if(i instanceof r)return i;if(i?.device instanceof Ot)return i.device;if(!M_(i))throw new Error("Invalid WebGLRenderingContext");return new r({gl:i})},r.create=function(){var o=oe(Nn.default.mark(function s(){var u,f,c=arguments;return Nn.default.wrap(function(R){for(;;)switch(R.prev=R.next){case 0:if(u=c.length>0&&c[0]!==void 0?c[0]:{},C.groupCollapsed(Fr,"WebGLDevice created"),typeof u.canvas!="string"){R.next=5;break}return R.next=5,it.pageLoaded;case 5:if(!(C.get("debug")||u.debug)){R.next=8;break}return R.next=8,Yi();case 8:if(f=u.spector,!(C.get("spector")||f)){R.next=12;break}return R.next=12,Li();case 12:if(C.probe(Fr+1,"DOM is loaded")(),!(u.gl&&u.gl.device)){R.next=15;break}return R.abrupt("return",r.attach(u.gl));case 15:return R.abrupt("return",new r(u));case 16:case"end":return R.stop()}},s)}));function i(){return o.apply(this,arguments)}return i}();function r(o){var i,s;I(this,r),s=t.call(this,Fe(Fe({},o),{},{id:o.id||Se("webgl-device")})),s.info=void 0,s.canvasContext=void 0,s.handle=void 0,s.lost=void 0,s._resolveContextLost=void 0,s._features=void 0,s._limits=void 0,s.renderPass=null,s.gl=void 0,s.gl2=null,s.debug=!1,s.isWebGL1=void 0,s.isWebGL2=void 0,s._canvasSizeInfo={clientWidth:0,clientHeight:0,devicePixelRatio:1},s._extensions={},s._polyfilled=!1,s.spector=void 0,s._webglLimits=void 0,s._constants=void 0;var u=(i=o.gl)===null||i===void 0?void 0:i.device;if(u)throw new Error("WebGL context already attached to device ".concat(u.id));s.canvasContext=new vr(be(s),o),s.lost=new Promise(function(g){s._resolveContextLost=g});var f=function(v){var N,y;return(N=(y=s)._resolveContextLost)===null||N===void 0?void 0:N.call(y,{reason:"destroyed",message:"Computer entered sleep mode, or too many apps or browser tabs are using the GPU."})},c=o.gl||null;if(c=c||(q()?ui(s.canvasContext.canvas,Fe(Fe({},o),{},{onContextLost:f})):null),c=c||(q()?null:xn(Fe(Fe({},o),{},{onContextLost:f}))),!c)throw new Error("WebGL context creation failed");s.handle=c,s.gl=s.handle,s.gl2=s.gl,s.isWebGL2=D_(s.gl),s.isWebGL1=!s.isWebGL2,s.info=fi(s.gl),s.gl.device=be(s),s.gl._version=s.isWebGL2?2:1,Er(s.gl);var E=o.enable,R=E===void 0?!0:E,l=o.copyState,d=l===void 0?!1:l;if(Dt(s.gl,{enable:R,copyState:d,log:function(){for(var v=arguments.length,N=new Array(v),y=0;y<v;y++)N[y]=arguments[y];return C.log.apply(C,[1].concat(N))()}}),q()&&o.debug&&(s.gl=ki(s.gl,Fe(Fe({},o),{},{webgl2:s.isWebGL2,throwOnError:!0})),s.gl2=s.gl,s.debug=!0,C.level=Math.max(C.level,1),C.warn("WebGL debug mode activated. Performance reduced.")()),q()&&o.spector){var A=s.handle.canvas||o.canvas;s.spector=Hi(Fe(Fe({},s.props),{},{canvas:A}))}var m="Created ".concat(s.info.type).concat(s.debug?" debug":""," context: ").concat(s.info.vendor,", ").concat(s.info.renderer," for canvas: ").concat(s.canvasContext.id);return C.probe(Fr,m)(),C.groupEnd(Fr)(),s}var n=r.prototype;return n.destroy=function(){var i=this.gl.getExtension("STACKGL_destroy_context");i&&i.destroy()},n.getSize=function(){return[this.gl.drawingBufferWidth,this.gl.drawingBufferHeight]},n.isTextureFormatSupported=function(i){return Xt(this.gl,i)},n.isTextureFormatFilterable=function(i){return Ri(this.gl,i)},n.isTextureFormatRenderable=function(i){return di(this.gl,i)},n.assertWebGL2=function(){if(!this.gl2)throw new Error("Requires WebGL2");return this.gl2},n.createCanvasContext=function(i){throw new Error("WebGL only supports a single canvas")},n.createBuffer=function(i){var s=this._getBufferProps(i);return new mt(this,s)},n._createTexture=function(i){return new he(this,i)},n.createExternalTexture=function(i){throw new Error("createExternalTexture() not implemented")},n.createSampler=function(i){return new qe(this,i)},n.createShader=function(i){return new br(this,i)},n.createFramebuffer=function(i){return new Tt(this,i)},n.createRenderPipeline=function(i){return new Ir(this,i)},n.createVertexArray=function(i){return new yr(this,i)},n.beginRenderPass=function(i){return new Nr(this,i)},n.createComputePipeline=function(i){throw new Error("ComputePipeline not supported in WebGL")},n.beginComputePass=function(i){throw new Error("compute shaders not supported in WebGL")},n.getDefaultRenderPass=function(){return this.renderPass=this.renderPass||this.beginRenderPass({framebuffer:this.canvasContext.getCurrentFramebuffer()}),this.renderPass},n.createCommandEncoder=function(i){return new Pr(this,i)},n.submit=function(){var i;(i=this.renderPass)===null||i===void 0||i.end(),this.renderPass=null},n.loseDevice=function(){var i,s=!1,u=this.gl.getExtension("WEBGL_lose_context");return u&&(s=!0,u.loseContext()),(i=this._resolveContextLost)===null||i===void 0||i.call(this,{reason:"destroyed",message:"Application triggered context loss"}),s},n.pushState=function(){De(this.gl)},n.popState=function(){Ie(this.gl)},n.setSpectorMetadata=function(i,s){i.__SPECTOR_Metadata=s},n.getGLKey=function(i,s){s=s||this.gl2||this.gl;var u=Number(i);for(var f in s)if(s[f]===u)return"GL.".concat(f);return String(i)},n.setConstantAttribute=function(i,s){this._constants=this._constants||new Array(this.limits.maxVertexAttributes).fill(null);var u=this._constants[i];switch(u&&X_(u,s)&&C.info(1,"setConstantAttribute(".concat(i,") could have been skipped, value unchanged"))(),this._constants[i]=s,s.constructor){case Float32Array:x_(this,i,s);break;case Int32Array:U_(this,i,s);break;case Uint32Array:w_(this,i,s);break;default:B(!1)}},P(r,[{key:"features",get:function(){return this._features=this._features||pi(this.gl),this._features}},{key:"limits",get:function(){return this._limits=this._limits||hi(this.gl),this._limits}},{key:"isLost",get:function(){return this.gl.isContextLost()}},{key:"webglLimits",get:function(){return this._webglLimits=this._webglLimits||Si(this.gl),this._webglLimits}}]),r}(Ot);ue.type="webgl";function M_(e){return typeof WebGLRenderingContext<"u"&&e instanceof WebGLRenderingContext||typeof WebGL2RenderingContext<"u"&&e instanceof WebGL2RenderingContext?!0:Boolean(e&&Number.isFinite(e._version))}function D_(e){return typeof WebGL2RenderingContext<"u"&&e instanceof WebGL2RenderingContext?!0:Boolean(e&&e._version===2)}function x_(e,t,r){switch(r.length){case 1:e.gl.vertexAttrib1fv(t,r);break;case 2:e.gl.vertexAttrib2fv(t,r);break;case 3:e.gl.vertexAttrib3fv(t,r);break;case 4:e.gl.vertexAttrib4fv(t,r);break;default:B(!1)}}function U_(e,t,r){var n;e.assertWebGL2(),(n=e.gl2)===null||n===void 0||n.vertexAttribI4iv(t,r)}function w_(e,t,r){var n;e.assertWebGL2(),(n=e.gl2)===null||n===void 0||n.vertexAttribI4uiv(t,r)}function X_(e,t){if(!e||!t||e.length!==t.length||e.constructor!==t.constructor)return!1;for(var r=0;r<e.length;++r)if(e[r]!==t[r])return!1;return!0}var L_=256,H_=1024,W_=16384;var V_="clear: bad arguments";function Ro(e,t){var r=ue.attach(e),n=t||{},o=n.framebuffer,i=o===void 0?null:o,s=n.color,u=s===void 0?null:s,f=n.depth,c=f===void 0?null:f,E=n.stencil,R=E===void 0?null:E,l={};i&&(l.framebuffer=i);var d=0;u&&(d|=W_,u!==!0&&(l.clearColor=u)),c&&(d|=L_,c!==!0&&(l.clearDepth=c)),R&&(d|=H_,c!==!0&&(l.clearStencil=c)),B(d!==0,V_),Ee(r.gl,l,function(){r.gl.clear(d)})}function Cn(e){switch(e){case a.ALPHA:case a.R32F:case a.RED:return 1;case a.RG32F:case a.RG:return 2;case a.RGB:case a.RGB32F:return 3;case a.RGBA:case a.RGBA32F:return 4;default:return B(!1),0}}function To(e){switch(e){case a.UNSIGNED_BYTE:return 1;case a.UNSIGNED_SHORT_5_6_5:case a.UNSIGNED_SHORT_4_4_4_4:case a.UNSIGNED_SHORT_5_5_5_1:return 2;case a.FLOAT:return 4;default:return B(!1),0}}function Ao(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function po(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ao(Object(r),!0).forEach(function(n){_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ao(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function mo(e,t){var r,n=t||{},o=n.sourceX,i=o===void 0?0:o,s=n.sourceY,u=s===void 0?0:s,f=n.sourceFormat,c=f===void 0?a.RGBA:f,E=n.sourceAttachment,R=E===void 0?a.COLOR_ATTACHMENT0:E,l=t||{},d=l.target,A=d===void 0?null:d,m=l.sourceWidth,g=l.sourceHeight,v=l.sourceType,N=In(e),y=N.framebuffer,F=N.deleteFramebuffer;B(y);var H=y,x=H.gl,Z=H.handle;m=m||y.width,g=g||y.height;var z=R-a.COLOR_ATTACHMENT0;v=v||((r=y.colorAttachments[z])===null||r===void 0?void 0:r.type)||a.UNSIGNED_BYTE,A=K_(A,v,c,m,g),v=v||pt(A);var re=x.bindFramebuffer(a.FRAMEBUFFER,Z);return x.readPixels(i,u,m,g,c,v,A),x.bindFramebuffer(a.FRAMEBUFFER,re||null),F&&y.destroy(),A}function ho(e,t){var r=t||{},n=r.sourceX,o=n===void 0?0:n,i=r.sourceY,s=i===void 0?0:i,u=r.sourceFormat,f=u===void 0?a.RGBA:u,c=r.targetByteOffset,E=c===void 0?0:c,R=t||{},l=R.target,d=R.sourceWidth,A=R.sourceHeight,m=R.sourceType,g=In(e),v=g.framebuffer,N=g.deleteFramebuffer;B(v),d=d||v.width,A=A||v.height;var y=v,F=y.device.assertWebGL2();if(m=m||(l?l.type:a.UNSIGNED_BYTE),!l){var H=Cn(f),x=To(m),Z=E+d*A*H*x;l=new mt(F,{byteLength:Z,accessor:{type:m,size:H}})}return l.bind({glTarget:a.PIXEL_PACK_BUFFER}),Ee(F,{framebuffer:v},function(){F.readPixels(o,s,d,A,f,m,E)}),l.unbind({glTarget:a.PIXEL_PACK_BUFFER}),N&&v.destroy(),l}function So(e,t,r){var n=r||{},o=n.sourceX,i=o===void 0?0:o,s=n.sourceY,u=s===void 0?0:s,f=n.targetMipmaplevel,c=f===void 0?0:f,E=n.targetInternalFormat,R=E===void 0?a.RGBA:E,l=r||{},d=l.targetX,A=l.targetY,m=l.targetZ,g=l.width,v=l.height,N=In(e),y=N.framebuffer,F=N.deleteFramebuffer;B(y);var H=y,x=H.device,Z=H.handle,z=typeof d<"u"||typeof A<"u"||typeof m<"u";d=d||0,A=A||0,m=m||0;var re=x.gl.bindFramebuffer(a.FRAMEBUFFER,Z);B(t);var K=null,h;if(t instanceof se?(K=t,g=Number.isFinite(g)?g:K.width,v=Number.isFinite(v)?v:K.height,K.bind(0),h=K.target):h=t,!z)x.gl.copyTexImage2D(h,c,R,i,u,g,v,0);else switch(h){case a.TEXTURE_2D:case a.TEXTURE_CUBE_MAP:x.gl.copyTexSubImage2D(h,c,d,A,i,u,g,v);break;case a.TEXTURE_2D_ARRAY:case a.TEXTURE_3D:x.assertWebGL2(),x.gl2.copyTexSubImage3D(h,c,d,A,m,i,u,g,v);break;default:}return K&&K.unbind(),x.gl.bindFramebuffer(a.FRAMEBUFFER,re||null),F&&y.destroy(),K}function In(e){return e instanceof st?{framebuffer:e,deleteFramebuffer:!1}:{framebuffer:j_(e),deleteFramebuffer:!0}}function j_(e,t){var r=e.device,n=e.width,o=e.height,i=e.id,s=r.createFramebuffer(po(po({},t),{},{id:"framebuffer-for-".concat(i),width:n,height:o,colorAttachments:[e]}));return s}function K_(e,t,r,n,o){if(e)return e;t=t||a.UNSIGNED_BYTE;var i=Le(t,{clamped:!1}),s=Cn(r);return new i(n*o*s)}return yo(Y_);})();
31
31
  /*! Bundled license information:
32
32
 
33
33
  @babel/runtime/helpers/regeneratorRuntime.js: