plotly.js 2.10.0 → 2.11.1

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 (73) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/CONTRIBUTING.md +17 -0
  3. package/README.md +3 -3
  4. package/dist/README.md +23 -23
  5. package/dist/plotly-basic.js +2 -2
  6. package/dist/plotly-basic.min.js +2 -2
  7. package/dist/plotly-cartesian.js +2 -2
  8. package/dist/plotly-cartesian.min.js +2 -2
  9. package/dist/plotly-finance.js +2 -2
  10. package/dist/plotly-finance.min.js +2 -2
  11. package/dist/plotly-geo-assets.js +2 -2
  12. package/dist/plotly-geo.js +2 -2
  13. package/dist/plotly-geo.min.js +2 -2
  14. package/dist/plotly-gl2d.js +429 -352
  15. package/dist/plotly-gl2d.min.js +10 -10
  16. package/dist/plotly-gl3d.js +51 -10
  17. package/dist/plotly-gl3d.min.js +3 -3
  18. package/dist/plotly-mapbox.js +2 -2
  19. package/dist/plotly-mapbox.min.js +2 -2
  20. package/dist/plotly-strict.js +39790 -947
  21. package/dist/plotly-strict.min.js +11 -11
  22. package/dist/plotly-with-meta.js +705 -623
  23. package/dist/plotly.js +676 -594
  24. package/dist/plotly.min.js +4 -4
  25. package/lib/index-strict.js +5 -0
  26. package/package.json +9 -8
  27. package/src/generated/regl-codegen/30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0 +658 -0
  28. package/src/generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b +457 -0
  29. package/src/generated/regl-codegen/3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d +2050 -0
  30. package/src/generated/regl-codegen/453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45 +452 -0
  31. package/src/generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210 +1423 -0
  32. package/src/generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923 +2184 -0
  33. package/src/generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034 +2000 -0
  34. package/src/generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623 +637 -0
  35. package/src/generated/regl-codegen/a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470 +635 -0
  36. package/src/generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019 +3311 -0
  37. package/src/generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81 +660 -0
  38. package/src/generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d +2700 -0
  39. package/src/generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5 +3325 -0
  40. package/src/generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7 +2436 -0
  41. package/src/lib/prepare_regl.js +7 -3
  42. package/src/traces/parcoords/base_index.js +24 -0
  43. package/src/traces/parcoords/index.js +4 -22
  44. package/src/traces/parcoords/plot-strict.js +9 -0
  45. package/src/traces/parcoords/plot.js +5 -2
  46. package/src/traces/parcoords/regl_precompiled.js +12 -0
  47. package/src/traces/parcoords/strict.js +7 -0
  48. package/src/traces/scattergl/base_index.js +29 -0
  49. package/src/traces/scattergl/index.js +3 -26
  50. package/src/traces/scattergl/plot.js +5 -2
  51. package/src/traces/scattergl/plot_strict.js +9 -0
  52. package/src/traces/scattergl/regl_precompiled.js +24 -0
  53. package/src/traces/scattergl/strict.js +7 -0
  54. package/src/traces/scatterpolargl/base_index.js +29 -0
  55. package/src/traces/scatterpolargl/index.js +3 -26
  56. package/src/traces/scatterpolargl/plot.js +4 -0
  57. package/src/traces/scatterpolargl/plot_strict.js +13 -0
  58. package/src/traces/scatterpolargl/regl_precompiled.js +24 -0
  59. package/src/traces/scatterpolargl/strict.js +7 -0
  60. package/src/traces/splom/base_index.js +36 -0
  61. package/src/traces/splom/base_plot.js +5 -2
  62. package/src/traces/splom/base_plot_strict.js +9 -0
  63. package/src/traces/splom/index.js +3 -33
  64. package/src/traces/splom/regl_precompiled.js +24 -0
  65. package/src/traces/splom/strict.js +7 -0
  66. package/src/version.js +1 -1
  67. package/stackgl_modules/index.js +49 -8
  68. package/stackgl_modules/package-lock.json +10 -10
  69. package/stackgl_modules/package.json +2 -2
  70. package/tasks/bundle.js +18 -0
  71. package/tasks/partial_bundle.js +26 -23
  72. package/tasks/stats.js +3 -3
  73. package/tasks/util/constants.js +13 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * plotly.js (gl2d) v2.10.0
2
+ * plotly.js (gl2d) v2.11.1
3
3
  * Copyright 2012-2022, Plotly, Inc.
4
4
  * All rights reserved.
5
5
  * Licensed under the MIT license
@@ -77,7 +77,7 @@ for(var selector in rules) {
77
77
 
78
78
  module.exports = _dereq_('../src/transforms/aggregate');
79
79
 
80
- },{"../src/transforms/aggregate":582}],3:[function(_dereq_,module,exports){
80
+ },{"../src/transforms/aggregate":585}],3:[function(_dereq_,module,exports){
81
81
  'use strict';
82
82
 
83
83
  module.exports = _dereq_('../src/components/calendars');
@@ -92,12 +92,12 @@ module.exports = _dereq_('../src/core');
92
92
 
93
93
  module.exports = _dereq_('../src/transforms/filter');
94
94
 
95
- },{"../src/transforms/filter":583}],6:[function(_dereq_,module,exports){
95
+ },{"../src/transforms/filter":586}],6:[function(_dereq_,module,exports){
96
96
  'use strict';
97
97
 
98
98
  module.exports = _dereq_('../src/transforms/groupby');
99
99
 
100
- },{"../src/transforms/groupby":584}],7:[function(_dereq_,module,exports){
100
+ },{"../src/transforms/groupby":587}],7:[function(_dereq_,module,exports){
101
101
  'use strict';
102
102
 
103
103
  module.exports = _dereq_('../src/traces/heatmapgl');
@@ -132,27 +132,27 @@ module.exports = Plotly;
132
132
 
133
133
  module.exports = _dereq_('../src/traces/parcoords');
134
134
 
135
- },{"../src/traces/parcoords":517}],10:[function(_dereq_,module,exports){
135
+ },{"../src/traces/parcoords":518}],10:[function(_dereq_,module,exports){
136
136
  'use strict';
137
137
 
138
138
  module.exports = _dereq_('../src/traces/pointcloud');
139
139
 
140
- },{"../src/traces/pointcloud":527}],11:[function(_dereq_,module,exports){
140
+ },{"../src/traces/pointcloud":528}],11:[function(_dereq_,module,exports){
141
141
  'use strict';
142
142
 
143
143
  module.exports = _dereq_('../src/traces/scattergl');
144
144
 
145
- },{"../src/traces/scattergl":567}],12:[function(_dereq_,module,exports){
145
+ },{"../src/traces/scattergl":569}],12:[function(_dereq_,module,exports){
146
146
  'use strict';
147
147
 
148
148
  module.exports = _dereq_('../src/transforms/sort');
149
149
 
150
- },{"../src/transforms/sort":586}],13:[function(_dereq_,module,exports){
150
+ },{"../src/transforms/sort":589}],13:[function(_dereq_,module,exports){
151
151
  'use strict';
152
152
 
153
153
  module.exports = _dereq_('../src/traces/splom');
154
154
 
155
- },{"../src/traces/splom":578}],14:[function(_dereq_,module,exports){
155
+ },{"../src/traces/splom":581}],14:[function(_dereq_,module,exports){
156
156
  !function() {
157
157
  var d3 = {
158
158
  version: "3.8.0"
@@ -24774,177 +24774,183 @@ function getPad (arg) {
24774
24774
  }
24775
24775
 
24776
24776
  },{"array-bounds":18,"array-range":21,"flatten-vertex-data":122,"parse-rect":178,"pick-by-alias":182,"raf":192,"regl-scatter2d":195}],197:[function(_dereq_,module,exports){
24777
- (function(Z,ka){"object"===typeof exports&&"undefined"!==typeof module?module.exports=ka():"function"===typeof define&&define.amd?define(ka):Z.createREGL=ka()})(this,function(){function Z(a,b){this.id=Db++;this.type=a;this.data=b}function ka(a){if(0===a.length)return[];var b=a.charAt(0),c=a.charAt(a.length-1);if(1<a.length&&b===c&&('"'===b||"'"===b))return['"'+a.substr(1,a.length-2).replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"'];if(b=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(a))return ka(a.substr(0,
24778
- b.index)).concat(ka(b[1])).concat(ka(a.substr(b.index+b[0].length)));b=a.split(".");if(1===b.length)return['"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"'];a=[];for(c=0;c<b.length;++c)a=a.concat(ka(b[c]));return a}function cb(a){return"["+ka(a).join("][")+"]"}function db(a,b){if("function"===typeof a)return new Z(0,a);if("number"===typeof a||"boolean"===typeof a)return new Z(5,a);if(Array.isArray(a))return new Z(6,a.map(function(a,e){return db(a,b+"["+e+"]")}));if(a instanceof Z)return a}function Eb(){var a=
24779
- {"":0},b=[""];return{id:function(c){var e=a[c];if(e)return e;e=a[c]=b.length;b.push(c);return e},str:function(a){return b[a]}}}function Fb(a,b,c){function e(){var b=window.innerWidth,e=window.innerHeight;a!==document.body&&(e=f.getBoundingClientRect(),b=e.right-e.left,e=e.bottom-e.top);f.width=c*b;f.height=c*e}var f=document.createElement("canvas");L(f.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"});a.appendChild(f);a===document.body&&(f.style.position="absolute",L(a.style,
24780
- {margin:0,padding:0}));var d;a!==document.body&&"function"===typeof ResizeObserver?(d=new ResizeObserver(function(){setTimeout(e)}),d.observe(a)):window.addEventListener("resize",e,!1);e();return{canvas:f,onDestroy:function(){d?d.disconnect():window.removeEventListener("resize",e);a.removeChild(f)}}}function Gb(a,b){function c(c){try{return a.getContext(c,b)}catch(f){return null}}return c("webgl")||c("experimental-webgl")||c("webgl-experimental")}function eb(a){return"string"===typeof a?a.split():
24781
- a}function fb(a){return"string"===typeof a?document.querySelector(a):a}function Hb(a){var b=a||{},c,e,f,d;a={};var q=[],n=[],v="undefined"===typeof window?1:window.devicePixelRatio,k=!1,u=function(a){},m=function(){};"string"===typeof b?c=document.querySelector(b):"object"===typeof b&&("string"===typeof b.nodeName&&"function"===typeof b.appendChild&&"function"===typeof b.getBoundingClientRect?c=b:"function"===typeof b.drawArrays||"function"===typeof b.drawElements?(d=b,f=d.canvas):("gl"in b?d=b.gl:
24782
- "canvas"in b?f=fb(b.canvas):"container"in b&&(e=fb(b.container)),"attributes"in b&&(a=b.attributes),"extensions"in b&&(q=eb(b.extensions)),"optionalExtensions"in b&&(n=eb(b.optionalExtensions)),"onDone"in b&&(u=b.onDone),"profile"in b&&(k=!!b.profile),"pixelRatio"in b&&(v=+b.pixelRatio)));c&&("canvas"===c.nodeName.toLowerCase()?f=c:e=c);if(!d){if(!f){c=Fb(e||document.body,u,v);if(!c)return null;f=c.canvas;m=c.onDestroy}void 0===a.premultipliedAlpha&&(a.premultipliedAlpha=!0);d=Gb(f,a)}return d?{gl:d,
24783
- canvas:f,container:e,extensions:q,optionalExtensions:n,pixelRatio:v,profile:k,onDone:u,onDestroy:m}:(m(),u("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function Ib(a,b){function c(b){b=b.toLowerCase();var c;try{c=e[b]=a.getExtension(b)}catch(f){}return!!c}for(var e={},f=0;f<b.extensions.length;++f){var d=b.extensions[f];if(!c(d))return b.onDestroy(),b.onDone('"'+d+'" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),
24784
- null}b.optionalExtensions.forEach(c);return{extensions:e,restore:function(){Object.keys(e).forEach(function(a){if(e[a]&&!c(a))throw Error("(regl): error restoring extension "+a);})}}}function R(a,b){for(var c=Array(a),e=0;e<a;++e)c[e]=b(e);return c}function gb(a){var b,c;b=(65535<a)<<4;a>>>=b;c=(255<a)<<3;a>>>=c;b|=c;c=(15<a)<<2;a>>>=c;b|=c;c=(3<a)<<1;return b|c|a>>>c>>1}function hb(){function a(a){a:{for(var b=16;268435456>=b;b*=16)if(a<=b){a=b;break a}a=0}b=c[gb(a)>>2];return 0<b.length?b.pop():
24785
- new ArrayBuffer(a)}function b(a){c[gb(a.byteLength)>>2].push(a)}var c=R(8,function(){return[]});return{alloc:a,free:b,allocType:function(b,c){var d=null;switch(b){case 5120:d=new Int8Array(a(c),0,c);break;case 5121:d=new Uint8Array(a(c),0,c);break;case 5122:d=new Int16Array(a(2*c),0,c);break;case 5123:d=new Uint16Array(a(2*c),0,c);break;case 5124:d=new Int32Array(a(4*c),0,c);break;case 5125:d=new Uint32Array(a(4*c),0,c);break;case 5126:d=new Float32Array(a(4*c),0,c);break;default:return null}return d.length!==
24786
- c?d.subarray(0,c):d},freeType:function(a){b(a.buffer)}}}function la(a){return!!a&&"object"===typeof a&&Array.isArray(a.shape)&&Array.isArray(a.stride)&&"number"===typeof a.offset&&a.shape.length===a.stride.length&&(Array.isArray(a.data)||O(a.data))}function ib(a,b,c,e,f,d){for(var q=0;q<b;++q)for(var n=a[q],v=0;v<c;++v)for(var k=n[v],u=0;u<e;++u)f[d++]=k[u]}function jb(a,b,c,e,f){for(var d=1,q=c+1;q<b.length;++q)d*=b[q];var n=b[c];if(4===b.length-c){var v=b[c+1],k=b[c+2];b=b[c+3];for(q=0;q<n;++q)ib(a[q],
24787
- v,k,b,e,f),f+=d}else for(q=0;q<n;++q)jb(a[q],b,c+1,e,f),f+=d}function Ha(a){return Ia[Object.prototype.toString.call(a)]|0}function kb(a,b){for(var c=0;c<b.length;++c)a[c]=b[c]}function lb(a,b,c,e,f,d,q){for(var n=0,v=0;v<c;++v)for(var k=0;k<e;++k)a[n++]=b[f*v+d*k+q]}function Jb(a,b,c,e){function f(b){this.id=v++;this.buffer=a.createBuffer();this.type=b;this.usage=35044;this.byteLength=0;this.dimension=1;this.dtype=5121;this.persistentData=null;c.profile&&(this.stats={size:0})}function d(b,c,l){b.byteLength=
24788
- c.byteLength;a.bufferData(b.type,c,l)}function q(a,b,c,g,h,r){a.usage=c;if(Array.isArray(b)){if(a.dtype=g||5126,0<b.length)if(Array.isArray(b[0])){h=mb(b);for(var p=g=1;p<h.length;++p)g*=h[p];a.dimension=g;b=Ua(b,h,a.dtype);d(a,b,c);r?a.persistentData=b:G.freeType(b)}else"number"===typeof b[0]?(a.dimension=h,h=G.allocType(a.dtype,b.length),kb(h,b),d(a,h,c),r?a.persistentData=h:G.freeType(h)):O(b[0])&&(a.dimension=b[0].length,a.dtype=g||Ha(b[0])||5126,b=Ua(b,[b.length,b[0].length],a.dtype),d(a,b,c),
24789
- r?a.persistentData=b:G.freeType(b))}else if(O(b))a.dtype=g||Ha(b),a.dimension=h,d(a,b,c),r&&(a.persistentData=new Uint8Array(new Uint8Array(b.buffer)));else if(la(b)){h=b.shape;var e=b.stride,p=b.offset,t=0,ma=0,f=0,k=0;1===h.length?(t=h[0],ma=1,f=e[0],k=0):2===h.length&&(t=h[0],ma=h[1],f=e[0],k=e[1]);a.dtype=g||Ha(b.data)||5126;a.dimension=ma;h=G.allocType(a.dtype,t*ma);lb(h,b.data,t,ma,f,k,p);d(a,h,c);r?a.persistentData=h:G.freeType(h)}else b instanceof ArrayBuffer&&(a.dtype=5121,a.dimension=h,
24790
- d(a,b,c),r&&(a.persistentData=new Uint8Array(new Uint8Array(b))))}function n(c){b.bufferCount--;e(c);a.deleteBuffer(c.buffer);c.buffer=null;delete k[c.id]}var v=0,k={};f.prototype.bind=function(){a.bindBuffer(this.type,this.buffer)};f.prototype.destroy=function(){n(this)};var u=[];c.profile&&(b.getTotalBufferSize=function(){var a=0;Object.keys(k).forEach(function(b){a+=k[b].stats.size});return a});return{create:function(m,e,d,g){function h(b){var e=35044,t=null,d=0,m=0,f=1;Array.isArray(b)||O(b)||
24791
- la(b)||b instanceof ArrayBuffer?t=b:"number"===typeof b?d=b|0:b&&("data"in b&&(t=b.data),"usage"in b&&(e=nb[b.usage]),"type"in b&&(m=Ja[b.type]),"dimension"in b&&(f=b.dimension|0),"length"in b&&(d=b.length|0));r.bind();t?q(r,t,e,m,f,g):(d&&a.bufferData(r.type,d,e),r.dtype=m||5121,r.usage=e,r.dimension=f,r.byteLength=d);c.profile&&(r.stats.size=r.byteLength*na[r.dtype]);return h}b.bufferCount++;var r=new f(e);k[r.id]=r;d||h(m);h._reglType="buffer";h._buffer=r;h.subdata=function(b,c){var t=(c||0)|0,
24792
- d;r.bind();if(O(b)||b instanceof ArrayBuffer)a.bufferSubData(r.type,t,b);else if(Array.isArray(b)){if(0<b.length)if("number"===typeof b[0]){var e=G.allocType(r.dtype,b.length);kb(e,b);a.bufferSubData(r.type,t,e);G.freeType(e)}else if(Array.isArray(b[0])||O(b[0]))d=mb(b),e=Ua(b,d,r.dtype),a.bufferSubData(r.type,t,e),G.freeType(e)}else if(la(b)){d=b.shape;var m=b.stride,g=e=0,f=0,y=0;1===d.length?(e=d[0],g=1,f=m[0],y=0):2===d.length&&(e=d[0],g=d[1],f=m[0],y=m[1]);d=Array.isArray(b.data)?r.dtype:Ha(b.data);
24793
- d=G.allocType(d,e*g);lb(d,b.data,e,g,f,y,b.offset);a.bufferSubData(r.type,t,d);G.freeType(d)}return h};c.profile&&(h.stats=r.stats);h.destroy=function(){n(r)};return h},createStream:function(a,b){var c=u.pop();c||(c=new f(a));c.bind();q(c,b,35040,0,1,!1);return c},destroyStream:function(a){u.push(a)},clear:function(){I(k).forEach(n);u.forEach(n)},getBuffer:function(a){return a&&a._buffer instanceof f?a._buffer:null},restore:function(){I(k).forEach(function(b){b.buffer=a.createBuffer();a.bindBuffer(b.type,
24794
- b.buffer);a.bufferData(b.type,b.persistentData||b.byteLength,b.usage)})},_initBuffer:q}}function Kb(a,b,c,e){function f(a){this.id=v++;n[this.id]=this;this.buffer=a;this.primType=4;this.type=this.vertCount=0}function d(d,e,f,g,h,r,p){d.buffer.bind();var k;e?((k=p)||O(e)&&(!la(e)||O(e.data))||(k=b.oes_element_index_uint?5125:5123),c._initBuffer(d.buffer,e,f,k,3)):(a.bufferData(34963,r,f),d.buffer.dtype=k||5121,d.buffer.usage=f,d.buffer.dimension=3,d.buffer.byteLength=r);k=p;if(!p){switch(d.buffer.dtype){case 5121:case 5120:k=
24795
- 5121;break;case 5123:case 5122:k=5123;break;case 5125:case 5124:k=5125}d.buffer.dtype=k}d.type=k;e=h;0>e&&(e=d.buffer.byteLength,5123===k?e>>=1:5125===k&&(e>>=2));d.vertCount=e;e=g;0>g&&(e=4,g=d.buffer.dimension,1===g&&(e=0),2===g&&(e=1),3===g&&(e=4));d.primType=e}function q(a){e.elementsCount--;delete n[a.id];a.buffer.destroy();a.buffer=null}var n={},v=0,k={uint8:5121,uint16:5123};b.oes_element_index_uint&&(k.uint32=5125);f.prototype.bind=function(){this.buffer.bind()};var u=[];return{create:function(a,
24796
- b){function l(a){if(a)if("number"===typeof a)g(a),h.primType=4,h.vertCount=a|0,h.type=5121;else{var b=null,c=35044,e=-1,f=-1,m=0,n=0;if(Array.isArray(a)||O(a)||la(a))b=a;else if("data"in a&&(b=a.data),"usage"in a&&(c=nb[a.usage]),"primitive"in a&&(e=Ka[a.primitive]),"count"in a&&(f=a.count|0),"type"in a&&(n=k[a.type]),"length"in a)m=a.length|0;else if(m=f,5123===n||5122===n)m*=2;else if(5125===n||5124===n)m*=4;d(h,b,c,e,f,m,n)}else g(),h.primType=4,h.vertCount=0,h.type=5121;return l}var g=c.create(null,
24797
- 34963,!0),h=new f(g._buffer);e.elementsCount++;l(a);l._reglType="elements";l._elements=h;l.subdata=function(a,b){g.subdata(a,b);return l};l.destroy=function(){q(h)};return l},createStream:function(a){var b=u.pop();b||(b=new f(c.create(null,34963,!0,!1)._buffer));d(b,a,35040,-1,-1,0,0);return b},destroyStream:function(a){u.push(a)},getElements:function(a){return"function"===typeof a&&a._elements instanceof f?a._elements:null},clear:function(){I(n).forEach(q)}}}function ob(a){for(var b=G.allocType(5123,
24798
- a.length),c=0;c<a.length;++c)if(isNaN(a[c]))b[c]=65535;else if(Infinity===a[c])b[c]=31744;else if(-Infinity===a[c])b[c]=64512;else{pb[0]=a[c];var e=Lb[0],f=e>>>31<<15,d=(e<<1>>>24)-127,e=e>>13&1023;b[c]=-24>d?f:-14>d?f+(e+1024>>-14-d):15<d?f+31744:f+(d+15<<10)+e}return b}function ra(a){return Array.isArray(a)||O(a)}function sa(a){return"[object "+a+"]"}function qb(a){return Array.isArray(a)&&(0===a.length||"number"===typeof a[0])}function rb(a){return Array.isArray(a)&&0!==a.length&&ra(a[0])?!0:!1}
24799
- function aa(a){return Object.prototype.toString.call(a)}function Va(a){if(!a)return!1;var b=aa(a);return 0<=Mb.indexOf(b)?!0:qb(a)||rb(a)||la(a)}function sb(a,b){36193===a.type?(a.data=ob(b),G.freeType(b)):a.data=b}function La(a,b,c,e,f,d){a="undefined"!==typeof C[a]?C[a]:U[a]*za[b];d&&(a*=6);if(f){for(e=0;1<=c;)e+=a*c*c,c/=2;return e}return a*c*e}function Nb(a,b,c,e,f,d,q){function n(){this.format=this.internalformat=6408;this.type=5121;this.flipY=this.premultiplyAlpha=this.compressed=!1;this.unpackAlignment=
24800
- 1;this.colorSpace=37444;this.channels=this.height=this.width=0}function v(a,b){a.internalformat=b.internalformat;a.format=b.format;a.type=b.type;a.compressed=b.compressed;a.premultiplyAlpha=b.premultiplyAlpha;a.flipY=b.flipY;a.unpackAlignment=b.unpackAlignment;a.colorSpace=b.colorSpace;a.width=b.width;a.height=b.height;a.channels=b.channels}function k(a,b){if("object"===typeof b&&b){"premultiplyAlpha"in b&&(a.premultiplyAlpha=b.premultiplyAlpha);"flipY"in b&&(a.flipY=b.flipY);"alignment"in b&&(a.unpackAlignment=
24801
- b.alignment);"colorSpace"in b&&(a.colorSpace=Ob[b.colorSpace]);"type"in b&&(a.type=N[b.type]);var c=a.width,e=a.height,d=a.channels,f=!1;"shape"in b?(c=b.shape[0],e=b.shape[1],3===b.shape.length&&(d=b.shape[2],f=!0)):("radius"in b&&(c=e=b.radius),"width"in b&&(c=b.width),"height"in b&&(e=b.height),"channels"in b&&(d=b.channels,f=!0));a.width=c|0;a.height=e|0;a.channels=d|0;c=!1;"format"in b&&(c=b.format,e=a.internalformat=E[c],a.format=V[e],c in N&&!("type"in b)&&(a.type=N[c]),c in ga&&(a.compressed=
24802
- !0),c=!0);!f&&c?a.channels=U[a.format]:f&&!c&&a.channels!==Oa[a.format]&&(a.format=a.internalformat=Oa[a.channels])}}function u(b){a.pixelStorei(37440,b.flipY);a.pixelStorei(37441,b.premultiplyAlpha);a.pixelStorei(37443,b.colorSpace);a.pixelStorei(3317,b.unpackAlignment)}function m(){n.call(this);this.yOffset=this.xOffset=0;this.data=null;this.needsFree=!1;this.element=null;this.needsCopy=!1}function x(a,b){var c=null;Va(b)?c=b:b&&(k(a,b),"x"in b&&(a.xOffset=b.x|0),"y"in b&&(a.yOffset=b.y|0),Va(b.data)&&
24803
- (c=b.data));if(b.copy){var e=f.viewportWidth,d=f.viewportHeight;a.width=a.width||e-a.xOffset;a.height=a.height||d-a.yOffset;a.needsCopy=!0}else if(!c)a.width=a.width||1,a.height=a.height||1,a.channels=a.channels||4;else if(O(c))a.channels=a.channels||4,a.data=c,"type"in b||5121!==a.type||(a.type=Ia[Object.prototype.toString.call(c)]|0);else if(qb(c)){a.channels=a.channels||4;e=c;d=e.length;switch(a.type){case 5121:case 5123:case 5125:case 5126:d=G.allocType(a.type,d);d.set(e);a.data=d;break;case 36193:a.data=
24804
- ob(e)}a.alignment=1;a.needsFree=!0}else if(la(c)){e=c.data;Array.isArray(e)||5121!==a.type||(a.type=Ia[Object.prototype.toString.call(e)]|0);var d=c.shape,h=c.stride,y,t,g,p;3===d.length?(g=d[2],p=h[2]):p=g=1;y=d[0];t=d[1];d=h[0];h=h[1];a.alignment=1;a.width=y;a.height=t;a.channels=g;a.format=a.internalformat=Oa[g];a.needsFree=!0;y=p;c=c.offset;g=a.width;p=a.height;t=a.channels;for(var z=G.allocType(36193===a.type?5126:a.type,g*p*t),B=0,ha=0;ha<p;++ha)for(var oa=0;oa<g;++oa)for(var Wa=0;Wa<t;++Wa)z[B++]=
24805
- e[d*oa+h*ha+y*Wa+c];sb(a,z)}else if(aa(c)===Xa||aa(c)===Ya||aa(c)===ub)aa(c)===Xa||aa(c)===Ya?a.element=c:a.element=c.canvas,a.width=a.element.width,a.height=a.element.height,a.channels=4;else if(aa(c)===vb)a.element=c,a.width=c.width,a.height=c.height,a.channels=4;else if(aa(c)===wb)a.element=c,a.width=c.naturalWidth,a.height=c.naturalHeight,a.channels=4;else if(aa(c)===xb)a.element=c,a.width=c.videoWidth,a.height=c.videoHeight,a.channels=4;else if(rb(c)){e=a.width||c[0].length;d=a.height||c.length;
24806
- h=a.channels;h=ra(c[0][0])?h||c[0][0].length:h||1;y=Qa.shape(c);g=1;for(p=0;p<y.length;++p)g*=y[p];g=G.allocType(36193===a.type?5126:a.type,g);Qa.flatten(c,y,"",g);sb(a,g);a.alignment=1;a.width=e;a.height=d;a.channels=h;a.format=a.internalformat=Oa[h];a.needsFree=!0}}function l(b,c,d,h,g){var y=b.element,f=b.data,p=b.internalformat,t=b.format,k=b.type,z=b.width,B=b.height;u(b);y?a.texSubImage2D(c,g,d,h,t,k,y):b.compressed?a.compressedTexSubImage2D(c,g,d,h,p,z,B,f):b.needsCopy?(e(),a.copyTexSubImage2D(c,
24807
- g,d,h,b.xOffset,b.yOffset,z,B)):a.texSubImage2D(c,g,d,h,z,B,t,k,f)}function g(){return R.pop()||new m}function h(a){a.needsFree&&G.freeType(a.data);m.call(a);R.push(a)}function r(){n.call(this);this.genMipmaps=!1;this.mipmapHint=4352;this.mipmask=0;this.images=Array(16)}function p(a,b,c){var d=a.images[0]=g();a.mipmask=1;d.width=a.width=b;d.height=a.height=c;d.channels=a.channels=4}function P(a,b){var c=null;if(Va(b))c=a.images[0]=g(),v(c,a),x(c,b),a.mipmask=1;else if(k(a,b),Array.isArray(b.mipmap))for(var d=
24808
- b.mipmap,e=0;e<d.length;++e)c=a.images[e]=g(),v(c,a),c.width>>=e,c.height>>=e,x(c,d[e]),a.mipmask|=1<<e;else c=a.images[0]=g(),v(c,a),x(c,b),a.mipmask=1;v(a,a.images[0])}function t(b,c){for(var d=b.images,h=0;h<d.length&&d[h];++h){var g=d[h],y=c,f=h,p=g.element,t=g.data,k=g.internalformat,z=g.format,B=g.type,ha=g.width,oa=g.height;u(g);p?a.texImage2D(y,f,z,z,B,p):g.compressed?a.compressedTexImage2D(y,f,k,ha,oa,0,t):g.needsCopy?(e(),a.copyTexImage2D(y,f,z,g.xOffset,g.yOffset,ha,oa,0)):a.texImage2D(y,
24809
- f,z,ha,oa,0,z,B,t||null)}}function ma(){var a=Y.pop()||new r;n.call(a);for(var b=a.mipmask=0;16>b;++b)a.images[b]=null;return a}function ya(a){for(var b=a.images,c=0;c<b.length;++c)b[c]&&h(b[c]),b[c]=null;Y.push(a)}function w(){this.magFilter=this.minFilter=9728;this.wrapT=this.wrapS=33071;this.anisotropic=1;this.genMipmaps=!1;this.mipmapHint=4352}function H(a,b){"min"in b&&(a.minFilter=Aa[b.min],0<=Pb.indexOf(a.minFilter)&&!("faces"in b)&&(a.genMipmaps=!0));"mag"in b&&(a.magFilter=S[b.mag]);var c=
24810
- a.wrapS,d=a.wrapT;if("wrap"in b){var e=b.wrap;"string"===typeof e?c=d=ia[e]:Array.isArray(e)&&(c=ia[e[0]],d=ia[e[1]])}else"wrapS"in b&&(c=ia[b.wrapS]),"wrapT"in b&&(d=ia[b.wrapT]);a.wrapS=c;a.wrapT=d;"anisotropic"in b&&(a.anisotropic=b.anisotropic);if("mipmap"in b){c=!1;switch(typeof b.mipmap){case "string":a.mipmapHint=A[b.mipmap];c=a.genMipmaps=!0;break;case "boolean":c=a.genMipmaps=b.mipmap;break;case "object":a.genMipmaps=!1,c=!0}!c||"min"in b||(a.minFilter=9984)}}function M(c,d){a.texParameteri(d,
24811
- 10241,c.minFilter);a.texParameteri(d,10240,c.magFilter);a.texParameteri(d,10242,c.wrapS);a.texParameteri(d,10243,c.wrapT);b.ext_texture_filter_anisotropic&&a.texParameteri(d,34046,c.anisotropic);c.genMipmaps&&(a.hint(33170,c.mipmapHint),a.generateMipmap(d))}function y(b){n.call(this);this.mipmask=0;this.internalformat=6408;this.id=Qb++;this.refCount=1;this.target=b;this.texture=a.createTexture();this.unit=-1;this.bindCount=0;this.texInfo=new w;q.profile&&(this.stats={size:0})}function T(b){a.activeTexture(33984);
24812
- a.bindTexture(b.target,b.texture)}function wa(){var b=W[0];b?a.bindTexture(b.target,b.texture):a.bindTexture(3553,null)}function F(b){var c=b.texture,e=b.unit,g=b.target;0<=e&&(a.activeTexture(33984+e),a.bindTexture(g,null),W[e]=null);a.deleteTexture(c);b.texture=null;b.params=null;b.pixels=null;b.refCount=0;delete ea[b.id];d.textureCount--}var A={"don't care":4352,"dont care":4352,nice:4354,fast:4353},ia={repeat:10497,clamp:33071,mirror:33648},S={nearest:9728,linear:9729},Aa=L({mipmap:9987,"nearest mipmap nearest":9984,
24813
- "linear mipmap nearest":9985,"nearest mipmap linear":9986,"linear mipmap linear":9987},S),Ob={none:0,browser:37444},N={uint8:5121,rgba4:32819,rgb565:33635,"rgb5 a1":32820},E={alpha:6406,luminance:6409,"luminance alpha":6410,rgb:6407,rgba:6408,rgba4:32854,"rgb5 a1":32855,rgb565:36194},ga={};b.ext_srgb&&(E.srgb=35904,E.srgba=35906);b.oes_texture_float&&(N.float32=N["float"]=5126);b.oes_texture_half_float&&(N.float16=N["half float"]=36193);b.webgl_depth_texture&&(L(E,{depth:6402,"depth stencil":34041}),
24814
- L(N,{uint16:5123,uint32:5125,"depth stencil":34042}));b.webgl_compressed_texture_s3tc&&L(ga,{"rgb s3tc dxt1":33776,"rgba s3tc dxt1":33777,"rgba s3tc dxt3":33778,"rgba s3tc dxt5":33779});b.webgl_compressed_texture_atc&&L(ga,{"rgb atc":35986,"rgba atc explicit alpha":35987,"rgba atc interpolated alpha":34798});b.webgl_compressed_texture_pvrtc&&L(ga,{"rgb pvrtc 4bppv1":35840,"rgb pvrtc 2bppv1":35841,"rgba pvrtc 4bppv1":35842,"rgba pvrtc 2bppv1":35843});b.webgl_compressed_texture_etc1&&(ga["rgb etc1"]=
24815
- 36196);var J=Array.prototype.slice.call(a.getParameter(34467));Object.keys(ga).forEach(function(a){var b=ga[a];0<=J.indexOf(b)&&(E[a]=b)});var C=Object.keys(E);c.textureFormats=C;var ca=[];Object.keys(E).forEach(function(a){ca[E[a]]=a});var K=[];Object.keys(N).forEach(function(a){K[N[a]]=a});var Fa=[];Object.keys(S).forEach(function(a){Fa[S[a]]=a});var pa=[];Object.keys(Aa).forEach(function(a){pa[Aa[a]]=a});var qa=[];Object.keys(ia).forEach(function(a){qa[ia[a]]=a});var V=C.reduce(function(a,c){var d=
24816
- E[c];6409===d||6406===d||6409===d||6410===d||6402===d||34041===d||b.ext_srgb&&(35904===d||35906===d)?a[d]=d:32855===d||0<=c.indexOf("rgba")?a[d]=6408:a[d]=6407;return a},{}),R=[],Y=[],Qb=0,ea={},fa=c.maxTextureUnits,W=Array(fa).map(function(){return null});L(y.prototype,{bind:function(){this.bindCount+=1;var b=this.unit;if(0>b){for(var c=0;c<fa;++c){var e=W[c];if(e){if(0<e.bindCount)continue;e.unit=-1}W[c]=this;b=c;break}q.profile&&d.maxTextureUnits<b+1&&(d.maxTextureUnits=b+1);this.unit=b;a.activeTexture(33984+
24817
- b);a.bindTexture(this.target,this.texture)}return b},unbind:function(){--this.bindCount},decRef:function(){0>=--this.refCount&&F(this)}});q.profile&&(d.getTotalTextureSize=function(){var a=0;Object.keys(ea).forEach(function(b){a+=ea[b].stats.size});return a});return{create2D:function(b,c){function e(a,b){var c=f.texInfo;w.call(c);var d=ma();"number"===typeof a?"number"===typeof b?p(d,a|0,b|0):p(d,a|0,a|0):a?(H(c,a),P(d,a)):p(d,1,1);c.genMipmaps&&(d.mipmask=(d.width<<1)-1);f.mipmask=d.mipmask;v(f,
24818
- d);f.internalformat=d.internalformat;e.width=d.width;e.height=d.height;T(f);t(d,3553);M(c,3553);wa();ya(d);q.profile&&(f.stats.size=La(f.internalformat,f.type,d.width,d.height,c.genMipmaps,!1));e.format=ca[f.internalformat];e.type=K[f.type];e.mag=Fa[c.magFilter];e.min=pa[c.minFilter];e.wrapS=qa[c.wrapS];e.wrapT=qa[c.wrapT];return e}var f=new y(3553);ea[f.id]=f;d.textureCount++;e(b,c);e.subimage=function(a,b,c,d){b|=0;c|=0;d|=0;var y=g();v(y,f);y.width=0;y.height=0;x(y,a);y.width=y.width||(f.width>>
24819
- d)-b;y.height=y.height||(f.height>>d)-c;T(f);l(y,3553,b,c,d);wa();h(y);return e};e.resize=function(b,c){var d=b|0,g=c|0||d;if(d===f.width&&g===f.height)return e;e.width=f.width=d;e.height=f.height=g;T(f);for(var y=0;f.mipmask>>y;++y){var h=d>>y,z=g>>y;if(!h||!z)break;a.texImage2D(3553,y,f.format,h,z,0,f.format,f.type,null)}wa();q.profile&&(f.stats.size=La(f.internalformat,f.type,d,g,!1,!1));return e};e._reglType="texture2d";e._texture=f;q.profile&&(e.stats=f.stats);e.destroy=function(){f.decRef()};
24820
- return e},createCube:function(b,c,e,f,n,r){function m(a,b,c,d,e,f){var g,da=A.texInfo;w.call(da);for(g=0;6>g;++g)F[g]=ma();if("number"===typeof a||!a)for(a=a|0||1,g=0;6>g;++g)p(F[g],a,a);else if("object"===typeof a)if(b)P(F[0],a),P(F[1],b),P(F[2],c),P(F[3],d),P(F[4],e),P(F[5],f);else if(H(da,a),k(A,a),"faces"in a)for(a=a.faces,g=0;6>g;++g)v(F[g],A),P(F[g],a[g]);else for(g=0;6>g;++g)P(F[g],a);v(A,F[0]);A.mipmask=da.genMipmaps?(F[0].width<<1)-1:F[0].mipmask;A.internalformat=F[0].internalformat;m.width=
24821
- F[0].width;m.height=F[0].height;T(A);for(g=0;6>g;++g)t(F[g],34069+g);M(da,34067);wa();q.profile&&(A.stats.size=La(A.internalformat,A.type,m.width,m.height,da.genMipmaps,!0));m.format=ca[A.internalformat];m.type=K[A.type];m.mag=Fa[da.magFilter];m.min=pa[da.minFilter];m.wrapS=qa[da.wrapS];m.wrapT=qa[da.wrapT];for(g=0;6>g;++g)ya(F[g]);return m}var A=new y(34067);ea[A.id]=A;d.cubeCount++;var F=Array(6);m(b,c,e,f,n,r);m.subimage=function(a,b,c,d,e){c|=0;d|=0;e|=0;var f=g();v(f,A);f.width=0;f.height=0;
24822
- x(f,b);f.width=f.width||(A.width>>e)-c;f.height=f.height||(A.height>>e)-d;T(A);l(f,34069+a,c,d,e);wa();h(f);return m};m.resize=function(b){b|=0;if(b!==A.width){m.width=A.width=b;m.height=A.height=b;T(A);for(var c=0;6>c;++c)for(var d=0;A.mipmask>>d;++d)a.texImage2D(34069+c,d,A.format,b>>d,b>>d,0,A.format,A.type,null);wa();q.profile&&(A.stats.size=La(A.internalformat,A.type,m.width,m.height,!1,!0));return m}};m._reglType="textureCube";m._texture=A;q.profile&&(m.stats=A.stats);m.destroy=function(){A.decRef()};
24823
- return m},clear:function(){for(var b=0;b<fa;++b)a.activeTexture(33984+b),a.bindTexture(3553,null),W[b]=null;I(ea).forEach(F);d.cubeCount=0;d.textureCount=0},getTexture:function(a){return null},restore:function(){for(var b=0;b<fa;++b){var c=W[b];c&&(c.bindCount=0,c.unit=-1,W[b]=null)}I(ea).forEach(function(b){b.texture=a.createTexture();a.bindTexture(b.target,b.texture);for(var c=0;32>c;++c)if(0!==(b.mipmask&1<<c))if(3553===b.target)a.texImage2D(3553,c,b.internalformat,b.width>>c,b.height>>c,0,b.internalformat,
24824
- b.type,null);else for(var d=0;6>d;++d)a.texImage2D(34069+d,c,b.internalformat,b.width>>c,b.height>>c,0,b.internalformat,b.type,null);M(b.texInfo,b.target)})},refresh:function(){for(var b=0;b<fa;++b){var c=W[b];c&&(c.bindCount=0,c.unit=-1,W[b]=null);a.activeTexture(33984+b);a.bindTexture(3553,null);a.bindTexture(34067,null)}}}}function Rb(a,b,c,e,f,d){function q(a,b,c){this.target=a;this.texture=b;this.renderbuffer=c;var d=a=0;b?(a=b.width,d=b.height):c&&(a=c.width,d=c.height);this.width=a;this.height=
24825
- d}function n(a){a&&(a.texture&&a.texture._texture.decRef(),a.renderbuffer&&a.renderbuffer._renderbuffer.decRef())}function v(a,b,c){a&&(a.texture?a.texture._texture.refCount+=1:a.renderbuffer._renderbuffer.refCount+=1)}function k(b,c){c&&(c.texture?a.framebufferTexture2D(36160,b,c.target,c.texture._texture.texture,0):a.framebufferRenderbuffer(36160,b,36161,c.renderbuffer._renderbuffer.renderbuffer))}function u(a){var b=3553,c=null,d=null,e=a;"object"===typeof a&&(e=a.data,"target"in a&&(b=a.target|
24826
- 0));a=e._reglType;"texture2d"===a?c=e:"textureCube"===a?c=e:"renderbuffer"===a&&(d=e,b=36161);return new q(b,c,d)}function m(a,b,c,d,g){if(c)return a=e.create2D({width:a,height:b,format:d,type:g}),a._texture.refCount=0,new q(3553,a,null);a=f.create({width:a,height:b,format:d});a._renderbuffer.refCount=0;return new q(36161,null,a)}function x(a){return a&&(a.texture||a.renderbuffer)}function l(a,b,c){a&&(a.texture?a.texture.resize(b,c):a.renderbuffer&&a.renderbuffer.resize(b,c),a.width=b,a.height=c)}
24827
- function g(){this.id=H++;M[this.id]=this;this.framebuffer=a.createFramebuffer();this.height=this.width=0;this.colorAttachments=[];this.depthStencilAttachment=this.stencilAttachment=this.depthAttachment=null}function h(a){a.colorAttachments.forEach(n);n(a.depthAttachment);n(a.stencilAttachment);n(a.depthStencilAttachment)}function r(b){a.deleteFramebuffer(b.framebuffer);b.framebuffer=null;d.framebufferCount--;delete M[b.id]}function p(b){var d;a.bindFramebuffer(36160,b.framebuffer);var e=b.colorAttachments;
24828
- for(d=0;d<e.length;++d)k(36064+d,e[d]);for(d=e.length;d<c.maxColorAttachments;++d)a.framebufferTexture2D(36160,36064+d,3553,null,0);a.framebufferTexture2D(36160,33306,3553,null,0);a.framebufferTexture2D(36160,36096,3553,null,0);a.framebufferTexture2D(36160,36128,3553,null,0);k(36096,b.depthAttachment);k(36128,b.stencilAttachment);k(33306,b.depthStencilAttachment);a.checkFramebufferStatus(36160);a.isContextLost();a.bindFramebuffer(36160,t.next?t.next.framebuffer:null);t.cur=t.next;a.getError()}function P(a,
24829
- b){function c(a,b){var d,g=0,f=0,t=!0,k=!0;d=null;var l=!0,n="rgba",r="uint8",y=1,q=null,P=null,pa=null,M=!1;if("number"===typeof a)g=a|0,f=b|0||g;else if(a){"shape"in a?(f=a.shape,g=f[0],f=f[1]):("radius"in a&&(g=f=a.radius),"width"in a&&(g=a.width),"height"in a&&(f=a.height));if("color"in a||"colors"in a)d=a.color||a.colors,Array.isArray(d);if(!d){"colorCount"in a&&(y=a.colorCount|0);"colorTexture"in a&&(l=!!a.colorTexture,n="rgba4");if("colorType"in a&&(r=a.colorType,!l))if("half float"===r||"float16"===
24830
- r)n="rgba16f";else if("float"===r||"float32"===r)n="rgba32f";"colorFormat"in a&&(n=a.colorFormat,0<=ma.indexOf(n)?l=!0:0<=ya.indexOf(n)&&(l=!1))}if("depthTexture"in a||"depthStencilTexture"in a)M=!(!a.depthTexture&&!a.depthStencilTexture);"depth"in a&&("boolean"===typeof a.depth?t=a.depth:(q=a.depth,k=!1));"stencil"in a&&("boolean"===typeof a.stencil?k=a.stencil:(P=a.stencil,t=!1));"depthStencil"in a&&("boolean"===typeof a.depthStencil?t=k=a.depthStencil:(pa=a.depthStencil,k=t=!1))}else g=f=1;var V=
24831
- null,H=null,T=null,w=null;if(Array.isArray(d))V=d.map(u);else if(d)V=[u(d)];else for(V=Array(y),d=0;d<y;++d)V[d]=m(g,f,l,n,r);g=g||V[0].width;f=f||V[0].height;q?H=u(q):t&&!k&&(H=m(g,f,M,"depth","uint32"));P?T=u(P):k&&!t&&(T=m(g,f,!1,"stencil","uint8"));pa?w=u(pa):!q&&!P&&k&&t&&(w=m(g,f,M,"depth stencil","depth stencil"));t=null;for(d=0;d<V.length;++d)v(V[d],g,f),V[d]&&V[d].texture&&(k=Za[V[d].texture._texture.format]*Ra[V[d].texture._texture.type],null===t&&(t=k));v(H,g,f);v(T,g,f);v(w,g,f);h(e);
24832
- e.width=g;e.height=f;e.colorAttachments=V;e.depthAttachment=H;e.stencilAttachment=T;e.depthStencilAttachment=w;c.color=V.map(x);c.depth=x(H);c.stencil=x(T);c.depthStencil=x(w);c.width=e.width;c.height=e.height;p(e);return c}var e=new g;d.framebufferCount++;c(a,b);return L(c,{resize:function(a,b){var d=Math.max(a|0,1),g=Math.max(b|0||d,1);if(d===e.width&&g===e.height)return c;for(var f=e.colorAttachments,h=0;h<f.length;++h)l(f[h],d,g);l(e.depthAttachment,d,g);l(e.stencilAttachment,d,g);l(e.depthStencilAttachment,
24833
- d,g);e.width=c.width=d;e.height=c.height=g;p(e);return c},_reglType:"framebuffer",_framebuffer:e,destroy:function(){r(e);h(e)},use:function(a){t.setFBO({framebuffer:c},a)}})}var t={cur:null,next:null,dirty:!1,setFBO:null},ma=["rgba"],ya=["rgba4","rgb565","rgb5 a1"];b.ext_srgb&&ya.push("srgba");b.ext_color_buffer_half_float&&ya.push("rgba16f","rgb16f");b.webgl_color_buffer_float&&ya.push("rgba32f");var w=["uint8"];b.oes_texture_half_float&&w.push("half float","float16");b.oes_texture_float&&w.push("float",
24834
- "float32");var H=0,M={};return L(t,{getFramebuffer:function(a){return"function"===typeof a&&"framebuffer"===a._reglType&&(a=a._framebuffer,a instanceof g)?a:null},create:P,createCube:function(a){function b(a){var d,g={color:null},f=0,h=null;d="rgba";var t="uint8",p=1;if("number"===typeof a)f=a|0;else if(a){"shape"in a?f=a.shape[0]:("radius"in a&&(f=a.radius|0),"width"in a?f=a.width|0:"height"in a&&(f=a.height|0));if("color"in a||"colors"in a)h=a.color||a.colors,Array.isArray(h);h||("colorCount"in
24835
- a&&(p=a.colorCount|0),"colorType"in a&&(t=a.colorType),"colorFormat"in a&&(d=a.colorFormat));"depth"in a&&(g.depth=a.depth);"stencil"in a&&(g.stencil=a.stencil);"depthStencil"in a&&(g.depthStencil=a.depthStencil)}else f=1;if(h)if(Array.isArray(h))for(a=[],d=0;d<h.length;++d)a[d]=h[d];else a=[h];else for(a=Array(p),h={radius:f,format:d,type:t},d=0;d<p;++d)a[d]=e.createCube(h);g.color=Array(a.length);for(d=0;d<a.length;++d)p=a[d],f=f||p.width,g.color[d]={target:34069,data:a[d]};for(d=0;6>d;++d){for(p=
24836
- 0;p<a.length;++p)g.color[p].target=34069+d;0<d&&(g.depth=c[0].depth,g.stencil=c[0].stencil,g.depthStencil=c[0].depthStencil);if(c[d])c[d](g);else c[d]=P(g)}return L(b,{width:f,height:f,color:a})}var c=Array(6);b(a);return L(b,{faces:c,resize:function(a){var d=a|0;if(d===b.width)return b;var e=b.color;for(a=0;a<e.length;++a)e[a].resize(d);for(a=0;6>a;++a)c[a].resize(d);b.width=b.height=d;return b},_reglType:"framebufferCube",destroy:function(){c.forEach(function(a){a.destroy()})}})},clear:function(){I(M).forEach(r)},
24837
- restore:function(){t.cur=null;t.next=null;t.dirty=!0;I(M).forEach(function(b){b.framebuffer=a.createFramebuffer();p(b)})}})}function $a(){this.w=this.z=this.y=this.x=this.state=0;this.buffer=null;this.size=0;this.normalized=!1;this.type=5126;this.divisor=this.stride=this.offset=0}function Sb(a,b,c,e,f,d,q){function n(a){if(a!==r.currentVAO){var c=b.oes_vertex_array_object;a?c.bindVertexArrayOES(a.vao):c.bindVertexArrayOES(null);r.currentVAO=a}}function v(c){if(c!==r.currentVAO){if(c)c.bindAttrs();
24838
- else{for(var d=b.angle_instanced_arrays,e=0;e<l.length;++e){var g=l[e];g.buffer?(a.enableVertexAttribArray(e),g.buffer.bind(),a.vertexAttribPointer(e,g.size,g.type,g.normalized,g.stride,g.offfset),d&&g.divisor&&d.vertexAttribDivisorANGLE(e,g.divisor)):(a.disableVertexAttribArray(e),a.vertexAttrib4f(e,g.x,g.y,g.z,g.w))}q.elements?a.bindBuffer(34963,q.elements.buffer.buffer):a.bindBuffer(34963,null)}r.currentVAO=c}}function k(){I(h).forEach(function(a){a.destroy()})}function u(){this.id=++g;this.attributes=
24839
- [];this.elements=null;this.ownsElements=!1;this.offset=this.count=0;this.instances=-1;this.primitive=4;var a=b.oes_vertex_array_object;this.vao=a?a.createVertexArrayOES():null;h[this.id]=this;this.buffers=[]}function m(){b.oes_vertex_array_object&&I(h).forEach(function(a){a.refresh()})}var x=c.maxAttributes,l=Array(x);for(c=0;c<x;++c)l[c]=new $a;var g=0,h={},r={Record:$a,scope:{},state:l,currentVAO:null,targetVAO:null,restore:b.oes_vertex_array_object?m:function(){},createVAO:function(a){function b(a){var e;
24840
- Array.isArray(a)?(e=a,c.elements&&c.ownsElements&&c.elements.destroy(),c.elements=null,c.ownsElements=!1,c.offset=0,c.count=0,c.instances=-1,c.primitive=4):(a.elements?(e=a.elements,c.ownsElements?("function"===typeof e&&"elements"===e._reglType?c.elements.destroy():c.elements(e),c.ownsElements=!1):d.getElements(a.elements)?(c.elements=a.elements,c.ownsElements=!1):(c.elements=d.create(a.elements),c.ownsElements=!0)):(c.elements=null,c.ownsElements=!1),e=a.attributes,c.offset=0,c.count=-1,c.instances=
24841
- -1,c.primitive=4,c.elements&&(c.count=c.elements._elements.vertCount,c.primitive=c.elements._elements.primType),"offset"in a&&(c.offset=a.offset|0),"count"in a&&(c.count=a.count|0),"instances"in a&&(c.instances=a.instances|0),"primitive"in a&&(c.primitive=Ka[a.primitive]));a={};var g=c.attributes;g.length=e.length;for(var h=0;h<e.length;++h){var p=e[h],k=g[h]=new $a,m=p.data||p;if(Array.isArray(m)||O(m)||la(m)){var l;c.buffers[h]&&(l=c.buffers[h],O(m)&&l._buffer.byteLength>=m.byteLength?l.subdata(m):
24842
- (l.destroy(),c.buffers[h]=null));c.buffers[h]||(l=c.buffers[h]=f.create(p,34962,!1,!0));k.buffer=f.getBuffer(l);k.size=k.buffer.dimension|0;k.normalized=!1;k.type=k.buffer.dtype;k.offset=0;k.stride=0;k.divisor=0;k.state=1;a[h]=1}else f.getBuffer(p)?(k.buffer=f.getBuffer(p),k.size=k.buffer.dimension|0,k.normalized=!1,k.type=k.buffer.dtype,k.offset=0,k.stride=0,k.divisor=0,k.state=1):f.getBuffer(p.buffer)?(k.buffer=f.getBuffer(p.buffer),k.size=(+p.size||k.buffer.dimension)|0,k.normalized=!!p.normalized||
24843
- !1,k.type="type"in p?Ja[p.type]:k.buffer.dtype,k.offset=(p.offset||0)|0,k.stride=(p.stride||0)|0,k.divisor=(p.divisor||0)|0,k.state=1):"x"in p&&(k.x=+p.x||0,k.y=+p.y||0,k.z=+p.z||0,k.w=+p.w||0,k.state=2)}for(l=0;l<c.buffers.length;++l)!a[l]&&c.buffers[l]&&(c.buffers[l].destroy(),c.buffers[l]=null);c.refresh();return b}var c=new u;e.vaoCount+=1;b.destroy=function(){for(var a=0;a<c.buffers.length;++a)c.buffers[a]&&c.buffers[a].destroy();c.buffers.length=0;c.ownsElements&&(c.elements.destroy(),c.elements=
24844
- null,c.ownsElements=!1);c.destroy()};b._vao=c;b._reglType="vao";return b(a)},getVAO:function(a){return"function"===typeof a&&a._vao?a._vao:null},destroyBuffer:function(b){for(var c=0;c<l.length;++c){var d=l[c];d.buffer===b&&(a.disableVertexAttribArray(c),d.buffer=null)}},setVAO:b.oes_vertex_array_object?n:v,clear:b.oes_vertex_array_object?k:function(){}};u.prototype.bindAttrs=function(){for(var c=b.angle_instanced_arrays,e=this.attributes,g=0;g<e.length;++g){var f=e[g];f.buffer?(a.enableVertexAttribArray(g),
24845
- a.bindBuffer(34962,f.buffer.buffer),a.vertexAttribPointer(g,f.size,f.type,f.normalized,f.stride,f.offset),c&&f.divisor&&c.vertexAttribDivisorANGLE(g,f.divisor)):(a.disableVertexAttribArray(g),a.vertexAttrib4f(g,f.x,f.y,f.z,f.w))}for(c=e.length;c<x;++c)a.disableVertexAttribArray(c);(c=d.getElements(this.elements))?a.bindBuffer(34963,c.buffer.buffer):a.bindBuffer(34963,null)};u.prototype.refresh=function(){var a=b.oes_vertex_array_object;a&&(a.bindVertexArrayOES(this.vao),this.bindAttrs(),r.currentVAO=
24846
- null,a.bindVertexArrayOES(null))};u.prototype.destroy=function(){if(this.vao){var a=b.oes_vertex_array_object;this===r.currentVAO&&(r.currentVAO=null,a.bindVertexArrayOES(null));a.deleteVertexArrayOES(this.vao);this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1);h[this.id]&&(delete h[this.id],--e.vaoCount)};return r}function Tb(a,b,c,e){function f(a,b,c,d){this.name=a;this.id=b;this.location=c;this.info=d}function d(a,b){for(var c=0;c<a.length;++c)if(a[c].id===
24847
- b.id){a[c].location=b.location;return}a.push(b)}function q(c,d,e){e=35632===c?k:u;var f=e[d];if(!f){var m=b.str(d),f=a.createShader(c);a.shaderSource(f,m);a.compileShader(f);e[d]=f}return f}function n(a,b){this.id=l++;this.fragId=a;this.vertId=b;this.program=null;this.uniforms=[];this.attributes=[];this.refCount=1;e.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function v(c,h,k){var m;m=q(35632,c.fragId);var l=q(35633,c.vertId);h=c.program=a.createProgram();a.attachShader(h,m);a.attachShader(h,
24848
- l);if(k)for(m=0;m<k.length;++m)l=k[m],a.bindAttribLocation(h,l[0],l[1]);a.linkProgram(h);l=a.getProgramParameter(h,35718);e.profile&&(c.stats.uniformsCount=l);var n=c.uniforms;for(m=0;m<l;++m)if(k=a.getActiveUniform(h,m)){if(1<k.size)for(var v=0;v<k.size;++v){var u=k.name.replace("[0]","["+v+"]");d(n,new f(u,b.id(u),a.getUniformLocation(h,u),k))}v=k.name;1<k.size&&(v=v.replace("[0]",""));d(n,new f(v,b.id(v),a.getUniformLocation(h,v),k))}l=a.getProgramParameter(h,35721);e.profile&&(c.stats.attributesCount=
24849
- l);c=c.attributes;for(m=0;m<l;++m)(k=a.getActiveAttrib(h,m))&&d(c,new f(k.name,b.id(k.name),a.getAttribLocation(h,k.name),k))}var k={},u={},m={},x=[],l=0;e.profile&&(c.getMaxUniformsCount=function(){var a=0;x.forEach(function(b){b.stats.uniformsCount>a&&(a=b.stats.uniformsCount)});return a},c.getMaxAttributesCount=function(){var a=0;x.forEach(function(b){b.stats.attributesCount>a&&(a=b.stats.attributesCount)});return a});return{clear:function(){var b=a.deleteShader.bind(a);I(k).forEach(b);k={};I(u).forEach(b);
24850
- u={};x.forEach(function(b){a.deleteProgram(b.program)});x.length=0;m={};c.shaderCount=0},program:function(b,d,e,f){var l=m[d];l||(l=m[d]={});var q=l[b];if(q&&(q.refCount++,!f))return q;var w=new n(d,b);c.shaderCount++;v(w,e,f);q||(l[b]=w);x.push(w);return L(w,{destroy:function(){w.refCount--;if(0>=w.refCount){a.deleteProgram(w.program);var b=x.indexOf(w);x.splice(b,1);c.shaderCount--}0>=l[w.vertId].refCount&&(a.deleteShader(u[w.vertId]),delete u[w.vertId],delete m[w.fragId][w.vertId]);Object.keys(m[w.fragId]).length||
24851
- (a.deleteShader(k[w.fragId]),delete k[w.fragId],delete m[w.fragId])}})},restore:function(){k={};u={};for(var a=0;a<x.length;++a)v(x[a],null,x[a].attributes.map(function(a){return[a.location,a.name]}))},shader:q,frag:-1,vert:-1}}function Ub(a,b,c,e,f,d,q){function n(d){var f;f=null===b.next?5121:b.next.colorAttachments[0].texture._texture.type;var m=0,n=0,l=e.framebufferWidth,g=e.framebufferHeight,h=null;O(d)?h=d:d&&(m=d.x|0,n=d.y|0,l=(d.width||e.framebufferWidth-m)|0,g=(d.height||e.framebufferHeight-
24852
- n)|0,h=d.data||null);c();d=l*g*4;h||(5121===f?h=new Uint8Array(d):5126===f&&(h=h||new Float32Array(d)));a.pixelStorei(3333,4);a.readPixels(m,n,l,g,6408,f,h);return h}function v(a){var c;b.setFBO({framebuffer:a.framebuffer},function(){c=n(a)});return c}return function(a){return a&&"framebuffer"in a?v(a):n(a)}}function Ba(a){return Array.prototype.slice.call(a)}function Ca(a){return Ba(a).join("")}function Vb(){function a(){var a=[],b=[];return L(function(){a.push.apply(a,Ba(arguments))},{def:function(){var d=
24853
- "v"+c++;b.push(d);0<arguments.length&&(a.push(d,"="),a.push.apply(a,Ba(arguments)),a.push(";"));return d},toString:function(){return Ca([0<b.length?"var "+b.join(",")+";":"",Ca(a)])}})}function b(){function b(a,e){d(a,e,"=",c.def(a,e),";")}var c=a(),d=a(),e=c.toString,f=d.toString;return L(function(){c.apply(c,Ba(arguments))},{def:c.def,entry:c,exit:d,save:b,set:function(a,d,e){b(a,d);c(a,d,"=",e,";")},toString:function(){return e()+f()}})}var c=0,e=[],f=[],d=a(),q={};return{global:d,link:function(a){for(var b=
24854
- 0;b<f.length;++b)if(f[b]===a)return e[b];b="g"+c++;e.push(b);f.push(a);return b},block:a,proc:function(a,c){function d(){var a="a"+e.length;e.push(a);return a}var e=[];c=c||0;for(var f=0;f<c;++f)d();var f=b(),x=f.toString;return q[a]=L(f,{arg:d,toString:function(){return Ca(["function(",e.join(),"){",x(),"}"])}})},scope:b,cond:function(){var a=Ca(arguments),c=b(),d=b(),e=c.toString,f=d.toString;return L(c,{then:function(){c.apply(c,Ba(arguments));return this},"else":function(){d.apply(d,Ba(arguments));
24855
- return this},toString:function(){var b=f();b&&(b="else{"+b+"}");return Ca(["if(",a,"){",e(),"}",b])}})},compile:function(){var a=['"use strict";',d,"return {"];Object.keys(q).forEach(function(b){a.push('"',b,'":',q[b].toString(),",")});a.push("}");var b=Ca(a).replace(/;/g,";\n").replace(/}/g,"}\n").replace(/{/g,"{\n");return Function.apply(null,e.concat(b)).apply(null,f)}}}function Sa(a){return Array.isArray(a)||O(a)||la(a)}function yb(a){return a.sort(function(a,c){return"viewport"===a?-1:"viewport"===
24856
- c?1:a<c?-1:1})}function J(a,b,c,e){this.thisDep=a;this.contextDep=b;this.propDep=c;this.append=e}function xa(a){return a&&!(a.thisDep||a.contextDep||a.propDep)}function w(a){return new J(!1,!1,!1,a)}function K(a,b){var c=a.type;if(0===c)return c=a.data.length,new J(!0,1<=c,2<=c,b);if(4===c)return c=a.data,new J(c.thisDep,c.contextDep,c.propDep,b);if(5===c)return new J(!1,!1,!1,b);if(6===c){for(var e=c=!1,f=!1,d=0;d<a.data.length;++d){var q=a.data[d];1===q.type?f=!0:2===q.type?e=!0:3===q.type?c=!0:
24857
- 0===q.type?(c=!0,q=q.data,1<=q&&(e=!0),2<=q&&(f=!0)):4===q.type&&(c=c||q.data.thisDep,e=e||q.data.contextDep,f=f||q.data.propDep)}return new J(c,e,f,b)}return new J(3===c,2===c,1===c,b)}function Wb(a,b,c,e,f,d,q,n,v,k,u,m,x,l,g){function h(a){return a.replace(".","_")}function r(a,b,c){var d=h(a);Na.push(a);Ea[d]=ta[d]=!!c;ua[d]=b}function p(a,b,c){var d=h(a);Na.push(a);Array.isArray(c)?(ta[d]=c.slice(),Ea[d]=c.slice()):ta[d]=Ea[d]=c;va[d]=b}function P(){var a=Vb(),c=a.link,d=a.global;a.id=sa++;a.batchId=
24858
- "0";var e=c(tb),f=a.shared={props:"a0"};Object.keys(tb).forEach(function(a){f[a]=d.def(e,".",a)});var g=a.next={},da=a.current={};Object.keys(va).forEach(function(a){Array.isArray(ta[a])&&(g[a]=d.def(f.next,".",a),da[a]=d.def(f.current,".",a))});var D=a.constants={};Object.keys(Pa).forEach(function(a){D[a]=d.def(JSON.stringify(Pa[a]))});a.invoke=function(b,d){switch(d.type){case 0:var e=["this",f.context,f.props,a.batchId];return b.def(c(d.data),".call(",e.slice(0,Math.max(d.data.length+1,4)),")");
24859
- case 1:return b.def(f.props,d.data);case 2:return b.def(f.context,d.data);case 3:return b.def("this",d.data);case 4:return d.data.append(a,b),d.data.ref;case 5:return d.data.toString();case 6:return d.data.map(function(c){return a.invoke(b,c)})}};a.attribCache={};var ba={};a.scopeAttrib=function(a){a=b.id(a);if(a in ba)return ba[a];var d=k.scope[a];d||(d=k.scope[a]=new ea);return ba[a]=c(d)};return a}function t(a){var b=a["static"];a=a.dynamic;var c;if("profile"in b){var d=!!b.profile;c=w(function(a,
24860
- b){return d});c.enable=d}else if("profile"in a){var e=a.profile;c=K(e,function(a,b){return a.invoke(b,e)})}return c}function G(a,b){var c=a["static"],d=a.dynamic;if("framebuffer"in c){var e=c.framebuffer;return e?(e=n.getFramebuffer(e),w(function(a,b){var c=a.link(e),d=a.shared;b.set(d.framebuffer,".next",c);d=d.context;b.set(d,".framebufferWidth",c+".width");b.set(d,".framebufferHeight",c+".height");return c})):w(function(a,b){var c=a.shared;b.set(c.framebuffer,".next","null");c=c.context;b.set(c,
24861
- ".framebufferWidth",c+".drawingBufferWidth");b.set(c,".framebufferHeight",c+".drawingBufferHeight");return"null"})}if("framebuffer"in d){var f=d.framebuffer;return K(f,function(a,b){var c=a.invoke(b,f),d=a.shared,e=d.framebuffer,c=b.def(e,".getFramebuffer(",c,")");b.set(e,".next",c);d=d.context;b.set(d,".framebufferWidth",c+"?"+c+".width:"+d+".drawingBufferWidth");b.set(d,".framebufferHeight",c+"?"+c+".height:"+d+".drawingBufferHeight");return c})}return null}function C(a,b,c){function d(a){if(a in
24862
- e){var c=e[a];a=!0;var z=c.x|0,g=c.y|0,h,da;"width"in c?h=c.width|0:a=!1;"height"in c?da=c.height|0:a=!1;return new J(!a&&b&&b.thisDep,!a&&b&&b.contextDep,!a&&b&&b.propDep,function(a,b){var d=a.shared.context,e=h;"width"in c||(e=b.def(d,".","framebufferWidth","-",z));var f=da;"height"in c||(f=b.def(d,".","framebufferHeight","-",g));return[z,g,e,f]})}if(a in f){var ha=f[a];a=K(ha,function(a,b){var c=a.invoke(b,ha),d=a.shared.context,e=b.def(c,".x|0"),f=b.def(c,".y|0"),z=b.def('"width" in ',c,"?",c,
24863
- ".width|0:","(",d,".","framebufferWidth","-",e,")"),c=b.def('"height" in ',c,"?",c,".height|0:","(",d,".","framebufferHeight","-",f,")");return[e,f,z,c]});b&&(a.thisDep=a.thisDep||b.thisDep,a.contextDep=a.contextDep||b.contextDep,a.propDep=a.propDep||b.propDep);return a}return b?new J(b.thisDep,b.contextDep,b.propDep,function(a,b){var c=a.shared.context;return[0,0,b.def(c,".","framebufferWidth"),b.def(c,".","framebufferHeight")]}):null}var e=a["static"],f=a.dynamic;if(a=d("viewport")){var g=a;a=new J(a.thisDep,
24864
- a.contextDep,a.propDep,function(a,b){var c=g.append(a,b),d=a.shared.context;b.set(d,".viewportWidth",c[2]);b.set(d,".viewportHeight",c[3]);return c})}return{viewport:a,scissor_box:d("scissor.box")}}function O(a,b){var c=a["static"];if("string"===typeof c.frag&&"string"===typeof c.vert){if(0<Object.keys(b.dynamic).length)return null;var c=b["static"],d=Object.keys(c);if(0<d.length&&"number"===typeof c[d[0]]){for(var e=[],f=0;f<d.length;++f)e.push([c[d[f]]|0,d[f]]);return e}}return null}function H(a,
24865
- c,d){function e(a){if(a in f){var c=b.id(f[a]);a=w(function(){return c});a.id=c;return a}if(a in g){var d=g[a];return K(d,function(a,b){var c=a.invoke(b,d);return b.def(a.shared.strings,".id(",c,")")})}return null}var f=a["static"],g=a.dynamic,h=e("frag"),D=e("vert"),ba=null;xa(h)&&xa(D)?(ba=u.program(D.id,h.id,null,d),a=w(function(a,b){return a.link(ba)})):a=new J(h&&h.thisDep||D&&D.thisDep,h&&h.contextDep||D&&D.contextDep,h&&h.propDep||D&&D.propDep,function(a,b){var c=a.shared.shader,d;d=h?h.append(a,
24866
- b):b.def(c,".","frag");var e;e=D?D.append(a,b):b.def(c,".","vert");return b.def(c+".program("+e+","+d+")")});return{frag:h,vert:D,progVar:a,program:ba}}function M(a,b){function c(a,b){if(a in e){var d=e[a]|0;b?g.offset=d:g.instances=d;return w(function(a,c){b&&(a.OFFSET=d);return d})}if(a in f){var z=f[a];return K(z,function(a,c){var d=a.invoke(c,z);b&&(a.OFFSET=d);return d})}if(b){if(ba)return w(function(a,b){return a.OFFSET=0});if(h)return new J(D.thisDep,D.contextDep,D.propDep,function(a,b){return b.def(a.shared.vao+
24867
- ".currentVAO?"+a.shared.vao+".currentVAO.offset:0")})}else if(h)return new J(D.thisDep,D.contextDep,D.propDep,function(a,b){return b.def(a.shared.vao+".currentVAO?"+a.shared.vao+".currentVAO.instances:-1")});return null}var e=a["static"],f=a.dynamic,g={},h=!1,D=function(){if("vao"in e){var a=e.vao;null!==a&&null===k.getVAO(a)&&(a=k.createVAO(a));h=!0;g.vao=a;return w(function(b){var c=k.getVAO(a);return c?b.link(c):"null"})}if("vao"in f){h=!0;var b=f.vao;return K(b,function(a,c){var d=a.invoke(c,
24868
- b);return c.def(a.shared.vao+".getVAO("+d+")")})}return null}(),ba=!1,X=function(){if("elements"in e){var a=e.elements;g.elements=a;if(Sa(a)){var b=g.elements=d.create(a,!0),a=d.getElements(b);ba=!0}else a&&(a=d.getElements(a),ba=!0);b=w(function(b,c){if(a){var d=b.link(a);return b.ELEMENTS=d}return b.ELEMENTS=null});b.value=a;return b}if("elements"in f){ba=!0;var c=f.elements;return K(c,function(a,b){var d=a.shared,e=d.isBufferArgs,d=d.elements,f=a.invoke(b,c),z=b.def("null"),e=b.def(e,"(",f,")"),
24869
- f=a.cond(e).then(z,"=",d,".createStream(",f,");")["else"](z,"=",d,".getElements(",f,");");b.entry(f);b.exit(a.cond(e).then(d,".destroyStream(",z,");"));return a.ELEMENTS=z})}return h?new J(D.thisDep,D.contextDep,D.propDep,function(a,b){return b.def(a.shared.vao+".currentVAO?"+a.shared.elements+".getElements("+a.shared.vao+".currentVAO.elements):null")}):null}(),ja=c("offset",!0),m=function(){if("primitive"in e){var a=e.primitive;g.primitive=a;return w(function(b,c){return Ka[a]})}if("primitive"in
24870
- f){var b=f.primitive;return K(b,function(a,c){var d=a.constants.primTypes,e=a.invoke(c,b);return c.def(d,"[",e,"]")})}return ba?xa(X)?X.value?w(function(a,b){return b.def(a.ELEMENTS,".primType")}):w(function(){return 4}):new J(X.thisDep,X.contextDep,X.propDep,function(a,b){var c=a.ELEMENTS;return b.def(c,"?",c,".primType:",4)}):h?new J(D.thisDep,D.contextDep,D.propDep,function(a,b){return b.def(a.shared.vao+".currentVAO?"+a.shared.vao+".currentVAO.primitive:4")}):null}(),l=function(){if("count"in
24871
- e){var a=e.count|0;g.count=a;return w(function(){return a})}if("count"in f){var b=f.count;return K(b,function(a,c){return a.invoke(c,b)})}return ba?xa(X)?X?ja?new J(ja.thisDep,ja.contextDep,ja.propDep,function(a,b){return b.def(a.ELEMENTS,".vertCount-",a.OFFSET)}):w(function(a,b){return b.def(a.ELEMENTS,".vertCount")}):w(function(){return-1}):new J(X.thisDep||ja.thisDep,X.contextDep||ja.contextDep,X.propDep||ja.propDep,function(a,b){var c=a.ELEMENTS;return a.OFFSET?b.def(c,"?",c,".vertCount-",a.OFFSET,
24872
- ":-1"):b.def(c,"?",c,".vertCount:-1")}):h?new J(D.thisDep,D.contextDep,D.propDep,function(a,b){return b.def(a.shared.vao,".currentVAO?",a.shared.vao,".currentVAO.count:-1")}):null}(),p=c("instances",!1);return{elements:X,primitive:m,count:l,instances:p,offset:ja,vao:D,vaoActive:h,elementsActive:ba,"static":g}}function y(a,b){var c=a["static"],d=a.dynamic,e={};Na.forEach(function(a){function b(z,g){if(a in c){var B=z(c[a]);e[f]=w(function(){return B})}else if(a in d){var h=d[a];e[f]=K(h,function(a,
24873
- b){return g(a,b,a.invoke(b,h))})}}var f=h(a);switch(a){case "cull.enable":case "blend.enable":case "dither":case "stencil.enable":case "depth.enable":case "scissor.enable":case "polygonOffset.enable":case "sample.alpha":case "sample.enable":case "depth.mask":return b(function(a){return a},function(a,b,c){return c});case "depth.func":return b(function(a){return ab[a]},function(a,b,c){return b.def(a.constants.compareFuncs,"[",c,"]")});case "depth.range":return b(function(a){return a},function(a,b,c){a=
24874
- b.def("+",c,"[0]");b=b.def("+",c,"[1]");return[a,b]});case "blend.func":return b(function(a){return[Ga["srcRGB"in a?a.srcRGB:a.src],Ga["dstRGB"in a?a.dstRGB:a.dst],Ga["srcAlpha"in a?a.srcAlpha:a.src],Ga["dstAlpha"in a?a.dstAlpha:a.dst]]},function(a,b,c){function d(a,e){return b.def('"',a,e,'" in ',c,"?",c,".",a,e,":",c,".",a)}a=a.constants.blendFuncs;var e=d("src","RGB"),f=d("dst","RGB"),e=b.def(a,"[",e,"]"),z=b.def(a,"[",d("src","Alpha"),"]"),f=b.def(a,"[",f,"]");a=b.def(a,"[",d("dst","Alpha"),"]");
24875
- return[e,f,z,a]});case "blend.equation":return b(function(a){if("string"===typeof a)return[fa[a],fa[a]];if("object"===typeof a)return[fa[a.rgb],fa[a.alpha]]},function(a,b,c){var d=a.constants.blendEquations,e=b.def(),f=b.def();a=a.cond("typeof ",c,'==="string"');a.then(e,"=",f,"=",d,"[",c,"];");a["else"](e,"=",d,"[",c,".rgb];",f,"=",d,"[",c,".alpha];");b(a);return[e,f]});case "blend.color":return b(function(a){return R(4,function(b){return+a[b]})},function(a,b,c){return R(4,function(a){return b.def("+",
24876
- c,"[",a,"]")})});case "stencil.mask":return b(function(a){return a|0},function(a,b,c){return b.def(c,"|0")});case "stencil.func":return b(function(a){return[ab[a.cmp||"keep"],a.ref||0,"mask"in a?a.mask:-1]},function(a,b,c){a=b.def('"cmp" in ',c,"?",a.constants.compareFuncs,"[",c,".cmp]",":",7680);var d=b.def(c,".ref|0");b=b.def('"mask" in ',c,"?",c,".mask|0:-1");return[a,d,b]});case "stencil.opFront":case "stencil.opBack":return b(function(b){return["stencil.opBack"===a?1029:1028,Ta[b.fail||"keep"],
24877
- Ta[b.zfail||"keep"],Ta[b.zpass||"keep"]]},function(b,c,d){function e(a){return c.def('"',a,'" in ',d,"?",f,"[",d,".",a,"]:",7680)}var f=b.constants.stencilOps;return["stencil.opBack"===a?1029:1028,e("fail"),e("zfail"),e("zpass")]});case "polygonOffset.offset":return b(function(a){return[a.factor|0,a.units|0]},function(a,b,c){a=b.def(c,".factor|0");b=b.def(c,".units|0");return[a,b]});case "cull.face":return b(function(a){var b=0;"front"===a?b=1028:"back"===a&&(b=1029);return b},function(a,b,c){return b.def(c,
24878
- '==="front"?',1028,":",1029)});case "lineWidth":return b(function(a){return a},function(a,b,c){return c});case "frontFace":return b(function(a){return zb[a]},function(a,b,c){return b.def(c+'==="cw"?2304:2305')});case "colorMask":return b(function(a){return a.map(function(a){return!!a})},function(a,b,c){return R(4,function(a){return"!!"+c+"["+a+"]"})});case "sample.coverage":return b(function(a){return["value"in a?a.value:1,!!a.invert]},function(a,b,c){a=b.def('"value" in ',c,"?+",c,".value:1");b=
24879
- b.def("!!",c,".invert");return[a,b]})}});return e}function T(a,b){var c=a["static"],d=a.dynamic,e={};Object.keys(c).forEach(function(a){var b=c[a],d;if("number"===typeof b||"boolean"===typeof b)d=w(function(){return b});else if("function"===typeof b){var f=b._reglType;if("texture2d"===f||"textureCube"===f)d=w(function(a){return a.link(b)});else if("framebuffer"===f||"framebufferCube"===f)d=w(function(a){return a.link(b.color[0])})}else ra(b)&&(d=w(function(a){return a.global.def("[",R(b.length,function(a){return b[a]}),
24880
- "]")}));d.value=b;e[a]=d});Object.keys(d).forEach(function(a){var b=d[a];e[a]=K(b,function(a,c){return a.invoke(c,b)})});return e}function wa(a,c){var d=a["static"],e=a.dynamic,g={};Object.keys(d).forEach(function(a){var c=d[a],e=b.id(a),z=new ea;if(Sa(c))z.state=1,z.buffer=f.getBuffer(f.create(c,34962,!1,!0)),z.type=0;else{var B=f.getBuffer(c);if(B)z.state=1,z.buffer=B,z.type=0;else if("constant"in c){var h=c.constant;z.buffer="null";z.state=2;"number"===typeof h?z.x=h:Da.forEach(function(a,b){b<
24881
- h.length&&(z[a]=h[b])})}else{var B=Sa(c.buffer)?f.getBuffer(f.create(c.buffer,34962,!1,!0)):f.getBuffer(c.buffer),k=c.offset|0,m=c.stride|0,l=c.size|0,oa=!!c.normalized,p=0;"type"in c&&(p=Ja[c.type]);c=c.divisor|0;z.buffer=B;z.state=1;z.size=l;z.normalized=oa;z.type=p||B.dtype;z.offset=k;z.stride=m;z.divisor=c}}g[a]=w(function(a,b){var c=a.attribCache;if(e in c)return c[e];var d={isStream:!1};Object.keys(z).forEach(function(a){d[a]=z[a]});z.buffer&&(d.buffer=a.link(z.buffer),d.type=d.type||d.buffer+
24882
- ".dtype");return c[e]=d})});Object.keys(e).forEach(function(a){var b=e[a];g[a]=K(b,function(a,c){function d(a){c(B[a],"=",e,".",a,"|0;")}var e=a.invoke(c,b),f=a.shared,z=a.constants,g=f.isBufferArgs,f=f.buffer,B={isStream:c.def(!1)},h=new ea;h.state=1;Object.keys(h).forEach(function(a){B[a]=c.def(""+h[a])});var k=B.buffer,m=B.type;c("if(",g,"(",e,")){",B.isStream,"=true;",k,"=",f,".createStream(",34962,",",e,");",m,"=",k,".dtype;","}else{",k,"=",f,".getBuffer(",e,");","if(",k,"){",m,"=",k,".dtype;",
24883
- '}else if("constant" in ',e,"){",B.state,"=",2,";","if(typeof "+e+'.constant === "number"){',B[Da[0]],"=",e,".constant;",Da.slice(1).map(function(a){return B[a]}).join("="),"=0;","}else{",Da.map(function(a,b){return B[a]+"="+e+".constant.length>"+b+"?"+e+".constant["+b+"]:0;"}).join(""),"}}else{","if(",g,"(",e,".buffer)){",k,"=",f,".createStream(",34962,",",e,".buffer);","}else{",k,"=",f,".getBuffer(",e,".buffer);","}",m,'="type" in ',e,"?",z.glTypes,"[",e,".type]:",k,".dtype;",B.normalized,"=!!",
24884
- e,".normalized;");d("size");d("offset");d("stride");d("divisor");c("}}");c.exit("if(",B.isStream,"){",f,".destroyStream(",k,");","}");return B})});return g}function F(a){var b=a["static"],c=a.dynamic,d={};Object.keys(b).forEach(function(a){var c=b[a];d[a]=w(function(a,b){return"number"===typeof c||"boolean"===typeof c?""+c:a.link(c)})});Object.keys(c).forEach(function(a){var b=c[a];d[a]=K(b,function(a,c){return a.invoke(c,b)})});return d}function A(a,b,d,e,f){function g(a){var b=p[a];b&&(ja[a]=b)}
24885
- var m=O(a,b),l=G(a,f),p=C(a,l,f),X=M(a,f),ja=y(a,f),q=H(a,f,m);g("viewport");g(h("scissor.box"));var n=0<Object.keys(ja).length,l={framebuffer:l,draw:X,shader:q,state:ja,dirty:n,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};l.profile=t(a,f);l.uniforms=T(d,f);l.drawVAO=l.scopeVAO=X.vao;if(!l.drawVAO&&q.program&&!m&&c.angle_instanced_arrays&&X["static"].elements){var r=!0;a=q.program.attributes.map(function(a){a=b["static"][a];r=r&&!!a;return a});if(r&&0<a.length){var u=k.getVAO(k.createVAO({attributes:a,
24886
- elements:X["static"].elements}));l.drawVAO=new J(null,null,null,function(a,b){return a.link(u)});l.useVAO=!0}}m?l.useVAO=!0:l.attributes=wa(b,f);l.context=F(e,f);return l}function ia(a,b,c){var d=a.shared.context,e=a.scope();Object.keys(c).forEach(function(f){b.save(d,"."+f);var g=c[f].append(a,b);Array.isArray(g)?e(d,".",f,"=[",g.join(),"];"):e(d,".",f,"=",g,";")});b(e)}function S(a,b,c,d){var e=a.shared,f=e.gl,g=e.framebuffer,h;Ma&&(h=b.def(e.extensions,".webgl_draw_buffers"));var k=a.constants,
24887
- e=k.drawBuffer,k=k.backBuffer;a=c?c.append(a,b):b.def(g,".next");d||b("if(",a,"!==",g,".cur){");b("if(",a,"){",f,".bindFramebuffer(",36160,",",a,".framebuffer);");Ma&&b(h,".drawBuffersWEBGL(",e,"[",a,".colorAttachments.length]);");b("}else{",f,".bindFramebuffer(",36160,",null);");Ma&&b(h,".drawBuffersWEBGL(",k,");");b("}",g,".cur=",a,";");d||b("}")}function Aa(a,b,c){var d=a.shared,e=d.gl,f=a.current,g=a.next,k=d.current,l=d.next,m=a.cond(k,".dirty");Na.forEach(function(b){b=h(b);if(!(b in c.state)){var d,
24888
- B;if(b in g){d=g[b];B=f[b];var p=R(ta[b].length,function(a){return m.def(d,"[",a,"]")});m(a.cond(p.map(function(a,b){return a+"!=="+B+"["+b+"]"}).join("||")).then(e,".",va[b],"(",p,");",p.map(function(a,b){return B+"["+b+"]="+a}).join(";"),";"))}else d=m.def(l,".",b),p=a.cond(d,"!==",k,".",b),m(p),b in ua?p(a.cond(d).then(e,".enable(",ua[b],");")["else"](e,".disable(",ua[b],");"),k,".",b,"=",d,";"):p(e,".",va[b],"(",d,");",k,".",b,"=",d,";")}});0===Object.keys(c.state).length&&m(k,".dirty=false;");
24889
- b(m)}function I(a,b,c,d){var e=a.shared,f=a.current,g=e.current,h=e.gl;yb(Object.keys(c)).forEach(function(e){var k=c[e];if(!d||d(k)){var m=k.append(a,b);if(ua[e]){var l=ua[e];xa(k)?m?b(h,".enable(",l,");"):b(h,".disable(",l,");"):b(a.cond(m).then(h,".enable(",l,");")["else"](h,".disable(",l,");"));b(g,".",e,"=",m,";")}else if(ra(m)){var p=f[e];b(h,".",va[e],"(",m,");",m.map(function(a,b){return p+"["+b+"]="+a}).join(";"),";")}else b(h,".",va[e],"(",m,");",g,".",e,"=",m,";")}})}function N(a,b){W&&
24890
- (a.instancing=b.def(a.shared.extensions,".angle_instanced_arrays"))}function E(a,b,c,d,e){function f(){return"undefined"===typeof performance?"Date.now()":"performance.now()"}function g(a){r=b.def();a(r,"=",f(),";");"string"===typeof e?a(p,".count+=",e,";"):a(p,".count++;");l&&(d?(u=b.def(),a(u,"=",n,".getNumPendingQueries();")):a(n,".beginQuery(",p,");"))}function h(a){a(p,".cpuTime+=",f(),"-",r,";");l&&(d?a(n,".pushScopeStats(",u,",",n,".getNumPendingQueries(),",p,");"):a(n,".endQuery();"))}function k(a){var c=
24891
- b.def(q,".profile");b(q,".profile=",a,";");b.exit(q,".profile=",c,";")}var m=a.shared,p=a.stats,q=m.current,n=m.timer;c=c.profile;var r,u;if(c){if(xa(c)){c.enable?(g(b),h(b.exit),k("true")):k("false");return}c=c.append(a,b);k(c)}else c=b.def(q,".profile");m=a.block();g(m);b("if(",c,"){",m,"}");a=a.block();h(a);b.exit("if(",c,"){",a,"}")}function ga(a,b,c,d,e){function f(a){switch(a){case 35664:case 35667:case 35671:return 2;case 35665:case 35668:case 35672:return 3;case 35666:case 35669:case 35673:return 4;
24892
- default:return 1}}function g(c,d,e){function f(){b("if(!",p,".buffer){",m,".enableVertexAttribArray(",l,");}");var c=e.type,g;g=e.size?b.def(e.size,"||",d):d;b("if(",p,".type!==",c,"||",p,".size!==",g,"||",n.map(function(a){return p+"."+a+"!=="+e[a]}).join("||"),"){",m,".bindBuffer(",34962,",",ha,".buffer);",m,".vertexAttribPointer(",[l,g,c,e.normalized,e.stride,e.offset],");",p,".type=",c,";",p,".size=",g,";",n.map(function(a){return p+"."+a+"="+e[a]+";"}).join(""),"}");W&&(c=e.divisor,b("if(",p,
24893
- ".divisor!==",c,"){",a.instancing,".vertexAttribDivisorANGLE(",[l,c],");",p,".divisor=",c,";}"))}function k(){b("if(",p,".buffer){",m,".disableVertexAttribArray(",l,");",p,".buffer=null;","}if(",Da.map(function(a,b){return p+"."+a+"!=="+q[b]}).join("||"),"){",m,".vertexAttrib4f(",l,",",q,");",Da.map(function(a,b){return p+"."+a+"="+q[b]+";"}).join(""),"}")}var m=h.gl,l=b.def(c,".location"),p=b.def(h.attributes,"[",l,"]");c=e.state;var ha=e.buffer,q=[e.x,e.y,e.z,e.w],n=["buffer","normalized","offset",
24894
- "stride"];1===c?f():2===c?k():(b("if(",c,"===",1,"){"),f(),b("}else{"),k(),b("}"))}var h=a.shared;d.forEach(function(d){var h=d.name,k=c.attributes[h],m;if(k){if(!e(k))return;m=k.append(a,b)}else{if(!e(Ab))return;var l=a.scopeAttrib(h);m={};Object.keys(new ea).forEach(function(a){m[a]=b.def(l,".",a)})}g(a.link(d),f(d.info.type),m)})}function Q(a,c,d,e,f,g){for(var h=a.shared,k=h.gl,m={},l,p=0;p<e.length;++p){var q=e[p],n=q.name,r=q.info.type,u=q.info.size,t=d.uniforms[n];if(1<u){if(!t)continue;var v=
24895
- n.replace("[0]","");if(m[v])continue;m[v]=1}var q=a.link(q)+".location",x;if(t){if(!f(t))continue;if(xa(t)){n=t.value;if(35678===r||35680===r)r=a.link(n._texture||n.color[0]._texture),c(k,".uniform1i(",q,",",r+".bind());"),c.exit(r,".unbind();");else if(35674===r||35675===r||35676===r)u=a.global.def("new Float32Array(["+Array.prototype.slice.call(n)+"])"),n=2,35675===r?n=3:35676===r&&(n=4),c(k,".uniformMatrix",n,"fv(",q,",false,",u,");");else{switch(r){case 5126:l="1f";break;case 35664:l="2f";break;
24896
- case 35665:l="3f";break;case 35666:l="4f";break;case 35670:l="1i";break;case 5124:l="1i";break;case 35671:l="2i";break;case 35667:l="2i";break;case 35672:l="3i";break;case 35668:l="3i";break;case 35673:l="4i";break;case 35669:l="4i"}1<u?(l+="v",n=a.global.def("["+Array.prototype.slice.call(n)+"]")):n=ra(n)?Array.prototype.slice.call(n):n;c(k,".uniform",l,"(",q,",",n,");")}continue}else x=t.append(a,c)}else{if(!f(Ab))continue;x=c.def(h.uniforms,"[",b.id(n),"]")}35678===r?c("if(",x,"&&",x,'._reglType==="framebuffer"){',
24897
- x,"=",x,".color[0];","}"):35680===r&&c("if(",x,"&&",x,'._reglType==="framebufferCube"){',x,"=",x,".color[0];","}");n=1;switch(r){case 35678:case 35680:r=c.def(x,"._texture");c(k,".uniform1i(",q,",",r,".bind());");c.exit(r,".unbind();");continue;case 5124:case 35670:l="1i";break;case 35667:case 35671:l="2i";n=2;break;case 35668:case 35672:l="3i";n=3;break;case 35669:case 35673:l="4i";n=4;break;case 5126:l="1f";break;case 35664:l="2f";n=2;break;case 35665:l="3f";n=3;break;case 35666:l="4f";n=4;break;
24898
- case 35674:l="Matrix2fv";break;case 35675:l="Matrix3fv";break;case 35676:l="Matrix4fv"}-1===l.indexOf("Matrix")&&1<u&&(l+="v",n=1);if("M"===l.charAt(0)){c(k,".uniform",l,"(",q,",");var q=Math.pow(r-35674+2,2),y=a.global.def("new Float32Array(",q,")");Array.isArray(x)?c("false,(",R(q,function(a){return y+"["+a+"]="+x[a]}),",",y,")"):c("false,(Array.isArray(",x,")||",x," instanceof Float32Array)?",x,":(",R(q,function(a){return y+"["+a+"]="+x+"["+a+"]"}),",",y,")");c(");")}else{if(1<n){for(var r=[],
24899
- w=[],u=0;u<n;++u)Array.isArray(x)?w.push(x[u]):w.push(c.def(x+"["+u+"]")),g&&r.push(c.def());g&&c("if(!",a.batchId,"||",r.map(function(a,b){return a+"!=="+w[b]}).join("||"),"){",r.map(function(a,b){return a+"="+w[b]+";"}).join(""));c(k,".uniform",l,"(",q,",",w.join(","),");")}else g&&(r=c.def(),c("if(!",a.batchId,"||",r,"!==",x,"){",r,"=",x,";")),c(k,".uniform",l,"(",q,",",x,");");g&&c("}")}}}function U(a,b,c,d){function e(f){var g=m[f];return g?g.contextDep&&d.contextDynamic||g.propDep?g.append(a,
24900
- c):g.append(a,b):b.def(k,".",f)}function f(){function a(){c(t,".drawElementsInstancedANGLE(",[n,r,x,q+"<<(("+x+"-5121)>>1)",u],");")}function b(){c(t,".drawArraysInstancedANGLE(",[n,q,r,u],");")}p&&"null"!==p?v?a():(c("if(",p,"){"),a(),c("}else{"),b(),c("}")):b()}function g(){function a(){c(l+".drawElements("+[n,r,x,q+"<<(("+x+"-5121)>>1)"]+");")}function b(){c(l+".drawArrays("+[n,q,r]+");")}p&&"null"!==p?v?a():(c("if(",p,"){"),a(),c("}else{"),b(),c("}")):b()}var h=a.shared,l=h.gl,k=h.draw,m=d.draw,
24901
- p=function(){var e=m.elements,f=b;if(e){if(e.contextDep&&d.contextDynamic||e.propDep)f=c;e=e.append(a,f);m.elementsActive&&f("if("+e+")"+l+".bindBuffer(34963,"+e+".buffer.buffer);")}else e=f.def(),f(e,"=",k,".","elements",";","if(",e,"){",l,".bindBuffer(",34963,",",e,".buffer.buffer);}","else if(",h.vao,".currentVAO){",e,"=",a.shared.elements+".getElements("+h.vao,".currentVAO.elements);",na?"":"if("+e+")"+l+".bindBuffer(34963,"+e+".buffer.buffer);","}");return e}(),n=e("primitive"),q=e("offset"),
24902
- r=function(){var e=m.count,f=b;if(e){if(e.contextDep&&d.contextDynamic||e.propDep)f=c;e=e.append(a,f)}else e=f.def(k,".","count");return e}();if("number"===typeof r){if(0===r)return}else c("if(",r,"){"),c.exit("}");var u,t;W&&(u=e("instances"),t=a.instancing);var x=p+".type",v=m.elements&&xa(m.elements)&&!m.vaoActive;W&&("number"!==typeof u||0<=u)?"string"===typeof u?(c("if(",u,">0){"),f(),c("}else if(",u,"<0){"),g(),c("}")):f():g()}function ca(a,b,c,d,e){b=P();e=b.proc("body",e);W&&(b.instancing=
24903
- e.def(b.shared.extensions,".angle_instanced_arrays"));a(b,e,c,d);return b.compile().body}function Z(a,b,c,d){N(a,b);c.useVAO?c.drawVAO?b(a.shared.vao,".setVAO(",c.drawVAO.append(a,b),");"):b(a.shared.vao,".setVAO(",a.shared.vao,".targetVAO);"):(b(a.shared.vao,".setVAO(null);"),ga(a,b,c,d.attributes,function(){return!0}));Q(a,b,c,d.uniforms,function(){return!0},!1);U(a,b,b,c)}function Fa(a,b){var c=a.proc("draw",1);N(a,c);ia(a,c,b.context);S(a,c,b.framebuffer);Aa(a,c,b);I(a,c,b.state);E(a,c,b,!1,!0);
24904
- var d=b.shader.progVar.append(a,c);c(a.shared.gl,".useProgram(",d,".program);");if(b.shader.program)Z(a,c,b,b.shader.program);else{c(a.shared.vao,".setVAO(null);");var e=a.global.def("{}"),f=c.def(d,".id"),g=c.def(e,"[",f,"]");c(a.cond(g).then(g,".call(this,a0);")["else"](g,"=",e,"[",f,"]=",a.link(function(c){return ca(Z,a,b,c,1)}),"(",d,");",g,".call(this,a0);"))}0<Object.keys(b.state).length&&c(a.shared.current,".dirty=true;");a.shared.vao&&c(a.shared.vao,".setVAO(null);")}function pa(a,b,c,d){function e(){return!0}
24905
- a.batchId="a1";N(a,b);ga(a,b,c,d.attributes,e);Q(a,b,c,d.uniforms,e,!1);U(a,b,b,c)}function qa(a,b,c,d){function e(a){return a.contextDep&&g||a.propDep}function f(a){return!e(a)}N(a,b);var g=c.contextDep,h=b.def(),l=b.def();a.shared.props=l;a.batchId=h;var k=a.scope(),m=a.scope();b(k.entry,"for(",h,"=0;",h,"<","a1",";++",h,"){",l,"=","a0","[",h,"];",m,"}",k.exit);c.needsContext&&ia(a,m,c.context);c.needsFramebuffer&&S(a,m,c.framebuffer);I(a,m,c.state,e);c.profile&&e(c.profile)&&E(a,m,c,!1,!0);d?(c.useVAO?
24906
- c.drawVAO?e(c.drawVAO)?m(a.shared.vao,".setVAO(",c.drawVAO.append(a,m),");"):k(a.shared.vao,".setVAO(",c.drawVAO.append(a,k),");"):k(a.shared.vao,".setVAO(",a.shared.vao,".targetVAO);"):(k(a.shared.vao,".setVAO(null);"),ga(a,k,c,d.attributes,f),ga(a,m,c,d.attributes,e)),Q(a,k,c,d.uniforms,f,!1),Q(a,m,c,d.uniforms,e,!0),U(a,k,m,c)):(b=a.global.def("{}"),d=c.shader.progVar.append(a,m),l=m.def(d,".id"),k=m.def(b,"[",l,"]"),m(a.shared.gl,".useProgram(",d,".program);","if(!",k,"){",k,"=",b,"[",l,"]=",
24907
- a.link(function(b){return ca(pa,a,c,b,2)}),"(",d,");}",k,".call(this,a0[",h,"],",h,");"))}function V(a,b){function c(a){return a.contextDep&&e||a.propDep}var d=a.proc("batch",2);a.batchId="0";N(a,d);var e=!1,f=!0;Object.keys(b.context).forEach(function(a){e=e||b.context[a].propDep});e||(ia(a,d,b.context),f=!1);var g=b.framebuffer,h=!1;g?(g.propDep?e=h=!0:g.contextDep&&e&&(h=!0),h||S(a,d,g)):S(a,d,null);b.state.viewport&&b.state.viewport.propDep&&(e=!0);Aa(a,d,b);I(a,d,b.state,function(a){return!c(a)});
24908
- b.profile&&c(b.profile)||E(a,d,b,!1,"a1");b.contextDep=e;b.needsContext=f;b.needsFramebuffer=h;f=b.shader.progVar;if(f.contextDep&&e||f.propDep)qa(a,d,b,null);else if(f=f.append(a,d),d(a.shared.gl,".useProgram(",f,".program);"),b.shader.program)qa(a,d,b,b.shader.program);else{d(a.shared.vao,".setVAO(null);");var g=a.global.def("{}"),h=d.def(f,".id"),l=d.def(g,"[",h,"]");d(a.cond(l).then(l,".call(this,a0,a1);")["else"](l,"=",g,"[",h,"]=",a.link(function(c){return ca(qa,a,b,c,2)}),"(",f,");",l,".call(this,a0,a1);"))}0<
24909
- Object.keys(b.state).length&&d(a.shared.current,".dirty=true;");a.shared.vao&&d(a.shared.vao,".setVAO(null);")}function ka(a,c){function d(b){var g=c.shader[b];g&&e.set(f.shader,"."+b,g.append(a,e))}var e=a.proc("scope",3);a.batchId="a2";var f=a.shared,g=f.current;ia(a,e,c.context);c.framebuffer&&c.framebuffer.append(a,e);yb(Object.keys(c.state)).forEach(function(b){var d=c.state[b].append(a,e);ra(d)?d.forEach(function(c,d){e.set(a.next[b],"["+d+"]",c)}):e.set(f.next,"."+b,d)});E(a,e,c,!0,!0);["elements",
24910
- "offset","count","instances","primitive"].forEach(function(b){var d=c.draw[b];d&&e.set(f.draw,"."+b,""+d.append(a,e))});Object.keys(c.uniforms).forEach(function(d){var g=c.uniforms[d].append(a,e);Array.isArray(g)&&(g="["+g.join()+"]");e.set(f.uniforms,"["+b.id(d)+"]",g)});Object.keys(c.attributes).forEach(function(b){var d=c.attributes[b].append(a,e),f=a.scopeAttrib(b);Object.keys(new ea).forEach(function(a){e.set(f,"."+a,d[a])})});c.scopeVAO&&e.set(f.vao,".targetVAO",c.scopeVAO.append(a,e));d("vert");
24911
- d("frag");0<Object.keys(c.state).length&&(e(g,".dirty=true;"),e.exit(g,".dirty=true;"));e("a1(",a.shared.context,",a0,",a.batchId,");")}function la(a){if("object"===typeof a&&!ra(a)){for(var b=Object.keys(a),c=0;c<b.length;++c)if(Y.isDynamic(a[b[c]]))return!0;return!1}}function aa(a,b,c){function d(a,b){g.forEach(function(c){var d=e[c];Y.isDynamic(d)&&(d=a.invoke(b,d),b(m,".",c,"=",d,";"))})}var e=b["static"][c];if(e&&la(e)){var f=a.global,g=Object.keys(e),h=!1,l=!1,k=!1,m=a.global.def("{}");g.forEach(function(b){var c=
24912
- e[b];if(Y.isDynamic(c))"function"===typeof c&&(c=e[b]=Y.unbox(c)),b=K(c,null),h=h||b.thisDep,k=k||b.propDep,l=l||b.contextDep;else{f(m,".",b,"=");switch(typeof c){case "number":f(c);break;case "string":f('"',c,'"');break;case "object":Array.isArray(c)&&f("[",c.join(),"]");break;default:f(a.link(c))}f(";")}});b.dynamic[c]=new Y.DynamicVariable(4,{thisDep:h,contextDep:l,propDep:k,ref:m,append:d});delete b["static"][c]}}var ea=k.Record,fa={add:32774,subtract:32778,"reverse subtract":32779};c.ext_blend_minmax&&
24913
- (fa.min=32775,fa.max=32776);var W=c.angle_instanced_arrays,Ma=c.webgl_draw_buffers,na=c.oes_vertex_array_object,ta={dirty:!0,profile:g.profile},Ea={},Na=[],ua={},va={};r("dither",3024);r("blend.enable",3042);p("blend.color","blendColor",[0,0,0,0]);p("blend.equation","blendEquationSeparate",[32774,32774]);p("blend.func","blendFuncSeparate",[1,0,1,0]);r("depth.enable",2929,!0);p("depth.func","depthFunc",513);p("depth.range","depthRange",[0,1]);p("depth.mask","depthMask",!0);p("colorMask","colorMask",
24914
- [!0,!0,!0,!0]);r("cull.enable",2884);p("cull.face","cullFace",1029);p("frontFace","frontFace",2305);p("lineWidth","lineWidth",1);r("polygonOffset.enable",32823);p("polygonOffset.offset","polygonOffset",[0,0]);r("sample.alpha",32926);r("sample.enable",32928);p("sample.coverage","sampleCoverage",[1,!1]);r("stencil.enable",2960);p("stencil.mask","stencilMask",-1);p("stencil.func","stencilFunc",[519,0,-1]);p("stencil.opFront","stencilOpSeparate",[1028,7680,7680,7680]);p("stencil.opBack","stencilOpSeparate",
24915
- [1029,7680,7680,7680]);r("scissor.enable",3089);p("scissor.box","scissor",[0,0,a.drawingBufferWidth,a.drawingBufferHeight]);p("viewport","viewport",[0,0,a.drawingBufferWidth,a.drawingBufferHeight]);var tb={gl:a,context:x,strings:b,next:Ea,current:ta,draw:m,elements:d,buffer:f,shader:u,attributes:k.state,vao:k,uniforms:v,framebuffer:n,extensions:c,timer:l,isBufferArgs:Sa},Pa={primTypes:Ka,compareFuncs:ab,blendFuncs:Ga,blendEquations:fa,stencilOps:Ta,glTypes:Ja,orientationType:zb};Ma&&(Pa.backBuffer=
24916
- [1029],Pa.drawBuffer=R(e.maxDrawbuffers,function(a){return 0===a?[0]:R(a,function(a){return 36064+a})}));var sa=0;return{next:Ea,current:ta,procs:function(){var a=P(),b=a.proc("poll"),d=a.proc("refresh"),f=a.block();b(f);d(f);var g=a.shared,h=g.gl,l=g.next,k=g.current;f(k,".dirty=false;");S(a,b);S(a,d,null,!0);var m;W&&(m=a.link(W));c.oes_vertex_array_object&&d(a.link(c.oes_vertex_array_object),".bindVertexArrayOES(null);");for(var p=0;p<e.maxAttributes;++p){var n=d.def(g.attributes,"[",p,"]"),q=
24917
- a.cond(n,".buffer");q.then(h,".enableVertexAttribArray(",p,");",h,".bindBuffer(",34962,",",n,".buffer.buffer);",h,".vertexAttribPointer(",p,",",n,".size,",n,".type,",n,".normalized,",n,".stride,",n,".offset);")["else"](h,".disableVertexAttribArray(",p,");",h,".vertexAttrib4f(",p,",",n,".x,",n,".y,",n,".z,",n,".w);",n,".buffer=null;");d(q);W&&d(m,".vertexAttribDivisorANGLE(",p,",",n,".divisor);")}d(a.shared.vao,".currentVAO=null;",a.shared.vao,".setVAO(",a.shared.vao,".targetVAO);");Object.keys(ua).forEach(function(c){var e=
24918
- ua[c],g=f.def(l,".",c),m=a.block();m("if(",g,"){",h,".enable(",e,")}else{",h,".disable(",e,")}",k,".",c,"=",g,";");d(m);b("if(",g,"!==",k,".",c,"){",m,"}")});Object.keys(va).forEach(function(c){var e=va[c],g=ta[c],m,p,n=a.block();n(h,".",e,"(");ra(g)?(e=g.length,m=a.global.def(l,".",c),p=a.global.def(k,".",c),n(R(e,function(a){return m+"["+a+"]"}),");",R(e,function(a){return p+"["+a+"]="+m+"["+a+"];"}).join("")),b("if(",R(e,function(a){return m+"["+a+"]!=="+p+"["+a+"]"}).join("||"),"){",n,"}")):(m=
24919
- f.def(l,".",c),p=f.def(k,".",c),n(m,");",k,".",c,"=",m,";"),b("if(",m,"!==",p,"){",n,"}"));d(n)});return a.compile()}(),compile:function(a,b,c,d,e){var f=P();f.stats=f.link(e);Object.keys(b["static"]).forEach(function(a){aa(f,b,a)});Xb.forEach(function(b){aa(f,a,b)});var g=A(a,b,c,d,f);Fa(f,g);ka(f,g);V(f,g);return L(f.compile(),{destroy:function(){g.shader.program.destroy()}})}}}function Bb(a,b){for(var c=0;c<a.length;++c)if(a[c]===b)return c;return-1}var L=function(a,b){for(var c=Object.keys(b),
24920
- e=0;e<c.length;++e)a[c[e]]=b[c[e]];return a},Db=0,Y={DynamicVariable:Z,define:function(a,b){return new Z(a,cb(b+""))},isDynamic:function(a){return"function"===typeof a&&!a._reglType||a instanceof Z},unbox:db,accessor:cb},bb={next:"function"===typeof requestAnimationFrame?function(a){return requestAnimationFrame(a)}:function(a){return setTimeout(a,16)},cancel:"function"===typeof cancelAnimationFrame?function(a){return cancelAnimationFrame(a)}:clearTimeout},Cb="undefined"!==typeof performance&&performance.now?
24921
- function(){return performance.now()}:function(){return+new Date},G=hb();G.zero=hb();var Yb=function(a,b){var c=1;b.ext_texture_filter_anisotropic&&(c=a.getParameter(34047));var e=1,f=1;b.webgl_draw_buffers&&(e=a.getParameter(34852),f=a.getParameter(36063));var d=!!b.oes_texture_float;if(d){d=a.createTexture();a.bindTexture(3553,d);a.texImage2D(3553,0,6408,1,1,0,6408,5126,null);var q=a.createFramebuffer();a.bindFramebuffer(36160,q);a.framebufferTexture2D(36160,36064,3553,d,0);a.bindTexture(3553,null);
24922
- if(36053!==a.checkFramebufferStatus(36160))d=!1;else{a.viewport(0,0,1,1);a.clearColor(1,0,0,1);a.clear(16384);var n=G.allocType(5126,4);a.readPixels(0,0,1,1,6408,5126,n);a.getError()?d=!1:(a.deleteFramebuffer(q),a.deleteTexture(d),d=1===n[0]);G.freeType(n)}}n=!0;"undefined"!==typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent))||(n=a.createTexture(),q=G.allocType(5121,36),a.activeTexture(33984),a.bindTexture(34067,n),a.texImage2D(34069,
24923
- 0,6408,3,3,0,6408,5121,q),G.freeType(q),a.bindTexture(34067,null),a.deleteTexture(n),n=!a.getError());return{colorBits:[a.getParameter(3410),a.getParameter(3411),a.getParameter(3412),a.getParameter(3413)],depthBits:a.getParameter(3414),stencilBits:a.getParameter(3415),subpixelBits:a.getParameter(3408),extensions:Object.keys(b).filter(function(a){return!!b[a]}),maxAnisotropic:c,maxDrawbuffers:e,maxColorAttachments:f,pointSizeDims:a.getParameter(33901),lineWidthDims:a.getParameter(33902),maxViewportDims:a.getParameter(3386),
24924
- maxCombinedTextureUnits:a.getParameter(35661),maxCubeMapSize:a.getParameter(34076),maxRenderbufferSize:a.getParameter(34024),maxTextureUnits:a.getParameter(34930),maxTextureSize:a.getParameter(3379),maxAttributes:a.getParameter(34921),maxVertexUniforms:a.getParameter(36347),maxVertexTextureUnits:a.getParameter(35660),maxVaryingVectors:a.getParameter(36348),maxFragmentUniforms:a.getParameter(36349),glsl:a.getParameter(35724),renderer:a.getParameter(7937),vendor:a.getParameter(7936),version:a.getParameter(7938),
24925
- readFloat:d,npotTextureCube:n}},O=function(a){return a instanceof Uint8Array||a instanceof Uint16Array||a instanceof Uint32Array||a instanceof Int8Array||a instanceof Int16Array||a instanceof Int32Array||a instanceof Float32Array||a instanceof Float64Array||a instanceof Uint8ClampedArray},I=function(a){return Object.keys(a).map(function(b){return a[b]})},Qa={shape:function(a){for(var b=[];a.length;a=a[0])b.push(a.length);return b},flatten:function(a,b,c,e){var f=1;if(b.length)for(var d=0;d<b.length;++d)f*=
24926
- b[d];else f=0;c=e||G.allocType(c,f);switch(b.length){case 0:break;case 1:e=b[0];for(b=0;b<e;++b)c[b]=a[b];break;case 2:e=b[0];b=b[1];for(d=f=0;d<e;++d)for(var q=a[d],n=0;n<b;++n)c[f++]=q[n];break;case 3:ib(a,b[0],b[1],b[2],c,0);break;default:jb(a,b,0,c,0)}return c}},Ia={"[object Int8Array]":5120,"[object Int16Array]":5122,"[object Int32Array]":5124,"[object Uint8Array]":5121,"[object Uint8ClampedArray]":5121,"[object Uint16Array]":5123,"[object Uint32Array]":5125,"[object Float32Array]":5126,"[object Float64Array]":5121,
24927
- "[object ArrayBuffer]":5121},Ja={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,"float":5126,float32:5126},nb={dynamic:35048,stream:35040,"static":35044},Ua=Qa.flatten,mb=Qa.shape,na=[];na[5120]=1;na[5122]=2;na[5124]=4;na[5121]=1;na[5123]=2;na[5125]=4;na[5126]=4;var Ka={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},pb=new Float32Array(1),Lb=new Uint32Array(pb.buffer),Pb=[9984,9986,9985,9987],Oa=[0,6409,
24928
- 6410,6407,6408],U={};U[6409]=U[6406]=U[6402]=1;U[34041]=U[6410]=2;U[6407]=U[35904]=3;U[6408]=U[35906]=4;var Xa=sa("HTMLCanvasElement"),Ya=sa("OffscreenCanvas"),ub=sa("CanvasRenderingContext2D"),vb=sa("ImageBitmap"),wb=sa("HTMLImageElement"),xb=sa("HTMLVideoElement"),Mb=Object.keys(Ia).concat([Xa,Ya,ub,vb,wb,xb]),za=[];za[5121]=1;za[5126]=4;za[36193]=2;za[5123]=2;za[5125]=4;var C=[];C[32854]=2;C[32855]=2;C[36194]=2;C[34041]=4;C[33776]=.5;C[33777]=.5;C[33778]=1;C[33779]=1;C[35986]=.5;C[35987]=1;C[34798]=
24929
- 1;C[35840]=.5;C[35841]=.25;C[35842]=.5;C[35843]=.25;C[36196]=.5;var Q=[];Q[32854]=2;Q[32855]=2;Q[36194]=2;Q[33189]=2;Q[36168]=1;Q[34041]=4;Q[35907]=4;Q[34836]=16;Q[34842]=8;Q[34843]=6;var Zb=function(a,b,c,e,f){function d(a){this.id=k++;this.refCount=1;this.renderbuffer=a;this.format=32854;this.height=this.width=0;f.profile&&(this.stats={size:0})}function q(b){var c=b.renderbuffer;a.bindRenderbuffer(36161,null);a.deleteRenderbuffer(c);b.renderbuffer=null;b.refCount=0;delete u[b.id];e.renderbufferCount--}
24930
- var n={rgba4:32854,rgb565:36194,"rgb5 a1":32855,depth:33189,stencil:36168,"depth stencil":34041};b.ext_srgb&&(n.srgba=35907);b.ext_color_buffer_half_float&&(n.rgba16f=34842,n.rgb16f=34843);b.webgl_color_buffer_float&&(n.rgba32f=34836);var v=[];Object.keys(n).forEach(function(a){v[n[a]]=a});var k=0,u={};d.prototype.decRef=function(){0>=--this.refCount&&q(this)};f.profile&&(e.getTotalRenderbufferSize=function(){var a=0;Object.keys(u).forEach(function(b){a+=u[b].stats.size});return a});return{create:function(b,
24931
- c){function l(b,c){var d=0,e=0,k=32854;"object"===typeof b&&b?("shape"in b?(e=b.shape,d=e[0]|0,e=e[1]|0):("radius"in b&&(d=e=b.radius|0),"width"in b&&(d=b.width|0),"height"in b&&(e=b.height|0)),"format"in b&&(k=n[b.format])):"number"===typeof b?(d=b|0,e="number"===typeof c?c|0:d):b||(d=e=1);if(d!==g.width||e!==g.height||k!==g.format)return l.width=g.width=d,l.height=g.height=e,g.format=k,a.bindRenderbuffer(36161,g.renderbuffer),a.renderbufferStorage(36161,k,d,e),f.profile&&(g.stats.size=Q[g.format]*
24932
- g.width*g.height),l.format=v[g.format],l}var g=new d(a.createRenderbuffer());u[g.id]=g;e.renderbufferCount++;l(b,c);l.resize=function(b,c){var d=b|0,e=c|0||d;if(d===g.width&&e===g.height)return l;l.width=g.width=d;l.height=g.height=e;a.bindRenderbuffer(36161,g.renderbuffer);a.renderbufferStorage(36161,g.format,d,e);f.profile&&(g.stats.size=Q[g.format]*g.width*g.height);return l};l._reglType="renderbuffer";l._renderbuffer=g;f.profile&&(l.stats=g.stats);l.destroy=function(){g.decRef()};return l},clear:function(){I(u).forEach(q)},
24933
- restore:function(){I(u).forEach(function(b){b.renderbuffer=a.createRenderbuffer();a.bindRenderbuffer(36161,b.renderbuffer);a.renderbufferStorage(36161,b.format,b.width,b.height)});a.bindRenderbuffer(36161,null)}}},Za=[];Za[6408]=4;Za[6407]=3;var Ra=[];Ra[5121]=1;Ra[5126]=4;Ra[36193]=2;var Da=["x","y","z","w"],Xb="blend.func blend.equation stencil.func stencil.opFront stencil.opBack sample.coverage viewport scissor.box polygonOffset.offset".split(" "),Ga={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,
24934
- "src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},ab={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Ta={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,
24935
- "increment wrap":34055,"decrement wrap":34056,invert:5386},zb={cw:2304,ccw:2305},Ab=new J(!1,!1,!1,function(){}),$b=function(a,b){function c(){this.endQueryIndex=this.startQueryIndex=-1;this.sum=0;this.stats=null}function e(a,b,d){var e=q.pop()||new c;e.startQueryIndex=a;e.endQueryIndex=b;e.sum=0;e.stats=d;n.push(e)}if(!b.ext_disjoint_timer_query)return null;var f=[],d=[],q=[],n=[],v=[],k=[];return{beginQuery:function(a){var c=f.pop()||b.ext_disjoint_timer_query.createQueryEXT();b.ext_disjoint_timer_query.beginQueryEXT(35007,
24936
- c);d.push(c);e(d.length-1,d.length,a)},endQuery:function(){b.ext_disjoint_timer_query.endQueryEXT(35007)},pushScopeStats:e,update:function(){var a,c;a=d.length;if(0!==a){k.length=Math.max(k.length,a+1);v.length=Math.max(v.length,a+1);v[0]=0;var e=k[0]=0;for(c=a=0;c<d.length;++c){var l=d[c];b.ext_disjoint_timer_query.getQueryObjectEXT(l,34919)?(e+=b.ext_disjoint_timer_query.getQueryObjectEXT(l,34918),f.push(l)):d[a++]=l;v[c+1]=e;k[c+1]=a}d.length=a;for(c=a=0;c<n.length;++c){var e=n[c],g=e.startQueryIndex,
24937
- l=e.endQueryIndex;e.sum+=v[l]-v[g];g=k[g];l=k[l];l===g?(e.stats.gpuTime+=e.sum/1E6,q.push(e)):(e.startQueryIndex=g,e.endQueryIndex=l,n[a++]=e)}n.length=a}},getNumPendingQueries:function(){return d.length},clear:function(){f.push.apply(f,d);for(var a=0;a<f.length;a++)b.ext_disjoint_timer_query.deleteQueryEXT(f[a]);d.length=0;f.length=0},restore:function(){d.length=0;f.length=0}}};return function(a){function b(){if(0===E.length)t&&t.update(),ca=null;else{ca=bb.next(b);u();for(var a=E.length-1;0<=a;--a){var c=
24938
- E[a];c&&c(H,null,0)}l.flush();t&&t.update()}}function c(){!ca&&0<E.length&&(ca=bb.next(b))}function e(){ca&&(bb.cancel(b),ca=null)}function f(a){a.preventDefault();e();R.forEach(function(a){a()})}function d(a){l.getError();h.restore();F.restore();y.restore();A.restore();O.restore();S.restore();K.restore();t&&t.restore();I.procs.refresh();c();U.forEach(function(a){a()})}function q(a){function b(a,c){var d={},e={};Object.keys(a).forEach(function(b){var f=a[b];if(Y.isDynamic(f))e[b]=Y.unbox(f,b);else{if(c&&
24939
- Array.isArray(f))for(var g=0;g<f.length;++g)if(Y.isDynamic(f[g])){e[b]=Y.unbox(f,b);return}d[b]=f}});return{dynamic:e,"static":d}}function c(a){for(;n.length<a;)n.push(null);return n}var d=b(a.context||{},!0),e=b(a.uniforms||{},!0),f=b(a.attributes||{},!1);a=b(function(a){function b(a){if(a in c){var d=c[a];delete c[a];Object.keys(d).forEach(function(b){c[a+"."+b]=d[b]})}}var c=L({},a);delete c.uniforms;delete c.attributes;delete c.context;delete c.vao;"stencil"in c&&c.stencil.op&&(c.stencil.opBack=
24940
- c.stencil.opFront=c.stencil.op,delete c.stencil.op);b("blend");b("depth");b("cull");b("stencil");b("polygonOffset");b("scissor");b("sample");"vao"in a&&(c.vao=a.vao);return c}(a),!1);var g={gpuTime:0,cpuTime:0,count:0},h=I.compile(a,f,e,d,g),k=h.draw,l=h.batch,m=h.scope,n=[];return L(function(a,b){var d;if("function"===typeof a)return m.call(this,null,a,0);if("function"===typeof b)if("number"===typeof a)for(d=0;d<a;++d)m.call(this,null,b,d);else if(Array.isArray(a))for(d=0;d<a.length;++d)m.call(this,
24941
- a[d],b,d);else return m.call(this,a,b,0);else if("number"===typeof a){if(0<a)return l.call(this,c(a|0),a|0)}else if(Array.isArray(a)){if(a.length)return l.call(this,a,a.length)}else return k.call(this,a)},{stats:g,destroy:function(){h.destroy()}})}function n(a,b){var c=0;I.procs.poll();var d=b.color;d&&(l.clearColor(+d[0]||0,+d[1]||0,+d[2]||0,+d[3]||0),c|=16384);"depth"in b&&(l.clearDepth(+b.depth),c|=256);"stencil"in b&&(l.clearStencil(b.stencil|0),c|=1024);l.clear(c)}function v(a){E.push(a);c();
24942
- return{cancel:function(){function b(){var a=Bb(E,b);E[a]=E[E.length-1];--E.length;0>=E.length&&e()}var c=Bb(E,a);E[c]=b}}}function k(){var a=Q.viewport,b=Q.scissor_box;a[0]=a[1]=b[0]=b[1]=0;H.viewportWidth=H.framebufferWidth=H.drawingBufferWidth=a[2]=b[2]=l.drawingBufferWidth;H.viewportHeight=H.framebufferHeight=H.drawingBufferHeight=a[3]=b[3]=l.drawingBufferHeight}function u(){H.tick+=1;H.time=x();k();I.procs.poll()}function m(){A.refresh();k();I.procs.refresh();t&&t.update()}function x(){return(Cb()-
24943
- G)/1E3}a=Hb(a);if(!a)return null;var l=a.gl,g=l.getContextAttributes();l.isContextLost();var h=Ib(l,a);if(!h)return null;var r=Eb(),p={vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0},w=h.extensions,t=$b(l,w),G=Cb(),C=l.drawingBufferWidth,J=l.drawingBufferHeight,H={tick:0,time:0,viewportWidth:C,viewportHeight:J,framebufferWidth:C,framebufferHeight:J,drawingBufferWidth:C,drawingBufferHeight:J,pixelRatio:a.pixelRatio},
24944
- C={elements:null,primitive:4,count:-1,offset:0,instances:-1},M=Yb(l,w),y=Jb(l,p,a,function(a){return K.destroyBuffer(a)}),T=Kb(l,w,y,p),K=Sb(l,w,M,p,y,T,C),F=Tb(l,r,p,a),A=Nb(l,w,M,function(){I.procs.poll()},H,p,a),O=Zb(l,w,M,p,a),S=Rb(l,w,M,A,O,p),I=Wb(l,r,w,M,y,T,A,S,{},K,F,C,H,t,a),r=Ub(l,S,I.procs.poll,H,g,w,M),Q=I.next,N=l.canvas,E=[],R=[],U=[],Z=[a.onDestroy],ca=null;N&&(N.addEventListener("webglcontextlost",f,!1),N.addEventListener("webglcontextrestored",d,!1));var aa=S.setFBO=q({framebuffer:Y.define.call(null,
24945
- 1,"framebuffer")});m();g=L(q,{clear:function(a){if("framebuffer"in a)if(a.framebuffer&&"framebufferCube"===a.framebuffer_reglType)for(var b=0;6>b;++b)aa(L({framebuffer:a.framebuffer.faces[b]},a),n);else aa(a,n);else n(null,a)},prop:Y.define.bind(null,1),context:Y.define.bind(null,2),"this":Y.define.bind(null,3),draw:q({}),buffer:function(a){return y.create(a,34962,!1,!1)},elements:function(a){return T.create(a,!1)},texture:A.create2D,cube:A.createCube,renderbuffer:O.create,framebuffer:S.create,framebufferCube:S.createCube,
24946
- vao:K.createVAO,attributes:g,frame:v,on:function(a,b){var c;switch(a){case "frame":return v(b);case "lost":c=R;break;case "restore":c=U;break;case "destroy":c=Z}c.push(b);return{cancel:function(){for(var a=0;a<c.length;++a)if(c[a]===b){c[a]=c[c.length-1];c.pop();break}}}},limits:M,hasExtension:function(a){return 0<=M.extensions.indexOf(a.toLowerCase())},read:r,destroy:function(){E.length=0;e();N&&(N.removeEventListener("webglcontextlost",f),N.removeEventListener("webglcontextrestored",d));F.clear();
24947
- S.clear();O.clear();K.clear();A.clear();T.clear();y.clear();t&&t.clear();Z.forEach(function(a){a()})},_gl:l,_refresh:m,poll:function(){u();t&&t.update()},now:x,stats:p});a.onDone(null,g);return g}});
24777
+ (function(da,ea){"object"===typeof exports&&"undefined"!==typeof module?module.exports=ea():"function"===typeof define&&define.amd?define(ea):da.createREGL=ea()})(this,function(){function da(a,b){this.id=Db++;this.type=a;this.data=b}function ea(a){if(0===a.length)return[];var b=a.charAt(0),c=a.charAt(a.length-1);if(1<a.length&&b===c&&('"'===b||"'"===b))return['"'+a.substr(1,a.length-2).replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"'];if(b=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(a))return ea(a.substr(0,
24778
+ b.index)).concat(ea(b[1])).concat(ea(a.substr(b.index+b[0].length)));b=a.split(".");if(1===b.length)return['"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"'];a=[];for(c=0;c<b.length;++c)a=a.concat(ea(b[c]));return a}function bb(a){return"["+ea(a).join("][")+"]"}function cb(a,b){if("function"===typeof a)return new da(0,a);if("number"===typeof a||"boolean"===typeof a)return new da(5,a);if(Array.isArray(a))return new da(6,a.map(function(a,d){return cb(a,b+"["+d+"]")}));if(a instanceof da)return a}
24779
+ function Eb(){var a={"":0},b=[""];return{id:function(c){var d=a[c];if(d)return d;d=a[c]=b.length;b.push(c);return d},str:function(a){return b[a]}}}function Fb(a,b,c){function d(){var b=window.innerWidth,d=window.innerHeight;a!==document.body&&(d=f.getBoundingClientRect(),b=d.right-d.left,d=d.bottom-d.top);f.width=c*b;f.height=c*d}var f=document.createElement("canvas");O(f.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"});a.appendChild(f);a===document.body&&(f.style.position=
24780
+ "absolute",O(a.style,{margin:0,padding:0}));var e;a!==document.body&&"function"===typeof ResizeObserver?(e=new ResizeObserver(function(){setTimeout(d)}),e.observe(a)):window.addEventListener("resize",d,!1);d();return{canvas:f,onDestroy:function(){e?e.disconnect():window.removeEventListener("resize",d);a.removeChild(f)}}}function Gb(a,b){function c(c){try{return a.getContext(c,b)}catch(f){return null}}return c("webgl")||c("experimental-webgl")||c("webgl-experimental")}function db(a){return"string"===
24781
+ typeof a?a.split():a}function eb(a){return"string"===typeof a?document.querySelector(a):a}function Hb(a){var b=a||{},c,d,f,e;a={};var m=[],q=[],u="undefined"===typeof window?1:window.devicePixelRatio,r=!1,k={},n=function(a){},t=function(){};"string"===typeof b?c=document.querySelector(b):"object"===typeof b&&("string"===typeof b.nodeName&&"function"===typeof b.appendChild&&"function"===typeof b.getBoundingClientRect?c=b:"function"===typeof b.drawArrays||"function"===typeof b.drawElements?(e=b,f=e.canvas):
24782
+ ("gl"in b?e=b.gl:"canvas"in b?f=eb(b.canvas):"container"in b&&(d=eb(b.container)),"attributes"in b&&(a=b.attributes),"extensions"in b&&(m=db(b.extensions)),"optionalExtensions"in b&&(q=db(b.optionalExtensions)),"onDone"in b&&(n=b.onDone),"profile"in b&&(r=!!b.profile),"pixelRatio"in b&&(u=+b.pixelRatio),"cachedCode"in b&&(k=b.cachedCode)));c&&("canvas"===c.nodeName.toLowerCase()?f=c:d=c);if(!e){if(!f){c=Fb(d||document.body,n,u);if(!c)return null;f=c.canvas;t=c.onDestroy}void 0===a.premultipliedAlpha&&
24783
+ (a.premultipliedAlpha=!0);e=Gb(f,a)}return e?{gl:e,canvas:f,container:d,extensions:m,optionalExtensions:q,pixelRatio:u,profile:r,cachedCode:k,onDone:n,onDestroy:t}:(t(),n("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function Ib(a,b){function c(b){b=b.toLowerCase();var c;try{c=d[b]=a.getExtension(b)}catch(f){}return!!c}for(var d={},f=0;f<b.extensions.length;++f){var e=b.extensions[f];if(!c(e))return b.onDestroy(),b.onDone('"'+e+'" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),
24784
+ null}b.optionalExtensions.forEach(c);return{extensions:d,restore:function(){Object.keys(d).forEach(function(a){if(d[a]&&!c(a))throw Error("(regl): error restoring extension "+a);})}}}function S(a,b){for(var c=Array(a),d=0;d<a;++d)c[d]=b(d);return c}function fb(a){var b,c;b=(65535<a)<<4;a>>>=b;c=(255<a)<<3;a>>>=c;b|=c;c=(15<a)<<2;a>>>=c;b|=c;c=(3<a)<<1;return b|c|a>>>c>>1}function gb(){function a(a){a:{for(var b=16;268435456>=b;b*=16)if(a<=b){a=b;break a}a=0}b=c[fb(a)>>2];return 0<b.length?b.pop():
24785
+ new ArrayBuffer(a)}function b(a){c[fb(a.byteLength)>>2].push(a)}var c=S(8,function(){return[]});return{alloc:a,free:b,allocType:function(b,c){var e=null;switch(b){case 5120:e=new Int8Array(a(c),0,c);break;case 5121:e=new Uint8Array(a(c),0,c);break;case 5122:e=new Int16Array(a(2*c),0,c);break;case 5123:e=new Uint16Array(a(2*c),0,c);break;case 5124:e=new Int32Array(a(4*c),0,c);break;case 5125:e=new Uint32Array(a(4*c),0,c);break;case 5126:e=new Float32Array(a(4*c),0,c);break;default:return null}return e.length!==
24786
+ c?e.subarray(0,c):e},freeType:function(a){b(a.buffer)}}}function fa(a){return!!a&&"object"===typeof a&&Array.isArray(a.shape)&&Array.isArray(a.stride)&&"number"===typeof a.offset&&a.shape.length===a.stride.length&&(Array.isArray(a.data)||P(a.data))}function hb(a,b,c,d,f,e){for(var m=0;m<b;++m)for(var q=a[m],u=0;u<c;++u)for(var r=q[u],k=0;k<d;++k)f[e++]=r[k]}function ib(a,b,c,d,f){for(var e=1,m=c+1;m<b.length;++m)e*=b[m];var q=b[c];if(4===b.length-c){var u=b[c+1],r=b[c+2];b=b[c+3];for(m=0;m<q;++m)hb(a[m],
24787
+ u,r,b,d,f),f+=e}else for(m=0;m<q;++m)ib(a[m],b,c+1,d,f),f+=e}function Ha(a){return Ia[Object.prototype.toString.call(a)]|0}function jb(a,b){for(var c=0;c<b.length;++c)a[c]=b[c]}function kb(a,b,c,d,f,e,m){for(var q=0,u=0;u<c;++u)for(var r=0;r<d;++r)a[q++]=b[f*u+e*r+m]}function Jb(a,b,c,d){function f(b){this.id=u++;this.buffer=a.createBuffer();this.type=b;this.usage=35044;this.byteLength=0;this.dimension=1;this.dtype=5121;this.persistentData=null;c.profile&&(this.stats={size:0})}function e(b,c,d){b.byteLength=
24788
+ c.byteLength;a.bufferData(b.type,c,d)}function m(a,b,c,d,h,p){a.usage=c;if(Array.isArray(b)){if(a.dtype=d||5126,0<b.length)if(Array.isArray(b[0])){h=lb(b);for(var y=d=1;y<h.length;++y)d*=h[y];a.dimension=d;b=Ua(b,h,a.dtype);e(a,b,c);p?a.persistentData=b:B.freeType(b)}else"number"===typeof b[0]?(a.dimension=h,h=B.allocType(a.dtype,b.length),jb(h,b),e(a,h,c),p?a.persistentData=h:B.freeType(h)):P(b[0])&&(a.dimension=b[0].length,a.dtype=d||Ha(b[0])||5126,b=Ua(b,[b.length,b[0].length],a.dtype),e(a,b,c),
24789
+ p?a.persistentData=b:B.freeType(b))}else if(P(b))a.dtype=d||Ha(b),a.dimension=h,e(a,b,c),p&&(a.persistentData=new Uint8Array(new Uint8Array(b.buffer)));else if(fa(b)){h=b.shape;var f=b.stride,y=b.offset,w=0,z=0,k=0,m=0;1===h.length?(w=h[0],z=1,k=f[0],m=0):2===h.length&&(w=h[0],z=h[1],k=f[0],m=f[1]);a.dtype=d||Ha(b.data)||5126;a.dimension=z;h=B.allocType(a.dtype,w*z);kb(h,b.data,w,z,k,m,y);e(a,h,c);p?a.persistentData=h:B.freeType(h)}else b instanceof ArrayBuffer&&(a.dtype=5121,a.dimension=h,e(a,b,
24790
+ c),p&&(a.persistentData=new Uint8Array(new Uint8Array(b))))}function q(c){b.bufferCount--;d(c);a.deleteBuffer(c.buffer);c.buffer=null;delete r[c.id]}var u=0,r={};f.prototype.bind=function(){a.bindBuffer(this.type,this.buffer)};f.prototype.destroy=function(){q(this)};var k=[];c.profile&&(b.getTotalBufferSize=function(){var a=0;Object.keys(r).forEach(function(b){a+=r[b].stats.size});return a});return{create:function(d,e,g,l){function h(b){var d=35044,n=null,g=0,e=0,f=1;Array.isArray(b)||P(b)||fa(b)||
24791
+ b instanceof ArrayBuffer?n=b:"number"===typeof b?g=b|0:b&&("data"in b&&(n=b.data),"usage"in b&&(d=mb[b.usage]),"type"in b&&(e=Ja[b.type]),"dimension"in b&&(f=b.dimension|0),"length"in b&&(g=b.length|0));p.bind();n?m(p,n,d,e,f,l):(g&&a.bufferData(p.type,g,d),p.dtype=e||5121,p.usage=d,p.dimension=f,p.byteLength=g);c.profile&&(p.stats.size=p.byteLength*ja[p.dtype]);return h}b.bufferCount++;var p=new f(e);r[p.id]=p;g||h(d);h._reglType="buffer";h._buffer=p;h.subdata=function(b,c){var d=(c||0)|0,n;p.bind();
24792
+ if(P(b)||b instanceof ArrayBuffer)a.bufferSubData(p.type,d,b);else if(Array.isArray(b)){if(0<b.length)if("number"===typeof b[0]){var g=B.allocType(p.dtype,b.length);jb(g,b);a.bufferSubData(p.type,d,g);B.freeType(g)}else if(Array.isArray(b[0])||P(b[0]))n=lb(b),g=Ua(b,n,p.dtype),a.bufferSubData(p.type,d,g),B.freeType(g)}else if(fa(b)){n=b.shape;var e=b.stride,l=g=0,f=0,v=0;1===n.length?(g=n[0],l=1,f=e[0],v=0):2===n.length&&(g=n[0],l=n[1],f=e[0],v=e[1]);n=Array.isArray(b.data)?p.dtype:Ha(b.data);n=B.allocType(n,
24793
+ g*l);kb(n,b.data,g,l,f,v,b.offset);a.bufferSubData(p.type,d,n);B.freeType(n)}return h};c.profile&&(h.stats=p.stats);h.destroy=function(){q(p)};return h},createStream:function(a,b){var c=k.pop();c||(c=new f(a));c.bind();m(c,b,35040,0,1,!1);return c},destroyStream:function(a){k.push(a)},clear:function(){T(r).forEach(q);k.forEach(q)},getBuffer:function(a){return a&&a._buffer instanceof f?a._buffer:null},restore:function(){T(r).forEach(function(b){b.buffer=a.createBuffer();a.bindBuffer(b.type,b.buffer);
24794
+ a.bufferData(b.type,b.persistentData||b.byteLength,b.usage)})},_initBuffer:m}}function Kb(a,b,c,d){function f(a){this.id=u++;q[this.id]=this;this.buffer=a;this.primType=4;this.type=this.vertCount=0}function e(d,e,g,l,h,f,y){d.buffer.bind();var k;e?((k=y)||P(e)&&(!fa(e)||P(e.data))||(k=b.oes_element_index_uint?5125:5123),c._initBuffer(d.buffer,e,g,k,3)):(a.bufferData(34963,f,g),d.buffer.dtype=k||5121,d.buffer.usage=g,d.buffer.dimension=3,d.buffer.byteLength=f);k=y;if(!y){switch(d.buffer.dtype){case 5121:case 5120:k=
24795
+ 5121;break;case 5123:case 5122:k=5123;break;case 5125:case 5124:k=5125}d.buffer.dtype=k}d.type=k;e=h;0>e&&(e=d.buffer.byteLength,5123===k?e>>=1:5125===k&&(e>>=2));d.vertCount=e;e=l;0>l&&(e=4,l=d.buffer.dimension,1===l&&(e=0),2===l&&(e=1),3===l&&(e=4));d.primType=e}function m(a){d.elementsCount--;delete q[a.id];a.buffer.destroy();a.buffer=null}var q={},u=0,r={uint8:5121,uint16:5123};b.oes_element_index_uint&&(r.uint32=5125);f.prototype.bind=function(){this.buffer.bind()};var k=[];return{create:function(a,
24796
+ b){function g(a){if(a)if("number"===typeof a)l(a),h.primType=4,h.vertCount=a|0,h.type=5121;else{var b=null,c=35044,d=-1,f=-1,n=0,k=0;if(Array.isArray(a)||P(a)||fa(a))b=a;else if("data"in a&&(b=a.data),"usage"in a&&(c=mb[a.usage]),"primitive"in a&&(d=Ka[a.primitive]),"count"in a&&(f=a.count|0),"type"in a&&(k=r[a.type]),"length"in a)n=a.length|0;else if(n=f,5123===k||5122===k)n*=2;else if(5125===k||5124===k)n*=4;e(h,b,c,d,f,n,k)}else l(),h.primType=4,h.vertCount=0,h.type=5121;return g}var l=c.create(null,
24797
+ 34963,!0),h=new f(l._buffer);d.elementsCount++;g(a);g._reglType="elements";g._elements=h;g.subdata=function(a,b){l.subdata(a,b);return g};g.destroy=function(){m(h)};return g},createStream:function(a){var b=k.pop();b||(b=new f(c.create(null,34963,!0,!1)._buffer));e(b,a,35040,-1,-1,0,0);return b},destroyStream:function(a){k.push(a)},getElements:function(a){return"function"===typeof a&&a._elements instanceof f?a._elements:null},clear:function(){T(q).forEach(m)}}}function ob(a){for(var b=B.allocType(5123,
24798
+ a.length),c=0;c<a.length;++c)if(isNaN(a[c]))b[c]=65535;else if(Infinity===a[c])b[c]=31744;else if(-Infinity===a[c])b[c]=64512;else{pb[0]=a[c];var d=Lb[0],f=d>>>31<<15,e=(d<<1>>>24)-127,d=d>>13&1023;b[c]=-24>e?f:-14>e?f+(d+1024>>-14-e):15<e?f+31744:f+(e+15<<10)+d}return b}function qa(a){return Array.isArray(a)||P(a)}function ra(a){return"[object "+a+"]"}function qb(a){return Array.isArray(a)&&(0===a.length||"number"===typeof a[0])}function rb(a){return Array.isArray(a)&&0!==a.length&&qa(a[0])?!0:!1}
24799
+ function R(a){return Object.prototype.toString.call(a)}function Va(a){if(!a)return!1;var b=R(a);return 0<=Mb.indexOf(b)?!0:qb(a)||rb(a)||fa(a)}function sb(a,b){36193===a.type?(a.data=ob(b),B.freeType(b)):a.data=b}function La(a,b,c,d,f,e){a="undefined"!==typeof G[a]?G[a]:U[a]*ya[b];e&&(a*=6);if(f){for(d=0;1<=c;)d+=a*c*c,c/=2;return d}return a*c*d}function Nb(a,b,c,d,f,e,m){function q(){this.format=this.internalformat=6408;this.type=5121;this.flipY=this.premultiplyAlpha=this.compressed=!1;this.unpackAlignment=
24800
+ 1;this.colorSpace=37444;this.channels=this.height=this.width=0}function u(a,b){a.internalformat=b.internalformat;a.format=b.format;a.type=b.type;a.compressed=b.compressed;a.premultiplyAlpha=b.premultiplyAlpha;a.flipY=b.flipY;a.unpackAlignment=b.unpackAlignment;a.colorSpace=b.colorSpace;a.width=b.width;a.height=b.height;a.channels=b.channels}function r(a,b){if("object"===typeof b&&b){"premultiplyAlpha"in b&&(a.premultiplyAlpha=b.premultiplyAlpha);"flipY"in b&&(a.flipY=b.flipY);"alignment"in b&&(a.unpackAlignment=
24801
+ b.alignment);"colorSpace"in b&&(a.colorSpace=Ob[b.colorSpace]);"type"in b&&(a.type=W[b.type]);var c=a.width,d=a.height,e=a.channels,h=!1;"shape"in b?(c=b.shape[0],d=b.shape[1],3===b.shape.length&&(e=b.shape[2],h=!0)):("radius"in b&&(c=d=b.radius),"width"in b&&(c=b.width),"height"in b&&(d=b.height),"channels"in b&&(e=b.channels,h=!0));a.width=c|0;a.height=d|0;a.channels=e|0;c=!1;"format"in b&&(c=b.format,d=a.internalformat=Q[c],a.format=Ea[d],c in W&&!("type"in b)&&(a.type=W[c]),c in I&&(a.compressed=
24802
+ !0),c=!0);!h&&c?a.channels=U[a.format]:h&&!c&&a.channels!==Na[a.format]&&(a.format=a.internalformat=Na[a.channels])}}function k(b){a.pixelStorei(37440,b.flipY);a.pixelStorei(37441,b.premultiplyAlpha);a.pixelStorei(37443,b.colorSpace);a.pixelStorei(3317,b.unpackAlignment)}function n(){q.call(this);this.yOffset=this.xOffset=0;this.data=null;this.needsFree=!1;this.element=null;this.needsCopy=!1}function t(a,b){var c=null;Va(b)?c=b:b&&(r(a,b),"x"in b&&(a.xOffset=b.x|0),"y"in b&&(a.yOffset=b.y|0),Va(b.data)&&
24803
+ (c=b.data));if(b.copy){var d=f.viewportWidth,e=f.viewportHeight;a.width=a.width||d-a.xOffset;a.height=a.height||e-a.yOffset;a.needsCopy=!0}else if(!c)a.width=a.width||1,a.height=a.height||1,a.channels=a.channels||4;else if(P(c))a.channels=a.channels||4,a.data=c,"type"in b||5121!==a.type||(a.type=Ia[Object.prototype.toString.call(c)]|0);else if(qb(c)){a.channels=a.channels||4;d=c;e=d.length;switch(a.type){case 5121:case 5123:case 5125:case 5126:e=B.allocType(a.type,e);e.set(d);a.data=e;break;case 36193:a.data=
24804
+ ob(d)}a.alignment=1;a.needsFree=!0}else if(fa(c)){d=c.data;Array.isArray(d)||5121!==a.type||(a.type=Ia[Object.prototype.toString.call(d)]|0);var e=c.shape,h=c.stride,g,l,v,k;3===e.length?(v=e[2],k=h[2]):k=v=1;g=e[0];l=e[1];e=h[0];h=h[1];a.alignment=1;a.width=g;a.height=l;a.channels=v;a.format=a.internalformat=Na[v];a.needsFree=!0;g=k;c=c.offset;v=a.width;k=a.height;l=a.channels;for(var n=B.allocType(36193===a.type?5126:a.type,v*k*l),x=0,F=0;F<k;++F)for(var aa=0;aa<v;++aa)for(var Fa=0;Fa<l;++Fa)n[x++]=
24805
+ d[e*aa+h*F+g*Fa+c];sb(a,n)}else if(R(c)===Wa||R(c)===Xa||R(c)===ub)R(c)===Wa||R(c)===Xa?a.element=c:a.element=c.canvas,a.width=a.element.width,a.height=a.element.height,a.channels=4;else if(R(c)===vb)a.element=c,a.width=c.width,a.height=c.height,a.channels=4;else if(R(c)===wb)a.element=c,a.width=c.naturalWidth,a.height=c.naturalHeight,a.channels=4;else if(R(c)===xb)a.element=c,a.width=c.videoWidth,a.height=c.videoHeight,a.channels=4;else if(rb(c)){d=a.width||c[0].length;e=a.height||c.length;h=a.channels;
24806
+ h=qa(c[0][0])?h||c[0][0].length:h||1;g=Pa.shape(c);v=1;for(k=0;k<g.length;++k)v*=g[k];v=B.allocType(36193===a.type?5126:a.type,v);Pa.flatten(c,g,"",v);sb(a,v);a.alignment=1;a.width=d;a.height=e;a.channels=h;a.format=a.internalformat=Na[h];a.needsFree=!0}}function g(b,c,e,h,g){var v=b.element,l=b.data,f=b.internalformat,n=b.format,y=b.type,w=b.width,x=b.height;k(b);v?a.texSubImage2D(c,g,e,h,n,y,v):b.compressed?a.compressedTexSubImage2D(c,g,e,h,f,w,x,l):b.needsCopy?(d(),a.copyTexSubImage2D(c,g,e,h,
24807
+ b.xOffset,b.yOffset,w,x)):a.texSubImage2D(c,g,e,h,w,x,n,y,l)}function l(){return Qa.pop()||new n}function h(a){a.needsFree&&B.freeType(a.data);n.call(a);Qa.push(a)}function p(){q.call(this);this.genMipmaps=!1;this.mipmapHint=4352;this.mipmask=0;this.images=Array(16)}function y(a,b,c){var d=a.images[0]=l();a.mipmask=1;d.width=a.width=b;d.height=a.height=c;d.channels=a.channels=4}function C(a,b){var c=null;if(Va(b))c=a.images[0]=l(),u(c,a),t(c,b),a.mipmask=1;else if(r(a,b),Array.isArray(b.mipmap))for(var d=
24808
+ b.mipmap,e=0;e<d.length;++e)c=a.images[e]=l(),u(c,a),c.width>>=e,c.height>>=e,t(c,d[e]),a.mipmask|=1<<e;else c=a.images[0]=l(),u(c,a),t(c,b),a.mipmask=1;u(a,a.images[0])}function w(b,c){for(var e=b.images,h=0;h<e.length&&e[h];++h){var g=e[h],v=c,l=h,f=g.element,n=g.data,y=g.internalformat,w=g.format,x=g.type,F=g.width,aa=g.height;k(g);f?a.texImage2D(v,l,w,w,x,f):g.compressed?a.compressedTexImage2D(v,l,y,F,aa,0,n):g.needsCopy?(d(),a.copyTexImage2D(v,l,w,g.xOffset,g.yOffset,F,aa,0)):a.texImage2D(v,
24809
+ l,w,F,aa,0,w,x,n||null)}}function z(){var a=S.pop()||new p;q.call(a);for(var b=a.mipmask=0;16>b;++b)a.images[b]=null;return a}function wa(a){for(var b=a.images,c=0;c<b.length;++c)b[c]&&h(b[c]),b[c]=null;S.push(a)}function E(){this.magFilter=this.minFilter=9728;this.wrapT=this.wrapS=33071;this.anisotropic=1;this.genMipmaps=!1;this.mipmapHint=4352}function nb(a,b){"min"in b&&(a.minFilter=V[b.min],0<=Pb.indexOf(a.minFilter)&&!("faces"in b)&&(a.genMipmaps=!0));"mag"in b&&(a.magFilter=na[b.mag]);var c=
24810
+ a.wrapS,d=a.wrapT;if("wrap"in b){var e=b.wrap;"string"===typeof e?c=d=oa[e]:Array.isArray(e)&&(c=oa[e[0]],d=oa[e[1]])}else"wrapS"in b&&(c=oa[b.wrapS]),"wrapT"in b&&(d=oa[b.wrapT]);a.wrapS=c;a.wrapT=d;"anisotropic"in b&&(a.anisotropic=b.anisotropic);if("mipmap"in b){c=!1;switch(typeof b.mipmap){case "string":a.mipmapHint=J[b.mipmap];c=a.genMipmaps=!0;break;case "boolean":c=a.genMipmaps=b.mipmap;break;case "object":a.genMipmaps=!1,c=!0}!c||"min"in b||(a.minFilter=9984)}}function D(c,d){a.texParameteri(d,
24811
+ 10241,c.minFilter);a.texParameteri(d,10240,c.magFilter);a.texParameteri(d,10242,c.wrapS);a.texParameteri(d,10243,c.wrapT);b.ext_texture_filter_anisotropic&&a.texParameteri(d,34046,c.anisotropic);c.genMipmaps&&(a.hint(33170,c.mipmapHint),a.generateMipmap(d))}function v(b){q.call(this);this.mipmask=0;this.internalformat=6408;this.id=Z++;this.refCount=1;this.target=b;this.texture=a.createTexture();this.unit=-1;this.bindCount=0;this.texInfo=new E;m.profile&&(this.stats={size:0})}function ba(b){a.activeTexture(33984);
24812
+ a.bindTexture(b.target,b.texture)}function za(){var b=X[0];b?a.bindTexture(b.target,b.texture):a.bindTexture(3553,null)}function A(b){var c=b.texture,d=b.unit,h=b.target;0<=d&&(a.activeTexture(33984+d),a.bindTexture(h,null),X[d]=null);a.deleteTexture(c);b.texture=null;b.params=null;b.pixels=null;b.refCount=0;delete ka[b.id];e.textureCount--}var J={"don't care":4352,"dont care":4352,nice:4354,fast:4353},oa={repeat:10497,clamp:33071,mirror:33648},na={nearest:9728,linear:9729},V=O({mipmap:9987,"nearest mipmap nearest":9984,
24813
+ "linear mipmap nearest":9985,"nearest mipmap linear":9986,"linear mipmap linear":9987},na),Ob={none:0,browser:37444},W={uint8:5121,rgba4:32819,rgb565:33635,"rgb5 a1":32820},Q={alpha:6406,luminance:6409,"luminance alpha":6410,rgb:6407,rgba:6408,rgba4:32854,"rgb5 a1":32855,rgb565:36194},I={};b.ext_srgb&&(Q.srgb=35904,Q.srgba=35906);b.oes_texture_float&&(W.float32=W["float"]=5126);b.oes_texture_half_float&&(W.float16=W["half float"]=36193);b.webgl_depth_texture&&(O(Q,{depth:6402,"depth stencil":34041}),
24814
+ O(W,{uint16:5123,uint32:5125,"depth stencil":34042}));b.webgl_compressed_texture_s3tc&&O(I,{"rgb s3tc dxt1":33776,"rgba s3tc dxt1":33777,"rgba s3tc dxt3":33778,"rgba s3tc dxt5":33779});b.webgl_compressed_texture_atc&&O(I,{"rgb atc":35986,"rgba atc explicit alpha":35987,"rgba atc interpolated alpha":34798});b.webgl_compressed_texture_pvrtc&&O(I,{"rgb pvrtc 4bppv1":35840,"rgb pvrtc 2bppv1":35841,"rgba pvrtc 4bppv1":35842,"rgba pvrtc 2bppv1":35843});b.webgl_compressed_texture_etc1&&(I["rgb etc1"]=36196);
24815
+ var K=Array.prototype.slice.call(a.getParameter(34467));Object.keys(I).forEach(function(a){var b=I[a];0<=K.indexOf(b)&&(Q[a]=b)});var G=Object.keys(Q);c.textureFormats=G;var H=[];Object.keys(Q).forEach(function(a){H[Q[a]]=a});var xa=[];Object.keys(W).forEach(function(a){xa[W[a]]=a});var L=[];Object.keys(na).forEach(function(a){L[na[a]]=a});var pa=[];Object.keys(V).forEach(function(a){pa[V[a]]=a});var ga=[];Object.keys(oa).forEach(function(a){ga[oa[a]]=a});var Ea=G.reduce(function(a,c){var d=Q[c];
24816
+ 6409===d||6406===d||6409===d||6410===d||6402===d||34041===d||b.ext_srgb&&(35904===d||35906===d)?a[d]=d:32855===d||0<=c.indexOf("rgba")?a[d]=6408:a[d]=6407;return a},{}),Qa=[],S=[],Z=0,ka={},ha=c.maxTextureUnits,X=Array(ha).map(function(){return null});O(v.prototype,{bind:function(){this.bindCount+=1;var b=this.unit;if(0>b){for(var c=0;c<ha;++c){var d=X[c];if(d){if(0<d.bindCount)continue;d.unit=-1}X[c]=this;b=c;break}m.profile&&e.maxTextureUnits<b+1&&(e.maxTextureUnits=b+1);this.unit=b;a.activeTexture(33984+
24817
+ b);a.bindTexture(this.target,this.texture)}return b},unbind:function(){--this.bindCount},decRef:function(){0>=--this.refCount&&A(this)}});m.profile&&(e.getTotalTextureSize=function(){var a=0;Object.keys(ka).forEach(function(b){a+=ka[b].stats.size});return a});return{create2D:function(b,c){function d(a,b){var c=f.texInfo;E.call(c);var e=z();"number"===typeof a?"number"===typeof b?y(e,a|0,b|0):y(e,a|0,a|0):a?(nb(c,a),C(e,a)):y(e,1,1);c.genMipmaps&&(e.mipmask=(e.width<<1)-1);f.mipmask=e.mipmask;u(f,
24818
+ e);f.internalformat=e.internalformat;d.width=e.width;d.height=e.height;ba(f);w(e,3553);D(c,3553);za();wa(e);m.profile&&(f.stats.size=La(f.internalformat,f.type,e.width,e.height,c.genMipmaps,!1));d.format=H[f.internalformat];d.type=xa[f.type];d.mag=L[c.magFilter];d.min=pa[c.minFilter];d.wrapS=ga[c.wrapS];d.wrapT=ga[c.wrapT];return d}var f=new v(3553);ka[f.id]=f;e.textureCount++;d(b,c);d.subimage=function(a,b,c,e){b|=0;c|=0;e|=0;var v=l();u(v,f);v.width=0;v.height=0;t(v,a);v.width=v.width||(f.width>>
24819
+ e)-b;v.height=v.height||(f.height>>e)-c;ba(f);g(v,3553,b,c,e);za();h(v);return d};d.resize=function(b,c){var e=b|0,h=c|0||e;if(e===f.width&&h===f.height)return d;d.width=f.width=e;d.height=f.height=h;ba(f);for(var g=0;f.mipmask>>g;++g){var v=e>>g,l=h>>g;if(!v||!l)break;a.texImage2D(3553,g,f.format,v,l,0,f.format,f.type,null)}za();m.profile&&(f.stats.size=La(f.internalformat,f.type,e,h,!1,!1));return d};d._reglType="texture2d";d._texture=f;m.profile&&(d.stats=f.stats);d.destroy=function(){f.decRef()};
24820
+ return d},createCube:function(b,c,d,f,k,n){function p(a,b,c,d,e,h){var f,g=A.texInfo;E.call(g);for(f=0;6>f;++f)J[f]=z();if("number"===typeof a||!a)for(a=a|0||1,f=0;6>f;++f)y(J[f],a,a);else if("object"===typeof a)if(b)C(J[0],a),C(J[1],b),C(J[2],c),C(J[3],d),C(J[4],e),C(J[5],h);else if(nb(g,a),r(A,a),"faces"in a)for(a=a.faces,f=0;6>f;++f)u(J[f],A),C(J[f],a[f]);else for(f=0;6>f;++f)C(J[f],a);u(A,J[0]);A.mipmask=g.genMipmaps?(J[0].width<<1)-1:J[0].mipmask;A.internalformat=J[0].internalformat;p.width=
24821
+ J[0].width;p.height=J[0].height;ba(A);for(f=0;6>f;++f)w(J[f],34069+f);D(g,34067);za();m.profile&&(A.stats.size=La(A.internalformat,A.type,p.width,p.height,g.genMipmaps,!0));p.format=H[A.internalformat];p.type=xa[A.type];p.mag=L[g.magFilter];p.min=pa[g.minFilter];p.wrapS=ga[g.wrapS];p.wrapT=ga[g.wrapT];for(f=0;6>f;++f)wa(J[f]);return p}var A=new v(34067);ka[A.id]=A;e.cubeCount++;var J=Array(6);p(b,c,d,f,k,n);p.subimage=function(a,b,c,d,e){c|=0;d|=0;e|=0;var f=l();u(f,A);f.width=0;f.height=0;t(f,b);
24822
+ f.width=f.width||(A.width>>e)-c;f.height=f.height||(A.height>>e)-d;ba(A);g(f,34069+a,c,d,e);za();h(f);return p};p.resize=function(b){b|=0;if(b!==A.width){p.width=A.width=b;p.height=A.height=b;ba(A);for(var c=0;6>c;++c)for(var x=0;A.mipmask>>x;++x)a.texImage2D(34069+c,x,A.format,b>>x,b>>x,0,A.format,A.type,null);za();m.profile&&(A.stats.size=La(A.internalformat,A.type,p.width,p.height,!1,!0));return p}};p._reglType="textureCube";p._texture=A;m.profile&&(p.stats=A.stats);p.destroy=function(){A.decRef()};
24823
+ return p},clear:function(){for(var b=0;b<ha;++b)a.activeTexture(33984+b),a.bindTexture(3553,null),X[b]=null;T(ka).forEach(A);e.cubeCount=0;e.textureCount=0},getTexture:function(a){return null},restore:function(){for(var b=0;b<ha;++b){var c=X[b];c&&(c.bindCount=0,c.unit=-1,X[b]=null)}T(ka).forEach(function(b){b.texture=a.createTexture();a.bindTexture(b.target,b.texture);for(var c=0;32>c;++c)if(0!==(b.mipmask&1<<c))if(3553===b.target)a.texImage2D(3553,c,b.internalformat,b.width>>c,b.height>>c,0,b.internalformat,
24824
+ b.type,null);else for(var d=0;6>d;++d)a.texImage2D(34069+d,c,b.internalformat,b.width>>c,b.height>>c,0,b.internalformat,b.type,null);D(b.texInfo,b.target)})},refresh:function(){for(var b=0;b<ha;++b){var c=X[b];c&&(c.bindCount=0,c.unit=-1,X[b]=null);a.activeTexture(33984+b);a.bindTexture(3553,null);a.bindTexture(34067,null)}}}}function Qb(a,b,c,d,f,e){function m(a,b,c){this.target=a;this.texture=b;this.renderbuffer=c;var d=a=0;b?(a=b.width,d=b.height):c&&(a=c.width,d=c.height);this.width=a;this.height=
24825
+ d}function q(a){a&&(a.texture&&a.texture._texture.decRef(),a.renderbuffer&&a.renderbuffer._renderbuffer.decRef())}function u(a,b,c){a&&(a.texture?a.texture._texture.refCount+=1:a.renderbuffer._renderbuffer.refCount+=1)}function r(b,c){c&&(c.texture?a.framebufferTexture2D(36160,b,c.target,c.texture._texture.texture,0):a.framebufferRenderbuffer(36160,b,36161,c.renderbuffer._renderbuffer.renderbuffer))}function k(a){var b=3553,c=null,d=null,e=a;"object"===typeof a&&(e=a.data,"target"in a&&(b=a.target|
24826
+ 0));a=e._reglType;"texture2d"===a?c=e:"textureCube"===a?c=e:"renderbuffer"===a&&(d=e,b=36161);return new m(b,c,d)}function n(a,b,c,e,g){if(c)return a=d.create2D({width:a,height:b,format:e,type:g}),a._texture.refCount=0,new m(3553,a,null);a=f.create({width:a,height:b,format:e});a._renderbuffer.refCount=0;return new m(36161,null,a)}function t(a){return a&&(a.texture||a.renderbuffer)}function g(a,b,c){a&&(a.texture?a.texture.resize(b,c):a.renderbuffer&&a.renderbuffer.resize(b,c),a.width=b,a.height=c)}
24827
+ function l(){this.id=B++;D[this.id]=this;this.framebuffer=a.createFramebuffer();this.height=this.width=0;this.colorAttachments=[];this.depthStencilAttachment=this.stencilAttachment=this.depthAttachment=null}function h(a){a.colorAttachments.forEach(q);q(a.depthAttachment);q(a.stencilAttachment);q(a.depthStencilAttachment)}function p(b){a.deleteFramebuffer(b.framebuffer);b.framebuffer=null;e.framebufferCount--;delete D[b.id]}function y(b){var d;a.bindFramebuffer(36160,b.framebuffer);var e=b.colorAttachments;
24828
+ for(d=0;d<e.length;++d)r(36064+d,e[d]);for(d=e.length;d<c.maxColorAttachments;++d)a.framebufferTexture2D(36160,36064+d,3553,null,0);a.framebufferTexture2D(36160,33306,3553,null,0);a.framebufferTexture2D(36160,36096,3553,null,0);a.framebufferTexture2D(36160,36128,3553,null,0);r(36096,b.depthAttachment);r(36128,b.stencilAttachment);r(33306,b.depthStencilAttachment);a.checkFramebufferStatus(36160);a.isContextLost();a.bindFramebuffer(36160,w.next?w.next.framebuffer:null);w.cur=w.next;a.getError()}function C(a,
24829
+ b){function c(a,b){var e,f=0,g=0,l=!0,w=!0;e=null;var p=!0,v="rgba",m="uint8",r=1,C=null,q=null,pa=null,ga=!1;if("number"===typeof a)f=a|0,g=b|0||f;else if(a){"shape"in a?(g=a.shape,f=g[0],g=g[1]):("radius"in a&&(f=g=a.radius),"width"in a&&(f=a.width),"height"in a&&(g=a.height));if("color"in a||"colors"in a)e=a.color||a.colors,Array.isArray(e);if(!e){"colorCount"in a&&(r=a.colorCount|0);"colorTexture"in a&&(p=!!a.colorTexture,v="rgba4");if("colorType"in a&&(m=a.colorType,!p))if("half float"===m||
24830
+ "float16"===m)v="rgba16f";else if("float"===m||"float32"===m)v="rgba32f";"colorFormat"in a&&(v=a.colorFormat,0<=z.indexOf(v)?p=!0:0<=wa.indexOf(v)&&(p=!1))}if("depthTexture"in a||"depthStencilTexture"in a)ga=!(!a.depthTexture&&!a.depthStencilTexture);"depth"in a&&("boolean"===typeof a.depth?l=a.depth:(C=a.depth,w=!1));"stencil"in a&&("boolean"===typeof a.stencil?w=a.stencil:(q=a.stencil,l=!1));"depthStencil"in a&&("boolean"===typeof a.depthStencil?l=w=a.depthStencil:(pa=a.depthStencil,w=l=!1))}else f=
24831
+ g=1;var D=null,ba=null,E=null,B=null;if(Array.isArray(e))D=e.map(k);else if(e)D=[k(e)];else for(D=Array(r),e=0;e<r;++e)D[e]=n(f,g,p,v,m);f=f||D[0].width;g=g||D[0].height;C?ba=k(C):l&&!w&&(ba=n(f,g,ga,"depth","uint32"));q?E=k(q):w&&!l&&(E=n(f,g,!1,"stencil","uint8"));pa?B=k(pa):!C&&!q&&w&&l&&(B=n(f,g,ga,"depth stencil","depth stencil"));l=null;for(e=0;e<D.length;++e)u(D[e],f,g),D[e]&&D[e].texture&&(w=Ya[D[e].texture._texture.format]*Ra[D[e].texture._texture.type],null===l&&(l=w));u(ba,f,g);u(E,f,g);
24832
+ u(B,f,g);h(d);d.width=f;d.height=g;d.colorAttachments=D;d.depthAttachment=ba;d.stencilAttachment=E;d.depthStencilAttachment=B;c.color=D.map(t);c.depth=t(ba);c.stencil=t(E);c.depthStencil=t(B);c.width=d.width;c.height=d.height;y(d);return c}var d=new l;e.framebufferCount++;c(a,b);return O(c,{resize:function(a,b){var e=Math.max(a|0,1),f=Math.max(b|0||e,1);if(e===d.width&&f===d.height)return c;for(var h=d.colorAttachments,l=0;l<h.length;++l)g(h[l],e,f);g(d.depthAttachment,e,f);g(d.stencilAttachment,
24833
+ e,f);g(d.depthStencilAttachment,e,f);d.width=c.width=e;d.height=c.height=f;y(d);return c},_reglType:"framebuffer",_framebuffer:d,destroy:function(){p(d);h(d)},use:function(a){w.setFBO({framebuffer:c},a)}})}var w={cur:null,next:null,dirty:!1,setFBO:null},z=["rgba"],wa=["rgba4","rgb565","rgb5 a1"];b.ext_srgb&&wa.push("srgba");b.ext_color_buffer_half_float&&wa.push("rgba16f","rgb16f");b.webgl_color_buffer_float&&wa.push("rgba32f");var E=["uint8"];b.oes_texture_half_float&&E.push("half float","float16");
24834
+ b.oes_texture_float&&E.push("float","float32");var B=0,D={};return O(w,{getFramebuffer:function(a){return"function"===typeof a&&"framebuffer"===a._reglType&&(a=a._framebuffer,a instanceof l)?a:null},create:C,createCube:function(a){function b(a){var e,f={color:null},g=0,h=null;e="rgba";var l="uint8",k=1;if("number"===typeof a)g=a|0;else if(a){"shape"in a?g=a.shape[0]:("radius"in a&&(g=a.radius|0),"width"in a?g=a.width|0:"height"in a&&(g=a.height|0));if("color"in a||"colors"in a)h=a.color||a.colors,
24835
+ Array.isArray(h);h||("colorCount"in a&&(k=a.colorCount|0),"colorType"in a&&(l=a.colorType),"colorFormat"in a&&(e=a.colorFormat));"depth"in a&&(f.depth=a.depth);"stencil"in a&&(f.stencil=a.stencil);"depthStencil"in a&&(f.depthStencil=a.depthStencil)}else g=1;if(h)if(Array.isArray(h))for(a=[],e=0;e<h.length;++e)a[e]=h[e];else a=[h];else for(a=Array(k),h={radius:g,format:e,type:l},e=0;e<k;++e)a[e]=d.createCube(h);f.color=Array(a.length);for(e=0;e<a.length;++e)k=a[e],g=g||k.width,f.color[e]={target:34069,
24836
+ data:a[e]};for(e=0;6>e;++e){for(k=0;k<a.length;++k)f.color[k].target=34069+e;0<e&&(f.depth=c[0].depth,f.stencil=c[0].stencil,f.depthStencil=c[0].depthStencil);if(c[e])c[e](f);else c[e]=C(f)}return O(b,{width:g,height:g,color:a})}var c=Array(6);b(a);return O(b,{faces:c,resize:function(a){var d=a|0;if(d===b.width)return b;var e=b.color;for(a=0;a<e.length;++a)e[a].resize(d);for(a=0;6>a;++a)c[a].resize(d);b.width=b.height=d;return b},_reglType:"framebufferCube",destroy:function(){c.forEach(function(a){a.destroy()})}})},
24837
+ clear:function(){T(D).forEach(p)},restore:function(){w.cur=null;w.next=null;w.dirty=!0;T(D).forEach(function(b){b.framebuffer=a.createFramebuffer();y(b)})}})}function Za(){this.w=this.z=this.y=this.x=this.state=0;this.buffer=null;this.size=0;this.normalized=!1;this.type=5126;this.divisor=this.stride=this.offset=0}function Rb(a,b,c,d,f,e,m){function q(a){if(a!==p.currentVAO){var c=b.oes_vertex_array_object;a?c.bindVertexArrayOES(a.vao):c.bindVertexArrayOES(null);p.currentVAO=a}}function u(c){if(c!==
24838
+ p.currentVAO){if(c)c.bindAttrs();else{for(var d=b.angle_instanced_arrays,e=0;e<g.length;++e){var f=g[e];f.buffer?(a.enableVertexAttribArray(e),f.buffer.bind(),a.vertexAttribPointer(e,f.size,f.type,f.normalized,f.stride,f.offfset),d&&f.divisor&&d.vertexAttribDivisorANGLE(e,f.divisor)):(a.disableVertexAttribArray(e),a.vertexAttrib4f(e,f.x,f.y,f.z,f.w))}m.elements?a.bindBuffer(34963,m.elements.buffer.buffer):a.bindBuffer(34963,null)}p.currentVAO=c}}function r(){T(h).forEach(function(a){a.destroy()})}
24839
+ function k(){this.id=++l;this.attributes=[];this.elements=null;this.ownsElements=!1;this.offset=this.count=0;this.instances=-1;this.primitive=4;var a=b.oes_vertex_array_object;this.vao=a?a.createVertexArrayOES():null;h[this.id]=this;this.buffers=[]}function n(){b.oes_vertex_array_object&&T(h).forEach(function(a){a.refresh()})}var t=c.maxAttributes,g=Array(t);for(c=0;c<t;++c)g[c]=new Za;var l=0,h={},p={Record:Za,scope:{},state:g,currentVAO:null,targetVAO:null,restore:b.oes_vertex_array_object?n:function(){},
24840
+ createVAO:function(a){function b(a){var d;Array.isArray(a)?(d=a,c.elements&&c.ownsElements&&c.elements.destroy(),c.elements=null,c.ownsElements=!1,c.offset=0,c.count=0,c.instances=-1,c.primitive=4):(a.elements?(d=a.elements,c.ownsElements?("function"===typeof d&&"elements"===d._reglType?c.elements.destroy():c.elements(d),c.ownsElements=!1):e.getElements(a.elements)?(c.elements=a.elements,c.ownsElements=!1):(c.elements=e.create(a.elements),c.ownsElements=!0)):(c.elements=null,c.ownsElements=!1),d=
24841
+ a.attributes,c.offset=0,c.count=-1,c.instances=-1,c.primitive=4,c.elements&&(c.count=c.elements._elements.vertCount,c.primitive=c.elements._elements.primType),"offset"in a&&(c.offset=a.offset|0),"count"in a&&(c.count=a.count|0),"instances"in a&&(c.instances=a.instances|0),"primitive"in a&&(c.primitive=Ka[a.primitive]));a={};var g=c.attributes;g.length=d.length;for(var h=0;h<d.length;++h){var l=d[h],k=g[h]=new Za,n=l.data||l;if(Array.isArray(n)||P(n)||fa(n)){var p;c.buffers[h]&&(p=c.buffers[h],P(n)&&
24842
+ p._buffer.byteLength>=n.byteLength?p.subdata(n):(p.destroy(),c.buffers[h]=null));c.buffers[h]||(p=c.buffers[h]=f.create(l,34962,!1,!0));k.buffer=f.getBuffer(p);k.size=k.buffer.dimension|0;k.normalized=!1;k.type=k.buffer.dtype;k.offset=0;k.stride=0;k.divisor=0;k.state=1;a[h]=1}else f.getBuffer(l)?(k.buffer=f.getBuffer(l),k.size=k.buffer.dimension|0,k.normalized=!1,k.type=k.buffer.dtype,k.offset=0,k.stride=0,k.divisor=0,k.state=1):f.getBuffer(l.buffer)?(k.buffer=f.getBuffer(l.buffer),k.size=(+l.size||
24843
+ k.buffer.dimension)|0,k.normalized=!!l.normalized||!1,k.type="type"in l?Ja[l.type]:k.buffer.dtype,k.offset=(l.offset||0)|0,k.stride=(l.stride||0)|0,k.divisor=(l.divisor||0)|0,k.state=1):"x"in l&&(k.x=+l.x||0,k.y=+l.y||0,k.z=+l.z||0,k.w=+l.w||0,k.state=2)}for(p=0;p<c.buffers.length;++p)!a[p]&&c.buffers[p]&&(c.buffers[p].destroy(),c.buffers[p]=null);c.refresh();return b}var c=new k;d.vaoCount+=1;b.destroy=function(){for(var a=0;a<c.buffers.length;++a)c.buffers[a]&&c.buffers[a].destroy();c.buffers.length=
24844
+ 0;c.ownsElements&&(c.elements.destroy(),c.elements=null,c.ownsElements=!1);c.destroy()};b._vao=c;b._reglType="vao";return b(a)},getVAO:function(a){return"function"===typeof a&&a._vao?a._vao:null},destroyBuffer:function(b){for(var c=0;c<g.length;++c){var d=g[c];d.buffer===b&&(a.disableVertexAttribArray(c),d.buffer=null)}},setVAO:b.oes_vertex_array_object?q:u,clear:b.oes_vertex_array_object?r:function(){}};k.prototype.bindAttrs=function(){for(var c=b.angle_instanced_arrays,d=this.attributes,f=0;f<d.length;++f){var g=
24845
+ d[f];g.buffer?(a.enableVertexAttribArray(f),a.bindBuffer(34962,g.buffer.buffer),a.vertexAttribPointer(f,g.size,g.type,g.normalized,g.stride,g.offset),c&&g.divisor&&c.vertexAttribDivisorANGLE(f,g.divisor)):(a.disableVertexAttribArray(f),a.vertexAttrib4f(f,g.x,g.y,g.z,g.w))}for(c=d.length;c<t;++c)a.disableVertexAttribArray(c);(c=e.getElements(this.elements))?a.bindBuffer(34963,c.buffer.buffer):a.bindBuffer(34963,null)};k.prototype.refresh=function(){var a=b.oes_vertex_array_object;a&&(a.bindVertexArrayOES(this.vao),
24846
+ this.bindAttrs(),p.currentVAO=null,a.bindVertexArrayOES(null))};k.prototype.destroy=function(){if(this.vao){var a=b.oes_vertex_array_object;this===p.currentVAO&&(p.currentVAO=null,a.bindVertexArrayOES(null));a.deleteVertexArrayOES(this.vao);this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1);h[this.id]&&(delete h[this.id],--d.vaoCount)};return p}function Sb(a,b,c,d){function f(a,b,c,d){this.name=a;this.id=b;this.location=c;this.info=d}function e(a,b){for(var c=
24847
+ 0;c<a.length;++c)if(a[c].id===b.id){a[c].location=b.location;return}a.push(b)}function m(c,d,e){e=35632===c?r:k;var f=e[d];if(!f){var g=b.str(d),f=a.createShader(c);a.shaderSource(f,g);a.compileShader(f);e[d]=f}return f}function q(a,b){this.id=g++;this.fragId=a;this.vertId=b;this.program=null;this.uniforms=[];this.attributes=[];this.refCount=1;d.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function u(c,g,k){var n;n=m(35632,c.fragId);var t=m(35633,c.vertId);g=c.program=a.createProgram();
24848
+ a.attachShader(g,n);a.attachShader(g,t);if(k)for(n=0;n<k.length;++n)t=k[n],a.bindAttribLocation(g,t[0],t[1]);a.linkProgram(g);t=a.getProgramParameter(g,35718);d.profile&&(c.stats.uniformsCount=t);var r=c.uniforms;for(n=0;n<t;++n)if(k=a.getActiveUniform(g,n))if(1<k.size)for(var q=0;q<k.size;++q){var u=k.name.replace("[0]","["+q+"]");e(r,new f(u,b.id(u),a.getUniformLocation(g,u),k))}else e(r,new f(k.name,b.id(k.name),a.getUniformLocation(g,k.name),k));t=a.getProgramParameter(g,35721);d.profile&&(c.stats.attributesCount=
24849
+ t);c=c.attributes;for(n=0;n<t;++n)(k=a.getActiveAttrib(g,n))&&e(c,new f(k.name,b.id(k.name),a.getAttribLocation(g,k.name),k))}var r={},k={},n={},t=[],g=0;d.profile&&(c.getMaxUniformsCount=function(){var a=0;t.forEach(function(b){b.stats.uniformsCount>a&&(a=b.stats.uniformsCount)});return a},c.getMaxAttributesCount=function(){var a=0;t.forEach(function(b){b.stats.attributesCount>a&&(a=b.stats.attributesCount)});return a});return{clear:function(){var b=a.deleteShader.bind(a);T(r).forEach(b);r={};T(k).forEach(b);
24850
+ k={};t.forEach(function(b){a.deleteProgram(b.program)});t.length=0;n={};c.shaderCount=0},program:function(b,d,e,f){var g=n[d];g||(g=n[d]={});var m=g[b];if(m&&(m.refCount++,!f))return m;var z=new q(d,b);c.shaderCount++;u(z,e,f);m||(g[b]=z);t.push(z);return O(z,{destroy:function(){z.refCount--;if(0>=z.refCount){a.deleteProgram(z.program);var b=t.indexOf(z);t.splice(b,1);c.shaderCount--}0>=g[z.vertId].refCount&&(a.deleteShader(k[z.vertId]),delete k[z.vertId],delete n[z.fragId][z.vertId]);Object.keys(n[z.fragId]).length||
24851
+ (a.deleteShader(r[z.fragId]),delete r[z.fragId],delete n[z.fragId])}})},restore:function(){r={};k={};for(var a=0;a<t.length;++a)u(t[a],null,t[a].attributes.map(function(a){return[a.location,a.name]}))},shader:m,frag:-1,vert:-1}}function Tb(a,b,c,d,f,e,m){function q(e){var f;f=null===b.next?5121:b.next.colorAttachments[0].texture._texture.type;var n=0,t=0,g=d.framebufferWidth,l=d.framebufferHeight,h=null;P(e)?h=e:e&&(n=e.x|0,t=e.y|0,g=(e.width||d.framebufferWidth-n)|0,l=(e.height||d.framebufferHeight-
24852
+ t)|0,h=e.data||null);c();e=g*l*4;h||(5121===f?h=new Uint8Array(e):5126===f&&(h=h||new Float32Array(e)));a.pixelStorei(3333,4);a.readPixels(n,t,g,l,6408,f,h);return h}function u(a){var c;b.setFBO({framebuffer:a.framebuffer},function(){c=q(a)});return c}return function(a){return a&&"framebuffer"in a?u(a):q(a)}}function Ub(a){for(var b=Array(a.length>>2),c=0;c<b.length;c++)b[c]=0;for(c=0;c<8*a.length;c+=8)b[c>>5]|=(a.charCodeAt(c/8)&255)<<24-c%32;var d=8*a.length;a=[1779033703,-1150833019,1013904242,
24853
+ -1521486534,1359893119,-1694144372,528734635,1541459225];var c=Array(64),f,e,m,q,u,r,k,n,t,g,l;b[d>>5]|=128<<24-d%32;b[(d+64>>9<<4)+15]=d;for(n=0;n<b.length;n+=16){d=a[0];f=a[1];e=a[2];m=a[3];q=a[4];u=a[5];r=a[6];k=a[7];for(t=0;64>t;t++){if(16>t)c[t]=b[t+n];else{g=t;l=c[t-2];l=Y(l,17)^Y(l,19)^l>>>10;l=H(l,c[t-7]);var h;h=c[t-15];h=Y(h,7)^Y(h,18)^h>>>3;c[g]=H(H(l,h),c[t-16])}g=q;g=Y(g,6)^Y(g,11)^Y(g,25);g=H(H(H(H(k,g),q&u^~q&r),Vb[t]),c[t]);k=d;k=Y(k,2)^Y(k,13)^Y(k,22);l=H(k,d&f^d&e^f&e);k=r;r=u;u=
24854
+ q;q=H(m,g);m=e;e=f;f=d;d=H(g,l)}a[0]=H(d,a[0]);a[1]=H(f,a[1]);a[2]=H(e,a[2]);a[3]=H(m,a[3]);a[4]=H(q,a[4]);a[5]=H(u,a[5]);a[6]=H(r,a[6]);a[7]=H(k,a[7])}b="";for(c=0;c<32*a.length;c+=8)b+=String.fromCharCode(a[c>>5]>>>24-c%32&255);return b}function Wb(a){for(var b="",c,d=0;d<a.length;d++)c=a.charCodeAt(d),b+="0123456789abcdef".charAt(c>>>4&15)+"0123456789abcdef".charAt(c&15);return b}function Xb(a){for(var b="",c=-1,d,f;++c<a.length;)d=a.charCodeAt(c),f=c+1<a.length?a.charCodeAt(c+1):0,55296<=d&&56319>=
24855
+ d&&56320<=f&&57343>=f&&(d=65536+((d&1023)<<10)+(f&1023),c++),127>=d?b+=String.fromCharCode(d):2047>=d?b+=String.fromCharCode(192|d>>>6&31,128|d&63):65535>=d?b+=String.fromCharCode(224|d>>>12&15,128|d>>>6&63,128|d&63):2097151>=d&&(b+=String.fromCharCode(240|d>>>18&7,128|d>>>12&63,128|d>>>6&63,128|d&63));return b}function Y(a,b){return a>>>b|a<<32-b}function H(a,b){var c=(a&65535)+(b&65535);return(a>>16)+(b>>16)+(c>>16)<<16|c&65535}function Aa(a){return Array.prototype.slice.call(a)}function Ba(a){return Aa(a).join("")}
24856
+ function Yb(a){function b(){var a=[],b=[];return O(function(){a.push.apply(a,Aa(arguments))},{def:function(){var c="v"+f++;b.push(c);0<arguments.length&&(a.push(c,"="),a.push.apply(a,Aa(arguments)),a.push(";"));return c},toString:function(){return Ba([0<b.length?"var "+b.join(",")+";":"",Ba(a)])}})}function c(){function a(b,e){d(b,e,"=",c.def(b,e),";")}var c=b(),d=b(),e=c.toString,f=d.toString;return O(function(){c.apply(c,Aa(arguments))},{def:c.def,entry:c,exit:d,save:a,set:function(b,d,e){a(b,d);
24857
+ c(b,d,"=",e,";")},toString:function(){return e()+f()}})}var d=a&&a.cache,f=0,e=[],m=[],q=[],u=b(),r={};return{global:u,link:function(a,b){var c=b&&b.stable;if(!c)for(var d=0;d<m.length;++d)if(m[d]===a&&!q[d])return e[d];d="g"+f++;e.push(d);m.push(a);q.push(c);return d},block:b,proc:function(a,b){function d(){var a="a"+e.length;e.push(a);return a}var e=[];b=b||0;for(var f=0;f<b;++f)d();var f=c(),h=f.toString;return r[a]=O(f,{arg:d,toString:function(){return Ba(["function(",e.join(),"){",h(),"}"])}})},
24858
+ scope:c,cond:function(){var a=Ba(arguments),b=c(),d=c(),e=b.toString,f=d.toString;return O(b,{then:function(){b.apply(b,Aa(arguments));return this},"else":function(){d.apply(d,Aa(arguments));return this},toString:function(){var b=f();b&&(b="else{"+b+"}");return Ba(["if(",a,"){",e(),"}",b])}})},compile:function(){var a=['"use strict";',u,"return {"];Object.keys(r).forEach(function(b){a.push('"',b,'":',r[b].toString(),",")});a.push("}");var b=Ba(a).replace(/;/g,";\n").replace(/}/g,"}\n").replace(/{/g,
24859
+ "{\n"),c;if(d&&(c=Wb(Ub(Xb(b))),d[c]))return d[c].apply(null,m);b=Function.apply(null,e.concat(b));d&&(d[c]=b);return b.apply(null,m)}}}function Sa(a){return Array.isArray(a)||P(a)||fa(a)}function yb(a){return a.sort(function(a,c){return"viewport"===a?-1:"viewport"===c?1:a<c?-1:1})}function K(a,b,c,d){this.thisDep=a;this.contextDep=b;this.propDep=c;this.append=d}function la(a){return a&&!(a.thisDep||a.contextDep||a.propDep)}function E(a){return new K(!1,!1,!1,a)}function L(a,b){var c=a.type;if(0===
24860
+ c)return c=a.data.length,new K(!0,1<=c,2<=c,b);if(4===c)return c=a.data,new K(c.thisDep,c.contextDep,c.propDep,b);if(5===c)return new K(!1,!1,!1,b);if(6===c){for(var d=c=!1,f=!1,e=0;e<a.data.length;++e){var m=a.data[e];1===m.type?f=!0:2===m.type?d=!0:3===m.type?c=!0:0===m.type?(c=!0,m=m.data,1<=m&&(d=!0),2<=m&&(f=!0)):4===m.type&&(c=c||m.data.thisDep,d=d||m.data.contextDep,f=f||m.data.propDep)}return new K(c,d,f,b)}return new K(3===c,2===c,1===c,b)}function Zb(a,b,c,d,f,e,m,q,u,r,k,n,t,g,l,h){function p(a){return a.replace(".",
24861
+ "_")}function y(a,b,c){var d=p(a);Ma.push(a);Da[d]=ta[d]=!!c;ua[d]=b}function C(a,b,c){var d=p(a);Ma.push(a);Array.isArray(c)?(ta[d]=c.slice(),Da[d]=c.slice()):ta[d]=Da[d]=c;ma[d]=b}function w(){var a=Yb({cache:l}),c=a.link,d=a.global;a.id=ra++;a.batchId="0";var e=c(tb),f=a.shared={props:"a0"};Object.keys(tb).forEach(function(a){f[a]=d.def(e,".",a)});var g=a.next={},k=a.current={};Object.keys(ma).forEach(function(a){Array.isArray(ta[a])&&(g[a]=d.def(f.next,".",a),k[a]=d.def(f.current,".",a))});var ca=
24862
+ a.constants={};Object.keys(Oa).forEach(function(a){ca[a]=d.def(JSON.stringify(Oa[a]))});a.invoke=function(b,d){switch(d.type){case 0:var e=["this",f.context,f.props,a.batchId];return b.def(c(d.data),".call(",e.slice(0,Math.max(d.data.length+1,4)),")");case 1:return b.def(f.props,d.data);case 2:return b.def(f.context,d.data);case 3:return b.def("this",d.data);case 4:return d.data.append(a,b),d.data.ref;case 5:return d.data.toString();case 6:return d.data.map(function(c){return a.invoke(b,c)})}};a.attribCache=
24863
+ {};var N={};a.scopeAttrib=function(a){a=b.id(a);if(a in N)return N[a];var d=r.scope[a];d||(d=r.scope[a]=new ha);return N[a]=c(d)};return a}function z(a){var b=a["static"];a=a.dynamic;var c;if("profile"in b){var d=!!b.profile;c=E(function(a,b){return d});c.enable=d}else if("profile"in a){var e=a.profile;c=L(e,function(a,b){return a.invoke(b,e)})}return c}function B(a,b){var c=a["static"],d=a.dynamic;if("framebuffer"in c){var e=c.framebuffer;return e?(e=q.getFramebuffer(e),E(function(a,b){var c=a.link(e),
24864
+ d=a.shared;b.set(d.framebuffer,".next",c);d=d.context;b.set(d,".framebufferWidth",c+".width");b.set(d,".framebufferHeight",c+".height");return c})):E(function(a,b){var c=a.shared;b.set(c.framebuffer,".next","null");c=c.context;b.set(c,".framebufferWidth",c+".drawingBufferWidth");b.set(c,".framebufferHeight",c+".drawingBufferHeight");return"null"})}if("framebuffer"in d){var f=d.framebuffer;return L(f,function(a,b){var c=a.invoke(b,f),d=a.shared,e=d.framebuffer,c=b.def(e,".getFramebuffer(",c,")");b.set(e,
24865
+ ".next",c);d=d.context;b.set(d,".framebufferWidth",c+"?"+c+".width:"+d+".drawingBufferWidth");b.set(d,".framebufferHeight",c+"?"+c+".height:"+d+".drawingBufferHeight");return c})}return null}function H(a,b,c){function d(a){if(a in e){var c=e[a];a=!0;var x=c.x|0,g=c.y|0,k,h;"width"in c?k=c.width|0:a=!1;"height"in c?h=c.height|0:a=!1;return new K(!a&&b&&b.thisDep,!a&&b&&b.contextDep,!a&&b&&b.propDep,function(a,b){var d=a.shared.context,e=k;"width"in c||(e=b.def(d,".","framebufferWidth","-",x));var f=
24866
+ h;"height"in c||(f=b.def(d,".","framebufferHeight","-",g));return[x,g,e,f]})}if(a in f){var aa=f[a];a=L(aa,function(a,b){var c=a.invoke(b,aa),d=a.shared.context,e=b.def(c,".x|0"),f=b.def(c,".y|0"),N=b.def('"width" in ',c,"?",c,".width|0:","(",d,".","framebufferWidth","-",e,")"),c=b.def('"height" in ',c,"?",c,".height|0:","(",d,".","framebufferHeight","-",f,")");return[e,f,N,c]});b&&(a.thisDep=a.thisDep||b.thisDep,a.contextDep=a.contextDep||b.contextDep,a.propDep=a.propDep||b.propDep);return a}return b?
24867
+ new K(b.thisDep,b.contextDep,b.propDep,function(a,b){var c=a.shared.context;return[0,0,b.def(c,".","framebufferWidth"),b.def(c,".","framebufferHeight")]}):null}var e=a["static"],f=a.dynamic;if(a=d("viewport")){var g=a;a=new K(a.thisDep,a.contextDep,a.propDep,function(a,b){var c=g.append(a,b),d=a.shared.context;b.set(d,".viewportWidth",c[2]);b.set(d,".viewportHeight",c[3]);return c})}return{viewport:a,scissor_box:d("scissor.box")}}function G(a,b){var c=a["static"];if("string"===typeof c.frag&&"string"===
24868
+ typeof c.vert){if(0<Object.keys(b.dynamic).length)return null;var c=b["static"],d=Object.keys(c);if(0<d.length&&"number"===typeof c[d[0]]){for(var e=[],f=0;f<d.length;++f)e.push([c[d[f]]|0,d[f]]);return e}}return null}function D(a,c,d){function e(a){if(a in f){var c=b.id(f[a]);a=E(function(){return c});a.id=c;return a}if(a in g){var d=g[a];return L(d,function(a,b){var c=a.invoke(b,d);return b.def(a.shared.strings,".id(",c,")")})}return null}var f=a["static"],g=a.dynamic,h=e("frag"),ca=e("vert"),N=
24869
+ null;la(h)&&la(ca)?(N=k.program(ca.id,h.id,null,d),a=E(function(a,b){return a.link(N)})):a=new K(h&&h.thisDep||ca&&ca.thisDep,h&&h.contextDep||ca&&ca.contextDep,h&&h.propDep||ca&&ca.propDep,function(a,b){var c=a.shared.shader,d;d=h?h.append(a,b):b.def(c,".","frag");var e;e=ca?ca.append(a,b):b.def(c,".","vert");return b.def(c+".program("+e+","+d+")")});return{frag:h,vert:ca,progVar:a,program:N}}function v(a,b){function c(a,b){if(a in d){var e=d[a]|0;b?g.offset=e:g.instances=e;return E(function(a,c){b&&
24870
+ (a.OFFSET=e);return e})}if(a in f){var x=f[a];return L(x,function(a,c){var d=a.invoke(c,x);b&&(a.OFFSET=d);return d})}if(b){if(N)return E(function(a,b){return a.OFFSET=0});if(k)return new K(h.thisDep,h.contextDep,h.propDep,function(a,b){return b.def(a.shared.vao+".currentVAO?"+a.shared.vao+".currentVAO.offset:0")})}else if(k)return new K(h.thisDep,h.contextDep,h.propDep,function(a,b){return b.def(a.shared.vao+".currentVAO?"+a.shared.vao+".currentVAO.instances:-1")});return null}var d=a["static"],
24871
+ f=a.dynamic,g={},k=!1,h=function(){if("vao"in d){var a=d.vao;null!==a&&null===r.getVAO(a)&&(a=r.createVAO(a));k=!0;g.vao=a;return E(function(b){var c=r.getVAO(a);return c?b.link(c):"null"})}if("vao"in f){k=!0;var b=f.vao;return L(b,function(a,c){var d=a.invoke(c,b);return c.def(a.shared.vao+".getVAO("+d+")")})}return null}(),N=!1,ia=function(){if("elements"in d){var a=d.elements;g.elements=a;if(Sa(a)){var b=g.elements=e.create(a,!0),a=e.getElements(b);N=!0}else a&&(a=e.getElements(a),N=!0);b=E(function(b,
24872
+ c){if(a){var d=b.link(a);return b.ELEMENTS=d}return b.ELEMENTS=null});b.value=a;return b}if("elements"in f){N=!0;var c=f.elements;return L(c,function(a,b){var d=a.shared,e=d.isBufferArgs,d=d.elements,f=a.invoke(b,c),N=b.def("null"),e=b.def(e,"(",f,")"),f=a.cond(e).then(N,"=",d,".createStream(",f,");")["else"](N,"=",d,".getElements(",f,");");b.entry(f);b.exit(a.cond(e).then(d,".destroyStream(",N,");"));return a.ELEMENTS=N})}return k?new K(h.thisDep,h.contextDep,h.propDep,function(a,b){return b.def(a.shared.vao+
24873
+ ".currentVAO?"+a.shared.elements+".getElements("+a.shared.vao+".currentVAO.elements):null")}):null}(),va=c("offset",!0),l=function(){if("primitive"in d){var a=d.primitive;g.primitive=a;return E(function(b,c){return Ka[a]})}if("primitive"in f){var b=f.primitive;return L(b,function(a,c){var d=a.constants.primTypes,e=a.invoke(c,b);return c.def(d,"[",e,"]")})}return N?la(ia)?ia.value?E(function(a,b){return b.def(a.ELEMENTS,".primType")}):E(function(){return 4}):new K(ia.thisDep,ia.contextDep,ia.propDep,
24874
+ function(a,b){var c=a.ELEMENTS;return b.def(c,"?",c,".primType:",4)}):k?new K(h.thisDep,h.contextDep,h.propDep,function(a,b){return b.def(a.shared.vao+".currentVAO?"+a.shared.vao+".currentVAO.primitive:4")}):null}(),n=function(){if("count"in d){var a=d.count|0;g.count=a;return E(function(){return a})}if("count"in f){var b=f.count;return L(b,function(a,c){return a.invoke(c,b)})}return N?la(ia)?ia?va?new K(va.thisDep,va.contextDep,va.propDep,function(a,b){return b.def(a.ELEMENTS,".vertCount-",a.OFFSET)}):
24875
+ E(function(a,b){return b.def(a.ELEMENTS,".vertCount")}):E(function(){return-1}):new K(ia.thisDep||va.thisDep,ia.contextDep||va.contextDep,ia.propDep||va.propDep,function(a,b){var c=a.ELEMENTS;return a.OFFSET?b.def(c,"?",c,".vertCount-",a.OFFSET,":-1"):b.def(c,"?",c,".vertCount:-1")}):k?new K(h.thisDep,h.contextDep,h.propDep,function(a,b){return b.def(a.shared.vao,".currentVAO?",a.shared.vao,".currentVAO.count:-1")}):null}(),m=c("instances",!1);return{elements:ia,primitive:l,count:n,instances:m,offset:va,
24876
+ vao:h,vaoActive:k,elementsActive:N,"static":g}}function ba(a,b){var c=a["static"],d=a.dynamic,e={};Ma.forEach(function(a){function b(N,g){if(a in c){var x=N(c[a]);e[f]=E(function(){return x})}else if(a in d){var F=d[a];e[f]=L(F,function(a,b){return g(a,b,a.invoke(b,F))})}}var f=p(a);switch(a){case "cull.enable":case "blend.enable":case "dither":case "stencil.enable":case "depth.enable":case "scissor.enable":case "polygonOffset.enable":case "sample.alpha":case "sample.enable":case "depth.mask":return b(function(a){return a},
24877
+ function(a,b,c){return c});case "depth.func":return b(function(a){return $a[a]},function(a,b,c){return b.def(a.constants.compareFuncs,"[",c,"]")});case "depth.range":return b(function(a){return a},function(a,b,c){a=b.def("+",c,"[0]");b=b.def("+",c,"[1]");return[a,b]});case "blend.func":return b(function(a){return[Ga["srcRGB"in a?a.srcRGB:a.src],Ga["dstRGB"in a?a.dstRGB:a.dst],Ga["srcAlpha"in a?a.srcAlpha:a.src],Ga["dstAlpha"in a?a.dstAlpha:a.dst]]},function(a,b,c){function d(a,e){return b.def('"',
24878
+ a,e,'" in ',c,"?",c,".",a,e,":",c,".",a)}a=a.constants.blendFuncs;var e=d("src","RGB"),f=d("dst","RGB"),e=b.def(a,"[",e,"]"),g=b.def(a,"[",d("src","Alpha"),"]"),f=b.def(a,"[",f,"]");a=b.def(a,"[",d("dst","Alpha"),"]");return[e,f,g,a]});case "blend.equation":return b(function(a){if("string"===typeof a)return[X[a],X[a]];if("object"===typeof a)return[X[a.rgb],X[a.alpha]]},function(a,b,c){var d=a.constants.blendEquations,e=b.def(),f=b.def();a=a.cond("typeof ",c,'==="string"');a.then(e,"=",f,"=",d,"[",
24879
+ c,"];");a["else"](e,"=",d,"[",c,".rgb];",f,"=",d,"[",c,".alpha];");b(a);return[e,f]});case "blend.color":return b(function(a){return S(4,function(b){return+a[b]})},function(a,b,c){return S(4,function(a){return b.def("+",c,"[",a,"]")})});case "stencil.mask":return b(function(a){return a|0},function(a,b,c){return b.def(c,"|0")});case "stencil.func":return b(function(a){return[$a[a.cmp||"keep"],a.ref||0,"mask"in a?a.mask:-1]},function(a,b,c){a=b.def('"cmp" in ',c,"?",a.constants.compareFuncs,"[",c,".cmp]",
24880
+ ":",7680);var d=b.def(c,".ref|0");b=b.def('"mask" in ',c,"?",c,".mask|0:-1");return[a,d,b]});case "stencil.opFront":case "stencil.opBack":return b(function(b){return["stencil.opBack"===a?1029:1028,Ta[b.fail||"keep"],Ta[b.zfail||"keep"],Ta[b.zpass||"keep"]]},function(b,c,d){function e(a){return c.def('"',a,'" in ',d,"?",f,"[",d,".",a,"]:",7680)}var f=b.constants.stencilOps;return["stencil.opBack"===a?1029:1028,e("fail"),e("zfail"),e("zpass")]});case "polygonOffset.offset":return b(function(a){return[a.factor|
24881
+ 0,a.units|0]},function(a,b,c){a=b.def(c,".factor|0");b=b.def(c,".units|0");return[a,b]});case "cull.face":return b(function(a){var b=0;"front"===a?b=1028:"back"===a&&(b=1029);return b},function(a,b,c){return b.def(c,'==="front"?',1028,":",1029)});case "lineWidth":return b(function(a){return a},function(a,b,c){return c});case "frontFace":return b(function(a){return zb[a]},function(a,b,c){return b.def(c+'==="cw"?2304:2305')});case "colorMask":return b(function(a){return a.map(function(a){return!!a})},
24882
+ function(a,b,c){return S(4,function(a){return"!!"+c+"["+a+"]"})});case "sample.coverage":return b(function(a){return["value"in a?a.value:1,!!a.invert]},function(a,b,c){a=b.def('"value" in ',c,"?+",c,".value:1");b=b.def("!!",c,".invert");return[a,b]})}});return e}function P(a,b){var c=a["static"],d=a.dynamic,e={};Object.keys(c).forEach(function(a){var b=c[a],d;if("number"===typeof b||"boolean"===typeof b)d=E(function(){return b});else if("function"===typeof b){var f=b._reglType;if("texture2d"===f||
24883
+ "textureCube"===f)d=E(function(a){return a.link(b)});else if("framebuffer"===f||"framebufferCube"===f)d=E(function(a){return a.link(b.color[0])})}else qa(b)&&(d=E(function(a){return a.global.def("[",S(b.length,function(a){return b[a]}),"]")}));d.value=b;e[a]=d});Object.keys(d).forEach(function(a){var b=d[a];e[a]=L(b,function(a,c){return a.invoke(c,b)})});return e}function A(a,c){var d=a["static"],e=a.dynamic,g={};Object.keys(d).forEach(function(a){var c=d[a],e=b.id(a),x=new ha;if(Sa(c))x.state=1,
24884
+ x.buffer=f.getBuffer(f.create(c,34962,!1,!0)),x.type=0;else{var F=f.getBuffer(c);if(F)x.state=1,x.buffer=F,x.type=0;else if("constant"in c){var h=c.constant;x.buffer="null";x.state=2;"number"===typeof h?x.x=h:Ca.forEach(function(a,b){b<h.length&&(x[a]=h[b])})}else{var F=Sa(c.buffer)?f.getBuffer(f.create(c.buffer,34962,!1,!0)):f.getBuffer(c.buffer),k=c.offset|0,l=c.stride|0,n=c.size|0,Fa=!!c.normalized,m=0;"type"in c&&(m=Ja[c.type]);c=c.divisor|0;x.buffer=F;x.state=1;x.size=n;x.normalized=Fa;x.type=
24885
+ m||F.dtype;x.offset=k;x.stride=l;x.divisor=c}}g[a]=E(function(a,b){var c=a.attribCache;if(e in c)return c[e];var d={isStream:!1};Object.keys(x).forEach(function(a){d[a]=x[a]});x.buffer&&(d.buffer=a.link(x.buffer),d.type=d.type||d.buffer+".dtype");return c[e]=d})});Object.keys(e).forEach(function(a){var b=e[a];g[a]=L(b,function(a,c){function d(a){c(F[a],"=",e,".",a,"|0;")}var e=a.invoke(c,b),f=a.shared,g=a.constants,x=f.isBufferArgs,f=f.buffer,F={isStream:c.def(!1)},h=new ha;h.state=1;Object.keys(h).forEach(function(a){F[a]=
24886
+ c.def(""+h[a])});var k=F.buffer,l=F.type;c("if(",x,"(",e,")){",F.isStream,"=true;",k,"=",f,".createStream(",34962,",",e,");",l,"=",k,".dtype;","}else{",k,"=",f,".getBuffer(",e,");","if(",k,"){",l,"=",k,".dtype;",'}else if("constant" in ',e,"){",F.state,"=",2,";","if(typeof "+e+'.constant === "number"){',F[Ca[0]],"=",e,".constant;",Ca.slice(1).map(function(a){return F[a]}).join("="),"=0;","}else{",Ca.map(function(a,b){return F[a]+"="+e+".constant.length>"+b+"?"+e+".constant["+b+"]:0;"}).join(""),"}}else{",
24887
+ "if(",x,"(",e,".buffer)){",k,"=",f,".createStream(",34962,",",e,".buffer);","}else{",k,"=",f,".getBuffer(",e,".buffer);","}",l,'="type" in ',e,"?",g.glTypes,"[",e,".type]:",k,".dtype;",F.normalized,"=!!",e,".normalized;");d("size");d("offset");d("stride");d("divisor");c("}}");c.exit("if(",F.isStream,"){",f,".destroyStream(",k,");","}");return F})});return g}function J(a){var b=a["static"],c=a.dynamic,d={};Object.keys(b).forEach(function(a){var c=b[a];d[a]=E(function(a,b){return"number"===typeof c||
24888
+ "boolean"===typeof c?""+c:a.link(c)})});Object.keys(c).forEach(function(a){var b=c[a];d[a]=L(b,function(a,c){return a.invoke(c,b)})});return d}function oa(a,b,d,e,f){function g(a){var b=l[a];b&&(m[a]=b)}var k=G(a,b),h=B(a,f),l=H(a,h,f),n=v(a,f),m=ba(a,f),q=D(a,f,k);g("viewport");g(p("scissor.box"));var t=0<Object.keys(m).length,h={framebuffer:h,draw:n,shader:q,state:m,dirty:t,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};h.profile=z(a,f);h.uniforms=P(d,f);h.drawVAO=h.scopeVAO=n.vao;if(!h.drawVAO&&
24889
+ q.program&&!k&&c.angle_instanced_arrays&&n["static"].elements){var u=!0;a=q.program.attributes.map(function(a){a=b["static"][a];u=u&&!!a;return a});if(u&&0<a.length){var $b=r.getVAO(r.createVAO({attributes:a,elements:n["static"].elements}));h.drawVAO=new K(null,null,null,function(a,b){return a.link($b)});h.useVAO=!0}}k?h.useVAO=!0:h.attributes=A(b,f);h.context=J(e,f);return h}function na(a,b,c){var d=a.shared.context,e=a.scope();Object.keys(c).forEach(function(f){b.save(d,"."+f);var g=c[f].append(a,
24890
+ b);Array.isArray(g)?e(d,".",f,"=[",g.join(),"];"):e(d,".",f,"=",g,";")});b(e)}function V(a,b,c,d){var e=a.shared,f=e.gl,g=e.framebuffer,h;R&&(h=b.def(e.extensions,".webgl_draw_buffers"));var k=a.constants,e=k.drawBuffer,k=k.backBuffer;a=c?c.append(a,b):b.def(g,".next");d||b("if(",a,"!==",g,".cur){");b("if(",a,"){",f,".bindFramebuffer(",36160,",",a,".framebuffer);");R&&b(h,".drawBuffersWEBGL(",e,"[",a,".colorAttachments.length]);");b("}else{",f,".bindFramebuffer(",36160,",null);");R&&b(h,".drawBuffersWEBGL(",
24891
+ k,");");b("}",g,".cur=",a,";");d||b("}")}function T(a,b,c){var d=a.shared,e=d.gl,f=a.current,g=a.next,h=d.current,k=d.next,l=a.cond(h,".dirty");Ma.forEach(function(b){b=p(b);if(!(b in c.state)){var d,F;if(b in g){d=g[b];F=f[b];var n=S(ta[b].length,function(a){return l.def(d,"[",a,"]")});l(a.cond(n.map(function(a,b){return a+"!=="+F+"["+b+"]"}).join("||")).then(e,".",ma[b],"(",n,");",n.map(function(a,b){return F+"["+b+"]="+a}).join(";"),";"))}else d=l.def(k,".",b),n=a.cond(d,"!==",h,".",b),l(n),b in
24892
+ ua?n(a.cond(d).then(e,".enable(",ua[b],");")["else"](e,".disable(",ua[b],");"),h,".",b,"=",d,";"):n(e,".",ma[b],"(",d,");",h,".",b,"=",d,";")}});0===Object.keys(c.state).length&&l(h,".dirty=false;");b(l)}function W(a,b,c,d){var e=a.shared,f=a.current,g=e.current,h=e.gl,k;yb(Object.keys(c)).forEach(function(e){var l=c[e];if(!d||d(l)){var n=l.append(a,b);if(ua[e]){var m=ua[e];la(l)?(k=a.link(n,{stable:!0}),b(a.cond(k).then(h,".enable(",m,");")["else"](h,".disable(",m,");")),b(g,".",e,"=",k,";")):(b(a.cond(n).then(h,
24893
+ ".enable(",m,");")["else"](h,".disable(",m,");")),b(g,".",e,"=",n,";"))}else if(qa(n)){var p=f[e];b(h,".",ma[e],"(",n,");",n.map(function(a,b){return p+"["+b+"]="+a}).join(";"),";")}else la(l)?(k=a.link(n,{stable:!0}),b(h,".",ma[e],"(",k,");",g,".",e,"=",k,";")):b(h,".",ma[e],"(",n,");",g,".",e,"=",n,";")}})}function Q(a,b){sa&&(a.instancing=b.def(a.shared.extensions,".angle_instanced_arrays"))}function I(a,b,c,d,e){function f(){return"undefined"===typeof performance?"Date.now()":"performance.now()"}
24894
+ function h(a){t=b.def();a(t,"=",f(),";");"string"===typeof e?a(m,".count+=",e,";"):a(m,".count++;");g&&(d?(r=b.def(),a(r,"=",q,".getNumPendingQueries();")):a(q,".beginQuery(",m,");"))}function k(a){a(m,".cpuTime+=",f(),"-",t,";");g&&(d?a(q,".pushScopeStats(",r,",",q,".getNumPendingQueries(),",m,");"):a(q,".endQuery();"))}function l(a){var c=b.def(p,".profile");b(p,".profile=",a,";");b.exit(p,".profile=",c,";")}var n=a.shared,m=a.stats,p=n.current,q=n.timer;c=c.profile;var t,r;if(c){if(la(c)){c.enable?
24895
+ (h(b),k(b.exit),l("true")):l("false");return}c=c.append(a,b);l(c)}else c=b.def(p,".profile");n=a.block();h(n);b("if(",c,"){",n,"}");a=a.block();k(a);b.exit("if(",c,"){",a,"}")}function M(a,b,c,d,e){function f(a){switch(a){case 35664:case 35667:case 35671:return 2;case 35665:case 35668:case 35672:return 3;case 35666:case 35669:case 35673:return 4;default:return 1}}function g(c,d,e){function f(){b("if(!",m,".buffer){",n,".enableVertexAttribArray(",l,");}");var c=e.type,g;g=e.size?b.def(e.size,"||",
24896
+ d):d;b("if(",m,".type!==",c,"||",m,".size!==",g,"||",q.map(function(a){return m+"."+a+"!=="+e[a]}).join("||"),"){",n,".bindBuffer(",34962,",",p,".buffer);",n,".vertexAttribPointer(",[l,g,c,e.normalized,e.stride,e.offset],");",m,".type=",c,";",m,".size=",g,";",q.map(function(a){return m+"."+a+"="+e[a]+";"}).join(""),"}");sa&&(c=e.divisor,b("if(",m,".divisor!==",c,"){",a.instancing,".vertexAttribDivisorANGLE(",[l,c],");",m,".divisor=",c,";}"))}function k(){b("if(",m,".buffer){",n,".disableVertexAttribArray(",
24897
+ l,");",m,".buffer=null;","}if(",Ca.map(function(a,b){return m+"."+a+"!=="+aa[b]}).join("||"),"){",n,".vertexAttrib4f(",l,",",aa,");",Ca.map(function(a,b){return m+"."+a+"="+aa[b]+";"}).join(""),"}")}var n=h.gl,l=b.def(c,".location"),m=b.def(h.attributes,"[",l,"]");c=e.state;var p=e.buffer,aa=[e.x,e.y,e.z,e.w],q=["buffer","normalized","offset","stride"];1===c?f():2===c?k():(b("if(",c,"===",1,"){"),f(),b("}else{"),k(),b("}"))}var h=a.shared;d.forEach(function(d){var h=d.name,k=c.attributes[h],l;if(k){if(!e(k))return;
24898
+ l=k.append(a,b)}else{if(!e(Ab))return;var n=a.scopeAttrib(h);l={};Object.keys(new ha).forEach(function(a){l[a]=b.def(n,".",a)})}g(a.link(d),f(d.info.type),l)})}function U(a,c,d,e,f,g){for(var h=a.shared,k=h.gl,l,n=0;n<e.length;++n){var m=e[n],p=m.name,q=m.info.type,t=d.uniforms[p],m=a.link(m)+".location",r;if(t){if(!f(t))continue;if(la(t)){p=t.value;if(35678===q||35680===q)q=a.link(p._texture||p.color[0]._texture),c(k,".uniform1i(",m,",",q+".bind());"),c.exit(q,".unbind();");else if(35674===q||35675===
24899
+ q||35676===q)p=a.global.def("new Float32Array(["+Array.prototype.slice.call(p)+"])"),t=2,35675===q?t=3:35676===q&&(t=4),c(k,".uniformMatrix",t,"fv(",m,",false,",p,");");else{switch(q){case 5126:l="1f";break;case 35664:l="2f";break;case 35665:l="3f";break;case 35666:l="4f";break;case 35670:l="1i";break;case 5124:l="1i";break;case 35671:l="2i";break;case 35667:l="2i";break;case 35672:l="3i";break;case 35668:l="3i";break;case 35673:l="4i";break;case 35669:l="4i"}c(k,".uniform",l,"(",m,",",qa(p)?Array.prototype.slice.call(p):
24900
+ p,");")}continue}else r=t.append(a,c)}else{if(!f(Ab))continue;r=c.def(h.uniforms,"[",b.id(p),"]")}35678===q?c("if(",r,"&&",r,'._reglType==="framebuffer"){',r,"=",r,".color[0];","}"):35680===q&&c("if(",r,"&&",r,'._reglType==="framebufferCube"){',r,"=",r,".color[0];","}");p=1;switch(q){case 35678:case 35680:q=c.def(r,"._texture");c(k,".uniform1i(",m,",",q,".bind());");c.exit(q,".unbind();");continue;case 5124:case 35670:l="1i";break;case 35667:case 35671:l="2i";p=2;break;case 35668:case 35672:l="3i";
24901
+ p=3;break;case 35669:case 35673:l="4i";p=4;break;case 5126:l="1f";break;case 35664:l="2f";p=2;break;case 35665:l="3f";p=3;break;case 35666:l="4f";p=4;break;case 35674:l="Matrix2fv";break;case 35675:l="Matrix3fv";break;case 35676:l="Matrix4fv"}if("M"===l.charAt(0)){c(k,".uniform",l,"(",m,",");var m=Math.pow(q-35674+2,2),u=a.global.def("new Float32Array(",m,")");Array.isArray(r)?c("false,(",S(m,function(a){return u+"["+a+"]="+r[a]}),",",u,")"):c("false,(Array.isArray(",r,")||",r," instanceof Float32Array)?",
24902
+ r,":(",S(m,function(a){return u+"["+a+"]="+r+"["+a+"]"}),",",u,")");c(");")}else{if(1<p){for(var q=[],v=[],t=0;t<p;++t)Array.isArray(r)?v.push(r[t]):v.push(c.def(r+"["+t+"]")),g&&q.push(c.def());g&&c("if(!",a.batchId,"||",q.map(function(a,b){return a+"!=="+v[b]}).join("||"),"){",q.map(function(a,b){return a+"="+v[b]+";"}).join(""));c(k,".uniform",l,"(",m,",",v.join(","),");")}else g&&(q=c.def(),c("if(!",a.batchId,"||",q,"!==",r,"){",q,"=",r,";")),c(k,".uniform",l,"(",m,",",r,");");g&&c("}")}}}function Y(a,
24903
+ b,c,d){function e(f){var g=n[f];return g?g.contextDep&&d.contextDynamic||g.propDep?g.append(a,c):g.append(a,b):b.def(l,".",f)}function f(){function a(){c(u,".drawElementsInstancedANGLE(",[p,t,v,q+"<<(("+v+"-5121)>>1)",r],");")}function b(){c(u,".drawArraysInstancedANGLE(",[p,q,t,r],");")}m&&"null"!==m?y?a():(c("if(",m,"){"),a(),c("}else{"),b(),c("}")):b()}function g(){function a(){c(k+".drawElements("+[p,t,v,q+"<<(("+v+"-5121)>>1)"]+");")}function b(){c(k+".drawArrays("+[p,q,t]+");")}m&&"null"!==
24904
+ m?y?a():(c("if(",m,"){"),a(),c("}else{"),b(),c("}")):b()}var h=a.shared,k=h.gl,l=h.draw,n=d.draw,m=function(){var e=n.elements,f=b;if(e){if(e.contextDep&&d.contextDynamic||e.propDep)f=c;e=e.append(a,f);n.elementsActive&&f("if("+e+")"+k+".bindBuffer(34963,"+e+".buffer.buffer);")}else e=f.def(),f(e,"=",l,".","elements",";","if(",e,"){",k,".bindBuffer(",34963,",",e,".buffer.buffer);}","else if(",h.vao,".currentVAO){",e,"=",a.shared.elements+".getElements("+h.vao,".currentVAO.elements);",ja?"":"if("+
24905
+ e+")"+k+".bindBuffer(34963,"+e+".buffer.buffer);","}");return e}(),p=e("primitive"),q=e("offset"),t=function(){var e=n.count,f=b;if(e){if(e.contextDep&&d.contextDynamic||e.propDep)f=c;e=e.append(a,f)}else e=f.def(l,".","count");return e}();if("number"===typeof t){if(0===t)return}else c("if(",t,"){"),c.exit("}");var r,u;sa&&(r=e("instances"),u=a.instancing);var v=m+".type",y=n.elements&&la(n.elements)&&!n.vaoActive;sa&&("number"!==typeof r||0<=r)?"string"===typeof r?(c("if(",r,">0){"),f(),c("}else if(",
24906
+ r,"<0){"),g(),c("}")):f():g()}function xa(a,b,c,d,e){b=w();e=b.proc("body",e);sa&&(b.instancing=e.def(b.shared.extensions,".angle_instanced_arrays"));a(b,e,c,d);return b.compile().body}function da(a,b,c,d){Q(a,b);c.useVAO?c.drawVAO?b(a.shared.vao,".setVAO(",c.drawVAO.append(a,b),");"):b(a.shared.vao,".setVAO(",a.shared.vao,".targetVAO);"):(b(a.shared.vao,".setVAO(null);"),M(a,b,c,d.attributes,function(){return!0}));U(a,b,c,d.uniforms,function(){return!0},!1);Y(a,b,b,c)}function pa(a,b){var c=a.proc("draw",
24907
+ 1);Q(a,c);na(a,c,b.context);V(a,c,b.framebuffer);T(a,c,b);W(a,c,b.state);I(a,c,b,!1,!0);var d=b.shader.progVar.append(a,c);c(a.shared.gl,".useProgram(",d,".program);");if(b.shader.program)da(a,c,b,b.shader.program);else{c(a.shared.vao,".setVAO(null);");var e=a.global.def("{}"),f=c.def(d,".id"),g=c.def(e,"[",f,"]");c(a.cond(g).then(g,".call(this,a0);")["else"](g,"=",e,"[",f,"]=",a.link(function(c){return xa(da,a,b,c,1)}),"(",d,");",g,".call(this,a0);"))}0<Object.keys(b.state).length&&c(a.shared.current,
24908
+ ".dirty=true;");a.shared.vao&&c(a.shared.vao,".setVAO(null);")}function ga(a,b,c,d){function e(){return!0}a.batchId="a1";Q(a,b);M(a,b,c,d.attributes,e);U(a,b,c,d.uniforms,e,!1);Y(a,b,b,c)}function Ea(a,b,c,d){function e(a){return a.contextDep&&g||a.propDep}function f(a){return!e(a)}Q(a,b);var g=c.contextDep,h=b.def(),k=b.def();a.shared.props=k;a.batchId=h;var l=a.scope(),n=a.scope();b(l.entry,"for(",h,"=0;",h,"<","a1",";++",h,"){",k,"=","a0","[",h,"];",n,"}",l.exit);c.needsContext&&na(a,n,c.context);
24909
+ c.needsFramebuffer&&V(a,n,c.framebuffer);W(a,n,c.state,e);c.profile&&e(c.profile)&&I(a,n,c,!1,!0);d?(c.useVAO?c.drawVAO?e(c.drawVAO)?n(a.shared.vao,".setVAO(",c.drawVAO.append(a,n),");"):l(a.shared.vao,".setVAO(",c.drawVAO.append(a,l),");"):l(a.shared.vao,".setVAO(",a.shared.vao,".targetVAO);"):(l(a.shared.vao,".setVAO(null);"),M(a,l,c,d.attributes,f),M(a,n,c,d.attributes,e)),U(a,l,c,d.uniforms,f,!1),U(a,n,c,d.uniforms,e,!0),Y(a,l,n,c)):(b=a.global.def("{}"),d=c.shader.progVar.append(a,n),k=n.def(d,
24910
+ ".id"),l=n.def(b,"[",k,"]"),n(a.shared.gl,".useProgram(",d,".program);","if(!",l,"){",l,"=",b,"[",k,"]=",a.link(function(b){return xa(ga,a,c,b,2)}),"(",d,");}",l,".call(this,a0[",h,"],",h,");"))}function Qa(a,b){function c(a){return a.contextDep&&e||a.propDep}var d=a.proc("batch",2);a.batchId="0";Q(a,d);var e=!1,f=!0;Object.keys(b.context).forEach(function(a){e=e||b.context[a].propDep});e||(na(a,d,b.context),f=!1);var g=b.framebuffer,h=!1;g?(g.propDep?e=h=!0:g.contextDep&&e&&(h=!0),h||V(a,d,g)):V(a,
24911
+ d,null);b.state.viewport&&b.state.viewport.propDep&&(e=!0);T(a,d,b);W(a,d,b.state,function(a){return!c(a)});b.profile&&c(b.profile)||I(a,d,b,!1,"a1");b.contextDep=e;b.needsContext=f;b.needsFramebuffer=h;f=b.shader.progVar;if(f.contextDep&&e||f.propDep)Ea(a,d,b,null);else if(f=f.append(a,d),d(a.shared.gl,".useProgram(",f,".program);"),b.shader.program)Ea(a,d,b,b.shader.program);else{d(a.shared.vao,".setVAO(null);");var g=a.global.def("{}"),h=d.def(f,".id"),k=d.def(g,"[",h,"]");d(a.cond(k).then(k,".call(this,a0,a1);")["else"](k,
24912
+ "=",g,"[",h,"]=",a.link(function(c){return xa(Ea,a,b,c,2)}),"(",f,");",k,".call(this,a0,a1);"))}0<Object.keys(b.state).length&&d(a.shared.current,".dirty=true;");a.shared.vao&&d(a.shared.vao,".setVAO(null);")}function ea(a,c){function d(b){var g=c.shader[b];g&&(g=g.append(a,e),isNaN(g)?e.set(f.shader,"."+b,g):e.set(f.shader,"."+b,a.link(g,{stable:!0})))}var e=a.proc("scope",3);a.batchId="a2";var f=a.shared,g=f.current;na(a,e,c.context);c.framebuffer&&c.framebuffer.append(a,e);yb(Object.keys(c.state)).forEach(function(b){var d=
24913
+ c.state[b],g=d.append(a,e);qa(g)?g.forEach(function(c,d){isNaN(c)?e.set(a.next[b],"["+d+"]",c):e.set(a.next[b],"["+d+"]",a.link(c,{stable:!0}))}):la(d)?e.set(f.next,"."+b,a.link(g,{stable:!0})):e.set(f.next,"."+b,g)});I(a,e,c,!0,!0);["elements","offset","count","instances","primitive"].forEach(function(b){var d=c.draw[b];d&&(d=d.append(a,e),isNaN(d)?e.set(f.draw,"."+b,d):e.set(f.draw,"."+b,a.link(d),{stable:!0}))});Object.keys(c.uniforms).forEach(function(d){var g=c.uniforms[d].append(a,e);Array.isArray(g)&&
24914
+ (g="["+g.map(function(b){return isNaN(b)?b:a.link(b,{stable:!0})})+"]");e.set(f.uniforms,"["+a.link(b.id(d),{stable:!0})+"]",g)});Object.keys(c.attributes).forEach(function(b){var d=c.attributes[b].append(a,e),f=a.scopeAttrib(b);Object.keys(new ha).forEach(function(a){e.set(f,"."+a,d[a])})});if(c.scopeVAO){var h=c.scopeVAO.append(a,e);isNaN(h)?e.set(f.vao,".targetVAO",h):e.set(f.vao,".targetVAO",a.link(h,{stable:!0}))}d("vert");d("frag");0<Object.keys(c.state).length&&(e(g,".dirty=true;"),e.exit(g,
24915
+ ".dirty=true;"));e("a1(",a.shared.context,",a0,",a.batchId,");")}function fa(a){if("object"===typeof a&&!qa(a)){for(var b=Object.keys(a),c=0;c<b.length;++c)if(Z.isDynamic(a[b[c]]))return!0;return!1}}function ka(a,b,c){function d(a,b){g.forEach(function(c){var d=e[c];Z.isDynamic(d)&&(d=a.invoke(b,d),b(n,".",c,"=",d,";"))})}var e=b["static"][c];if(e&&fa(e)){var f=a.global,g=Object.keys(e),h=!1,k=!1,l=!1,n=a.global.def("{}");g.forEach(function(b){var c=e[b];if(Z.isDynamic(c))"function"===typeof c&&(c=
24916
+ e[b]=Z.unbox(c)),b=L(c,null),h=h||b.thisDep,l=l||b.propDep,k=k||b.contextDep;else{f(n,".",b,"=");switch(typeof c){case "number":f(c);break;case "string":f('"',c,'"');break;case "object":Array.isArray(c)&&f("[",c.join(),"]");break;default:f(a.link(c))}f(";")}});b.dynamic[c]=new Z.DynamicVariable(4,{thisDep:h,contextDep:k,propDep:l,ref:n,append:d});delete b["static"][c]}}var ha=r.Record,X={add:32774,subtract:32778,"reverse subtract":32779};c.ext_blend_minmax&&(X.min=32775,X.max=32776);var sa=c.angle_instanced_arrays,
24917
+ R=c.webgl_draw_buffers,ja=c.oes_vertex_array_object,ta={dirty:!0,profile:h.profile},Da={},Ma=[],ua={},ma={};y("dither",3024);y("blend.enable",3042);C("blend.color","blendColor",[0,0,0,0]);C("blend.equation","blendEquationSeparate",[32774,32774]);C("blend.func","blendFuncSeparate",[1,0,1,0]);y("depth.enable",2929,!0);C("depth.func","depthFunc",513);C("depth.range","depthRange",[0,1]);C("depth.mask","depthMask",!0);C("colorMask","colorMask",[!0,!0,!0,!0]);y("cull.enable",2884);C("cull.face","cullFace",
24918
+ 1029);C("frontFace","frontFace",2305);C("lineWidth","lineWidth",1);y("polygonOffset.enable",32823);C("polygonOffset.offset","polygonOffset",[0,0]);y("sample.alpha",32926);y("sample.enable",32928);C("sample.coverage","sampleCoverage",[1,!1]);y("stencil.enable",2960);C("stencil.mask","stencilMask",-1);C("stencil.func","stencilFunc",[519,0,-1]);C("stencil.opFront","stencilOpSeparate",[1028,7680,7680,7680]);C("stencil.opBack","stencilOpSeparate",[1029,7680,7680,7680]);y("scissor.enable",3089);C("scissor.box",
24919
+ "scissor",[0,0,a.drawingBufferWidth,a.drawingBufferHeight]);C("viewport","viewport",[0,0,a.drawingBufferWidth,a.drawingBufferHeight]);var tb={gl:a,context:t,strings:b,next:Da,current:ta,draw:n,elements:e,buffer:f,shader:k,attributes:r.state,vao:r,uniforms:u,framebuffer:q,extensions:c,timer:g,isBufferArgs:Sa},Oa={primTypes:Ka,compareFuncs:$a,blendFuncs:Ga,blendEquations:X,stencilOps:Ta,glTypes:Ja,orientationType:zb};R&&(Oa.backBuffer=[1029],Oa.drawBuffer=S(d.maxDrawbuffers,function(a){return 0===a?
24920
+ [0]:S(a,function(a){return 36064+a})}));var ra=0;return{next:Da,current:ta,procs:function(){var a=w(),b=a.proc("poll"),e=a.proc("refresh"),f=a.block();b(f);e(f);var g=a.shared,h=g.gl,k=g.next,l=g.current;f(l,".dirty=false;");V(a,b);V(a,e,null,!0);var n;sa&&(n=a.link(sa));c.oes_vertex_array_object&&e(a.link(c.oes_vertex_array_object),".bindVertexArrayOES(null);");var g=e.def(g.attributes),m=e.def(0),p=a.cond(m,".buffer");p.then(h,".enableVertexAttribArray(i);",h,".bindBuffer(",34962,",",m,".buffer.buffer);",
24921
+ h,".vertexAttribPointer(i,",m,".size,",m,".type,",m,".normalized,",m,".stride,",m,".offset);")["else"](h,".disableVertexAttribArray(i);",h,".vertexAttrib4f(i,",m,".x,",m,".y,",m,".z,",m,".w);",m,".buffer=null;");var q=a.link(d.maxAttributes,{stable:!0});e("for(var i=0;i<",q,";++i){",m,"=",g,"[i];",p,"}");sa&&e("for(var i=0;i<",q,";++i){",n,".vertexAttribDivisorANGLE(i,",g,"[i].divisor);","}");e(a.shared.vao,".currentVAO=null;",a.shared.vao,".setVAO(",a.shared.vao,".targetVAO);");Object.keys(ua).forEach(function(c){var d=
24922
+ ua[c],g=f.def(k,".",c),n=a.block();n("if(",g,"){",h,".enable(",d,")}else{",h,".disable(",d,")}",l,".",c,"=",g,";");e(n);b("if(",g,"!==",l,".",c,"){",n,"}")});Object.keys(ma).forEach(function(c){var d=ma[c],g=ta[c],n,m,p=a.block();p(h,".",d,"(");qa(g)?(d=g.length,n=a.global.def(k,".",c),m=a.global.def(l,".",c),p(S(d,function(a){return n+"["+a+"]"}),");",S(d,function(a){return m+"["+a+"]="+n+"["+a+"];"}).join("")),b("if(",S(d,function(a){return n+"["+a+"]!=="+m+"["+a+"]"}).join("||"),"){",p,"}")):(n=
24923
+ f.def(k,".",c),m=f.def(l,".",c),p(n,");",l,".",c,"=",n,";"),b("if(",n,"!==",m,"){",p,"}"));e(p)});return a.compile()}(),compile:function(a,b,c,d,e){var f=w();f.stats=f.link(e);Object.keys(b["static"]).forEach(function(a){ka(f,b,a)});ac.forEach(function(b){ka(f,a,b)});var g=oa(a,b,c,d,f);g.shader.program&&(g.shader.program.attributes.sort(function(a,b){return a.name<b.name?-1:1}),g.shader.program.uniforms.sort(function(a,b){return a.name<b.name?-1:1}));pa(f,g);ea(f,g);Qa(f,g);return O(f.compile(),
24924
+ {destroy:function(){g.shader.program.destroy()}})}}}function Bb(a,b){for(var c=0;c<a.length;++c)if(a[c]===b)return c;return-1}var O=function(a,b){for(var c=Object.keys(b),d=0;d<c.length;++d)a[c[d]]=b[c[d]];return a},Db=0,Z={DynamicVariable:da,define:function(a,b){return new da(a,bb(b+""))},isDynamic:function(a){return"function"===typeof a&&!a._reglType||a instanceof da},unbox:cb,accessor:bb},ab={next:"function"===typeof requestAnimationFrame?function(a){return requestAnimationFrame(a)}:function(a){return setTimeout(a,
24925
+ 16)},cancel:"function"===typeof cancelAnimationFrame?function(a){return cancelAnimationFrame(a)}:clearTimeout},Cb="undefined"!==typeof performance&&performance.now?function(){return performance.now()}:function(){return+new Date},B=gb();B.zero=gb();var bc=function(a,b){var c=1;b.ext_texture_filter_anisotropic&&(c=a.getParameter(34047));var d=1,f=1;b.webgl_draw_buffers&&(d=a.getParameter(34852),f=a.getParameter(36063));var e=!!b.oes_texture_float;if(e){e=a.createTexture();a.bindTexture(3553,e);a.texImage2D(3553,
24926
+ 0,6408,1,1,0,6408,5126,null);var m=a.createFramebuffer();a.bindFramebuffer(36160,m);a.framebufferTexture2D(36160,36064,3553,e,0);a.bindTexture(3553,null);if(36053!==a.checkFramebufferStatus(36160))e=!1;else{a.viewport(0,0,1,1);a.clearColor(1,0,0,1);a.clear(16384);var q=B.allocType(5126,4);a.readPixels(0,0,1,1,6408,5126,q);a.getError()?e=!1:(a.deleteFramebuffer(m),a.deleteTexture(e),e=1===q[0]);B.freeType(q)}}q=!0;"undefined"!==typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||
24927
+ /Edge/.test(navigator.userAgent))||(q=a.createTexture(),m=B.allocType(5121,36),a.activeTexture(33984),a.bindTexture(34067,q),a.texImage2D(34069,0,6408,3,3,0,6408,5121,m),B.freeType(m),a.bindTexture(34067,null),a.deleteTexture(q),q=!a.getError());return{colorBits:[a.getParameter(3410),a.getParameter(3411),a.getParameter(3412),a.getParameter(3413)],depthBits:a.getParameter(3414),stencilBits:a.getParameter(3415),subpixelBits:a.getParameter(3408),extensions:Object.keys(b).filter(function(a){return!!b[a]}),
24928
+ maxAnisotropic:c,maxDrawbuffers:d,maxColorAttachments:f,pointSizeDims:a.getParameter(33901),lineWidthDims:a.getParameter(33902),maxViewportDims:a.getParameter(3386),maxCombinedTextureUnits:a.getParameter(35661),maxCubeMapSize:a.getParameter(34076),maxRenderbufferSize:a.getParameter(34024),maxTextureUnits:a.getParameter(34930),maxTextureSize:a.getParameter(3379),maxAttributes:a.getParameter(34921),maxVertexUniforms:a.getParameter(36347),maxVertexTextureUnits:a.getParameter(35660),maxVaryingVectors:a.getParameter(36348),
24929
+ maxFragmentUniforms:a.getParameter(36349),glsl:a.getParameter(35724),renderer:a.getParameter(7937),vendor:a.getParameter(7936),version:a.getParameter(7938),readFloat:e,npotTextureCube:q}},P=function(a){return a instanceof Uint8Array||a instanceof Uint16Array||a instanceof Uint32Array||a instanceof Int8Array||a instanceof Int16Array||a instanceof Int32Array||a instanceof Float32Array||a instanceof Float64Array||a instanceof Uint8ClampedArray},T=function(a){return Object.keys(a).map(function(b){return a[b]})},
24930
+ Pa={shape:function(a){for(var b=[];a.length;a=a[0])b.push(a.length);return b},flatten:function(a,b,c,d){var f=1;if(b.length)for(var e=0;e<b.length;++e)f*=b[e];else f=0;c=d||B.allocType(c,f);switch(b.length){case 0:break;case 1:d=b[0];for(b=0;b<d;++b)c[b]=a[b];break;case 2:d=b[0];b=b[1];for(e=f=0;e<d;++e)for(var m=a[e],q=0;q<b;++q)c[f++]=m[q];break;case 3:hb(a,b[0],b[1],b[2],c,0);break;default:ib(a,b,0,c,0)}return c}},Ia={"[object Int8Array]":5120,"[object Int16Array]":5122,"[object Int32Array]":5124,
24931
+ "[object Uint8Array]":5121,"[object Uint8ClampedArray]":5121,"[object Uint16Array]":5123,"[object Uint32Array]":5125,"[object Float32Array]":5126,"[object Float64Array]":5121,"[object ArrayBuffer]":5121},Ja={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,"float":5126,float32:5126},mb={dynamic:35048,stream:35040,"static":35044},Ua=Pa.flatten,lb=Pa.shape,ja=[];ja[5120]=1;ja[5122]=2;ja[5124]=4;ja[5121]=1;ja[5123]=2;ja[5125]=4;ja[5126]=4;var Ka={points:0,point:0,lines:1,line:1,triangles:4,
24932
+ triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},pb=new Float32Array(1),Lb=new Uint32Array(pb.buffer),Pb=[9984,9986,9985,9987],Na=[0,6409,6410,6407,6408],U={};U[6409]=U[6406]=U[6402]=1;U[34041]=U[6410]=2;U[6407]=U[35904]=3;U[6408]=U[35906]=4;var Wa=ra("HTMLCanvasElement"),Xa=ra("OffscreenCanvas"),ub=ra("CanvasRenderingContext2D"),vb=ra("ImageBitmap"),wb=ra("HTMLImageElement"),xb=ra("HTMLVideoElement"),Mb=Object.keys(Ia).concat([Wa,Xa,ub,vb,wb,xb]),ya=[];ya[5121]=1;ya[5126]=
24933
+ 4;ya[36193]=2;ya[5123]=2;ya[5125]=4;var G=[];G[32854]=2;G[32855]=2;G[36194]=2;G[34041]=4;G[33776]=.5;G[33777]=.5;G[33778]=1;G[33779]=1;G[35986]=.5;G[35987]=1;G[34798]=1;G[35840]=.5;G[35841]=.25;G[35842]=.5;G[35843]=.25;G[36196]=.5;var M=[];M[32854]=2;M[32855]=2;M[36194]=2;M[33189]=2;M[36168]=1;M[34041]=4;M[35907]=4;M[34836]=16;M[34842]=8;M[34843]=6;var cc=function(a,b,c,d,f){function e(a){this.id=r++;this.refCount=1;this.renderbuffer=a;this.format=32854;this.height=this.width=0;f.profile&&(this.stats=
24934
+ {size:0})}function m(b){var c=b.renderbuffer;a.bindRenderbuffer(36161,null);a.deleteRenderbuffer(c);b.renderbuffer=null;b.refCount=0;delete k[b.id];d.renderbufferCount--}var q={rgba4:32854,rgb565:36194,"rgb5 a1":32855,depth:33189,stencil:36168,"depth stencil":34041};b.ext_srgb&&(q.srgba=35907);b.ext_color_buffer_half_float&&(q.rgba16f=34842,q.rgb16f=34843);b.webgl_color_buffer_float&&(q.rgba32f=34836);var u=[];Object.keys(q).forEach(function(a){u[q[a]]=a});var r=0,k={};e.prototype.decRef=function(){0>=
24935
+ --this.refCount&&m(this)};f.profile&&(d.getTotalRenderbufferSize=function(){var a=0;Object.keys(k).forEach(function(b){a+=k[b].stats.size});return a});return{create:function(b,c){function g(b,c){var d=0,e=0,k=32854;"object"===typeof b&&b?("shape"in b?(e=b.shape,d=e[0]|0,e=e[1]|0):("radius"in b&&(d=e=b.radius|0),"width"in b&&(d=b.width|0),"height"in b&&(e=b.height|0)),"format"in b&&(k=q[b.format])):"number"===typeof b?(d=b|0,e="number"===typeof c?c|0:d):b||(d=e=1);if(d!==l.width||e!==l.height||k!==
24936
+ l.format)return g.width=l.width=d,g.height=l.height=e,l.format=k,a.bindRenderbuffer(36161,l.renderbuffer),a.renderbufferStorage(36161,k,d,e),f.profile&&(l.stats.size=M[l.format]*l.width*l.height),g.format=u[l.format],g}var l=new e(a.createRenderbuffer());k[l.id]=l;d.renderbufferCount++;g(b,c);g.resize=function(b,c){var d=b|0,e=c|0||d;if(d===l.width&&e===l.height)return g;g.width=l.width=d;g.height=l.height=e;a.bindRenderbuffer(36161,l.renderbuffer);a.renderbufferStorage(36161,l.format,d,e);f.profile&&
24937
+ (l.stats.size=M[l.format]*l.width*l.height);return g};g._reglType="renderbuffer";g._renderbuffer=l;f.profile&&(g.stats=l.stats);g.destroy=function(){l.decRef()};return g},clear:function(){T(k).forEach(m)},restore:function(){T(k).forEach(function(b){b.renderbuffer=a.createRenderbuffer();a.bindRenderbuffer(36161,b.renderbuffer);a.renderbufferStorage(36161,b.format,b.width,b.height)});a.bindRenderbuffer(36161,null)}}},Ya=[];Ya[6408]=4;Ya[6407]=3;var Ra=[];Ra[5121]=1;Ra[5126]=4;Ra[36193]=2;var Vb=[1116352408,
24938
+ 1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,
24939
+ 275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998],Ca=["x","y","z","w"],ac="blend.func blend.equation stencil.func stencil.opFront stencil.opBack sample.coverage viewport scissor.box polygonOffset.offset".split(" "),Ga={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,
24940
+ "dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},$a={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Ta={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},zb={cw:2304,ccw:2305},
24941
+ Ab=new K(!1,!1,!1,function(){}),dc=function(a,b){function c(){this.endQueryIndex=this.startQueryIndex=-1;this.sum=0;this.stats=null}function d(a,b,d){var e=m.pop()||new c;e.startQueryIndex=a;e.endQueryIndex=b;e.sum=0;e.stats=d;q.push(e)}if(!b.ext_disjoint_timer_query)return null;var f=[],e=[],m=[],q=[],u=[],r=[];return{beginQuery:function(a){var c=f.pop()||b.ext_disjoint_timer_query.createQueryEXT();b.ext_disjoint_timer_query.beginQueryEXT(35007,c);e.push(c);d(e.length-1,e.length,a)},endQuery:function(){b.ext_disjoint_timer_query.endQueryEXT(35007)},
24942
+ pushScopeStats:d,update:function(){var a,c;a=e.length;if(0!==a){r.length=Math.max(r.length,a+1);u.length=Math.max(u.length,a+1);u[0]=0;var d=r[0]=0;for(c=a=0;c<e.length;++c){var g=e[c];b.ext_disjoint_timer_query.getQueryObjectEXT(g,34919)?(d+=b.ext_disjoint_timer_query.getQueryObjectEXT(g,34918),f.push(g)):e[a++]=g;u[c+1]=d;r[c+1]=a}e.length=a;for(c=a=0;c<q.length;++c){var d=q[c],l=d.startQueryIndex,g=d.endQueryIndex;d.sum+=u[g]-u[l];l=r[l];g=r[g];g===l?(d.stats.gpuTime+=d.sum/1E6,m.push(d)):(d.startQueryIndex=
24943
+ l,d.endQueryIndex=g,q[a++]=d)}q.length=a}},getNumPendingQueries:function(){return e.length},clear:function(){f.push.apply(f,e);for(var a=0;a<f.length;a++)b.ext_disjoint_timer_query.deleteQueryEXT(f[a]);e.length=0;f.length=0},restore:function(){e.length=0;f.length=0}}};return function(a){function b(){if(0===I.length)z&&z.update(),R=null;else{R=ab.next(b);k();for(var a=I.length-1;0<=a;--a){var c=I[a];c&&c(D,null,0)}g.flush();z&&z.update()}}function c(){!R&&0<I.length&&(R=ab.next(b))}function d(){R&&
24944
+ (ab.cancel(b),R=null)}function f(a){a.preventDefault();d();S.forEach(function(a){a()})}function e(a){g.getError();h.restore();J.restore();G.restore();L.restore();P.restore();V.restore();A.restore();z&&z.restore();M.procs.refresh();c();T.forEach(function(a){a()})}function m(a){function b(a,c){var d={},e={};Object.keys(a).forEach(function(b){var f=a[b];if(Z.isDynamic(f))e[b]=Z.unbox(f,b);else{if(c&&Array.isArray(f))for(var g=0;g<f.length;++g)if(Z.isDynamic(f[g])){e[b]=Z.unbox(f,b);return}d[b]=f}});
24945
+ return{dynamic:e,"static":d}}function c(a){for(;n.length<a;)n.push(null);return n}var d=b(a.context||{},!0),e=b(a.uniforms||{},!0),f=b(a.attributes||{},!1);a=b(function(a){function b(a){if(a in c){var d=c[a];delete c[a];Object.keys(d).forEach(function(b){c[a+"."+b]=d[b]})}}var c=O({},a);delete c.uniforms;delete c.attributes;delete c.context;delete c.vao;"stencil"in c&&c.stencil.op&&(c.stencil.opBack=c.stencil.opFront=c.stencil.op,delete c.stencil.op);b("blend");b("depth");b("cull");b("stencil");b("polygonOffset");
24946
+ b("scissor");b("sample");"vao"in a&&(c.vao=a.vao);return c}(a),!1);var g={gpuTime:0,cpuTime:0,count:0},h=M.compile(a,f,e,d,g),k=h.draw,l=h.batch,m=h.scope,n=[];return O(function(a,b){var d;if("function"===typeof a)return m.call(this,null,a,0);if("function"===typeof b)if("number"===typeof a)for(d=0;d<a;++d)m.call(this,null,b,d);else if(Array.isArray(a))for(d=0;d<a.length;++d)m.call(this,a[d],b,d);else return m.call(this,a,b,0);else if("number"===typeof a){if(0<a)return l.call(this,c(a|0),a|0)}else if(Array.isArray(a)){if(a.length)return l.call(this,
24947
+ a,a.length)}else return k.call(this,a)},{stats:g,destroy:function(){h.destroy()}})}function q(a,b){var c=0;M.procs.poll();var d=b.color;d&&(g.clearColor(+d[0]||0,+d[1]||0,+d[2]||0,+d[3]||0),c|=16384);"depth"in b&&(g.clearDepth(+b.depth),c|=256);"stencil"in b&&(g.clearStencil(b.stencil|0),c|=1024);g.clear(c)}function u(a){I.push(a);c();return{cancel:function(){function b(){var a=Bb(I,b);I[a]=I[I.length-1];--I.length;0>=I.length&&d()}var c=Bb(I,a);I[c]=b}}}function r(){var a=W.viewport,b=W.scissor_box;
24948
+ a[0]=a[1]=b[0]=b[1]=0;D.viewportWidth=D.framebufferWidth=D.drawingBufferWidth=a[2]=b[2]=g.drawingBufferWidth;D.viewportHeight=D.framebufferHeight=D.drawingBufferHeight=a[3]=b[3]=g.drawingBufferHeight}function k(){D.tick+=1;D.time=t();r();M.procs.poll()}function n(){L.refresh();r();M.procs.refresh();z&&z.update()}function t(){return(Cb()-E)/1E3}a=Hb(a);if(!a)return null;var g=a.gl,l=g.getContextAttributes();g.isContextLost();var h=Ib(g,a);if(!h)return null;var p=Eb(),y={vaoCount:0,bufferCount:0,elementsCount:0,
24949
+ framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0},C=a.cachedCode||{},w=h.extensions,z=dc(g,w),E=Cb(),B=g.drawingBufferWidth,H=g.drawingBufferHeight,D={tick:0,time:0,viewportWidth:B,viewportHeight:H,framebufferWidth:B,framebufferHeight:H,drawingBufferWidth:B,drawingBufferHeight:H,pixelRatio:a.pixelRatio},B={elements:null,primitive:4,count:-1,offset:0,instances:-1},v=bc(g,w),G=Jb(g,y,a,function(a){return A.destroyBuffer(a)}),K=Kb(g,w,G,y),A=Rb(g,w,v,
24950
+ y,G,K,B),J=Sb(g,p,y,a),L=Nb(g,w,v,function(){M.procs.poll()},D,y,a),P=cc(g,w,v,y,a),V=Qb(g,w,v,L,P,y),M=Zb(g,p,w,v,G,K,L,V,{},A,J,B,D,z,C,a),p=Tb(g,V,M.procs.poll,D,l,w,v),W=M.next,Q=g.canvas,I=[],S=[],T=[],U=[a.onDestroy],R=null;Q&&(Q.addEventListener("webglcontextlost",f,!1),Q.addEventListener("webglcontextrestored",e,!1));var Y=V.setFBO=m({framebuffer:Z.define.call(null,1,"framebuffer")});n();l=O(m,{clear:function(a){if("framebuffer"in a)if(a.framebuffer&&"framebufferCube"===a.framebuffer_reglType)for(var b=
24951
+ 0;6>b;++b)Y(O({framebuffer:a.framebuffer.faces[b]},a),q);else Y(a,q);else q(null,a)},prop:Z.define.bind(null,1),context:Z.define.bind(null,2),"this":Z.define.bind(null,3),draw:m({}),buffer:function(a){return G.create(a,34962,!1,!1)},elements:function(a){return K.create(a,!1)},texture:L.create2D,cube:L.createCube,renderbuffer:P.create,framebuffer:V.create,framebufferCube:V.createCube,vao:A.createVAO,attributes:l,frame:u,on:function(a,b){var c;switch(a){case "frame":return u(b);case "lost":c=S;break;
24952
+ case "restore":c=T;break;case "destroy":c=U}c.push(b);return{cancel:function(){for(var a=0;a<c.length;++a)if(c[a]===b){c[a]=c[c.length-1];c.pop();break}}}},limits:v,hasExtension:function(a){return 0<=v.extensions.indexOf(a.toLowerCase())},read:p,destroy:function(){I.length=0;d();Q&&(Q.removeEventListener("webglcontextlost",f),Q.removeEventListener("webglcontextrestored",e));J.clear();V.clear();P.clear();A.clear();L.clear();K.clear();G.clear();z&&z.clear();U.forEach(function(a){a()})},_gl:g,_refresh:n,
24953
+ poll:function(){k();z&&z.update()},now:t,stats:y,getCachedCode:function(){return C},preloadCachedCode:function(a){Object.entries(a).forEach(function(a){C[a[0]]=a[1]})}});a.onDone(null,l);return l}});
24948
24954
 
24949
24955
  },{}],198:[function(_dereq_,module,exports){
24950
24956
  'use strict'
@@ -39223,7 +39229,7 @@ drawing.setTextPointsScale = function(selection, xScale, yScale) {
39223
39229
  });
39224
39230
  };
39225
39231
 
39226
- },{"../../components/fx/helpers":292,"../../constants/alignment":361,"../../constants/interactions":365,"../../constants/xmlns_namespaces":367,"../../lib":388,"../../lib/svg_text_utils":414,"../../registry":481,"../../traces/scatter/make_bubble_size_func":546,"../../traces/scatter/subtypes":554,"../color":256,"../colorscale":268,"./symbol_defs":279,"@plotly/d3":14,"fast-isnumeric":121,"tinycolor2":204}],279:[function(_dereq_,module,exports){
39232
+ },{"../../components/fx/helpers":292,"../../constants/alignment":361,"../../constants/interactions":365,"../../constants/xmlns_namespaces":367,"../../lib":388,"../../lib/svg_text_utils":414,"../../registry":481,"../../traces/scatter/make_bubble_size_func":547,"../../traces/scatter/subtypes":555,"../color":256,"../colorscale":268,"./symbol_defs":279,"@plotly/d3":14,"fast-isnumeric":121,"tinycolor2":204}],279:[function(_dereq_,module,exports){
39227
39233
  'use strict';
39228
39234
 
39229
39235
  var d3 = _dereq_('@plotly/d3');
@@ -40322,7 +40328,7 @@ function errorCoords(d, xa, ya) {
40322
40328
  return out;
40323
40329
  }
40324
40330
 
40325
- },{"../../traces/scatter/subtypes":554,"../drawing":278,"@plotly/d3":14,"fast-isnumeric":121}],286:[function(_dereq_,module,exports){
40331
+ },{"../../traces/scatter/subtypes":555,"../drawing":278,"@plotly/d3":14,"fast-isnumeric":121}],286:[function(_dereq_,module,exports){
40326
40332
  'use strict';
40327
40333
 
40328
40334
  var d3 = _dereq_('@plotly/d3');
@@ -46285,7 +46291,7 @@ function dimAttr(v, dflt, max) {
46285
46291
  return v;
46286
46292
  }
46287
46293
 
46288
- },{"../../lib":388,"../../registry":481,"../../traces/pie/helpers":522,"../../traces/pie/style_one":523,"../../traces/scatter/subtypes":554,"../color":256,"../colorscale/helpers":267,"../drawing":278,"./constants":307,"@plotly/d3":14}],315:[function(_dereq_,module,exports){
46294
+ },{"../../lib":388,"../../registry":481,"../../traces/pie/helpers":523,"../../traces/pie/style_one":524,"../../traces/scatter/subtypes":555,"../color":256,"../colorscale/helpers":267,"../drawing":278,"./constants":307,"@plotly/d3":14}],315:[function(_dereq_,module,exports){
46289
46295
  'use strict';
46290
46296
 
46291
46297
  var constants = _dereq_('./constants');
@@ -47519,7 +47525,7 @@ function fillCustomButton(customButtons) {
47519
47525
  return customButtons;
47520
47526
  }
47521
47527
 
47522
- },{"../../plots/cartesian/axis_ids":442,"../../registry":481,"../../traces/scatter/subtypes":554,"../fx/helpers":292,"./buttons":316,"./constants":317,"./modebar":321}],321:[function(_dereq_,module,exports){
47528
+ },{"../../plots/cartesian/axis_ids":442,"../../registry":481,"../../traces/scatter/subtypes":555,"../fx/helpers":292,"./buttons":316,"./constants":317,"./modebar":321}],321:[function(_dereq_,module,exports){
47523
47529
  'use strict';
47524
47530
 
47525
47531
  var d3 = _dereq_('@plotly/d3');
@@ -47862,7 +47868,7 @@ function createModeBar(gd, buttons) {
47862
47868
 
47863
47869
  module.exports = createModeBar;
47864
47870
 
47865
- },{"../../fonts/ploticon":369,"../../lib":388,"../../version":587,"@plotly/d3":14,"fast-isnumeric":121}],322:[function(_dereq_,module,exports){
47871
+ },{"../../fonts/ploticon":369,"../../lib":388,"../../version":590,"@plotly/d3":14,"fast-isnumeric":121}],322:[function(_dereq_,module,exports){
47866
47872
  'use strict';
47867
47873
 
47868
47874
  var fontAttrs = _dereq_('../../plots/font_attributes');
@@ -49454,7 +49460,7 @@ module.exports = templatedArray('shape', {
49454
49460
  editType: 'arraydraw'
49455
49461
  });
49456
49462
 
49457
- },{"../../constants/axis_placeable_objects":362,"../../lib/extend":380,"../../plot_api/plot_template":427,"../../traces/scatter/attributes":529,"../annotations/attributes":239,"../drawing/attributes":277}],337:[function(_dereq_,module,exports){
49463
+ },{"../../constants/axis_placeable_objects":362,"../../lib/extend":380,"../../plot_api/plot_template":427,"../../traces/scatter/attributes":530,"../annotations/attributes":239,"../drawing/attributes":277}],337:[function(_dereq_,module,exports){
49458
49464
  'use strict';
49459
49465
 
49460
49466
  var Lib = _dereq_('../../lib');
@@ -54604,7 +54610,7 @@ exports.Fx = {
54604
54610
  exports.Snapshot = _dereq_('./snapshot');
54605
54611
  exports.PlotSchema = _dereq_('./plot_api/plot_schema');
54606
54612
 
54607
- },{"../build/plotcss":1,"./components/annotations":247,"./components/annotations3d":252,"./components/colorbar":262,"./components/colorscale":268,"./components/errorbars":284,"./components/fx":296,"./components/grid":300,"./components/images":305,"./components/legend":313,"./components/modebar":319,"./components/rangeselector":327,"./components/rangeslider":334,"./components/shapes":348,"./components/sliders":353,"./components/updatemenus":359,"./fonts/ploticon":369,"./locale-en":418,"./locale-en-us":417,"./plot_api":422,"./plot_api/plot_schema":426,"./plots/plots":479,"./registry":481,"./snapshot":486,"./traces/scatter":541,"./version":587,"native-promise-only":174}],369:[function(_dereq_,module,exports){
54613
+ },{"../build/plotcss":1,"./components/annotations":247,"./components/annotations3d":252,"./components/colorbar":262,"./components/colorscale":268,"./components/errorbars":284,"./components/fx":296,"./components/grid":300,"./components/images":305,"./components/legend":313,"./components/modebar":319,"./components/rangeselector":327,"./components/rangeslider":334,"./components/shapes":348,"./components/sliders":353,"./components/updatemenus":359,"./fonts/ploticon":369,"./locale-en":418,"./locale-en-us":417,"./plot_api":422,"./plot_api/plot_schema":426,"./plots/plots":479,"./registry":481,"./snapshot":486,"./traces/scatter":542,"./version":590,"native-promise-only":174}],369:[function(_dereq_,module,exports){
54608
54614
  'use strict';
54609
54615
 
54610
54616
  module.exports = {
@@ -59782,12 +59788,15 @@ var createRegl = _dereq_('regl');
59782
59788
  *
59783
59789
  * @return {boolean} true if all createRegl calls succeeded, false otherwise
59784
59790
  */
59785
- module.exports = function prepareRegl(gd, extensions) {
59791
+ module.exports = function prepareRegl(gd, extensions, reglPrecompiled) {
59786
59792
  var fullLayout = gd._fullLayout;
59787
59793
  var success = true;
59788
59794
 
59789
59795
  fullLayout._glcanvas.each(function(d) {
59790
- if(d.regl) return;
59796
+ if(d.regl) {
59797
+ d.regl.preloadCachedCode(reglPrecompiled);
59798
+ return;
59799
+ }
59791
59800
  // only parcoords needs pick layer
59792
59801
  if(d.pick && !fullLayout._has('parcoords')) return;
59793
59802
 
@@ -59799,7 +59808,8 @@ module.exports = function prepareRegl(gd, extensions) {
59799
59808
  preserveDrawingBuffer: true
59800
59809
  },
59801
59810
  pixelRatio: gd._context.plotGlPixelRatio || global.devicePixelRatio,
59802
- extensions: extensions || []
59811
+ extensions: extensions || [],
59812
+ cachedCode: reglPrecompiled || {}
59803
59813
  });
59804
59814
  } catch(e) {
59805
59815
  success = false;
@@ -69334,7 +69344,7 @@ function toImage(gd, opts) {
69334
69344
 
69335
69345
  module.exports = toImage;
69336
69346
 
69337
- },{"../lib":388,"../plots/plots":479,"../snapshot/helpers":485,"../snapshot/svgtoimg":487,"../snapshot/tosvg":489,"../version":587,"./plot_api":424,"fast-isnumeric":121}],431:[function(_dereq_,module,exports){
69347
+ },{"../lib":388,"../plots/plots":479,"../snapshot/helpers":485,"../snapshot/svgtoimg":487,"../snapshot/tosvg":489,"../version":590,"./plot_api":424,"fast-isnumeric":121}],431:[function(_dereq_,module,exports){
69338
69348
  'use strict';
69339
69349
 
69340
69350
  var Lib = _dereq_('../lib');
@@ -84066,7 +84076,7 @@ proto.hoverFormatter = function(axisName, val) {
84066
84076
  return Axes.tickText(axis, axis.c2l(val), 'hover').text;
84067
84077
  };
84068
84078
 
84069
- },{"../../../stackgl_modules":588,"../../components/dragelement/helpers":274,"../../components/fx":296,"../../lib/show_no_webgl_msg":410,"../../plots/cartesian/axes":438,"../../registry":481,"../cartesian/autorange":437,"../cartesian/constants":445,"../cartesian/constraints":446,"./camera":472,"./convert":473,"webgl-context":221}],476:[function(_dereq_,module,exports){
84079
+ },{"../../../stackgl_modules":591,"../../components/dragelement/helpers":274,"../../components/fx":296,"../../lib/show_no_webgl_msg":410,"../../plots/cartesian/axes":438,"../../registry":481,"../cartesian/autorange":437,"../cartesian/constants":445,"../cartesian/constraints":446,"./camera":472,"./convert":473,"webgl-context":221}],476:[function(_dereq_,module,exports){
84070
84080
  'use strict';
84071
84081
 
84072
84082
  function xformMatrix(m, v) {
@@ -89187,7 +89197,7 @@ module.exports = extendFlat({
89187
89197
  colorScaleAttrs('', {cLetter: 'z', autoColorDflt: false})
89188
89198
  );
89189
89199
 
89190
- },{"../../components/colorscale/attributes":263,"../../lib/extend":380,"../../plots/attributes":434,"../../plots/cartesian/axis_format_attributes":441,"../../plots/font_attributes":469,"../../plots/template_attributes":480,"../scatter/attributes":529}],492:[function(_dereq_,module,exports){
89200
+ },{"../../components/colorscale/attributes":263,"../../lib/extend":380,"../../plots/attributes":434,"../../plots/cartesian/axis_format_attributes":441,"../../plots/font_attributes":469,"../../plots/template_attributes":480,"../scatter/attributes":530}],492:[function(_dereq_,module,exports){
89191
89201
  'use strict';
89192
89202
 
89193
89203
  var Registry = _dereq_('../../registry');
@@ -90120,7 +90130,7 @@ function createHeatmap(scene, fullTrace, calcTrace) {
90120
90130
 
90121
90131
  module.exports = createHeatmap;
90122
90132
 
90123
- },{"../../../stackgl_modules":588,"../../lib/str2rgbarray":413,"../../plots/cartesian/axes":438}],502:[function(_dereq_,module,exports){
90133
+ },{"../../../stackgl_modules":591,"../../lib/str2rgbarray":413,"../../plots/cartesian/axes":438}],502:[function(_dereq_,module,exports){
90124
90134
  'use strict';
90125
90135
 
90126
90136
  var Lib = _dereq_('../../lib');
@@ -91866,7 +91876,28 @@ module.exports = {
91866
91876
  cleanRanges: cleanRanges
91867
91877
  };
91868
91878
 
91869
- },{"../../lib":388,"../../lib/gup":385,"./constants":514,"@plotly/d3":14}],512:[function(_dereq_,module,exports){
91879
+ },{"../../lib":388,"../../lib/gup":385,"./constants":515,"@plotly/d3":14}],512:[function(_dereq_,module,exports){
91880
+ 'use strict';
91881
+
91882
+ module.exports = {
91883
+ attributes: _dereq_('./attributes'),
91884
+ supplyDefaults: _dereq_('./defaults'),
91885
+ calc: _dereq_('./calc'),
91886
+ colorbar: {
91887
+ container: 'line',
91888
+ min: 'cmin',
91889
+ max: 'cmax'
91890
+ },
91891
+
91892
+ moduleType: 'trace',
91893
+ name: 'parcoords',
91894
+ basePlotModule: _dereq_('./base_plot'),
91895
+ categories: ['gl', 'regl', 'noOpacity', 'noHover'],
91896
+ meta: {
91897
+ }
91898
+ };
91899
+
91900
+ },{"./attributes":510,"./base_plot":513,"./calc":514,"./defaults":516}],513:[function(_dereq_,module,exports){
91870
91901
  'use strict';
91871
91902
 
91872
91903
  var d3 = _dereq_('@plotly/d3');
@@ -91925,7 +91956,7 @@ exports.toSVG = function(gd) {
91925
91956
  }, 60);
91926
91957
  };
91927
91958
 
91928
- },{"../../constants/xmlns_namespaces":367,"../../plots/get_data":471,"./plot":521,"@plotly/d3":14}],513:[function(_dereq_,module,exports){
91959
+ },{"../../constants/xmlns_namespaces":367,"../../plots/get_data":471,"./plot":522,"@plotly/d3":14}],514:[function(_dereq_,module,exports){
91929
91960
  'use strict';
91930
91961
 
91931
91962
  var isArrayOrTypedArray = _dereq_('../../lib').isArrayOrTypedArray;
@@ -91961,7 +91992,7 @@ function constHalf(len) {
91961
91992
  return out;
91962
91993
  }
91963
91994
 
91964
- },{"../../components/colorscale":268,"../../lib":388,"../../lib/gup":385}],514:[function(_dereq_,module,exports){
91995
+ },{"../../components/colorscale":268,"../../lib":388,"../../lib/gup":385}],515:[function(_dereq_,module,exports){
91965
91996
  'use strict';
91966
91997
 
91967
91998
 
@@ -92014,7 +92045,7 @@ module.exports = {
92014
92045
  }
92015
92046
  };
92016
92047
 
92017
- },{}],515:[function(_dereq_,module,exports){
92048
+ },{}],516:[function(_dereq_,module,exports){
92018
92049
  'use strict';
92019
92050
 
92020
92051
  var Lib = _dereq_('../../lib');
@@ -92126,7 +92157,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
92126
92157
  coerce('labelside');
92127
92158
  };
92128
92159
 
92129
- },{"../../components/colorscale/defaults":266,"../../components/colorscale/helpers":267,"../../lib":388,"../../plots/array_container_defaults":433,"../../plots/cartesian/axes":438,"../../plots/domain":468,"./attributes":510,"./axisbrush":511,"./constants":514,"./merge_length":519}],516:[function(_dereq_,module,exports){
92160
+ },{"../../components/colorscale/defaults":266,"../../components/colorscale/helpers":267,"../../lib":388,"../../plots/array_container_defaults":433,"../../plots/cartesian/axes":438,"../../plots/domain":468,"./attributes":510,"./axisbrush":511,"./constants":515,"./merge_length":520}],517:[function(_dereq_,module,exports){
92130
92161
  'use strict';
92131
92162
 
92132
92163
  var isTypedArray = _dereq_('../../lib').isTypedArray;
@@ -92143,29 +92174,16 @@ exports.isVisible = function(dimension) {
92143
92174
  return dimension.visible || !('visible' in dimension);
92144
92175
  };
92145
92176
 
92146
- },{"../../lib":388}],517:[function(_dereq_,module,exports){
92177
+ },{"../../lib":388}],518:[function(_dereq_,module,exports){
92147
92178
  'use strict';
92148
92179
 
92149
- module.exports = {
92150
- attributes: _dereq_('./attributes'),
92151
- supplyDefaults: _dereq_('./defaults'),
92152
- calc: _dereq_('./calc'),
92153
- plot: _dereq_('./plot'),
92154
- colorbar: {
92155
- container: 'line',
92156
- min: 'cmin',
92157
- max: 'cmax'
92158
- },
92180
+ var index = _dereq_('./base_index');
92159
92181
 
92160
- moduleType: 'trace',
92161
- name: 'parcoords',
92162
- basePlotModule: _dereq_('./base_plot'),
92163
- categories: ['gl', 'regl', 'noOpacity', 'noHover'],
92164
- meta: {
92165
- }
92166
- };
92182
+ index.plot = _dereq_('./plot');
92183
+
92184
+ module.exports = index;
92167
92185
 
92168
- },{"./attributes":510,"./base_plot":512,"./calc":513,"./defaults":515,"./plot":521}],518:[function(_dereq_,module,exports){
92186
+ },{"./base_index":512,"./plot":522}],519:[function(_dereq_,module,exports){
92169
92187
  'use strict';
92170
92188
 
92171
92189
  var glslify = _dereq_('glslify');
@@ -92709,7 +92727,7 @@ module.exports = function(canvasGL, d) {
92709
92727
  };
92710
92728
  };
92711
92729
 
92712
- },{"../../lib":388,"./constants":514,"glslify":158}],519:[function(_dereq_,module,exports){
92730
+ },{"../../lib":388,"./constants":515,"glslify":158}],520:[function(_dereq_,module,exports){
92713
92731
  'use strict';
92714
92732
 
92715
92733
  /**
@@ -92739,7 +92757,7 @@ module.exports = function(traceOut, dimensions, dataAttr, len) {
92739
92757
  return len;
92740
92758
  };
92741
92759
 
92742
- },{}],520:[function(_dereq_,module,exports){
92760
+ },{}],521:[function(_dereq_,module,exports){
92743
92761
  'use strict';
92744
92762
 
92745
92763
  var d3 = _dereq_('@plotly/d3');
@@ -93500,12 +93518,13 @@ module.exports = function parcoords(gd, cdModule, layout, callbacks) {
93500
93518
  brush.ensureAxisBrush(axisOverlays, paperColor);
93501
93519
  };
93502
93520
 
93503
- },{"../../components/colorscale":268,"../../components/drawing":278,"../../lib":388,"../../lib/gup":385,"../../lib/svg_text_utils":414,"../../plots/cartesian/axes":438,"./axisbrush":511,"./constants":514,"./helpers":516,"./lines":518,"@plotly/d3":14,"color-rgba":37}],521:[function(_dereq_,module,exports){
93521
+ },{"../../components/colorscale":268,"../../components/drawing":278,"../../lib":388,"../../lib/gup":385,"../../lib/svg_text_utils":414,"../../plots/cartesian/axes":438,"./axisbrush":511,"./constants":515,"./helpers":517,"./lines":519,"@plotly/d3":14,"color-rgba":37}],522:[function(_dereq_,module,exports){
93504
93522
  'use strict';
93505
93523
 
93506
93524
  var parcoords = _dereq_('./parcoords');
93507
93525
  var prepareRegl = _dereq_('../../lib/prepare_regl');
93508
93526
  var isVisible = _dereq_('./helpers').isVisible;
93527
+ var reglPrecompiled = {};
93509
93528
 
93510
93529
  function newIndex(visibleIndices, orig, dim) {
93511
93530
  var origIndex = orig.indexOf(dim);
@@ -93526,10 +93545,10 @@ function sorter(visibleIndices, orig) {
93526
93545
  };
93527
93546
  }
93528
93547
 
93529
- module.exports = function plot(gd, cdModule) {
93548
+ var exports = module.exports = function plot(gd, cdModule) {
93530
93549
  var fullLayout = gd._fullLayout;
93531
93550
 
93532
- var success = prepareRegl(gd);
93551
+ var success = prepareRegl(gd, [], reglPrecompiled);
93533
93552
  if(!success) return;
93534
93553
 
93535
93554
  var currentDims = {};
@@ -93647,7 +93666,9 @@ module.exports = function plot(gd, cdModule) {
93647
93666
  );
93648
93667
  };
93649
93668
 
93650
- },{"../../lib/prepare_regl":401,"./helpers":516,"./parcoords":520}],522:[function(_dereq_,module,exports){
93669
+ exports.reglPrecompiled = reglPrecompiled;
93670
+
93671
+ },{"../../lib/prepare_regl":401,"./helpers":517,"./parcoords":521}],523:[function(_dereq_,module,exports){
93651
93672
  'use strict';
93652
93673
 
93653
93674
  var Lib = _dereq_('../../lib');
@@ -93687,7 +93708,7 @@ exports.getRotationAngle = function(rotation) {
93687
93708
  return (rotation === 'auto' ? 0 : rotation) * Math.PI / 180;
93688
93709
  };
93689
93710
 
93690
- },{"../../lib":388}],523:[function(_dereq_,module,exports){
93711
+ },{"../../lib":388}],524:[function(_dereq_,module,exports){
93691
93712
  'use strict';
93692
93713
 
93693
93714
  var Color = _dereq_('../../components/color');
@@ -93703,7 +93724,7 @@ module.exports = function styleOne(s, pt, trace) {
93703
93724
  .call(Color.stroke, lineColor);
93704
93725
  };
93705
93726
 
93706
- },{"../../components/color":256,"./helpers":522}],524:[function(_dereq_,module,exports){
93727
+ },{"../../components/color":256,"./helpers":523}],525:[function(_dereq_,module,exports){
93707
93728
  'use strict';
93708
93729
 
93709
93730
  var scatterglAttrs = _dereq_('../scatter/attributes');
@@ -93787,7 +93808,7 @@ module.exports = {
93787
93808
  transforms: undefined
93788
93809
  };
93789
93810
 
93790
- },{"../scatter/attributes":529}],525:[function(_dereq_,module,exports){
93811
+ },{"../scatter/attributes":530}],526:[function(_dereq_,module,exports){
93791
93812
  'use strict';
93792
93813
 
93793
93814
  var createPointCloudRenderer = _dereq_('../../../stackgl_modules').gl_pointcloud2d;
@@ -93981,7 +94002,7 @@ function createPointcloud(scene, data) {
93981
94002
 
93982
94003
  module.exports = createPointcloud;
93983
94004
 
93984
- },{"../../../stackgl_modules":588,"../../lib/str2rgbarray":413,"../../plots/cartesian/autorange":437,"../scatter/get_trace_color":539}],526:[function(_dereq_,module,exports){
94005
+ },{"../../../stackgl_modules":591,"../../lib/str2rgbarray":413,"../../plots/cartesian/autorange":437,"../scatter/get_trace_color":540}],527:[function(_dereq_,module,exports){
93985
94006
  'use strict';
93986
94007
 
93987
94008
  var Lib = _dereq_('../../lib');
@@ -94020,7 +94041,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor) {
94020
94041
  traceOut._length = null;
94021
94042
  };
94022
94043
 
94023
- },{"../../lib":388,"./attributes":524}],527:[function(_dereq_,module,exports){
94044
+ },{"../../lib":388,"./attributes":525}],528:[function(_dereq_,module,exports){
94024
94045
  'use strict';
94025
94046
 
94026
94047
  var deprecationWarning = [
@@ -94044,7 +94065,7 @@ module.exports = {
94044
94065
  }
94045
94066
  };
94046
94067
 
94047
- },{"../../plots/gl2d":474,"../scatter3d/calc":557,"./attributes":524,"./convert":525,"./defaults":526}],528:[function(_dereq_,module,exports){
94068
+ },{"../../plots/gl2d":474,"../scatter3d/calc":558,"./attributes":525,"./convert":526,"./defaults":527}],529:[function(_dereq_,module,exports){
94048
94069
  'use strict';
94049
94070
 
94050
94071
  var Lib = _dereq_('../../lib');
@@ -94087,7 +94108,7 @@ module.exports = function arraysToCalcdata(cd, trace) {
94087
94108
  }
94088
94109
  };
94089
94110
 
94090
- },{"../../lib":388}],529:[function(_dereq_,module,exports){
94111
+ },{"../../lib":388}],530:[function(_dereq_,module,exports){
94091
94112
  'use strict';
94092
94113
 
94093
94114
  var axisHoverFormat = _dereq_('../../plots/cartesian/axis_format_attributes').axisHoverFormat;
@@ -94439,7 +94460,7 @@ module.exports = {
94439
94460
  }),
94440
94461
  };
94441
94462
 
94442
- },{"../../components/colorscale/attributes":263,"../../components/drawing":278,"../../components/drawing/attributes":277,"../../lib/extend":380,"../../plots/cartesian/axis_format_attributes":441,"../../plots/font_attributes":469,"../../plots/template_attributes":480,"./constants":533}],530:[function(_dereq_,module,exports){
94463
+ },{"../../components/colorscale/attributes":263,"../../components/drawing":278,"../../components/drawing/attributes":277,"../../lib/extend":380,"../../plots/cartesian/axis_format_attributes":441,"../../plots/font_attributes":469,"../../plots/template_attributes":480,"./constants":534}],531:[function(_dereq_,module,exports){
94443
94464
  'use strict';
94444
94465
 
94445
94466
  var isNumeric = _dereq_('fast-isnumeric');
@@ -94736,7 +94757,7 @@ module.exports = {
94736
94757
  getStackOpts: getStackOpts
94737
94758
  };
94738
94759
 
94739
- },{"../../constants/numerical":366,"../../lib":388,"../../plots/cartesian/align_period":435,"../../plots/cartesian/axes":438,"./arrays_to_calcdata":528,"./calc_selection":531,"./colorscale_calc":532,"./subtypes":554,"fast-isnumeric":121}],531:[function(_dereq_,module,exports){
94760
+ },{"../../constants/numerical":366,"../../lib":388,"../../plots/cartesian/align_period":435,"../../plots/cartesian/axes":438,"./arrays_to_calcdata":529,"./calc_selection":532,"./colorscale_calc":533,"./subtypes":555,"fast-isnumeric":121}],532:[function(_dereq_,module,exports){
94740
94761
  'use strict';
94741
94762
 
94742
94763
  var Lib = _dereq_('../../lib');
@@ -94747,7 +94768,7 @@ module.exports = function calcSelection(cd, trace) {
94747
94768
  }
94748
94769
  };
94749
94770
 
94750
- },{"../../lib":388}],532:[function(_dereq_,module,exports){
94771
+ },{"../../lib":388}],533:[function(_dereq_,module,exports){
94751
94772
  'use strict';
94752
94773
 
94753
94774
  var hasColorscale = _dereq_('../../components/colorscale/helpers').hasColorscale;
@@ -94782,7 +94803,7 @@ module.exports = function calcMarkerColorscale(gd, trace) {
94782
94803
  }
94783
94804
  };
94784
94805
 
94785
- },{"../../components/colorscale/calc":264,"../../components/colorscale/helpers":267,"./subtypes":554}],533:[function(_dereq_,module,exports){
94806
+ },{"../../components/colorscale/calc":264,"../../components/colorscale/helpers":267,"./subtypes":555}],534:[function(_dereq_,module,exports){
94786
94807
  'use strict';
94787
94808
 
94788
94809
  module.exports = {
@@ -94802,7 +94823,7 @@ module.exports = {
94802
94823
  eventDataKeys: []
94803
94824
  };
94804
94825
 
94805
- },{}],534:[function(_dereq_,module,exports){
94826
+ },{}],535:[function(_dereq_,module,exports){
94806
94827
  'use strict';
94807
94828
 
94808
94829
  var calc = _dereq_('./calc');
@@ -94974,7 +94995,7 @@ function getInterp(calcTrace, index, position, posAttr) {
94974
94995
  return pt0.s + (pt1.s - pt0.s) * (position - pt0[posAttr]) / (pt1[posAttr] - pt0[posAttr]);
94975
94996
  }
94976
94997
 
94977
- },{"./calc":530}],535:[function(_dereq_,module,exports){
94998
+ },{"./calc":531}],536:[function(_dereq_,module,exports){
94978
94999
  'use strict';
94979
95000
 
94980
95001
 
@@ -95004,7 +95025,7 @@ module.exports = function crossTraceDefaults(fullData) {
95004
95025
  }
95005
95026
  };
95006
95027
 
95007
- },{}],536:[function(_dereq_,module,exports){
95028
+ },{}],537:[function(_dereq_,module,exports){
95008
95029
  'use strict';
95009
95030
 
95010
95031
  var Lib = _dereq_('../../lib');
@@ -95093,7 +95114,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
95093
95114
  Lib.coerceSelectionMarkerOpacity(traceOut, coerce);
95094
95115
  };
95095
95116
 
95096
- },{"../../lib":388,"../../registry":481,"./attributes":529,"./constants":533,"./fillcolor_defaults":537,"./line_defaults":542,"./line_shape_defaults":544,"./marker_defaults":548,"./period_defaults":549,"./stack_defaults":552,"./subtypes":554,"./text_defaults":555,"./xy_defaults":556}],537:[function(_dereq_,module,exports){
95117
+ },{"../../lib":388,"../../registry":481,"./attributes":530,"./constants":534,"./fillcolor_defaults":538,"./line_defaults":543,"./line_shape_defaults":545,"./marker_defaults":549,"./period_defaults":550,"./stack_defaults":553,"./subtypes":555,"./text_defaults":556,"./xy_defaults":557}],538:[function(_dereq_,module,exports){
95097
95118
  'use strict';
95098
95119
 
95099
95120
  var Color = _dereq_('../../components/color');
@@ -95121,7 +95142,7 @@ module.exports = function fillColorDefaults(traceIn, traceOut, defaultColor, coe
95121
95142
  ));
95122
95143
  };
95123
95144
 
95124
- },{"../../components/color":256,"../../lib":388}],538:[function(_dereq_,module,exports){
95145
+ },{"../../components/color":256,"../../lib":388}],539:[function(_dereq_,module,exports){
95125
95146
  'use strict';
95126
95147
 
95127
95148
  var Axes = _dereq_('../../plots/cartesian/axes');
@@ -95139,7 +95160,7 @@ module.exports = function formatLabels(cdi, trace, fullLayout) {
95139
95160
  return labels;
95140
95161
  };
95141
95162
 
95142
- },{"../../plots/cartesian/axes":438}],539:[function(_dereq_,module,exports){
95163
+ },{"../../plots/cartesian/axes":438}],540:[function(_dereq_,module,exports){
95143
95164
  'use strict';
95144
95165
 
95145
95166
  var Color = _dereq_('../../components/color');
@@ -95179,7 +95200,7 @@ module.exports = function getTraceColor(trace, di) {
95179
95200
  }
95180
95201
  };
95181
95202
 
95182
- },{"../../components/color":256,"./subtypes":554}],540:[function(_dereq_,module,exports){
95203
+ },{"../../components/color":256,"./subtypes":555}],541:[function(_dereq_,module,exports){
95183
95204
  'use strict';
95184
95205
 
95185
95206
  var Lib = _dereq_('../../lib');
@@ -95390,7 +95411,7 @@ module.exports = function hoverPoints(pointData, xval, yval, hovermode) {
95390
95411
  }
95391
95412
  };
95392
95413
 
95393
- },{"../../components/color":256,"../../components/fx":296,"../../lib":388,"../../registry":481,"./get_trace_color":539}],541:[function(_dereq_,module,exports){
95414
+ },{"../../components/color":256,"../../components/fx":296,"../../lib":388,"../../registry":481,"./get_trace_color":540}],542:[function(_dereq_,module,exports){
95394
95415
  'use strict';
95395
95416
 
95396
95417
  var subtypes = _dereq_('./subtypes');
@@ -95427,7 +95448,7 @@ module.exports = {
95427
95448
  }
95428
95449
  };
95429
95450
 
95430
- },{"../../plots/cartesian":452,"./arrays_to_calcdata":528,"./attributes":529,"./calc":530,"./cross_trace_calc":534,"./cross_trace_defaults":535,"./defaults":536,"./format_labels":538,"./hover":540,"./marker_colorbar":547,"./plot":550,"./select":551,"./style":553,"./subtypes":554}],542:[function(_dereq_,module,exports){
95451
+ },{"../../plots/cartesian":452,"./arrays_to_calcdata":529,"./attributes":530,"./calc":531,"./cross_trace_calc":535,"./cross_trace_defaults":536,"./defaults":537,"./format_labels":539,"./hover":541,"./marker_colorbar":548,"./plot":551,"./select":552,"./style":554,"./subtypes":555}],543:[function(_dereq_,module,exports){
95431
95452
  'use strict';
95432
95453
 
95433
95454
  var isArrayOrTypedArray = _dereq_('../../lib').isArrayOrTypedArray;
@@ -95450,7 +95471,7 @@ module.exports = function lineDefaults(traceIn, traceOut, defaultColor, layout,
95450
95471
  if(!(opts || {}).noDash) coerce('line.dash');
95451
95472
  };
95452
95473
 
95453
- },{"../../components/colorscale/defaults":266,"../../components/colorscale/helpers":267,"../../lib":388}],543:[function(_dereq_,module,exports){
95474
+ },{"../../components/colorscale/defaults":266,"../../components/colorscale/helpers":267,"../../lib":388}],544:[function(_dereq_,module,exports){
95454
95475
  'use strict';
95455
95476
 
95456
95477
  var numConstants = _dereq_('../../constants/numerical');
@@ -95902,7 +95923,7 @@ module.exports = function linePoints(d, opts) {
95902
95923
  return segments;
95903
95924
  };
95904
95925
 
95905
- },{"../../constants/numerical":366,"../../lib":388,"./constants":533}],544:[function(_dereq_,module,exports){
95926
+ },{"../../constants/numerical":366,"../../lib":388,"./constants":534}],545:[function(_dereq_,module,exports){
95906
95927
  'use strict';
95907
95928
 
95908
95929
 
@@ -95912,7 +95933,7 @@ module.exports = function handleLineShapeDefaults(traceIn, traceOut, coerce) {
95912
95933
  if(shape === 'spline') coerce('line.smoothing');
95913
95934
  };
95914
95935
 
95915
- },{}],545:[function(_dereq_,module,exports){
95936
+ },{}],546:[function(_dereq_,module,exports){
95916
95937
  'use strict';
95917
95938
 
95918
95939
  var LINKEDFILLS = {tonextx: 1, tonexty: 1, tonext: 1};
@@ -95994,7 +96015,7 @@ module.exports = function linkTraces(gd, plotinfo, cdscatter) {
95994
96015
  return cdscatterSorted;
95995
96016
  };
95996
96017
 
95997
- },{}],546:[function(_dereq_,module,exports){
96018
+ },{}],547:[function(_dereq_,module,exports){
95998
96019
  'use strict';
95999
96020
 
96000
96021
  var isNumeric = _dereq_('fast-isnumeric');
@@ -96030,7 +96051,7 @@ module.exports = function makeBubbleSizeFn(trace, factor) {
96030
96051
  };
96031
96052
  };
96032
96053
 
96033
- },{"fast-isnumeric":121}],547:[function(_dereq_,module,exports){
96054
+ },{"fast-isnumeric":121}],548:[function(_dereq_,module,exports){
96034
96055
  'use strict';
96035
96056
 
96036
96057
  module.exports = {
@@ -96039,7 +96060,7 @@ module.exports = {
96039
96060
  max: 'cmax'
96040
96061
  };
96041
96062
 
96042
- },{}],548:[function(_dereq_,module,exports){
96063
+ },{}],549:[function(_dereq_,module,exports){
96043
96064
  'use strict';
96044
96065
 
96045
96066
  var Color = _dereq_('../../components/color');
@@ -96112,7 +96133,7 @@ module.exports = function markerDefaults(traceIn, traceOut, defaultColor, layout
96112
96133
  }
96113
96134
  };
96114
96135
 
96115
- },{"../../components/color":256,"../../components/colorscale/defaults":266,"../../components/colorscale/helpers":267,"./subtypes":554}],549:[function(_dereq_,module,exports){
96136
+ },{"../../components/color":256,"../../components/colorscale/defaults":266,"../../components/colorscale/helpers":267,"./subtypes":555}],550:[function(_dereq_,module,exports){
96116
96137
  'use strict';
96117
96138
 
96118
96139
  var dateTick0 = _dereq_('../../lib').dateTick0;
@@ -96151,7 +96172,7 @@ module.exports = function handlePeriodDefaults(traceIn, traceOut, layout, coerce
96151
96172
  }
96152
96173
  };
96153
96174
 
96154
- },{"../../constants/numerical":366,"../../lib":388}],550:[function(_dereq_,module,exports){
96175
+ },{"../../constants/numerical":366,"../../lib":388}],551:[function(_dereq_,module,exports){
96155
96176
  'use strict';
96156
96177
 
96157
96178
  var d3 = _dereq_('@plotly/d3');
@@ -96703,7 +96724,7 @@ function selectMarkers(gd, idx, plotinfo, cdscatter, cdscatterAll) {
96703
96724
  });
96704
96725
  }
96705
96726
 
96706
- },{"../../components/drawing":278,"../../lib":388,"../../lib/polygon":400,"../../registry":481,"./line_points":543,"./link_traces":545,"./subtypes":554,"@plotly/d3":14}],551:[function(_dereq_,module,exports){
96727
+ },{"../../components/drawing":278,"../../lib":388,"../../lib/polygon":400,"../../registry":481,"./line_points":544,"./link_traces":546,"./subtypes":555,"@plotly/d3":14}],552:[function(_dereq_,module,exports){
96707
96728
  'use strict';
96708
96729
 
96709
96730
  var subtypes = _dereq_('./subtypes');
@@ -96748,7 +96769,7 @@ module.exports = function selectPoints(searchInfo, selectionTester) {
96748
96769
  return selection;
96749
96770
  };
96750
96771
 
96751
- },{"./subtypes":554}],552:[function(_dereq_,module,exports){
96772
+ },{"./subtypes":555}],553:[function(_dereq_,module,exports){
96752
96773
  'use strict';
96753
96774
 
96754
96775
  var perStackAttrs = ['orientation', 'groupnorm', 'stackgaps'];
@@ -96845,7 +96866,7 @@ module.exports = function handleStackDefaults(traceIn, traceOut, layout, coerce)
96845
96866
  }
96846
96867
  };
96847
96868
 
96848
- },{}],553:[function(_dereq_,module,exports){
96869
+ },{}],554:[function(_dereq_,module,exports){
96849
96870
  'use strict';
96850
96871
 
96851
96872
  var d3 = _dereq_('@plotly/d3');
@@ -96907,7 +96928,7 @@ module.exports = {
96907
96928
  styleOnSelect: styleOnSelect
96908
96929
  };
96909
96930
 
96910
- },{"../../components/drawing":278,"../../registry":481,"@plotly/d3":14}],554:[function(_dereq_,module,exports){
96931
+ },{"../../components/drawing":278,"../../registry":481,"@plotly/d3":14}],555:[function(_dereq_,module,exports){
96911
96932
  'use strict';
96912
96933
 
96913
96934
  var Lib = _dereq_('../../lib');
@@ -96937,7 +96958,7 @@ module.exports = {
96937
96958
  }
96938
96959
  };
96939
96960
 
96940
- },{"../../lib":388}],555:[function(_dereq_,module,exports){
96961
+ },{"../../lib":388}],556:[function(_dereq_,module,exports){
96941
96962
  'use strict';
96942
96963
 
96943
96964
  var Lib = _dereq_('../../lib');
@@ -96958,7 +96979,7 @@ module.exports = function(traceIn, traceOut, layout, coerce, opts) {
96958
96979
  }
96959
96980
  };
96960
96981
 
96961
- },{"../../lib":388}],556:[function(_dereq_,module,exports){
96982
+ },{"../../lib":388}],557:[function(_dereq_,module,exports){
96962
96983
  'use strict';
96963
96984
 
96964
96985
  var Lib = _dereq_('../../lib');
@@ -96994,7 +97015,7 @@ module.exports = function handleXYDefaults(traceIn, traceOut, layout, coerce) {
96994
97015
  return len;
96995
97016
  };
96996
97017
 
96997
- },{"../../lib":388,"../../registry":481}],557:[function(_dereq_,module,exports){
97018
+ },{"../../lib":388,"../../registry":481}],558:[function(_dereq_,module,exports){
96998
97019
  'use strict';
96999
97020
 
97000
97021
  var arraysToCalcdata = _dereq_('../scatter/arrays_to_calcdata');
@@ -97014,7 +97035,7 @@ module.exports = function calc(gd, trace) {
97014
97035
  return cd;
97015
97036
  };
97016
97037
 
97017
- },{"../scatter/arrays_to_calcdata":528,"../scatter/colorscale_calc":532}],558:[function(_dereq_,module,exports){
97038
+ },{"../scatter/arrays_to_calcdata":529,"../scatter/colorscale_calc":533}],559:[function(_dereq_,module,exports){
97018
97039
  'use strict';
97019
97040
 
97020
97041
  var baseAttrs = _dereq_('../../plots/attributes');
@@ -97109,7 +97130,31 @@ attrs.x.editType = attrs.y.editType = attrs.x0.editType = attrs.y0.editType = 'c
97109
97130
  attrs.hovertemplate = scatterAttrs.hovertemplate;
97110
97131
  attrs.texttemplate = scatterAttrs.texttemplate;
97111
97132
 
97112
- },{"../../components/colorscale/attributes":263,"../../lib/extend":380,"../../lib/sort_object_keys":411,"../../plot_api/edit_types":420,"../../plots/attributes":434,"../../plots/cartesian/axis_format_attributes":441,"../scatter/attributes":529,"./constants":560}],559:[function(_dereq_,module,exports){
97133
+ },{"../../components/colorscale/attributes":263,"../../lib/extend":380,"../../lib/sort_object_keys":411,"../../plot_api/edit_types":420,"../../plots/attributes":434,"../../plots/cartesian/axis_format_attributes":441,"../scatter/attributes":530,"./constants":562}],560:[function(_dereq_,module,exports){
97134
+ 'use strict';
97135
+
97136
+ var hover = _dereq_('./hover');
97137
+
97138
+ module.exports = {
97139
+ moduleType: 'trace',
97140
+ name: 'scattergl',
97141
+ basePlotModule: _dereq_('../../plots/cartesian'),
97142
+ categories: ['gl', 'regl', 'cartesian', 'symbols', 'errorBarsOK', 'showLegend', 'scatter-like'],
97143
+
97144
+ attributes: _dereq_('./attributes'),
97145
+ supplyDefaults: _dereq_('./defaults'),
97146
+ crossTraceDefaults: _dereq_('../scatter/cross_trace_defaults'),
97147
+ colorbar: _dereq_('../scatter/marker_colorbar'),
97148
+ formatLabels: _dereq_('./format_labels'),
97149
+ calc: _dereq_('./calc'),
97150
+ hoverPoints: hover.hoverPoints,
97151
+ selectPoints: _dereq_('./select'),
97152
+
97153
+ meta: {
97154
+ }
97155
+ };
97156
+
97157
+ },{"../../plots/cartesian":452,"../scatter/cross_trace_defaults":536,"../scatter/marker_colorbar":548,"./attributes":559,"./calc":561,"./defaults":564,"./format_labels":566,"./hover":568,"./select":572}],561:[function(_dereq_,module,exports){
97113
97158
  'use strict';
97114
97159
 
97115
97160
  var cluster = _dereq_('@plotly/point-cluster');
@@ -97295,7 +97340,7 @@ function sceneOptions(gd, subplot, trace, positions, x, y) {
97295
97340
  return opts;
97296
97341
  }
97297
97342
 
97298
- },{"../../constants/numerical":366,"../../lib":388,"../../plots/cartesian/align_period":435,"../../plots/cartesian/autorange":437,"../../plots/cartesian/axis_ids":442,"../scatter/calc":530,"../scatter/colorscale_calc":532,"./constants":560,"./convert":561,"./scene_update":569,"@plotly/point-cluster":15}],560:[function(_dereq_,module,exports){
97343
+ },{"../../constants/numerical":366,"../../lib":388,"../../plots/cartesian/align_period":435,"../../plots/cartesian/autorange":437,"../../plots/cartesian/axis_ids":442,"../scatter/calc":531,"../scatter/colorscale_calc":533,"./constants":562,"./convert":563,"./scene_update":571,"@plotly/point-cluster":15}],562:[function(_dereq_,module,exports){
97299
97344
  'use strict';
97300
97345
 
97301
97346
  var SYMBOL_SIZE = 20;
@@ -97320,7 +97365,7 @@ module.exports = {
97320
97365
  }
97321
97366
  };
97322
97367
 
97323
- },{}],561:[function(_dereq_,module,exports){
97368
+ },{}],563:[function(_dereq_,module,exports){
97324
97369
  'use strict';
97325
97370
 
97326
97371
  var isNumeric = _dereq_('fast-isnumeric');
@@ -97967,7 +98012,7 @@ module.exports = {
97967
98012
  textPosition: convertTextPosition
97968
98013
  };
97969
98014
 
97970
- },{"../../components/drawing":278,"../../components/fx/helpers":292,"../../constants/interactions":365,"../../lib":388,"../../lib/gl_format_color":384,"../../plots/cartesian/axis_ids":442,"../../registry":481,"../scatter/make_bubble_size_func":546,"../scatter/subtypes":554,"./constants":560,"./helpers":565,"color-normalize":35,"fast-isnumeric":121,"svg-path-sdf":202}],562:[function(_dereq_,module,exports){
98015
+ },{"../../components/drawing":278,"../../components/fx/helpers":292,"../../constants/interactions":365,"../../lib":388,"../../lib/gl_format_color":384,"../../plots/cartesian/axis_ids":442,"../../registry":481,"../scatter/make_bubble_size_func":547,"../scatter/subtypes":555,"./constants":562,"./helpers":567,"color-normalize":35,"fast-isnumeric":121,"svg-path-sdf":202}],564:[function(_dereq_,module,exports){
97971
98016
  'use strict';
97972
98017
 
97973
98018
  var Lib = _dereq_('../../lib');
@@ -98040,7 +98085,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
98040
98085
  Lib.coerceSelectionMarkerOpacity(traceOut, coerce);
98041
98086
  };
98042
98087
 
98043
- },{"../../lib":388,"../../registry":481,"../scatter/constants":533,"../scatter/fillcolor_defaults":537,"../scatter/line_defaults":542,"../scatter/marker_defaults":548,"../scatter/period_defaults":549,"../scatter/subtypes":554,"../scatter/text_defaults":555,"../scatter/xy_defaults":556,"./attributes":558,"./helpers":565}],563:[function(_dereq_,module,exports){
98088
+ },{"../../lib":388,"../../registry":481,"../scatter/constants":534,"../scatter/fillcolor_defaults":538,"../scatter/line_defaults":543,"../scatter/marker_defaults":549,"../scatter/period_defaults":550,"../scatter/subtypes":555,"../scatter/text_defaults":556,"../scatter/xy_defaults":557,"./attributes":559,"./helpers":567}],565:[function(_dereq_,module,exports){
98044
98089
  'use strict';
98045
98090
 
98046
98091
  var Lib = _dereq_('../../lib');
@@ -98088,7 +98133,7 @@ module.exports = {
98088
98133
  styleTextSelection: styleTextSelection
98089
98134
  };
98090
98135
 
98091
- },{"../../components/color":256,"../../constants/interactions":365,"../../lib":388}],564:[function(_dereq_,module,exports){
98136
+ },{"../../components/color":256,"../../constants/interactions":365,"../../lib":388}],566:[function(_dereq_,module,exports){
98092
98137
  'use strict';
98093
98138
 
98094
98139
  var scatterFormatLabels = _dereq_('../scatter/format_labels');
@@ -98100,7 +98145,7 @@ module.exports = function formatLabels(cdi, trace, fullLayout) {
98100
98145
  return scatterFormatLabels(cdi, trace, fullLayout);
98101
98146
  };
98102
98147
 
98103
- },{"../scatter/format_labels":538}],565:[function(_dereq_,module,exports){
98148
+ },{"../scatter/format_labels":539}],567:[function(_dereq_,module,exports){
98104
98149
  'use strict';
98105
98150
 
98106
98151
  var constants = _dereq_('./constants');
@@ -98117,7 +98162,7 @@ exports.isDotSymbol = function(symbol) {
98117
98162
  symbol > 200;
98118
98163
  };
98119
98164
 
98120
- },{"./constants":560}],566:[function(_dereq_,module,exports){
98165
+ },{"./constants":562}],568:[function(_dereq_,module,exports){
98121
98166
  'use strict';
98122
98167
 
98123
98168
  var Registry = _dereq_('../../registry');
@@ -98337,32 +98382,9 @@ module.exports = {
98337
98382
  calcHover: calcHover
98338
98383
  };
98339
98384
 
98340
- },{"../../lib":388,"../../registry":481,"../scatter/get_trace_color":539}],567:[function(_dereq_,module,exports){
98341
- 'use strict';
98342
-
98343
- var hover = _dereq_('./hover');
98344
-
98345
- module.exports = {
98346
- moduleType: 'trace',
98347
- name: 'scattergl',
98348
- basePlotModule: _dereq_('../../plots/cartesian'),
98349
- categories: ['gl', 'regl', 'cartesian', 'symbols', 'errorBarsOK', 'showLegend', 'scatter-like'],
98350
-
98351
- attributes: _dereq_('./attributes'),
98352
- supplyDefaults: _dereq_('./defaults'),
98353
- crossTraceDefaults: _dereq_('../scatter/cross_trace_defaults'),
98354
- colorbar: _dereq_('../scatter/marker_colorbar'),
98355
- formatLabels: _dereq_('./format_labels'),
98356
- calc: _dereq_('./calc'),
98357
- plot: _dereq_('./plot'),
98358
- hoverPoints: hover.hoverPoints,
98359
- selectPoints: _dereq_('./select'),
98360
-
98361
- meta: {
98362
- }
98363
- };
98364
-
98365
- },{"../../plots/cartesian":452,"../scatter/cross_trace_defaults":535,"../scatter/marker_colorbar":547,"./attributes":558,"./calc":559,"./defaults":562,"./format_labels":564,"./hover":566,"./plot":568,"./select":570}],568:[function(_dereq_,module,exports){
98385
+ },{"../../lib":388,"../../registry":481,"../scatter/get_trace_color":540}],569:[function(_dereq_,module,exports){
98386
+ arguments[4][518][0].apply(exports,arguments)
98387
+ },{"./base_index":560,"./plot":570,"dup":518}],570:[function(_dereq_,module,exports){
98366
98388
  'use strict';
98367
98389
 
98368
98390
  var createScatter = _dereq_('regl-scatter2d');
@@ -98379,6 +98401,7 @@ var linkTraces = _dereq_('../scatter/link_traces');
98379
98401
 
98380
98402
  var styleTextSelection = _dereq_('./edit_style').styleTextSelection;
98381
98403
 
98404
+ var reglPrecompiled = {};
98382
98405
 
98383
98406
  function getViewport(fullLayout, xaxis, yaxis, plotGlPixelRatio) {
98384
98407
  var gs = fullLayout._size;
@@ -98399,7 +98422,7 @@ function getViewport(fullLayout, xaxis, yaxis, plotGlPixelRatio) {
98399
98422
  ];
98400
98423
  }
98401
98424
 
98402
- module.exports = function plot(gd, subplot, cdata) {
98425
+ var exports = module.exports = function plot(gd, subplot, cdata) {
98403
98426
  if(!cdata.length) return;
98404
98427
 
98405
98428
  var fullLayout = gd._fullLayout;
@@ -98411,7 +98434,7 @@ module.exports = function plot(gd, subplot, cdata) {
98411
98434
  // we may have more subplots than initialized data due to Axes.getSubplots method
98412
98435
  if(!scene) return;
98413
98436
 
98414
- var success = prepareRegl(gd, ['ANGLE_instanced_arrays', 'OES_element_index_uint']);
98437
+ var success = prepareRegl(gd, ['ANGLE_instanced_arrays', 'OES_element_index_uint'], reglPrecompiled);
98415
98438
  if(!success) {
98416
98439
  scene.init();
98417
98440
  return;
@@ -98735,7 +98758,9 @@ module.exports = function plot(gd, subplot, cdata) {
98735
98758
  }
98736
98759
  };
98737
98760
 
98738
- },{"../../components/dragelement/helpers":274,"../../lib":388,"../../lib/prepare_regl":401,"../scatter/link_traces":545,"../scatter/subtypes":554,"./edit_style":563,"gl-text":156,"regl-error2d":193,"regl-line2d":194,"regl-scatter2d":195}],569:[function(_dereq_,module,exports){
98761
+ exports.reglPrecompiled = reglPrecompiled;
98762
+
98763
+ },{"../../components/dragelement/helpers":274,"../../lib":388,"../../lib/prepare_regl":401,"../scatter/link_traces":546,"../scatter/subtypes":555,"./edit_style":565,"gl-text":156,"regl-error2d":193,"regl-line2d":194,"regl-scatter2d":195}],571:[function(_dereq_,module,exports){
98739
98764
  'use strict';
98740
98765
 
98741
98766
  var Lib = _dereq_('../../lib');
@@ -98885,7 +98910,7 @@ module.exports = function sceneUpdate(gd, subplot) {
98885
98910
  return scene;
98886
98911
  };
98887
98912
 
98888
- },{"../../lib":388}],570:[function(_dereq_,module,exports){
98913
+ },{"../../lib":388}],572:[function(_dereq_,module,exports){
98889
98914
  'use strict';
98890
98915
 
98891
98916
  var subTypes = _dereq_('../scatter/subtypes');
@@ -98958,7 +98983,7 @@ module.exports = function select(searchInfo, selectionTester) {
98958
98983
  return selection;
98959
98984
  };
98960
98985
 
98961
- },{"../scatter/subtypes":554,"./edit_style":563}],571:[function(_dereq_,module,exports){
98986
+ },{"../scatter/subtypes":555,"./edit_style":565}],573:[function(_dereq_,module,exports){
98962
98987
  'use strict';
98963
98988
 
98964
98989
  var scatterAttrs = _dereq_('../scatter/attributes');
@@ -99101,7 +99126,37 @@ module.exports = {
99101
99126
  opacity: scatterGlAttrs.opacity
99102
99127
  };
99103
99128
 
99104
- },{"../../components/colorscale/attributes":263,"../../lib/extend":380,"../../plot_api/plot_template":427,"../../plots/cartesian/axis_format_attributes":441,"../../plots/cartesian/constants":445,"../../plots/template_attributes":480,"../scatter/attributes":529,"../scattergl/attributes":558}],572:[function(_dereq_,module,exports){
99129
+ },{"../../components/colorscale/attributes":263,"../../lib/extend":380,"../../plot_api/plot_template":427,"../../plots/cartesian/axis_format_attributes":441,"../../plots/cartesian/constants":445,"../../plots/template_attributes":480,"../scatter/attributes":530,"../scattergl/attributes":559}],574:[function(_dereq_,module,exports){
99130
+ 'use strict';
99131
+
99132
+ var Registry = _dereq_('../../registry');
99133
+ var Grid = _dereq_('../../components/grid');
99134
+
99135
+ module.exports = {
99136
+ moduleType: 'trace',
99137
+ name: 'splom',
99138
+
99139
+ categories: ['gl', 'regl', 'cartesian', 'symbols', 'showLegend', 'scatter-like'],
99140
+
99141
+ attributes: _dereq_('./attributes'),
99142
+ supplyDefaults: _dereq_('./defaults'),
99143
+ colorbar: _dereq_('../scatter/marker_colorbar'),
99144
+
99145
+ calc: _dereq_('./calc'),
99146
+ plot: _dereq_('./plot'),
99147
+ hoverPoints: _dereq_('./hover').hoverPoints,
99148
+ selectPoints: _dereq_('./select'),
99149
+ editStyle: _dereq_('./edit_style'),
99150
+
99151
+ meta: {
99152
+ }
99153
+ };
99154
+
99155
+ // splom traces use the 'grid' component to generate their axes,
99156
+ // register it here
99157
+ Registry.register(Grid);
99158
+
99159
+ },{"../../components/grid":300,"../../registry":481,"../scatter/marker_colorbar":548,"./attributes":573,"./calc":576,"./defaults":577,"./edit_style":578,"./hover":580,"./plot":582,"./select":584}],575:[function(_dereq_,module,exports){
99105
99160
  'use strict';
99106
99161
 
99107
99162
  var createLine = _dereq_('regl-line2d');
@@ -99115,12 +99170,14 @@ var shouldShowZeroLine = _dereq_('../../plots/cartesian/axes').shouldShowZeroLin
99115
99170
 
99116
99171
  var SPLOM = 'splom';
99117
99172
 
99173
+ var reglPrecompiled = {};
99174
+
99118
99175
  function plot(gd) {
99119
99176
  var fullLayout = gd._fullLayout;
99120
99177
  var _module = Registry.getModule(SPLOM);
99121
99178
  var splomCalcData = getModuleCalcData(gd.calcdata, _module)[0];
99122
99179
 
99123
- var success = prepareRegl(gd, ['ANGLE_instanced_arrays', 'OES_element_index_uint']);
99180
+ var success = prepareRegl(gd, ['ANGLE_instanced_arrays', 'OES_element_index_uint'], reglPrecompiled);
99124
99181
  if(!success) return;
99125
99182
 
99126
99183
  if(fullLayout._hasOnlyLargeSploms) {
@@ -99323,10 +99380,11 @@ module.exports = {
99323
99380
  updateGrid: updateGrid,
99324
99381
  clean: clean,
99325
99382
  updateFx: Cartesian.updateFx,
99326
- toSVG: Cartesian.toSVG
99383
+ toSVG: Cartesian.toSVG,
99384
+ reglPrecompiled: reglPrecompiled
99327
99385
  };
99328
99386
 
99329
- },{"../../lib/prepare_regl":401,"../../plots/cartesian":452,"../../plots/cartesian/axes":438,"../../plots/cartesian/axis_ids":442,"../../plots/get_data":471,"../../registry":481,"regl-line2d":194}],573:[function(_dereq_,module,exports){
99387
+ },{"../../lib/prepare_regl":401,"../../plots/cartesian":452,"../../plots/cartesian/axes":438,"../../plots/cartesian/axis_ids":442,"../../plots/get_data":471,"../../registry":481,"regl-line2d":194}],576:[function(_dereq_,module,exports){
99330
99388
  'use strict';
99331
99389
 
99332
99390
  var Lib = _dereq_('../../lib');
@@ -99429,7 +99487,7 @@ module.exports = function calc(gd, trace) {
99429
99487
  return [{x: false, y: false, t: {}, trace: trace}];
99430
99488
  };
99431
99489
 
99432
- },{"../../constants/numerical":366,"../../lib":388,"../../plots/cartesian/axis_ids":442,"../scatter/calc":530,"../scatter/colorscale_calc":532,"../scattergl/constants":560,"../scattergl/convert":561,"./scene_update":580}],574:[function(_dereq_,module,exports){
99490
+ },{"../../constants/numerical":366,"../../lib":388,"../../plots/cartesian/axis_ids":442,"../scatter/calc":531,"../scatter/colorscale_calc":533,"../scattergl/constants":562,"../scattergl/convert":563,"./scene_update":583}],577:[function(_dereq_,module,exports){
99433
99491
  'use strict';
99434
99492
 
99435
99493
  var Lib = _dereq_('../../lib');
@@ -99600,7 +99658,7 @@ function handleAxisDefaults(traceIn, traceOut, layout, coerce) {
99600
99658
  }
99601
99659
  }
99602
99660
 
99603
- },{"../../lib":388,"../../plots/array_container_defaults":433,"../parcoords/merge_length":519,"../scatter/marker_defaults":548,"../scatter/subtypes":554,"../scattergl/helpers":565,"./attributes":571}],575:[function(_dereq_,module,exports){
99661
+ },{"../../lib":388,"../../plots/array_container_defaults":433,"../parcoords/merge_length":520,"../scatter/marker_defaults":549,"../scatter/subtypes":555,"../scattergl/helpers":567,"./attributes":573}],578:[function(_dereq_,module,exports){
99604
99662
  'use strict';
99605
99663
 
99606
99664
  var Lib = _dereq_('../../lib');
@@ -99624,7 +99682,7 @@ module.exports = function editStyle(gd, cd0) {
99624
99682
  }
99625
99683
  };
99626
99684
 
99627
- },{"../../lib":388,"../scatter/colorscale_calc":532,"../scattergl/convert":561}],576:[function(_dereq_,module,exports){
99685
+ },{"../../lib":388,"../scatter/colorscale_calc":533,"../scattergl/convert":563}],579:[function(_dereq_,module,exports){
99628
99686
  'use strict';
99629
99687
 
99630
99688
  exports.getDimIndex = function getDimIndex(trace, ax) {
@@ -99640,7 +99698,7 @@ exports.getDimIndex = function getDimIndex(trace, ax) {
99640
99698
  return false;
99641
99699
  };
99642
99700
 
99643
- },{}],577:[function(_dereq_,module,exports){
99701
+ },{}],580:[function(_dereq_,module,exports){
99644
99702
  'use strict';
99645
99703
 
99646
99704
  var helpers = _dereq_('./helpers');
@@ -99693,38 +99751,16 @@ module.exports = {
99693
99751
  hoverPoints: hoverPoints
99694
99752
  };
99695
99753
 
99696
- },{"../scattergl/hover":566,"./helpers":576}],578:[function(_dereq_,module,exports){
99754
+ },{"../scattergl/hover":568,"./helpers":579}],581:[function(_dereq_,module,exports){
99697
99755
  'use strict';
99698
99756
 
99699
- var Registry = _dereq_('../../registry');
99700
- var Grid = _dereq_('../../components/grid');
99757
+ var index = _dereq_('./base_index');
99701
99758
 
99702
- module.exports = {
99703
- moduleType: 'trace',
99704
- name: 'splom',
99759
+ index.basePlotModule = _dereq_('./base_plot'),
99705
99760
 
99706
- basePlotModule: _dereq_('./base_plot'),
99707
- categories: ['gl', 'regl', 'cartesian', 'symbols', 'showLegend', 'scatter-like'],
99761
+ module.exports = index;
99708
99762
 
99709
- attributes: _dereq_('./attributes'),
99710
- supplyDefaults: _dereq_('./defaults'),
99711
- colorbar: _dereq_('../scatter/marker_colorbar'),
99712
-
99713
- calc: _dereq_('./calc'),
99714
- plot: _dereq_('./plot'),
99715
- hoverPoints: _dereq_('./hover').hoverPoints,
99716
- selectPoints: _dereq_('./select'),
99717
- editStyle: _dereq_('./edit_style'),
99718
-
99719
- meta: {
99720
- }
99721
- };
99722
-
99723
- // splom traces use the 'grid' component to generate their axes,
99724
- // register it here
99725
- Registry.register(Grid);
99726
-
99727
- },{"../../components/grid":300,"../../registry":481,"../scatter/marker_colorbar":547,"./attributes":571,"./base_plot":572,"./calc":573,"./defaults":574,"./edit_style":575,"./hover":577,"./plot":579,"./select":581}],579:[function(_dereq_,module,exports){
99763
+ },{"./base_index":574,"./base_plot":575}],582:[function(_dereq_,module,exports){
99728
99764
  'use strict';
99729
99765
 
99730
99766
  var createMatrix = _dereq_('regl-splom');
@@ -99867,7 +99903,7 @@ function plotOne(gd, cd0) {
99867
99903
  }
99868
99904
  }
99869
99905
 
99870
- },{"../../components/dragelement/helpers":274,"../../lib":388,"../../plots/cartesian/axis_ids":442,"regl-splom":196}],580:[function(_dereq_,module,exports){
99906
+ },{"../../components/dragelement/helpers":274,"../../lib":388,"../../plots/cartesian/axis_ids":442,"regl-splom":196}],583:[function(_dereq_,module,exports){
99871
99907
  'use strict';
99872
99908
 
99873
99909
  var Lib = _dereq_('../../lib');
@@ -99931,7 +99967,7 @@ module.exports = function sceneUpdate(gd, trace) {
99931
99967
  return scene;
99932
99968
  };
99933
99969
 
99934
- },{"../../lib":388}],581:[function(_dereq_,module,exports){
99970
+ },{"../../lib":388}],584:[function(_dereq_,module,exports){
99935
99971
  'use strict';
99936
99972
 
99937
99973
  var Lib = _dereq_('../../lib');
@@ -99998,7 +100034,7 @@ module.exports = function select(searchInfo, selectionTester) {
99998
100034
  return selection;
99999
100035
  };
100000
100036
 
100001
- },{"../../lib":388,"../scatter/subtypes":554,"./helpers":576}],582:[function(_dereq_,module,exports){
100037
+ },{"../../lib":388,"../scatter/subtypes":555,"./helpers":579}],585:[function(_dereq_,module,exports){
100002
100038
  'use strict';
100003
100039
 
100004
100040
  var Axes = _dereq_('../plots/cartesian/axes');
@@ -100402,7 +100438,7 @@ function last(array, indices) {
100402
100438
  return array[indices[indices.length - 1]];
100403
100439
  }
100404
100440
 
100405
- },{"../constants/numerical":366,"../lib":388,"../plot_api/plot_schema":426,"../plots/cartesian/axes":438,"./helpers":585}],583:[function(_dereq_,module,exports){
100441
+ },{"../constants/numerical":366,"../lib":388,"../plot_api/plot_schema":426,"../plots/cartesian/axes":438,"./helpers":588}],586:[function(_dereq_,module,exports){
100406
100442
  'use strict';
100407
100443
 
100408
100444
  var Lib = _dereq_('../lib');
@@ -100662,7 +100698,7 @@ function getFilterFunc(opts, d2c, targetCalendar) {
100662
100698
  }
100663
100699
  }
100664
100700
 
100665
- },{"../constants/filter_ops":364,"../lib":388,"../plots/cartesian/axes":438,"../registry":481,"./helpers":585}],584:[function(_dereq_,module,exports){
100701
+ },{"../constants/filter_ops":364,"../lib":388,"../plots/cartesian/axes":438,"../registry":481,"./helpers":588}],587:[function(_dereq_,module,exports){
100666
100702
  'use strict';
100667
100703
 
100668
100704
  var Lib = _dereq_('../lib');
@@ -100906,7 +100942,7 @@ function transformOne(trace, state) {
100906
100942
  return newData;
100907
100943
  }
100908
100944
 
100909
- },{"../lib":388,"../plot_api/plot_schema":426,"../plots/plots":479,"./helpers":585}],585:[function(_dereq_,module,exports){
100945
+ },{"../lib":388,"../plot_api/plot_schema":426,"../plots/plots":479,"./helpers":588}],588:[function(_dereq_,module,exports){
100910
100946
  'use strict';
100911
100947
 
100912
100948
  exports.pointsAccessorFunction = function(transforms, opts) {
@@ -100924,7 +100960,7 @@ exports.pointsAccessorFunction = function(transforms, opts) {
100924
100960
  return originalPointsAccessor;
100925
100961
  };
100926
100962
 
100927
- },{}],586:[function(_dereq_,module,exports){
100963
+ },{}],589:[function(_dereq_,module,exports){
100928
100964
  'use strict';
100929
100965
 
100930
100966
  var Lib = _dereq_('../lib');
@@ -101062,13 +101098,13 @@ function getSortFunc(opts, d2c) {
101062
101098
  }
101063
101099
  }
101064
101100
 
101065
- },{"../constants/numerical":366,"../lib":388,"../plots/cartesian/axes":438,"./helpers":585}],587:[function(_dereq_,module,exports){
101101
+ },{"../constants/numerical":366,"../lib":388,"../plots/cartesian/axes":438,"./helpers":588}],590:[function(_dereq_,module,exports){
101066
101102
  'use strict';
101067
101103
 
101068
101104
  // package version injected by `npm run preprocess`
101069
- exports.version = '2.10.0';
101105
+ exports.version = '2.11.1';
101070
101106
 
101071
- },{}],588:[function(_dereq_,module,exports){
101107
+ },{}],591:[function(_dereq_,module,exports){
101072
101108
  (function (global){(function (){
101073
101109
  (function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.stackgl = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof _dereq_&&_dereq_;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof _dereq_&&_dereq_,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(_glvis_,module,exports){
101074
101110
  'use strict'
@@ -136246,7 +136282,7 @@ var robustSum = _glvis_("robust-sum")
136246
136282
  var robustScale = _glvis_("robust-scale")
136247
136283
  var compress = _glvis_("robust-compress")
136248
136284
 
136249
- var NUM_EXPANDED = 4
136285
+ var NUM_EXPANDED = 6
136250
136286
 
136251
136287
  function determinant_2(sum, scale, prod, compress) {
136252
136288
  return function robustDeterminant2(m) {
@@ -136260,10 +136296,24 @@ function determinant_3(sum, scale, prod, compress) {
136260
136296
  }
136261
136297
  }
136262
136298
 
136299
+ function determinant_4(sum, scale, prod, compress) {
136300
+ return function robustDeterminant4(m) {
136301
+ return compress(sum(sum(scale(sum(scale(sum(prod(m[2][2], m[3][3]), prod(-m[2][3], m[3][2])), m[1][1]), sum(scale(sum(prod(m[2][1], m[3][3]), prod(-m[2][3], m[3][1])), -m[1][2]), scale(sum(prod(m[2][1], m[3][2]), prod(-m[2][2], m[3][1])), m[1][3]))), m[0][0]), scale(sum(scale(sum(prod(m[2][2], m[3][3]), prod(-m[2][3], m[3][2])), m[1][0]), sum(scale(sum(prod(m[2][0], m[3][3]), prod(-m[2][3], m[3][0])), -m[1][2]), scale(sum(prod(m[2][0], m[3][2]), prod(-m[2][2], m[3][0])), m[1][3]))), -m[0][1])), sum(scale(sum(scale(sum(prod(m[2][1], m[3][3]), prod(-m[2][3], m[3][1])), m[1][0]), sum(scale(sum(prod(m[2][0], m[3][3]), prod(-m[2][3], m[3][0])), -m[1][1]), scale(sum(prod(m[2][0], m[3][1]), prod(-m[2][1], m[3][0])), m[1][3]))), m[0][2]), scale(sum(scale(sum(prod(m[2][1], m[3][2]), prod(-m[2][2], m[3][1])), m[1][0]), sum(scale(sum(prod(m[2][0], m[3][2]), prod(-m[2][2], m[3][0])), -m[1][1]), scale(sum(prod(m[2][0], m[3][1]), prod(-m[2][1], m[3][0])), m[1][2]))), -m[0][3]))))
136302
+ }
136303
+ }
136304
+
136305
+ function determinant_5(sum, scale, prod, compress) {
136306
+ return function robustDeterminant5(m) {
136307
+ return compress(sum(sum(scale(sum(sum(scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][2]), sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), -m[2][3]), scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][4]))), m[1][1]), scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), -m[2][3]), scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), m[2][4]))), -m[1][2])), sum(scale(sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), -m[2][2]), scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][4]))), m[1][3]), scale(sum(scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), -m[2][2]), scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][3]))), -m[1][4]))), m[0][0]), scale(sum(sum(scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][2]), sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), -m[2][3]), scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][4]))), m[1][0]), scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][3]), scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), m[2][4]))), -m[1][2])), sum(scale(sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][2]), scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), m[2][4]))), m[1][3]), scale(sum(scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), -m[2][2]), scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), m[2][3]))), -m[1][4]))), -m[0][1])), sum(scale(sum(sum(scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), -m[2][3]), scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), m[2][4]))), m[1][0]), scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][3]), scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), m[2][4]))), -m[1][1])), sum(scale(sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][4]))), m[1][3]), scale(sum(scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][3]))), -m[1][4]))), m[0][2]), sum(scale(sum(sum(scale(sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), -m[2][2]), scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][4]))), m[1][0]), scale(sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][2]), scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), m[2][4]))), -m[1][1])), sum(scale(sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][4]))), m[1][2]), scale(sum(scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][2]))), -m[1][4]))), -m[0][3]), scale(sum(sum(scale(sum(scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), -m[2][2]), scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][3]))), m[1][0]), scale(sum(scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), -m[2][2]), scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), m[2][3]))), -m[1][1])), sum(scale(sum(scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][3]))), m[1][2]), scale(sum(scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][2]))), -m[1][3]))), m[0][4])))))
136308
+ }
136309
+ }
136310
+
136263
136311
  function compileDeterminant(n) {
136264
136312
  var fn =
136265
136313
  n === 2 ? determinant_2 :
136266
- n === 3 ? determinant_3 : undefined
136314
+ n === 3 ? determinant_3 :
136315
+ n === 4 ? determinant_4 :
136316
+ n === 5 ? determinant_5 : undefined
136267
136317
  return fn(robustSum, robustScale, twoProduct, compress)
136268
136318
  }
136269
136319
 
@@ -136272,7 +136322,7 @@ var CACHE = [
136272
136322
  function robustDeterminant1(m) { return [m[0][0]] }
136273
136323
  ]
136274
136324
 
136275
- function proc(det0, det1, det2, det3, CACHE, gen) {
136325
+ function proc(det0, det1, det2, det3, det4, det5, CACHE, gen) {
136276
136326
  return function robustDeterminant(m) {
136277
136327
  switch (m.length) {
136278
136328
  case 0:
@@ -136283,6 +136333,10 @@ function proc(det0, det1, det2, det3, CACHE, gen) {
136283
136333
  return det2(m)
136284
136334
  case 3:
136285
136335
  return det3(m)
136336
+ case 4:
136337
+ return det4(m)
136338
+ case 5:
136339
+ return det5(m)
136286
136340
  }
136287
136341
  var det = CACHE[m.length]
136288
136342
  if (!det) det = CACHE[m.length] = gen(m.length)
@@ -136526,13 +136580,16 @@ generateInSphereTest()
136526
136580
 
136527
136581
  var determinant = _glvis_("robust-determinant")
136528
136582
 
136529
- var NUM_EXPAND = 3
136583
+ var NUM_EXPAND = 6
136530
136584
 
136531
136585
  function generateSolver(n) {
136532
136586
  var fn =
136533
- n === 2 ? solve2d : solve3d
136587
+ n === 2 ? solve2d :
136588
+ n === 3 ? solve3d :
136589
+ n === 4 ? solve4d :
136590
+ n === 5 ? solve5d : solve6d
136534
136591
 
136535
- if(n < NUM_EXPAND) {
136592
+ if(n < 6) {
136536
136593
  return fn(determinant[n])
136537
136594
  }
136538
136595
  return fn(determinant)
@@ -136558,18 +136615,38 @@ function solve3d(det) {
136558
136615
  }
136559
136616
  }
136560
136617
 
136618
+ function solve4d(det) {
136619
+ return function robustLinearSolve4d(A, b) {
136620
+ return [det([[+b[0], +A[0][1], +A[0][2], +A[0][3]], [+b[1], +A[1][1], +A[1][2], +A[1][3]], [+b[2], +A[2][1], +A[2][2], +A[2][3]], [+b[3], +A[3][1], +A[3][2], +A[3][3]]]), det([[+A[0][0], +b[0], +A[0][2], +A[0][3]], [+A[1][0], +b[1], +A[1][2], +A[1][3]], [+A[2][0], +b[2], +A[2][2], +A[2][3]], [+A[3][0], +b[3], +A[3][2], +A[3][3]]]), det([[+A[0][0], +A[0][1], +b[0], +A[0][3]], [+A[1][0], +A[1][1], +b[1], +A[1][3]], [+A[2][0], +A[2][1], +b[2], +A[2][3]], [+A[3][0], +A[3][1], +b[3], +A[3][3]]]), det([[+A[0][0], +A[0][1], +A[0][2], +b[0]], [+A[1][0], +A[1][1], +A[1][2], +b[1]], [+A[2][0], +A[2][1], +A[2][2], +b[2]], [+A[3][0], +A[3][1], +A[3][2], +b[3]]]), det(A)]
136621
+ }
136622
+ }
136623
+
136624
+ function solve5d(det) {
136625
+ return function robustLinearSolve5d(A, b) {
136626
+ return [det([[+b[0], +A[0][1], +A[0][2], +A[0][3], +A[0][4]], [+b[1], +A[1][1], +A[1][2], +A[1][3], +A[1][4]], [+b[2], +A[2][1], +A[2][2], +A[2][3], +A[2][4]], [+b[3], +A[3][1], +A[3][2], +A[3][3], +A[3][4]], [+b[4], +A[4][1], +A[4][2], +A[4][3], +A[4][4]]]), det([[+A[0][0], +b[0], +A[0][2], +A[0][3], +A[0][4]], [+A[1][0], +b[1], +A[1][2], +A[1][3], +A[1][4]], [+A[2][0], +b[2], +A[2][2], +A[2][3], +A[2][4]], [+A[3][0], +b[3], +A[3][2], +A[3][3], +A[3][4]], [+A[4][0], +b[4], +A[4][2], +A[4][3], +A[4][4]]]), det([[+A[0][0], +A[0][1], +b[0], +A[0][3], +A[0][4]], [+A[1][0], +A[1][1], +b[1], +A[1][3], +A[1][4]], [+A[2][0], +A[2][1], +b[2], +A[2][3], +A[2][4]], [+A[3][0], +A[3][1], +b[3], +A[3][3], +A[3][4]], [+A[4][0], +A[4][1], +b[4], +A[4][3], +A[4][4]]]), det([[+A[0][0], +A[0][1], +A[0][2], +b[0], +A[0][4]], [+A[1][0], +A[1][1], +A[1][2], +b[1], +A[1][4]], [+A[2][0], +A[2][1], +A[2][2], +b[2], +A[2][4]], [+A[3][0], +A[3][1], +A[3][2], +b[3], +A[3][4]], [+A[4][0], +A[4][1], +A[4][2], +b[4], +A[4][4]]]), det([[+A[0][0], +A[0][1], +A[0][2], +A[0][3], +b[0]], [+A[1][0], +A[1][1], +A[1][2], +A[1][3], +b[1]], [+A[2][0], +A[2][1], +A[2][2], +A[2][3], +b[2]], [+A[3][0], +A[3][1], +A[3][2], +A[3][3], +b[3]], [+A[4][0], +A[4][1], +A[4][2], +A[4][3], +b[4]]]), det(A)]
136627
+ }
136628
+ }
136629
+
136630
+ function solve6d(det) {
136631
+ return function robustLinearSolve6d(A, b) {
136632
+ return [det([[+b[0], +A[0][1], +A[0][2], +A[0][3], +A[0][4], +A[0][5]], [+b[1], +A[1][1], +A[1][2], +A[1][3], +A[1][4], +A[1][5]], [+b[2], +A[2][1], +A[2][2], +A[2][3], +A[2][4], +A[2][5]], [+b[3], +A[3][1], +A[3][2], +A[3][3], +A[3][4], +A[3][5]], [+b[4], +A[4][1], +A[4][2], +A[4][3], +A[4][4], +A[4][5]], [+b[5], +A[5][1], +A[5][2], +A[5][3], +A[5][4], +A[5][5]]]), det([[+A[0][0], +b[0], +A[0][2], +A[0][3], +A[0][4], +A[0][5]], [+A[1][0], +b[1], +A[1][2], +A[1][3], +A[1][4], +A[1][5]], [+A[2][0], +b[2], +A[2][2], +A[2][3], +A[2][4], +A[2][5]], [+A[3][0], +b[3], +A[3][2], +A[3][3], +A[3][4], +A[3][5]], [+A[4][0], +b[4], +A[4][2], +A[4][3], +A[4][4], +A[4][5]], [+A[5][0], +b[5], +A[5][2], +A[5][3], +A[5][4], +A[5][5]]]), det([[+A[0][0], +A[0][1], +b[0], +A[0][3], +A[0][4], +A[0][5]], [+A[1][0], +A[1][1], +b[1], +A[1][3], +A[1][4], +A[1][5]], [+A[2][0], +A[2][1], +b[2], +A[2][3], +A[2][4], +A[2][5]], [+A[3][0], +A[3][1], +b[3], +A[3][3], +A[3][4], +A[3][5]], [+A[4][0], +A[4][1], +b[4], +A[4][3], +A[4][4], +A[4][5]], [+A[5][0], +A[5][1], +b[5], +A[5][3], +A[5][4], +A[5][5]]]), det([[+A[0][0], +A[0][1], +A[0][2], +b[0], +A[0][4], +A[0][5]], [+A[1][0], +A[1][1], +A[1][2], +b[1], +A[1][4], +A[1][5]], [+A[2][0], +A[2][1], +A[2][2], +b[2], +A[2][4], +A[2][5]], [+A[3][0], +A[3][1], +A[3][2], +b[3], +A[3][4], +A[3][5]], [+A[4][0], +A[4][1], +A[4][2], +b[4], +A[4][4], +A[4][5]], [+A[5][0], +A[5][1], +A[5][2], +b[5], +A[5][4], +A[5][5]]]), det([[+A[0][0], +A[0][1], +A[0][2], +A[0][3], +b[0], +A[0][5]], [+A[1][0], +A[1][1], +A[1][2], +A[1][3], +b[1], +A[1][5]], [+A[2][0], +A[2][1], +A[2][2], +A[2][3], +b[2], +A[2][5]], [+A[3][0], +A[3][1], +A[3][2], +A[3][3], +b[3], +A[3][5]], [+A[4][0], +A[4][1], +A[4][2], +A[4][3], +b[4], +A[4][5]], [+A[5][0], +A[5][1], +A[5][2], +A[5][3], +b[5], +A[5][5]]]), det([[+A[0][0], +A[0][1], +A[0][2], +A[0][3], +A[0][4], +b[0]], [+A[1][0], +A[1][1], +A[1][2], +A[1][3], +A[1][4], +b[1]], [+A[2][0], +A[2][1], +A[2][2], +A[2][3], +A[2][4], +b[2]], [+A[3][0], +A[3][1], +A[3][2], +A[3][3], +A[3][4], +b[3]], [+A[4][0], +A[4][1], +A[4][2], +A[4][3], +A[4][4], +b[4]], [+A[5][0], +A[5][1], +A[5][2], +A[5][3], +A[5][4], +b[5]]]), det(A)]
136633
+ }
136634
+ }
136635
+
136561
136636
  var CACHE = [
136562
136637
  robustLinearSolve0d,
136563
136638
  robustLinearSolve1d
136564
136639
  ]
136565
136640
 
136566
- function proc(s0, s1, s2, s3, CACHE, g) {
136641
+ function proc(s0, s1, s2, s3, s4, s5, CACHE, g) {
136567
136642
  return function dispatchLinearSolve(A, b) {
136568
136643
  switch (A.length) {
136569
136644
  case 0: return s0(A, b);
136570
136645
  case 1: return s1(A, b);
136571
136646
  case 2: return s2(A, b);
136572
136647
  case 3: return s3(A, b);
136648
+ case 4: return s4(A, b);
136649
+ case 5: return s5(A, b);
136573
136650
  }
136574
136651
  var s = CACHE[A.length];
136575
136652
  if (!s) s = CACHE[A.length] = g(A.length);
@@ -136578,7 +136655,7 @@ function proc(s0, s1, s2, s3, CACHE, g) {
136578
136655
  }
136579
136656
 
136580
136657
  function generateDispatch() {
136581
- while(CACHE.length <= NUM_EXPAND) {
136658
+ while(CACHE.length < NUM_EXPAND) {
136582
136659
  CACHE.push(generateSolver(CACHE.length))
136583
136660
  }
136584
136661
  module.exports = proc.apply(undefined, CACHE.concat([CACHE, generateSolver]))