diff --git a/devtools/regl_codegen/server.js b/devtools/regl_codegen/server.js
index 53823b32d0f..f1003f6f0f7 100644
--- a/devtools/regl_codegen/server.js
+++ b/devtools/regl_codegen/server.js
@@ -66,7 +66,13 @@ var devtools = browserify(path.join(devtoolsPath, 'devtools.js'), {
 // Start the server up!
 server.listen(PORT);
 
-var reglTraceList = getReglTraces();
+var reglTraceList = [
+    'parcoords',
+    'scattergl',
+    'scatterpolargl',
+    'splom'
+];
+
 purgeGeneratedCode(reglTraceList);
 
 // Build and bundle all the things!
@@ -91,25 +97,6 @@ function getMockFiles() {
     });
 }
 
-function getReglTraces() {
-    return constants.allTraces.filter(function(trace) {
-        var indexPath = constants.pathToSrc + '/traces/' + trace + '/index.js';
-
-        // get categories
-        var indexContents = fs.readFileSync(indexPath, 'utf8');
-        var categories = indexContents.match(/^\s*categories:\s*\[([^\]]+)\]/m);
-        if(categories) {
-            categories = categories[1].split(',').map(function(c) {
-                return c.trim().replace(/^['"]|['"]$/g, '');
-            });
-        }
-
-        if(categories && categories.indexOf('regl') !== -1) {
-            return true;
-        }
-    });
-}
-
 function readFiles(files) {
     var promises = files.map(function(file) {
         var filePath = path.join(constants.pathToTestImageMocks, file);
diff --git a/src/generated/regl-codegen/0919c57b995304312da30a5af7873a319bfb7b7e22ff6b4fa203ecbd5774ebfc b/src/generated/regl-codegen/0919c57b995304312da30a5af7873a319bfb7b7e22ff6b4fa203ecbd5774ebfc
deleted file mode 100644
index ee5063f01d1..00000000000
--- a/src/generated/regl-codegen/0919c57b995304312da30a5af7873a319bfb7b7e22ff6b4fa203ecbd5774ebfc
+++ /dev/null
@@ -1,1462 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g90,g97,g98,g100,g105,g106,g109,g112,g126,g131,g145,g149,g151,g156,g158,g159,g161,g162,g164,g167,g169,g172,g174,g177,g179,g182,g186,g188,g201,g203,g205,g207,g209,g211,g213,g215,g217,g219,g221,g223,g234,g236,g244,g248,g251,g254,g257,g260,g263,g266,g269,g272,g274,g276,g292,g319,g332,g334,g370,g371,g372,g373
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v53,v54;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v53={
-}
-;
-v53.stride=8;
-v53.offset=8;
-v54={
-}
-;
-v54.stride=8;
-v54.offset=8;
-return {
-"draw":function(a0){
-var v55,v56,v89,v91,v92,v93,v94,v95,v96,v99,v101,v102,v103,v104,v107,v108,v110,v111,v113,v114,v115,v116,v117,v118,v119,v120,v121,v122,v123,v124,v125,v127,v128,v129,v130,v132,v133,v134,v135,v136,v137,v138,v139,v140,v141,v142,v143,v144,v146,v147,v148,v150,v152,v153,v154,v155,v157,v160,v163,v165,v166,v168,v170,v171,v173,v175,v176,v178,v180,v181,v183,v184,v185,v187,v189;
-v55=v14.angle_instanced_arrays;
-v56=v13.next;
-if(v56!==v13.cur){
-if(v56){
-v1.bindFramebuffer(36160,v56.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v56;
-}
-if(v5.dirty){
-var v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88;
-v57=v4.dither;
-if(v57!==v5.dither){
-if(v57){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v57;
-}
-v58=v4.depth_func;
-if(v58!==v5.depth_func){
-v1.depthFunc(v58);
-v5.depth_func=v58;
-}
-v59=v26[0];
-v60=v26[1];
-if(v59!==v27[0]||v60!==v27[1]){
-v1.depthRange(v59,v60);
-v27[0]=v59;
-v27[1]=v60;
-}
-v61=v4.depth_mask;
-if(v61!==v5.depth_mask){
-v1.depthMask(v61);
-v5.depth_mask=v61;
-}
-v62=v28[0];
-v63=v28[1];
-v64=v28[2];
-v65=v28[3];
-if(v62!==v29[0]||v63!==v29[1]||v64!==v29[2]||v65!==v29[3]){
-v1.colorMask(v62,v63,v64,v65);
-v29[0]=v62;
-v29[1]=v63;
-v29[2]=v64;
-v29[3]=v65;
-}
-v66=v4.cull_enable;
-if(v66!==v5.cull_enable){
-if(v66){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v66;
-}
-v67=v4.cull_face;
-if(v67!==v5.cull_face){
-v1.cullFace(v67);
-v5.cull_face=v67;
-}
-v68=v4.frontFace;
-if(v68!==v5.frontFace){
-v1.frontFace(v68);
-v5.frontFace=v68;
-}
-v69=v4.lineWidth;
-if(v69!==v5.lineWidth){
-v1.lineWidth(v69);
-v5.lineWidth=v69;
-}
-v70=v4.polygonOffset_enable;
-if(v70!==v5.polygonOffset_enable){
-if(v70){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v70;
-}
-v71=v30[0];
-v72=v30[1];
-if(v71!==v31[0]||v72!==v31[1]){
-v1.polygonOffset(v71,v72);
-v31[0]=v71;
-v31[1]=v72;
-}
-v73=v4.sample_alpha;
-if(v73!==v5.sample_alpha){
-if(v73){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v73;
-}
-v74=v4.sample_enable;
-if(v74!==v5.sample_enable){
-if(v74){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v74;
-}
-v75=v32[0];
-v76=v32[1];
-if(v75!==v33[0]||v76!==v33[1]){
-v1.sampleCoverage(v75,v76);
-v33[0]=v75;
-v33[1]=v76;
-}
-v77=v4.stencil_mask;
-if(v77!==v5.stencil_mask){
-v1.stencilMask(v77);
-v5.stencil_mask=v77;
-}
-v78=v34[0];
-v79=v34[1];
-v80=v34[2];
-if(v78!==v35[0]||v79!==v35[1]||v80!==v35[2]){
-v1.stencilFunc(v78,v79,v80);
-v35[0]=v78;
-v35[1]=v79;
-v35[2]=v80;
-}
-v81=v36[0];
-v82=v36[1];
-v83=v36[2];
-v84=v36[3];
-if(v81!==v37[0]||v82!==v37[1]||v83!==v37[2]||v84!==v37[3]){
-v1.stencilOpSeparate(v81,v82,v83,v84);
-v37[0]=v81;
-v37[1]=v82;
-v37[2]=v83;
-v37[3]=v84;
-}
-v85=v38[0];
-v86=v38[1];
-v87=v38[2];
-v88=v38[3];
-if(v85!==v39[0]||v86!==v39[1]||v87!==v39[2]||v88!==v39[3]){
-v1.stencilOpSeparate(v85,v86,v87,v88);
-v39[0]=v85;
-v39[1]=v86;
-v39[2]=v87;
-v39[3]=v88;
-}
-}
-v89=a0["viewport"];
-if(!(v89&&typeof v89==="object"))g18.commandRaise(g90,g19);
-v91=v89.x|0;
-v92=v89.y|0;
-v93="width" in v89?v89.width|0:(v2.framebufferWidth-v91);
-v94="height" in v89?v89.height|0:(v2.framebufferHeight-v92);
-if(!(v93>=0&&v94>=0))g18.commandRaise(g90,g19);
-v95=v2.viewportWidth;
-v2.viewportWidth=v93;
-v96=v2.viewportHeight;
-v2.viewportHeight=v94;
-v1.viewport(v91,v92,v93,v94);
-v43[0]=v91;
-v43[1]=v92;
-v43[2]=v93;
-v43[3]=v94;
-v1.blendColor(0,0,0,0);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=0;
-if(g97){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g97;
-v1.blendEquationSeparate(32774,32774);
-v23[0]=32774;
-v23[1]=32774;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g98){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g98;
-v99=a0["viewport"];
-if(!(v99&&typeof v99==="object"))g18.commandRaise(g100,g19);
-v101=v99.x|0;
-v102=v99.y|0;
-v103="width" in v99?v99.width|0:(v2.framebufferWidth-v101);
-v104="height" in v99?v99.height|0:(v2.framebufferHeight-v102);
-if(!(v103>=0&&v104>=0))g18.commandRaise(g100,g19);
-v1.scissor(v101,v102,v103,v104);
-v41[0]=v101;
-v41[1]=v102;
-v41[2]=v103;
-v41[3]=v104;
-if(g105){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g105;
-if(g106){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g106;
-v107=v5.profile;
-if(v107){
-v108=performance.now();
-g52.count++;
-}
-v1.useProgram(g109.program);
-v110=v14.angle_instanced_arrays;
-v11.setVAO(null);
-v111=a0["positionBuffer"];
-v53.buffer=v111;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g112,g19);
-v113=false;
-v114=1;
-v115=0;
-v116=0;
-v117=0;
-v118=0;
-v119=null;
-v120=0;
-v121=false;
-v122=5126;
-v123=0;
-v124=0;
-v125=0;
-if(v16(v53)){
-v113=true;
-v119=v8.createStream(34962,v53);
-v122=v119.dtype;
-}
-else{
-v119=v8.getBuffer(v53);
-if(v119){
-v122=v119.dtype;
-}
-else if("constant" in v53){
-v114=2;
-if(typeof v53.constant === "number"){
-v115=v53.constant;
-v116=v117=v118=0;
-}
-else{
-v115=v53.constant.length>0?v53.constant[0]:0;
-v116=v53.constant.length>1?v53.constant[1]:0;
-v117=v53.constant.length>2?v53.constant[2]:0;
-v118=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v119=v8.createStream(34962,v53.buffer);
-}
-else{
-v119=v8.getBuffer(v53.buffer);
-}
-v122="type" in v53?v49[v53.type]:v119.dtype;
-v121=!!v53.normalized;
-v120=v53.size|0;
-v123=v53.offset|0;
-v124=v53.stride|0;
-v125=v53.divisor|0;
-}
-}
-v127=g126.location;
-v128=v10[v127];
-if(v114===1){
-if(!v128.buffer){
-v1.enableVertexAttribArray(v127);
-}
-v129=v120||2;
-if(v128.type!==v122||v128.size!==v129||v128.buffer!==v119||v128.normalized!==v121||v128.offset!==v123||v128.stride!==v124){
-v1.bindBuffer(34962,v119.buffer);
-v1.vertexAttribPointer(v127,v129,v122,v121,v124,v123);
-v128.type=v122;
-v128.size=v129;
-v128.buffer=v119;
-v128.normalized=v121;
-v128.offset=v123;
-v128.stride=v124;
-}
-if(v128.divisor!==v125){
-v110.vertexAttribDivisorANGLE(v127,v125);
-v128.divisor=v125;
-}
-}
-else{
-if(v128.buffer){
-v1.disableVertexAttribArray(v127);
-v128.buffer=null;
-}
-if(v128.x!==v115||v128.y!==v116||v128.z!==v117||v128.w!==v118){
-v1.vertexAttrib4f(v127,v115,v116,v117,v118);
-v128.x=v115;
-v128.y=v116;
-v128.z=v117;
-v128.w=v118;
-}
-}
-v130=a0["positionFractBuffer"];
-v54.buffer=v130;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g131,g19);
-v132=false;
-v133=1;
-v134=0;
-v135=0;
-v136=0;
-v137=0;
-v138=null;
-v139=0;
-v140=false;
-v141=5126;
-v142=0;
-v143=0;
-v144=0;
-if(v16(v54)){
-v132=true;
-v138=v8.createStream(34962,v54);
-v141=v138.dtype;
-}
-else{
-v138=v8.getBuffer(v54);
-if(v138){
-v141=v138.dtype;
-}
-else if("constant" in v54){
-v133=2;
-if(typeof v54.constant === "number"){
-v134=v54.constant;
-v135=v136=v137=0;
-}
-else{
-v134=v54.constant.length>0?v54.constant[0]:0;
-v135=v54.constant.length>1?v54.constant[1]:0;
-v136=v54.constant.length>2?v54.constant[2]:0;
-v137=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v138=v8.createStream(34962,v54.buffer);
-}
-else{
-v138=v8.getBuffer(v54.buffer);
-}
-v141="type" in v54?v49[v54.type]:v138.dtype;
-v140=!!v54.normalized;
-v139=v54.size|0;
-v142=v54.offset|0;
-v143=v54.stride|0;
-v144=v54.divisor|0;
-}
-}
-v146=g145.location;
-v147=v10[v146];
-if(v133===1){
-if(!v147.buffer){
-v1.enableVertexAttribArray(v146);
-}
-v148=v139||2;
-if(v147.type!==v141||v147.size!==v148||v147.buffer!==v138||v147.normalized!==v140||v147.offset!==v142||v147.stride!==v143){
-v1.bindBuffer(34962,v138.buffer);
-v1.vertexAttribPointer(v146,v148,v141,v140,v143,v142);
-v147.type=v141;
-v147.size=v148;
-v147.buffer=v138;
-v147.normalized=v140;
-v147.offset=v142;
-v147.stride=v143;
-}
-if(v147.divisor!==v144){
-v110.vertexAttribDivisorANGLE(v146,v144);
-v147.divisor=v144;
-}
-}
-else{
-if(v147.buffer){
-v1.disableVertexAttribArray(v146);
-v147.buffer=null;
-}
-if(v147.x!==v134||v147.y!==v135||v147.z!==v136||v147.w!==v137){
-v1.vertexAttrib4f(v146,v134,v135,v136,v137);
-v147.x=v134;
-v147.y=v135;
-v147.z=v136;
-v147.w=v137;
-}
-}
-v150=a0["fill"];
-if(!(v17(v150)&&v150.length===4))g18.commandRaise(g151,g19);
-v152=v150[0];
-v153=v150[1];
-v154=v150[2];
-v155=v150[3];
-v1.uniform4f(g149.location,v152,v153,v154,v155);
-v157=a0["id"];
-if(!(typeof v157==="number"))g18.commandRaise(g158,g19);
-v1.uniform1f(g156.location,v157);
-v160=a0["opacity"];
-if(!(typeof v160==="number"))g18.commandRaise(g161,g19);
-v1.uniform1f(g159.location,v160);
-v163=a0["scale"];
-if(!(v17(v163)&&v163.length===2))g18.commandRaise(g164,g19);
-v165=v163[0];
-v166=v163[1];
-v1.uniform2f(g162.location,v165,v166);
-v168=a0["scaleFract"];
-if(!(v17(v168)&&v168.length===2))g18.commandRaise(g169,g19);
-v170=v168[0];
-v171=v168[1];
-v1.uniform2f(g167.location,v170,v171);
-v173=a0["translate"];
-if(!(v17(v173)&&v173.length===2))g18.commandRaise(g174,g19);
-v175=v173[0];
-v176=v173[1];
-v1.uniform2f(g172.location,v175,v176);
-v178=a0["translateFract"];
-if(!(v17(v178)&&v178.length===2))g18.commandRaise(g179,g19);
-v180=v178[0];
-v181=v178[1];
-v1.uniform2f(g177.location,v180,v181);
-v183=g182.call(this,v2,a0,0);
-v184=null;
-v185=v16(v183);
-if(v185){
-v184=v7.createStream(v183);
-}
-else{
-v184=v7.getElements(v183);
-if(!(!v183||v184))g18.commandRaise(g186,g19);
-}
-if(v184)v1.bindBuffer(34963,v184.buffer.buffer);
-v187=v184?v184.vertCount:-1;
-if(!(v187>=0))g18.commandRaise(g188,g19);
-if(v187){
-v189=v6.instances;
-if(v189>0){
-if(v184){
-v110.drawElementsInstancedANGLE(4,v187,v184.type,0<<((v184.type-5121)>>1),v189);
-}
-else{
-v110.drawArraysInstancedANGLE(4,0,v187,v189);
-}
-}
-else if(v189<0){
-if(v184){
-v1.drawElements(4,v187,v184.type,0<<((v184.type-5121)>>1));
-}
-else{
-v1.drawArrays(4,0,v187);
-}
-}
-v5.dirty=true;
-v11.setVAO(null);
-v2.viewportWidth=v95;
-v2.viewportHeight=v96;
-if(v107){
-g52.cpuTime+=performance.now()-v108;
-}
-if(v113){
-v8.destroyStream(v119);
-}
-if(v132){
-v8.destroyStream(v138);
-}
-if(v185){
-v7.destroyStream(v184);
-}
-}
-}
-,"scope":function(a0,a1,a2){
-var v190,v191,v192,v193,v194,v195,v196,v197,v198,v199,v200,v202,v204,v206,v208,v210,v212,v214,v216,v218,v220,v222,v224,v225,v226,v227,v228,v229,v230,v231,v232,v233,v235,v237,v238,v239,v240,v241,v242,v243,v245,v246,v247,v249,v250,v252,v253,v255,v256,v258,v259,v261,v262,v264,v265,v267,v268,v270,v271,v273,v275,v277,v278,v279,v280,v281,v282,v283,v284,v285,v286,v287,v288,v289,v290,v291,v293,v294,v295,v296,v297,v298,v299,v300,v301,v302,v303,v304,v305,v306,v307,v308,v309,v310,v311,v312,v313,v314,v315,v316,v317,v318,v320,v321,v322,v323,v324,v325,v326,v327,v328,v329,v330,v331,v333,v335;
-v190=a0["viewport"];
-if(!(v190&&typeof v190==="object"))g18.commandRaise(g90,g19);
-v191=v190.x|0;
-v192=v190.y|0;
-v193="width" in v190?v190.width|0:(v2.framebufferWidth-v191);
-v194="height" in v190?v190.height|0:(v2.framebufferHeight-v192);
-if(!(v193>=0&&v194>=0))g18.commandRaise(g90,g19);
-v195=v2.viewportWidth;
-v2.viewportWidth=v193;
-v196=v2.viewportHeight;
-v2.viewportHeight=v194;
-v197=v42[0];
-v42[0]=v191;
-v198=v42[1];
-v42[1]=v192;
-v199=v42[2];
-v42[2]=v193;
-v200=v42[3];
-v42[3]=v194;
-v202=v20[0];
-v20[0]=g201;
-v204=v20[1];
-v20[1]=g203;
-v206=v20[2];
-v20[2]=g205;
-v208=v20[3];
-v20[3]=g207;
-v210=v4.blend_enable;
-v4.blend_enable=g209;
-v212=v22[0];
-v22[0]=g211;
-v214=v22[1];
-v22[1]=g213;
-v216=v24[0];
-v24[0]=g215;
-v218=v24[1];
-v24[1]=g217;
-v220=v24[2];
-v24[2]=g219;
-v222=v24[3];
-v24[3]=g221;
-v224=v4.depth_enable;
-v4.depth_enable=g223;
-v225=a0["viewport"];
-if(!(v225&&typeof v225==="object"))g18.commandRaise(g100,g19);
-v226=v225.x|0;
-v227=v225.y|0;
-v228="width" in v225?v225.width|0:(v2.framebufferWidth-v226);
-v229="height" in v225?v225.height|0:(v2.framebufferHeight-v227);
-if(!(v228>=0&&v229>=0))g18.commandRaise(g100,g19);
-v230=v40[0];
-v40[0]=v226;
-v231=v40[1];
-v40[1]=v227;
-v232=v40[2];
-v40[2]=v228;
-v233=v40[3];
-v40[3]=v229;
-v235=v4.scissor_enable;
-v4.scissor_enable=g234;
-v237=v4.stencil_enable;
-v4.stencil_enable=g236;
-v238=v5.profile;
-if(v238){
-v239=performance.now();
-g52.count++;
-}
-v240=g182.call(this,v2,a0,a2);
-v241=null;
-v242=v16(v240);
-if(v242){
-v241=v7.createStream(v240);
-}
-else{
-v241=v7.getElements(v240);
-if(!(!v240||v241))g18.commandRaise(g186,g19);
-}
-v243=v6.elements;
-v6.elements=v241;
-v245=v6.offset;
-v6.offset=g244;
-v246=v241?v241.vertCount:-1;
-v247=v6.count;
-v6.count=v246;
-v249=v6.primitive;
-v6.primitive=g248;
-v250=a0["scale"];
-v252=v12[g251];
-v12[g251]=v250;
-v253=a0["fill"];
-v255=v12[g254];
-v12[g254]=v253;
-v256=a0["scaleFract"];
-v258=v12[g257];
-v12[g257]=v256;
-v259=a0["translateFract"];
-v261=v12[g260];
-v12[g260]=v259;
-v262=a0["translate"];
-v264=v12[g263];
-v12[g263]=v262;
-v265=a0["opacity"];
-v267=v12[g266];
-v12[g266]=v265;
-v268=v2["pixelRatio"];
-v270=v12[g269];
-v12[g269]=v268;
-v271=a0["id"];
-v273=v12[g272];
-v12[g272]=v271;
-v275=g274.call(this,v2,a0,a2);
-v277=v12[g276];
-v12[g276]=v275;
-v278=a0["positionBuffer"];
-v53.buffer=v278;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g112,g19);
-v279=false;
-v280=1;
-v281=0;
-v282=0;
-v283=0;
-v284=0;
-v285=null;
-v286=0;
-v287=false;
-v288=5126;
-v289=0;
-v290=0;
-v291=0;
-if(v16(v53)){
-v279=true;
-v285=v8.createStream(34962,v53);
-v288=v285.dtype;
-}
-else{
-v285=v8.getBuffer(v53);
-if(v285){
-v288=v285.dtype;
-}
-else if("constant" in v53){
-v280=2;
-if(typeof v53.constant === "number"){
-v281=v53.constant;
-v282=v283=v284=0;
-}
-else{
-v281=v53.constant.length>0?v53.constant[0]:0;
-v282=v53.constant.length>1?v53.constant[1]:0;
-v283=v53.constant.length>2?v53.constant[2]:0;
-v284=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v285=v8.createStream(34962,v53.buffer);
-}
-else{
-v285=v8.getBuffer(v53.buffer);
-}
-v288="type" in v53?v49[v53.type]:v285.dtype;
-v287=!!v53.normalized;
-v286=v53.size|0;
-v289=v53.offset|0;
-v290=v53.stride|0;
-v291=v53.divisor|0;
-}
-}
-v293=g292.state;
-g292.state=v280;
-v294=g292.x;
-g292.x=v281;
-v295=g292.y;
-g292.y=v282;
-v296=g292.z;
-g292.z=v283;
-v297=g292.w;
-g292.w=v284;
-v298=g292.buffer;
-g292.buffer=v285;
-v299=g292.size;
-g292.size=v286;
-v300=g292.normalized;
-g292.normalized=v287;
-v301=g292.type;
-g292.type=v288;
-v302=g292.offset;
-g292.offset=v289;
-v303=g292.stride;
-g292.stride=v290;
-v304=g292.divisor;
-g292.divisor=v291;
-v305=a0["positionFractBuffer"];
-v54.buffer=v305;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g131,g19);
-v306=false;
-v307=1;
-v308=0;
-v309=0;
-v310=0;
-v311=0;
-v312=null;
-v313=0;
-v314=false;
-v315=5126;
-v316=0;
-v317=0;
-v318=0;
-if(v16(v54)){
-v306=true;
-v312=v8.createStream(34962,v54);
-v315=v312.dtype;
-}
-else{
-v312=v8.getBuffer(v54);
-if(v312){
-v315=v312.dtype;
-}
-else if("constant" in v54){
-v307=2;
-if(typeof v54.constant === "number"){
-v308=v54.constant;
-v309=v310=v311=0;
-}
-else{
-v308=v54.constant.length>0?v54.constant[0]:0;
-v309=v54.constant.length>1?v54.constant[1]:0;
-v310=v54.constant.length>2?v54.constant[2]:0;
-v311=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v312=v8.createStream(34962,v54.buffer);
-}
-else{
-v312=v8.getBuffer(v54.buffer);
-}
-v315="type" in v54?v49[v54.type]:v312.dtype;
-v314=!!v54.normalized;
-v313=v54.size|0;
-v316=v54.offset|0;
-v317=v54.stride|0;
-v318=v54.divisor|0;
-}
-}
-v320=g319.state;
-g319.state=v307;
-v321=g319.x;
-g319.x=v308;
-v322=g319.y;
-g319.y=v309;
-v323=g319.z;
-g319.z=v310;
-v324=g319.w;
-g319.w=v311;
-v325=g319.buffer;
-g319.buffer=v312;
-v326=g319.size;
-g319.size=v313;
-v327=g319.normalized;
-g319.normalized=v314;
-v328=g319.type;
-g319.type=v315;
-v329=g319.offset;
-g319.offset=v316;
-v330=g319.stride;
-g319.stride=v317;
-v331=g319.divisor;
-g319.divisor=v318;
-v333=v9.vert;
-v9.vert=g332;
-v335=v9.frag;
-v9.frag=g334;
-v5.dirty=true;
-a1(v2,a0,a2);
-v2.viewportWidth=v195;
-v2.viewportHeight=v196;
-v42[0]=v197;
-v42[1]=v198;
-v42[2]=v199;
-v42[3]=v200;
-v20[0]=v202;
-v20[1]=v204;
-v20[2]=v206;
-v20[3]=v208;
-v4.blend_enable=v210;
-v22[0]=v212;
-v22[1]=v214;
-v24[0]=v216;
-v24[1]=v218;
-v24[2]=v220;
-v24[3]=v222;
-v4.depth_enable=v224;
-v40[0]=v230;
-v40[1]=v231;
-v40[2]=v232;
-v40[3]=v233;
-v4.scissor_enable=v235;
-v4.stencil_enable=v237;
-if(v238){
-g52.cpuTime+=performance.now()-v239;
-}
-if(v242){
-v7.destroyStream(v241);
-}
-v6.elements=v243;
-v6.offset=v245;
-v6.count=v247;
-v6.primitive=v249;
-v12[g251]=v252;
-v12[g254]=v255;
-v12[g257]=v258;
-v12[g260]=v261;
-v12[g263]=v264;
-v12[g266]=v267;
-v12[g269]=v270;
-v12[g272]=v273;
-v12[g276]=v277;
-if(v279){
-v8.destroyStream(v285);
-}
-g292.state=v293;
-g292.x=v294;
-g292.y=v295;
-g292.z=v296;
-g292.w=v297;
-g292.buffer=v298;
-g292.size=v299;
-g292.normalized=v300;
-g292.type=v301;
-g292.offset=v302;
-g292.stride=v303;
-g292.divisor=v304;
-if(v306){
-v8.destroyStream(v312);
-}
-g319.state=v320;
-g319.x=v321;
-g319.y=v322;
-g319.z=v323;
-g319.w=v324;
-g319.buffer=v325;
-g319.size=v326;
-g319.normalized=v327;
-g319.type=v328;
-g319.offset=v329;
-g319.stride=v330;
-g319.divisor=v331;
-v9.vert=v333;
-v9.frag=v335;
-v5.dirty=true;
-}
-,"batch":function(a0,a1){
-var v336,v337,v374,v375,v376,v377,v378;
-v336=v14.angle_instanced_arrays;
-v337=v13.next;
-if(v337!==v13.cur){
-if(v337){
-v1.bindFramebuffer(36160,v337.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v337;
-}
-if(v5.dirty){
-var v338,v339,v340,v341,v342,v343,v344,v345,v346,v347,v348,v349,v350,v351,v352,v353,v354,v355,v356,v357,v358,v359,v360,v361,v362,v363,v364,v365,v366,v367,v368,v369;
-v338=v4.dither;
-if(v338!==v5.dither){
-if(v338){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v338;
-}
-v339=v4.depth_func;
-if(v339!==v5.depth_func){
-v1.depthFunc(v339);
-v5.depth_func=v339;
-}
-v340=v26[0];
-v341=v26[1];
-if(v340!==v27[0]||v341!==v27[1]){
-v1.depthRange(v340,v341);
-v27[0]=v340;
-v27[1]=v341;
-}
-v342=v4.depth_mask;
-if(v342!==v5.depth_mask){
-v1.depthMask(v342);
-v5.depth_mask=v342;
-}
-v343=v28[0];
-v344=v28[1];
-v345=v28[2];
-v346=v28[3];
-if(v343!==v29[0]||v344!==v29[1]||v345!==v29[2]||v346!==v29[3]){
-v1.colorMask(v343,v344,v345,v346);
-v29[0]=v343;
-v29[1]=v344;
-v29[2]=v345;
-v29[3]=v346;
-}
-v347=v4.cull_enable;
-if(v347!==v5.cull_enable){
-if(v347){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v347;
-}
-v348=v4.cull_face;
-if(v348!==v5.cull_face){
-v1.cullFace(v348);
-v5.cull_face=v348;
-}
-v349=v4.frontFace;
-if(v349!==v5.frontFace){
-v1.frontFace(v349);
-v5.frontFace=v349;
-}
-v350=v4.lineWidth;
-if(v350!==v5.lineWidth){
-v1.lineWidth(v350);
-v5.lineWidth=v350;
-}
-v351=v4.polygonOffset_enable;
-if(v351!==v5.polygonOffset_enable){
-if(v351){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v351;
-}
-v352=v30[0];
-v353=v30[1];
-if(v352!==v31[0]||v353!==v31[1]){
-v1.polygonOffset(v352,v353);
-v31[0]=v352;
-v31[1]=v353;
-}
-v354=v4.sample_alpha;
-if(v354!==v5.sample_alpha){
-if(v354){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v354;
-}
-v355=v4.sample_enable;
-if(v355!==v5.sample_enable){
-if(v355){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v355;
-}
-v356=v32[0];
-v357=v32[1];
-if(v356!==v33[0]||v357!==v33[1]){
-v1.sampleCoverage(v356,v357);
-v33[0]=v356;
-v33[1]=v357;
-}
-v358=v4.stencil_mask;
-if(v358!==v5.stencil_mask){
-v1.stencilMask(v358);
-v5.stencil_mask=v358;
-}
-v359=v34[0];
-v360=v34[1];
-v361=v34[2];
-if(v359!==v35[0]||v360!==v35[1]||v361!==v35[2]){
-v1.stencilFunc(v359,v360,v361);
-v35[0]=v359;
-v35[1]=v360;
-v35[2]=v361;
-}
-v362=v36[0];
-v363=v36[1];
-v364=v36[2];
-v365=v36[3];
-if(v362!==v37[0]||v363!==v37[1]||v364!==v37[2]||v365!==v37[3]){
-v1.stencilOpSeparate(v362,v363,v364,v365);
-v37[0]=v362;
-v37[1]=v363;
-v37[2]=v364;
-v37[3]=v365;
-}
-v366=v38[0];
-v367=v38[1];
-v368=v38[2];
-v369=v38[3];
-if(v366!==v39[0]||v367!==v39[1]||v368!==v39[2]||v369!==v39[3]){
-v1.stencilOpSeparate(v366,v367,v368,v369);
-v39[0]=v366;
-v39[1]=v367;
-v39[2]=v368;
-v39[3]=v369;
-}
-}
-v1.blendColor(0,0,0,0);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=0;
-if(g370){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g370;
-v1.blendEquationSeparate(32774,32774);
-v23[0]=32774;
-v23[1]=32774;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g371){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g371;
-if(g372){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g372;
-if(g373){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g373;
-v374=v5.profile;
-if(v374){
-v375=performance.now();
-g52.count+=a1;
-}
-v1.useProgram(g109.program);
-v376=v14.angle_instanced_arrays;
-var v462;
-v11.setVAO(null);
-v462=v6.instances;
-for(v377=0;
-v377<a1;
-++v377){
-v378=a0[v377];
-var v379,v380,v381,v382,v383,v384,v385,v386,v387,v388,v389,v390,v391,v392,v393,v394,v395,v396,v397,v398,v399,v400,v401,v402,v403,v404,v405,v406,v407,v408,v409,v410,v411,v412,v413,v414,v415,v416,v417,v418,v419,v420,v421,v422,v423,v424,v425,v426,v427,v428,v429,v430,v431,v432,v433,v434,v435,v436,v437,v438,v439,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v452,v453,v454,v455,v456,v457,v458,v459,v460,v461;
-v379=v378["viewport"];
-if(!(v379&&typeof v379==="object"))g18.commandRaise(g90,g19);
-v380=v379.x|0;
-v381=v379.y|0;
-v382="width" in v379?v379.width|0:(v2.framebufferWidth-v380);
-v383="height" in v379?v379.height|0:(v2.framebufferHeight-v381);
-if(!(v382>=0&&v383>=0))g18.commandRaise(g90,g19);
-v384=v2.viewportWidth;
-v2.viewportWidth=v382;
-v385=v2.viewportHeight;
-v2.viewportHeight=v383;
-v1.viewport(v380,v381,v382,v383);
-v43[0]=v380;
-v43[1]=v381;
-v43[2]=v382;
-v43[3]=v383;
-v386=v378["viewport"];
-if(!(v386&&typeof v386==="object"))g18.commandRaise(g100,g19);
-v387=v386.x|0;
-v388=v386.y|0;
-v389="width" in v386?v386.width|0:(v2.framebufferWidth-v387);
-v390="height" in v386?v386.height|0:(v2.framebufferHeight-v388);
-if(!(v389>=0&&v390>=0))g18.commandRaise(g100,g19);
-v1.scissor(v387,v388,v389,v390);
-v41[0]=v387;
-v41[1]=v388;
-v41[2]=v389;
-v41[3]=v390;
-v391=v378["positionBuffer"];
-v53.buffer=v391;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g112,g19);
-v392=false;
-v393=1;
-v394=0;
-v395=0;
-v396=0;
-v397=0;
-v398=null;
-v399=0;
-v400=false;
-v401=5126;
-v402=0;
-v403=0;
-v404=0;
-if(v16(v53)){
-v392=true;
-v398=v8.createStream(34962,v53);
-v401=v398.dtype;
-}
-else{
-v398=v8.getBuffer(v53);
-if(v398){
-v401=v398.dtype;
-}
-else if("constant" in v53){
-v393=2;
-if(typeof v53.constant === "number"){
-v394=v53.constant;
-v395=v396=v397=0;
-}
-else{
-v394=v53.constant.length>0?v53.constant[0]:0;
-v395=v53.constant.length>1?v53.constant[1]:0;
-v396=v53.constant.length>2?v53.constant[2]:0;
-v397=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v398=v8.createStream(34962,v53.buffer);
-}
-else{
-v398=v8.getBuffer(v53.buffer);
-}
-v401="type" in v53?v49[v53.type]:v398.dtype;
-v400=!!v53.normalized;
-v399=v53.size|0;
-v402=v53.offset|0;
-v403=v53.stride|0;
-v404=v53.divisor|0;
-}
-}
-v405=g126.location;
-v406=v10[v405];
-if(v393===1){
-if(!v406.buffer){
-v1.enableVertexAttribArray(v405);
-}
-v407=v399||2;
-if(v406.type!==v401||v406.size!==v407||v406.buffer!==v398||v406.normalized!==v400||v406.offset!==v402||v406.stride!==v403){
-v1.bindBuffer(34962,v398.buffer);
-v1.vertexAttribPointer(v405,v407,v401,v400,v403,v402);
-v406.type=v401;
-v406.size=v407;
-v406.buffer=v398;
-v406.normalized=v400;
-v406.offset=v402;
-v406.stride=v403;
-}
-if(v406.divisor!==v404){
-v376.vertexAttribDivisorANGLE(v405,v404);
-v406.divisor=v404;
-}
-}
-else{
-if(v406.buffer){
-v1.disableVertexAttribArray(v405);
-v406.buffer=null;
-}
-if(v406.x!==v394||v406.y!==v395||v406.z!==v396||v406.w!==v397){
-v1.vertexAttrib4f(v405,v394,v395,v396,v397);
-v406.x=v394;
-v406.y=v395;
-v406.z=v396;
-v406.w=v397;
-}
-}
-v408=v378["positionFractBuffer"];
-v54.buffer=v408;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g131,g19);
-v409=false;
-v410=1;
-v411=0;
-v412=0;
-v413=0;
-v414=0;
-v415=null;
-v416=0;
-v417=false;
-v418=5126;
-v419=0;
-v420=0;
-v421=0;
-if(v16(v54)){
-v409=true;
-v415=v8.createStream(34962,v54);
-v418=v415.dtype;
-}
-else{
-v415=v8.getBuffer(v54);
-if(v415){
-v418=v415.dtype;
-}
-else if("constant" in v54){
-v410=2;
-if(typeof v54.constant === "number"){
-v411=v54.constant;
-v412=v413=v414=0;
-}
-else{
-v411=v54.constant.length>0?v54.constant[0]:0;
-v412=v54.constant.length>1?v54.constant[1]:0;
-v413=v54.constant.length>2?v54.constant[2]:0;
-v414=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v415=v8.createStream(34962,v54.buffer);
-}
-else{
-v415=v8.getBuffer(v54.buffer);
-}
-v418="type" in v54?v49[v54.type]:v415.dtype;
-v417=!!v54.normalized;
-v416=v54.size|0;
-v419=v54.offset|0;
-v420=v54.stride|0;
-v421=v54.divisor|0;
-}
-}
-v422=g145.location;
-v423=v10[v422];
-if(v410===1){
-if(!v423.buffer){
-v1.enableVertexAttribArray(v422);
-}
-v424=v416||2;
-if(v423.type!==v418||v423.size!==v424||v423.buffer!==v415||v423.normalized!==v417||v423.offset!==v419||v423.stride!==v420){
-v1.bindBuffer(34962,v415.buffer);
-v1.vertexAttribPointer(v422,v424,v418,v417,v420,v419);
-v423.type=v418;
-v423.size=v424;
-v423.buffer=v415;
-v423.normalized=v417;
-v423.offset=v419;
-v423.stride=v420;
-}
-if(v423.divisor!==v421){
-v376.vertexAttribDivisorANGLE(v422,v421);
-v423.divisor=v421;
-}
-}
-else{
-if(v423.buffer){
-v1.disableVertexAttribArray(v422);
-v423.buffer=null;
-}
-if(v423.x!==v411||v423.y!==v412||v423.z!==v413||v423.w!==v414){
-v1.vertexAttrib4f(v422,v411,v412,v413,v414);
-v423.x=v411;
-v423.y=v412;
-v423.z=v413;
-v423.w=v414;
-}
-}
-v425=v378["fill"];
-if(!(v17(v425)&&v425.length===4))g18.commandRaise(g151,g19);
-v426=v425[0];
-v428=v425[1];
-v430=v425[2];
-v432=v425[3];
-if(!v377||v427!==v426||v429!==v428||v431!==v430||v433!==v432){
-v427=v426;
-v429=v428;
-v431=v430;
-v433=v432;
-v1.uniform4f(g149.location,v426,v428,v430,v432);
-}
-v434=v378["id"];
-if(!(typeof v434==="number"))g18.commandRaise(g158,g19);
-if(!v377||v435!==v434){
-v435=v434;
-v1.uniform1f(g156.location,v434);
-}
-v436=v378["opacity"];
-if(!(typeof v436==="number"))g18.commandRaise(g161,g19);
-if(!v377||v437!==v436){
-v437=v436;
-v1.uniform1f(g159.location,v436);
-}
-v438=v378["scale"];
-if(!(v17(v438)&&v438.length===2))g18.commandRaise(g164,g19);
-v439=v438[0];
-v441=v438[1];
-if(!v377||v440!==v439||v442!==v441){
-v440=v439;
-v442=v441;
-v1.uniform2f(g162.location,v439,v441);
-}
-v443=v378["scaleFract"];
-if(!(v17(v443)&&v443.length===2))g18.commandRaise(g169,g19);
-v444=v443[0];
-v446=v443[1];
-if(!v377||v445!==v444||v447!==v446){
-v445=v444;
-v447=v446;
-v1.uniform2f(g167.location,v444,v446);
-}
-v448=v378["translate"];
-if(!(v17(v448)&&v448.length===2))g18.commandRaise(g174,g19);
-v449=v448[0];
-v451=v448[1];
-if(!v377||v450!==v449||v452!==v451){
-v450=v449;
-v452=v451;
-v1.uniform2f(g172.location,v449,v451);
-}
-v453=v378["translateFract"];
-if(!(v17(v453)&&v453.length===2))g18.commandRaise(g179,g19);
-v454=v453[0];
-v456=v453[1];
-if(!v377||v455!==v454||v457!==v456){
-v455=v454;
-v457=v456;
-v1.uniform2f(g177.location,v454,v456);
-}
-v458=g182.call(this,v2,v378,v377);
-v459=null;
-v460=v16(v458);
-if(v460){
-v459=v7.createStream(v458);
-}
-else{
-v459=v7.getElements(v458);
-if(!(!v458||v459))g18.commandRaise(g186,g19);
-}
-if(v459)v1.bindBuffer(34963,v459.buffer.buffer);
-v461=v459?v459.vertCount:-1;
-if(!(v461>=0))g18.commandRaise(g188,g19);
-if(v461){
-if(v462>0){
-if(v459){
-v376.drawElementsInstancedANGLE(4,v461,v459.type,0<<((v459.type-5121)>>1),v462);
-}
-else{
-v376.drawArraysInstancedANGLE(4,0,v461,v462);
-}
-}
-else if(v462<0){
-if(v459){
-v1.drawElements(4,v461,v459.type,0<<((v459.type-5121)>>1));
-}
-else{
-v1.drawArrays(4,0,v461);
-}
-}
-v2.viewportWidth=v384;
-v2.viewportHeight=v385;
-if(v392){
-v8.destroyStream(v398);
-}
-if(v409){
-v8.destroyStream(v415);
-}
-if(v460){
-v7.destroyStream(v459);
-}
-}
-}
-v5.dirty=true;
-v11.setVAO(null);
-if(v374){
-g52.cpuTime+=performance.now()-v375;
-}
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/13c0ae156483f2bcbd7ff29404f0abfd8689ff43f41791a6c7469868690a4260 b/src/generated/regl-codegen/13c0ae156483f2bcbd7ff29404f0abfd8689ff43f41791a6c7469868690a4260
deleted file mode 100644
index d671018df2b..00000000000
--- a/src/generated/regl-codegen/13c0ae156483f2bcbd7ff29404f0abfd8689ff43f41791a6c7469868690a4260
+++ /dev/null
@@ -1,3391 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g90,g97,g98,g100,g105,g106,g109,g111,g113,g127,g131,g133,g147,g151,g153,g167,g171,g173,g187,g191,g193,g207,g211,g213,g227,g231,g233,g247,g251,g253,g267,g271,g273,g287,g291,g292,g294,g296,g298,g299,g300,g302,g305,g306,g307,g309,g310,g312,g315,g317,g320,g322,g325,g327,g333,g335,g337,g350,g352,g354,g356,g358,g360,g362,g364,g366,g368,g379,g381,g393,g395,g397,g398,g401,g404,g407,g410,g413,g416,g419,g422,g438,g465,g492,g519,g546,g573,g600,g627,g654,g667,g669,g707,g708,g709,g710
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-return {
-"draw":function(a0){
-var v53,v54,v89,v91,v92,v93,v94,v95,v96,v99,v101,v102,v103,v104,v107,v108,v110,v112,v114,v115,v116,v117,v118,v119,v120,v121,v122,v123,v124,v125,v126,v128,v129,v130,v132,v134,v135,v136,v137,v138,v139,v140,v141,v142,v143,v144,v145,v146,v148,v149,v150,v152,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v168,v169,v170,v172,v174,v175,v176,v177,v178,v179,v180,v181,v182,v183,v184,v185,v186,v188,v189,v190,v192,v194,v195,v196,v197,v198,v199,v200,v201,v202,v203,v204,v205,v206,v208,v209,v210,v212,v214,v215,v216,v217,v218,v219,v220,v221,v222,v223,v224,v225,v226,v228,v229,v230,v232,v234,v235,v236,v237,v238,v239,v240,v241,v242,v243,v244,v245,v246,v248,v249,v250,v252,v254,v255,v256,v257,v258,v259,v260,v261,v262,v263,v264,v265,v266,v268,v269,v270,v272,v274,v275,v276,v277,v278,v279,v280,v281,v282,v283,v284,v285,v286,v288,v289,v290,v293,v295,v297,v301,v303,v304,v308,v311,v313,v314,v316,v318,v319,v321,v323,v324,v326,v328,v329,v330,v331,v332,v334,v336,v338;
-v53=v14.angle_instanced_arrays;
-v54=v13.next;
-if(v54!==v13.cur){
-if(v54){
-v1.bindFramebuffer(36160,v54.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v54;
-}
-if(v5.dirty){
-var v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88;
-v55=v4.dither;
-if(v55!==v5.dither){
-if(v55){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v55;
-}
-v56=v22[0];
-v57=v22[1];
-if(v56!==v23[0]||v57!==v23[1]){
-v1.blendEquationSeparate(v56,v57);
-v23[0]=v56;
-v23[1]=v57;
-}
-v58=v4.depth_func;
-if(v58!==v5.depth_func){
-v1.depthFunc(v58);
-v5.depth_func=v58;
-}
-v59=v26[0];
-v60=v26[1];
-if(v59!==v27[0]||v60!==v27[1]){
-v1.depthRange(v59,v60);
-v27[0]=v59;
-v27[1]=v60;
-}
-v61=v4.depth_mask;
-if(v61!==v5.depth_mask){
-v1.depthMask(v61);
-v5.depth_mask=v61;
-}
-v62=v28[0];
-v63=v28[1];
-v64=v28[2];
-v65=v28[3];
-if(v62!==v29[0]||v63!==v29[1]||v64!==v29[2]||v65!==v29[3]){
-v1.colorMask(v62,v63,v64,v65);
-v29[0]=v62;
-v29[1]=v63;
-v29[2]=v64;
-v29[3]=v65;
-}
-v66=v4.cull_enable;
-if(v66!==v5.cull_enable){
-if(v66){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v66;
-}
-v67=v4.cull_face;
-if(v67!==v5.cull_face){
-v1.cullFace(v67);
-v5.cull_face=v67;
-}
-v68=v4.frontFace;
-if(v68!==v5.frontFace){
-v1.frontFace(v68);
-v5.frontFace=v68;
-}
-v69=v4.lineWidth;
-if(v69!==v5.lineWidth){
-v1.lineWidth(v69);
-v5.lineWidth=v69;
-}
-v70=v4.polygonOffset_enable;
-if(v70!==v5.polygonOffset_enable){
-if(v70){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v70;
-}
-v71=v30[0];
-v72=v30[1];
-if(v71!==v31[0]||v72!==v31[1]){
-v1.polygonOffset(v71,v72);
-v31[0]=v71;
-v31[1]=v72;
-}
-v73=v4.sample_alpha;
-if(v73!==v5.sample_alpha){
-if(v73){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v73;
-}
-v74=v4.sample_enable;
-if(v74!==v5.sample_enable){
-if(v74){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v74;
-}
-v75=v32[0];
-v76=v32[1];
-if(v75!==v33[0]||v76!==v33[1]){
-v1.sampleCoverage(v75,v76);
-v33[0]=v75;
-v33[1]=v76;
-}
-v77=v4.stencil_mask;
-if(v77!==v5.stencil_mask){
-v1.stencilMask(v77);
-v5.stencil_mask=v77;
-}
-v78=v34[0];
-v79=v34[1];
-v80=v34[2];
-if(v78!==v35[0]||v79!==v35[1]||v80!==v35[2]){
-v1.stencilFunc(v78,v79,v80);
-v35[0]=v78;
-v35[1]=v79;
-v35[2]=v80;
-}
-v81=v36[0];
-v82=v36[1];
-v83=v36[2];
-v84=v36[3];
-if(v81!==v37[0]||v82!==v37[1]||v83!==v37[2]||v84!==v37[3]){
-v1.stencilOpSeparate(v81,v82,v83,v84);
-v37[0]=v81;
-v37[1]=v82;
-v37[2]=v83;
-v37[3]=v84;
-}
-v85=v38[0];
-v86=v38[1];
-v87=v38[2];
-v88=v38[3];
-if(v85!==v39[0]||v86!==v39[1]||v87!==v39[2]||v88!==v39[3]){
-v1.stencilOpSeparate(v85,v86,v87,v88);
-v39[0]=v85;
-v39[1]=v86;
-v39[2]=v87;
-v39[3]=v88;
-}
-}
-v89=a0["viewport"];
-if(!(v89&&typeof v89==="object"))g18.commandRaise(g90,g19);
-v91=v89.x|0;
-v92=v89.y|0;
-v93="width" in v89?v89.width|0:(v2.framebufferWidth-v91);
-v94="height" in v89?v89.height|0:(v2.framebufferHeight-v92);
-if(!(v93>=0&&v94>=0))g18.commandRaise(g90,g19);
-v95=v2.viewportWidth;
-v2.viewportWidth=v93;
-v96=v2.viewportHeight;
-v2.viewportHeight=v94;
-v1.viewport(v91,v92,v93,v94);
-v43[0]=v91;
-v43[1]=v92;
-v43[2]=v93;
-v43[3]=v94;
-v1.blendColor(0,0,0,1);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=1;
-if(g97){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g97;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g98){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g98;
-v99=a0["viewport"];
-if(!(v99&&typeof v99==="object"))g18.commandRaise(g100,g19);
-v101=v99.x|0;
-v102=v99.y|0;
-v103="width" in v99?v99.width|0:(v2.framebufferWidth-v101);
-v104="height" in v99?v99.height|0:(v2.framebufferHeight-v102);
-if(!(v103>=0&&v104>=0))g18.commandRaise(g100,g19);
-v1.scissor(v101,v102,v103,v104);
-v41[0]=v101;
-v41[1]=v102;
-v41[2]=v103;
-v41[3]=v104;
-if(g105){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g105;
-if(g106){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g106;
-v107=v5.profile;
-if(v107){
-v108=performance.now();
-g52.count++;
-}
-v1.useProgram(g109.program);
-v110=v14.angle_instanced_arrays;
-v11.setVAO(null);
-v112=g111.call(this,v2,a0,0);
-if(!(v112&&(typeof v112==="object"||typeof v112==="function")&&(v16(v112)||v8.getBuffer(v112)||v8.getBuffer(v112.buffer)||v16(v112.buffer)||("constant" in v112&&(typeof v112.constant==="number"||v17(v112.constant))))))g18.commandRaise(g113,g19);
-v114=false;
-v115=1;
-v116=0;
-v117=0;
-v118=0;
-v119=0;
-v120=null;
-v121=0;
-v122=false;
-v123=5126;
-v124=0;
-v125=0;
-v126=0;
-if(v16(v112)){
-v114=true;
-v120=v8.createStream(34962,v112);
-v123=v120.dtype;
-}
-else{
-v120=v8.getBuffer(v112);
-if(v120){
-v123=v120.dtype;
-}
-else if("constant" in v112){
-v115=2;
-if(typeof v112.constant === "number"){
-v116=v112.constant;
-v117=v118=v119=0;
-}
-else{
-v116=v112.constant.length>0?v112.constant[0]:0;
-v117=v112.constant.length>1?v112.constant[1]:0;
-v118=v112.constant.length>2?v112.constant[2]:0;
-v119=v112.constant.length>3?v112.constant[3]:0;
-}
-}
-else{
-if(v16(v112.buffer)){
-v120=v8.createStream(34962,v112.buffer);
-}
-else{
-v120=v8.getBuffer(v112.buffer);
-}
-v123="type" in v112?v49[v112.type]:v120.dtype;
-v122=!!v112.normalized;
-v121=v112.size|0;
-v124=v112.offset|0;
-v125=v112.stride|0;
-v126=v112.divisor|0;
-}
-}
-v128=g127.location;
-v129=v10[v128];
-if(v115===1){
-if(!v129.buffer){
-v1.enableVertexAttribArray(v128);
-}
-v130=v121||4;
-if(v129.type!==v123||v129.size!==v130||v129.buffer!==v120||v129.normalized!==v122||v129.offset!==v124||v129.stride!==v125){
-v1.bindBuffer(34962,v120.buffer);
-v1.vertexAttribPointer(v128,v130,v123,v122,v125,v124);
-v129.type=v123;
-v129.size=v130;
-v129.buffer=v120;
-v129.normalized=v122;
-v129.offset=v124;
-v129.stride=v125;
-}
-if(v129.divisor!==v126){
-v110.vertexAttribDivisorANGLE(v128,v126);
-v129.divisor=v126;
-}
-}
-else{
-if(v129.buffer){
-v1.disableVertexAttribArray(v128);
-v129.buffer=null;
-}
-if(v129.x!==v116||v129.y!==v117||v129.z!==v118||v129.w!==v119){
-v1.vertexAttrib4f(v128,v116,v117,v118,v119);
-v129.x=v116;
-v129.y=v117;
-v129.z=v118;
-v129.w=v119;
-}
-}
-v132=g131.call(this,v2,a0,0);
-if(!(v132&&(typeof v132==="object"||typeof v132==="function")&&(v16(v132)||v8.getBuffer(v132)||v8.getBuffer(v132.buffer)||v16(v132.buffer)||("constant" in v132&&(typeof v132.constant==="number"||v17(v132.constant))))))g18.commandRaise(g133,g19);
-v134=false;
-v135=1;
-v136=0;
-v137=0;
-v138=0;
-v139=0;
-v140=null;
-v141=0;
-v142=false;
-v143=5126;
-v144=0;
-v145=0;
-v146=0;
-if(v16(v132)){
-v134=true;
-v140=v8.createStream(34962,v132);
-v143=v140.dtype;
-}
-else{
-v140=v8.getBuffer(v132);
-if(v140){
-v143=v140.dtype;
-}
-else if("constant" in v132){
-v135=2;
-if(typeof v132.constant === "number"){
-v136=v132.constant;
-v137=v138=v139=0;
-}
-else{
-v136=v132.constant.length>0?v132.constant[0]:0;
-v137=v132.constant.length>1?v132.constant[1]:0;
-v138=v132.constant.length>2?v132.constant[2]:0;
-v139=v132.constant.length>3?v132.constant[3]:0;
-}
-}
-else{
-if(v16(v132.buffer)){
-v140=v8.createStream(34962,v132.buffer);
-}
-else{
-v140=v8.getBuffer(v132.buffer);
-}
-v143="type" in v132?v49[v132.type]:v140.dtype;
-v142=!!v132.normalized;
-v141=v132.size|0;
-v144=v132.offset|0;
-v145=v132.stride|0;
-v146=v132.divisor|0;
-}
-}
-v148=g147.location;
-v149=v10[v148];
-if(v135===1){
-if(!v149.buffer){
-v1.enableVertexAttribArray(v148);
-}
-v150=v141||1;
-if(v149.type!==v143||v149.size!==v150||v149.buffer!==v140||v149.normalized!==v142||v149.offset!==v144||v149.stride!==v145){
-v1.bindBuffer(34962,v140.buffer);
-v1.vertexAttribPointer(v148,v150,v143,v142,v145,v144);
-v149.type=v143;
-v149.size=v150;
-v149.buffer=v140;
-v149.normalized=v142;
-v149.offset=v144;
-v149.stride=v145;
-}
-if(v149.divisor!==v146){
-v110.vertexAttribDivisorANGLE(v148,v146);
-v149.divisor=v146;
-}
-}
-else{
-if(v149.buffer){
-v1.disableVertexAttribArray(v148);
-v149.buffer=null;
-}
-if(v149.x!==v136||v149.y!==v137||v149.z!==v138||v149.w!==v139){
-v1.vertexAttrib4f(v148,v136,v137,v138,v139);
-v149.x=v136;
-v149.y=v137;
-v149.z=v138;
-v149.w=v139;
-}
-}
-v152=g151.call(this,v2,a0,0);
-if(!(v152&&(typeof v152==="object"||typeof v152==="function")&&(v16(v152)||v8.getBuffer(v152)||v8.getBuffer(v152.buffer)||v16(v152.buffer)||("constant" in v152&&(typeof v152.constant==="number"||v17(v152.constant))))))g18.commandRaise(g153,g19);
-v154=false;
-v155=1;
-v156=0;
-v157=0;
-v158=0;
-v159=0;
-v160=null;
-v161=0;
-v162=false;
-v163=5126;
-v164=0;
-v165=0;
-v166=0;
-if(v16(v152)){
-v154=true;
-v160=v8.createStream(34962,v152);
-v163=v160.dtype;
-}
-else{
-v160=v8.getBuffer(v152);
-if(v160){
-v163=v160.dtype;
-}
-else if("constant" in v152){
-v155=2;
-if(typeof v152.constant === "number"){
-v156=v152.constant;
-v157=v158=v159=0;
-}
-else{
-v156=v152.constant.length>0?v152.constant[0]:0;
-v157=v152.constant.length>1?v152.constant[1]:0;
-v158=v152.constant.length>2?v152.constant[2]:0;
-v159=v152.constant.length>3?v152.constant[3]:0;
-}
-}
-else{
-if(v16(v152.buffer)){
-v160=v8.createStream(34962,v152.buffer);
-}
-else{
-v160=v8.getBuffer(v152.buffer);
-}
-v163="type" in v152?v49[v152.type]:v160.dtype;
-v162=!!v152.normalized;
-v161=v152.size|0;
-v164=v152.offset|0;
-v165=v152.stride|0;
-v166=v152.divisor|0;
-}
-}
-v168=g167.location;
-v169=v10[v168];
-if(v155===1){
-if(!v169.buffer){
-v1.enableVertexAttribArray(v168);
-}
-v170=v161||4;
-if(v169.type!==v163||v169.size!==v170||v169.buffer!==v160||v169.normalized!==v162||v169.offset!==v164||v169.stride!==v165){
-v1.bindBuffer(34962,v160.buffer);
-v1.vertexAttribPointer(v168,v170,v163,v162,v165,v164);
-v169.type=v163;
-v169.size=v170;
-v169.buffer=v160;
-v169.normalized=v162;
-v169.offset=v164;
-v169.stride=v165;
-}
-if(v169.divisor!==v166){
-v110.vertexAttribDivisorANGLE(v168,v166);
-v169.divisor=v166;
-}
-}
-else{
-if(v169.buffer){
-v1.disableVertexAttribArray(v168);
-v169.buffer=null;
-}
-if(v169.x!==v156||v169.y!==v157||v169.z!==v158||v169.w!==v159){
-v1.vertexAttrib4f(v168,v156,v157,v158,v159);
-v169.x=v156;
-v169.y=v157;
-v169.z=v158;
-v169.w=v159;
-}
-}
-v172=g171.call(this,v2,a0,0);
-if(!(v172&&(typeof v172==="object"||typeof v172==="function")&&(v16(v172)||v8.getBuffer(v172)||v8.getBuffer(v172.buffer)||v16(v172.buffer)||("constant" in v172&&(typeof v172.constant==="number"||v17(v172.constant))))))g18.commandRaise(g173,g19);
-v174=false;
-v175=1;
-v176=0;
-v177=0;
-v178=0;
-v179=0;
-v180=null;
-v181=0;
-v182=false;
-v183=5126;
-v184=0;
-v185=0;
-v186=0;
-if(v16(v172)){
-v174=true;
-v180=v8.createStream(34962,v172);
-v183=v180.dtype;
-}
-else{
-v180=v8.getBuffer(v172);
-if(v180){
-v183=v180.dtype;
-}
-else if("constant" in v172){
-v175=2;
-if(typeof v172.constant === "number"){
-v176=v172.constant;
-v177=v178=v179=0;
-}
-else{
-v176=v172.constant.length>0?v172.constant[0]:0;
-v177=v172.constant.length>1?v172.constant[1]:0;
-v178=v172.constant.length>2?v172.constant[2]:0;
-v179=v172.constant.length>3?v172.constant[3]:0;
-}
-}
-else{
-if(v16(v172.buffer)){
-v180=v8.createStream(34962,v172.buffer);
-}
-else{
-v180=v8.getBuffer(v172.buffer);
-}
-v183="type" in v172?v49[v172.type]:v180.dtype;
-v182=!!v172.normalized;
-v181=v172.size|0;
-v184=v172.offset|0;
-v185=v172.stride|0;
-v186=v172.divisor|0;
-}
-}
-v188=g187.location;
-v189=v10[v188];
-if(v175===1){
-if(!v189.buffer){
-v1.enableVertexAttribArray(v188);
-}
-v190=v181||1;
-if(v189.type!==v183||v189.size!==v190||v189.buffer!==v180||v189.normalized!==v182||v189.offset!==v184||v189.stride!==v185){
-v1.bindBuffer(34962,v180.buffer);
-v1.vertexAttribPointer(v188,v190,v183,v182,v185,v184);
-v189.type=v183;
-v189.size=v190;
-v189.buffer=v180;
-v189.normalized=v182;
-v189.offset=v184;
-v189.stride=v185;
-}
-if(v189.divisor!==v186){
-v110.vertexAttribDivisorANGLE(v188,v186);
-v189.divisor=v186;
-}
-}
-else{
-if(v189.buffer){
-v1.disableVertexAttribArray(v188);
-v189.buffer=null;
-}
-if(v189.x!==v176||v189.y!==v177||v189.z!==v178||v189.w!==v179){
-v1.vertexAttrib4f(v188,v176,v177,v178,v179);
-v189.x=v176;
-v189.y=v177;
-v189.z=v178;
-v189.w=v179;
-}
-}
-v192=g191.call(this,v2,a0,0);
-if(!(v192&&(typeof v192==="object"||typeof v192==="function")&&(v16(v192)||v8.getBuffer(v192)||v8.getBuffer(v192.buffer)||v16(v192.buffer)||("constant" in v192&&(typeof v192.constant==="number"||v17(v192.constant))))))g18.commandRaise(g193,g19);
-v194=false;
-v195=1;
-v196=0;
-v197=0;
-v198=0;
-v199=0;
-v200=null;
-v201=0;
-v202=false;
-v203=5126;
-v204=0;
-v205=0;
-v206=0;
-if(v16(v192)){
-v194=true;
-v200=v8.createStream(34962,v192);
-v203=v200.dtype;
-}
-else{
-v200=v8.getBuffer(v192);
-if(v200){
-v203=v200.dtype;
-}
-else if("constant" in v192){
-v195=2;
-if(typeof v192.constant === "number"){
-v196=v192.constant;
-v197=v198=v199=0;
-}
-else{
-v196=v192.constant.length>0?v192.constant[0]:0;
-v197=v192.constant.length>1?v192.constant[1]:0;
-v198=v192.constant.length>2?v192.constant[2]:0;
-v199=v192.constant.length>3?v192.constant[3]:0;
-}
-}
-else{
-if(v16(v192.buffer)){
-v200=v8.createStream(34962,v192.buffer);
-}
-else{
-v200=v8.getBuffer(v192.buffer);
-}
-v203="type" in v192?v49[v192.type]:v200.dtype;
-v202=!!v192.normalized;
-v201=v192.size|0;
-v204=v192.offset|0;
-v205=v192.stride|0;
-v206=v192.divisor|0;
-}
-}
-v208=g207.location;
-v209=v10[v208];
-if(v195===1){
-if(!v209.buffer){
-v1.enableVertexAttribArray(v208);
-}
-v210=v201||1;
-if(v209.type!==v203||v209.size!==v210||v209.buffer!==v200||v209.normalized!==v202||v209.offset!==v204||v209.stride!==v205){
-v1.bindBuffer(34962,v200.buffer);
-v1.vertexAttribPointer(v208,v210,v203,v202,v205,v204);
-v209.type=v203;
-v209.size=v210;
-v209.buffer=v200;
-v209.normalized=v202;
-v209.offset=v204;
-v209.stride=v205;
-}
-if(v209.divisor!==v206){
-v110.vertexAttribDivisorANGLE(v208,v206);
-v209.divisor=v206;
-}
-}
-else{
-if(v209.buffer){
-v1.disableVertexAttribArray(v208);
-v209.buffer=null;
-}
-if(v209.x!==v196||v209.y!==v197||v209.z!==v198||v209.w!==v199){
-v1.vertexAttrib4f(v208,v196,v197,v198,v199);
-v209.x=v196;
-v209.y=v197;
-v209.z=v198;
-v209.w=v199;
-}
-}
-v212=g211.call(this,v2,a0,0);
-if(!(v212&&(typeof v212==="object"||typeof v212==="function")&&(v16(v212)||v8.getBuffer(v212)||v8.getBuffer(v212.buffer)||v16(v212.buffer)||("constant" in v212&&(typeof v212.constant==="number"||v17(v212.constant))))))g18.commandRaise(g213,g19);
-v214=false;
-v215=1;
-v216=0;
-v217=0;
-v218=0;
-v219=0;
-v220=null;
-v221=0;
-v222=false;
-v223=5126;
-v224=0;
-v225=0;
-v226=0;
-if(v16(v212)){
-v214=true;
-v220=v8.createStream(34962,v212);
-v223=v220.dtype;
-}
-else{
-v220=v8.getBuffer(v212);
-if(v220){
-v223=v220.dtype;
-}
-else if("constant" in v212){
-v215=2;
-if(typeof v212.constant === "number"){
-v216=v212.constant;
-v217=v218=v219=0;
-}
-else{
-v216=v212.constant.length>0?v212.constant[0]:0;
-v217=v212.constant.length>1?v212.constant[1]:0;
-v218=v212.constant.length>2?v212.constant[2]:0;
-v219=v212.constant.length>3?v212.constant[3]:0;
-}
-}
-else{
-if(v16(v212.buffer)){
-v220=v8.createStream(34962,v212.buffer);
-}
-else{
-v220=v8.getBuffer(v212.buffer);
-}
-v223="type" in v212?v49[v212.type]:v220.dtype;
-v222=!!v212.normalized;
-v221=v212.size|0;
-v224=v212.offset|0;
-v225=v212.stride|0;
-v226=v212.divisor|0;
-}
-}
-v228=g227.location;
-v229=v10[v228];
-if(v215===1){
-if(!v229.buffer){
-v1.enableVertexAttribArray(v228);
-}
-v230=v221||1;
-if(v229.type!==v223||v229.size!==v230||v229.buffer!==v220||v229.normalized!==v222||v229.offset!==v224||v229.stride!==v225){
-v1.bindBuffer(34962,v220.buffer);
-v1.vertexAttribPointer(v228,v230,v223,v222,v225,v224);
-v229.type=v223;
-v229.size=v230;
-v229.buffer=v220;
-v229.normalized=v222;
-v229.offset=v224;
-v229.stride=v225;
-}
-if(v229.divisor!==v226){
-v110.vertexAttribDivisorANGLE(v228,v226);
-v229.divisor=v226;
-}
-}
-else{
-if(v229.buffer){
-v1.disableVertexAttribArray(v228);
-v229.buffer=null;
-}
-if(v229.x!==v216||v229.y!==v217||v229.z!==v218||v229.w!==v219){
-v1.vertexAttrib4f(v228,v216,v217,v218,v219);
-v229.x=v216;
-v229.y=v217;
-v229.z=v218;
-v229.w=v219;
-}
-}
-v232=g231.call(this,v2,a0,0);
-if(!(v232&&(typeof v232==="object"||typeof v232==="function")&&(v16(v232)||v8.getBuffer(v232)||v8.getBuffer(v232.buffer)||v16(v232.buffer)||("constant" in v232&&(typeof v232.constant==="number"||v17(v232.constant))))))g18.commandRaise(g233,g19);
-v234=false;
-v235=1;
-v236=0;
-v237=0;
-v238=0;
-v239=0;
-v240=null;
-v241=0;
-v242=false;
-v243=5126;
-v244=0;
-v245=0;
-v246=0;
-if(v16(v232)){
-v234=true;
-v240=v8.createStream(34962,v232);
-v243=v240.dtype;
-}
-else{
-v240=v8.getBuffer(v232);
-if(v240){
-v243=v240.dtype;
-}
-else if("constant" in v232){
-v235=2;
-if(typeof v232.constant === "number"){
-v236=v232.constant;
-v237=v238=v239=0;
-}
-else{
-v236=v232.constant.length>0?v232.constant[0]:0;
-v237=v232.constant.length>1?v232.constant[1]:0;
-v238=v232.constant.length>2?v232.constant[2]:0;
-v239=v232.constant.length>3?v232.constant[3]:0;
-}
-}
-else{
-if(v16(v232.buffer)){
-v240=v8.createStream(34962,v232.buffer);
-}
-else{
-v240=v8.getBuffer(v232.buffer);
-}
-v243="type" in v232?v49[v232.type]:v240.dtype;
-v242=!!v232.normalized;
-v241=v232.size|0;
-v244=v232.offset|0;
-v245=v232.stride|0;
-v246=v232.divisor|0;
-}
-}
-v248=g247.location;
-v249=v10[v248];
-if(v235===1){
-if(!v249.buffer){
-v1.enableVertexAttribArray(v248);
-}
-v250=v241||1;
-if(v249.type!==v243||v249.size!==v250||v249.buffer!==v240||v249.normalized!==v242||v249.offset!==v244||v249.stride!==v245){
-v1.bindBuffer(34962,v240.buffer);
-v1.vertexAttribPointer(v248,v250,v243,v242,v245,v244);
-v249.type=v243;
-v249.size=v250;
-v249.buffer=v240;
-v249.normalized=v242;
-v249.offset=v244;
-v249.stride=v245;
-}
-if(v249.divisor!==v246){
-v110.vertexAttribDivisorANGLE(v248,v246);
-v249.divisor=v246;
-}
-}
-else{
-if(v249.buffer){
-v1.disableVertexAttribArray(v248);
-v249.buffer=null;
-}
-if(v249.x!==v236||v249.y!==v237||v249.z!==v238||v249.w!==v239){
-v1.vertexAttrib4f(v248,v236,v237,v238,v239);
-v249.x=v236;
-v249.y=v237;
-v249.z=v238;
-v249.w=v239;
-}
-}
-v252=g251.call(this,v2,a0,0);
-if(!(v252&&(typeof v252==="object"||typeof v252==="function")&&(v16(v252)||v8.getBuffer(v252)||v8.getBuffer(v252.buffer)||v16(v252.buffer)||("constant" in v252&&(typeof v252.constant==="number"||v17(v252.constant))))))g18.commandRaise(g253,g19);
-v254=false;
-v255=1;
-v256=0;
-v257=0;
-v258=0;
-v259=0;
-v260=null;
-v261=0;
-v262=false;
-v263=5126;
-v264=0;
-v265=0;
-v266=0;
-if(v16(v252)){
-v254=true;
-v260=v8.createStream(34962,v252);
-v263=v260.dtype;
-}
-else{
-v260=v8.getBuffer(v252);
-if(v260){
-v263=v260.dtype;
-}
-else if("constant" in v252){
-v255=2;
-if(typeof v252.constant === "number"){
-v256=v252.constant;
-v257=v258=v259=0;
-}
-else{
-v256=v252.constant.length>0?v252.constant[0]:0;
-v257=v252.constant.length>1?v252.constant[1]:0;
-v258=v252.constant.length>2?v252.constant[2]:0;
-v259=v252.constant.length>3?v252.constant[3]:0;
-}
-}
-else{
-if(v16(v252.buffer)){
-v260=v8.createStream(34962,v252.buffer);
-}
-else{
-v260=v8.getBuffer(v252.buffer);
-}
-v263="type" in v252?v49[v252.type]:v260.dtype;
-v262=!!v252.normalized;
-v261=v252.size|0;
-v264=v252.offset|0;
-v265=v252.stride|0;
-v266=v252.divisor|0;
-}
-}
-v268=g267.location;
-v269=v10[v268];
-if(v255===1){
-if(!v269.buffer){
-v1.enableVertexAttribArray(v268);
-}
-v270=v261||1;
-if(v269.type!==v263||v269.size!==v270||v269.buffer!==v260||v269.normalized!==v262||v269.offset!==v264||v269.stride!==v265){
-v1.bindBuffer(34962,v260.buffer);
-v1.vertexAttribPointer(v268,v270,v263,v262,v265,v264);
-v269.type=v263;
-v269.size=v270;
-v269.buffer=v260;
-v269.normalized=v262;
-v269.offset=v264;
-v269.stride=v265;
-}
-if(v269.divisor!==v266){
-v110.vertexAttribDivisorANGLE(v268,v266);
-v269.divisor=v266;
-}
-}
-else{
-if(v269.buffer){
-v1.disableVertexAttribArray(v268);
-v269.buffer=null;
-}
-if(v269.x!==v256||v269.y!==v257||v269.z!==v258||v269.w!==v259){
-v1.vertexAttrib4f(v268,v256,v257,v258,v259);
-v269.x=v256;
-v269.y=v257;
-v269.z=v258;
-v269.w=v259;
-}
-}
-v272=g271.call(this,v2,a0,0);
-if(!(v272&&(typeof v272==="object"||typeof v272==="function")&&(v16(v272)||v8.getBuffer(v272)||v8.getBuffer(v272.buffer)||v16(v272.buffer)||("constant" in v272&&(typeof v272.constant==="number"||v17(v272.constant))))))g18.commandRaise(g273,g19);
-v274=false;
-v275=1;
-v276=0;
-v277=0;
-v278=0;
-v279=0;
-v280=null;
-v281=0;
-v282=false;
-v283=5126;
-v284=0;
-v285=0;
-v286=0;
-if(v16(v272)){
-v274=true;
-v280=v8.createStream(34962,v272);
-v283=v280.dtype;
-}
-else{
-v280=v8.getBuffer(v272);
-if(v280){
-v283=v280.dtype;
-}
-else if("constant" in v272){
-v275=2;
-if(typeof v272.constant === "number"){
-v276=v272.constant;
-v277=v278=v279=0;
-}
-else{
-v276=v272.constant.length>0?v272.constant[0]:0;
-v277=v272.constant.length>1?v272.constant[1]:0;
-v278=v272.constant.length>2?v272.constant[2]:0;
-v279=v272.constant.length>3?v272.constant[3]:0;
-}
-}
-else{
-if(v16(v272.buffer)){
-v280=v8.createStream(34962,v272.buffer);
-}
-else{
-v280=v8.getBuffer(v272.buffer);
-}
-v283="type" in v272?v49[v272.type]:v280.dtype;
-v282=!!v272.normalized;
-v281=v272.size|0;
-v284=v272.offset|0;
-v285=v272.stride|0;
-v286=v272.divisor|0;
-}
-}
-v288=g287.location;
-v289=v10[v288];
-if(v275===1){
-if(!v289.buffer){
-v1.enableVertexAttribArray(v288);
-}
-v290=v281||1;
-if(v289.type!==v283||v289.size!==v290||v289.buffer!==v280||v289.normalized!==v282||v289.offset!==v284||v289.stride!==v285){
-v1.bindBuffer(34962,v280.buffer);
-v1.vertexAttribPointer(v288,v290,v283,v282,v285,v284);
-v289.type=v283;
-v289.size=v290;
-v289.buffer=v280;
-v289.normalized=v282;
-v289.offset=v284;
-v289.stride=v285;
-}
-if(v289.divisor!==v286){
-v110.vertexAttribDivisorANGLE(v288,v286);
-v289.divisor=v286;
-}
-}
-else{
-if(v289.buffer){
-v1.disableVertexAttribArray(v288);
-v289.buffer=null;
-}
-if(v289.x!==v276||v289.y!==v277||v289.z!==v278||v289.w!==v279){
-v1.vertexAttrib4f(v288,v276,v277,v278,v279);
-v289.x=v276;
-v289.y=v277;
-v289.z=v278;
-v289.w=v279;
-}
-}
-v1.uniform1i(g291.location,false);
-v293=a0["markerTexture"];
-if(v293&&v293._reglType==="framebuffer"){
-v293=v293.color[0];
-}
-if(!(typeof v293==="function"&&v293._reglType==="texture2d"))g18.commandRaise(g294,g19);
-v295=v293._texture;
-v1.uniform1i(g292.location,v295.bind());
-v297=a0["opacity"];
-if(!(typeof v297==="number"))g18.commandRaise(g298,g19);
-v1.uniform1f(g296.location,v297);
-v301=g300.call(this,v2,a0,0);
-if(!(v17(v301)&&v301.length===2))g18.commandRaise(g302,g19);
-v303=v301[0];
-v304=v301[1];
-v1.uniform2f(g299.location,v303,v304);
-v1.uniform1i(g305.location,g306.bind());
-v308=v2["pixelRatio"];
-if(!(typeof v308==="number"))g18.commandRaise(g309,g19);
-v1.uniform1f(g307.location,v308);
-v311=a0["scale"];
-if(!(v17(v311)&&v311.length===2))g18.commandRaise(g312,g19);
-v313=v311[0];
-v314=v311[1];
-v1.uniform2f(g310.location,v313,v314);
-v316=a0["scaleFract"];
-if(!(v17(v316)&&v316.length===2))g18.commandRaise(g317,g19);
-v318=v316[0];
-v319=v316[1];
-v1.uniform2f(g315.location,v318,v319);
-v321=a0["translate"];
-if(!(v17(v321)&&v321.length===2))g18.commandRaise(g322,g19);
-v323=v321[0];
-v324=v321[1];
-v1.uniform2f(g320.location,v323,v324);
-v326=a0["translateFract"];
-if(!(v17(v326)&&v326.length===2))g18.commandRaise(g327,g19);
-v328=v326[0];
-v329=v326[1];
-v1.uniform2f(g325.location,v328,v329);
-v330=a0["elements"];
-v331=null;
-v332=v16(v330);
-if(v332){
-v331=v7.createStream(v330);
-}
-else{
-v331=v7.getElements(v330);
-if(!(!v330||v331))g18.commandRaise(g333,g19);
-}
-if(v331)v1.bindBuffer(34963,v331.buffer.buffer);
-v334=a0["offset"];
-if(!(v334>=0))g18.commandRaise(g335,g19);
-v336=a0["count"];
-if(!(typeof v336==="number"&&v336>=0&&v336===(v336|0)))g18.commandRaise(g337,g19);
-if(v336){
-v338=v6.instances;
-if(v338>0){
-if(v331){
-v110.drawElementsInstancedANGLE(0,v336,v331.type,v334<<((v331.type-5121)>>1),v338);
-}
-else{
-v110.drawArraysInstancedANGLE(0,v334,v336,v338);
-}
-}
-else if(v338<0){
-if(v331){
-v1.drawElements(0,v336,v331.type,v334<<((v331.type-5121)>>1));
-}
-else{
-v1.drawArrays(0,v334,v336);
-}
-}
-v5.dirty=true;
-v11.setVAO(null);
-v2.viewportWidth=v95;
-v2.viewportHeight=v96;
-if(v107){
-g52.cpuTime+=performance.now()-v108;
-}
-if(v114){
-v8.destroyStream(v120);
-}
-if(v134){
-v8.destroyStream(v140);
-}
-if(v154){
-v8.destroyStream(v160);
-}
-if(v174){
-v8.destroyStream(v180);
-}
-if(v194){
-v8.destroyStream(v200);
-}
-if(v214){
-v8.destroyStream(v220);
-}
-if(v234){
-v8.destroyStream(v240);
-}
-if(v254){
-v8.destroyStream(v260);
-}
-if(v274){
-v8.destroyStream(v280);
-}
-v295.unbind();
-g306.unbind();
-if(v332){
-v7.destroyStream(v331);
-}
-}
-}
-,"scope":function(a0,a1,a2){
-var v339,v340,v341,v342,v343,v344,v345,v346,v347,v348,v349,v351,v353,v355,v357,v359,v361,v363,v365,v367,v369,v370,v371,v372,v373,v374,v375,v376,v377,v378,v380,v382,v383,v384,v385,v386,v387,v388,v389,v390,v391,v392,v394,v396,v399,v400,v402,v403,v405,v406,v408,v409,v411,v412,v414,v415,v417,v418,v420,v421,v423,v424,v425,v426,v427,v428,v429,v430,v431,v432,v433,v434,v435,v436,v437,v439,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v452,v453,v454,v455,v456,v457,v458,v459,v460,v461,v462,v463,v464,v466,v467,v468,v469,v470,v471,v472,v473,v474,v475,v476,v477,v478,v479,v480,v481,v482,v483,v484,v485,v486,v487,v488,v489,v490,v491,v493,v494,v495,v496,v497,v498,v499,v500,v501,v502,v503,v504,v505,v506,v507,v508,v509,v510,v511,v512,v513,v514,v515,v516,v517,v518,v520,v521,v522,v523,v524,v525,v526,v527,v528,v529,v530,v531,v532,v533,v534,v535,v536,v537,v538,v539,v540,v541,v542,v543,v544,v545,v547,v548,v549,v550,v551,v552,v553,v554,v555,v556,v557,v558,v559,v560,v561,v562,v563,v564,v565,v566,v567,v568,v569,v570,v571,v572,v574,v575,v576,v577,v578,v579,v580,v581,v582,v583,v584,v585,v586,v587,v588,v589,v590,v591,v592,v593,v594,v595,v596,v597,v598,v599,v601,v602,v603,v604,v605,v606,v607,v608,v609,v610,v611,v612,v613,v614,v615,v616,v617,v618,v619,v620,v621,v622,v623,v624,v625,v626,v628,v629,v630,v631,v632,v633,v634,v635,v636,v637,v638,v639,v640,v641,v642,v643,v644,v645,v646,v647,v648,v649,v650,v651,v652,v653,v655,v656,v657,v658,v659,v660,v661,v662,v663,v664,v665,v666,v668,v670;
-v339=a0["viewport"];
-if(!(v339&&typeof v339==="object"))g18.commandRaise(g90,g19);
-v340=v339.x|0;
-v341=v339.y|0;
-v342="width" in v339?v339.width|0:(v2.framebufferWidth-v340);
-v343="height" in v339?v339.height|0:(v2.framebufferHeight-v341);
-if(!(v342>=0&&v343>=0))g18.commandRaise(g90,g19);
-v344=v2.viewportWidth;
-v2.viewportWidth=v342;
-v345=v2.viewportHeight;
-v2.viewportHeight=v343;
-v346=v42[0];
-v42[0]=v340;
-v347=v42[1];
-v42[1]=v341;
-v348=v42[2];
-v42[2]=v342;
-v349=v42[3];
-v42[3]=v343;
-v351=v20[0];
-v20[0]=g350;
-v353=v20[1];
-v20[1]=g352;
-v355=v20[2];
-v20[2]=g354;
-v357=v20[3];
-v20[3]=g356;
-v359=v4.blend_enable;
-v4.blend_enable=g358;
-v361=v24[0];
-v24[0]=g360;
-v363=v24[1];
-v24[1]=g362;
-v365=v24[2];
-v24[2]=g364;
-v367=v24[3];
-v24[3]=g366;
-v369=v4.depth_enable;
-v4.depth_enable=g368;
-v370=a0["viewport"];
-if(!(v370&&typeof v370==="object"))g18.commandRaise(g100,g19);
-v371=v370.x|0;
-v372=v370.y|0;
-v373="width" in v370?v370.width|0:(v2.framebufferWidth-v371);
-v374="height" in v370?v370.height|0:(v2.framebufferHeight-v372);
-if(!(v373>=0&&v374>=0))g18.commandRaise(g100,g19);
-v375=v40[0];
-v40[0]=v371;
-v376=v40[1];
-v40[1]=v372;
-v377=v40[2];
-v40[2]=v373;
-v378=v40[3];
-v40[3]=v374;
-v380=v4.scissor_enable;
-v4.scissor_enable=g379;
-v382=v4.stencil_enable;
-v4.stencil_enable=g381;
-v383=v5.profile;
-if(v383){
-v384=performance.now();
-g52.count++;
-}
-v385=a0["elements"];
-v386=null;
-v387=v16(v385);
-if(v387){
-v386=v7.createStream(v385);
-}
-else{
-v386=v7.getElements(v385);
-if(!(!v385||v386))g18.commandRaise(g333,g19);
-}
-v388=v6.elements;
-v6.elements=v386;
-v389=a0["offset"];
-if(!(v389>=0))g18.commandRaise(g335,g19);
-v390=v6.offset;
-v6.offset=v389;
-v391=a0["count"];
-if(!(typeof v391==="number"&&v391>=0&&v391===(v391|0)))g18.commandRaise(g337,g19);
-v392=v6.count;
-v6.count=v391;
-v394=v6.primitive;
-v6.primitive=g393;
-v396=v12[g395];
-v12[g395]=false;
-v399=v12[g398];
-v12[g398]=g397;
-v400=a0["opacity"];
-v402=v12[g401];
-v12[g401]=v400;
-v403=g300.call(this,v2,a0,a2);
-v405=v12[g404];
-v12[g404]=v403;
-v406=v2["pixelRatio"];
-v408=v12[g407];
-v12[g407]=v406;
-v409=a0["scale"];
-v411=v12[g410];
-v12[g410]=v409;
-v412=a0["scaleFract"];
-v414=v12[g413];
-v12[g413]=v412;
-v415=a0["translate"];
-v417=v12[g416];
-v12[g416]=v415;
-v418=a0["translateFract"];
-v420=v12[g419];
-v12[g419]=v418;
-v421=a0["markerTexture"];
-v423=v12[g422];
-v12[g422]=v421;
-v424=g211.call(this,v2,a0,a2);
-if(!(v424&&(typeof v424==="object"||typeof v424==="function")&&(v16(v424)||v8.getBuffer(v424)||v8.getBuffer(v424.buffer)||v16(v424.buffer)||("constant" in v424&&(typeof v424.constant==="number"||v17(v424.constant))))))g18.commandRaise(g213,g19);
-v425=false;
-v426=1;
-v427=0;
-v428=0;
-v429=0;
-v430=0;
-v431=null;
-v432=0;
-v433=false;
-v434=5126;
-v435=0;
-v436=0;
-v437=0;
-if(v16(v424)){
-v425=true;
-v431=v8.createStream(34962,v424);
-v434=v431.dtype;
-}
-else{
-v431=v8.getBuffer(v424);
-if(v431){
-v434=v431.dtype;
-}
-else if("constant" in v424){
-v426=2;
-if(typeof v424.constant === "number"){
-v427=v424.constant;
-v428=v429=v430=0;
-}
-else{
-v427=v424.constant.length>0?v424.constant[0]:0;
-v428=v424.constant.length>1?v424.constant[1]:0;
-v429=v424.constant.length>2?v424.constant[2]:0;
-v430=v424.constant.length>3?v424.constant[3]:0;
-}
-}
-else{
-if(v16(v424.buffer)){
-v431=v8.createStream(34962,v424.buffer);
-}
-else{
-v431=v8.getBuffer(v424.buffer);
-}
-v434="type" in v424?v49[v424.type]:v431.dtype;
-v433=!!v424.normalized;
-v432=v424.size|0;
-v435=v424.offset|0;
-v436=v424.stride|0;
-v437=v424.divisor|0;
-}
-}
-v439=g438.state;
-g438.state=v426;
-v440=g438.x;
-g438.x=v427;
-v441=g438.y;
-g438.y=v428;
-v442=g438.z;
-g438.z=v429;
-v443=g438.w;
-g438.w=v430;
-v444=g438.buffer;
-g438.buffer=v431;
-v445=g438.size;
-g438.size=v432;
-v446=g438.normalized;
-g438.normalized=v433;
-v447=g438.type;
-g438.type=v434;
-v448=g438.offset;
-g438.offset=v435;
-v449=g438.stride;
-g438.stride=v436;
-v450=g438.divisor;
-g438.divisor=v437;
-v451=g251.call(this,v2,a0,a2);
-if(!(v451&&(typeof v451==="object"||typeof v451==="function")&&(v16(v451)||v8.getBuffer(v451)||v8.getBuffer(v451.buffer)||v16(v451.buffer)||("constant" in v451&&(typeof v451.constant==="number"||v17(v451.constant))))))g18.commandRaise(g253,g19);
-v452=false;
-v453=1;
-v454=0;
-v455=0;
-v456=0;
-v457=0;
-v458=null;
-v459=0;
-v460=false;
-v461=5126;
-v462=0;
-v463=0;
-v464=0;
-if(v16(v451)){
-v452=true;
-v458=v8.createStream(34962,v451);
-v461=v458.dtype;
-}
-else{
-v458=v8.getBuffer(v451);
-if(v458){
-v461=v458.dtype;
-}
-else if("constant" in v451){
-v453=2;
-if(typeof v451.constant === "number"){
-v454=v451.constant;
-v455=v456=v457=0;
-}
-else{
-v454=v451.constant.length>0?v451.constant[0]:0;
-v455=v451.constant.length>1?v451.constant[1]:0;
-v456=v451.constant.length>2?v451.constant[2]:0;
-v457=v451.constant.length>3?v451.constant[3]:0;
-}
-}
-else{
-if(v16(v451.buffer)){
-v458=v8.createStream(34962,v451.buffer);
-}
-else{
-v458=v8.getBuffer(v451.buffer);
-}
-v461="type" in v451?v49[v451.type]:v458.dtype;
-v460=!!v451.normalized;
-v459=v451.size|0;
-v462=v451.offset|0;
-v463=v451.stride|0;
-v464=v451.divisor|0;
-}
-}
-v466=g465.state;
-g465.state=v453;
-v467=g465.x;
-g465.x=v454;
-v468=g465.y;
-g465.y=v455;
-v469=g465.z;
-g465.z=v456;
-v470=g465.w;
-g465.w=v457;
-v471=g465.buffer;
-g465.buffer=v458;
-v472=g465.size;
-g465.size=v459;
-v473=g465.normalized;
-g465.normalized=v460;
-v474=g465.type;
-g465.type=v461;
-v475=g465.offset;
-g465.offset=v462;
-v476=g465.stride;
-g465.stride=v463;
-v477=g465.divisor;
-g465.divisor=v464;
-v478=g231.call(this,v2,a0,a2);
-if(!(v478&&(typeof v478==="object"||typeof v478==="function")&&(v16(v478)||v8.getBuffer(v478)||v8.getBuffer(v478.buffer)||v16(v478.buffer)||("constant" in v478&&(typeof v478.constant==="number"||v17(v478.constant))))))g18.commandRaise(g233,g19);
-v479=false;
-v480=1;
-v481=0;
-v482=0;
-v483=0;
-v484=0;
-v485=null;
-v486=0;
-v487=false;
-v488=5126;
-v489=0;
-v490=0;
-v491=0;
-if(v16(v478)){
-v479=true;
-v485=v8.createStream(34962,v478);
-v488=v485.dtype;
-}
-else{
-v485=v8.getBuffer(v478);
-if(v485){
-v488=v485.dtype;
-}
-else if("constant" in v478){
-v480=2;
-if(typeof v478.constant === "number"){
-v481=v478.constant;
-v482=v483=v484=0;
-}
-else{
-v481=v478.constant.length>0?v478.constant[0]:0;
-v482=v478.constant.length>1?v478.constant[1]:0;
-v483=v478.constant.length>2?v478.constant[2]:0;
-v484=v478.constant.length>3?v478.constant[3]:0;
-}
-}
-else{
-if(v16(v478.buffer)){
-v485=v8.createStream(34962,v478.buffer);
-}
-else{
-v485=v8.getBuffer(v478.buffer);
-}
-v488="type" in v478?v49[v478.type]:v485.dtype;
-v487=!!v478.normalized;
-v486=v478.size|0;
-v489=v478.offset|0;
-v490=v478.stride|0;
-v491=v478.divisor|0;
-}
-}
-v493=g492.state;
-g492.state=v480;
-v494=g492.x;
-g492.x=v481;
-v495=g492.y;
-g492.y=v482;
-v496=g492.z;
-g492.z=v483;
-v497=g492.w;
-g492.w=v484;
-v498=g492.buffer;
-g492.buffer=v485;
-v499=g492.size;
-g492.size=v486;
-v500=g492.normalized;
-g492.normalized=v487;
-v501=g492.type;
-g492.type=v488;
-v502=g492.offset;
-g492.offset=v489;
-v503=g492.stride;
-g492.stride=v490;
-v504=g492.divisor;
-g492.divisor=v491;
-v505=g271.call(this,v2,a0,a2);
-if(!(v505&&(typeof v505==="object"||typeof v505==="function")&&(v16(v505)||v8.getBuffer(v505)||v8.getBuffer(v505.buffer)||v16(v505.buffer)||("constant" in v505&&(typeof v505.constant==="number"||v17(v505.constant))))))g18.commandRaise(g273,g19);
-v506=false;
-v507=1;
-v508=0;
-v509=0;
-v510=0;
-v511=0;
-v512=null;
-v513=0;
-v514=false;
-v515=5126;
-v516=0;
-v517=0;
-v518=0;
-if(v16(v505)){
-v506=true;
-v512=v8.createStream(34962,v505);
-v515=v512.dtype;
-}
-else{
-v512=v8.getBuffer(v505);
-if(v512){
-v515=v512.dtype;
-}
-else if("constant" in v505){
-v507=2;
-if(typeof v505.constant === "number"){
-v508=v505.constant;
-v509=v510=v511=0;
-}
-else{
-v508=v505.constant.length>0?v505.constant[0]:0;
-v509=v505.constant.length>1?v505.constant[1]:0;
-v510=v505.constant.length>2?v505.constant[2]:0;
-v511=v505.constant.length>3?v505.constant[3]:0;
-}
-}
-else{
-if(v16(v505.buffer)){
-v512=v8.createStream(34962,v505.buffer);
-}
-else{
-v512=v8.getBuffer(v505.buffer);
-}
-v515="type" in v505?v49[v505.type]:v512.dtype;
-v514=!!v505.normalized;
-v513=v505.size|0;
-v516=v505.offset|0;
-v517=v505.stride|0;
-v518=v505.divisor|0;
-}
-}
-v520=g519.state;
-g519.state=v507;
-v521=g519.x;
-g519.x=v508;
-v522=g519.y;
-g519.y=v509;
-v523=g519.z;
-g519.z=v510;
-v524=g519.w;
-g519.w=v511;
-v525=g519.buffer;
-g519.buffer=v512;
-v526=g519.size;
-g519.size=v513;
-v527=g519.normalized;
-g519.normalized=v514;
-v528=g519.type;
-g519.type=v515;
-v529=g519.offset;
-g519.offset=v516;
-v530=g519.stride;
-g519.stride=v517;
-v531=g519.divisor;
-g519.divisor=v518;
-v532=g191.call(this,v2,a0,a2);
-if(!(v532&&(typeof v532==="object"||typeof v532==="function")&&(v16(v532)||v8.getBuffer(v532)||v8.getBuffer(v532.buffer)||v16(v532.buffer)||("constant" in v532&&(typeof v532.constant==="number"||v17(v532.constant))))))g18.commandRaise(g193,g19);
-v533=false;
-v534=1;
-v535=0;
-v536=0;
-v537=0;
-v538=0;
-v539=null;
-v540=0;
-v541=false;
-v542=5126;
-v543=0;
-v544=0;
-v545=0;
-if(v16(v532)){
-v533=true;
-v539=v8.createStream(34962,v532);
-v542=v539.dtype;
-}
-else{
-v539=v8.getBuffer(v532);
-if(v539){
-v542=v539.dtype;
-}
-else if("constant" in v532){
-v534=2;
-if(typeof v532.constant === "number"){
-v535=v532.constant;
-v536=v537=v538=0;
-}
-else{
-v535=v532.constant.length>0?v532.constant[0]:0;
-v536=v532.constant.length>1?v532.constant[1]:0;
-v537=v532.constant.length>2?v532.constant[2]:0;
-v538=v532.constant.length>3?v532.constant[3]:0;
-}
-}
-else{
-if(v16(v532.buffer)){
-v539=v8.createStream(34962,v532.buffer);
-}
-else{
-v539=v8.getBuffer(v532.buffer);
-}
-v542="type" in v532?v49[v532.type]:v539.dtype;
-v541=!!v532.normalized;
-v540=v532.size|0;
-v543=v532.offset|0;
-v544=v532.stride|0;
-v545=v532.divisor|0;
-}
-}
-v547=g546.state;
-g546.state=v534;
-v548=g546.x;
-g546.x=v535;
-v549=g546.y;
-g546.y=v536;
-v550=g546.z;
-g546.z=v537;
-v551=g546.w;
-g546.w=v538;
-v552=g546.buffer;
-g546.buffer=v539;
-v553=g546.size;
-g546.size=v540;
-v554=g546.normalized;
-g546.normalized=v541;
-v555=g546.type;
-g546.type=v542;
-v556=g546.offset;
-g546.offset=v543;
-v557=g546.stride;
-g546.stride=v544;
-v558=g546.divisor;
-g546.divisor=v545;
-v559=g131.call(this,v2,a0,a2);
-if(!(v559&&(typeof v559==="object"||typeof v559==="function")&&(v16(v559)||v8.getBuffer(v559)||v8.getBuffer(v559.buffer)||v16(v559.buffer)||("constant" in v559&&(typeof v559.constant==="number"||v17(v559.constant))))))g18.commandRaise(g133,g19);
-v560=false;
-v561=1;
-v562=0;
-v563=0;
-v564=0;
-v565=0;
-v566=null;
-v567=0;
-v568=false;
-v569=5126;
-v570=0;
-v571=0;
-v572=0;
-if(v16(v559)){
-v560=true;
-v566=v8.createStream(34962,v559);
-v569=v566.dtype;
-}
-else{
-v566=v8.getBuffer(v559);
-if(v566){
-v569=v566.dtype;
-}
-else if("constant" in v559){
-v561=2;
-if(typeof v559.constant === "number"){
-v562=v559.constant;
-v563=v564=v565=0;
-}
-else{
-v562=v559.constant.length>0?v559.constant[0]:0;
-v563=v559.constant.length>1?v559.constant[1]:0;
-v564=v559.constant.length>2?v559.constant[2]:0;
-v565=v559.constant.length>3?v559.constant[3]:0;
-}
-}
-else{
-if(v16(v559.buffer)){
-v566=v8.createStream(34962,v559.buffer);
-}
-else{
-v566=v8.getBuffer(v559.buffer);
-}
-v569="type" in v559?v49[v559.type]:v566.dtype;
-v568=!!v559.normalized;
-v567=v559.size|0;
-v570=v559.offset|0;
-v571=v559.stride|0;
-v572=v559.divisor|0;
-}
-}
-v574=g573.state;
-g573.state=v561;
-v575=g573.x;
-g573.x=v562;
-v576=g573.y;
-g573.y=v563;
-v577=g573.z;
-g573.z=v564;
-v578=g573.w;
-g573.w=v565;
-v579=g573.buffer;
-g573.buffer=v566;
-v580=g573.size;
-g573.size=v567;
-v581=g573.normalized;
-g573.normalized=v568;
-v582=g573.type;
-g573.type=v569;
-v583=g573.offset;
-g573.offset=v570;
-v584=g573.stride;
-g573.stride=v571;
-v585=g573.divisor;
-g573.divisor=v572;
-v586=g151.call(this,v2,a0,a2);
-if(!(v586&&(typeof v586==="object"||typeof v586==="function")&&(v16(v586)||v8.getBuffer(v586)||v8.getBuffer(v586.buffer)||v16(v586.buffer)||("constant" in v586&&(typeof v586.constant==="number"||v17(v586.constant))))))g18.commandRaise(g153,g19);
-v587=false;
-v588=1;
-v589=0;
-v590=0;
-v591=0;
-v592=0;
-v593=null;
-v594=0;
-v595=false;
-v596=5126;
-v597=0;
-v598=0;
-v599=0;
-if(v16(v586)){
-v587=true;
-v593=v8.createStream(34962,v586);
-v596=v593.dtype;
-}
-else{
-v593=v8.getBuffer(v586);
-if(v593){
-v596=v593.dtype;
-}
-else if("constant" in v586){
-v588=2;
-if(typeof v586.constant === "number"){
-v589=v586.constant;
-v590=v591=v592=0;
-}
-else{
-v589=v586.constant.length>0?v586.constant[0]:0;
-v590=v586.constant.length>1?v586.constant[1]:0;
-v591=v586.constant.length>2?v586.constant[2]:0;
-v592=v586.constant.length>3?v586.constant[3]:0;
-}
-}
-else{
-if(v16(v586.buffer)){
-v593=v8.createStream(34962,v586.buffer);
-}
-else{
-v593=v8.getBuffer(v586.buffer);
-}
-v596="type" in v586?v49[v586.type]:v593.dtype;
-v595=!!v586.normalized;
-v594=v586.size|0;
-v597=v586.offset|0;
-v598=v586.stride|0;
-v599=v586.divisor|0;
-}
-}
-v601=g600.state;
-g600.state=v588;
-v602=g600.x;
-g600.x=v589;
-v603=g600.y;
-g600.y=v590;
-v604=g600.z;
-g600.z=v591;
-v605=g600.w;
-g600.w=v592;
-v606=g600.buffer;
-g600.buffer=v593;
-v607=g600.size;
-g600.size=v594;
-v608=g600.normalized;
-g600.normalized=v595;
-v609=g600.type;
-g600.type=v596;
-v610=g600.offset;
-g600.offset=v597;
-v611=g600.stride;
-g600.stride=v598;
-v612=g600.divisor;
-g600.divisor=v599;
-v613=g111.call(this,v2,a0,a2);
-if(!(v613&&(typeof v613==="object"||typeof v613==="function")&&(v16(v613)||v8.getBuffer(v613)||v8.getBuffer(v613.buffer)||v16(v613.buffer)||("constant" in v613&&(typeof v613.constant==="number"||v17(v613.constant))))))g18.commandRaise(g113,g19);
-v614=false;
-v615=1;
-v616=0;
-v617=0;
-v618=0;
-v619=0;
-v620=null;
-v621=0;
-v622=false;
-v623=5126;
-v624=0;
-v625=0;
-v626=0;
-if(v16(v613)){
-v614=true;
-v620=v8.createStream(34962,v613);
-v623=v620.dtype;
-}
-else{
-v620=v8.getBuffer(v613);
-if(v620){
-v623=v620.dtype;
-}
-else if("constant" in v613){
-v615=2;
-if(typeof v613.constant === "number"){
-v616=v613.constant;
-v617=v618=v619=0;
-}
-else{
-v616=v613.constant.length>0?v613.constant[0]:0;
-v617=v613.constant.length>1?v613.constant[1]:0;
-v618=v613.constant.length>2?v613.constant[2]:0;
-v619=v613.constant.length>3?v613.constant[3]:0;
-}
-}
-else{
-if(v16(v613.buffer)){
-v620=v8.createStream(34962,v613.buffer);
-}
-else{
-v620=v8.getBuffer(v613.buffer);
-}
-v623="type" in v613?v49[v613.type]:v620.dtype;
-v622=!!v613.normalized;
-v621=v613.size|0;
-v624=v613.offset|0;
-v625=v613.stride|0;
-v626=v613.divisor|0;
-}
-}
-v628=g627.state;
-g627.state=v615;
-v629=g627.x;
-g627.x=v616;
-v630=g627.y;
-g627.y=v617;
-v631=g627.z;
-g627.z=v618;
-v632=g627.w;
-g627.w=v619;
-v633=g627.buffer;
-g627.buffer=v620;
-v634=g627.size;
-g627.size=v621;
-v635=g627.normalized;
-g627.normalized=v622;
-v636=g627.type;
-g627.type=v623;
-v637=g627.offset;
-g627.offset=v624;
-v638=g627.stride;
-g627.stride=v625;
-v639=g627.divisor;
-g627.divisor=v626;
-v640=g171.call(this,v2,a0,a2);
-if(!(v640&&(typeof v640==="object"||typeof v640==="function")&&(v16(v640)||v8.getBuffer(v640)||v8.getBuffer(v640.buffer)||v16(v640.buffer)||("constant" in v640&&(typeof v640.constant==="number"||v17(v640.constant))))))g18.commandRaise(g173,g19);
-v641=false;
-v642=1;
-v643=0;
-v644=0;
-v645=0;
-v646=0;
-v647=null;
-v648=0;
-v649=false;
-v650=5126;
-v651=0;
-v652=0;
-v653=0;
-if(v16(v640)){
-v641=true;
-v647=v8.createStream(34962,v640);
-v650=v647.dtype;
-}
-else{
-v647=v8.getBuffer(v640);
-if(v647){
-v650=v647.dtype;
-}
-else if("constant" in v640){
-v642=2;
-if(typeof v640.constant === "number"){
-v643=v640.constant;
-v644=v645=v646=0;
-}
-else{
-v643=v640.constant.length>0?v640.constant[0]:0;
-v644=v640.constant.length>1?v640.constant[1]:0;
-v645=v640.constant.length>2?v640.constant[2]:0;
-v646=v640.constant.length>3?v640.constant[3]:0;
-}
-}
-else{
-if(v16(v640.buffer)){
-v647=v8.createStream(34962,v640.buffer);
-}
-else{
-v647=v8.getBuffer(v640.buffer);
-}
-v650="type" in v640?v49[v640.type]:v647.dtype;
-v649=!!v640.normalized;
-v648=v640.size|0;
-v651=v640.offset|0;
-v652=v640.stride|0;
-v653=v640.divisor|0;
-}
-}
-v655=g654.state;
-g654.state=v642;
-v656=g654.x;
-g654.x=v643;
-v657=g654.y;
-g654.y=v644;
-v658=g654.z;
-g654.z=v645;
-v659=g654.w;
-g654.w=v646;
-v660=g654.buffer;
-g654.buffer=v647;
-v661=g654.size;
-g654.size=v648;
-v662=g654.normalized;
-g654.normalized=v649;
-v663=g654.type;
-g654.type=v650;
-v664=g654.offset;
-g654.offset=v651;
-v665=g654.stride;
-g654.stride=v652;
-v666=g654.divisor;
-g654.divisor=v653;
-v668=v9.vert;
-v9.vert=g667;
-v670=v9.frag;
-v9.frag=g669;
-v5.dirty=true;
-a1(v2,a0,a2);
-v2.viewportWidth=v344;
-v2.viewportHeight=v345;
-v42[0]=v346;
-v42[1]=v347;
-v42[2]=v348;
-v42[3]=v349;
-v20[0]=v351;
-v20[1]=v353;
-v20[2]=v355;
-v20[3]=v357;
-v4.blend_enable=v359;
-v24[0]=v361;
-v24[1]=v363;
-v24[2]=v365;
-v24[3]=v367;
-v4.depth_enable=v369;
-v40[0]=v375;
-v40[1]=v376;
-v40[2]=v377;
-v40[3]=v378;
-v4.scissor_enable=v380;
-v4.stencil_enable=v382;
-if(v383){
-g52.cpuTime+=performance.now()-v384;
-}
-if(v387){
-v7.destroyStream(v386);
-}
-v6.elements=v388;
-v6.offset=v390;
-v6.count=v392;
-v6.primitive=v394;
-v12[g395]=v396;
-v12[g398]=v399;
-v12[g401]=v402;
-v12[g404]=v405;
-v12[g407]=v408;
-v12[g410]=v411;
-v12[g413]=v414;
-v12[g416]=v417;
-v12[g419]=v420;
-v12[g422]=v423;
-if(v425){
-v8.destroyStream(v431);
-}
-g438.state=v439;
-g438.x=v440;
-g438.y=v441;
-g438.z=v442;
-g438.w=v443;
-g438.buffer=v444;
-g438.size=v445;
-g438.normalized=v446;
-g438.type=v447;
-g438.offset=v448;
-g438.stride=v449;
-g438.divisor=v450;
-if(v452){
-v8.destroyStream(v458);
-}
-g465.state=v466;
-g465.x=v467;
-g465.y=v468;
-g465.z=v469;
-g465.w=v470;
-g465.buffer=v471;
-g465.size=v472;
-g465.normalized=v473;
-g465.type=v474;
-g465.offset=v475;
-g465.stride=v476;
-g465.divisor=v477;
-if(v479){
-v8.destroyStream(v485);
-}
-g492.state=v493;
-g492.x=v494;
-g492.y=v495;
-g492.z=v496;
-g492.w=v497;
-g492.buffer=v498;
-g492.size=v499;
-g492.normalized=v500;
-g492.type=v501;
-g492.offset=v502;
-g492.stride=v503;
-g492.divisor=v504;
-if(v506){
-v8.destroyStream(v512);
-}
-g519.state=v520;
-g519.x=v521;
-g519.y=v522;
-g519.z=v523;
-g519.w=v524;
-g519.buffer=v525;
-g519.size=v526;
-g519.normalized=v527;
-g519.type=v528;
-g519.offset=v529;
-g519.stride=v530;
-g519.divisor=v531;
-if(v533){
-v8.destroyStream(v539);
-}
-g546.state=v547;
-g546.x=v548;
-g546.y=v549;
-g546.z=v550;
-g546.w=v551;
-g546.buffer=v552;
-g546.size=v553;
-g546.normalized=v554;
-g546.type=v555;
-g546.offset=v556;
-g546.stride=v557;
-g546.divisor=v558;
-if(v560){
-v8.destroyStream(v566);
-}
-g573.state=v574;
-g573.x=v575;
-g573.y=v576;
-g573.z=v577;
-g573.w=v578;
-g573.buffer=v579;
-g573.size=v580;
-g573.normalized=v581;
-g573.type=v582;
-g573.offset=v583;
-g573.stride=v584;
-g573.divisor=v585;
-if(v587){
-v8.destroyStream(v593);
-}
-g600.state=v601;
-g600.x=v602;
-g600.y=v603;
-g600.z=v604;
-g600.w=v605;
-g600.buffer=v606;
-g600.size=v607;
-g600.normalized=v608;
-g600.type=v609;
-g600.offset=v610;
-g600.stride=v611;
-g600.divisor=v612;
-if(v614){
-v8.destroyStream(v620);
-}
-g627.state=v628;
-g627.x=v629;
-g627.y=v630;
-g627.z=v631;
-g627.w=v632;
-g627.buffer=v633;
-g627.size=v634;
-g627.normalized=v635;
-g627.type=v636;
-g627.offset=v637;
-g627.stride=v638;
-g627.divisor=v639;
-if(v641){
-v8.destroyStream(v647);
-}
-g654.state=v655;
-g654.x=v656;
-g654.y=v657;
-g654.z=v658;
-g654.w=v659;
-g654.buffer=v660;
-g654.size=v661;
-g654.normalized=v662;
-g654.type=v663;
-g654.offset=v664;
-g654.stride=v665;
-g654.divisor=v666;
-v9.vert=v668;
-v9.frag=v670;
-v5.dirty=true;
-}
-,"batch":function(a0,a1){
-var v671,v672,v711,v712,v713,v714,v715;
-v671=v14.angle_instanced_arrays;
-v672=v13.next;
-if(v672!==v13.cur){
-if(v672){
-v1.bindFramebuffer(36160,v672.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v672;
-}
-if(v5.dirty){
-var v673,v674,v675,v676,v677,v678,v679,v680,v681,v682,v683,v684,v685,v686,v687,v688,v689,v690,v691,v692,v693,v694,v695,v696,v697,v698,v699,v700,v701,v702,v703,v704,v705,v706;
-v673=v4.dither;
-if(v673!==v5.dither){
-if(v673){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v673;
-}
-v674=v22[0];
-v675=v22[1];
-if(v674!==v23[0]||v675!==v23[1]){
-v1.blendEquationSeparate(v674,v675);
-v23[0]=v674;
-v23[1]=v675;
-}
-v676=v4.depth_func;
-if(v676!==v5.depth_func){
-v1.depthFunc(v676);
-v5.depth_func=v676;
-}
-v677=v26[0];
-v678=v26[1];
-if(v677!==v27[0]||v678!==v27[1]){
-v1.depthRange(v677,v678);
-v27[0]=v677;
-v27[1]=v678;
-}
-v679=v4.depth_mask;
-if(v679!==v5.depth_mask){
-v1.depthMask(v679);
-v5.depth_mask=v679;
-}
-v680=v28[0];
-v681=v28[1];
-v682=v28[2];
-v683=v28[3];
-if(v680!==v29[0]||v681!==v29[1]||v682!==v29[2]||v683!==v29[3]){
-v1.colorMask(v680,v681,v682,v683);
-v29[0]=v680;
-v29[1]=v681;
-v29[2]=v682;
-v29[3]=v683;
-}
-v684=v4.cull_enable;
-if(v684!==v5.cull_enable){
-if(v684){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v684;
-}
-v685=v4.cull_face;
-if(v685!==v5.cull_face){
-v1.cullFace(v685);
-v5.cull_face=v685;
-}
-v686=v4.frontFace;
-if(v686!==v5.frontFace){
-v1.frontFace(v686);
-v5.frontFace=v686;
-}
-v687=v4.lineWidth;
-if(v687!==v5.lineWidth){
-v1.lineWidth(v687);
-v5.lineWidth=v687;
-}
-v688=v4.polygonOffset_enable;
-if(v688!==v5.polygonOffset_enable){
-if(v688){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v688;
-}
-v689=v30[0];
-v690=v30[1];
-if(v689!==v31[0]||v690!==v31[1]){
-v1.polygonOffset(v689,v690);
-v31[0]=v689;
-v31[1]=v690;
-}
-v691=v4.sample_alpha;
-if(v691!==v5.sample_alpha){
-if(v691){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v691;
-}
-v692=v4.sample_enable;
-if(v692!==v5.sample_enable){
-if(v692){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v692;
-}
-v693=v32[0];
-v694=v32[1];
-if(v693!==v33[0]||v694!==v33[1]){
-v1.sampleCoverage(v693,v694);
-v33[0]=v693;
-v33[1]=v694;
-}
-v695=v4.stencil_mask;
-if(v695!==v5.stencil_mask){
-v1.stencilMask(v695);
-v5.stencil_mask=v695;
-}
-v696=v34[0];
-v697=v34[1];
-v698=v34[2];
-if(v696!==v35[0]||v697!==v35[1]||v698!==v35[2]){
-v1.stencilFunc(v696,v697,v698);
-v35[0]=v696;
-v35[1]=v697;
-v35[2]=v698;
-}
-v699=v36[0];
-v700=v36[1];
-v701=v36[2];
-v702=v36[3];
-if(v699!==v37[0]||v700!==v37[1]||v701!==v37[2]||v702!==v37[3]){
-v1.stencilOpSeparate(v699,v700,v701,v702);
-v37[0]=v699;
-v37[1]=v700;
-v37[2]=v701;
-v37[3]=v702;
-}
-v703=v38[0];
-v704=v38[1];
-v705=v38[2];
-v706=v38[3];
-if(v703!==v39[0]||v704!==v39[1]||v705!==v39[2]||v706!==v39[3]){
-v1.stencilOpSeparate(v703,v704,v705,v706);
-v39[0]=v703;
-v39[1]=v704;
-v39[2]=v705;
-v39[3]=v706;
-}
-}
-v1.blendColor(0,0,0,1);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=1;
-if(g707){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g707;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g708){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g708;
-if(g709){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g709;
-if(g710){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g710;
-v711=v5.profile;
-if(v711){
-v712=performance.now();
-g52.count+=a1;
-}
-v1.useProgram(g109.program);
-v713=v14.angle_instanced_arrays;
-var v917;
-v11.setVAO(null);
-v1.uniform1i(g291.location,false);
-v1.uniform1i(g305.location,g306.bind());
-v917=v6.instances;
-for(v714=0;
-v714<a1;
-++v714){
-v715=a0[v714];
-var v716,v717,v718,v719,v720,v721,v722,v723,v724,v725,v726,v727,v728,v729,v730,v731,v732,v733,v734,v735,v736,v737,v738,v739,v740,v741,v742,v743,v744,v745,v746,v747,v748,v749,v750,v751,v752,v753,v754,v755,v756,v757,v758,v759,v760,v761,v762,v763,v764,v765,v766,v767,v768,v769,v770,v771,v772,v773,v774,v775,v776,v777,v778,v779,v780,v781,v782,v783,v784,v785,v786,v787,v788,v789,v790,v791,v792,v793,v794,v795,v796,v797,v798,v799,v800,v801,v802,v803,v804,v805,v806,v807,v808,v809,v810,v811,v812,v813,v814,v815,v816,v817,v818,v819,v820,v821,v822,v823,v824,v825,v826,v827,v828,v829,v830,v831,v832,v833,v834,v835,v836,v837,v838,v839,v840,v841,v842,v843,v844,v845,v846,v847,v848,v849,v850,v851,v852,v853,v854,v855,v856,v857,v858,v859,v860,v861,v862,v863,v864,v865,v866,v867,v868,v869,v870,v871,v872,v873,v874,v875,v876,v877,v878,v879,v880,v881,v882,v883,v884,v885,v886,v887,v888,v889,v890,v891,v892,v893,v894,v895,v896,v897,v898,v899,v900,v901,v902,v903,v904,v905,v906,v907,v908,v909,v910,v911,v912,v913,v914,v915,v916;
-v716=v715["viewport"];
-if(!(v716&&typeof v716==="object"))g18.commandRaise(g90,g19);
-v717=v716.x|0;
-v718=v716.y|0;
-v719="width" in v716?v716.width|0:(v2.framebufferWidth-v717);
-v720="height" in v716?v716.height|0:(v2.framebufferHeight-v718);
-if(!(v719>=0&&v720>=0))g18.commandRaise(g90,g19);
-v721=v2.viewportWidth;
-v2.viewportWidth=v719;
-v722=v2.viewportHeight;
-v2.viewportHeight=v720;
-v1.viewport(v717,v718,v719,v720);
-v43[0]=v717;
-v43[1]=v718;
-v43[2]=v719;
-v43[3]=v720;
-v723=v715["viewport"];
-if(!(v723&&typeof v723==="object"))g18.commandRaise(g100,g19);
-v724=v723.x|0;
-v725=v723.y|0;
-v726="width" in v723?v723.width|0:(v2.framebufferWidth-v724);
-v727="height" in v723?v723.height|0:(v2.framebufferHeight-v725);
-if(!(v726>=0&&v727>=0))g18.commandRaise(g100,g19);
-v1.scissor(v724,v725,v726,v727);
-v41[0]=v724;
-v41[1]=v725;
-v41[2]=v726;
-v41[3]=v727;
-v728=g111.call(this,v2,v715,v714);
-if(!(v728&&(typeof v728==="object"||typeof v728==="function")&&(v16(v728)||v8.getBuffer(v728)||v8.getBuffer(v728.buffer)||v16(v728.buffer)||("constant" in v728&&(typeof v728.constant==="number"||v17(v728.constant))))))g18.commandRaise(g113,g19);
-v729=false;
-v730=1;
-v731=0;
-v732=0;
-v733=0;
-v734=0;
-v735=null;
-v736=0;
-v737=false;
-v738=5126;
-v739=0;
-v740=0;
-v741=0;
-if(v16(v728)){
-v729=true;
-v735=v8.createStream(34962,v728);
-v738=v735.dtype;
-}
-else{
-v735=v8.getBuffer(v728);
-if(v735){
-v738=v735.dtype;
-}
-else if("constant" in v728){
-v730=2;
-if(typeof v728.constant === "number"){
-v731=v728.constant;
-v732=v733=v734=0;
-}
-else{
-v731=v728.constant.length>0?v728.constant[0]:0;
-v732=v728.constant.length>1?v728.constant[1]:0;
-v733=v728.constant.length>2?v728.constant[2]:0;
-v734=v728.constant.length>3?v728.constant[3]:0;
-}
-}
-else{
-if(v16(v728.buffer)){
-v735=v8.createStream(34962,v728.buffer);
-}
-else{
-v735=v8.getBuffer(v728.buffer);
-}
-v738="type" in v728?v49[v728.type]:v735.dtype;
-v737=!!v728.normalized;
-v736=v728.size|0;
-v739=v728.offset|0;
-v740=v728.stride|0;
-v741=v728.divisor|0;
-}
-}
-v742=g127.location;
-v743=v10[v742];
-if(v730===1){
-if(!v743.buffer){
-v1.enableVertexAttribArray(v742);
-}
-v744=v736||4;
-if(v743.type!==v738||v743.size!==v744||v743.buffer!==v735||v743.normalized!==v737||v743.offset!==v739||v743.stride!==v740){
-v1.bindBuffer(34962,v735.buffer);
-v1.vertexAttribPointer(v742,v744,v738,v737,v740,v739);
-v743.type=v738;
-v743.size=v744;
-v743.buffer=v735;
-v743.normalized=v737;
-v743.offset=v739;
-v743.stride=v740;
-}
-if(v743.divisor!==v741){
-v713.vertexAttribDivisorANGLE(v742,v741);
-v743.divisor=v741;
-}
-}
-else{
-if(v743.buffer){
-v1.disableVertexAttribArray(v742);
-v743.buffer=null;
-}
-if(v743.x!==v731||v743.y!==v732||v743.z!==v733||v743.w!==v734){
-v1.vertexAttrib4f(v742,v731,v732,v733,v734);
-v743.x=v731;
-v743.y=v732;
-v743.z=v733;
-v743.w=v734;
-}
-}
-v745=g131.call(this,v2,v715,v714);
-if(!(v745&&(typeof v745==="object"||typeof v745==="function")&&(v16(v745)||v8.getBuffer(v745)||v8.getBuffer(v745.buffer)||v16(v745.buffer)||("constant" in v745&&(typeof v745.constant==="number"||v17(v745.constant))))))g18.commandRaise(g133,g19);
-v746=false;
-v747=1;
-v748=0;
-v749=0;
-v750=0;
-v751=0;
-v752=null;
-v753=0;
-v754=false;
-v755=5126;
-v756=0;
-v757=0;
-v758=0;
-if(v16(v745)){
-v746=true;
-v752=v8.createStream(34962,v745);
-v755=v752.dtype;
-}
-else{
-v752=v8.getBuffer(v745);
-if(v752){
-v755=v752.dtype;
-}
-else if("constant" in v745){
-v747=2;
-if(typeof v745.constant === "number"){
-v748=v745.constant;
-v749=v750=v751=0;
-}
-else{
-v748=v745.constant.length>0?v745.constant[0]:0;
-v749=v745.constant.length>1?v745.constant[1]:0;
-v750=v745.constant.length>2?v745.constant[2]:0;
-v751=v745.constant.length>3?v745.constant[3]:0;
-}
-}
-else{
-if(v16(v745.buffer)){
-v752=v8.createStream(34962,v745.buffer);
-}
-else{
-v752=v8.getBuffer(v745.buffer);
-}
-v755="type" in v745?v49[v745.type]:v752.dtype;
-v754=!!v745.normalized;
-v753=v745.size|0;
-v756=v745.offset|0;
-v757=v745.stride|0;
-v758=v745.divisor|0;
-}
-}
-v759=g147.location;
-v760=v10[v759];
-if(v747===1){
-if(!v760.buffer){
-v1.enableVertexAttribArray(v759);
-}
-v761=v753||1;
-if(v760.type!==v755||v760.size!==v761||v760.buffer!==v752||v760.normalized!==v754||v760.offset!==v756||v760.stride!==v757){
-v1.bindBuffer(34962,v752.buffer);
-v1.vertexAttribPointer(v759,v761,v755,v754,v757,v756);
-v760.type=v755;
-v760.size=v761;
-v760.buffer=v752;
-v760.normalized=v754;
-v760.offset=v756;
-v760.stride=v757;
-}
-if(v760.divisor!==v758){
-v713.vertexAttribDivisorANGLE(v759,v758);
-v760.divisor=v758;
-}
-}
-else{
-if(v760.buffer){
-v1.disableVertexAttribArray(v759);
-v760.buffer=null;
-}
-if(v760.x!==v748||v760.y!==v749||v760.z!==v750||v760.w!==v751){
-v1.vertexAttrib4f(v759,v748,v749,v750,v751);
-v760.x=v748;
-v760.y=v749;
-v760.z=v750;
-v760.w=v751;
-}
-}
-v762=g151.call(this,v2,v715,v714);
-if(!(v762&&(typeof v762==="object"||typeof v762==="function")&&(v16(v762)||v8.getBuffer(v762)||v8.getBuffer(v762.buffer)||v16(v762.buffer)||("constant" in v762&&(typeof v762.constant==="number"||v17(v762.constant))))))g18.commandRaise(g153,g19);
-v763=false;
-v764=1;
-v765=0;
-v766=0;
-v767=0;
-v768=0;
-v769=null;
-v770=0;
-v771=false;
-v772=5126;
-v773=0;
-v774=0;
-v775=0;
-if(v16(v762)){
-v763=true;
-v769=v8.createStream(34962,v762);
-v772=v769.dtype;
-}
-else{
-v769=v8.getBuffer(v762);
-if(v769){
-v772=v769.dtype;
-}
-else if("constant" in v762){
-v764=2;
-if(typeof v762.constant === "number"){
-v765=v762.constant;
-v766=v767=v768=0;
-}
-else{
-v765=v762.constant.length>0?v762.constant[0]:0;
-v766=v762.constant.length>1?v762.constant[1]:0;
-v767=v762.constant.length>2?v762.constant[2]:0;
-v768=v762.constant.length>3?v762.constant[3]:0;
-}
-}
-else{
-if(v16(v762.buffer)){
-v769=v8.createStream(34962,v762.buffer);
-}
-else{
-v769=v8.getBuffer(v762.buffer);
-}
-v772="type" in v762?v49[v762.type]:v769.dtype;
-v771=!!v762.normalized;
-v770=v762.size|0;
-v773=v762.offset|0;
-v774=v762.stride|0;
-v775=v762.divisor|0;
-}
-}
-v776=g167.location;
-v777=v10[v776];
-if(v764===1){
-if(!v777.buffer){
-v1.enableVertexAttribArray(v776);
-}
-v778=v770||4;
-if(v777.type!==v772||v777.size!==v778||v777.buffer!==v769||v777.normalized!==v771||v777.offset!==v773||v777.stride!==v774){
-v1.bindBuffer(34962,v769.buffer);
-v1.vertexAttribPointer(v776,v778,v772,v771,v774,v773);
-v777.type=v772;
-v777.size=v778;
-v777.buffer=v769;
-v777.normalized=v771;
-v777.offset=v773;
-v777.stride=v774;
-}
-if(v777.divisor!==v775){
-v713.vertexAttribDivisorANGLE(v776,v775);
-v777.divisor=v775;
-}
-}
-else{
-if(v777.buffer){
-v1.disableVertexAttribArray(v776);
-v777.buffer=null;
-}
-if(v777.x!==v765||v777.y!==v766||v777.z!==v767||v777.w!==v768){
-v1.vertexAttrib4f(v776,v765,v766,v767,v768);
-v777.x=v765;
-v777.y=v766;
-v777.z=v767;
-v777.w=v768;
-}
-}
-v779=g171.call(this,v2,v715,v714);
-if(!(v779&&(typeof v779==="object"||typeof v779==="function")&&(v16(v779)||v8.getBuffer(v779)||v8.getBuffer(v779.buffer)||v16(v779.buffer)||("constant" in v779&&(typeof v779.constant==="number"||v17(v779.constant))))))g18.commandRaise(g173,g19);
-v780=false;
-v781=1;
-v782=0;
-v783=0;
-v784=0;
-v785=0;
-v786=null;
-v787=0;
-v788=false;
-v789=5126;
-v790=0;
-v791=0;
-v792=0;
-if(v16(v779)){
-v780=true;
-v786=v8.createStream(34962,v779);
-v789=v786.dtype;
-}
-else{
-v786=v8.getBuffer(v779);
-if(v786){
-v789=v786.dtype;
-}
-else if("constant" in v779){
-v781=2;
-if(typeof v779.constant === "number"){
-v782=v779.constant;
-v783=v784=v785=0;
-}
-else{
-v782=v779.constant.length>0?v779.constant[0]:0;
-v783=v779.constant.length>1?v779.constant[1]:0;
-v784=v779.constant.length>2?v779.constant[2]:0;
-v785=v779.constant.length>3?v779.constant[3]:0;
-}
-}
-else{
-if(v16(v779.buffer)){
-v786=v8.createStream(34962,v779.buffer);
-}
-else{
-v786=v8.getBuffer(v779.buffer);
-}
-v789="type" in v779?v49[v779.type]:v786.dtype;
-v788=!!v779.normalized;
-v787=v779.size|0;
-v790=v779.offset|0;
-v791=v779.stride|0;
-v792=v779.divisor|0;
-}
-}
-v793=g187.location;
-v794=v10[v793];
-if(v781===1){
-if(!v794.buffer){
-v1.enableVertexAttribArray(v793);
-}
-v795=v787||1;
-if(v794.type!==v789||v794.size!==v795||v794.buffer!==v786||v794.normalized!==v788||v794.offset!==v790||v794.stride!==v791){
-v1.bindBuffer(34962,v786.buffer);
-v1.vertexAttribPointer(v793,v795,v789,v788,v791,v790);
-v794.type=v789;
-v794.size=v795;
-v794.buffer=v786;
-v794.normalized=v788;
-v794.offset=v790;
-v794.stride=v791;
-}
-if(v794.divisor!==v792){
-v713.vertexAttribDivisorANGLE(v793,v792);
-v794.divisor=v792;
-}
-}
-else{
-if(v794.buffer){
-v1.disableVertexAttribArray(v793);
-v794.buffer=null;
-}
-if(v794.x!==v782||v794.y!==v783||v794.z!==v784||v794.w!==v785){
-v1.vertexAttrib4f(v793,v782,v783,v784,v785);
-v794.x=v782;
-v794.y=v783;
-v794.z=v784;
-v794.w=v785;
-}
-}
-v796=g191.call(this,v2,v715,v714);
-if(!(v796&&(typeof v796==="object"||typeof v796==="function")&&(v16(v796)||v8.getBuffer(v796)||v8.getBuffer(v796.buffer)||v16(v796.buffer)||("constant" in v796&&(typeof v796.constant==="number"||v17(v796.constant))))))g18.commandRaise(g193,g19);
-v797=false;
-v798=1;
-v799=0;
-v800=0;
-v801=0;
-v802=0;
-v803=null;
-v804=0;
-v805=false;
-v806=5126;
-v807=0;
-v808=0;
-v809=0;
-if(v16(v796)){
-v797=true;
-v803=v8.createStream(34962,v796);
-v806=v803.dtype;
-}
-else{
-v803=v8.getBuffer(v796);
-if(v803){
-v806=v803.dtype;
-}
-else if("constant" in v796){
-v798=2;
-if(typeof v796.constant === "number"){
-v799=v796.constant;
-v800=v801=v802=0;
-}
-else{
-v799=v796.constant.length>0?v796.constant[0]:0;
-v800=v796.constant.length>1?v796.constant[1]:0;
-v801=v796.constant.length>2?v796.constant[2]:0;
-v802=v796.constant.length>3?v796.constant[3]:0;
-}
-}
-else{
-if(v16(v796.buffer)){
-v803=v8.createStream(34962,v796.buffer);
-}
-else{
-v803=v8.getBuffer(v796.buffer);
-}
-v806="type" in v796?v49[v796.type]:v803.dtype;
-v805=!!v796.normalized;
-v804=v796.size|0;
-v807=v796.offset|0;
-v808=v796.stride|0;
-v809=v796.divisor|0;
-}
-}
-v810=g207.location;
-v811=v10[v810];
-if(v798===1){
-if(!v811.buffer){
-v1.enableVertexAttribArray(v810);
-}
-v812=v804||1;
-if(v811.type!==v806||v811.size!==v812||v811.buffer!==v803||v811.normalized!==v805||v811.offset!==v807||v811.stride!==v808){
-v1.bindBuffer(34962,v803.buffer);
-v1.vertexAttribPointer(v810,v812,v806,v805,v808,v807);
-v811.type=v806;
-v811.size=v812;
-v811.buffer=v803;
-v811.normalized=v805;
-v811.offset=v807;
-v811.stride=v808;
-}
-if(v811.divisor!==v809){
-v713.vertexAttribDivisorANGLE(v810,v809);
-v811.divisor=v809;
-}
-}
-else{
-if(v811.buffer){
-v1.disableVertexAttribArray(v810);
-v811.buffer=null;
-}
-if(v811.x!==v799||v811.y!==v800||v811.z!==v801||v811.w!==v802){
-v1.vertexAttrib4f(v810,v799,v800,v801,v802);
-v811.x=v799;
-v811.y=v800;
-v811.z=v801;
-v811.w=v802;
-}
-}
-v813=g211.call(this,v2,v715,v714);
-if(!(v813&&(typeof v813==="object"||typeof v813==="function")&&(v16(v813)||v8.getBuffer(v813)||v8.getBuffer(v813.buffer)||v16(v813.buffer)||("constant" in v813&&(typeof v813.constant==="number"||v17(v813.constant))))))g18.commandRaise(g213,g19);
-v814=false;
-v815=1;
-v816=0;
-v817=0;
-v818=0;
-v819=0;
-v820=null;
-v821=0;
-v822=false;
-v823=5126;
-v824=0;
-v825=0;
-v826=0;
-if(v16(v813)){
-v814=true;
-v820=v8.createStream(34962,v813);
-v823=v820.dtype;
-}
-else{
-v820=v8.getBuffer(v813);
-if(v820){
-v823=v820.dtype;
-}
-else if("constant" in v813){
-v815=2;
-if(typeof v813.constant === "number"){
-v816=v813.constant;
-v817=v818=v819=0;
-}
-else{
-v816=v813.constant.length>0?v813.constant[0]:0;
-v817=v813.constant.length>1?v813.constant[1]:0;
-v818=v813.constant.length>2?v813.constant[2]:0;
-v819=v813.constant.length>3?v813.constant[3]:0;
-}
-}
-else{
-if(v16(v813.buffer)){
-v820=v8.createStream(34962,v813.buffer);
-}
-else{
-v820=v8.getBuffer(v813.buffer);
-}
-v823="type" in v813?v49[v813.type]:v820.dtype;
-v822=!!v813.normalized;
-v821=v813.size|0;
-v824=v813.offset|0;
-v825=v813.stride|0;
-v826=v813.divisor|0;
-}
-}
-v827=g227.location;
-v828=v10[v827];
-if(v815===1){
-if(!v828.buffer){
-v1.enableVertexAttribArray(v827);
-}
-v829=v821||1;
-if(v828.type!==v823||v828.size!==v829||v828.buffer!==v820||v828.normalized!==v822||v828.offset!==v824||v828.stride!==v825){
-v1.bindBuffer(34962,v820.buffer);
-v1.vertexAttribPointer(v827,v829,v823,v822,v825,v824);
-v828.type=v823;
-v828.size=v829;
-v828.buffer=v820;
-v828.normalized=v822;
-v828.offset=v824;
-v828.stride=v825;
-}
-if(v828.divisor!==v826){
-v713.vertexAttribDivisorANGLE(v827,v826);
-v828.divisor=v826;
-}
-}
-else{
-if(v828.buffer){
-v1.disableVertexAttribArray(v827);
-v828.buffer=null;
-}
-if(v828.x!==v816||v828.y!==v817||v828.z!==v818||v828.w!==v819){
-v1.vertexAttrib4f(v827,v816,v817,v818,v819);
-v828.x=v816;
-v828.y=v817;
-v828.z=v818;
-v828.w=v819;
-}
-}
-v830=g231.call(this,v2,v715,v714);
-if(!(v830&&(typeof v830==="object"||typeof v830==="function")&&(v16(v830)||v8.getBuffer(v830)||v8.getBuffer(v830.buffer)||v16(v830.buffer)||("constant" in v830&&(typeof v830.constant==="number"||v17(v830.constant))))))g18.commandRaise(g233,g19);
-v831=false;
-v832=1;
-v833=0;
-v834=0;
-v835=0;
-v836=0;
-v837=null;
-v838=0;
-v839=false;
-v840=5126;
-v841=0;
-v842=0;
-v843=0;
-if(v16(v830)){
-v831=true;
-v837=v8.createStream(34962,v830);
-v840=v837.dtype;
-}
-else{
-v837=v8.getBuffer(v830);
-if(v837){
-v840=v837.dtype;
-}
-else if("constant" in v830){
-v832=2;
-if(typeof v830.constant === "number"){
-v833=v830.constant;
-v834=v835=v836=0;
-}
-else{
-v833=v830.constant.length>0?v830.constant[0]:0;
-v834=v830.constant.length>1?v830.constant[1]:0;
-v835=v830.constant.length>2?v830.constant[2]:0;
-v836=v830.constant.length>3?v830.constant[3]:0;
-}
-}
-else{
-if(v16(v830.buffer)){
-v837=v8.createStream(34962,v830.buffer);
-}
-else{
-v837=v8.getBuffer(v830.buffer);
-}
-v840="type" in v830?v49[v830.type]:v837.dtype;
-v839=!!v830.normalized;
-v838=v830.size|0;
-v841=v830.offset|0;
-v842=v830.stride|0;
-v843=v830.divisor|0;
-}
-}
-v844=g247.location;
-v845=v10[v844];
-if(v832===1){
-if(!v845.buffer){
-v1.enableVertexAttribArray(v844);
-}
-v846=v838||1;
-if(v845.type!==v840||v845.size!==v846||v845.buffer!==v837||v845.normalized!==v839||v845.offset!==v841||v845.stride!==v842){
-v1.bindBuffer(34962,v837.buffer);
-v1.vertexAttribPointer(v844,v846,v840,v839,v842,v841);
-v845.type=v840;
-v845.size=v846;
-v845.buffer=v837;
-v845.normalized=v839;
-v845.offset=v841;
-v845.stride=v842;
-}
-if(v845.divisor!==v843){
-v713.vertexAttribDivisorANGLE(v844,v843);
-v845.divisor=v843;
-}
-}
-else{
-if(v845.buffer){
-v1.disableVertexAttribArray(v844);
-v845.buffer=null;
-}
-if(v845.x!==v833||v845.y!==v834||v845.z!==v835||v845.w!==v836){
-v1.vertexAttrib4f(v844,v833,v834,v835,v836);
-v845.x=v833;
-v845.y=v834;
-v845.z=v835;
-v845.w=v836;
-}
-}
-v847=g251.call(this,v2,v715,v714);
-if(!(v847&&(typeof v847==="object"||typeof v847==="function")&&(v16(v847)||v8.getBuffer(v847)||v8.getBuffer(v847.buffer)||v16(v847.buffer)||("constant" in v847&&(typeof v847.constant==="number"||v17(v847.constant))))))g18.commandRaise(g253,g19);
-v848=false;
-v849=1;
-v850=0;
-v851=0;
-v852=0;
-v853=0;
-v854=null;
-v855=0;
-v856=false;
-v857=5126;
-v858=0;
-v859=0;
-v860=0;
-if(v16(v847)){
-v848=true;
-v854=v8.createStream(34962,v847);
-v857=v854.dtype;
-}
-else{
-v854=v8.getBuffer(v847);
-if(v854){
-v857=v854.dtype;
-}
-else if("constant" in v847){
-v849=2;
-if(typeof v847.constant === "number"){
-v850=v847.constant;
-v851=v852=v853=0;
-}
-else{
-v850=v847.constant.length>0?v847.constant[0]:0;
-v851=v847.constant.length>1?v847.constant[1]:0;
-v852=v847.constant.length>2?v847.constant[2]:0;
-v853=v847.constant.length>3?v847.constant[3]:0;
-}
-}
-else{
-if(v16(v847.buffer)){
-v854=v8.createStream(34962,v847.buffer);
-}
-else{
-v854=v8.getBuffer(v847.buffer);
-}
-v857="type" in v847?v49[v847.type]:v854.dtype;
-v856=!!v847.normalized;
-v855=v847.size|0;
-v858=v847.offset|0;
-v859=v847.stride|0;
-v860=v847.divisor|0;
-}
-}
-v861=g267.location;
-v862=v10[v861];
-if(v849===1){
-if(!v862.buffer){
-v1.enableVertexAttribArray(v861);
-}
-v863=v855||1;
-if(v862.type!==v857||v862.size!==v863||v862.buffer!==v854||v862.normalized!==v856||v862.offset!==v858||v862.stride!==v859){
-v1.bindBuffer(34962,v854.buffer);
-v1.vertexAttribPointer(v861,v863,v857,v856,v859,v858);
-v862.type=v857;
-v862.size=v863;
-v862.buffer=v854;
-v862.normalized=v856;
-v862.offset=v858;
-v862.stride=v859;
-}
-if(v862.divisor!==v860){
-v713.vertexAttribDivisorANGLE(v861,v860);
-v862.divisor=v860;
-}
-}
-else{
-if(v862.buffer){
-v1.disableVertexAttribArray(v861);
-v862.buffer=null;
-}
-if(v862.x!==v850||v862.y!==v851||v862.z!==v852||v862.w!==v853){
-v1.vertexAttrib4f(v861,v850,v851,v852,v853);
-v862.x=v850;
-v862.y=v851;
-v862.z=v852;
-v862.w=v853;
-}
-}
-v864=g271.call(this,v2,v715,v714);
-if(!(v864&&(typeof v864==="object"||typeof v864==="function")&&(v16(v864)||v8.getBuffer(v864)||v8.getBuffer(v864.buffer)||v16(v864.buffer)||("constant" in v864&&(typeof v864.constant==="number"||v17(v864.constant))))))g18.commandRaise(g273,g19);
-v865=false;
-v866=1;
-v867=0;
-v868=0;
-v869=0;
-v870=0;
-v871=null;
-v872=0;
-v873=false;
-v874=5126;
-v875=0;
-v876=0;
-v877=0;
-if(v16(v864)){
-v865=true;
-v871=v8.createStream(34962,v864);
-v874=v871.dtype;
-}
-else{
-v871=v8.getBuffer(v864);
-if(v871){
-v874=v871.dtype;
-}
-else if("constant" in v864){
-v866=2;
-if(typeof v864.constant === "number"){
-v867=v864.constant;
-v868=v869=v870=0;
-}
-else{
-v867=v864.constant.length>0?v864.constant[0]:0;
-v868=v864.constant.length>1?v864.constant[1]:0;
-v869=v864.constant.length>2?v864.constant[2]:0;
-v870=v864.constant.length>3?v864.constant[3]:0;
-}
-}
-else{
-if(v16(v864.buffer)){
-v871=v8.createStream(34962,v864.buffer);
-}
-else{
-v871=v8.getBuffer(v864.buffer);
-}
-v874="type" in v864?v49[v864.type]:v871.dtype;
-v873=!!v864.normalized;
-v872=v864.size|0;
-v875=v864.offset|0;
-v876=v864.stride|0;
-v877=v864.divisor|0;
-}
-}
-v878=g287.location;
-v879=v10[v878];
-if(v866===1){
-if(!v879.buffer){
-v1.enableVertexAttribArray(v878);
-}
-v880=v872||1;
-if(v879.type!==v874||v879.size!==v880||v879.buffer!==v871||v879.normalized!==v873||v879.offset!==v875||v879.stride!==v876){
-v1.bindBuffer(34962,v871.buffer);
-v1.vertexAttribPointer(v878,v880,v874,v873,v876,v875);
-v879.type=v874;
-v879.size=v880;
-v879.buffer=v871;
-v879.normalized=v873;
-v879.offset=v875;
-v879.stride=v876;
-}
-if(v879.divisor!==v877){
-v713.vertexAttribDivisorANGLE(v878,v877);
-v879.divisor=v877;
-}
-}
-else{
-if(v879.buffer){
-v1.disableVertexAttribArray(v878);
-v879.buffer=null;
-}
-if(v879.x!==v867||v879.y!==v868||v879.z!==v869||v879.w!==v870){
-v1.vertexAttrib4f(v878,v867,v868,v869,v870);
-v879.x=v867;
-v879.y=v868;
-v879.z=v869;
-v879.w=v870;
-}
-}
-v881=v715["markerTexture"];
-if(v881&&v881._reglType==="framebuffer"){
-v881=v881.color[0];
-}
-if(!(typeof v881==="function"&&v881._reglType==="texture2d"))g18.commandRaise(g294,g19);
-v882=v881._texture;
-v1.uniform1i(g292.location,v882.bind());
-v883=v715["opacity"];
-if(!(typeof v883==="number"))g18.commandRaise(g298,g19);
-if(!v714||v884!==v883){
-v884=v883;
-v1.uniform1f(g296.location,v883);
-}
-v885=g300.call(this,v2,v715,v714);
-if(!(v17(v885)&&v885.length===2))g18.commandRaise(g302,g19);
-v886=v885[0];
-v888=v885[1];
-if(!v714||v887!==v886||v889!==v888){
-v887=v886;
-v889=v888;
-v1.uniform2f(g299.location,v886,v888);
-}
-v890=v2["pixelRatio"];
-if(!(typeof v890==="number"))g18.commandRaise(g309,g19);
-if(!v714||v891!==v890){
-v891=v890;
-v1.uniform1f(g307.location,v890);
-}
-v892=v715["scale"];
-if(!(v17(v892)&&v892.length===2))g18.commandRaise(g312,g19);
-v893=v892[0];
-v895=v892[1];
-if(!v714||v894!==v893||v896!==v895){
-v894=v893;
-v896=v895;
-v1.uniform2f(g310.location,v893,v895);
-}
-v897=v715["scaleFract"];
-if(!(v17(v897)&&v897.length===2))g18.commandRaise(g317,g19);
-v898=v897[0];
-v900=v897[1];
-if(!v714||v899!==v898||v901!==v900){
-v899=v898;
-v901=v900;
-v1.uniform2f(g315.location,v898,v900);
-}
-v902=v715["translate"];
-if(!(v17(v902)&&v902.length===2))g18.commandRaise(g322,g19);
-v903=v902[0];
-v905=v902[1];
-if(!v714||v904!==v903||v906!==v905){
-v904=v903;
-v906=v905;
-v1.uniform2f(g320.location,v903,v905);
-}
-v907=v715["translateFract"];
-if(!(v17(v907)&&v907.length===2))g18.commandRaise(g327,g19);
-v908=v907[0];
-v910=v907[1];
-if(!v714||v909!==v908||v911!==v910){
-v909=v908;
-v911=v910;
-v1.uniform2f(g325.location,v908,v910);
-}
-v912=v715["elements"];
-v913=null;
-v914=v16(v912);
-if(v914){
-v913=v7.createStream(v912);
-}
-else{
-v913=v7.getElements(v912);
-if(!(!v912||v913))g18.commandRaise(g333,g19);
-}
-if(v913)v1.bindBuffer(34963,v913.buffer.buffer);
-v915=v715["offset"];
-if(!(v915>=0))g18.commandRaise(g335,g19);
-v916=v715["count"];
-if(!(typeof v916==="number"&&v916>=0&&v916===(v916|0)))g18.commandRaise(g337,g19);
-if(v916){
-if(v917>0){
-if(v913){
-v713.drawElementsInstancedANGLE(0,v916,v913.type,v915<<((v913.type-5121)>>1),v917);
-}
-else{
-v713.drawArraysInstancedANGLE(0,v915,v916,v917);
-}
-}
-else if(v917<0){
-if(v913){
-v1.drawElements(0,v916,v913.type,v915<<((v913.type-5121)>>1));
-}
-else{
-v1.drawArrays(0,v915,v916);
-}
-}
-v2.viewportWidth=v721;
-v2.viewportHeight=v722;
-if(v729){
-v8.destroyStream(v735);
-}
-if(v746){
-v8.destroyStream(v752);
-}
-if(v763){
-v8.destroyStream(v769);
-}
-if(v780){
-v8.destroyStream(v786);
-}
-if(v797){
-v8.destroyStream(v803);
-}
-if(v814){
-v8.destroyStream(v820);
-}
-if(v831){
-v8.destroyStream(v837);
-}
-if(v848){
-v8.destroyStream(v854);
-}
-if(v865){
-v8.destroyStream(v871);
-}
-v882.unbind();
-if(v914){
-v7.destroyStream(v913);
-}
-}
-}
-g306.unbind();
-v5.dirty=true;
-v11.setVAO(null);
-if(v711){
-g52.cpuTime+=performance.now()-v712;
-}
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/19769c875db736c08a744c0a6aabe28276ed06aa24fdb7c36506a9f4c1f56f13 b/src/generated/regl-codegen/19769c875db736c08a744c0a6aabe28276ed06aa24fdb7c36506a9f4c1f56f13
deleted file mode 100644
index 4d7949eb5a6..00000000000
--- a/src/generated/regl-codegen/19769c875db736c08a744c0a6aabe28276ed06aa24fdb7c36506a9f4c1f56f13
+++ /dev/null
@@ -1,3375 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g90,g97,g98,g100,g105,g106,g109,g111,g113,g127,g131,g133,g147,g151,g153,g167,g171,g173,g187,g191,g193,g207,g211,g213,g227,g231,g233,g247,g251,g253,g267,g271,g273,g287,g291,g292,g294,g295,g296,g298,g301,g302,g303,g305,g306,g308,g311,g313,g316,g318,g321,g323,g329,g331,g333,g346,g348,g350,g352,g354,g356,g358,g360,g362,g364,g375,g377,g389,g391,g393,g394,g397,g400,g403,g406,g409,g412,g415,g418,g434,g461,g488,g515,g542,g569,g596,g623,g650,g663,g665,g703,g704,g705,g706
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-return {
-"draw":function(a0){
-var v53,v54,v89,v91,v92,v93,v94,v95,v96,v99,v101,v102,v103,v104,v107,v108,v110,v112,v114,v115,v116,v117,v118,v119,v120,v121,v122,v123,v124,v125,v126,v128,v129,v130,v132,v134,v135,v136,v137,v138,v139,v140,v141,v142,v143,v144,v145,v146,v148,v149,v150,v152,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v168,v169,v170,v172,v174,v175,v176,v177,v178,v179,v180,v181,v182,v183,v184,v185,v186,v188,v189,v190,v192,v194,v195,v196,v197,v198,v199,v200,v201,v202,v203,v204,v205,v206,v208,v209,v210,v212,v214,v215,v216,v217,v218,v219,v220,v221,v222,v223,v224,v225,v226,v228,v229,v230,v232,v234,v235,v236,v237,v238,v239,v240,v241,v242,v243,v244,v245,v246,v248,v249,v250,v252,v254,v255,v256,v257,v258,v259,v260,v261,v262,v263,v264,v265,v266,v268,v269,v270,v272,v274,v275,v276,v277,v278,v279,v280,v281,v282,v283,v284,v285,v286,v288,v289,v290,v293,v297,v299,v300,v304,v307,v309,v310,v312,v314,v315,v317,v319,v320,v322,v324,v325,v326,v327,v328,v330,v332,v334;
-v53=v14.angle_instanced_arrays;
-v54=v13.next;
-if(v54!==v13.cur){
-if(v54){
-v1.bindFramebuffer(36160,v54.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v54;
-}
-if(v5.dirty){
-var v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88;
-v55=v4.dither;
-if(v55!==v5.dither){
-if(v55){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v55;
-}
-v56=v22[0];
-v57=v22[1];
-if(v56!==v23[0]||v57!==v23[1]){
-v1.blendEquationSeparate(v56,v57);
-v23[0]=v56;
-v23[1]=v57;
-}
-v58=v4.depth_func;
-if(v58!==v5.depth_func){
-v1.depthFunc(v58);
-v5.depth_func=v58;
-}
-v59=v26[0];
-v60=v26[1];
-if(v59!==v27[0]||v60!==v27[1]){
-v1.depthRange(v59,v60);
-v27[0]=v59;
-v27[1]=v60;
-}
-v61=v4.depth_mask;
-if(v61!==v5.depth_mask){
-v1.depthMask(v61);
-v5.depth_mask=v61;
-}
-v62=v28[0];
-v63=v28[1];
-v64=v28[2];
-v65=v28[3];
-if(v62!==v29[0]||v63!==v29[1]||v64!==v29[2]||v65!==v29[3]){
-v1.colorMask(v62,v63,v64,v65);
-v29[0]=v62;
-v29[1]=v63;
-v29[2]=v64;
-v29[3]=v65;
-}
-v66=v4.cull_enable;
-if(v66!==v5.cull_enable){
-if(v66){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v66;
-}
-v67=v4.cull_face;
-if(v67!==v5.cull_face){
-v1.cullFace(v67);
-v5.cull_face=v67;
-}
-v68=v4.frontFace;
-if(v68!==v5.frontFace){
-v1.frontFace(v68);
-v5.frontFace=v68;
-}
-v69=v4.lineWidth;
-if(v69!==v5.lineWidth){
-v1.lineWidth(v69);
-v5.lineWidth=v69;
-}
-v70=v4.polygonOffset_enable;
-if(v70!==v5.polygonOffset_enable){
-if(v70){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v70;
-}
-v71=v30[0];
-v72=v30[1];
-if(v71!==v31[0]||v72!==v31[1]){
-v1.polygonOffset(v71,v72);
-v31[0]=v71;
-v31[1]=v72;
-}
-v73=v4.sample_alpha;
-if(v73!==v5.sample_alpha){
-if(v73){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v73;
-}
-v74=v4.sample_enable;
-if(v74!==v5.sample_enable){
-if(v74){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v74;
-}
-v75=v32[0];
-v76=v32[1];
-if(v75!==v33[0]||v76!==v33[1]){
-v1.sampleCoverage(v75,v76);
-v33[0]=v75;
-v33[1]=v76;
-}
-v77=v4.stencil_mask;
-if(v77!==v5.stencil_mask){
-v1.stencilMask(v77);
-v5.stencil_mask=v77;
-}
-v78=v34[0];
-v79=v34[1];
-v80=v34[2];
-if(v78!==v35[0]||v79!==v35[1]||v80!==v35[2]){
-v1.stencilFunc(v78,v79,v80);
-v35[0]=v78;
-v35[1]=v79;
-v35[2]=v80;
-}
-v81=v36[0];
-v82=v36[1];
-v83=v36[2];
-v84=v36[3];
-if(v81!==v37[0]||v82!==v37[1]||v83!==v37[2]||v84!==v37[3]){
-v1.stencilOpSeparate(v81,v82,v83,v84);
-v37[0]=v81;
-v37[1]=v82;
-v37[2]=v83;
-v37[3]=v84;
-}
-v85=v38[0];
-v86=v38[1];
-v87=v38[2];
-v88=v38[3];
-if(v85!==v39[0]||v86!==v39[1]||v87!==v39[2]||v88!==v39[3]){
-v1.stencilOpSeparate(v85,v86,v87,v88);
-v39[0]=v85;
-v39[1]=v86;
-v39[2]=v87;
-v39[3]=v88;
-}
-}
-v89=a0["viewport"];
-if(!(v89&&typeof v89==="object"))g18.commandRaise(g90,g19);
-v91=v89.x|0;
-v92=v89.y|0;
-v93="width" in v89?v89.width|0:(v2.framebufferWidth-v91);
-v94="height" in v89?v89.height|0:(v2.framebufferHeight-v92);
-if(!(v93>=0&&v94>=0))g18.commandRaise(g90,g19);
-v95=v2.viewportWidth;
-v2.viewportWidth=v93;
-v96=v2.viewportHeight;
-v2.viewportHeight=v94;
-v1.viewport(v91,v92,v93,v94);
-v43[0]=v91;
-v43[1]=v92;
-v43[2]=v93;
-v43[3]=v94;
-v1.blendColor(0,0,0,1);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=1;
-if(g97){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g97;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g98){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g98;
-v99=a0["viewport"];
-if(!(v99&&typeof v99==="object"))g18.commandRaise(g100,g19);
-v101=v99.x|0;
-v102=v99.y|0;
-v103="width" in v99?v99.width|0:(v2.framebufferWidth-v101);
-v104="height" in v99?v99.height|0:(v2.framebufferHeight-v102);
-if(!(v103>=0&&v104>=0))g18.commandRaise(g100,g19);
-v1.scissor(v101,v102,v103,v104);
-v41[0]=v101;
-v41[1]=v102;
-v41[2]=v103;
-v41[3]=v104;
-if(g105){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g105;
-if(g106){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g106;
-v107=v5.profile;
-if(v107){
-v108=performance.now();
-g52.count++;
-}
-v1.useProgram(g109.program);
-v110=v14.angle_instanced_arrays;
-v11.setVAO(null);
-v112=g111.call(this,v2,a0,0);
-if(!(v112&&(typeof v112==="object"||typeof v112==="function")&&(v16(v112)||v8.getBuffer(v112)||v8.getBuffer(v112.buffer)||v16(v112.buffer)||("constant" in v112&&(typeof v112.constant==="number"||v17(v112.constant))))))g18.commandRaise(g113,g19);
-v114=false;
-v115=1;
-v116=0;
-v117=0;
-v118=0;
-v119=0;
-v120=null;
-v121=0;
-v122=false;
-v123=5126;
-v124=0;
-v125=0;
-v126=0;
-if(v16(v112)){
-v114=true;
-v120=v8.createStream(34962,v112);
-v123=v120.dtype;
-}
-else{
-v120=v8.getBuffer(v112);
-if(v120){
-v123=v120.dtype;
-}
-else if("constant" in v112){
-v115=2;
-if(typeof v112.constant === "number"){
-v116=v112.constant;
-v117=v118=v119=0;
-}
-else{
-v116=v112.constant.length>0?v112.constant[0]:0;
-v117=v112.constant.length>1?v112.constant[1]:0;
-v118=v112.constant.length>2?v112.constant[2]:0;
-v119=v112.constant.length>3?v112.constant[3]:0;
-}
-}
-else{
-if(v16(v112.buffer)){
-v120=v8.createStream(34962,v112.buffer);
-}
-else{
-v120=v8.getBuffer(v112.buffer);
-}
-v123="type" in v112?v49[v112.type]:v120.dtype;
-v122=!!v112.normalized;
-v121=v112.size|0;
-v124=v112.offset|0;
-v125=v112.stride|0;
-v126=v112.divisor|0;
-}
-}
-v128=g127.location;
-v129=v10[v128];
-if(v115===1){
-if(!v129.buffer){
-v1.enableVertexAttribArray(v128);
-}
-v130=v121||4;
-if(v129.type!==v123||v129.size!==v130||v129.buffer!==v120||v129.normalized!==v122||v129.offset!==v124||v129.stride!==v125){
-v1.bindBuffer(34962,v120.buffer);
-v1.vertexAttribPointer(v128,v130,v123,v122,v125,v124);
-v129.type=v123;
-v129.size=v130;
-v129.buffer=v120;
-v129.normalized=v122;
-v129.offset=v124;
-v129.stride=v125;
-}
-if(v129.divisor!==v126){
-v110.vertexAttribDivisorANGLE(v128,v126);
-v129.divisor=v126;
-}
-}
-else{
-if(v129.buffer){
-v1.disableVertexAttribArray(v128);
-v129.buffer=null;
-}
-if(v129.x!==v116||v129.y!==v117||v129.z!==v118||v129.w!==v119){
-v1.vertexAttrib4f(v128,v116,v117,v118,v119);
-v129.x=v116;
-v129.y=v117;
-v129.z=v118;
-v129.w=v119;
-}
-}
-v132=g131.call(this,v2,a0,0);
-if(!(v132&&(typeof v132==="object"||typeof v132==="function")&&(v16(v132)||v8.getBuffer(v132)||v8.getBuffer(v132.buffer)||v16(v132.buffer)||("constant" in v132&&(typeof v132.constant==="number"||v17(v132.constant))))))g18.commandRaise(g133,g19);
-v134=false;
-v135=1;
-v136=0;
-v137=0;
-v138=0;
-v139=0;
-v140=null;
-v141=0;
-v142=false;
-v143=5126;
-v144=0;
-v145=0;
-v146=0;
-if(v16(v132)){
-v134=true;
-v140=v8.createStream(34962,v132);
-v143=v140.dtype;
-}
-else{
-v140=v8.getBuffer(v132);
-if(v140){
-v143=v140.dtype;
-}
-else if("constant" in v132){
-v135=2;
-if(typeof v132.constant === "number"){
-v136=v132.constant;
-v137=v138=v139=0;
-}
-else{
-v136=v132.constant.length>0?v132.constant[0]:0;
-v137=v132.constant.length>1?v132.constant[1]:0;
-v138=v132.constant.length>2?v132.constant[2]:0;
-v139=v132.constant.length>3?v132.constant[3]:0;
-}
-}
-else{
-if(v16(v132.buffer)){
-v140=v8.createStream(34962,v132.buffer);
-}
-else{
-v140=v8.getBuffer(v132.buffer);
-}
-v143="type" in v132?v49[v132.type]:v140.dtype;
-v142=!!v132.normalized;
-v141=v132.size|0;
-v144=v132.offset|0;
-v145=v132.stride|0;
-v146=v132.divisor|0;
-}
-}
-v148=g147.location;
-v149=v10[v148];
-if(v135===1){
-if(!v149.buffer){
-v1.enableVertexAttribArray(v148);
-}
-v150=v141||1;
-if(v149.type!==v143||v149.size!==v150||v149.buffer!==v140||v149.normalized!==v142||v149.offset!==v144||v149.stride!==v145){
-v1.bindBuffer(34962,v140.buffer);
-v1.vertexAttribPointer(v148,v150,v143,v142,v145,v144);
-v149.type=v143;
-v149.size=v150;
-v149.buffer=v140;
-v149.normalized=v142;
-v149.offset=v144;
-v149.stride=v145;
-}
-if(v149.divisor!==v146){
-v110.vertexAttribDivisorANGLE(v148,v146);
-v149.divisor=v146;
-}
-}
-else{
-if(v149.buffer){
-v1.disableVertexAttribArray(v148);
-v149.buffer=null;
-}
-if(v149.x!==v136||v149.y!==v137||v149.z!==v138||v149.w!==v139){
-v1.vertexAttrib4f(v148,v136,v137,v138,v139);
-v149.x=v136;
-v149.y=v137;
-v149.z=v138;
-v149.w=v139;
-}
-}
-v152=g151.call(this,v2,a0,0);
-if(!(v152&&(typeof v152==="object"||typeof v152==="function")&&(v16(v152)||v8.getBuffer(v152)||v8.getBuffer(v152.buffer)||v16(v152.buffer)||("constant" in v152&&(typeof v152.constant==="number"||v17(v152.constant))))))g18.commandRaise(g153,g19);
-v154=false;
-v155=1;
-v156=0;
-v157=0;
-v158=0;
-v159=0;
-v160=null;
-v161=0;
-v162=false;
-v163=5126;
-v164=0;
-v165=0;
-v166=0;
-if(v16(v152)){
-v154=true;
-v160=v8.createStream(34962,v152);
-v163=v160.dtype;
-}
-else{
-v160=v8.getBuffer(v152);
-if(v160){
-v163=v160.dtype;
-}
-else if("constant" in v152){
-v155=2;
-if(typeof v152.constant === "number"){
-v156=v152.constant;
-v157=v158=v159=0;
-}
-else{
-v156=v152.constant.length>0?v152.constant[0]:0;
-v157=v152.constant.length>1?v152.constant[1]:0;
-v158=v152.constant.length>2?v152.constant[2]:0;
-v159=v152.constant.length>3?v152.constant[3]:0;
-}
-}
-else{
-if(v16(v152.buffer)){
-v160=v8.createStream(34962,v152.buffer);
-}
-else{
-v160=v8.getBuffer(v152.buffer);
-}
-v163="type" in v152?v49[v152.type]:v160.dtype;
-v162=!!v152.normalized;
-v161=v152.size|0;
-v164=v152.offset|0;
-v165=v152.stride|0;
-v166=v152.divisor|0;
-}
-}
-v168=g167.location;
-v169=v10[v168];
-if(v155===1){
-if(!v169.buffer){
-v1.enableVertexAttribArray(v168);
-}
-v170=v161||4;
-if(v169.type!==v163||v169.size!==v170||v169.buffer!==v160||v169.normalized!==v162||v169.offset!==v164||v169.stride!==v165){
-v1.bindBuffer(34962,v160.buffer);
-v1.vertexAttribPointer(v168,v170,v163,v162,v165,v164);
-v169.type=v163;
-v169.size=v170;
-v169.buffer=v160;
-v169.normalized=v162;
-v169.offset=v164;
-v169.stride=v165;
-}
-if(v169.divisor!==v166){
-v110.vertexAttribDivisorANGLE(v168,v166);
-v169.divisor=v166;
-}
-}
-else{
-if(v169.buffer){
-v1.disableVertexAttribArray(v168);
-v169.buffer=null;
-}
-if(v169.x!==v156||v169.y!==v157||v169.z!==v158||v169.w!==v159){
-v1.vertexAttrib4f(v168,v156,v157,v158,v159);
-v169.x=v156;
-v169.y=v157;
-v169.z=v158;
-v169.w=v159;
-}
-}
-v172=g171.call(this,v2,a0,0);
-if(!(v172&&(typeof v172==="object"||typeof v172==="function")&&(v16(v172)||v8.getBuffer(v172)||v8.getBuffer(v172.buffer)||v16(v172.buffer)||("constant" in v172&&(typeof v172.constant==="number"||v17(v172.constant))))))g18.commandRaise(g173,g19);
-v174=false;
-v175=1;
-v176=0;
-v177=0;
-v178=0;
-v179=0;
-v180=null;
-v181=0;
-v182=false;
-v183=5126;
-v184=0;
-v185=0;
-v186=0;
-if(v16(v172)){
-v174=true;
-v180=v8.createStream(34962,v172);
-v183=v180.dtype;
-}
-else{
-v180=v8.getBuffer(v172);
-if(v180){
-v183=v180.dtype;
-}
-else if("constant" in v172){
-v175=2;
-if(typeof v172.constant === "number"){
-v176=v172.constant;
-v177=v178=v179=0;
-}
-else{
-v176=v172.constant.length>0?v172.constant[0]:0;
-v177=v172.constant.length>1?v172.constant[1]:0;
-v178=v172.constant.length>2?v172.constant[2]:0;
-v179=v172.constant.length>3?v172.constant[3]:0;
-}
-}
-else{
-if(v16(v172.buffer)){
-v180=v8.createStream(34962,v172.buffer);
-}
-else{
-v180=v8.getBuffer(v172.buffer);
-}
-v183="type" in v172?v49[v172.type]:v180.dtype;
-v182=!!v172.normalized;
-v181=v172.size|0;
-v184=v172.offset|0;
-v185=v172.stride|0;
-v186=v172.divisor|0;
-}
-}
-v188=g187.location;
-v189=v10[v188];
-if(v175===1){
-if(!v189.buffer){
-v1.enableVertexAttribArray(v188);
-}
-v190=v181||1;
-if(v189.type!==v183||v189.size!==v190||v189.buffer!==v180||v189.normalized!==v182||v189.offset!==v184||v189.stride!==v185){
-v1.bindBuffer(34962,v180.buffer);
-v1.vertexAttribPointer(v188,v190,v183,v182,v185,v184);
-v189.type=v183;
-v189.size=v190;
-v189.buffer=v180;
-v189.normalized=v182;
-v189.offset=v184;
-v189.stride=v185;
-}
-if(v189.divisor!==v186){
-v110.vertexAttribDivisorANGLE(v188,v186);
-v189.divisor=v186;
-}
-}
-else{
-if(v189.buffer){
-v1.disableVertexAttribArray(v188);
-v189.buffer=null;
-}
-if(v189.x!==v176||v189.y!==v177||v189.z!==v178||v189.w!==v179){
-v1.vertexAttrib4f(v188,v176,v177,v178,v179);
-v189.x=v176;
-v189.y=v177;
-v189.z=v178;
-v189.w=v179;
-}
-}
-v192=g191.call(this,v2,a0,0);
-if(!(v192&&(typeof v192==="object"||typeof v192==="function")&&(v16(v192)||v8.getBuffer(v192)||v8.getBuffer(v192.buffer)||v16(v192.buffer)||("constant" in v192&&(typeof v192.constant==="number"||v17(v192.constant))))))g18.commandRaise(g193,g19);
-v194=false;
-v195=1;
-v196=0;
-v197=0;
-v198=0;
-v199=0;
-v200=null;
-v201=0;
-v202=false;
-v203=5126;
-v204=0;
-v205=0;
-v206=0;
-if(v16(v192)){
-v194=true;
-v200=v8.createStream(34962,v192);
-v203=v200.dtype;
-}
-else{
-v200=v8.getBuffer(v192);
-if(v200){
-v203=v200.dtype;
-}
-else if("constant" in v192){
-v195=2;
-if(typeof v192.constant === "number"){
-v196=v192.constant;
-v197=v198=v199=0;
-}
-else{
-v196=v192.constant.length>0?v192.constant[0]:0;
-v197=v192.constant.length>1?v192.constant[1]:0;
-v198=v192.constant.length>2?v192.constant[2]:0;
-v199=v192.constant.length>3?v192.constant[3]:0;
-}
-}
-else{
-if(v16(v192.buffer)){
-v200=v8.createStream(34962,v192.buffer);
-}
-else{
-v200=v8.getBuffer(v192.buffer);
-}
-v203="type" in v192?v49[v192.type]:v200.dtype;
-v202=!!v192.normalized;
-v201=v192.size|0;
-v204=v192.offset|0;
-v205=v192.stride|0;
-v206=v192.divisor|0;
-}
-}
-v208=g207.location;
-v209=v10[v208];
-if(v195===1){
-if(!v209.buffer){
-v1.enableVertexAttribArray(v208);
-}
-v210=v201||1;
-if(v209.type!==v203||v209.size!==v210||v209.buffer!==v200||v209.normalized!==v202||v209.offset!==v204||v209.stride!==v205){
-v1.bindBuffer(34962,v200.buffer);
-v1.vertexAttribPointer(v208,v210,v203,v202,v205,v204);
-v209.type=v203;
-v209.size=v210;
-v209.buffer=v200;
-v209.normalized=v202;
-v209.offset=v204;
-v209.stride=v205;
-}
-if(v209.divisor!==v206){
-v110.vertexAttribDivisorANGLE(v208,v206);
-v209.divisor=v206;
-}
-}
-else{
-if(v209.buffer){
-v1.disableVertexAttribArray(v208);
-v209.buffer=null;
-}
-if(v209.x!==v196||v209.y!==v197||v209.z!==v198||v209.w!==v199){
-v1.vertexAttrib4f(v208,v196,v197,v198,v199);
-v209.x=v196;
-v209.y=v197;
-v209.z=v198;
-v209.w=v199;
-}
-}
-v212=g211.call(this,v2,a0,0);
-if(!(v212&&(typeof v212==="object"||typeof v212==="function")&&(v16(v212)||v8.getBuffer(v212)||v8.getBuffer(v212.buffer)||v16(v212.buffer)||("constant" in v212&&(typeof v212.constant==="number"||v17(v212.constant))))))g18.commandRaise(g213,g19);
-v214=false;
-v215=1;
-v216=0;
-v217=0;
-v218=0;
-v219=0;
-v220=null;
-v221=0;
-v222=false;
-v223=5126;
-v224=0;
-v225=0;
-v226=0;
-if(v16(v212)){
-v214=true;
-v220=v8.createStream(34962,v212);
-v223=v220.dtype;
-}
-else{
-v220=v8.getBuffer(v212);
-if(v220){
-v223=v220.dtype;
-}
-else if("constant" in v212){
-v215=2;
-if(typeof v212.constant === "number"){
-v216=v212.constant;
-v217=v218=v219=0;
-}
-else{
-v216=v212.constant.length>0?v212.constant[0]:0;
-v217=v212.constant.length>1?v212.constant[1]:0;
-v218=v212.constant.length>2?v212.constant[2]:0;
-v219=v212.constant.length>3?v212.constant[3]:0;
-}
-}
-else{
-if(v16(v212.buffer)){
-v220=v8.createStream(34962,v212.buffer);
-}
-else{
-v220=v8.getBuffer(v212.buffer);
-}
-v223="type" in v212?v49[v212.type]:v220.dtype;
-v222=!!v212.normalized;
-v221=v212.size|0;
-v224=v212.offset|0;
-v225=v212.stride|0;
-v226=v212.divisor|0;
-}
-}
-v228=g227.location;
-v229=v10[v228];
-if(v215===1){
-if(!v229.buffer){
-v1.enableVertexAttribArray(v228);
-}
-v230=v221||1;
-if(v229.type!==v223||v229.size!==v230||v229.buffer!==v220||v229.normalized!==v222||v229.offset!==v224||v229.stride!==v225){
-v1.bindBuffer(34962,v220.buffer);
-v1.vertexAttribPointer(v228,v230,v223,v222,v225,v224);
-v229.type=v223;
-v229.size=v230;
-v229.buffer=v220;
-v229.normalized=v222;
-v229.offset=v224;
-v229.stride=v225;
-}
-if(v229.divisor!==v226){
-v110.vertexAttribDivisorANGLE(v228,v226);
-v229.divisor=v226;
-}
-}
-else{
-if(v229.buffer){
-v1.disableVertexAttribArray(v228);
-v229.buffer=null;
-}
-if(v229.x!==v216||v229.y!==v217||v229.z!==v218||v229.w!==v219){
-v1.vertexAttrib4f(v228,v216,v217,v218,v219);
-v229.x=v216;
-v229.y=v217;
-v229.z=v218;
-v229.w=v219;
-}
-}
-v232=g231.call(this,v2,a0,0);
-if(!(v232&&(typeof v232==="object"||typeof v232==="function")&&(v16(v232)||v8.getBuffer(v232)||v8.getBuffer(v232.buffer)||v16(v232.buffer)||("constant" in v232&&(typeof v232.constant==="number"||v17(v232.constant))))))g18.commandRaise(g233,g19);
-v234=false;
-v235=1;
-v236=0;
-v237=0;
-v238=0;
-v239=0;
-v240=null;
-v241=0;
-v242=false;
-v243=5126;
-v244=0;
-v245=0;
-v246=0;
-if(v16(v232)){
-v234=true;
-v240=v8.createStream(34962,v232);
-v243=v240.dtype;
-}
-else{
-v240=v8.getBuffer(v232);
-if(v240){
-v243=v240.dtype;
-}
-else if("constant" in v232){
-v235=2;
-if(typeof v232.constant === "number"){
-v236=v232.constant;
-v237=v238=v239=0;
-}
-else{
-v236=v232.constant.length>0?v232.constant[0]:0;
-v237=v232.constant.length>1?v232.constant[1]:0;
-v238=v232.constant.length>2?v232.constant[2]:0;
-v239=v232.constant.length>3?v232.constant[3]:0;
-}
-}
-else{
-if(v16(v232.buffer)){
-v240=v8.createStream(34962,v232.buffer);
-}
-else{
-v240=v8.getBuffer(v232.buffer);
-}
-v243="type" in v232?v49[v232.type]:v240.dtype;
-v242=!!v232.normalized;
-v241=v232.size|0;
-v244=v232.offset|0;
-v245=v232.stride|0;
-v246=v232.divisor|0;
-}
-}
-v248=g247.location;
-v249=v10[v248];
-if(v235===1){
-if(!v249.buffer){
-v1.enableVertexAttribArray(v248);
-}
-v250=v241||1;
-if(v249.type!==v243||v249.size!==v250||v249.buffer!==v240||v249.normalized!==v242||v249.offset!==v244||v249.stride!==v245){
-v1.bindBuffer(34962,v240.buffer);
-v1.vertexAttribPointer(v248,v250,v243,v242,v245,v244);
-v249.type=v243;
-v249.size=v250;
-v249.buffer=v240;
-v249.normalized=v242;
-v249.offset=v244;
-v249.stride=v245;
-}
-if(v249.divisor!==v246){
-v110.vertexAttribDivisorANGLE(v248,v246);
-v249.divisor=v246;
-}
-}
-else{
-if(v249.buffer){
-v1.disableVertexAttribArray(v248);
-v249.buffer=null;
-}
-if(v249.x!==v236||v249.y!==v237||v249.z!==v238||v249.w!==v239){
-v1.vertexAttrib4f(v248,v236,v237,v238,v239);
-v249.x=v236;
-v249.y=v237;
-v249.z=v238;
-v249.w=v239;
-}
-}
-v252=g251.call(this,v2,a0,0);
-if(!(v252&&(typeof v252==="object"||typeof v252==="function")&&(v16(v252)||v8.getBuffer(v252)||v8.getBuffer(v252.buffer)||v16(v252.buffer)||("constant" in v252&&(typeof v252.constant==="number"||v17(v252.constant))))))g18.commandRaise(g253,g19);
-v254=false;
-v255=1;
-v256=0;
-v257=0;
-v258=0;
-v259=0;
-v260=null;
-v261=0;
-v262=false;
-v263=5126;
-v264=0;
-v265=0;
-v266=0;
-if(v16(v252)){
-v254=true;
-v260=v8.createStream(34962,v252);
-v263=v260.dtype;
-}
-else{
-v260=v8.getBuffer(v252);
-if(v260){
-v263=v260.dtype;
-}
-else if("constant" in v252){
-v255=2;
-if(typeof v252.constant === "number"){
-v256=v252.constant;
-v257=v258=v259=0;
-}
-else{
-v256=v252.constant.length>0?v252.constant[0]:0;
-v257=v252.constant.length>1?v252.constant[1]:0;
-v258=v252.constant.length>2?v252.constant[2]:0;
-v259=v252.constant.length>3?v252.constant[3]:0;
-}
-}
-else{
-if(v16(v252.buffer)){
-v260=v8.createStream(34962,v252.buffer);
-}
-else{
-v260=v8.getBuffer(v252.buffer);
-}
-v263="type" in v252?v49[v252.type]:v260.dtype;
-v262=!!v252.normalized;
-v261=v252.size|0;
-v264=v252.offset|0;
-v265=v252.stride|0;
-v266=v252.divisor|0;
-}
-}
-v268=g267.location;
-v269=v10[v268];
-if(v255===1){
-if(!v269.buffer){
-v1.enableVertexAttribArray(v268);
-}
-v270=v261||1;
-if(v269.type!==v263||v269.size!==v270||v269.buffer!==v260||v269.normalized!==v262||v269.offset!==v264||v269.stride!==v265){
-v1.bindBuffer(34962,v260.buffer);
-v1.vertexAttribPointer(v268,v270,v263,v262,v265,v264);
-v269.type=v263;
-v269.size=v270;
-v269.buffer=v260;
-v269.normalized=v262;
-v269.offset=v264;
-v269.stride=v265;
-}
-if(v269.divisor!==v266){
-v110.vertexAttribDivisorANGLE(v268,v266);
-v269.divisor=v266;
-}
-}
-else{
-if(v269.buffer){
-v1.disableVertexAttribArray(v268);
-v269.buffer=null;
-}
-if(v269.x!==v256||v269.y!==v257||v269.z!==v258||v269.w!==v259){
-v1.vertexAttrib4f(v268,v256,v257,v258,v259);
-v269.x=v256;
-v269.y=v257;
-v269.z=v258;
-v269.w=v259;
-}
-}
-v272=g271.call(this,v2,a0,0);
-if(!(v272&&(typeof v272==="object"||typeof v272==="function")&&(v16(v272)||v8.getBuffer(v272)||v8.getBuffer(v272.buffer)||v16(v272.buffer)||("constant" in v272&&(typeof v272.constant==="number"||v17(v272.constant))))))g18.commandRaise(g273,g19);
-v274=false;
-v275=1;
-v276=0;
-v277=0;
-v278=0;
-v279=0;
-v280=null;
-v281=0;
-v282=false;
-v283=5126;
-v284=0;
-v285=0;
-v286=0;
-if(v16(v272)){
-v274=true;
-v280=v8.createStream(34962,v272);
-v283=v280.dtype;
-}
-else{
-v280=v8.getBuffer(v272);
-if(v280){
-v283=v280.dtype;
-}
-else if("constant" in v272){
-v275=2;
-if(typeof v272.constant === "number"){
-v276=v272.constant;
-v277=v278=v279=0;
-}
-else{
-v276=v272.constant.length>0?v272.constant[0]:0;
-v277=v272.constant.length>1?v272.constant[1]:0;
-v278=v272.constant.length>2?v272.constant[2]:0;
-v279=v272.constant.length>3?v272.constant[3]:0;
-}
-}
-else{
-if(v16(v272.buffer)){
-v280=v8.createStream(34962,v272.buffer);
-}
-else{
-v280=v8.getBuffer(v272.buffer);
-}
-v283="type" in v272?v49[v272.type]:v280.dtype;
-v282=!!v272.normalized;
-v281=v272.size|0;
-v284=v272.offset|0;
-v285=v272.stride|0;
-v286=v272.divisor|0;
-}
-}
-v288=g287.location;
-v289=v10[v288];
-if(v275===1){
-if(!v289.buffer){
-v1.enableVertexAttribArray(v288);
-}
-v290=v281||1;
-if(v289.type!==v283||v289.size!==v290||v289.buffer!==v280||v289.normalized!==v282||v289.offset!==v284||v289.stride!==v285){
-v1.bindBuffer(34962,v280.buffer);
-v1.vertexAttribPointer(v288,v290,v283,v282,v285,v284);
-v289.type=v283;
-v289.size=v290;
-v289.buffer=v280;
-v289.normalized=v282;
-v289.offset=v284;
-v289.stride=v285;
-}
-if(v289.divisor!==v286){
-v110.vertexAttribDivisorANGLE(v288,v286);
-v289.divisor=v286;
-}
-}
-else{
-if(v289.buffer){
-v1.disableVertexAttribArray(v288);
-v289.buffer=null;
-}
-if(v289.x!==v276||v289.y!==v277||v289.z!==v278||v289.w!==v279){
-v1.vertexAttrib4f(v288,v276,v277,v278,v279);
-v289.x=v276;
-v289.y=v277;
-v289.z=v278;
-v289.w=v279;
-}
-}
-v1.uniform1i(g291.location,false);
-v293=a0["opacity"];
-if(!(typeof v293==="number"))g18.commandRaise(g294,g19);
-v1.uniform1f(g292.location,v293);
-v297=g296.call(this,v2,a0,0);
-if(!(v17(v297)&&v297.length===2))g18.commandRaise(g298,g19);
-v299=v297[0];
-v300=v297[1];
-v1.uniform2f(g295.location,v299,v300);
-v1.uniform1i(g301.location,g302.bind());
-v304=v2["pixelRatio"];
-if(!(typeof v304==="number"))g18.commandRaise(g305,g19);
-v1.uniform1f(g303.location,v304);
-v307=a0["scale"];
-if(!(v17(v307)&&v307.length===2))g18.commandRaise(g308,g19);
-v309=v307[0];
-v310=v307[1];
-v1.uniform2f(g306.location,v309,v310);
-v312=a0["scaleFract"];
-if(!(v17(v312)&&v312.length===2))g18.commandRaise(g313,g19);
-v314=v312[0];
-v315=v312[1];
-v1.uniform2f(g311.location,v314,v315);
-v317=a0["translate"];
-if(!(v17(v317)&&v317.length===2))g18.commandRaise(g318,g19);
-v319=v317[0];
-v320=v317[1];
-v1.uniform2f(g316.location,v319,v320);
-v322=a0["translateFract"];
-if(!(v17(v322)&&v322.length===2))g18.commandRaise(g323,g19);
-v324=v322[0];
-v325=v322[1];
-v1.uniform2f(g321.location,v324,v325);
-v326=a0["elements"];
-v327=null;
-v328=v16(v326);
-if(v328){
-v327=v7.createStream(v326);
-}
-else{
-v327=v7.getElements(v326);
-if(!(!v326||v327))g18.commandRaise(g329,g19);
-}
-if(v327)v1.bindBuffer(34963,v327.buffer.buffer);
-v330=a0["offset"];
-if(!(v330>=0))g18.commandRaise(g331,g19);
-v332=a0["count"];
-if(!(typeof v332==="number"&&v332>=0&&v332===(v332|0)))g18.commandRaise(g333,g19);
-if(v332){
-v334=v6.instances;
-if(v334>0){
-if(v327){
-v110.drawElementsInstancedANGLE(0,v332,v327.type,v330<<((v327.type-5121)>>1),v334);
-}
-else{
-v110.drawArraysInstancedANGLE(0,v330,v332,v334);
-}
-}
-else if(v334<0){
-if(v327){
-v1.drawElements(0,v332,v327.type,v330<<((v327.type-5121)>>1));
-}
-else{
-v1.drawArrays(0,v330,v332);
-}
-}
-v5.dirty=true;
-v11.setVAO(null);
-v2.viewportWidth=v95;
-v2.viewportHeight=v96;
-if(v107){
-g52.cpuTime+=performance.now()-v108;
-}
-if(v114){
-v8.destroyStream(v120);
-}
-if(v134){
-v8.destroyStream(v140);
-}
-if(v154){
-v8.destroyStream(v160);
-}
-if(v174){
-v8.destroyStream(v180);
-}
-if(v194){
-v8.destroyStream(v200);
-}
-if(v214){
-v8.destroyStream(v220);
-}
-if(v234){
-v8.destroyStream(v240);
-}
-if(v254){
-v8.destroyStream(v260);
-}
-if(v274){
-v8.destroyStream(v280);
-}
-g302.unbind();
-if(v328){
-v7.destroyStream(v327);
-}
-}
-}
-,"scope":function(a0,a1,a2){
-var v335,v336,v337,v338,v339,v340,v341,v342,v343,v344,v345,v347,v349,v351,v353,v355,v357,v359,v361,v363,v365,v366,v367,v368,v369,v370,v371,v372,v373,v374,v376,v378,v379,v380,v381,v382,v383,v384,v385,v386,v387,v388,v390,v392,v395,v396,v398,v399,v401,v402,v404,v405,v407,v408,v410,v411,v413,v414,v416,v417,v419,v420,v421,v422,v423,v424,v425,v426,v427,v428,v429,v430,v431,v432,v433,v435,v436,v437,v438,v439,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v452,v453,v454,v455,v456,v457,v458,v459,v460,v462,v463,v464,v465,v466,v467,v468,v469,v470,v471,v472,v473,v474,v475,v476,v477,v478,v479,v480,v481,v482,v483,v484,v485,v486,v487,v489,v490,v491,v492,v493,v494,v495,v496,v497,v498,v499,v500,v501,v502,v503,v504,v505,v506,v507,v508,v509,v510,v511,v512,v513,v514,v516,v517,v518,v519,v520,v521,v522,v523,v524,v525,v526,v527,v528,v529,v530,v531,v532,v533,v534,v535,v536,v537,v538,v539,v540,v541,v543,v544,v545,v546,v547,v548,v549,v550,v551,v552,v553,v554,v555,v556,v557,v558,v559,v560,v561,v562,v563,v564,v565,v566,v567,v568,v570,v571,v572,v573,v574,v575,v576,v577,v578,v579,v580,v581,v582,v583,v584,v585,v586,v587,v588,v589,v590,v591,v592,v593,v594,v595,v597,v598,v599,v600,v601,v602,v603,v604,v605,v606,v607,v608,v609,v610,v611,v612,v613,v614,v615,v616,v617,v618,v619,v620,v621,v622,v624,v625,v626,v627,v628,v629,v630,v631,v632,v633,v634,v635,v636,v637,v638,v639,v640,v641,v642,v643,v644,v645,v646,v647,v648,v649,v651,v652,v653,v654,v655,v656,v657,v658,v659,v660,v661,v662,v664,v666;
-v335=a0["viewport"];
-if(!(v335&&typeof v335==="object"))g18.commandRaise(g90,g19);
-v336=v335.x|0;
-v337=v335.y|0;
-v338="width" in v335?v335.width|0:(v2.framebufferWidth-v336);
-v339="height" in v335?v335.height|0:(v2.framebufferHeight-v337);
-if(!(v338>=0&&v339>=0))g18.commandRaise(g90,g19);
-v340=v2.viewportWidth;
-v2.viewportWidth=v338;
-v341=v2.viewportHeight;
-v2.viewportHeight=v339;
-v342=v42[0];
-v42[0]=v336;
-v343=v42[1];
-v42[1]=v337;
-v344=v42[2];
-v42[2]=v338;
-v345=v42[3];
-v42[3]=v339;
-v347=v20[0];
-v20[0]=g346;
-v349=v20[1];
-v20[1]=g348;
-v351=v20[2];
-v20[2]=g350;
-v353=v20[3];
-v20[3]=g352;
-v355=v4.blend_enable;
-v4.blend_enable=g354;
-v357=v24[0];
-v24[0]=g356;
-v359=v24[1];
-v24[1]=g358;
-v361=v24[2];
-v24[2]=g360;
-v363=v24[3];
-v24[3]=g362;
-v365=v4.depth_enable;
-v4.depth_enable=g364;
-v366=a0["viewport"];
-if(!(v366&&typeof v366==="object"))g18.commandRaise(g100,g19);
-v367=v366.x|0;
-v368=v366.y|0;
-v369="width" in v366?v366.width|0:(v2.framebufferWidth-v367);
-v370="height" in v366?v366.height|0:(v2.framebufferHeight-v368);
-if(!(v369>=0&&v370>=0))g18.commandRaise(g100,g19);
-v371=v40[0];
-v40[0]=v367;
-v372=v40[1];
-v40[1]=v368;
-v373=v40[2];
-v40[2]=v369;
-v374=v40[3];
-v40[3]=v370;
-v376=v4.scissor_enable;
-v4.scissor_enable=g375;
-v378=v4.stencil_enable;
-v4.stencil_enable=g377;
-v379=v5.profile;
-if(v379){
-v380=performance.now();
-g52.count++;
-}
-v381=a0["elements"];
-v382=null;
-v383=v16(v381);
-if(v383){
-v382=v7.createStream(v381);
-}
-else{
-v382=v7.getElements(v381);
-if(!(!v381||v382))g18.commandRaise(g329,g19);
-}
-v384=v6.elements;
-v6.elements=v382;
-v385=a0["offset"];
-if(!(v385>=0))g18.commandRaise(g331,g19);
-v386=v6.offset;
-v6.offset=v385;
-v387=a0["count"];
-if(!(typeof v387==="number"&&v387>=0&&v387===(v387|0)))g18.commandRaise(g333,g19);
-v388=v6.count;
-v6.count=v387;
-v390=v6.primitive;
-v6.primitive=g389;
-v392=v12[g391];
-v12[g391]=false;
-v395=v12[g394];
-v12[g394]=g393;
-v396=a0["opacity"];
-v398=v12[g397];
-v12[g397]=v396;
-v399=g296.call(this,v2,a0,a2);
-v401=v12[g400];
-v12[g400]=v399;
-v402=v2["pixelRatio"];
-v404=v12[g403];
-v12[g403]=v402;
-v405=a0["scale"];
-v407=v12[g406];
-v12[g406]=v405;
-v408=a0["scaleFract"];
-v410=v12[g409];
-v12[g409]=v408;
-v411=a0["translate"];
-v413=v12[g412];
-v12[g412]=v411;
-v414=a0["translateFract"];
-v416=v12[g415];
-v12[g415]=v414;
-v417=a0["markerTexture"];
-v419=v12[g418];
-v12[g418]=v417;
-v420=g211.call(this,v2,a0,a2);
-if(!(v420&&(typeof v420==="object"||typeof v420==="function")&&(v16(v420)||v8.getBuffer(v420)||v8.getBuffer(v420.buffer)||v16(v420.buffer)||("constant" in v420&&(typeof v420.constant==="number"||v17(v420.constant))))))g18.commandRaise(g213,g19);
-v421=false;
-v422=1;
-v423=0;
-v424=0;
-v425=0;
-v426=0;
-v427=null;
-v428=0;
-v429=false;
-v430=5126;
-v431=0;
-v432=0;
-v433=0;
-if(v16(v420)){
-v421=true;
-v427=v8.createStream(34962,v420);
-v430=v427.dtype;
-}
-else{
-v427=v8.getBuffer(v420);
-if(v427){
-v430=v427.dtype;
-}
-else if("constant" in v420){
-v422=2;
-if(typeof v420.constant === "number"){
-v423=v420.constant;
-v424=v425=v426=0;
-}
-else{
-v423=v420.constant.length>0?v420.constant[0]:0;
-v424=v420.constant.length>1?v420.constant[1]:0;
-v425=v420.constant.length>2?v420.constant[2]:0;
-v426=v420.constant.length>3?v420.constant[3]:0;
-}
-}
-else{
-if(v16(v420.buffer)){
-v427=v8.createStream(34962,v420.buffer);
-}
-else{
-v427=v8.getBuffer(v420.buffer);
-}
-v430="type" in v420?v49[v420.type]:v427.dtype;
-v429=!!v420.normalized;
-v428=v420.size|0;
-v431=v420.offset|0;
-v432=v420.stride|0;
-v433=v420.divisor|0;
-}
-}
-v435=g434.state;
-g434.state=v422;
-v436=g434.x;
-g434.x=v423;
-v437=g434.y;
-g434.y=v424;
-v438=g434.z;
-g434.z=v425;
-v439=g434.w;
-g434.w=v426;
-v440=g434.buffer;
-g434.buffer=v427;
-v441=g434.size;
-g434.size=v428;
-v442=g434.normalized;
-g434.normalized=v429;
-v443=g434.type;
-g434.type=v430;
-v444=g434.offset;
-g434.offset=v431;
-v445=g434.stride;
-g434.stride=v432;
-v446=g434.divisor;
-g434.divisor=v433;
-v447=g251.call(this,v2,a0,a2);
-if(!(v447&&(typeof v447==="object"||typeof v447==="function")&&(v16(v447)||v8.getBuffer(v447)||v8.getBuffer(v447.buffer)||v16(v447.buffer)||("constant" in v447&&(typeof v447.constant==="number"||v17(v447.constant))))))g18.commandRaise(g253,g19);
-v448=false;
-v449=1;
-v450=0;
-v451=0;
-v452=0;
-v453=0;
-v454=null;
-v455=0;
-v456=false;
-v457=5126;
-v458=0;
-v459=0;
-v460=0;
-if(v16(v447)){
-v448=true;
-v454=v8.createStream(34962,v447);
-v457=v454.dtype;
-}
-else{
-v454=v8.getBuffer(v447);
-if(v454){
-v457=v454.dtype;
-}
-else if("constant" in v447){
-v449=2;
-if(typeof v447.constant === "number"){
-v450=v447.constant;
-v451=v452=v453=0;
-}
-else{
-v450=v447.constant.length>0?v447.constant[0]:0;
-v451=v447.constant.length>1?v447.constant[1]:0;
-v452=v447.constant.length>2?v447.constant[2]:0;
-v453=v447.constant.length>3?v447.constant[3]:0;
-}
-}
-else{
-if(v16(v447.buffer)){
-v454=v8.createStream(34962,v447.buffer);
-}
-else{
-v454=v8.getBuffer(v447.buffer);
-}
-v457="type" in v447?v49[v447.type]:v454.dtype;
-v456=!!v447.normalized;
-v455=v447.size|0;
-v458=v447.offset|0;
-v459=v447.stride|0;
-v460=v447.divisor|0;
-}
-}
-v462=g461.state;
-g461.state=v449;
-v463=g461.x;
-g461.x=v450;
-v464=g461.y;
-g461.y=v451;
-v465=g461.z;
-g461.z=v452;
-v466=g461.w;
-g461.w=v453;
-v467=g461.buffer;
-g461.buffer=v454;
-v468=g461.size;
-g461.size=v455;
-v469=g461.normalized;
-g461.normalized=v456;
-v470=g461.type;
-g461.type=v457;
-v471=g461.offset;
-g461.offset=v458;
-v472=g461.stride;
-g461.stride=v459;
-v473=g461.divisor;
-g461.divisor=v460;
-v474=g231.call(this,v2,a0,a2);
-if(!(v474&&(typeof v474==="object"||typeof v474==="function")&&(v16(v474)||v8.getBuffer(v474)||v8.getBuffer(v474.buffer)||v16(v474.buffer)||("constant" in v474&&(typeof v474.constant==="number"||v17(v474.constant))))))g18.commandRaise(g233,g19);
-v475=false;
-v476=1;
-v477=0;
-v478=0;
-v479=0;
-v480=0;
-v481=null;
-v482=0;
-v483=false;
-v484=5126;
-v485=0;
-v486=0;
-v487=0;
-if(v16(v474)){
-v475=true;
-v481=v8.createStream(34962,v474);
-v484=v481.dtype;
-}
-else{
-v481=v8.getBuffer(v474);
-if(v481){
-v484=v481.dtype;
-}
-else if("constant" in v474){
-v476=2;
-if(typeof v474.constant === "number"){
-v477=v474.constant;
-v478=v479=v480=0;
-}
-else{
-v477=v474.constant.length>0?v474.constant[0]:0;
-v478=v474.constant.length>1?v474.constant[1]:0;
-v479=v474.constant.length>2?v474.constant[2]:0;
-v480=v474.constant.length>3?v474.constant[3]:0;
-}
-}
-else{
-if(v16(v474.buffer)){
-v481=v8.createStream(34962,v474.buffer);
-}
-else{
-v481=v8.getBuffer(v474.buffer);
-}
-v484="type" in v474?v49[v474.type]:v481.dtype;
-v483=!!v474.normalized;
-v482=v474.size|0;
-v485=v474.offset|0;
-v486=v474.stride|0;
-v487=v474.divisor|0;
-}
-}
-v489=g488.state;
-g488.state=v476;
-v490=g488.x;
-g488.x=v477;
-v491=g488.y;
-g488.y=v478;
-v492=g488.z;
-g488.z=v479;
-v493=g488.w;
-g488.w=v480;
-v494=g488.buffer;
-g488.buffer=v481;
-v495=g488.size;
-g488.size=v482;
-v496=g488.normalized;
-g488.normalized=v483;
-v497=g488.type;
-g488.type=v484;
-v498=g488.offset;
-g488.offset=v485;
-v499=g488.stride;
-g488.stride=v486;
-v500=g488.divisor;
-g488.divisor=v487;
-v501=g271.call(this,v2,a0,a2);
-if(!(v501&&(typeof v501==="object"||typeof v501==="function")&&(v16(v501)||v8.getBuffer(v501)||v8.getBuffer(v501.buffer)||v16(v501.buffer)||("constant" in v501&&(typeof v501.constant==="number"||v17(v501.constant))))))g18.commandRaise(g273,g19);
-v502=false;
-v503=1;
-v504=0;
-v505=0;
-v506=0;
-v507=0;
-v508=null;
-v509=0;
-v510=false;
-v511=5126;
-v512=0;
-v513=0;
-v514=0;
-if(v16(v501)){
-v502=true;
-v508=v8.createStream(34962,v501);
-v511=v508.dtype;
-}
-else{
-v508=v8.getBuffer(v501);
-if(v508){
-v511=v508.dtype;
-}
-else if("constant" in v501){
-v503=2;
-if(typeof v501.constant === "number"){
-v504=v501.constant;
-v505=v506=v507=0;
-}
-else{
-v504=v501.constant.length>0?v501.constant[0]:0;
-v505=v501.constant.length>1?v501.constant[1]:0;
-v506=v501.constant.length>2?v501.constant[2]:0;
-v507=v501.constant.length>3?v501.constant[3]:0;
-}
-}
-else{
-if(v16(v501.buffer)){
-v508=v8.createStream(34962,v501.buffer);
-}
-else{
-v508=v8.getBuffer(v501.buffer);
-}
-v511="type" in v501?v49[v501.type]:v508.dtype;
-v510=!!v501.normalized;
-v509=v501.size|0;
-v512=v501.offset|0;
-v513=v501.stride|0;
-v514=v501.divisor|0;
-}
-}
-v516=g515.state;
-g515.state=v503;
-v517=g515.x;
-g515.x=v504;
-v518=g515.y;
-g515.y=v505;
-v519=g515.z;
-g515.z=v506;
-v520=g515.w;
-g515.w=v507;
-v521=g515.buffer;
-g515.buffer=v508;
-v522=g515.size;
-g515.size=v509;
-v523=g515.normalized;
-g515.normalized=v510;
-v524=g515.type;
-g515.type=v511;
-v525=g515.offset;
-g515.offset=v512;
-v526=g515.stride;
-g515.stride=v513;
-v527=g515.divisor;
-g515.divisor=v514;
-v528=g191.call(this,v2,a0,a2);
-if(!(v528&&(typeof v528==="object"||typeof v528==="function")&&(v16(v528)||v8.getBuffer(v528)||v8.getBuffer(v528.buffer)||v16(v528.buffer)||("constant" in v528&&(typeof v528.constant==="number"||v17(v528.constant))))))g18.commandRaise(g193,g19);
-v529=false;
-v530=1;
-v531=0;
-v532=0;
-v533=0;
-v534=0;
-v535=null;
-v536=0;
-v537=false;
-v538=5126;
-v539=0;
-v540=0;
-v541=0;
-if(v16(v528)){
-v529=true;
-v535=v8.createStream(34962,v528);
-v538=v535.dtype;
-}
-else{
-v535=v8.getBuffer(v528);
-if(v535){
-v538=v535.dtype;
-}
-else if("constant" in v528){
-v530=2;
-if(typeof v528.constant === "number"){
-v531=v528.constant;
-v532=v533=v534=0;
-}
-else{
-v531=v528.constant.length>0?v528.constant[0]:0;
-v532=v528.constant.length>1?v528.constant[1]:0;
-v533=v528.constant.length>2?v528.constant[2]:0;
-v534=v528.constant.length>3?v528.constant[3]:0;
-}
-}
-else{
-if(v16(v528.buffer)){
-v535=v8.createStream(34962,v528.buffer);
-}
-else{
-v535=v8.getBuffer(v528.buffer);
-}
-v538="type" in v528?v49[v528.type]:v535.dtype;
-v537=!!v528.normalized;
-v536=v528.size|0;
-v539=v528.offset|0;
-v540=v528.stride|0;
-v541=v528.divisor|0;
-}
-}
-v543=g542.state;
-g542.state=v530;
-v544=g542.x;
-g542.x=v531;
-v545=g542.y;
-g542.y=v532;
-v546=g542.z;
-g542.z=v533;
-v547=g542.w;
-g542.w=v534;
-v548=g542.buffer;
-g542.buffer=v535;
-v549=g542.size;
-g542.size=v536;
-v550=g542.normalized;
-g542.normalized=v537;
-v551=g542.type;
-g542.type=v538;
-v552=g542.offset;
-g542.offset=v539;
-v553=g542.stride;
-g542.stride=v540;
-v554=g542.divisor;
-g542.divisor=v541;
-v555=g131.call(this,v2,a0,a2);
-if(!(v555&&(typeof v555==="object"||typeof v555==="function")&&(v16(v555)||v8.getBuffer(v555)||v8.getBuffer(v555.buffer)||v16(v555.buffer)||("constant" in v555&&(typeof v555.constant==="number"||v17(v555.constant))))))g18.commandRaise(g133,g19);
-v556=false;
-v557=1;
-v558=0;
-v559=0;
-v560=0;
-v561=0;
-v562=null;
-v563=0;
-v564=false;
-v565=5126;
-v566=0;
-v567=0;
-v568=0;
-if(v16(v555)){
-v556=true;
-v562=v8.createStream(34962,v555);
-v565=v562.dtype;
-}
-else{
-v562=v8.getBuffer(v555);
-if(v562){
-v565=v562.dtype;
-}
-else if("constant" in v555){
-v557=2;
-if(typeof v555.constant === "number"){
-v558=v555.constant;
-v559=v560=v561=0;
-}
-else{
-v558=v555.constant.length>0?v555.constant[0]:0;
-v559=v555.constant.length>1?v555.constant[1]:0;
-v560=v555.constant.length>2?v555.constant[2]:0;
-v561=v555.constant.length>3?v555.constant[3]:0;
-}
-}
-else{
-if(v16(v555.buffer)){
-v562=v8.createStream(34962,v555.buffer);
-}
-else{
-v562=v8.getBuffer(v555.buffer);
-}
-v565="type" in v555?v49[v555.type]:v562.dtype;
-v564=!!v555.normalized;
-v563=v555.size|0;
-v566=v555.offset|0;
-v567=v555.stride|0;
-v568=v555.divisor|0;
-}
-}
-v570=g569.state;
-g569.state=v557;
-v571=g569.x;
-g569.x=v558;
-v572=g569.y;
-g569.y=v559;
-v573=g569.z;
-g569.z=v560;
-v574=g569.w;
-g569.w=v561;
-v575=g569.buffer;
-g569.buffer=v562;
-v576=g569.size;
-g569.size=v563;
-v577=g569.normalized;
-g569.normalized=v564;
-v578=g569.type;
-g569.type=v565;
-v579=g569.offset;
-g569.offset=v566;
-v580=g569.stride;
-g569.stride=v567;
-v581=g569.divisor;
-g569.divisor=v568;
-v582=g151.call(this,v2,a0,a2);
-if(!(v582&&(typeof v582==="object"||typeof v582==="function")&&(v16(v582)||v8.getBuffer(v582)||v8.getBuffer(v582.buffer)||v16(v582.buffer)||("constant" in v582&&(typeof v582.constant==="number"||v17(v582.constant))))))g18.commandRaise(g153,g19);
-v583=false;
-v584=1;
-v585=0;
-v586=0;
-v587=0;
-v588=0;
-v589=null;
-v590=0;
-v591=false;
-v592=5126;
-v593=0;
-v594=0;
-v595=0;
-if(v16(v582)){
-v583=true;
-v589=v8.createStream(34962,v582);
-v592=v589.dtype;
-}
-else{
-v589=v8.getBuffer(v582);
-if(v589){
-v592=v589.dtype;
-}
-else if("constant" in v582){
-v584=2;
-if(typeof v582.constant === "number"){
-v585=v582.constant;
-v586=v587=v588=0;
-}
-else{
-v585=v582.constant.length>0?v582.constant[0]:0;
-v586=v582.constant.length>1?v582.constant[1]:0;
-v587=v582.constant.length>2?v582.constant[2]:0;
-v588=v582.constant.length>3?v582.constant[3]:0;
-}
-}
-else{
-if(v16(v582.buffer)){
-v589=v8.createStream(34962,v582.buffer);
-}
-else{
-v589=v8.getBuffer(v582.buffer);
-}
-v592="type" in v582?v49[v582.type]:v589.dtype;
-v591=!!v582.normalized;
-v590=v582.size|0;
-v593=v582.offset|0;
-v594=v582.stride|0;
-v595=v582.divisor|0;
-}
-}
-v597=g596.state;
-g596.state=v584;
-v598=g596.x;
-g596.x=v585;
-v599=g596.y;
-g596.y=v586;
-v600=g596.z;
-g596.z=v587;
-v601=g596.w;
-g596.w=v588;
-v602=g596.buffer;
-g596.buffer=v589;
-v603=g596.size;
-g596.size=v590;
-v604=g596.normalized;
-g596.normalized=v591;
-v605=g596.type;
-g596.type=v592;
-v606=g596.offset;
-g596.offset=v593;
-v607=g596.stride;
-g596.stride=v594;
-v608=g596.divisor;
-g596.divisor=v595;
-v609=g111.call(this,v2,a0,a2);
-if(!(v609&&(typeof v609==="object"||typeof v609==="function")&&(v16(v609)||v8.getBuffer(v609)||v8.getBuffer(v609.buffer)||v16(v609.buffer)||("constant" in v609&&(typeof v609.constant==="number"||v17(v609.constant))))))g18.commandRaise(g113,g19);
-v610=false;
-v611=1;
-v612=0;
-v613=0;
-v614=0;
-v615=0;
-v616=null;
-v617=0;
-v618=false;
-v619=5126;
-v620=0;
-v621=0;
-v622=0;
-if(v16(v609)){
-v610=true;
-v616=v8.createStream(34962,v609);
-v619=v616.dtype;
-}
-else{
-v616=v8.getBuffer(v609);
-if(v616){
-v619=v616.dtype;
-}
-else if("constant" in v609){
-v611=2;
-if(typeof v609.constant === "number"){
-v612=v609.constant;
-v613=v614=v615=0;
-}
-else{
-v612=v609.constant.length>0?v609.constant[0]:0;
-v613=v609.constant.length>1?v609.constant[1]:0;
-v614=v609.constant.length>2?v609.constant[2]:0;
-v615=v609.constant.length>3?v609.constant[3]:0;
-}
-}
-else{
-if(v16(v609.buffer)){
-v616=v8.createStream(34962,v609.buffer);
-}
-else{
-v616=v8.getBuffer(v609.buffer);
-}
-v619="type" in v609?v49[v609.type]:v616.dtype;
-v618=!!v609.normalized;
-v617=v609.size|0;
-v620=v609.offset|0;
-v621=v609.stride|0;
-v622=v609.divisor|0;
-}
-}
-v624=g623.state;
-g623.state=v611;
-v625=g623.x;
-g623.x=v612;
-v626=g623.y;
-g623.y=v613;
-v627=g623.z;
-g623.z=v614;
-v628=g623.w;
-g623.w=v615;
-v629=g623.buffer;
-g623.buffer=v616;
-v630=g623.size;
-g623.size=v617;
-v631=g623.normalized;
-g623.normalized=v618;
-v632=g623.type;
-g623.type=v619;
-v633=g623.offset;
-g623.offset=v620;
-v634=g623.stride;
-g623.stride=v621;
-v635=g623.divisor;
-g623.divisor=v622;
-v636=g171.call(this,v2,a0,a2);
-if(!(v636&&(typeof v636==="object"||typeof v636==="function")&&(v16(v636)||v8.getBuffer(v636)||v8.getBuffer(v636.buffer)||v16(v636.buffer)||("constant" in v636&&(typeof v636.constant==="number"||v17(v636.constant))))))g18.commandRaise(g173,g19);
-v637=false;
-v638=1;
-v639=0;
-v640=0;
-v641=0;
-v642=0;
-v643=null;
-v644=0;
-v645=false;
-v646=5126;
-v647=0;
-v648=0;
-v649=0;
-if(v16(v636)){
-v637=true;
-v643=v8.createStream(34962,v636);
-v646=v643.dtype;
-}
-else{
-v643=v8.getBuffer(v636);
-if(v643){
-v646=v643.dtype;
-}
-else if("constant" in v636){
-v638=2;
-if(typeof v636.constant === "number"){
-v639=v636.constant;
-v640=v641=v642=0;
-}
-else{
-v639=v636.constant.length>0?v636.constant[0]:0;
-v640=v636.constant.length>1?v636.constant[1]:0;
-v641=v636.constant.length>2?v636.constant[2]:0;
-v642=v636.constant.length>3?v636.constant[3]:0;
-}
-}
-else{
-if(v16(v636.buffer)){
-v643=v8.createStream(34962,v636.buffer);
-}
-else{
-v643=v8.getBuffer(v636.buffer);
-}
-v646="type" in v636?v49[v636.type]:v643.dtype;
-v645=!!v636.normalized;
-v644=v636.size|0;
-v647=v636.offset|0;
-v648=v636.stride|0;
-v649=v636.divisor|0;
-}
-}
-v651=g650.state;
-g650.state=v638;
-v652=g650.x;
-g650.x=v639;
-v653=g650.y;
-g650.y=v640;
-v654=g650.z;
-g650.z=v641;
-v655=g650.w;
-g650.w=v642;
-v656=g650.buffer;
-g650.buffer=v643;
-v657=g650.size;
-g650.size=v644;
-v658=g650.normalized;
-g650.normalized=v645;
-v659=g650.type;
-g650.type=v646;
-v660=g650.offset;
-g650.offset=v647;
-v661=g650.stride;
-g650.stride=v648;
-v662=g650.divisor;
-g650.divisor=v649;
-v664=v9.vert;
-v9.vert=g663;
-v666=v9.frag;
-v9.frag=g665;
-v5.dirty=true;
-a1(v2,a0,a2);
-v2.viewportWidth=v340;
-v2.viewportHeight=v341;
-v42[0]=v342;
-v42[1]=v343;
-v42[2]=v344;
-v42[3]=v345;
-v20[0]=v347;
-v20[1]=v349;
-v20[2]=v351;
-v20[3]=v353;
-v4.blend_enable=v355;
-v24[0]=v357;
-v24[1]=v359;
-v24[2]=v361;
-v24[3]=v363;
-v4.depth_enable=v365;
-v40[0]=v371;
-v40[1]=v372;
-v40[2]=v373;
-v40[3]=v374;
-v4.scissor_enable=v376;
-v4.stencil_enable=v378;
-if(v379){
-g52.cpuTime+=performance.now()-v380;
-}
-if(v383){
-v7.destroyStream(v382);
-}
-v6.elements=v384;
-v6.offset=v386;
-v6.count=v388;
-v6.primitive=v390;
-v12[g391]=v392;
-v12[g394]=v395;
-v12[g397]=v398;
-v12[g400]=v401;
-v12[g403]=v404;
-v12[g406]=v407;
-v12[g409]=v410;
-v12[g412]=v413;
-v12[g415]=v416;
-v12[g418]=v419;
-if(v421){
-v8.destroyStream(v427);
-}
-g434.state=v435;
-g434.x=v436;
-g434.y=v437;
-g434.z=v438;
-g434.w=v439;
-g434.buffer=v440;
-g434.size=v441;
-g434.normalized=v442;
-g434.type=v443;
-g434.offset=v444;
-g434.stride=v445;
-g434.divisor=v446;
-if(v448){
-v8.destroyStream(v454);
-}
-g461.state=v462;
-g461.x=v463;
-g461.y=v464;
-g461.z=v465;
-g461.w=v466;
-g461.buffer=v467;
-g461.size=v468;
-g461.normalized=v469;
-g461.type=v470;
-g461.offset=v471;
-g461.stride=v472;
-g461.divisor=v473;
-if(v475){
-v8.destroyStream(v481);
-}
-g488.state=v489;
-g488.x=v490;
-g488.y=v491;
-g488.z=v492;
-g488.w=v493;
-g488.buffer=v494;
-g488.size=v495;
-g488.normalized=v496;
-g488.type=v497;
-g488.offset=v498;
-g488.stride=v499;
-g488.divisor=v500;
-if(v502){
-v8.destroyStream(v508);
-}
-g515.state=v516;
-g515.x=v517;
-g515.y=v518;
-g515.z=v519;
-g515.w=v520;
-g515.buffer=v521;
-g515.size=v522;
-g515.normalized=v523;
-g515.type=v524;
-g515.offset=v525;
-g515.stride=v526;
-g515.divisor=v527;
-if(v529){
-v8.destroyStream(v535);
-}
-g542.state=v543;
-g542.x=v544;
-g542.y=v545;
-g542.z=v546;
-g542.w=v547;
-g542.buffer=v548;
-g542.size=v549;
-g542.normalized=v550;
-g542.type=v551;
-g542.offset=v552;
-g542.stride=v553;
-g542.divisor=v554;
-if(v556){
-v8.destroyStream(v562);
-}
-g569.state=v570;
-g569.x=v571;
-g569.y=v572;
-g569.z=v573;
-g569.w=v574;
-g569.buffer=v575;
-g569.size=v576;
-g569.normalized=v577;
-g569.type=v578;
-g569.offset=v579;
-g569.stride=v580;
-g569.divisor=v581;
-if(v583){
-v8.destroyStream(v589);
-}
-g596.state=v597;
-g596.x=v598;
-g596.y=v599;
-g596.z=v600;
-g596.w=v601;
-g596.buffer=v602;
-g596.size=v603;
-g596.normalized=v604;
-g596.type=v605;
-g596.offset=v606;
-g596.stride=v607;
-g596.divisor=v608;
-if(v610){
-v8.destroyStream(v616);
-}
-g623.state=v624;
-g623.x=v625;
-g623.y=v626;
-g623.z=v627;
-g623.w=v628;
-g623.buffer=v629;
-g623.size=v630;
-g623.normalized=v631;
-g623.type=v632;
-g623.offset=v633;
-g623.stride=v634;
-g623.divisor=v635;
-if(v637){
-v8.destroyStream(v643);
-}
-g650.state=v651;
-g650.x=v652;
-g650.y=v653;
-g650.z=v654;
-g650.w=v655;
-g650.buffer=v656;
-g650.size=v657;
-g650.normalized=v658;
-g650.type=v659;
-g650.offset=v660;
-g650.stride=v661;
-g650.divisor=v662;
-v9.vert=v664;
-v9.frag=v666;
-v5.dirty=true;
-}
-,"batch":function(a0,a1){
-var v667,v668,v707,v708,v709,v710,v711;
-v667=v14.angle_instanced_arrays;
-v668=v13.next;
-if(v668!==v13.cur){
-if(v668){
-v1.bindFramebuffer(36160,v668.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v668;
-}
-if(v5.dirty){
-var v669,v670,v671,v672,v673,v674,v675,v676,v677,v678,v679,v680,v681,v682,v683,v684,v685,v686,v687,v688,v689,v690,v691,v692,v693,v694,v695,v696,v697,v698,v699,v700,v701,v702;
-v669=v4.dither;
-if(v669!==v5.dither){
-if(v669){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v669;
-}
-v670=v22[0];
-v671=v22[1];
-if(v670!==v23[0]||v671!==v23[1]){
-v1.blendEquationSeparate(v670,v671);
-v23[0]=v670;
-v23[1]=v671;
-}
-v672=v4.depth_func;
-if(v672!==v5.depth_func){
-v1.depthFunc(v672);
-v5.depth_func=v672;
-}
-v673=v26[0];
-v674=v26[1];
-if(v673!==v27[0]||v674!==v27[1]){
-v1.depthRange(v673,v674);
-v27[0]=v673;
-v27[1]=v674;
-}
-v675=v4.depth_mask;
-if(v675!==v5.depth_mask){
-v1.depthMask(v675);
-v5.depth_mask=v675;
-}
-v676=v28[0];
-v677=v28[1];
-v678=v28[2];
-v679=v28[3];
-if(v676!==v29[0]||v677!==v29[1]||v678!==v29[2]||v679!==v29[3]){
-v1.colorMask(v676,v677,v678,v679);
-v29[0]=v676;
-v29[1]=v677;
-v29[2]=v678;
-v29[3]=v679;
-}
-v680=v4.cull_enable;
-if(v680!==v5.cull_enable){
-if(v680){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v680;
-}
-v681=v4.cull_face;
-if(v681!==v5.cull_face){
-v1.cullFace(v681);
-v5.cull_face=v681;
-}
-v682=v4.frontFace;
-if(v682!==v5.frontFace){
-v1.frontFace(v682);
-v5.frontFace=v682;
-}
-v683=v4.lineWidth;
-if(v683!==v5.lineWidth){
-v1.lineWidth(v683);
-v5.lineWidth=v683;
-}
-v684=v4.polygonOffset_enable;
-if(v684!==v5.polygonOffset_enable){
-if(v684){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v684;
-}
-v685=v30[0];
-v686=v30[1];
-if(v685!==v31[0]||v686!==v31[1]){
-v1.polygonOffset(v685,v686);
-v31[0]=v685;
-v31[1]=v686;
-}
-v687=v4.sample_alpha;
-if(v687!==v5.sample_alpha){
-if(v687){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v687;
-}
-v688=v4.sample_enable;
-if(v688!==v5.sample_enable){
-if(v688){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v688;
-}
-v689=v32[0];
-v690=v32[1];
-if(v689!==v33[0]||v690!==v33[1]){
-v1.sampleCoverage(v689,v690);
-v33[0]=v689;
-v33[1]=v690;
-}
-v691=v4.stencil_mask;
-if(v691!==v5.stencil_mask){
-v1.stencilMask(v691);
-v5.stencil_mask=v691;
-}
-v692=v34[0];
-v693=v34[1];
-v694=v34[2];
-if(v692!==v35[0]||v693!==v35[1]||v694!==v35[2]){
-v1.stencilFunc(v692,v693,v694);
-v35[0]=v692;
-v35[1]=v693;
-v35[2]=v694;
-}
-v695=v36[0];
-v696=v36[1];
-v697=v36[2];
-v698=v36[3];
-if(v695!==v37[0]||v696!==v37[1]||v697!==v37[2]||v698!==v37[3]){
-v1.stencilOpSeparate(v695,v696,v697,v698);
-v37[0]=v695;
-v37[1]=v696;
-v37[2]=v697;
-v37[3]=v698;
-}
-v699=v38[0];
-v700=v38[1];
-v701=v38[2];
-v702=v38[3];
-if(v699!==v39[0]||v700!==v39[1]||v701!==v39[2]||v702!==v39[3]){
-v1.stencilOpSeparate(v699,v700,v701,v702);
-v39[0]=v699;
-v39[1]=v700;
-v39[2]=v701;
-v39[3]=v702;
-}
-}
-v1.blendColor(0,0,0,1);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=1;
-if(g703){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g703;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g704){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g704;
-if(g705){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g705;
-if(g706){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g706;
-v707=v5.profile;
-if(v707){
-v708=performance.now();
-g52.count+=a1;
-}
-v1.useProgram(g109.program);
-v709=v14.angle_instanced_arrays;
-var v911;
-v11.setVAO(null);
-v1.uniform1i(g291.location,false);
-v1.uniform1i(g301.location,g302.bind());
-v911=v6.instances;
-for(v710=0;
-v710<a1;
-++v710){
-v711=a0[v710];
-var v712,v713,v714,v715,v716,v717,v718,v719,v720,v721,v722,v723,v724,v725,v726,v727,v728,v729,v730,v731,v732,v733,v734,v735,v736,v737,v738,v739,v740,v741,v742,v743,v744,v745,v746,v747,v748,v749,v750,v751,v752,v753,v754,v755,v756,v757,v758,v759,v760,v761,v762,v763,v764,v765,v766,v767,v768,v769,v770,v771,v772,v773,v774,v775,v776,v777,v778,v779,v780,v781,v782,v783,v784,v785,v786,v787,v788,v789,v790,v791,v792,v793,v794,v795,v796,v797,v798,v799,v800,v801,v802,v803,v804,v805,v806,v807,v808,v809,v810,v811,v812,v813,v814,v815,v816,v817,v818,v819,v820,v821,v822,v823,v824,v825,v826,v827,v828,v829,v830,v831,v832,v833,v834,v835,v836,v837,v838,v839,v840,v841,v842,v843,v844,v845,v846,v847,v848,v849,v850,v851,v852,v853,v854,v855,v856,v857,v858,v859,v860,v861,v862,v863,v864,v865,v866,v867,v868,v869,v870,v871,v872,v873,v874,v875,v876,v877,v878,v879,v880,v881,v882,v883,v884,v885,v886,v887,v888,v889,v890,v891,v892,v893,v894,v895,v896,v897,v898,v899,v900,v901,v902,v903,v904,v905,v906,v907,v908,v909,v910;
-v712=v711["viewport"];
-if(!(v712&&typeof v712==="object"))g18.commandRaise(g90,g19);
-v713=v712.x|0;
-v714=v712.y|0;
-v715="width" in v712?v712.width|0:(v2.framebufferWidth-v713);
-v716="height" in v712?v712.height|0:(v2.framebufferHeight-v714);
-if(!(v715>=0&&v716>=0))g18.commandRaise(g90,g19);
-v717=v2.viewportWidth;
-v2.viewportWidth=v715;
-v718=v2.viewportHeight;
-v2.viewportHeight=v716;
-v1.viewport(v713,v714,v715,v716);
-v43[0]=v713;
-v43[1]=v714;
-v43[2]=v715;
-v43[3]=v716;
-v719=v711["viewport"];
-if(!(v719&&typeof v719==="object"))g18.commandRaise(g100,g19);
-v720=v719.x|0;
-v721=v719.y|0;
-v722="width" in v719?v719.width|0:(v2.framebufferWidth-v720);
-v723="height" in v719?v719.height|0:(v2.framebufferHeight-v721);
-if(!(v722>=0&&v723>=0))g18.commandRaise(g100,g19);
-v1.scissor(v720,v721,v722,v723);
-v41[0]=v720;
-v41[1]=v721;
-v41[2]=v722;
-v41[3]=v723;
-v724=g111.call(this,v2,v711,v710);
-if(!(v724&&(typeof v724==="object"||typeof v724==="function")&&(v16(v724)||v8.getBuffer(v724)||v8.getBuffer(v724.buffer)||v16(v724.buffer)||("constant" in v724&&(typeof v724.constant==="number"||v17(v724.constant))))))g18.commandRaise(g113,g19);
-v725=false;
-v726=1;
-v727=0;
-v728=0;
-v729=0;
-v730=0;
-v731=null;
-v732=0;
-v733=false;
-v734=5126;
-v735=0;
-v736=0;
-v737=0;
-if(v16(v724)){
-v725=true;
-v731=v8.createStream(34962,v724);
-v734=v731.dtype;
-}
-else{
-v731=v8.getBuffer(v724);
-if(v731){
-v734=v731.dtype;
-}
-else if("constant" in v724){
-v726=2;
-if(typeof v724.constant === "number"){
-v727=v724.constant;
-v728=v729=v730=0;
-}
-else{
-v727=v724.constant.length>0?v724.constant[0]:0;
-v728=v724.constant.length>1?v724.constant[1]:0;
-v729=v724.constant.length>2?v724.constant[2]:0;
-v730=v724.constant.length>3?v724.constant[3]:0;
-}
-}
-else{
-if(v16(v724.buffer)){
-v731=v8.createStream(34962,v724.buffer);
-}
-else{
-v731=v8.getBuffer(v724.buffer);
-}
-v734="type" in v724?v49[v724.type]:v731.dtype;
-v733=!!v724.normalized;
-v732=v724.size|0;
-v735=v724.offset|0;
-v736=v724.stride|0;
-v737=v724.divisor|0;
-}
-}
-v738=g127.location;
-v739=v10[v738];
-if(v726===1){
-if(!v739.buffer){
-v1.enableVertexAttribArray(v738);
-}
-v740=v732||4;
-if(v739.type!==v734||v739.size!==v740||v739.buffer!==v731||v739.normalized!==v733||v739.offset!==v735||v739.stride!==v736){
-v1.bindBuffer(34962,v731.buffer);
-v1.vertexAttribPointer(v738,v740,v734,v733,v736,v735);
-v739.type=v734;
-v739.size=v740;
-v739.buffer=v731;
-v739.normalized=v733;
-v739.offset=v735;
-v739.stride=v736;
-}
-if(v739.divisor!==v737){
-v709.vertexAttribDivisorANGLE(v738,v737);
-v739.divisor=v737;
-}
-}
-else{
-if(v739.buffer){
-v1.disableVertexAttribArray(v738);
-v739.buffer=null;
-}
-if(v739.x!==v727||v739.y!==v728||v739.z!==v729||v739.w!==v730){
-v1.vertexAttrib4f(v738,v727,v728,v729,v730);
-v739.x=v727;
-v739.y=v728;
-v739.z=v729;
-v739.w=v730;
-}
-}
-v741=g131.call(this,v2,v711,v710);
-if(!(v741&&(typeof v741==="object"||typeof v741==="function")&&(v16(v741)||v8.getBuffer(v741)||v8.getBuffer(v741.buffer)||v16(v741.buffer)||("constant" in v741&&(typeof v741.constant==="number"||v17(v741.constant))))))g18.commandRaise(g133,g19);
-v742=false;
-v743=1;
-v744=0;
-v745=0;
-v746=0;
-v747=0;
-v748=null;
-v749=0;
-v750=false;
-v751=5126;
-v752=0;
-v753=0;
-v754=0;
-if(v16(v741)){
-v742=true;
-v748=v8.createStream(34962,v741);
-v751=v748.dtype;
-}
-else{
-v748=v8.getBuffer(v741);
-if(v748){
-v751=v748.dtype;
-}
-else if("constant" in v741){
-v743=2;
-if(typeof v741.constant === "number"){
-v744=v741.constant;
-v745=v746=v747=0;
-}
-else{
-v744=v741.constant.length>0?v741.constant[0]:0;
-v745=v741.constant.length>1?v741.constant[1]:0;
-v746=v741.constant.length>2?v741.constant[2]:0;
-v747=v741.constant.length>3?v741.constant[3]:0;
-}
-}
-else{
-if(v16(v741.buffer)){
-v748=v8.createStream(34962,v741.buffer);
-}
-else{
-v748=v8.getBuffer(v741.buffer);
-}
-v751="type" in v741?v49[v741.type]:v748.dtype;
-v750=!!v741.normalized;
-v749=v741.size|0;
-v752=v741.offset|0;
-v753=v741.stride|0;
-v754=v741.divisor|0;
-}
-}
-v755=g147.location;
-v756=v10[v755];
-if(v743===1){
-if(!v756.buffer){
-v1.enableVertexAttribArray(v755);
-}
-v757=v749||1;
-if(v756.type!==v751||v756.size!==v757||v756.buffer!==v748||v756.normalized!==v750||v756.offset!==v752||v756.stride!==v753){
-v1.bindBuffer(34962,v748.buffer);
-v1.vertexAttribPointer(v755,v757,v751,v750,v753,v752);
-v756.type=v751;
-v756.size=v757;
-v756.buffer=v748;
-v756.normalized=v750;
-v756.offset=v752;
-v756.stride=v753;
-}
-if(v756.divisor!==v754){
-v709.vertexAttribDivisorANGLE(v755,v754);
-v756.divisor=v754;
-}
-}
-else{
-if(v756.buffer){
-v1.disableVertexAttribArray(v755);
-v756.buffer=null;
-}
-if(v756.x!==v744||v756.y!==v745||v756.z!==v746||v756.w!==v747){
-v1.vertexAttrib4f(v755,v744,v745,v746,v747);
-v756.x=v744;
-v756.y=v745;
-v756.z=v746;
-v756.w=v747;
-}
-}
-v758=g151.call(this,v2,v711,v710);
-if(!(v758&&(typeof v758==="object"||typeof v758==="function")&&(v16(v758)||v8.getBuffer(v758)||v8.getBuffer(v758.buffer)||v16(v758.buffer)||("constant" in v758&&(typeof v758.constant==="number"||v17(v758.constant))))))g18.commandRaise(g153,g19);
-v759=false;
-v760=1;
-v761=0;
-v762=0;
-v763=0;
-v764=0;
-v765=null;
-v766=0;
-v767=false;
-v768=5126;
-v769=0;
-v770=0;
-v771=0;
-if(v16(v758)){
-v759=true;
-v765=v8.createStream(34962,v758);
-v768=v765.dtype;
-}
-else{
-v765=v8.getBuffer(v758);
-if(v765){
-v768=v765.dtype;
-}
-else if("constant" in v758){
-v760=2;
-if(typeof v758.constant === "number"){
-v761=v758.constant;
-v762=v763=v764=0;
-}
-else{
-v761=v758.constant.length>0?v758.constant[0]:0;
-v762=v758.constant.length>1?v758.constant[1]:0;
-v763=v758.constant.length>2?v758.constant[2]:0;
-v764=v758.constant.length>3?v758.constant[3]:0;
-}
-}
-else{
-if(v16(v758.buffer)){
-v765=v8.createStream(34962,v758.buffer);
-}
-else{
-v765=v8.getBuffer(v758.buffer);
-}
-v768="type" in v758?v49[v758.type]:v765.dtype;
-v767=!!v758.normalized;
-v766=v758.size|0;
-v769=v758.offset|0;
-v770=v758.stride|0;
-v771=v758.divisor|0;
-}
-}
-v772=g167.location;
-v773=v10[v772];
-if(v760===1){
-if(!v773.buffer){
-v1.enableVertexAttribArray(v772);
-}
-v774=v766||4;
-if(v773.type!==v768||v773.size!==v774||v773.buffer!==v765||v773.normalized!==v767||v773.offset!==v769||v773.stride!==v770){
-v1.bindBuffer(34962,v765.buffer);
-v1.vertexAttribPointer(v772,v774,v768,v767,v770,v769);
-v773.type=v768;
-v773.size=v774;
-v773.buffer=v765;
-v773.normalized=v767;
-v773.offset=v769;
-v773.stride=v770;
-}
-if(v773.divisor!==v771){
-v709.vertexAttribDivisorANGLE(v772,v771);
-v773.divisor=v771;
-}
-}
-else{
-if(v773.buffer){
-v1.disableVertexAttribArray(v772);
-v773.buffer=null;
-}
-if(v773.x!==v761||v773.y!==v762||v773.z!==v763||v773.w!==v764){
-v1.vertexAttrib4f(v772,v761,v762,v763,v764);
-v773.x=v761;
-v773.y=v762;
-v773.z=v763;
-v773.w=v764;
-}
-}
-v775=g171.call(this,v2,v711,v710);
-if(!(v775&&(typeof v775==="object"||typeof v775==="function")&&(v16(v775)||v8.getBuffer(v775)||v8.getBuffer(v775.buffer)||v16(v775.buffer)||("constant" in v775&&(typeof v775.constant==="number"||v17(v775.constant))))))g18.commandRaise(g173,g19);
-v776=false;
-v777=1;
-v778=0;
-v779=0;
-v780=0;
-v781=0;
-v782=null;
-v783=0;
-v784=false;
-v785=5126;
-v786=0;
-v787=0;
-v788=0;
-if(v16(v775)){
-v776=true;
-v782=v8.createStream(34962,v775);
-v785=v782.dtype;
-}
-else{
-v782=v8.getBuffer(v775);
-if(v782){
-v785=v782.dtype;
-}
-else if("constant" in v775){
-v777=2;
-if(typeof v775.constant === "number"){
-v778=v775.constant;
-v779=v780=v781=0;
-}
-else{
-v778=v775.constant.length>0?v775.constant[0]:0;
-v779=v775.constant.length>1?v775.constant[1]:0;
-v780=v775.constant.length>2?v775.constant[2]:0;
-v781=v775.constant.length>3?v775.constant[3]:0;
-}
-}
-else{
-if(v16(v775.buffer)){
-v782=v8.createStream(34962,v775.buffer);
-}
-else{
-v782=v8.getBuffer(v775.buffer);
-}
-v785="type" in v775?v49[v775.type]:v782.dtype;
-v784=!!v775.normalized;
-v783=v775.size|0;
-v786=v775.offset|0;
-v787=v775.stride|0;
-v788=v775.divisor|0;
-}
-}
-v789=g187.location;
-v790=v10[v789];
-if(v777===1){
-if(!v790.buffer){
-v1.enableVertexAttribArray(v789);
-}
-v791=v783||1;
-if(v790.type!==v785||v790.size!==v791||v790.buffer!==v782||v790.normalized!==v784||v790.offset!==v786||v790.stride!==v787){
-v1.bindBuffer(34962,v782.buffer);
-v1.vertexAttribPointer(v789,v791,v785,v784,v787,v786);
-v790.type=v785;
-v790.size=v791;
-v790.buffer=v782;
-v790.normalized=v784;
-v790.offset=v786;
-v790.stride=v787;
-}
-if(v790.divisor!==v788){
-v709.vertexAttribDivisorANGLE(v789,v788);
-v790.divisor=v788;
-}
-}
-else{
-if(v790.buffer){
-v1.disableVertexAttribArray(v789);
-v790.buffer=null;
-}
-if(v790.x!==v778||v790.y!==v779||v790.z!==v780||v790.w!==v781){
-v1.vertexAttrib4f(v789,v778,v779,v780,v781);
-v790.x=v778;
-v790.y=v779;
-v790.z=v780;
-v790.w=v781;
-}
-}
-v792=g191.call(this,v2,v711,v710);
-if(!(v792&&(typeof v792==="object"||typeof v792==="function")&&(v16(v792)||v8.getBuffer(v792)||v8.getBuffer(v792.buffer)||v16(v792.buffer)||("constant" in v792&&(typeof v792.constant==="number"||v17(v792.constant))))))g18.commandRaise(g193,g19);
-v793=false;
-v794=1;
-v795=0;
-v796=0;
-v797=0;
-v798=0;
-v799=null;
-v800=0;
-v801=false;
-v802=5126;
-v803=0;
-v804=0;
-v805=0;
-if(v16(v792)){
-v793=true;
-v799=v8.createStream(34962,v792);
-v802=v799.dtype;
-}
-else{
-v799=v8.getBuffer(v792);
-if(v799){
-v802=v799.dtype;
-}
-else if("constant" in v792){
-v794=2;
-if(typeof v792.constant === "number"){
-v795=v792.constant;
-v796=v797=v798=0;
-}
-else{
-v795=v792.constant.length>0?v792.constant[0]:0;
-v796=v792.constant.length>1?v792.constant[1]:0;
-v797=v792.constant.length>2?v792.constant[2]:0;
-v798=v792.constant.length>3?v792.constant[3]:0;
-}
-}
-else{
-if(v16(v792.buffer)){
-v799=v8.createStream(34962,v792.buffer);
-}
-else{
-v799=v8.getBuffer(v792.buffer);
-}
-v802="type" in v792?v49[v792.type]:v799.dtype;
-v801=!!v792.normalized;
-v800=v792.size|0;
-v803=v792.offset|0;
-v804=v792.stride|0;
-v805=v792.divisor|0;
-}
-}
-v806=g207.location;
-v807=v10[v806];
-if(v794===1){
-if(!v807.buffer){
-v1.enableVertexAttribArray(v806);
-}
-v808=v800||1;
-if(v807.type!==v802||v807.size!==v808||v807.buffer!==v799||v807.normalized!==v801||v807.offset!==v803||v807.stride!==v804){
-v1.bindBuffer(34962,v799.buffer);
-v1.vertexAttribPointer(v806,v808,v802,v801,v804,v803);
-v807.type=v802;
-v807.size=v808;
-v807.buffer=v799;
-v807.normalized=v801;
-v807.offset=v803;
-v807.stride=v804;
-}
-if(v807.divisor!==v805){
-v709.vertexAttribDivisorANGLE(v806,v805);
-v807.divisor=v805;
-}
-}
-else{
-if(v807.buffer){
-v1.disableVertexAttribArray(v806);
-v807.buffer=null;
-}
-if(v807.x!==v795||v807.y!==v796||v807.z!==v797||v807.w!==v798){
-v1.vertexAttrib4f(v806,v795,v796,v797,v798);
-v807.x=v795;
-v807.y=v796;
-v807.z=v797;
-v807.w=v798;
-}
-}
-v809=g211.call(this,v2,v711,v710);
-if(!(v809&&(typeof v809==="object"||typeof v809==="function")&&(v16(v809)||v8.getBuffer(v809)||v8.getBuffer(v809.buffer)||v16(v809.buffer)||("constant" in v809&&(typeof v809.constant==="number"||v17(v809.constant))))))g18.commandRaise(g213,g19);
-v810=false;
-v811=1;
-v812=0;
-v813=0;
-v814=0;
-v815=0;
-v816=null;
-v817=0;
-v818=false;
-v819=5126;
-v820=0;
-v821=0;
-v822=0;
-if(v16(v809)){
-v810=true;
-v816=v8.createStream(34962,v809);
-v819=v816.dtype;
-}
-else{
-v816=v8.getBuffer(v809);
-if(v816){
-v819=v816.dtype;
-}
-else if("constant" in v809){
-v811=2;
-if(typeof v809.constant === "number"){
-v812=v809.constant;
-v813=v814=v815=0;
-}
-else{
-v812=v809.constant.length>0?v809.constant[0]:0;
-v813=v809.constant.length>1?v809.constant[1]:0;
-v814=v809.constant.length>2?v809.constant[2]:0;
-v815=v809.constant.length>3?v809.constant[3]:0;
-}
-}
-else{
-if(v16(v809.buffer)){
-v816=v8.createStream(34962,v809.buffer);
-}
-else{
-v816=v8.getBuffer(v809.buffer);
-}
-v819="type" in v809?v49[v809.type]:v816.dtype;
-v818=!!v809.normalized;
-v817=v809.size|0;
-v820=v809.offset|0;
-v821=v809.stride|0;
-v822=v809.divisor|0;
-}
-}
-v823=g227.location;
-v824=v10[v823];
-if(v811===1){
-if(!v824.buffer){
-v1.enableVertexAttribArray(v823);
-}
-v825=v817||1;
-if(v824.type!==v819||v824.size!==v825||v824.buffer!==v816||v824.normalized!==v818||v824.offset!==v820||v824.stride!==v821){
-v1.bindBuffer(34962,v816.buffer);
-v1.vertexAttribPointer(v823,v825,v819,v818,v821,v820);
-v824.type=v819;
-v824.size=v825;
-v824.buffer=v816;
-v824.normalized=v818;
-v824.offset=v820;
-v824.stride=v821;
-}
-if(v824.divisor!==v822){
-v709.vertexAttribDivisorANGLE(v823,v822);
-v824.divisor=v822;
-}
-}
-else{
-if(v824.buffer){
-v1.disableVertexAttribArray(v823);
-v824.buffer=null;
-}
-if(v824.x!==v812||v824.y!==v813||v824.z!==v814||v824.w!==v815){
-v1.vertexAttrib4f(v823,v812,v813,v814,v815);
-v824.x=v812;
-v824.y=v813;
-v824.z=v814;
-v824.w=v815;
-}
-}
-v826=g231.call(this,v2,v711,v710);
-if(!(v826&&(typeof v826==="object"||typeof v826==="function")&&(v16(v826)||v8.getBuffer(v826)||v8.getBuffer(v826.buffer)||v16(v826.buffer)||("constant" in v826&&(typeof v826.constant==="number"||v17(v826.constant))))))g18.commandRaise(g233,g19);
-v827=false;
-v828=1;
-v829=0;
-v830=0;
-v831=0;
-v832=0;
-v833=null;
-v834=0;
-v835=false;
-v836=5126;
-v837=0;
-v838=0;
-v839=0;
-if(v16(v826)){
-v827=true;
-v833=v8.createStream(34962,v826);
-v836=v833.dtype;
-}
-else{
-v833=v8.getBuffer(v826);
-if(v833){
-v836=v833.dtype;
-}
-else if("constant" in v826){
-v828=2;
-if(typeof v826.constant === "number"){
-v829=v826.constant;
-v830=v831=v832=0;
-}
-else{
-v829=v826.constant.length>0?v826.constant[0]:0;
-v830=v826.constant.length>1?v826.constant[1]:0;
-v831=v826.constant.length>2?v826.constant[2]:0;
-v832=v826.constant.length>3?v826.constant[3]:0;
-}
-}
-else{
-if(v16(v826.buffer)){
-v833=v8.createStream(34962,v826.buffer);
-}
-else{
-v833=v8.getBuffer(v826.buffer);
-}
-v836="type" in v826?v49[v826.type]:v833.dtype;
-v835=!!v826.normalized;
-v834=v826.size|0;
-v837=v826.offset|0;
-v838=v826.stride|0;
-v839=v826.divisor|0;
-}
-}
-v840=g247.location;
-v841=v10[v840];
-if(v828===1){
-if(!v841.buffer){
-v1.enableVertexAttribArray(v840);
-}
-v842=v834||1;
-if(v841.type!==v836||v841.size!==v842||v841.buffer!==v833||v841.normalized!==v835||v841.offset!==v837||v841.stride!==v838){
-v1.bindBuffer(34962,v833.buffer);
-v1.vertexAttribPointer(v840,v842,v836,v835,v838,v837);
-v841.type=v836;
-v841.size=v842;
-v841.buffer=v833;
-v841.normalized=v835;
-v841.offset=v837;
-v841.stride=v838;
-}
-if(v841.divisor!==v839){
-v709.vertexAttribDivisorANGLE(v840,v839);
-v841.divisor=v839;
-}
-}
-else{
-if(v841.buffer){
-v1.disableVertexAttribArray(v840);
-v841.buffer=null;
-}
-if(v841.x!==v829||v841.y!==v830||v841.z!==v831||v841.w!==v832){
-v1.vertexAttrib4f(v840,v829,v830,v831,v832);
-v841.x=v829;
-v841.y=v830;
-v841.z=v831;
-v841.w=v832;
-}
-}
-v843=g251.call(this,v2,v711,v710);
-if(!(v843&&(typeof v843==="object"||typeof v843==="function")&&(v16(v843)||v8.getBuffer(v843)||v8.getBuffer(v843.buffer)||v16(v843.buffer)||("constant" in v843&&(typeof v843.constant==="number"||v17(v843.constant))))))g18.commandRaise(g253,g19);
-v844=false;
-v845=1;
-v846=0;
-v847=0;
-v848=0;
-v849=0;
-v850=null;
-v851=0;
-v852=false;
-v853=5126;
-v854=0;
-v855=0;
-v856=0;
-if(v16(v843)){
-v844=true;
-v850=v8.createStream(34962,v843);
-v853=v850.dtype;
-}
-else{
-v850=v8.getBuffer(v843);
-if(v850){
-v853=v850.dtype;
-}
-else if("constant" in v843){
-v845=2;
-if(typeof v843.constant === "number"){
-v846=v843.constant;
-v847=v848=v849=0;
-}
-else{
-v846=v843.constant.length>0?v843.constant[0]:0;
-v847=v843.constant.length>1?v843.constant[1]:0;
-v848=v843.constant.length>2?v843.constant[2]:0;
-v849=v843.constant.length>3?v843.constant[3]:0;
-}
-}
-else{
-if(v16(v843.buffer)){
-v850=v8.createStream(34962,v843.buffer);
-}
-else{
-v850=v8.getBuffer(v843.buffer);
-}
-v853="type" in v843?v49[v843.type]:v850.dtype;
-v852=!!v843.normalized;
-v851=v843.size|0;
-v854=v843.offset|0;
-v855=v843.stride|0;
-v856=v843.divisor|0;
-}
-}
-v857=g267.location;
-v858=v10[v857];
-if(v845===1){
-if(!v858.buffer){
-v1.enableVertexAttribArray(v857);
-}
-v859=v851||1;
-if(v858.type!==v853||v858.size!==v859||v858.buffer!==v850||v858.normalized!==v852||v858.offset!==v854||v858.stride!==v855){
-v1.bindBuffer(34962,v850.buffer);
-v1.vertexAttribPointer(v857,v859,v853,v852,v855,v854);
-v858.type=v853;
-v858.size=v859;
-v858.buffer=v850;
-v858.normalized=v852;
-v858.offset=v854;
-v858.stride=v855;
-}
-if(v858.divisor!==v856){
-v709.vertexAttribDivisorANGLE(v857,v856);
-v858.divisor=v856;
-}
-}
-else{
-if(v858.buffer){
-v1.disableVertexAttribArray(v857);
-v858.buffer=null;
-}
-if(v858.x!==v846||v858.y!==v847||v858.z!==v848||v858.w!==v849){
-v1.vertexAttrib4f(v857,v846,v847,v848,v849);
-v858.x=v846;
-v858.y=v847;
-v858.z=v848;
-v858.w=v849;
-}
-}
-v860=g271.call(this,v2,v711,v710);
-if(!(v860&&(typeof v860==="object"||typeof v860==="function")&&(v16(v860)||v8.getBuffer(v860)||v8.getBuffer(v860.buffer)||v16(v860.buffer)||("constant" in v860&&(typeof v860.constant==="number"||v17(v860.constant))))))g18.commandRaise(g273,g19);
-v861=false;
-v862=1;
-v863=0;
-v864=0;
-v865=0;
-v866=0;
-v867=null;
-v868=0;
-v869=false;
-v870=5126;
-v871=0;
-v872=0;
-v873=0;
-if(v16(v860)){
-v861=true;
-v867=v8.createStream(34962,v860);
-v870=v867.dtype;
-}
-else{
-v867=v8.getBuffer(v860);
-if(v867){
-v870=v867.dtype;
-}
-else if("constant" in v860){
-v862=2;
-if(typeof v860.constant === "number"){
-v863=v860.constant;
-v864=v865=v866=0;
-}
-else{
-v863=v860.constant.length>0?v860.constant[0]:0;
-v864=v860.constant.length>1?v860.constant[1]:0;
-v865=v860.constant.length>2?v860.constant[2]:0;
-v866=v860.constant.length>3?v860.constant[3]:0;
-}
-}
-else{
-if(v16(v860.buffer)){
-v867=v8.createStream(34962,v860.buffer);
-}
-else{
-v867=v8.getBuffer(v860.buffer);
-}
-v870="type" in v860?v49[v860.type]:v867.dtype;
-v869=!!v860.normalized;
-v868=v860.size|0;
-v871=v860.offset|0;
-v872=v860.stride|0;
-v873=v860.divisor|0;
-}
-}
-v874=g287.location;
-v875=v10[v874];
-if(v862===1){
-if(!v875.buffer){
-v1.enableVertexAttribArray(v874);
-}
-v876=v868||1;
-if(v875.type!==v870||v875.size!==v876||v875.buffer!==v867||v875.normalized!==v869||v875.offset!==v871||v875.stride!==v872){
-v1.bindBuffer(34962,v867.buffer);
-v1.vertexAttribPointer(v874,v876,v870,v869,v872,v871);
-v875.type=v870;
-v875.size=v876;
-v875.buffer=v867;
-v875.normalized=v869;
-v875.offset=v871;
-v875.stride=v872;
-}
-if(v875.divisor!==v873){
-v709.vertexAttribDivisorANGLE(v874,v873);
-v875.divisor=v873;
-}
-}
-else{
-if(v875.buffer){
-v1.disableVertexAttribArray(v874);
-v875.buffer=null;
-}
-if(v875.x!==v863||v875.y!==v864||v875.z!==v865||v875.w!==v866){
-v1.vertexAttrib4f(v874,v863,v864,v865,v866);
-v875.x=v863;
-v875.y=v864;
-v875.z=v865;
-v875.w=v866;
-}
-}
-v877=v711["opacity"];
-if(!(typeof v877==="number"))g18.commandRaise(g294,g19);
-if(!v710||v878!==v877){
-v878=v877;
-v1.uniform1f(g292.location,v877);
-}
-v879=g296.call(this,v2,v711,v710);
-if(!(v17(v879)&&v879.length===2))g18.commandRaise(g298,g19);
-v880=v879[0];
-v882=v879[1];
-if(!v710||v881!==v880||v883!==v882){
-v881=v880;
-v883=v882;
-v1.uniform2f(g295.location,v880,v882);
-}
-v884=v2["pixelRatio"];
-if(!(typeof v884==="number"))g18.commandRaise(g305,g19);
-if(!v710||v885!==v884){
-v885=v884;
-v1.uniform1f(g303.location,v884);
-}
-v886=v711["scale"];
-if(!(v17(v886)&&v886.length===2))g18.commandRaise(g308,g19);
-v887=v886[0];
-v889=v886[1];
-if(!v710||v888!==v887||v890!==v889){
-v888=v887;
-v890=v889;
-v1.uniform2f(g306.location,v887,v889);
-}
-v891=v711["scaleFract"];
-if(!(v17(v891)&&v891.length===2))g18.commandRaise(g313,g19);
-v892=v891[0];
-v894=v891[1];
-if(!v710||v893!==v892||v895!==v894){
-v893=v892;
-v895=v894;
-v1.uniform2f(g311.location,v892,v894);
-}
-v896=v711["translate"];
-if(!(v17(v896)&&v896.length===2))g18.commandRaise(g318,g19);
-v897=v896[0];
-v899=v896[1];
-if(!v710||v898!==v897||v900!==v899){
-v898=v897;
-v900=v899;
-v1.uniform2f(g316.location,v897,v899);
-}
-v901=v711["translateFract"];
-if(!(v17(v901)&&v901.length===2))g18.commandRaise(g323,g19);
-v902=v901[0];
-v904=v901[1];
-if(!v710||v903!==v902||v905!==v904){
-v903=v902;
-v905=v904;
-v1.uniform2f(g321.location,v902,v904);
-}
-v906=v711["elements"];
-v907=null;
-v908=v16(v906);
-if(v908){
-v907=v7.createStream(v906);
-}
-else{
-v907=v7.getElements(v906);
-if(!(!v906||v907))g18.commandRaise(g329,g19);
-}
-if(v907)v1.bindBuffer(34963,v907.buffer.buffer);
-v909=v711["offset"];
-if(!(v909>=0))g18.commandRaise(g331,g19);
-v910=v711["count"];
-if(!(typeof v910==="number"&&v910>=0&&v910===(v910|0)))g18.commandRaise(g333,g19);
-if(v910){
-if(v911>0){
-if(v907){
-v709.drawElementsInstancedANGLE(0,v910,v907.type,v909<<((v907.type-5121)>>1),v911);
-}
-else{
-v709.drawArraysInstancedANGLE(0,v909,v910,v911);
-}
-}
-else if(v911<0){
-if(v907){
-v1.drawElements(0,v910,v907.type,v909<<((v907.type-5121)>>1));
-}
-else{
-v1.drawArrays(0,v909,v910);
-}
-}
-v2.viewportWidth=v717;
-v2.viewportHeight=v718;
-if(v725){
-v8.destroyStream(v731);
-}
-if(v742){
-v8.destroyStream(v748);
-}
-if(v759){
-v8.destroyStream(v765);
-}
-if(v776){
-v8.destroyStream(v782);
-}
-if(v793){
-v8.destroyStream(v799);
-}
-if(v810){
-v8.destroyStream(v816);
-}
-if(v827){
-v8.destroyStream(v833);
-}
-if(v844){
-v8.destroyStream(v850);
-}
-if(v861){
-v8.destroyStream(v867);
-}
-if(v908){
-v7.destroyStream(v907);
-}
-}
-}
-g302.unbind();
-v5.dirty=true;
-v11.setVAO(null);
-if(v707){
-g52.cpuTime+=performance.now()-v708;
-}
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/21cec01aa93887c70e86d7f1bc84d6837da0b1f5c1ff4cadd42ac6eb37f9f316 b/src/generated/regl-codegen/21cec01aa93887c70e86d7f1bc84d6837da0b1f5c1ff4cadd42ac6eb37f9f316
deleted file mode 100644
index 46af0c1d7e1..00000000000
--- a/src/generated/regl-codegen/21cec01aa93887c70e86d7f1bc84d6837da0b1f5c1ff4cadd42ac6eb37f9f316
+++ /dev/null
@@ -1,2488 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g93,g100,g101,g103,g105,g110,g111,g114,g117,g131,g136,g150,g155,g169,g174,g188,g193,g207,g211,g212,g215,g218,g220,g221,g223,g225,g227,g228,g230,g231,g233,g236,g238,g241,g243,g244,g246,g249,g251,g254,g255,g257,g275,g277,g279,g281,g283,g285,g287,g289,g291,g293,g295,g308,g310,g314,g316,g320,g322,g324,g327,g330,g333,g336,g339,g342,g345,g348,g351,g354,g357,g360,g363,g365,g378,g405,g432,g459,g486,g513,g526,g528,g564,g565,g566
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v53,v54,v55,v56,v57;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v53={
-}
-;
-v53.stride=8;
-v53.offset=8;
-v53.divisor=1;
-v54={
-}
-;
-v54.stride=8;
-v54.offset=16;
-v54.divisor=1;
-v55={
-}
-;
-v55.stride=8;
-v55.offset=8;
-v55.divisor=1;
-v56={
-}
-;
-v56.stride=8;
-v56.offset=16;
-v56.divisor=1;
-v57={
-}
-;
-v57.stride=4;
-v57.offset=0;
-v57.divisor=1;
-return {
-"draw":function(a0){
-var v58,v59,v92,v94,v95,v96,v97,v98,v99,v102,v104,v106,v107,v108,v109,v112,v113,v115,v116,v118,v119,v120,v121,v122,v123,v124,v125,v126,v127,v128,v129,v130,v132,v133,v134,v135,v137,v138,v139,v140,v141,v142,v143,v144,v145,v146,v147,v148,v149,v151,v152,v153,v154,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v170,v171,v172,v173,v175,v176,v177,v178,v179,v180,v181,v182,v183,v184,v185,v186,v187,v189,v190,v191,v192,v194,v195,v196,v197,v198,v199,v200,v201,v202,v203,v204,v205,v206,v208,v209,v210,v213,v214,v216,v217,v219,v222,v224,v226,v229,v232,v234,v235,v237,v239,v240,v242,v245,v247,v248,v250,v252,v253,v256,v258,v259,v260,v261,v262,v263;
-v58=v14.angle_instanced_arrays;
-v59=v13.next;
-if(v59!==v13.cur){
-if(v59){
-v1.bindFramebuffer(36160,v59.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v59;
-}
-if(v5.dirty){
-var v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91;
-v60=v4.dither;
-if(v60!==v5.dither){
-if(v60){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v60;
-}
-v61=v4.depth_func;
-if(v61!==v5.depth_func){
-v1.depthFunc(v61);
-v5.depth_func=v61;
-}
-v62=v26[0];
-v63=v26[1];
-if(v62!==v27[0]||v63!==v27[1]){
-v1.depthRange(v62,v63);
-v27[0]=v62;
-v27[1]=v63;
-}
-v64=v4.depth_mask;
-if(v64!==v5.depth_mask){
-v1.depthMask(v64);
-v5.depth_mask=v64;
-}
-v65=v28[0];
-v66=v28[1];
-v67=v28[2];
-v68=v28[3];
-if(v65!==v29[0]||v66!==v29[1]||v67!==v29[2]||v68!==v29[3]){
-v1.colorMask(v65,v66,v67,v68);
-v29[0]=v65;
-v29[1]=v66;
-v29[2]=v67;
-v29[3]=v68;
-}
-v69=v4.cull_enable;
-if(v69!==v5.cull_enable){
-if(v69){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v69;
-}
-v70=v4.cull_face;
-if(v70!==v5.cull_face){
-v1.cullFace(v70);
-v5.cull_face=v70;
-}
-v71=v4.frontFace;
-if(v71!==v5.frontFace){
-v1.frontFace(v71);
-v5.frontFace=v71;
-}
-v72=v4.lineWidth;
-if(v72!==v5.lineWidth){
-v1.lineWidth(v72);
-v5.lineWidth=v72;
-}
-v73=v4.polygonOffset_enable;
-if(v73!==v5.polygonOffset_enable){
-if(v73){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v73;
-}
-v74=v30[0];
-v75=v30[1];
-if(v74!==v31[0]||v75!==v31[1]){
-v1.polygonOffset(v74,v75);
-v31[0]=v74;
-v31[1]=v75;
-}
-v76=v4.sample_alpha;
-if(v76!==v5.sample_alpha){
-if(v76){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v76;
-}
-v77=v4.sample_enable;
-if(v77!==v5.sample_enable){
-if(v77){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v77;
-}
-v78=v32[0];
-v79=v32[1];
-if(v78!==v33[0]||v79!==v33[1]){
-v1.sampleCoverage(v78,v79);
-v33[0]=v78;
-v33[1]=v79;
-}
-v80=v4.stencil_mask;
-if(v80!==v5.stencil_mask){
-v1.stencilMask(v80);
-v5.stencil_mask=v80;
-}
-v81=v34[0];
-v82=v34[1];
-v83=v34[2];
-if(v81!==v35[0]||v82!==v35[1]||v83!==v35[2]){
-v1.stencilFunc(v81,v82,v83);
-v35[0]=v81;
-v35[1]=v82;
-v35[2]=v83;
-}
-v84=v36[0];
-v85=v36[1];
-v86=v36[2];
-v87=v36[3];
-if(v84!==v37[0]||v85!==v37[1]||v86!==v37[2]||v87!==v37[3]){
-v1.stencilOpSeparate(v84,v85,v86,v87);
-v37[0]=v84;
-v37[1]=v85;
-v37[2]=v86;
-v37[3]=v87;
-}
-v88=v38[0];
-v89=v38[1];
-v90=v38[2];
-v91=v38[3];
-if(v88!==v39[0]||v89!==v39[1]||v90!==v39[2]||v91!==v39[3]){
-v1.stencilOpSeparate(v88,v89,v90,v91);
-v39[0]=v88;
-v39[1]=v89;
-v39[2]=v90;
-v39[3]=v91;
-}
-}
-v92=a0["viewport"];
-if(!(v92&&typeof v92==="object"))g18.commandRaise(g93,g19);
-v94=v92.x|0;
-v95=v92.y|0;
-v96="width" in v92?v92.width|0:(v2.framebufferWidth-v94);
-v97="height" in v92?v92.height|0:(v2.framebufferHeight-v95);
-if(!(v96>=0&&v97>=0))g18.commandRaise(g93,g19);
-v98=v2.viewportWidth;
-v2.viewportWidth=v96;
-v99=v2.viewportHeight;
-v2.viewportHeight=v97;
-v1.viewport(v94,v95,v96,v97);
-v43[0]=v94;
-v43[1]=v95;
-v43[2]=v96;
-v43[3]=v97;
-v1.blendColor(0,0,0,0);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=0;
-if(g100){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g100;
-v1.blendEquationSeparate(32774,32774);
-v23[0]=32774;
-v23[1]=32774;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-v102=g101.call(this,v2,a0,0);
-if(!(typeof v102==="boolean"))g18.commandRaise(g103,g19);
-if(v102){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v102;
-v104=a0["viewport"];
-if(!(v104&&typeof v104==="object"))g18.commandRaise(g105,g19);
-v106=v104.x|0;
-v107=v104.y|0;
-v108="width" in v104?v104.width|0:(v2.framebufferWidth-v106);
-v109="height" in v104?v104.height|0:(v2.framebufferHeight-v107);
-if(!(v108>=0&&v109>=0))g18.commandRaise(g105,g19);
-v1.scissor(v106,v107,v108,v109);
-v41[0]=v106;
-v41[1]=v107;
-v41[2]=v108;
-v41[3]=v109;
-if(g110){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g110;
-if(g111){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g111;
-v112=v5.profile;
-if(v112){
-v113=performance.now();
-g52.count++;
-}
-v1.useProgram(g114.program);
-v115=v14.angle_instanced_arrays;
-v11.setVAO(null);
-v116=a0["positionBuffer"];
-v53.buffer=v116;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g117,g19);
-v118=false;
-v119=1;
-v120=0;
-v121=0;
-v122=0;
-v123=0;
-v124=null;
-v125=0;
-v126=false;
-v127=5126;
-v128=0;
-v129=0;
-v130=0;
-if(v16(v53)){
-v118=true;
-v124=v8.createStream(34962,v53);
-v127=v124.dtype;
-}
-else{
-v124=v8.getBuffer(v53);
-if(v124){
-v127=v124.dtype;
-}
-else if("constant" in v53){
-v119=2;
-if(typeof v53.constant === "number"){
-v120=v53.constant;
-v121=v122=v123=0;
-}
-else{
-v120=v53.constant.length>0?v53.constant[0]:0;
-v121=v53.constant.length>1?v53.constant[1]:0;
-v122=v53.constant.length>2?v53.constant[2]:0;
-v123=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v124=v8.createStream(34962,v53.buffer);
-}
-else{
-v124=v8.getBuffer(v53.buffer);
-}
-v127="type" in v53?v49[v53.type]:v124.dtype;
-v126=!!v53.normalized;
-v125=v53.size|0;
-v128=v53.offset|0;
-v129=v53.stride|0;
-v130=v53.divisor|0;
-}
-}
-v132=g131.location;
-v133=v10[v132];
-if(v119===1){
-if(!v133.buffer){
-v1.enableVertexAttribArray(v132);
-}
-v134=v125||2;
-if(v133.type!==v127||v133.size!==v134||v133.buffer!==v124||v133.normalized!==v126||v133.offset!==v128||v133.stride!==v129){
-v1.bindBuffer(34962,v124.buffer);
-v1.vertexAttribPointer(v132,v134,v127,v126,v129,v128);
-v133.type=v127;
-v133.size=v134;
-v133.buffer=v124;
-v133.normalized=v126;
-v133.offset=v128;
-v133.stride=v129;
-}
-if(v133.divisor!==v130){
-v115.vertexAttribDivisorANGLE(v132,v130);
-v133.divisor=v130;
-}
-}
-else{
-if(v133.buffer){
-v1.disableVertexAttribArray(v132);
-v133.buffer=null;
-}
-if(v133.x!==v120||v133.y!==v121||v133.z!==v122||v133.w!==v123){
-v1.vertexAttrib4f(v132,v120,v121,v122,v123);
-v133.x=v120;
-v133.y=v121;
-v133.z=v122;
-v133.w=v123;
-}
-}
-v135=a0["positionFractBuffer"];
-v55.buffer=v135;
-if(!(v55&&(typeof v55==="object"||typeof v55==="function")&&(v16(v55)||v8.getBuffer(v55)||v8.getBuffer(v55.buffer)||v16(v55.buffer)||("constant" in v55&&(typeof v55.constant==="number"||v17(v55.constant))))))g18.commandRaise(g136,g19);
-v137=false;
-v138=1;
-v139=0;
-v140=0;
-v141=0;
-v142=0;
-v143=null;
-v144=0;
-v145=false;
-v146=5126;
-v147=0;
-v148=0;
-v149=0;
-if(v16(v55)){
-v137=true;
-v143=v8.createStream(34962,v55);
-v146=v143.dtype;
-}
-else{
-v143=v8.getBuffer(v55);
-if(v143){
-v146=v143.dtype;
-}
-else if("constant" in v55){
-v138=2;
-if(typeof v55.constant === "number"){
-v139=v55.constant;
-v140=v141=v142=0;
-}
-else{
-v139=v55.constant.length>0?v55.constant[0]:0;
-v140=v55.constant.length>1?v55.constant[1]:0;
-v141=v55.constant.length>2?v55.constant[2]:0;
-v142=v55.constant.length>3?v55.constant[3]:0;
-}
-}
-else{
-if(v16(v55.buffer)){
-v143=v8.createStream(34962,v55.buffer);
-}
-else{
-v143=v8.getBuffer(v55.buffer);
-}
-v146="type" in v55?v49[v55.type]:v143.dtype;
-v145=!!v55.normalized;
-v144=v55.size|0;
-v147=v55.offset|0;
-v148=v55.stride|0;
-v149=v55.divisor|0;
-}
-}
-v151=g150.location;
-v152=v10[v151];
-if(v138===1){
-if(!v152.buffer){
-v1.enableVertexAttribArray(v151);
-}
-v153=v144||2;
-if(v152.type!==v146||v152.size!==v153||v152.buffer!==v143||v152.normalized!==v145||v152.offset!==v147||v152.stride!==v148){
-v1.bindBuffer(34962,v143.buffer);
-v1.vertexAttribPointer(v151,v153,v146,v145,v148,v147);
-v152.type=v146;
-v152.size=v153;
-v152.buffer=v143;
-v152.normalized=v145;
-v152.offset=v147;
-v152.stride=v148;
-}
-if(v152.divisor!==v149){
-v115.vertexAttribDivisorANGLE(v151,v149);
-v152.divisor=v149;
-}
-}
-else{
-if(v152.buffer){
-v1.disableVertexAttribArray(v151);
-v152.buffer=null;
-}
-if(v152.x!==v139||v152.y!==v140||v152.z!==v141||v152.w!==v142){
-v1.vertexAttrib4f(v151,v139,v140,v141,v142);
-v152.x=v139;
-v152.y=v140;
-v152.z=v141;
-v152.w=v142;
-}
-}
-v154=a0["positionBuffer"];
-v54.buffer=v154;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g155,g19);
-v156=false;
-v157=1;
-v158=0;
-v159=0;
-v160=0;
-v161=0;
-v162=null;
-v163=0;
-v164=false;
-v165=5126;
-v166=0;
-v167=0;
-v168=0;
-if(v16(v54)){
-v156=true;
-v162=v8.createStream(34962,v54);
-v165=v162.dtype;
-}
-else{
-v162=v8.getBuffer(v54);
-if(v162){
-v165=v162.dtype;
-}
-else if("constant" in v54){
-v157=2;
-if(typeof v54.constant === "number"){
-v158=v54.constant;
-v159=v160=v161=0;
-}
-else{
-v158=v54.constant.length>0?v54.constant[0]:0;
-v159=v54.constant.length>1?v54.constant[1]:0;
-v160=v54.constant.length>2?v54.constant[2]:0;
-v161=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v162=v8.createStream(34962,v54.buffer);
-}
-else{
-v162=v8.getBuffer(v54.buffer);
-}
-v165="type" in v54?v49[v54.type]:v162.dtype;
-v164=!!v54.normalized;
-v163=v54.size|0;
-v166=v54.offset|0;
-v167=v54.stride|0;
-v168=v54.divisor|0;
-}
-}
-v170=g169.location;
-v171=v10[v170];
-if(v157===1){
-if(!v171.buffer){
-v1.enableVertexAttribArray(v170);
-}
-v172=v163||2;
-if(v171.type!==v165||v171.size!==v172||v171.buffer!==v162||v171.normalized!==v164||v171.offset!==v166||v171.stride!==v167){
-v1.bindBuffer(34962,v162.buffer);
-v1.vertexAttribPointer(v170,v172,v165,v164,v167,v166);
-v171.type=v165;
-v171.size=v172;
-v171.buffer=v162;
-v171.normalized=v164;
-v171.offset=v166;
-v171.stride=v167;
-}
-if(v171.divisor!==v168){
-v115.vertexAttribDivisorANGLE(v170,v168);
-v171.divisor=v168;
-}
-}
-else{
-if(v171.buffer){
-v1.disableVertexAttribArray(v170);
-v171.buffer=null;
-}
-if(v171.x!==v158||v171.y!==v159||v171.z!==v160||v171.w!==v161){
-v1.vertexAttrib4f(v170,v158,v159,v160,v161);
-v171.x=v158;
-v171.y=v159;
-v171.z=v160;
-v171.w=v161;
-}
-}
-v173=a0["positionFractBuffer"];
-v56.buffer=v173;
-if(!(v56&&(typeof v56==="object"||typeof v56==="function")&&(v16(v56)||v8.getBuffer(v56)||v8.getBuffer(v56.buffer)||v16(v56.buffer)||("constant" in v56&&(typeof v56.constant==="number"||v17(v56.constant))))))g18.commandRaise(g174,g19);
-v175=false;
-v176=1;
-v177=0;
-v178=0;
-v179=0;
-v180=0;
-v181=null;
-v182=0;
-v183=false;
-v184=5126;
-v185=0;
-v186=0;
-v187=0;
-if(v16(v56)){
-v175=true;
-v181=v8.createStream(34962,v56);
-v184=v181.dtype;
-}
-else{
-v181=v8.getBuffer(v56);
-if(v181){
-v184=v181.dtype;
-}
-else if("constant" in v56){
-v176=2;
-if(typeof v56.constant === "number"){
-v177=v56.constant;
-v178=v179=v180=0;
-}
-else{
-v177=v56.constant.length>0?v56.constant[0]:0;
-v178=v56.constant.length>1?v56.constant[1]:0;
-v179=v56.constant.length>2?v56.constant[2]:0;
-v180=v56.constant.length>3?v56.constant[3]:0;
-}
-}
-else{
-if(v16(v56.buffer)){
-v181=v8.createStream(34962,v56.buffer);
-}
-else{
-v181=v8.getBuffer(v56.buffer);
-}
-v184="type" in v56?v49[v56.type]:v181.dtype;
-v183=!!v56.normalized;
-v182=v56.size|0;
-v185=v56.offset|0;
-v186=v56.stride|0;
-v187=v56.divisor|0;
-}
-}
-v189=g188.location;
-v190=v10[v189];
-if(v176===1){
-if(!v190.buffer){
-v1.enableVertexAttribArray(v189);
-}
-v191=v182||2;
-if(v190.type!==v184||v190.size!==v191||v190.buffer!==v181||v190.normalized!==v183||v190.offset!==v185||v190.stride!==v186){
-v1.bindBuffer(34962,v181.buffer);
-v1.vertexAttribPointer(v189,v191,v184,v183,v186,v185);
-v190.type=v184;
-v190.size=v191;
-v190.buffer=v181;
-v190.normalized=v183;
-v190.offset=v185;
-v190.stride=v186;
-}
-if(v190.divisor!==v187){
-v115.vertexAttribDivisorANGLE(v189,v187);
-v190.divisor=v187;
-}
-}
-else{
-if(v190.buffer){
-v1.disableVertexAttribArray(v189);
-v190.buffer=null;
-}
-if(v190.x!==v177||v190.y!==v178||v190.z!==v179||v190.w!==v180){
-v1.vertexAttrib4f(v189,v177,v178,v179,v180);
-v190.x=v177;
-v190.y=v178;
-v190.z=v179;
-v190.w=v180;
-}
-}
-v192=a0["colorBuffer"];
-v57.buffer=v192;
-if(!(v57&&(typeof v57==="object"||typeof v57==="function")&&(v16(v57)||v8.getBuffer(v57)||v8.getBuffer(v57.buffer)||v16(v57.buffer)||("constant" in v57&&(typeof v57.constant==="number"||v17(v57.constant))))))g18.commandRaise(g193,g19);
-v194=false;
-v195=1;
-v196=0;
-v197=0;
-v198=0;
-v199=0;
-v200=null;
-v201=0;
-v202=false;
-v203=5126;
-v204=0;
-v205=0;
-v206=0;
-if(v16(v57)){
-v194=true;
-v200=v8.createStream(34962,v57);
-v203=v200.dtype;
-}
-else{
-v200=v8.getBuffer(v57);
-if(v200){
-v203=v200.dtype;
-}
-else if("constant" in v57){
-v195=2;
-if(typeof v57.constant === "number"){
-v196=v57.constant;
-v197=v198=v199=0;
-}
-else{
-v196=v57.constant.length>0?v57.constant[0]:0;
-v197=v57.constant.length>1?v57.constant[1]:0;
-v198=v57.constant.length>2?v57.constant[2]:0;
-v199=v57.constant.length>3?v57.constant[3]:0;
-}
-}
-else{
-if(v16(v57.buffer)){
-v200=v8.createStream(34962,v57.buffer);
-}
-else{
-v200=v8.getBuffer(v57.buffer);
-}
-v203="type" in v57?v49[v57.type]:v200.dtype;
-v202=!!v57.normalized;
-v201=v57.size|0;
-v204=v57.offset|0;
-v205=v57.stride|0;
-v206=v57.divisor|0;
-}
-}
-v208=g207.location;
-v209=v10[v208];
-if(v195===1){
-if(!v209.buffer){
-v1.enableVertexAttribArray(v208);
-}
-v210=v201||4;
-if(v209.type!==v203||v209.size!==v210||v209.buffer!==v200||v209.normalized!==v202||v209.offset!==v204||v209.stride!==v205){
-v1.bindBuffer(34962,v200.buffer);
-v1.vertexAttribPointer(v208,v210,v203,v202,v205,v204);
-v209.type=v203;
-v209.size=v210;
-v209.buffer=v200;
-v209.normalized=v202;
-v209.offset=v204;
-v209.stride=v205;
-}
-if(v209.divisor!==v206){
-v115.vertexAttribDivisorANGLE(v208,v206);
-v209.divisor=v206;
-}
-}
-else{
-if(v209.buffer){
-v1.disableVertexAttribArray(v208);
-v209.buffer=null;
-}
-if(v209.x!==v196||v209.y!==v197||v209.z!==v198||v209.w!==v199){
-v1.vertexAttrib4f(v208,v196,v197,v198,v199);
-v209.x=v196;
-v209.y=v197;
-v209.z=v198;
-v209.w=v199;
-}
-}
-v213=g212.location;
-v214=v10[v213];
-if(!v214.buffer){
-v1.enableVertexAttribArray(v213);
-}
-if(v214.type!==5126||v214.size!==1||v214.buffer!==g211||v214.normalized!==false||v214.offset!==0||v214.stride!==8){
-v1.bindBuffer(34962,g211.buffer);
-v1.vertexAttribPointer(v213,1,5126,false,8,0);
-v214.type=5126;
-v214.size=1;
-v214.buffer=g211;
-v214.normalized=false;
-v214.offset=0;
-v214.stride=8;
-}
-if(v214.divisor!==0){
-v115.vertexAttribDivisorANGLE(v213,0);
-v214.divisor=0;
-}
-v216=g215.location;
-v217=v10[v216];
-if(!v217.buffer){
-v1.enableVertexAttribArray(v216);
-}
-if(v217.type!==5126||v217.size!==1||v217.buffer!==g211||v217.normalized!==false||v217.offset!==4||v217.stride!==8){
-v1.bindBuffer(34962,g211.buffer);
-v1.vertexAttribPointer(v216,1,5126,false,8,4);
-v217.type=5126;
-v217.size=1;
-v217.buffer=g211;
-v217.normalized=false;
-v217.offset=4;
-v217.stride=8;
-}
-if(v217.divisor!==0){
-v115.vertexAttribDivisorANGLE(v216,0);
-v217.divisor=0;
-}
-v219=a0["dashLength"];
-if(!(typeof v219==="number"))g18.commandRaise(g220,g19);
-v1.uniform1f(g218.location,v219);
-v222=a0["dashTexture"];
-if(v222&&v222._reglType==="framebuffer"){
-v222=v222.color[0];
-}
-if(!(typeof v222==="function"&&v222._reglType==="texture2d"))g18.commandRaise(g223,g19);
-v224=v222._texture;
-v1.uniform1i(g221.location,v224.bind());
-v226=a0["depth"];
-if(!(typeof v226==="number"))g18.commandRaise(g227,g19);
-v1.uniform1f(g225.location,v226);
-v229=a0["opacity"];
-if(!(typeof v229==="number"))g18.commandRaise(g230,g19);
-v1.uniform1f(g228.location,v229);
-v232=a0["scale"];
-if(!(v17(v232)&&v232.length===2))g18.commandRaise(g233,g19);
-v234=v232[0];
-v235=v232[1];
-v1.uniform2f(g231.location,v234,v235);
-v237=a0["scaleFract"];
-if(!(v17(v237)&&v237.length===2))g18.commandRaise(g238,g19);
-v239=v237[0];
-v240=v237[1];
-v1.uniform2f(g236.location,v239,v240);
-v242=a0["thickness"];
-if(!(typeof v242==="number"))g18.commandRaise(g243,g19);
-v1.uniform1f(g241.location,v242);
-v245=a0["translate"];
-if(!(v17(v245)&&v245.length===2))g18.commandRaise(g246,g19);
-v247=v245[0];
-v248=v245[1];
-v1.uniform2f(g244.location,v247,v248);
-v250=a0["translateFract"];
-if(!(v17(v250)&&v250.length===2))g18.commandRaise(g251,g19);
-v252=v250[0];
-v253=v250[1];
-v1.uniform2f(g249.location,v252,v253);
-v256=g255.call(this,v2,a0,0);
-if(!(v17(v256)&&v256.length===4))g18.commandRaise(g257,g19);
-v258=v256[0];
-v259=v256[1];
-v260=v256[2];
-v261=v256[3];
-v1.uniform4f(g254.location,v258,v259,v260,v261);
-v262=v6.elements;
-if(v262){
-v1.bindBuffer(34963,v262.buffer.buffer);
-}
-else if(v11.currentVAO){
-v262=v7.getElements(v11.currentVAO.elements);
-if(v262)v1.bindBuffer(34963,v262.buffer.buffer);
-}
-v263=a0["count"];
-if(v263>0){
-if(v262){
-v115.drawElementsInstancedANGLE(5,4,v262.type,0<<((v262.type-5121)>>1),v263);
-}
-else{
-v115.drawArraysInstancedANGLE(5,0,4,v263);
-}
-}
-else if(v263<0){
-if(v262){
-v1.drawElements(5,4,v262.type,0<<((v262.type-5121)>>1));
-}
-else{
-v1.drawArrays(5,0,4);
-}
-}
-v5.dirty=true;
-v11.setVAO(null);
-v2.viewportWidth=v98;
-v2.viewportHeight=v99;
-if(v112){
-g52.cpuTime+=performance.now()-v113;
-}
-if(v118){
-v8.destroyStream(v124);
-}
-if(v137){
-v8.destroyStream(v143);
-}
-if(v156){
-v8.destroyStream(v162);
-}
-if(v175){
-v8.destroyStream(v181);
-}
-if(v194){
-v8.destroyStream(v200);
-}
-v224.unbind();
-}
-,"scope":function(a0,a1,a2){
-var v264,v265,v266,v267,v268,v269,v270,v271,v272,v273,v274,v276,v278,v280,v282,v284,v286,v288,v290,v292,v294,v296,v297,v298,v299,v300,v301,v302,v303,v304,v305,v306,v307,v309,v311,v312,v313,v315,v317,v318,v319,v321,v323,v325,v326,v328,v329,v331,v332,v334,v335,v337,v338,v340,v341,v343,v344,v346,v347,v349,v350,v352,v353,v355,v356,v358,v359,v361,v362,v364,v366,v367,v368,v369,v370,v371,v372,v373,v374,v375,v376,v377,v379,v380,v381,v382,v383,v384,v385,v386,v387,v388,v389,v390,v391,v392,v393,v394,v395,v396,v397,v398,v399,v400,v401,v402,v403,v404,v406,v407,v408,v409,v410,v411,v412,v413,v414,v415,v416,v417,v418,v419,v420,v421,v422,v423,v424,v425,v426,v427,v428,v429,v430,v431,v433,v434,v435,v436,v437,v438,v439,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v452,v453,v454,v455,v456,v457,v458,v460,v461,v462,v463,v464,v465,v466,v467,v468,v469,v470,v471,v472,v473,v474,v475,v476,v477,v478,v479,v480,v481,v482,v483,v484,v485,v487,v488,v489,v490,v491,v492,v493,v494,v495,v496,v497,v498,v499,v500,v501,v502,v503,v504,v505,v506,v507,v508,v509,v510,v511,v512,v514,v515,v516,v517,v518,v519,v520,v521,v522,v523,v524,v525,v527,v529;
-v264=a0["viewport"];
-if(!(v264&&typeof v264==="object"))g18.commandRaise(g93,g19);
-v265=v264.x|0;
-v266=v264.y|0;
-v267="width" in v264?v264.width|0:(v2.framebufferWidth-v265);
-v268="height" in v264?v264.height|0:(v2.framebufferHeight-v266);
-if(!(v267>=0&&v268>=0))g18.commandRaise(g93,g19);
-v269=v2.viewportWidth;
-v2.viewportWidth=v267;
-v270=v2.viewportHeight;
-v2.viewportHeight=v268;
-v271=v42[0];
-v42[0]=v265;
-v272=v42[1];
-v42[1]=v266;
-v273=v42[2];
-v42[2]=v267;
-v274=v42[3];
-v42[3]=v268;
-v276=v20[0];
-v20[0]=g275;
-v278=v20[1];
-v20[1]=g277;
-v280=v20[2];
-v20[2]=g279;
-v282=v20[3];
-v20[3]=g281;
-v284=v4.blend_enable;
-v4.blend_enable=g283;
-v286=v22[0];
-v22[0]=g285;
-v288=v22[1];
-v22[1]=g287;
-v290=v24[0];
-v24[0]=g289;
-v292=v24[1];
-v24[1]=g291;
-v294=v24[2];
-v24[2]=g293;
-v296=v24[3];
-v24[3]=g295;
-v297=g101.call(this,v2,a0,a2);
-if(!(typeof v297==="boolean"))g18.commandRaise(g103,g19);
-v298=v4.depth_enable;
-v4.depth_enable=v297;
-v299=a0["viewport"];
-if(!(v299&&typeof v299==="object"))g18.commandRaise(g105,g19);
-v300=v299.x|0;
-v301=v299.y|0;
-v302="width" in v299?v299.width|0:(v2.framebufferWidth-v300);
-v303="height" in v299?v299.height|0:(v2.framebufferHeight-v301);
-if(!(v302>=0&&v303>=0))g18.commandRaise(g105,g19);
-v304=v40[0];
-v40[0]=v300;
-v305=v40[1];
-v40[1]=v301;
-v306=v40[2];
-v40[2]=v302;
-v307=v40[3];
-v40[3]=v303;
-v309=v4.scissor_enable;
-v4.scissor_enable=g308;
-v311=v4.stencil_enable;
-v4.stencil_enable=g310;
-v312=v5.profile;
-if(v312){
-v313=performance.now();
-g52.count++;
-}
-v315=v6.offset;
-v6.offset=g314;
-v317=v6.count;
-v6.count=g316;
-v318=a0["count"];
-v319=v6.instances;
-v6.instances=v318;
-v321=v6.primitive;
-v6.primitive=g320;
-v323=g322.call(this,v2,a0,a2);
-v325=v12[g324];
-v12[g324]=v323;
-v326=a0["miterLimit"];
-v328=v12[g327];
-v12[g327]=v326;
-v329=a0["scale"];
-v331=v12[g330];
-v12[g330]=v329;
-v332=a0["scaleFract"];
-v334=v12[g333];
-v12[g333]=v332;
-v335=a0["translateFract"];
-v337=v12[g336];
-v12[g336]=v335;
-v338=a0["translate"];
-v340=v12[g339];
-v12[g339]=v338;
-v341=a0["thickness"];
-v343=v12[g342];
-v12[g342]=v341;
-v344=a0["dashTexture"];
-v346=v12[g345];
-v12[g345]=v344;
-v347=a0["opacity"];
-v349=v12[g348];
-v12[g348]=v347;
-v350=v2["pixelRatio"];
-v352=v12[g351];
-v12[g351]=v350;
-v353=a0["id"];
-v355=v12[g354];
-v12[g354]=v353;
-v356=a0["dashLength"];
-v358=v12[g357];
-v12[g357]=v356;
-v359=g255.call(this,v2,a0,a2);
-v361=v12[g360];
-v12[g360]=v359;
-v362=a0["depth"];
-v364=v12[g363];
-v12[g363]=v362;
-v366=g365.state;
-g365.state=1;
-v367=g365.x;
-g365.x=0;
-v368=g365.y;
-g365.y=0;
-v369=g365.z;
-g365.z=0;
-v370=g365.w;
-g365.w=0;
-v371=g365.buffer;
-g365.buffer=g211;
-v372=g365.size;
-g365.size=0;
-v373=g365.normalized;
-g365.normalized=false;
-v374=g365.type;
-g365.type=5126;
-v375=g365.offset;
-g365.offset=0;
-v376=g365.stride;
-g365.stride=8;
-v377=g365.divisor;
-g365.divisor=0;
-v379=g378.state;
-g378.state=1;
-v380=g378.x;
-g378.x=0;
-v381=g378.y;
-g378.y=0;
-v382=g378.z;
-g378.z=0;
-v383=g378.w;
-g378.w=0;
-v384=g378.buffer;
-g378.buffer=g211;
-v385=g378.size;
-g378.size=0;
-v386=g378.normalized;
-g378.normalized=false;
-v387=g378.type;
-g378.type=5126;
-v388=g378.offset;
-g378.offset=4;
-v389=g378.stride;
-g378.stride=8;
-v390=g378.divisor;
-g378.divisor=0;
-v391=a0["positionBuffer"];
-v53.buffer=v391;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g117,g19);
-v392=false;
-v393=1;
-v394=0;
-v395=0;
-v396=0;
-v397=0;
-v398=null;
-v399=0;
-v400=false;
-v401=5126;
-v402=0;
-v403=0;
-v404=0;
-if(v16(v53)){
-v392=true;
-v398=v8.createStream(34962,v53);
-v401=v398.dtype;
-}
-else{
-v398=v8.getBuffer(v53);
-if(v398){
-v401=v398.dtype;
-}
-else if("constant" in v53){
-v393=2;
-if(typeof v53.constant === "number"){
-v394=v53.constant;
-v395=v396=v397=0;
-}
-else{
-v394=v53.constant.length>0?v53.constant[0]:0;
-v395=v53.constant.length>1?v53.constant[1]:0;
-v396=v53.constant.length>2?v53.constant[2]:0;
-v397=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v398=v8.createStream(34962,v53.buffer);
-}
-else{
-v398=v8.getBuffer(v53.buffer);
-}
-v401="type" in v53?v49[v53.type]:v398.dtype;
-v400=!!v53.normalized;
-v399=v53.size|0;
-v402=v53.offset|0;
-v403=v53.stride|0;
-v404=v53.divisor|0;
-}
-}
-v406=g405.state;
-g405.state=v393;
-v407=g405.x;
-g405.x=v394;
-v408=g405.y;
-g405.y=v395;
-v409=g405.z;
-g405.z=v396;
-v410=g405.w;
-g405.w=v397;
-v411=g405.buffer;
-g405.buffer=v398;
-v412=g405.size;
-g405.size=v399;
-v413=g405.normalized;
-g405.normalized=v400;
-v414=g405.type;
-g405.type=v401;
-v415=g405.offset;
-g405.offset=v402;
-v416=g405.stride;
-g405.stride=v403;
-v417=g405.divisor;
-g405.divisor=v404;
-v418=a0["positionBuffer"];
-v54.buffer=v418;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g155,g19);
-v419=false;
-v420=1;
-v421=0;
-v422=0;
-v423=0;
-v424=0;
-v425=null;
-v426=0;
-v427=false;
-v428=5126;
-v429=0;
-v430=0;
-v431=0;
-if(v16(v54)){
-v419=true;
-v425=v8.createStream(34962,v54);
-v428=v425.dtype;
-}
-else{
-v425=v8.getBuffer(v54);
-if(v425){
-v428=v425.dtype;
-}
-else if("constant" in v54){
-v420=2;
-if(typeof v54.constant === "number"){
-v421=v54.constant;
-v422=v423=v424=0;
-}
-else{
-v421=v54.constant.length>0?v54.constant[0]:0;
-v422=v54.constant.length>1?v54.constant[1]:0;
-v423=v54.constant.length>2?v54.constant[2]:0;
-v424=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v425=v8.createStream(34962,v54.buffer);
-}
-else{
-v425=v8.getBuffer(v54.buffer);
-}
-v428="type" in v54?v49[v54.type]:v425.dtype;
-v427=!!v54.normalized;
-v426=v54.size|0;
-v429=v54.offset|0;
-v430=v54.stride|0;
-v431=v54.divisor|0;
-}
-}
-v433=g432.state;
-g432.state=v420;
-v434=g432.x;
-g432.x=v421;
-v435=g432.y;
-g432.y=v422;
-v436=g432.z;
-g432.z=v423;
-v437=g432.w;
-g432.w=v424;
-v438=g432.buffer;
-g432.buffer=v425;
-v439=g432.size;
-g432.size=v426;
-v440=g432.normalized;
-g432.normalized=v427;
-v441=g432.type;
-g432.type=v428;
-v442=g432.offset;
-g432.offset=v429;
-v443=g432.stride;
-g432.stride=v430;
-v444=g432.divisor;
-g432.divisor=v431;
-v445=a0["positionFractBuffer"];
-v55.buffer=v445;
-if(!(v55&&(typeof v55==="object"||typeof v55==="function")&&(v16(v55)||v8.getBuffer(v55)||v8.getBuffer(v55.buffer)||v16(v55.buffer)||("constant" in v55&&(typeof v55.constant==="number"||v17(v55.constant))))))g18.commandRaise(g136,g19);
-v446=false;
-v447=1;
-v448=0;
-v449=0;
-v450=0;
-v451=0;
-v452=null;
-v453=0;
-v454=false;
-v455=5126;
-v456=0;
-v457=0;
-v458=0;
-if(v16(v55)){
-v446=true;
-v452=v8.createStream(34962,v55);
-v455=v452.dtype;
-}
-else{
-v452=v8.getBuffer(v55);
-if(v452){
-v455=v452.dtype;
-}
-else if("constant" in v55){
-v447=2;
-if(typeof v55.constant === "number"){
-v448=v55.constant;
-v449=v450=v451=0;
-}
-else{
-v448=v55.constant.length>0?v55.constant[0]:0;
-v449=v55.constant.length>1?v55.constant[1]:0;
-v450=v55.constant.length>2?v55.constant[2]:0;
-v451=v55.constant.length>3?v55.constant[3]:0;
-}
-}
-else{
-if(v16(v55.buffer)){
-v452=v8.createStream(34962,v55.buffer);
-}
-else{
-v452=v8.getBuffer(v55.buffer);
-}
-v455="type" in v55?v49[v55.type]:v452.dtype;
-v454=!!v55.normalized;
-v453=v55.size|0;
-v456=v55.offset|0;
-v457=v55.stride|0;
-v458=v55.divisor|0;
-}
-}
-v460=g459.state;
-g459.state=v447;
-v461=g459.x;
-g459.x=v448;
-v462=g459.y;
-g459.y=v449;
-v463=g459.z;
-g459.z=v450;
-v464=g459.w;
-g459.w=v451;
-v465=g459.buffer;
-g459.buffer=v452;
-v466=g459.size;
-g459.size=v453;
-v467=g459.normalized;
-g459.normalized=v454;
-v468=g459.type;
-g459.type=v455;
-v469=g459.offset;
-g459.offset=v456;
-v470=g459.stride;
-g459.stride=v457;
-v471=g459.divisor;
-g459.divisor=v458;
-v472=a0["positionFractBuffer"];
-v56.buffer=v472;
-if(!(v56&&(typeof v56==="object"||typeof v56==="function")&&(v16(v56)||v8.getBuffer(v56)||v8.getBuffer(v56.buffer)||v16(v56.buffer)||("constant" in v56&&(typeof v56.constant==="number"||v17(v56.constant))))))g18.commandRaise(g174,g19);
-v473=false;
-v474=1;
-v475=0;
-v476=0;
-v477=0;
-v478=0;
-v479=null;
-v480=0;
-v481=false;
-v482=5126;
-v483=0;
-v484=0;
-v485=0;
-if(v16(v56)){
-v473=true;
-v479=v8.createStream(34962,v56);
-v482=v479.dtype;
-}
-else{
-v479=v8.getBuffer(v56);
-if(v479){
-v482=v479.dtype;
-}
-else if("constant" in v56){
-v474=2;
-if(typeof v56.constant === "number"){
-v475=v56.constant;
-v476=v477=v478=0;
-}
-else{
-v475=v56.constant.length>0?v56.constant[0]:0;
-v476=v56.constant.length>1?v56.constant[1]:0;
-v477=v56.constant.length>2?v56.constant[2]:0;
-v478=v56.constant.length>3?v56.constant[3]:0;
-}
-}
-else{
-if(v16(v56.buffer)){
-v479=v8.createStream(34962,v56.buffer);
-}
-else{
-v479=v8.getBuffer(v56.buffer);
-}
-v482="type" in v56?v49[v56.type]:v479.dtype;
-v481=!!v56.normalized;
-v480=v56.size|0;
-v483=v56.offset|0;
-v484=v56.stride|0;
-v485=v56.divisor|0;
-}
-}
-v487=g486.state;
-g486.state=v474;
-v488=g486.x;
-g486.x=v475;
-v489=g486.y;
-g486.y=v476;
-v490=g486.z;
-g486.z=v477;
-v491=g486.w;
-g486.w=v478;
-v492=g486.buffer;
-g486.buffer=v479;
-v493=g486.size;
-g486.size=v480;
-v494=g486.normalized;
-g486.normalized=v481;
-v495=g486.type;
-g486.type=v482;
-v496=g486.offset;
-g486.offset=v483;
-v497=g486.stride;
-g486.stride=v484;
-v498=g486.divisor;
-g486.divisor=v485;
-v499=a0["colorBuffer"];
-v57.buffer=v499;
-if(!(v57&&(typeof v57==="object"||typeof v57==="function")&&(v16(v57)||v8.getBuffer(v57)||v8.getBuffer(v57.buffer)||v16(v57.buffer)||("constant" in v57&&(typeof v57.constant==="number"||v17(v57.constant))))))g18.commandRaise(g193,g19);
-v500=false;
-v501=1;
-v502=0;
-v503=0;
-v504=0;
-v505=0;
-v506=null;
-v507=0;
-v508=false;
-v509=5126;
-v510=0;
-v511=0;
-v512=0;
-if(v16(v57)){
-v500=true;
-v506=v8.createStream(34962,v57);
-v509=v506.dtype;
-}
-else{
-v506=v8.getBuffer(v57);
-if(v506){
-v509=v506.dtype;
-}
-else if("constant" in v57){
-v501=2;
-if(typeof v57.constant === "number"){
-v502=v57.constant;
-v503=v504=v505=0;
-}
-else{
-v502=v57.constant.length>0?v57.constant[0]:0;
-v503=v57.constant.length>1?v57.constant[1]:0;
-v504=v57.constant.length>2?v57.constant[2]:0;
-v505=v57.constant.length>3?v57.constant[3]:0;
-}
-}
-else{
-if(v16(v57.buffer)){
-v506=v8.createStream(34962,v57.buffer);
-}
-else{
-v506=v8.getBuffer(v57.buffer);
-}
-v509="type" in v57?v49[v57.type]:v506.dtype;
-v508=!!v57.normalized;
-v507=v57.size|0;
-v510=v57.offset|0;
-v511=v57.stride|0;
-v512=v57.divisor|0;
-}
-}
-v514=g513.state;
-g513.state=v501;
-v515=g513.x;
-g513.x=v502;
-v516=g513.y;
-g513.y=v503;
-v517=g513.z;
-g513.z=v504;
-v518=g513.w;
-g513.w=v505;
-v519=g513.buffer;
-g513.buffer=v506;
-v520=g513.size;
-g513.size=v507;
-v521=g513.normalized;
-g513.normalized=v508;
-v522=g513.type;
-g513.type=v509;
-v523=g513.offset;
-g513.offset=v510;
-v524=g513.stride;
-g513.stride=v511;
-v525=g513.divisor;
-g513.divisor=v512;
-v527=v9.vert;
-v9.vert=g526;
-v529=v9.frag;
-v9.frag=g528;
-v5.dirty=true;
-a1(v2,a0,a2);
-v2.viewportWidth=v269;
-v2.viewportHeight=v270;
-v42[0]=v271;
-v42[1]=v272;
-v42[2]=v273;
-v42[3]=v274;
-v20[0]=v276;
-v20[1]=v278;
-v20[2]=v280;
-v20[3]=v282;
-v4.blend_enable=v284;
-v22[0]=v286;
-v22[1]=v288;
-v24[0]=v290;
-v24[1]=v292;
-v24[2]=v294;
-v24[3]=v296;
-v4.depth_enable=v298;
-v40[0]=v304;
-v40[1]=v305;
-v40[2]=v306;
-v40[3]=v307;
-v4.scissor_enable=v309;
-v4.stencil_enable=v311;
-if(v312){
-g52.cpuTime+=performance.now()-v313;
-}
-v6.offset=v315;
-v6.count=v317;
-v6.instances=v319;
-v6.primitive=v321;
-v12[g324]=v325;
-v12[g327]=v328;
-v12[g330]=v331;
-v12[g333]=v334;
-v12[g336]=v337;
-v12[g339]=v340;
-v12[g342]=v343;
-v12[g345]=v346;
-v12[g348]=v349;
-v12[g351]=v352;
-v12[g354]=v355;
-v12[g357]=v358;
-v12[g360]=v361;
-v12[g363]=v364;
-g365.state=v366;
-g365.x=v367;
-g365.y=v368;
-g365.z=v369;
-g365.w=v370;
-g365.buffer=v371;
-g365.size=v372;
-g365.normalized=v373;
-g365.type=v374;
-g365.offset=v375;
-g365.stride=v376;
-g365.divisor=v377;
-g378.state=v379;
-g378.x=v380;
-g378.y=v381;
-g378.z=v382;
-g378.w=v383;
-g378.buffer=v384;
-g378.size=v385;
-g378.normalized=v386;
-g378.type=v387;
-g378.offset=v388;
-g378.stride=v389;
-g378.divisor=v390;
-if(v392){
-v8.destroyStream(v398);
-}
-g405.state=v406;
-g405.x=v407;
-g405.y=v408;
-g405.z=v409;
-g405.w=v410;
-g405.buffer=v411;
-g405.size=v412;
-g405.normalized=v413;
-g405.type=v414;
-g405.offset=v415;
-g405.stride=v416;
-g405.divisor=v417;
-if(v419){
-v8.destroyStream(v425);
-}
-g432.state=v433;
-g432.x=v434;
-g432.y=v435;
-g432.z=v436;
-g432.w=v437;
-g432.buffer=v438;
-g432.size=v439;
-g432.normalized=v440;
-g432.type=v441;
-g432.offset=v442;
-g432.stride=v443;
-g432.divisor=v444;
-if(v446){
-v8.destroyStream(v452);
-}
-g459.state=v460;
-g459.x=v461;
-g459.y=v462;
-g459.z=v463;
-g459.w=v464;
-g459.buffer=v465;
-g459.size=v466;
-g459.normalized=v467;
-g459.type=v468;
-g459.offset=v469;
-g459.stride=v470;
-g459.divisor=v471;
-if(v473){
-v8.destroyStream(v479);
-}
-g486.state=v487;
-g486.x=v488;
-g486.y=v489;
-g486.z=v490;
-g486.w=v491;
-g486.buffer=v492;
-g486.size=v493;
-g486.normalized=v494;
-g486.type=v495;
-g486.offset=v496;
-g486.stride=v497;
-g486.divisor=v498;
-if(v500){
-v8.destroyStream(v506);
-}
-g513.state=v514;
-g513.x=v515;
-g513.y=v516;
-g513.z=v517;
-g513.w=v518;
-g513.buffer=v519;
-g513.size=v520;
-g513.normalized=v521;
-g513.type=v522;
-g513.offset=v523;
-g513.stride=v524;
-g513.divisor=v525;
-v9.vert=v527;
-v9.frag=v529;
-v5.dirty=true;
-}
-,"batch":function(a0,a1){
-var v530,v531,v567,v568,v569,v570,v571;
-v530=v14.angle_instanced_arrays;
-v531=v13.next;
-if(v531!==v13.cur){
-if(v531){
-v1.bindFramebuffer(36160,v531.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v531;
-}
-if(v5.dirty){
-var v532,v533,v534,v535,v536,v537,v538,v539,v540,v541,v542,v543,v544,v545,v546,v547,v548,v549,v550,v551,v552,v553,v554,v555,v556,v557,v558,v559,v560,v561,v562,v563;
-v532=v4.dither;
-if(v532!==v5.dither){
-if(v532){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v532;
-}
-v533=v4.depth_func;
-if(v533!==v5.depth_func){
-v1.depthFunc(v533);
-v5.depth_func=v533;
-}
-v534=v26[0];
-v535=v26[1];
-if(v534!==v27[0]||v535!==v27[1]){
-v1.depthRange(v534,v535);
-v27[0]=v534;
-v27[1]=v535;
-}
-v536=v4.depth_mask;
-if(v536!==v5.depth_mask){
-v1.depthMask(v536);
-v5.depth_mask=v536;
-}
-v537=v28[0];
-v538=v28[1];
-v539=v28[2];
-v540=v28[3];
-if(v537!==v29[0]||v538!==v29[1]||v539!==v29[2]||v540!==v29[3]){
-v1.colorMask(v537,v538,v539,v540);
-v29[0]=v537;
-v29[1]=v538;
-v29[2]=v539;
-v29[3]=v540;
-}
-v541=v4.cull_enable;
-if(v541!==v5.cull_enable){
-if(v541){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v541;
-}
-v542=v4.cull_face;
-if(v542!==v5.cull_face){
-v1.cullFace(v542);
-v5.cull_face=v542;
-}
-v543=v4.frontFace;
-if(v543!==v5.frontFace){
-v1.frontFace(v543);
-v5.frontFace=v543;
-}
-v544=v4.lineWidth;
-if(v544!==v5.lineWidth){
-v1.lineWidth(v544);
-v5.lineWidth=v544;
-}
-v545=v4.polygonOffset_enable;
-if(v545!==v5.polygonOffset_enable){
-if(v545){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v545;
-}
-v546=v30[0];
-v547=v30[1];
-if(v546!==v31[0]||v547!==v31[1]){
-v1.polygonOffset(v546,v547);
-v31[0]=v546;
-v31[1]=v547;
-}
-v548=v4.sample_alpha;
-if(v548!==v5.sample_alpha){
-if(v548){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v548;
-}
-v549=v4.sample_enable;
-if(v549!==v5.sample_enable){
-if(v549){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v549;
-}
-v550=v32[0];
-v551=v32[1];
-if(v550!==v33[0]||v551!==v33[1]){
-v1.sampleCoverage(v550,v551);
-v33[0]=v550;
-v33[1]=v551;
-}
-v552=v4.stencil_mask;
-if(v552!==v5.stencil_mask){
-v1.stencilMask(v552);
-v5.stencil_mask=v552;
-}
-v553=v34[0];
-v554=v34[1];
-v555=v34[2];
-if(v553!==v35[0]||v554!==v35[1]||v555!==v35[2]){
-v1.stencilFunc(v553,v554,v555);
-v35[0]=v553;
-v35[1]=v554;
-v35[2]=v555;
-}
-v556=v36[0];
-v557=v36[1];
-v558=v36[2];
-v559=v36[3];
-if(v556!==v37[0]||v557!==v37[1]||v558!==v37[2]||v559!==v37[3]){
-v1.stencilOpSeparate(v556,v557,v558,v559);
-v37[0]=v556;
-v37[1]=v557;
-v37[2]=v558;
-v37[3]=v559;
-}
-v560=v38[0];
-v561=v38[1];
-v562=v38[2];
-v563=v38[3];
-if(v560!==v39[0]||v561!==v39[1]||v562!==v39[2]||v563!==v39[3]){
-v1.stencilOpSeparate(v560,v561,v562,v563);
-v39[0]=v560;
-v39[1]=v561;
-v39[2]=v562;
-v39[3]=v563;
-}
-}
-v1.blendColor(0,0,0,0);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=0;
-if(g564){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g564;
-v1.blendEquationSeparate(32774,32774);
-v23[0]=32774;
-v23[1]=32774;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g565){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g565;
-if(g566){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g566;
-v567=v5.profile;
-if(v567){
-v568=performance.now();
-g52.count+=a1;
-}
-v1.useProgram(g114.program);
-v569=v14.angle_instanced_arrays;
-var v585,v586,v587,v588,v713;
-v11.setVAO(null);
-v585=g212.location;
-v586=v10[v585];
-if(!v586.buffer){
-v1.enableVertexAttribArray(v585);
-}
-if(v586.type!==5126||v586.size!==1||v586.buffer!==g211||v586.normalized!==false||v586.offset!==0||v586.stride!==8){
-v1.bindBuffer(34962,g211.buffer);
-v1.vertexAttribPointer(v585,1,5126,false,8,0);
-v586.type=5126;
-v586.size=1;
-v586.buffer=g211;
-v586.normalized=false;
-v586.offset=0;
-v586.stride=8;
-}
-if(v586.divisor!==0){
-v569.vertexAttribDivisorANGLE(v585,0);
-v586.divisor=0;
-}
-v587=g215.location;
-v588=v10[v587];
-if(!v588.buffer){
-v1.enableVertexAttribArray(v587);
-}
-if(v588.type!==5126||v588.size!==1||v588.buffer!==g211||v588.normalized!==false||v588.offset!==4||v588.stride!==8){
-v1.bindBuffer(34962,g211.buffer);
-v1.vertexAttribPointer(v587,1,5126,false,8,4);
-v588.type=5126;
-v588.size=1;
-v588.buffer=g211;
-v588.normalized=false;
-v588.offset=4;
-v588.stride=8;
-}
-if(v588.divisor!==0){
-v569.vertexAttribDivisorANGLE(v587,0);
-v588.divisor=0;
-}
-v713=v6.elements;
-if(v713){
-v1.bindBuffer(34963,v713.buffer.buffer);
-}
-else if(v11.currentVAO){
-v713=v7.getElements(v11.currentVAO.elements);
-if(v713)v1.bindBuffer(34963,v713.buffer.buffer);
-}
-for(v570=0;
-v570<a1;
-++v570){
-v571=a0[v570];
-var v572,v573,v574,v575,v576,v577,v578,v579,v580,v581,v582,v583,v584,v589,v590,v591,v592,v593,v594,v595,v596,v597,v598,v599,v600,v601,v602,v603,v604,v605,v606,v607,v608,v609,v610,v611,v612,v613,v614,v615,v616,v617,v618,v619,v620,v621,v622,v623,v624,v625,v626,v627,v628,v629,v630,v631,v632,v633,v634,v635,v636,v637,v638,v639,v640,v641,v642,v643,v644,v645,v646,v647,v648,v649,v650,v651,v652,v653,v654,v655,v656,v657,v658,v659,v660,v661,v662,v663,v664,v665,v666,v667,v668,v669,v670,v671,v672,v673,v674,v675,v676,v677,v678,v679,v680,v681,v682,v683,v684,v685,v686,v687,v688,v689,v690,v691,v692,v693,v694,v695,v696,v697,v698,v699,v700,v701,v702,v703,v704,v705,v706,v707,v708,v709,v710,v711,v712,v714;
-v572=v571["viewport"];
-if(!(v572&&typeof v572==="object"))g18.commandRaise(g93,g19);
-v573=v572.x|0;
-v574=v572.y|0;
-v575="width" in v572?v572.width|0:(v2.framebufferWidth-v573);
-v576="height" in v572?v572.height|0:(v2.framebufferHeight-v574);
-if(!(v575>=0&&v576>=0))g18.commandRaise(g93,g19);
-v577=v2.viewportWidth;
-v2.viewportWidth=v575;
-v578=v2.viewportHeight;
-v2.viewportHeight=v576;
-v1.viewport(v573,v574,v575,v576);
-v43[0]=v573;
-v43[1]=v574;
-v43[2]=v575;
-v43[3]=v576;
-v579=g101.call(this,v2,v571,v570);
-if(!(typeof v579==="boolean"))g18.commandRaise(g103,g19);
-if(v579){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v579;
-v580=v571["viewport"];
-if(!(v580&&typeof v580==="object"))g18.commandRaise(g105,g19);
-v581=v580.x|0;
-v582=v580.y|0;
-v583="width" in v580?v580.width|0:(v2.framebufferWidth-v581);
-v584="height" in v580?v580.height|0:(v2.framebufferHeight-v582);
-if(!(v583>=0&&v584>=0))g18.commandRaise(g105,g19);
-v1.scissor(v581,v582,v583,v584);
-v41[0]=v581;
-v41[1]=v582;
-v41[2]=v583;
-v41[3]=v584;
-v589=v571["positionBuffer"];
-v53.buffer=v589;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g117,g19);
-v590=false;
-v591=1;
-v592=0;
-v593=0;
-v594=0;
-v595=0;
-v596=null;
-v597=0;
-v598=false;
-v599=5126;
-v600=0;
-v601=0;
-v602=0;
-if(v16(v53)){
-v590=true;
-v596=v8.createStream(34962,v53);
-v599=v596.dtype;
-}
-else{
-v596=v8.getBuffer(v53);
-if(v596){
-v599=v596.dtype;
-}
-else if("constant" in v53){
-v591=2;
-if(typeof v53.constant === "number"){
-v592=v53.constant;
-v593=v594=v595=0;
-}
-else{
-v592=v53.constant.length>0?v53.constant[0]:0;
-v593=v53.constant.length>1?v53.constant[1]:0;
-v594=v53.constant.length>2?v53.constant[2]:0;
-v595=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v596=v8.createStream(34962,v53.buffer);
-}
-else{
-v596=v8.getBuffer(v53.buffer);
-}
-v599="type" in v53?v49[v53.type]:v596.dtype;
-v598=!!v53.normalized;
-v597=v53.size|0;
-v600=v53.offset|0;
-v601=v53.stride|0;
-v602=v53.divisor|0;
-}
-}
-v603=g131.location;
-v604=v10[v603];
-if(v591===1){
-if(!v604.buffer){
-v1.enableVertexAttribArray(v603);
-}
-v605=v597||2;
-if(v604.type!==v599||v604.size!==v605||v604.buffer!==v596||v604.normalized!==v598||v604.offset!==v600||v604.stride!==v601){
-v1.bindBuffer(34962,v596.buffer);
-v1.vertexAttribPointer(v603,v605,v599,v598,v601,v600);
-v604.type=v599;
-v604.size=v605;
-v604.buffer=v596;
-v604.normalized=v598;
-v604.offset=v600;
-v604.stride=v601;
-}
-if(v604.divisor!==v602){
-v569.vertexAttribDivisorANGLE(v603,v602);
-v604.divisor=v602;
-}
-}
-else{
-if(v604.buffer){
-v1.disableVertexAttribArray(v603);
-v604.buffer=null;
-}
-if(v604.x!==v592||v604.y!==v593||v604.z!==v594||v604.w!==v595){
-v1.vertexAttrib4f(v603,v592,v593,v594,v595);
-v604.x=v592;
-v604.y=v593;
-v604.z=v594;
-v604.w=v595;
-}
-}
-v606=v571["positionFractBuffer"];
-v55.buffer=v606;
-if(!(v55&&(typeof v55==="object"||typeof v55==="function")&&(v16(v55)||v8.getBuffer(v55)||v8.getBuffer(v55.buffer)||v16(v55.buffer)||("constant" in v55&&(typeof v55.constant==="number"||v17(v55.constant))))))g18.commandRaise(g136,g19);
-v607=false;
-v608=1;
-v609=0;
-v610=0;
-v611=0;
-v612=0;
-v613=null;
-v614=0;
-v615=false;
-v616=5126;
-v617=0;
-v618=0;
-v619=0;
-if(v16(v55)){
-v607=true;
-v613=v8.createStream(34962,v55);
-v616=v613.dtype;
-}
-else{
-v613=v8.getBuffer(v55);
-if(v613){
-v616=v613.dtype;
-}
-else if("constant" in v55){
-v608=2;
-if(typeof v55.constant === "number"){
-v609=v55.constant;
-v610=v611=v612=0;
-}
-else{
-v609=v55.constant.length>0?v55.constant[0]:0;
-v610=v55.constant.length>1?v55.constant[1]:0;
-v611=v55.constant.length>2?v55.constant[2]:0;
-v612=v55.constant.length>3?v55.constant[3]:0;
-}
-}
-else{
-if(v16(v55.buffer)){
-v613=v8.createStream(34962,v55.buffer);
-}
-else{
-v613=v8.getBuffer(v55.buffer);
-}
-v616="type" in v55?v49[v55.type]:v613.dtype;
-v615=!!v55.normalized;
-v614=v55.size|0;
-v617=v55.offset|0;
-v618=v55.stride|0;
-v619=v55.divisor|0;
-}
-}
-v620=g150.location;
-v621=v10[v620];
-if(v608===1){
-if(!v621.buffer){
-v1.enableVertexAttribArray(v620);
-}
-v622=v614||2;
-if(v621.type!==v616||v621.size!==v622||v621.buffer!==v613||v621.normalized!==v615||v621.offset!==v617||v621.stride!==v618){
-v1.bindBuffer(34962,v613.buffer);
-v1.vertexAttribPointer(v620,v622,v616,v615,v618,v617);
-v621.type=v616;
-v621.size=v622;
-v621.buffer=v613;
-v621.normalized=v615;
-v621.offset=v617;
-v621.stride=v618;
-}
-if(v621.divisor!==v619){
-v569.vertexAttribDivisorANGLE(v620,v619);
-v621.divisor=v619;
-}
-}
-else{
-if(v621.buffer){
-v1.disableVertexAttribArray(v620);
-v621.buffer=null;
-}
-if(v621.x!==v609||v621.y!==v610||v621.z!==v611||v621.w!==v612){
-v1.vertexAttrib4f(v620,v609,v610,v611,v612);
-v621.x=v609;
-v621.y=v610;
-v621.z=v611;
-v621.w=v612;
-}
-}
-v623=v571["positionBuffer"];
-v54.buffer=v623;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g155,g19);
-v624=false;
-v625=1;
-v626=0;
-v627=0;
-v628=0;
-v629=0;
-v630=null;
-v631=0;
-v632=false;
-v633=5126;
-v634=0;
-v635=0;
-v636=0;
-if(v16(v54)){
-v624=true;
-v630=v8.createStream(34962,v54);
-v633=v630.dtype;
-}
-else{
-v630=v8.getBuffer(v54);
-if(v630){
-v633=v630.dtype;
-}
-else if("constant" in v54){
-v625=2;
-if(typeof v54.constant === "number"){
-v626=v54.constant;
-v627=v628=v629=0;
-}
-else{
-v626=v54.constant.length>0?v54.constant[0]:0;
-v627=v54.constant.length>1?v54.constant[1]:0;
-v628=v54.constant.length>2?v54.constant[2]:0;
-v629=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v630=v8.createStream(34962,v54.buffer);
-}
-else{
-v630=v8.getBuffer(v54.buffer);
-}
-v633="type" in v54?v49[v54.type]:v630.dtype;
-v632=!!v54.normalized;
-v631=v54.size|0;
-v634=v54.offset|0;
-v635=v54.stride|0;
-v636=v54.divisor|0;
-}
-}
-v637=g169.location;
-v638=v10[v637];
-if(v625===1){
-if(!v638.buffer){
-v1.enableVertexAttribArray(v637);
-}
-v639=v631||2;
-if(v638.type!==v633||v638.size!==v639||v638.buffer!==v630||v638.normalized!==v632||v638.offset!==v634||v638.stride!==v635){
-v1.bindBuffer(34962,v630.buffer);
-v1.vertexAttribPointer(v637,v639,v633,v632,v635,v634);
-v638.type=v633;
-v638.size=v639;
-v638.buffer=v630;
-v638.normalized=v632;
-v638.offset=v634;
-v638.stride=v635;
-}
-if(v638.divisor!==v636){
-v569.vertexAttribDivisorANGLE(v637,v636);
-v638.divisor=v636;
-}
-}
-else{
-if(v638.buffer){
-v1.disableVertexAttribArray(v637);
-v638.buffer=null;
-}
-if(v638.x!==v626||v638.y!==v627||v638.z!==v628||v638.w!==v629){
-v1.vertexAttrib4f(v637,v626,v627,v628,v629);
-v638.x=v626;
-v638.y=v627;
-v638.z=v628;
-v638.w=v629;
-}
-}
-v640=v571["positionFractBuffer"];
-v56.buffer=v640;
-if(!(v56&&(typeof v56==="object"||typeof v56==="function")&&(v16(v56)||v8.getBuffer(v56)||v8.getBuffer(v56.buffer)||v16(v56.buffer)||("constant" in v56&&(typeof v56.constant==="number"||v17(v56.constant))))))g18.commandRaise(g174,g19);
-v641=false;
-v642=1;
-v643=0;
-v644=0;
-v645=0;
-v646=0;
-v647=null;
-v648=0;
-v649=false;
-v650=5126;
-v651=0;
-v652=0;
-v653=0;
-if(v16(v56)){
-v641=true;
-v647=v8.createStream(34962,v56);
-v650=v647.dtype;
-}
-else{
-v647=v8.getBuffer(v56);
-if(v647){
-v650=v647.dtype;
-}
-else if("constant" in v56){
-v642=2;
-if(typeof v56.constant === "number"){
-v643=v56.constant;
-v644=v645=v646=0;
-}
-else{
-v643=v56.constant.length>0?v56.constant[0]:0;
-v644=v56.constant.length>1?v56.constant[1]:0;
-v645=v56.constant.length>2?v56.constant[2]:0;
-v646=v56.constant.length>3?v56.constant[3]:0;
-}
-}
-else{
-if(v16(v56.buffer)){
-v647=v8.createStream(34962,v56.buffer);
-}
-else{
-v647=v8.getBuffer(v56.buffer);
-}
-v650="type" in v56?v49[v56.type]:v647.dtype;
-v649=!!v56.normalized;
-v648=v56.size|0;
-v651=v56.offset|0;
-v652=v56.stride|0;
-v653=v56.divisor|0;
-}
-}
-v654=g188.location;
-v655=v10[v654];
-if(v642===1){
-if(!v655.buffer){
-v1.enableVertexAttribArray(v654);
-}
-v656=v648||2;
-if(v655.type!==v650||v655.size!==v656||v655.buffer!==v647||v655.normalized!==v649||v655.offset!==v651||v655.stride!==v652){
-v1.bindBuffer(34962,v647.buffer);
-v1.vertexAttribPointer(v654,v656,v650,v649,v652,v651);
-v655.type=v650;
-v655.size=v656;
-v655.buffer=v647;
-v655.normalized=v649;
-v655.offset=v651;
-v655.stride=v652;
-}
-if(v655.divisor!==v653){
-v569.vertexAttribDivisorANGLE(v654,v653);
-v655.divisor=v653;
-}
-}
-else{
-if(v655.buffer){
-v1.disableVertexAttribArray(v654);
-v655.buffer=null;
-}
-if(v655.x!==v643||v655.y!==v644||v655.z!==v645||v655.w!==v646){
-v1.vertexAttrib4f(v654,v643,v644,v645,v646);
-v655.x=v643;
-v655.y=v644;
-v655.z=v645;
-v655.w=v646;
-}
-}
-v657=v571["colorBuffer"];
-v57.buffer=v657;
-if(!(v57&&(typeof v57==="object"||typeof v57==="function")&&(v16(v57)||v8.getBuffer(v57)||v8.getBuffer(v57.buffer)||v16(v57.buffer)||("constant" in v57&&(typeof v57.constant==="number"||v17(v57.constant))))))g18.commandRaise(g193,g19);
-v658=false;
-v659=1;
-v660=0;
-v661=0;
-v662=0;
-v663=0;
-v664=null;
-v665=0;
-v666=false;
-v667=5126;
-v668=0;
-v669=0;
-v670=0;
-if(v16(v57)){
-v658=true;
-v664=v8.createStream(34962,v57);
-v667=v664.dtype;
-}
-else{
-v664=v8.getBuffer(v57);
-if(v664){
-v667=v664.dtype;
-}
-else if("constant" in v57){
-v659=2;
-if(typeof v57.constant === "number"){
-v660=v57.constant;
-v661=v662=v663=0;
-}
-else{
-v660=v57.constant.length>0?v57.constant[0]:0;
-v661=v57.constant.length>1?v57.constant[1]:0;
-v662=v57.constant.length>2?v57.constant[2]:0;
-v663=v57.constant.length>3?v57.constant[3]:0;
-}
-}
-else{
-if(v16(v57.buffer)){
-v664=v8.createStream(34962,v57.buffer);
-}
-else{
-v664=v8.getBuffer(v57.buffer);
-}
-v667="type" in v57?v49[v57.type]:v664.dtype;
-v666=!!v57.normalized;
-v665=v57.size|0;
-v668=v57.offset|0;
-v669=v57.stride|0;
-v670=v57.divisor|0;
-}
-}
-v671=g207.location;
-v672=v10[v671];
-if(v659===1){
-if(!v672.buffer){
-v1.enableVertexAttribArray(v671);
-}
-v673=v665||4;
-if(v672.type!==v667||v672.size!==v673||v672.buffer!==v664||v672.normalized!==v666||v672.offset!==v668||v672.stride!==v669){
-v1.bindBuffer(34962,v664.buffer);
-v1.vertexAttribPointer(v671,v673,v667,v666,v669,v668);
-v672.type=v667;
-v672.size=v673;
-v672.buffer=v664;
-v672.normalized=v666;
-v672.offset=v668;
-v672.stride=v669;
-}
-if(v672.divisor!==v670){
-v569.vertexAttribDivisorANGLE(v671,v670);
-v672.divisor=v670;
-}
-}
-else{
-if(v672.buffer){
-v1.disableVertexAttribArray(v671);
-v672.buffer=null;
-}
-if(v672.x!==v660||v672.y!==v661||v672.z!==v662||v672.w!==v663){
-v1.vertexAttrib4f(v671,v660,v661,v662,v663);
-v672.x=v660;
-v672.y=v661;
-v672.z=v662;
-v672.w=v663;
-}
-}
-v674=v571["dashLength"];
-if(!(typeof v674==="number"))g18.commandRaise(g220,g19);
-if(!v570||v675!==v674){
-v675=v674;
-v1.uniform1f(g218.location,v674);
-}
-v676=v571["dashTexture"];
-if(v676&&v676._reglType==="framebuffer"){
-v676=v676.color[0];
-}
-if(!(typeof v676==="function"&&v676._reglType==="texture2d"))g18.commandRaise(g223,g19);
-v677=v676._texture;
-v1.uniform1i(g221.location,v677.bind());
-v678=v571["depth"];
-if(!(typeof v678==="number"))g18.commandRaise(g227,g19);
-if(!v570||v679!==v678){
-v679=v678;
-v1.uniform1f(g225.location,v678);
-}
-v680=v571["opacity"];
-if(!(typeof v680==="number"))g18.commandRaise(g230,g19);
-if(!v570||v681!==v680){
-v681=v680;
-v1.uniform1f(g228.location,v680);
-}
-v682=v571["scale"];
-if(!(v17(v682)&&v682.length===2))g18.commandRaise(g233,g19);
-v683=v682[0];
-v685=v682[1];
-if(!v570||v684!==v683||v686!==v685){
-v684=v683;
-v686=v685;
-v1.uniform2f(g231.location,v683,v685);
-}
-v687=v571["scaleFract"];
-if(!(v17(v687)&&v687.length===2))g18.commandRaise(g238,g19);
-v688=v687[0];
-v690=v687[1];
-if(!v570||v689!==v688||v691!==v690){
-v689=v688;
-v691=v690;
-v1.uniform2f(g236.location,v688,v690);
-}
-v692=v571["thickness"];
-if(!(typeof v692==="number"))g18.commandRaise(g243,g19);
-if(!v570||v693!==v692){
-v693=v692;
-v1.uniform1f(g241.location,v692);
-}
-v694=v571["translate"];
-if(!(v17(v694)&&v694.length===2))g18.commandRaise(g246,g19);
-v695=v694[0];
-v697=v694[1];
-if(!v570||v696!==v695||v698!==v697){
-v696=v695;
-v698=v697;
-v1.uniform2f(g244.location,v695,v697);
-}
-v699=v571["translateFract"];
-if(!(v17(v699)&&v699.length===2))g18.commandRaise(g251,g19);
-v700=v699[0];
-v702=v699[1];
-if(!v570||v701!==v700||v703!==v702){
-v701=v700;
-v703=v702;
-v1.uniform2f(g249.location,v700,v702);
-}
-v704=g255.call(this,v2,v571,v570);
-if(!(v17(v704)&&v704.length===4))g18.commandRaise(g257,g19);
-v705=v704[0];
-v707=v704[1];
-v709=v704[2];
-v711=v704[3];
-if(!v570||v706!==v705||v708!==v707||v710!==v709||v712!==v711){
-v706=v705;
-v708=v707;
-v710=v709;
-v712=v711;
-v1.uniform4f(g254.location,v705,v707,v709,v711);
-}
-v714=v571["count"];
-if(v714>0){
-if(v713){
-v569.drawElementsInstancedANGLE(5,4,v713.type,0<<((v713.type-5121)>>1),v714);
-}
-else{
-v569.drawArraysInstancedANGLE(5,0,4,v714);
-}
-}
-else if(v714<0){
-if(v713){
-v1.drawElements(5,4,v713.type,0<<((v713.type-5121)>>1));
-}
-else{
-v1.drawArrays(5,0,4);
-}
-}
-v2.viewportWidth=v577;
-v2.viewportHeight=v578;
-if(v590){
-v8.destroyStream(v596);
-}
-if(v607){
-v8.destroyStream(v613);
-}
-if(v624){
-v8.destroyStream(v630);
-}
-if(v641){
-v8.destroyStream(v647);
-}
-if(v658){
-v8.destroyStream(v664);
-}
-v677.unbind();
-}
-v5.dirty=true;
-v11.setVAO(null);
-if(v567){
-g52.cpuTime+=performance.now()-v568;
-}
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0 b/src/generated/regl-codegen/30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0
new file mode 100644
index 00000000000..967c17e90ca
--- /dev/null
+++ b/src/generated/regl-codegen/30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0
@@ -0,0 +1,658 @@
+module.exports = function anonymous(g0,g48,g114,g124,g126,g132,g134,g194
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v111,v191;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v111={
+}
+;
+v191={
+}
+;
+return {
+"draw":function(a0){
+var v49,v50,v51,v52,v53,v100,v101,v102,v103,v104,v105,v106,v107,v108,v109,v110,v112,v113;
+v49=a0["framebuffer"];
+v50=v13.getFramebuffer(v49);
+v51=v13.next;
+v13.next=v50;
+v52=v2.framebufferWidth;
+v2.framebufferWidth=v50?v50.width:v2.drawingBufferWidth;
+v53=v2.framebufferHeight;
+v2.framebufferHeight=v50?v50.height:v2.drawingBufferHeight;
+if(v50!==v13.cur){
+if(v50){
+v1.bindFramebuffer(36160,v50.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v50;
+}
+if(v5.dirty){
+var v54,v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93,v94,v95,v96,v97,v98,v99;
+v54=v4.dither;
+if(v54!==v5.dither){
+if(v54){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v54;
+}
+v55=v4.blend_enable;
+if(v55!==v5.blend_enable){
+if(v55){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=v55;
+}
+v56=v17[0];
+v57=v17[1];
+v58=v17[2];
+v59=v17[3];
+if(v56!==v18[0]||v57!==v18[1]||v58!==v18[2]||v59!==v18[3]){
+v1.blendColor(v56,v57,v58,v59);
+v18[0]=v56;
+v18[1]=v57;
+v18[2]=v58;
+v18[3]=v59;
+}
+v60=v19[0];
+v61=v19[1];
+if(v60!==v20[0]||v61!==v20[1]){
+v1.blendEquationSeparate(v60,v61);
+v20[0]=v60;
+v20[1]=v61;
+}
+v62=v21[0];
+v63=v21[1];
+v64=v21[2];
+v65=v21[3];
+if(v62!==v22[0]||v63!==v22[1]||v64!==v22[2]||v65!==v22[3]){
+v1.blendFuncSeparate(v62,v63,v64,v65);
+v22[0]=v62;
+v22[1]=v63;
+v22[2]=v64;
+v22[3]=v65;
+}
+v66=v4.depth_enable;
+if(v66!==v5.depth_enable){
+if(v66){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v66;
+}
+v67=v4.depth_func;
+if(v67!==v5.depth_func){
+v1.depthFunc(v67);
+v5.depth_func=v67;
+}
+v68=v23[0];
+v69=v23[1];
+if(v68!==v24[0]||v69!==v24[1]){
+v1.depthRange(v68,v69);
+v24[0]=v68;
+v24[1]=v69;
+}
+v70=v4.depth_mask;
+if(v70!==v5.depth_mask){
+v1.depthMask(v70);
+v5.depth_mask=v70;
+}
+v71=v25[0];
+v72=v25[1];
+v73=v25[2];
+v74=v25[3];
+if(v71!==v26[0]||v72!==v26[1]||v73!==v26[2]||v74!==v26[3]){
+v1.colorMask(v71,v72,v73,v74);
+v26[0]=v71;
+v26[1]=v72;
+v26[2]=v73;
+v26[3]=v74;
+}
+v75=v4.cull_enable;
+if(v75!==v5.cull_enable){
+if(v75){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v75;
+}
+v76=v4.cull_face;
+if(v76!==v5.cull_face){
+v1.cullFace(v76);
+v5.cull_face=v76;
+}
+v77=v4.frontFace;
+if(v77!==v5.frontFace){
+v1.frontFace(v77);
+v5.frontFace=v77;
+}
+v78=v4.lineWidth;
+if(v78!==v5.lineWidth){
+v1.lineWidth(v78);
+v5.lineWidth=v78;
+}
+v79=v4.polygonOffset_enable;
+if(v79!==v5.polygonOffset_enable){
+if(v79){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v79;
+}
+v80=v27[0];
+v81=v27[1];
+if(v80!==v28[0]||v81!==v28[1]){
+v1.polygonOffset(v80,v81);
+v28[0]=v80;
+v28[1]=v81;
+}
+v82=v4.sample_alpha;
+if(v82!==v5.sample_alpha){
+if(v82){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v82;
+}
+v83=v4.sample_enable;
+if(v83!==v5.sample_enable){
+if(v83){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v83;
+}
+v84=v29[0];
+v85=v29[1];
+if(v84!==v30[0]||v85!==v30[1]){
+v1.sampleCoverage(v84,v85);
+v30[0]=v84;
+v30[1]=v85;
+}
+v86=v4.stencil_enable;
+if(v86!==v5.stencil_enable){
+if(v86){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v86;
+}
+v87=v4.stencil_mask;
+if(v87!==v5.stencil_mask){
+v1.stencilMask(v87);
+v5.stencil_mask=v87;
+}
+v88=v31[0];
+v89=v31[1];
+v90=v31[2];
+if(v88!==v32[0]||v89!==v32[1]||v90!==v32[2]){
+v1.stencilFunc(v88,v89,v90);
+v32[0]=v88;
+v32[1]=v89;
+v32[2]=v90;
+}
+v91=v33[0];
+v92=v33[1];
+v93=v33[2];
+v94=v33[3];
+if(v91!==v34[0]||v92!==v34[1]||v93!==v34[2]||v94!==v34[3]){
+v1.stencilOpSeparate(v91,v92,v93,v94);
+v34[0]=v91;
+v34[1]=v92;
+v34[2]=v93;
+v34[3]=v94;
+}
+v95=v35[0];
+v96=v35[1];
+v97=v35[2];
+v98=v35[3];
+if(v95!==v36[0]||v96!==v36[1]||v97!==v36[2]||v98!==v36[3]){
+v1.stencilOpSeparate(v95,v96,v97,v98);
+v36[0]=v95;
+v36[1]=v96;
+v36[2]=v97;
+v36[3]=v98;
+}
+v99=v4.scissor_enable;
+if(v99!==v5.scissor_enable){
+if(v99){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=v99;
+}
+}
+v100=v2.framebufferWidth;
+v101=v2.framebufferHeight;
+v102=v2.viewportWidth;
+v2.viewportWidth=v100;
+v103=v2.viewportHeight;
+v2.viewportHeight=v101;
+v1.viewport(0,0,v100,v101);
+v40[0]=0;
+v40[1]=0;
+v40[2]=v100;
+v40[3]=v101;
+v104=v2.framebufferWidth;
+v105=v2.framebufferHeight;
+v1.scissor(0,0,v104,v105);
+v38[0]=0;
+v38[1]=0;
+v38[2]=v104;
+v38[3]=v105;
+v106=v5.profile;
+if(v106){
+v107=performance.now();
+g48.count++;
+}
+v108=v9.frag;
+v109=v9.vert;
+v110=v9.program(v109,v108);
+v1.useProgram(v110.program);
+v11.setVAO(null);
+v112=v110.id;
+v113=v111[v112];
+if(v113){
+v113.call(this,a0);
+}
+else{
+v113=v111[v112]=g114(v110);
+v113.call(this,a0);
+}
+v5.dirty=true;
+v11.setVAO(null);
+v13.next=v51;
+v2.framebufferWidth=v52;
+v2.framebufferHeight=v53;
+v2.viewportWidth=v102;
+v2.viewportHeight=v103;
+if(v106){
+g48.cpuTime+=performance.now()-v107;
+}
+}
+,"scope":function(a0,a1,a2){
+var v115,v116,v117,v118,v119,v120,v121,v122,v123,v125,v127,v128,v129,v130,v131,v133,v135,v136,v137,v138,v139;
+v115=a0["framebuffer"];
+v116=v13.getFramebuffer(v115);
+v117=v13.next;
+v13.next=v116;
+v118=v2.framebufferWidth;
+v2.framebufferWidth=v116?v116.width:v2.drawingBufferWidth;
+v119=v2.framebufferHeight;
+v2.framebufferHeight=v116?v116.height:v2.drawingBufferHeight;
+v120=v2.framebufferWidth;
+v121=v2.framebufferHeight;
+v122=v2.viewportWidth;
+v2.viewportWidth=v120;
+v123=v2.viewportHeight;
+v2.viewportHeight=v121;
+v125=v39[0];
+v39[0]=g124;
+v127=v39[1];
+v39[1]=g126;
+v128=v39[2];
+v39[2]=v120;
+v129=v39[3];
+v39[3]=v121;
+v130=v2.framebufferWidth;
+v131=v2.framebufferHeight;
+v133=v37[0];
+v37[0]=g132;
+v135=v37[1];
+v37[1]=g134;
+v136=v37[2];
+v37[2]=v130;
+v137=v37[3];
+v37[3]=v131;
+v138=v5.profile;
+if(v138){
+v139=performance.now();
+g48.count++;
+}
+v5.dirty=true;
+a1(v2,a0,a2);
+v13.next=v117;
+v2.framebufferWidth=v118;
+v2.framebufferHeight=v119;
+v2.viewportWidth=v122;
+v2.viewportHeight=v123;
+v39[0]=v125;
+v39[1]=v127;
+v39[2]=v128;
+v39[3]=v129;
+v37[0]=v133;
+v37[1]=v135;
+v37[2]=v136;
+v37[3]=v137;
+if(v138){
+g48.cpuTime+=performance.now()-v139;
+}
+v5.dirty=true;
+}
+,"batch":function(a0,a1){
+var v186,v187,v188,v189,v190,v192,v193;
+if(v5.dirty){
+var v140,v141,v142,v143,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v174,v175,v176,v177,v178,v179,v180,v181,v182,v183,v184,v185;
+v140=v4.dither;
+if(v140!==v5.dither){
+if(v140){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v140;
+}
+v141=v4.blend_enable;
+if(v141!==v5.blend_enable){
+if(v141){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=v141;
+}
+v142=v17[0];
+v143=v17[1];
+v144=v17[2];
+v145=v17[3];
+if(v142!==v18[0]||v143!==v18[1]||v144!==v18[2]||v145!==v18[3]){
+v1.blendColor(v142,v143,v144,v145);
+v18[0]=v142;
+v18[1]=v143;
+v18[2]=v144;
+v18[3]=v145;
+}
+v146=v19[0];
+v147=v19[1];
+if(v146!==v20[0]||v147!==v20[1]){
+v1.blendEquationSeparate(v146,v147);
+v20[0]=v146;
+v20[1]=v147;
+}
+v148=v21[0];
+v149=v21[1];
+v150=v21[2];
+v151=v21[3];
+if(v148!==v22[0]||v149!==v22[1]||v150!==v22[2]||v151!==v22[3]){
+v1.blendFuncSeparate(v148,v149,v150,v151);
+v22[0]=v148;
+v22[1]=v149;
+v22[2]=v150;
+v22[3]=v151;
+}
+v152=v4.depth_enable;
+if(v152!==v5.depth_enable){
+if(v152){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v152;
+}
+v153=v4.depth_func;
+if(v153!==v5.depth_func){
+v1.depthFunc(v153);
+v5.depth_func=v153;
+}
+v154=v23[0];
+v155=v23[1];
+if(v154!==v24[0]||v155!==v24[1]){
+v1.depthRange(v154,v155);
+v24[0]=v154;
+v24[1]=v155;
+}
+v156=v4.depth_mask;
+if(v156!==v5.depth_mask){
+v1.depthMask(v156);
+v5.depth_mask=v156;
+}
+v157=v25[0];
+v158=v25[1];
+v159=v25[2];
+v160=v25[3];
+if(v157!==v26[0]||v158!==v26[1]||v159!==v26[2]||v160!==v26[3]){
+v1.colorMask(v157,v158,v159,v160);
+v26[0]=v157;
+v26[1]=v158;
+v26[2]=v159;
+v26[3]=v160;
+}
+v161=v4.cull_enable;
+if(v161!==v5.cull_enable){
+if(v161){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v161;
+}
+v162=v4.cull_face;
+if(v162!==v5.cull_face){
+v1.cullFace(v162);
+v5.cull_face=v162;
+}
+v163=v4.frontFace;
+if(v163!==v5.frontFace){
+v1.frontFace(v163);
+v5.frontFace=v163;
+}
+v164=v4.lineWidth;
+if(v164!==v5.lineWidth){
+v1.lineWidth(v164);
+v5.lineWidth=v164;
+}
+v165=v4.polygonOffset_enable;
+if(v165!==v5.polygonOffset_enable){
+if(v165){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v165;
+}
+v166=v27[0];
+v167=v27[1];
+if(v166!==v28[0]||v167!==v28[1]){
+v1.polygonOffset(v166,v167);
+v28[0]=v166;
+v28[1]=v167;
+}
+v168=v4.sample_alpha;
+if(v168!==v5.sample_alpha){
+if(v168){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v168;
+}
+v169=v4.sample_enable;
+if(v169!==v5.sample_enable){
+if(v169){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v169;
+}
+v170=v29[0];
+v171=v29[1];
+if(v170!==v30[0]||v171!==v30[1]){
+v1.sampleCoverage(v170,v171);
+v30[0]=v170;
+v30[1]=v171;
+}
+v172=v4.stencil_enable;
+if(v172!==v5.stencil_enable){
+if(v172){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v172;
+}
+v173=v4.stencil_mask;
+if(v173!==v5.stencil_mask){
+v1.stencilMask(v173);
+v5.stencil_mask=v173;
+}
+v174=v31[0];
+v175=v31[1];
+v176=v31[2];
+if(v174!==v32[0]||v175!==v32[1]||v176!==v32[2]){
+v1.stencilFunc(v174,v175,v176);
+v32[0]=v174;
+v32[1]=v175;
+v32[2]=v176;
+}
+v177=v33[0];
+v178=v33[1];
+v179=v33[2];
+v180=v33[3];
+if(v177!==v34[0]||v178!==v34[1]||v179!==v34[2]||v180!==v34[3]){
+v1.stencilOpSeparate(v177,v178,v179,v180);
+v34[0]=v177;
+v34[1]=v178;
+v34[2]=v179;
+v34[3]=v180;
+}
+v181=v35[0];
+v182=v35[1];
+v183=v35[2];
+v184=v35[3];
+if(v181!==v36[0]||v182!==v36[1]||v183!==v36[2]||v184!==v36[3]){
+v1.stencilOpSeparate(v181,v182,v183,v184);
+v36[0]=v181;
+v36[1]=v182;
+v36[2]=v183;
+v36[3]=v184;
+}
+v185=v4.scissor_enable;
+if(v185!==v5.scissor_enable){
+if(v185){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=v185;
+}
+}
+v186=v5.profile;
+if(v186){
+v187=performance.now();
+g48.count+=a1;
+}
+v188=v9.frag;
+v189=v9.vert;
+v190=v9.program(v189,v188);
+v1.useProgram(v190.program);
+v11.setVAO(null);
+v192=v190.id;
+v193=v191[v192];
+if(v193){
+v193.call(this,a0,a1);
+}
+else{
+v193=v191[v192]=g194(v190);
+v193.call(this,a0,a1);
+}
+v5.dirty=true;
+v11.setVAO(null);
+if(v186){
+g48.cpuTime+=performance.now()-v187;
+}
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b b/src/generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b
new file mode 100644
index 00000000000..48db044ec4f
--- /dev/null
+++ b/src/generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b
@@ -0,0 +1,457 @@
+module.exports = function anonymous(g0,g50,g53
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v63,v64,v65,v66,v67,v68,v71,v72,v75,v76,v83,v84,v85,v86,v89,v90,v91,v92,v93,v94,v95,v96,v97,v98;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v63=v4.blend_color;
+v64=v5.blend_color;
+v65=v4.blend_equation;
+v66=v5.blend_equation;
+v67=v4.blend_func;
+v68=v5.blend_func;
+v71=v4.depth_range;
+v72=v5.depth_range;
+v75=v4.colorMask;
+v76=v5.colorMask;
+v83=v4.polygonOffset_offset;
+v84=v5.polygonOffset_offset;
+v85=v4.sample_coverage;
+v86=v5.sample_coverage;
+v89=v4.stencil_func;
+v90=v5.stencil_func;
+v91=v4.stencil_opFront;
+v92=v5.stencil_opFront;
+v93=v4.stencil_opBack;
+v94=v5.stencil_opBack;
+v95=v4.scissor_box;
+v96=v5.scissor_box;
+v97=v4.viewport;
+v98=v5.viewport;
+return {
+"poll":function(){
+var v48;
+var v54,v55,v56,v57,v58,v59,v60,v61,v62,v69,v70,v73,v74,v77,v78,v79,v80,v81,v82,v87,v88;
+v5.dirty=false;
+v54=v4.dither;
+v55=v4.blend_enable;
+v56=v4.depth_enable;
+v57=v4.cull_enable;
+v58=v4.polygonOffset_enable;
+v59=v4.sample_alpha;
+v60=v4.sample_enable;
+v61=v4.stencil_enable;
+v62=v4.scissor_enable;
+v69=v4.depth_func;
+v70=v5.depth_func;
+v73=v4.depth_mask;
+v74=v5.depth_mask;
+v77=v4.cull_face;
+v78=v5.cull_face;
+v79=v4.frontFace;
+v80=v5.frontFace;
+v81=v4.lineWidth;
+v82=v5.lineWidth;
+v87=v4.stencil_mask;
+v88=v5.stencil_mask;
+v48=v13.next;
+if(v48!==v13.cur){
+if(v48){
+v1.bindFramebuffer(36160,v48.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v48;
+}
+if(v54!==v5.dither){
+if(v54){
+v1.enable(3024)}
+else{
+v1.disable(3024)}
+v5.dither=v54;
+}
+if(v55!==v5.blend_enable){
+if(v55){
+v1.enable(3042)}
+else{
+v1.disable(3042)}
+v5.blend_enable=v55;
+}
+if(v56!==v5.depth_enable){
+if(v56){
+v1.enable(2929)}
+else{
+v1.disable(2929)}
+v5.depth_enable=v56;
+}
+if(v57!==v5.cull_enable){
+if(v57){
+v1.enable(2884)}
+else{
+v1.disable(2884)}
+v5.cull_enable=v57;
+}
+if(v58!==v5.polygonOffset_enable){
+if(v58){
+v1.enable(32823)}
+else{
+v1.disable(32823)}
+v5.polygonOffset_enable=v58;
+}
+if(v59!==v5.sample_alpha){
+if(v59){
+v1.enable(32926)}
+else{
+v1.disable(32926)}
+v5.sample_alpha=v59;
+}
+if(v60!==v5.sample_enable){
+if(v60){
+v1.enable(32928)}
+else{
+v1.disable(32928)}
+v5.sample_enable=v60;
+}
+if(v61!==v5.stencil_enable){
+if(v61){
+v1.enable(2960)}
+else{
+v1.disable(2960)}
+v5.stencil_enable=v61;
+}
+if(v62!==v5.scissor_enable){
+if(v62){
+v1.enable(3089)}
+else{
+v1.disable(3089)}
+v5.scissor_enable=v62;
+}
+if(v63[0]!==v64[0]||v63[1]!==v64[1]||v63[2]!==v64[2]||v63[3]!==v64[3]){
+v1.blendColor(v63[0],v63[1],v63[2],v63[3]);
+v64[0]=v63[0];
+v64[1]=v63[1];
+v64[2]=v63[2];
+v64[3]=v63[3];
+}
+if(v65[0]!==v66[0]||v65[1]!==v66[1]){
+v1.blendEquationSeparate(v65[0],v65[1]);
+v66[0]=v65[0];
+v66[1]=v65[1];
+}
+if(v67[0]!==v68[0]||v67[1]!==v68[1]||v67[2]!==v68[2]||v67[3]!==v68[3]){
+v1.blendFuncSeparate(v67[0],v67[1],v67[2],v67[3]);
+v68[0]=v67[0];
+v68[1]=v67[1];
+v68[2]=v67[2];
+v68[3]=v67[3];
+}
+if(v69!==v70){
+v1.depthFunc(v69);
+v5.depth_func=v69;
+}
+if(v71[0]!==v72[0]||v71[1]!==v72[1]){
+v1.depthRange(v71[0],v71[1]);
+v72[0]=v71[0];
+v72[1]=v71[1];
+}
+if(v73!==v74){
+v1.depthMask(v73);
+v5.depth_mask=v73;
+}
+if(v75[0]!==v76[0]||v75[1]!==v76[1]||v75[2]!==v76[2]||v75[3]!==v76[3]){
+v1.colorMask(v75[0],v75[1],v75[2],v75[3]);
+v76[0]=v75[0];
+v76[1]=v75[1];
+v76[2]=v75[2];
+v76[3]=v75[3];
+}
+if(v77!==v78){
+v1.cullFace(v77);
+v5.cull_face=v77;
+}
+if(v79!==v80){
+v1.frontFace(v79);
+v5.frontFace=v79;
+}
+if(v81!==v82){
+v1.lineWidth(v81);
+v5.lineWidth=v81;
+}
+if(v83[0]!==v84[0]||v83[1]!==v84[1]){
+v1.polygonOffset(v83[0],v83[1]);
+v84[0]=v83[0];
+v84[1]=v83[1];
+}
+if(v85[0]!==v86[0]||v85[1]!==v86[1]){
+v1.sampleCoverage(v85[0],v85[1]);
+v86[0]=v85[0];
+v86[1]=v85[1];
+}
+if(v87!==v88){
+v1.stencilMask(v87);
+v5.stencil_mask=v87;
+}
+if(v89[0]!==v90[0]||v89[1]!==v90[1]||v89[2]!==v90[2]){
+v1.stencilFunc(v89[0],v89[1],v89[2]);
+v90[0]=v89[0];
+v90[1]=v89[1];
+v90[2]=v89[2];
+}
+if(v91[0]!==v92[0]||v91[1]!==v92[1]||v91[2]!==v92[2]||v91[3]!==v92[3]){
+v1.stencilOpSeparate(v91[0],v91[1],v91[2],v91[3]);
+v92[0]=v91[0];
+v92[1]=v91[1];
+v92[2]=v91[2];
+v92[3]=v91[3];
+}
+if(v93[0]!==v94[0]||v93[1]!==v94[1]||v93[2]!==v94[2]||v93[3]!==v94[3]){
+v1.stencilOpSeparate(v93[0],v93[1],v93[2],v93[3]);
+v94[0]=v93[0];
+v94[1]=v93[1];
+v94[2]=v93[2];
+v94[3]=v93[3];
+}
+if(v95[0]!==v96[0]||v95[1]!==v96[1]||v95[2]!==v96[2]||v95[3]!==v96[3]){
+v1.scissor(v95[0],v95[1],v95[2],v95[3]);
+v96[0]=v95[0];
+v96[1]=v95[1];
+v96[2]=v95[2];
+v96[3]=v95[3];
+}
+if(v97[0]!==v98[0]||v97[1]!==v98[1]||v97[2]!==v98[2]||v97[3]!==v98[3]){
+v1.viewport(v97[0],v97[1],v97[2],v97[3]);
+v98[0]=v97[0];
+v98[1]=v97[1];
+v98[2]=v97[2];
+v98[3]=v97[3];
+}
+}
+,"refresh":function(){
+var v49,v51,v52;
+var v54,v55,v56,v57,v58,v59,v60,v61,v62,v69,v70,v73,v74,v77,v78,v79,v80,v81,v82,v87,v88;
+v5.dirty=false;
+v54=v4.dither;
+v55=v4.blend_enable;
+v56=v4.depth_enable;
+v57=v4.cull_enable;
+v58=v4.polygonOffset_enable;
+v59=v4.sample_alpha;
+v60=v4.sample_enable;
+v61=v4.stencil_enable;
+v62=v4.scissor_enable;
+v69=v4.depth_func;
+v70=v5.depth_func;
+v73=v4.depth_mask;
+v74=v5.depth_mask;
+v77=v4.cull_face;
+v78=v5.cull_face;
+v79=v4.frontFace;
+v80=v5.frontFace;
+v81=v4.lineWidth;
+v82=v5.lineWidth;
+v87=v4.stencil_mask;
+v88=v5.stencil_mask;
+v49=v13.next;
+if(v49){
+v1.bindFramebuffer(36160,v49.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v49;
+v51=v10;
+v52=0;
+for(var i=0;
+i<g53;
+++i){
+v52=v51[i];
+if(v52.buffer){
+v1.enableVertexAttribArray(i);
+v1.bindBuffer(34962,v52.buffer.buffer);
+v1.vertexAttribPointer(i,v52.size,v52.type,v52.normalized,v52.stride,v52.offset);
+}
+else{
+v1.disableVertexAttribArray(i);
+v1.vertexAttrib4f(i,v52.x,v52.y,v52.z,v52.w);
+v52.buffer=null;
+}
+}
+for(var i=0;
+i<g53;
+++i){
+g50.vertexAttribDivisorANGLE(i,v51[i].divisor);
+}
+v11.currentVAO=null;
+v11.setVAO(v11.targetVAO);
+if(v54){
+v1.enable(3024)}
+else{
+v1.disable(3024)}
+v5.dither=v54;
+if(v55){
+v1.enable(3042)}
+else{
+v1.disable(3042)}
+v5.blend_enable=v55;
+if(v56){
+v1.enable(2929)}
+else{
+v1.disable(2929)}
+v5.depth_enable=v56;
+if(v57){
+v1.enable(2884)}
+else{
+v1.disable(2884)}
+v5.cull_enable=v57;
+if(v58){
+v1.enable(32823)}
+else{
+v1.disable(32823)}
+v5.polygonOffset_enable=v58;
+if(v59){
+v1.enable(32926)}
+else{
+v1.disable(32926)}
+v5.sample_alpha=v59;
+if(v60){
+v1.enable(32928)}
+else{
+v1.disable(32928)}
+v5.sample_enable=v60;
+if(v61){
+v1.enable(2960)}
+else{
+v1.disable(2960)}
+v5.stencil_enable=v61;
+if(v62){
+v1.enable(3089)}
+else{
+v1.disable(3089)}
+v5.scissor_enable=v62;
+v1.blendColor(v63[0],v63[1],v63[2],v63[3]);
+v64[0]=v63[0];
+v64[1]=v63[1];
+v64[2]=v63[2];
+v64[3]=v63[3];
+v1.blendEquationSeparate(v65[0],v65[1]);
+v66[0]=v65[0];
+v66[1]=v65[1];
+v1.blendFuncSeparate(v67[0],v67[1],v67[2],v67[3]);
+v68[0]=v67[0];
+v68[1]=v67[1];
+v68[2]=v67[2];
+v68[3]=v67[3];
+v1.depthFunc(v69);
+v5.depth_func=v69;
+v1.depthRange(v71[0],v71[1]);
+v72[0]=v71[0];
+v72[1]=v71[1];
+v1.depthMask(v73);
+v5.depth_mask=v73;
+v1.colorMask(v75[0],v75[1],v75[2],v75[3]);
+v76[0]=v75[0];
+v76[1]=v75[1];
+v76[2]=v75[2];
+v76[3]=v75[3];
+v1.cullFace(v77);
+v5.cull_face=v77;
+v1.frontFace(v79);
+v5.frontFace=v79;
+v1.lineWidth(v81);
+v5.lineWidth=v81;
+v1.polygonOffset(v83[0],v83[1]);
+v84[0]=v83[0];
+v84[1]=v83[1];
+v1.sampleCoverage(v85[0],v85[1]);
+v86[0]=v85[0];
+v86[1]=v85[1];
+v1.stencilMask(v87);
+v5.stencil_mask=v87;
+v1.stencilFunc(v89[0],v89[1],v89[2]);
+v90[0]=v89[0];
+v90[1]=v89[1];
+v90[2]=v89[2];
+v1.stencilOpSeparate(v91[0],v91[1],v91[2],v91[3]);
+v92[0]=v91[0];
+v92[1]=v91[1];
+v92[2]=v91[2];
+v92[3]=v91[3];
+v1.stencilOpSeparate(v93[0],v93[1],v93[2],v93[3]);
+v94[0]=v93[0];
+v94[1]=v93[1];
+v94[2]=v93[2];
+v94[3]=v93[3];
+v1.scissor(v95[0],v95[1],v95[2],v95[3]);
+v96[0]=v95[0];
+v96[1]=v95[1];
+v96[2]=v95[2];
+v96[3]=v95[3];
+v1.viewport(v97[0],v97[1],v97[2],v97[3]);
+v98[0]=v97[0];
+v98[1]=v97[1];
+v98[2]=v97[2];
+v98[3]=v97[3];
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d b/src/generated/regl-codegen/3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d
new file mode 100644
index 00000000000..909903ac57f
--- /dev/null
+++ b/src/generated/regl-codegen/3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d
@@ -0,0 +1,2050 @@
+module.exports = function anonymous(g0,g48,g87,g88,g89,g90,g91,g92,g93,g94,g103,g105,g106,g107,g110,g111,g114,g115,g118,g119,g122,g123,g126,g127,g130,g131,g134,g135,g138,g139,g142,g143,g146,g147,g150,g151,g154,g155,g158,g159,g162,g163,g166,g167,g170,g176,g179,g182,g185,g188,g191,g194,g197,g200,g202,g205,g208,g211,g214,g217,g220,g223,g226,g228,g231,g232,g233,g237,g241,g262,g264,g266,g268,g270,g272,g274,g276,g278,g280,g282,g284,g286,g288,g290,g292,g294,g296,g298,g300,g314,g321,g323,g324,g327,g330,g333,g336,g339,g342,g345,g348,g351,g354,g357,g360,g363,g366,g369,g372,g375,g378,g381,g384,g387,g390,g393,g395,g408,g421,g434,g447,g460,g473,g486,g499,g512,g525,g538,g551,g564,g577,g590,g603,g605,g633,g634,g635,g636,g637,g638,g639,g640,g641
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v49,v50,v178,v181,v184,v187,v190,v193,v196,v199,v204,v207,v210,v213,v216,v219,v222,v225,v705,v707,v709,v711,v713,v715,v717,v719,v723,v725,v727,v729,v731,v733,v735,v737;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v49={
+}
+;
+v50={
+}
+;
+v178=new Float32Array(16);
+v181=new Float32Array(16);
+v184=new Float32Array(16);
+v187=new Float32Array(16);
+v190=new Float32Array(16);
+v193=new Float32Array(16);
+v196=new Float32Array(16);
+v199=new Float32Array(16);
+v204=new Float32Array(16);
+v207=new Float32Array(16);
+v210=new Float32Array(16);
+v213=new Float32Array(16);
+v216=new Float32Array(16);
+v219=new Float32Array(16);
+v222=new Float32Array(16);
+v225=new Float32Array(16);
+v705=new Float32Array(16);
+v707=new Float32Array(16);
+v709=new Float32Array(16);
+v711=new Float32Array(16);
+v713=new Float32Array(16);
+v715=new Float32Array(16);
+v717=new Float32Array(16);
+v719=new Float32Array(16);
+v723=new Float32Array(16);
+v725=new Float32Array(16);
+v727=new Float32Array(16);
+v729=new Float32Array(16);
+v731=new Float32Array(16);
+v733=new Float32Array(16);
+v735=new Float32Array(16);
+v737=new Float32Array(16);
+return {
+"draw":function(a0){
+var v51,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v95,v96,v97,v98,v99,v100,v101,v102,v104,v108,v109,v112,v113,v116,v117,v120,v121,v124,v125,v128,v129,v132,v133,v136,v137,v140,v141,v144,v145,v148,v149,v152,v153,v156,v157,v160,v161,v164,v165,v168,v169,v171,v172,v173,v174,v175,v177,v180,v183,v186,v189,v192,v195,v198,v201,v203,v206,v209,v212,v215,v218,v221,v224,v227,v229,v230,v234,v235,v236,v238,v239,v240,v242,v243,v244,v245,v246,v247;
+v51=v13.next;
+if(v51!==v13.cur){
+if(v51){
+v1.bindFramebuffer(36160,v51.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v51;
+}
+if(v5.dirty){
+var v52,v53,v54,v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76;
+v52=v25[0];
+v53=v25[1];
+v54=v25[2];
+v55=v25[3];
+if(v52!==v26[0]||v53!==v26[1]||v54!==v26[2]||v55!==v26[3]){
+v1.colorMask(v52,v53,v54,v55);
+v26[0]=v52;
+v26[1]=v53;
+v26[2]=v54;
+v26[3]=v55;
+}
+v56=v4.frontFace;
+if(v56!==v5.frontFace){
+v1.frontFace(v56);
+v5.frontFace=v56;
+}
+v57=v4.polygonOffset_enable;
+if(v57!==v5.polygonOffset_enable){
+if(v57){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v57;
+}
+v58=v27[0];
+v59=v27[1];
+if(v58!==v28[0]||v59!==v28[1]){
+v1.polygonOffset(v58,v59);
+v28[0]=v58;
+v28[1]=v59;
+}
+v60=v4.sample_alpha;
+if(v60!==v5.sample_alpha){
+if(v60){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v60;
+}
+v61=v4.sample_enable;
+if(v61!==v5.sample_enable){
+if(v61){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v61;
+}
+v62=v29[0];
+v63=v29[1];
+if(v62!==v30[0]||v63!==v30[1]){
+v1.sampleCoverage(v62,v63);
+v30[0]=v62;
+v30[1]=v63;
+}
+v64=v4.stencil_enable;
+if(v64!==v5.stencil_enable){
+if(v64){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v64;
+}
+v65=v4.stencil_mask;
+if(v65!==v5.stencil_mask){
+v1.stencilMask(v65);
+v5.stencil_mask=v65;
+}
+v66=v31[0];
+v67=v31[1];
+v68=v31[2];
+if(v66!==v32[0]||v67!==v32[1]||v68!==v32[2]){
+v1.stencilFunc(v66,v67,v68);
+v32[0]=v66;
+v32[1]=v67;
+v32[2]=v68;
+}
+v69=v33[0];
+v70=v33[1];
+v71=v33[2];
+v72=v33[3];
+if(v69!==v34[0]||v70!==v34[1]||v71!==v34[2]||v72!==v34[3]){
+v1.stencilOpSeparate(v69,v70,v71,v72);
+v34[0]=v69;
+v34[1]=v70;
+v34[2]=v71;
+v34[3]=v72;
+}
+v73=v35[0];
+v74=v35[1];
+v75=v35[2];
+v76=v35[3];
+if(v73!==v36[0]||v74!==v36[1]||v75!==v36[2]||v76!==v36[3]){
+v1.stencilOpSeparate(v73,v74,v75,v76);
+v36[0]=v73;
+v36[1]=v74;
+v36[2]=v75;
+v36[3]=v76;
+}
+}
+v77=a0["viewportX"];
+v49.x=v77;
+v78=a0["viewportY"];
+v49.y=v78;
+v79=a0["viewportWidth"];
+v49.width=v79;
+v80=a0["viewportHeight"];
+v49.height=v80;
+v81=v49.x|0;
+v82=v49.y|0;
+v83="width" in v49?v49.width|0:(v2.framebufferWidth-v81);
+v84="height" in v49?v49.height|0:(v2.framebufferHeight-v82);
+v85=v2.viewportWidth;
+v2.viewportWidth=v83;
+v86=v2.viewportHeight;
+v2.viewportHeight=v84;
+v1.viewport(v81,v82,v83,v84);
+v40[0]=v81;
+v40[1]=v82;
+v40[2]=v83;
+v40[3]=v84;
+v1.blendColor(0,0,0,0);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=0;
+if(g87){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g87;
+v1.blendEquationSeparate(32774,32774);
+v20[0]=32774;
+v20[1]=32774;
+v1.blendFuncSeparate(770,771,1,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=1;
+v22[3]=1;
+if(g88){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=g88;
+v1.cullFace(g89);
+v5.cull_face=g89;
+if(g90){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g90;
+v1.depthFunc(g91);
+v5.depth_func=g91;
+v1.depthMask(g92);
+v5.depth_mask=g92;
+v1.depthRange(0,1);
+v24[0]=0;
+v24[1]=1;
+if(g93){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=g93;
+v1.lineWidth(g94);
+v5.lineWidth=g94;
+v95=a0["scissorX"];
+v50.x=v95;
+v96=a0["scissorY"];
+v50.y=v96;
+v97=a0["scissorWidth"];
+v50.width=v97;
+v98=a0["scissorHeight"];
+v50.height=v98;
+v99=v50.x|0;
+v100=v50.y|0;
+v101="width" in v50?v50.width|0:(v2.framebufferWidth-v99);
+v102="height" in v50?v50.height|0:(v2.framebufferHeight-v100);
+v1.scissor(v99,v100,v101,v102);
+v38[0]=v99;
+v38[1]=v100;
+v38[2]=v101;
+v38[3]=v102;
+if(g103){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g103;
+v104=v5.profile;
+v5.profile=false;
+v1.useProgram(g105.program);
+v11.setVAO(null);
+v108=g107.location;
+v109=v10[v108];
+if(!v109.buffer){
+v1.enableVertexAttribArray(v108);
+}
+if(v109.type!==g106.dtype||v109.size!==4||v109.buffer!==g106||v109.normalized!==false||v109.offset!==0||v109.stride!==0){
+v1.bindBuffer(34962,g106.buffer);
+v1.vertexAttribPointer(v108,4,g106.dtype,false,0,0);
+v109.type=g106.dtype;
+v109.size=4;
+v109.buffer=g106;
+v109.normalized=false;
+v109.offset=0;
+v109.stride=0;
+}
+v112=g111.location;
+v113=v10[v112];
+if(!v113.buffer){
+v1.enableVertexAttribArray(v112);
+}
+if(v113.type!==g110.dtype||v113.size!==4||v113.buffer!==g110||v113.normalized!==false||v113.offset!==0||v113.stride!==0){
+v1.bindBuffer(34962,g110.buffer);
+v1.vertexAttribPointer(v112,4,g110.dtype,false,0,0);
+v113.type=g110.dtype;
+v113.size=4;
+v113.buffer=g110;
+v113.normalized=false;
+v113.offset=0;
+v113.stride=0;
+}
+v116=g115.location;
+v117=v10[v116];
+if(!v117.buffer){
+v1.enableVertexAttribArray(v116);
+}
+if(v117.type!==g114.dtype||v117.size!==4||v117.buffer!==g114||v117.normalized!==false||v117.offset!==0||v117.stride!==0){
+v1.bindBuffer(34962,g114.buffer);
+v1.vertexAttribPointer(v116,4,g114.dtype,false,0,0);
+v117.type=g114.dtype;
+v117.size=4;
+v117.buffer=g114;
+v117.normalized=false;
+v117.offset=0;
+v117.stride=0;
+}
+v120=g119.location;
+v121=v10[v120];
+if(!v121.buffer){
+v1.enableVertexAttribArray(v120);
+}
+if(v121.type!==g118.dtype||v121.size!==4||v121.buffer!==g118||v121.normalized!==false||v121.offset!==0||v121.stride!==0){
+v1.bindBuffer(34962,g118.buffer);
+v1.vertexAttribPointer(v120,4,g118.dtype,false,0,0);
+v121.type=g118.dtype;
+v121.size=4;
+v121.buffer=g118;
+v121.normalized=false;
+v121.offset=0;
+v121.stride=0;
+}
+v124=g123.location;
+v125=v10[v124];
+if(!v125.buffer){
+v1.enableVertexAttribArray(v124);
+}
+if(v125.type!==g122.dtype||v125.size!==4||v125.buffer!==g122||v125.normalized!==false||v125.offset!==0||v125.stride!==0){
+v1.bindBuffer(34962,g122.buffer);
+v1.vertexAttribPointer(v124,4,g122.dtype,false,0,0);
+v125.type=g122.dtype;
+v125.size=4;
+v125.buffer=g122;
+v125.normalized=false;
+v125.offset=0;
+v125.stride=0;
+}
+v128=g127.location;
+v129=v10[v128];
+if(!v129.buffer){
+v1.enableVertexAttribArray(v128);
+}
+if(v129.type!==g126.dtype||v129.size!==4||v129.buffer!==g126||v129.normalized!==false||v129.offset!==0||v129.stride!==0){
+v1.bindBuffer(34962,g126.buffer);
+v1.vertexAttribPointer(v128,4,g126.dtype,false,0,0);
+v129.type=g126.dtype;
+v129.size=4;
+v129.buffer=g126;
+v129.normalized=false;
+v129.offset=0;
+v129.stride=0;
+}
+v132=g131.location;
+v133=v10[v132];
+if(!v133.buffer){
+v1.enableVertexAttribArray(v132);
+}
+if(v133.type!==g130.dtype||v133.size!==4||v133.buffer!==g130||v133.normalized!==false||v133.offset!==0||v133.stride!==0){
+v1.bindBuffer(34962,g130.buffer);
+v1.vertexAttribPointer(v132,4,g130.dtype,false,0,0);
+v133.type=g130.dtype;
+v133.size=4;
+v133.buffer=g130;
+v133.normalized=false;
+v133.offset=0;
+v133.stride=0;
+}
+v136=g135.location;
+v137=v10[v136];
+if(!v137.buffer){
+v1.enableVertexAttribArray(v136);
+}
+if(v137.type!==g134.dtype||v137.size!==4||v137.buffer!==g134||v137.normalized!==false||v137.offset!==0||v137.stride!==0){
+v1.bindBuffer(34962,g134.buffer);
+v1.vertexAttribPointer(v136,4,g134.dtype,false,0,0);
+v137.type=g134.dtype;
+v137.size=4;
+v137.buffer=g134;
+v137.normalized=false;
+v137.offset=0;
+v137.stride=0;
+}
+v140=g139.location;
+v141=v10[v140];
+if(!v141.buffer){
+v1.enableVertexAttribArray(v140);
+}
+if(v141.type!==g138.dtype||v141.size!==4||v141.buffer!==g138||v141.normalized!==false||v141.offset!==0||v141.stride!==0){
+v1.bindBuffer(34962,g138.buffer);
+v1.vertexAttribPointer(v140,4,g138.dtype,false,0,0);
+v141.type=g138.dtype;
+v141.size=4;
+v141.buffer=g138;
+v141.normalized=false;
+v141.offset=0;
+v141.stride=0;
+}
+v144=g143.location;
+v145=v10[v144];
+if(!v145.buffer){
+v1.enableVertexAttribArray(v144);
+}
+if(v145.type!==g142.dtype||v145.size!==4||v145.buffer!==g142||v145.normalized!==false||v145.offset!==0||v145.stride!==0){
+v1.bindBuffer(34962,g142.buffer);
+v1.vertexAttribPointer(v144,4,g142.dtype,false,0,0);
+v145.type=g142.dtype;
+v145.size=4;
+v145.buffer=g142;
+v145.normalized=false;
+v145.offset=0;
+v145.stride=0;
+}
+v148=g147.location;
+v149=v10[v148];
+if(!v149.buffer){
+v1.enableVertexAttribArray(v148);
+}
+if(v149.type!==g146.dtype||v149.size!==4||v149.buffer!==g146||v149.normalized!==false||v149.offset!==0||v149.stride!==0){
+v1.bindBuffer(34962,g146.buffer);
+v1.vertexAttribPointer(v148,4,g146.dtype,false,0,0);
+v149.type=g146.dtype;
+v149.size=4;
+v149.buffer=g146;
+v149.normalized=false;
+v149.offset=0;
+v149.stride=0;
+}
+v152=g151.location;
+v153=v10[v152];
+if(!v153.buffer){
+v1.enableVertexAttribArray(v152);
+}
+if(v153.type!==g150.dtype||v153.size!==4||v153.buffer!==g150||v153.normalized!==false||v153.offset!==0||v153.stride!==0){
+v1.bindBuffer(34962,g150.buffer);
+v1.vertexAttribPointer(v152,4,g150.dtype,false,0,0);
+v153.type=g150.dtype;
+v153.size=4;
+v153.buffer=g150;
+v153.normalized=false;
+v153.offset=0;
+v153.stride=0;
+}
+v156=g155.location;
+v157=v10[v156];
+if(!v157.buffer){
+v1.enableVertexAttribArray(v156);
+}
+if(v157.type!==g154.dtype||v157.size!==4||v157.buffer!==g154||v157.normalized!==false||v157.offset!==0||v157.stride!==0){
+v1.bindBuffer(34962,g154.buffer);
+v1.vertexAttribPointer(v156,4,g154.dtype,false,0,0);
+v157.type=g154.dtype;
+v157.size=4;
+v157.buffer=g154;
+v157.normalized=false;
+v157.offset=0;
+v157.stride=0;
+}
+v160=g159.location;
+v161=v10[v160];
+if(!v161.buffer){
+v1.enableVertexAttribArray(v160);
+}
+if(v161.type!==g158.dtype||v161.size!==4||v161.buffer!==g158||v161.normalized!==false||v161.offset!==0||v161.stride!==0){
+v1.bindBuffer(34962,g158.buffer);
+v1.vertexAttribPointer(v160,4,g158.dtype,false,0,0);
+v161.type=g158.dtype;
+v161.size=4;
+v161.buffer=g158;
+v161.normalized=false;
+v161.offset=0;
+v161.stride=0;
+}
+v164=g163.location;
+v165=v10[v164];
+if(!v165.buffer){
+v1.enableVertexAttribArray(v164);
+}
+if(v165.type!==g162.dtype||v165.size!==4||v165.buffer!==g162||v165.normalized!==false||v165.offset!==0||v165.stride!==0){
+v1.bindBuffer(34962,g162.buffer);
+v1.vertexAttribPointer(v164,4,g162.dtype,false,0,0);
+v165.type=g162.dtype;
+v165.size=4;
+v165.buffer=g162;
+v165.normalized=false;
+v165.offset=0;
+v165.stride=0;
+}
+v168=g167.location;
+v169=v10[v168];
+if(!v169.buffer){
+v1.enableVertexAttribArray(v168);
+}
+if(v169.type!==g166.dtype||v169.size!==4||v169.buffer!==g166||v169.normalized!==false||v169.offset!==0||v169.stride!==0){
+v1.bindBuffer(34962,g166.buffer);
+v1.vertexAttribPointer(v168,4,g166.dtype,false,0,0);
+v169.type=g166.dtype;
+v169.size=4;
+v169.buffer=g166;
+v169.normalized=false;
+v169.offset=0;
+v169.stride=0;
+}
+v171=a0["contextColor"];
+v172=v171[0];
+v173=v171[1];
+v174=v171[2];
+v175=v171[3];
+v1.uniform4f(g170.location,v172,v173,v174,v175);
+v177=a0["dim0A"];
+v1.uniformMatrix4fv(g176.location,false,(Array.isArray(v177)||v177 instanceof Float32Array)?v177:(v178[0]=v177[0],v178[1]=v177[1],v178[2]=v177[2],v178[3]=v177[3],v178[4]=v177[4],v178[5]=v177[5],v178[6]=v177[6],v178[7]=v177[7],v178[8]=v177[8],v178[9]=v177[9],v178[10]=v177[10],v178[11]=v177[11],v178[12]=v177[12],v178[13]=v177[13],v178[14]=v177[14],v178[15]=v177[15],v178));
+v180=a0["dim0B"];
+v1.uniformMatrix4fv(g179.location,false,(Array.isArray(v180)||v180 instanceof Float32Array)?v180:(v181[0]=v180[0],v181[1]=v180[1],v181[2]=v180[2],v181[3]=v180[3],v181[4]=v180[4],v181[5]=v180[5],v181[6]=v180[6],v181[7]=v180[7],v181[8]=v180[8],v181[9]=v180[9],v181[10]=v180[10],v181[11]=v180[11],v181[12]=v180[12],v181[13]=v180[13],v181[14]=v180[14],v181[15]=v180[15],v181));
+v183=a0["dim0C"];
+v1.uniformMatrix4fv(g182.location,false,(Array.isArray(v183)||v183 instanceof Float32Array)?v183:(v184[0]=v183[0],v184[1]=v183[1],v184[2]=v183[2],v184[3]=v183[3],v184[4]=v183[4],v184[5]=v183[5],v184[6]=v183[6],v184[7]=v183[7],v184[8]=v183[8],v184[9]=v183[9],v184[10]=v183[10],v184[11]=v183[11],v184[12]=v183[12],v184[13]=v183[13],v184[14]=v183[14],v184[15]=v183[15],v184));
+v186=a0["dim0D"];
+v1.uniformMatrix4fv(g185.location,false,(Array.isArray(v186)||v186 instanceof Float32Array)?v186:(v187[0]=v186[0],v187[1]=v186[1],v187[2]=v186[2],v187[3]=v186[3],v187[4]=v186[4],v187[5]=v186[5],v187[6]=v186[6],v187[7]=v186[7],v187[8]=v186[8],v187[9]=v186[9],v187[10]=v186[10],v187[11]=v186[11],v187[12]=v186[12],v187[13]=v186[13],v187[14]=v186[14],v187[15]=v186[15],v187));
+v189=a0["dim1A"];
+v1.uniformMatrix4fv(g188.location,false,(Array.isArray(v189)||v189 instanceof Float32Array)?v189:(v190[0]=v189[0],v190[1]=v189[1],v190[2]=v189[2],v190[3]=v189[3],v190[4]=v189[4],v190[5]=v189[5],v190[6]=v189[6],v190[7]=v189[7],v190[8]=v189[8],v190[9]=v189[9],v190[10]=v189[10],v190[11]=v189[11],v190[12]=v189[12],v190[13]=v189[13],v190[14]=v189[14],v190[15]=v189[15],v190));
+v192=a0["dim1B"];
+v1.uniformMatrix4fv(g191.location,false,(Array.isArray(v192)||v192 instanceof Float32Array)?v192:(v193[0]=v192[0],v193[1]=v192[1],v193[2]=v192[2],v193[3]=v192[3],v193[4]=v192[4],v193[5]=v192[5],v193[6]=v192[6],v193[7]=v192[7],v193[8]=v192[8],v193[9]=v192[9],v193[10]=v192[10],v193[11]=v192[11],v193[12]=v192[12],v193[13]=v192[13],v193[14]=v192[14],v193[15]=v192[15],v193));
+v195=a0["dim1C"];
+v1.uniformMatrix4fv(g194.location,false,(Array.isArray(v195)||v195 instanceof Float32Array)?v195:(v196[0]=v195[0],v196[1]=v195[1],v196[2]=v195[2],v196[3]=v195[3],v196[4]=v195[4],v196[5]=v195[5],v196[6]=v195[6],v196[7]=v195[7],v196[8]=v195[8],v196[9]=v195[9],v196[10]=v195[10],v196[11]=v195[11],v196[12]=v195[12],v196[13]=v195[13],v196[14]=v195[14],v196[15]=v195[15],v196));
+v198=a0["dim1D"];
+v1.uniformMatrix4fv(g197.location,false,(Array.isArray(v198)||v198 instanceof Float32Array)?v198:(v199[0]=v198[0],v199[1]=v198[1],v199[2]=v198[2],v199[3]=v198[3],v199[4]=v198[4],v199[5]=v198[5],v199[6]=v198[6],v199[7]=v198[7],v199[8]=v198[8],v199[9]=v198[9],v199[10]=v198[10],v199[11]=v198[11],v199[12]=v198[12],v199[13]=v198[13],v199[14]=v198[14],v199[15]=v198[15],v199));
+v201=a0["drwLayer"];
+v1.uniform1f(g200.location,v201);
+v203=a0["hiA"];
+v1.uniformMatrix4fv(g202.location,false,(Array.isArray(v203)||v203 instanceof Float32Array)?v203:(v204[0]=v203[0],v204[1]=v203[1],v204[2]=v203[2],v204[3]=v203[3],v204[4]=v203[4],v204[5]=v203[5],v204[6]=v203[6],v204[7]=v203[7],v204[8]=v203[8],v204[9]=v203[9],v204[10]=v203[10],v204[11]=v203[11],v204[12]=v203[12],v204[13]=v203[13],v204[14]=v203[14],v204[15]=v203[15],v204));
+v206=a0["hiB"];
+v1.uniformMatrix4fv(g205.location,false,(Array.isArray(v206)||v206 instanceof Float32Array)?v206:(v207[0]=v206[0],v207[1]=v206[1],v207[2]=v206[2],v207[3]=v206[3],v207[4]=v206[4],v207[5]=v206[5],v207[6]=v206[6],v207[7]=v206[7],v207[8]=v206[8],v207[9]=v206[9],v207[10]=v206[10],v207[11]=v206[11],v207[12]=v206[12],v207[13]=v206[13],v207[14]=v206[14],v207[15]=v206[15],v207));
+v209=a0["hiC"];
+v1.uniformMatrix4fv(g208.location,false,(Array.isArray(v209)||v209 instanceof Float32Array)?v209:(v210[0]=v209[0],v210[1]=v209[1],v210[2]=v209[2],v210[3]=v209[3],v210[4]=v209[4],v210[5]=v209[5],v210[6]=v209[6],v210[7]=v209[7],v210[8]=v209[8],v210[9]=v209[9],v210[10]=v209[10],v210[11]=v209[11],v210[12]=v209[12],v210[13]=v209[13],v210[14]=v209[14],v210[15]=v209[15],v210));
+v212=a0["hiD"];
+v1.uniformMatrix4fv(g211.location,false,(Array.isArray(v212)||v212 instanceof Float32Array)?v212:(v213[0]=v212[0],v213[1]=v212[1],v213[2]=v212[2],v213[3]=v212[3],v213[4]=v212[4],v213[5]=v212[5],v213[6]=v212[6],v213[7]=v212[7],v213[8]=v212[8],v213[9]=v212[9],v213[10]=v212[10],v213[11]=v212[11],v213[12]=v212[12],v213[13]=v212[13],v213[14]=v212[14],v213[15]=v212[15],v213));
+v215=a0["loA"];
+v1.uniformMatrix4fv(g214.location,false,(Array.isArray(v215)||v215 instanceof Float32Array)?v215:(v216[0]=v215[0],v216[1]=v215[1],v216[2]=v215[2],v216[3]=v215[3],v216[4]=v215[4],v216[5]=v215[5],v216[6]=v215[6],v216[7]=v215[7],v216[8]=v215[8],v216[9]=v215[9],v216[10]=v215[10],v216[11]=v215[11],v216[12]=v215[12],v216[13]=v215[13],v216[14]=v215[14],v216[15]=v215[15],v216));
+v218=a0["loB"];
+v1.uniformMatrix4fv(g217.location,false,(Array.isArray(v218)||v218 instanceof Float32Array)?v218:(v219[0]=v218[0],v219[1]=v218[1],v219[2]=v218[2],v219[3]=v218[3],v219[4]=v218[4],v219[5]=v218[5],v219[6]=v218[6],v219[7]=v218[7],v219[8]=v218[8],v219[9]=v218[9],v219[10]=v218[10],v219[11]=v218[11],v219[12]=v218[12],v219[13]=v218[13],v219[14]=v218[14],v219[15]=v218[15],v219));
+v221=a0["loC"];
+v1.uniformMatrix4fv(g220.location,false,(Array.isArray(v221)||v221 instanceof Float32Array)?v221:(v222[0]=v221[0],v222[1]=v221[1],v222[2]=v221[2],v222[3]=v221[3],v222[4]=v221[4],v222[5]=v221[5],v222[6]=v221[6],v222[7]=v221[7],v222[8]=v221[8],v222[9]=v221[9],v222[10]=v221[10],v222[11]=v221[11],v222[12]=v221[12],v222[13]=v221[13],v222[14]=v221[14],v222[15]=v221[15],v222));
+v224=a0["loD"];
+v1.uniformMatrix4fv(g223.location,false,(Array.isArray(v224)||v224 instanceof Float32Array)?v224:(v225[0]=v224[0],v225[1]=v224[1],v225[2]=v224[2],v225[3]=v224[3],v225[4]=v224[4],v225[5]=v224[5],v225[6]=v224[6],v225[7]=v224[7],v225[8]=v224[8],v225[9]=v224[9],v225[10]=v224[10],v225[11]=v224[11],v225[12]=v224[12],v225[13]=v224[13],v225[14]=v224[14],v225[15]=v224[15],v225));
+v227=a0["maskHeight"];
+v1.uniform1f(g226.location,v227);
+v229=a0["maskTexture"];
+if(v229&&v229._reglType==="framebuffer"){
+v229=v229.color[0];
+}
+v230=v229._texture;
+v1.uniform1i(g228.location,v230.bind());
+v1.uniform1i(g231.location,g232.bind());
+v234=a0["resolution"];
+v235=v234[0];
+v236=v234[1];
+v1.uniform2f(g233.location,v235,v236);
+v238=a0["viewBoxPos"];
+v239=v238[0];
+v240=v238[1];
+v1.uniform2f(g237.location,v239,v240);
+v242=a0["viewBoxSize"];
+v243=v242[0];
+v244=v242[1];
+v1.uniform2f(g241.location,v243,v244);
+v245=v6.elements;
+if(v245){
+v1.bindBuffer(34963,v245.buffer.buffer);
+}
+else if(v11.currentVAO){
+v245=v7.getElements(v11.currentVAO.elements);
+if(v245)v1.bindBuffer(34963,v245.buffer.buffer);
+}
+v246=a0["offset"];
+v247=a0["count"];
+if(v247){
+if(v245){
+v1.drawElements(1,v247,v245.type,v246<<((v245.type-5121)>>1));
+}
+else{
+v1.drawArrays(1,v246,v247);
+}
+v5.dirty=true;
+v11.setVAO(null);
+v2.viewportWidth=v85;
+v2.viewportHeight=v86;
+v5.profile=v104;
+v230.unbind();
+g232.unbind();
+}
+}
+,"scope":function(a0,a1,a2){
+var v248,v249,v250,v251,v252,v253,v254,v255,v256,v257,v258,v259,v260,v261,v263,v265,v267,v269,v271,v273,v275,v277,v279,v281,v283,v285,v287,v289,v291,v293,v295,v297,v299,v301,v302,v303,v304,v305,v306,v307,v308,v309,v310,v311,v312,v313,v315,v316,v317,v318,v319,v320,v322,v325,v326,v328,v329,v331,v332,v334,v335,v337,v338,v340,v341,v343,v344,v346,v347,v349,v350,v352,v353,v355,v356,v358,v359,v361,v362,v364,v365,v367,v368,v370,v371,v373,v374,v376,v377,v379,v380,v382,v383,v385,v386,v388,v389,v391,v392,v394,v396,v397,v398,v399,v400,v401,v402,v403,v404,v405,v406,v407,v409,v410,v411,v412,v413,v414,v415,v416,v417,v418,v419,v420,v422,v423,v424,v425,v426,v427,v428,v429,v430,v431,v432,v433,v435,v436,v437,v438,v439,v440,v441,v442,v443,v444,v445,v446,v448,v449,v450,v451,v452,v453,v454,v455,v456,v457,v458,v459,v461,v462,v463,v464,v465,v466,v467,v468,v469,v470,v471,v472,v474,v475,v476,v477,v478,v479,v480,v481,v482,v483,v484,v485,v487,v488,v489,v490,v491,v492,v493,v494,v495,v496,v497,v498,v500,v501,v502,v503,v504,v505,v506,v507,v508,v509,v510,v511,v513,v514,v515,v516,v517,v518,v519,v520,v521,v522,v523,v524,v526,v527,v528,v529,v530,v531,v532,v533,v534,v535,v536,v537,v539,v540,v541,v542,v543,v544,v545,v546,v547,v548,v549,v550,v552,v553,v554,v555,v556,v557,v558,v559,v560,v561,v562,v563,v565,v566,v567,v568,v569,v570,v571,v572,v573,v574,v575,v576,v578,v579,v580,v581,v582,v583,v584,v585,v586,v587,v588,v589,v591,v592,v593,v594,v595,v596,v597,v598,v599,v600,v601,v602,v604,v606;
+v248=a0["viewportX"];
+v49.x=v248;
+v249=a0["viewportY"];
+v49.y=v249;
+v250=a0["viewportWidth"];
+v49.width=v250;
+v251=a0["viewportHeight"];
+v49.height=v251;
+v252=v49.x|0;
+v253=v49.y|0;
+v254="width" in v49?v49.width|0:(v2.framebufferWidth-v252);
+v255="height" in v49?v49.height|0:(v2.framebufferHeight-v253);
+v256=v2.viewportWidth;
+v2.viewportWidth=v254;
+v257=v2.viewportHeight;
+v2.viewportHeight=v255;
+v258=v39[0];
+v39[0]=v252;
+v259=v39[1];
+v39[1]=v253;
+v260=v39[2];
+v39[2]=v254;
+v261=v39[3];
+v39[3]=v255;
+v263=v17[0];
+v17[0]=g262;
+v265=v17[1];
+v17[1]=g264;
+v267=v17[2];
+v17[2]=g266;
+v269=v17[3];
+v17[3]=g268;
+v271=v4.blend_enable;
+v4.blend_enable=g270;
+v273=v19[0];
+v19[0]=g272;
+v275=v19[1];
+v19[1]=g274;
+v277=v21[0];
+v21[0]=g276;
+v279=v21[1];
+v21[1]=g278;
+v281=v21[2];
+v21[2]=g280;
+v283=v21[3];
+v21[3]=g282;
+v285=v4.cull_enable;
+v4.cull_enable=g284;
+v287=v4.cull_face;
+v4.cull_face=g286;
+v289=v4.depth_enable;
+v4.depth_enable=g288;
+v291=v4.depth_func;
+v4.depth_func=g290;
+v293=v4.depth_mask;
+v4.depth_mask=g292;
+v295=v23[0];
+v23[0]=g294;
+v297=v23[1];
+v23[1]=g296;
+v299=v4.dither;
+v4.dither=g298;
+v301=v4.lineWidth;
+v4.lineWidth=g300;
+v302=a0["scissorX"];
+v50.x=v302;
+v303=a0["scissorY"];
+v50.y=v303;
+v304=a0["scissorWidth"];
+v50.width=v304;
+v305=a0["scissorHeight"];
+v50.height=v305;
+v306=v50.x|0;
+v307=v50.y|0;
+v308="width" in v50?v50.width|0:(v2.framebufferWidth-v306);
+v309="height" in v50?v50.height|0:(v2.framebufferHeight-v307);
+v310=v37[0];
+v37[0]=v306;
+v311=v37[1];
+v37[1]=v307;
+v312=v37[2];
+v37[2]=v308;
+v313=v37[3];
+v37[3]=v309;
+v315=v4.scissor_enable;
+v4.scissor_enable=g314;
+v316=v5.profile;
+v5.profile=false;
+v317=a0["offset"];
+v318=v6.offset;
+v6.offset=v317;
+v319=a0["count"];
+v320=v6.count;
+v6.count=v319;
+v322=v6.primitive;
+v6.primitive=g321;
+v325=v12[g324];
+v12[g324]=g323;
+v326=a0["resolution"];
+v328=v12[g327];
+v12[g327]=v326;
+v329=a0["viewBoxPos"];
+v331=v12[g330];
+v12[g330]=v329;
+v332=a0["viewBoxSize"];
+v334=v12[g333];
+v12[g333]=v332;
+v335=a0["dim0A"];
+v337=v12[g336];
+v12[g336]=v335;
+v338=a0["dim1A"];
+v340=v12[g339];
+v12[g339]=v338;
+v341=a0["dim0B"];
+v343=v12[g342];
+v12[g342]=v341;
+v344=a0["dim1B"];
+v346=v12[g345];
+v12[g345]=v344;
+v347=a0["dim0C"];
+v349=v12[g348];
+v12[g348]=v347;
+v350=a0["dim1C"];
+v352=v12[g351];
+v12[g351]=v350;
+v353=a0["dim0D"];
+v355=v12[g354];
+v12[g354]=v353;
+v356=a0["dim1D"];
+v358=v12[g357];
+v12[g357]=v356;
+v359=a0["loA"];
+v361=v12[g360];
+v12[g360]=v359;
+v362=a0["hiA"];
+v364=v12[g363];
+v12[g363]=v362;
+v365=a0["loB"];
+v367=v12[g366];
+v12[g366]=v365;
+v368=a0["hiB"];
+v370=v12[g369];
+v12[g369]=v368;
+v371=a0["loC"];
+v373=v12[g372];
+v12[g372]=v371;
+v374=a0["hiC"];
+v376=v12[g375];
+v12[g375]=v374;
+v377=a0["loD"];
+v379=v12[g378];
+v12[g378]=v377;
+v380=a0["hiD"];
+v382=v12[g381];
+v12[g381]=v380;
+v383=a0["contextColor"];
+v385=v12[g384];
+v12[g384]=v383;
+v386=a0["maskTexture"];
+v388=v12[g387];
+v12[g387]=v386;
+v389=a0["drwLayer"];
+v391=v12[g390];
+v12[g390]=v389;
+v392=a0["maskHeight"];
+v394=v12[g393];
+v12[g393]=v392;
+v396=g395.state;
+g395.state=1;
+v397=g395.x;
+g395.x=0;
+v398=g395.y;
+g395.y=0;
+v399=g395.z;
+g395.z=0;
+v400=g395.w;
+g395.w=0;
+v401=g395.buffer;
+g395.buffer=g110;
+v402=g395.size;
+g395.size=0;
+v403=g395.normalized;
+g395.normalized=false;
+v404=g395.type;
+g395.type=g110.dtype;
+v405=g395.offset;
+g395.offset=0;
+v406=g395.stride;
+g395.stride=0;
+v407=g395.divisor;
+g395.divisor=0;
+v409=g408.state;
+g408.state=1;
+v410=g408.x;
+g408.x=0;
+v411=g408.y;
+g408.y=0;
+v412=g408.z;
+g408.z=0;
+v413=g408.w;
+g408.w=0;
+v414=g408.buffer;
+g408.buffer=g114;
+v415=g408.size;
+g408.size=0;
+v416=g408.normalized;
+g408.normalized=false;
+v417=g408.type;
+g408.type=g114.dtype;
+v418=g408.offset;
+g408.offset=0;
+v419=g408.stride;
+g408.stride=0;
+v420=g408.divisor;
+g408.divisor=0;
+v422=g421.state;
+g421.state=1;
+v423=g421.x;
+g421.x=0;
+v424=g421.y;
+g421.y=0;
+v425=g421.z;
+g421.z=0;
+v426=g421.w;
+g421.w=0;
+v427=g421.buffer;
+g421.buffer=g118;
+v428=g421.size;
+g421.size=0;
+v429=g421.normalized;
+g421.normalized=false;
+v430=g421.type;
+g421.type=g118.dtype;
+v431=g421.offset;
+g421.offset=0;
+v432=g421.stride;
+g421.stride=0;
+v433=g421.divisor;
+g421.divisor=0;
+v435=g434.state;
+g434.state=1;
+v436=g434.x;
+g434.x=0;
+v437=g434.y;
+g434.y=0;
+v438=g434.z;
+g434.z=0;
+v439=g434.w;
+g434.w=0;
+v440=g434.buffer;
+g434.buffer=g122;
+v441=g434.size;
+g434.size=0;
+v442=g434.normalized;
+g434.normalized=false;
+v443=g434.type;
+g434.type=g122.dtype;
+v444=g434.offset;
+g434.offset=0;
+v445=g434.stride;
+g434.stride=0;
+v446=g434.divisor;
+g434.divisor=0;
+v448=g447.state;
+g447.state=1;
+v449=g447.x;
+g447.x=0;
+v450=g447.y;
+g447.y=0;
+v451=g447.z;
+g447.z=0;
+v452=g447.w;
+g447.w=0;
+v453=g447.buffer;
+g447.buffer=g126;
+v454=g447.size;
+g447.size=0;
+v455=g447.normalized;
+g447.normalized=false;
+v456=g447.type;
+g447.type=g126.dtype;
+v457=g447.offset;
+g447.offset=0;
+v458=g447.stride;
+g447.stride=0;
+v459=g447.divisor;
+g447.divisor=0;
+v461=g460.state;
+g460.state=1;
+v462=g460.x;
+g460.x=0;
+v463=g460.y;
+g460.y=0;
+v464=g460.z;
+g460.z=0;
+v465=g460.w;
+g460.w=0;
+v466=g460.buffer;
+g460.buffer=g130;
+v467=g460.size;
+g460.size=0;
+v468=g460.normalized;
+g460.normalized=false;
+v469=g460.type;
+g460.type=g130.dtype;
+v470=g460.offset;
+g460.offset=0;
+v471=g460.stride;
+g460.stride=0;
+v472=g460.divisor;
+g460.divisor=0;
+v474=g473.state;
+g473.state=1;
+v475=g473.x;
+g473.x=0;
+v476=g473.y;
+g473.y=0;
+v477=g473.z;
+g473.z=0;
+v478=g473.w;
+g473.w=0;
+v479=g473.buffer;
+g473.buffer=g134;
+v480=g473.size;
+g473.size=0;
+v481=g473.normalized;
+g473.normalized=false;
+v482=g473.type;
+g473.type=g134.dtype;
+v483=g473.offset;
+g473.offset=0;
+v484=g473.stride;
+g473.stride=0;
+v485=g473.divisor;
+g473.divisor=0;
+v487=g486.state;
+g486.state=1;
+v488=g486.x;
+g486.x=0;
+v489=g486.y;
+g486.y=0;
+v490=g486.z;
+g486.z=0;
+v491=g486.w;
+g486.w=0;
+v492=g486.buffer;
+g486.buffer=g138;
+v493=g486.size;
+g486.size=0;
+v494=g486.normalized;
+g486.normalized=false;
+v495=g486.type;
+g486.type=g138.dtype;
+v496=g486.offset;
+g486.offset=0;
+v497=g486.stride;
+g486.stride=0;
+v498=g486.divisor;
+g486.divisor=0;
+v500=g499.state;
+g499.state=1;
+v501=g499.x;
+g499.x=0;
+v502=g499.y;
+g499.y=0;
+v503=g499.z;
+g499.z=0;
+v504=g499.w;
+g499.w=0;
+v505=g499.buffer;
+g499.buffer=g142;
+v506=g499.size;
+g499.size=0;
+v507=g499.normalized;
+g499.normalized=false;
+v508=g499.type;
+g499.type=g142.dtype;
+v509=g499.offset;
+g499.offset=0;
+v510=g499.stride;
+g499.stride=0;
+v511=g499.divisor;
+g499.divisor=0;
+v513=g512.state;
+g512.state=1;
+v514=g512.x;
+g512.x=0;
+v515=g512.y;
+g512.y=0;
+v516=g512.z;
+g512.z=0;
+v517=g512.w;
+g512.w=0;
+v518=g512.buffer;
+g512.buffer=g146;
+v519=g512.size;
+g512.size=0;
+v520=g512.normalized;
+g512.normalized=false;
+v521=g512.type;
+g512.type=g146.dtype;
+v522=g512.offset;
+g512.offset=0;
+v523=g512.stride;
+g512.stride=0;
+v524=g512.divisor;
+g512.divisor=0;
+v526=g525.state;
+g525.state=1;
+v527=g525.x;
+g525.x=0;
+v528=g525.y;
+g525.y=0;
+v529=g525.z;
+g525.z=0;
+v530=g525.w;
+g525.w=0;
+v531=g525.buffer;
+g525.buffer=g150;
+v532=g525.size;
+g525.size=0;
+v533=g525.normalized;
+g525.normalized=false;
+v534=g525.type;
+g525.type=g150.dtype;
+v535=g525.offset;
+g525.offset=0;
+v536=g525.stride;
+g525.stride=0;
+v537=g525.divisor;
+g525.divisor=0;
+v539=g538.state;
+g538.state=1;
+v540=g538.x;
+g538.x=0;
+v541=g538.y;
+g538.y=0;
+v542=g538.z;
+g538.z=0;
+v543=g538.w;
+g538.w=0;
+v544=g538.buffer;
+g538.buffer=g154;
+v545=g538.size;
+g538.size=0;
+v546=g538.normalized;
+g538.normalized=false;
+v547=g538.type;
+g538.type=g154.dtype;
+v548=g538.offset;
+g538.offset=0;
+v549=g538.stride;
+g538.stride=0;
+v550=g538.divisor;
+g538.divisor=0;
+v552=g551.state;
+g551.state=1;
+v553=g551.x;
+g551.x=0;
+v554=g551.y;
+g551.y=0;
+v555=g551.z;
+g551.z=0;
+v556=g551.w;
+g551.w=0;
+v557=g551.buffer;
+g551.buffer=g158;
+v558=g551.size;
+g551.size=0;
+v559=g551.normalized;
+g551.normalized=false;
+v560=g551.type;
+g551.type=g158.dtype;
+v561=g551.offset;
+g551.offset=0;
+v562=g551.stride;
+g551.stride=0;
+v563=g551.divisor;
+g551.divisor=0;
+v565=g564.state;
+g564.state=1;
+v566=g564.x;
+g564.x=0;
+v567=g564.y;
+g564.y=0;
+v568=g564.z;
+g564.z=0;
+v569=g564.w;
+g564.w=0;
+v570=g564.buffer;
+g564.buffer=g162;
+v571=g564.size;
+g564.size=0;
+v572=g564.normalized;
+g564.normalized=false;
+v573=g564.type;
+g564.type=g162.dtype;
+v574=g564.offset;
+g564.offset=0;
+v575=g564.stride;
+g564.stride=0;
+v576=g564.divisor;
+g564.divisor=0;
+v578=g577.state;
+g577.state=1;
+v579=g577.x;
+g577.x=0;
+v580=g577.y;
+g577.y=0;
+v581=g577.z;
+g577.z=0;
+v582=g577.w;
+g577.w=0;
+v583=g577.buffer;
+g577.buffer=g166;
+v584=g577.size;
+g577.size=0;
+v585=g577.normalized;
+g577.normalized=false;
+v586=g577.type;
+g577.type=g166.dtype;
+v587=g577.offset;
+g577.offset=0;
+v588=g577.stride;
+g577.stride=0;
+v589=g577.divisor;
+g577.divisor=0;
+v591=g590.state;
+g590.state=1;
+v592=g590.x;
+g590.x=0;
+v593=g590.y;
+g590.y=0;
+v594=g590.z;
+g590.z=0;
+v595=g590.w;
+g590.w=0;
+v596=g590.buffer;
+g590.buffer=g106;
+v597=g590.size;
+g590.size=0;
+v598=g590.normalized;
+g590.normalized=false;
+v599=g590.type;
+g590.type=g106.dtype;
+v600=g590.offset;
+g590.offset=0;
+v601=g590.stride;
+g590.stride=0;
+v602=g590.divisor;
+g590.divisor=0;
+v604=v9.vert;
+v9.vert=g603;
+v606=v9.frag;
+v9.frag=g605;
+v5.dirty=true;
+a1(v2,a0,a2);
+v2.viewportWidth=v256;
+v2.viewportHeight=v257;
+v39[0]=v258;
+v39[1]=v259;
+v39[2]=v260;
+v39[3]=v261;
+v17[0]=v263;
+v17[1]=v265;
+v17[2]=v267;
+v17[3]=v269;
+v4.blend_enable=v271;
+v19[0]=v273;
+v19[1]=v275;
+v21[0]=v277;
+v21[1]=v279;
+v21[2]=v281;
+v21[3]=v283;
+v4.cull_enable=v285;
+v4.cull_face=v287;
+v4.depth_enable=v289;
+v4.depth_func=v291;
+v4.depth_mask=v293;
+v23[0]=v295;
+v23[1]=v297;
+v4.dither=v299;
+v4.lineWidth=v301;
+v37[0]=v310;
+v37[1]=v311;
+v37[2]=v312;
+v37[3]=v313;
+v4.scissor_enable=v315;
+v5.profile=v316;
+v6.offset=v318;
+v6.count=v320;
+v6.primitive=v322;
+v12[g324]=v325;
+v12[g327]=v328;
+v12[g330]=v331;
+v12[g333]=v334;
+v12[g336]=v337;
+v12[g339]=v340;
+v12[g342]=v343;
+v12[g345]=v346;
+v12[g348]=v349;
+v12[g351]=v352;
+v12[g354]=v355;
+v12[g357]=v358;
+v12[g360]=v361;
+v12[g363]=v364;
+v12[g366]=v367;
+v12[g369]=v370;
+v12[g372]=v373;
+v12[g375]=v376;
+v12[g378]=v379;
+v12[g381]=v382;
+v12[g384]=v385;
+v12[g387]=v388;
+v12[g390]=v391;
+v12[g393]=v394;
+g395.state=v396;
+g395.x=v397;
+g395.y=v398;
+g395.z=v399;
+g395.w=v400;
+g395.buffer=v401;
+g395.size=v402;
+g395.normalized=v403;
+g395.type=v404;
+g395.offset=v405;
+g395.stride=v406;
+g395.divisor=v407;
+g408.state=v409;
+g408.x=v410;
+g408.y=v411;
+g408.z=v412;
+g408.w=v413;
+g408.buffer=v414;
+g408.size=v415;
+g408.normalized=v416;
+g408.type=v417;
+g408.offset=v418;
+g408.stride=v419;
+g408.divisor=v420;
+g421.state=v422;
+g421.x=v423;
+g421.y=v424;
+g421.z=v425;
+g421.w=v426;
+g421.buffer=v427;
+g421.size=v428;
+g421.normalized=v429;
+g421.type=v430;
+g421.offset=v431;
+g421.stride=v432;
+g421.divisor=v433;
+g434.state=v435;
+g434.x=v436;
+g434.y=v437;
+g434.z=v438;
+g434.w=v439;
+g434.buffer=v440;
+g434.size=v441;
+g434.normalized=v442;
+g434.type=v443;
+g434.offset=v444;
+g434.stride=v445;
+g434.divisor=v446;
+g447.state=v448;
+g447.x=v449;
+g447.y=v450;
+g447.z=v451;
+g447.w=v452;
+g447.buffer=v453;
+g447.size=v454;
+g447.normalized=v455;
+g447.type=v456;
+g447.offset=v457;
+g447.stride=v458;
+g447.divisor=v459;
+g460.state=v461;
+g460.x=v462;
+g460.y=v463;
+g460.z=v464;
+g460.w=v465;
+g460.buffer=v466;
+g460.size=v467;
+g460.normalized=v468;
+g460.type=v469;
+g460.offset=v470;
+g460.stride=v471;
+g460.divisor=v472;
+g473.state=v474;
+g473.x=v475;
+g473.y=v476;
+g473.z=v477;
+g473.w=v478;
+g473.buffer=v479;
+g473.size=v480;
+g473.normalized=v481;
+g473.type=v482;
+g473.offset=v483;
+g473.stride=v484;
+g473.divisor=v485;
+g486.state=v487;
+g486.x=v488;
+g486.y=v489;
+g486.z=v490;
+g486.w=v491;
+g486.buffer=v492;
+g486.size=v493;
+g486.normalized=v494;
+g486.type=v495;
+g486.offset=v496;
+g486.stride=v497;
+g486.divisor=v498;
+g499.state=v500;
+g499.x=v501;
+g499.y=v502;
+g499.z=v503;
+g499.w=v504;
+g499.buffer=v505;
+g499.size=v506;
+g499.normalized=v507;
+g499.type=v508;
+g499.offset=v509;
+g499.stride=v510;
+g499.divisor=v511;
+g512.state=v513;
+g512.x=v514;
+g512.y=v515;
+g512.z=v516;
+g512.w=v517;
+g512.buffer=v518;
+g512.size=v519;
+g512.normalized=v520;
+g512.type=v521;
+g512.offset=v522;
+g512.stride=v523;
+g512.divisor=v524;
+g525.state=v526;
+g525.x=v527;
+g525.y=v528;
+g525.z=v529;
+g525.w=v530;
+g525.buffer=v531;
+g525.size=v532;
+g525.normalized=v533;
+g525.type=v534;
+g525.offset=v535;
+g525.stride=v536;
+g525.divisor=v537;
+g538.state=v539;
+g538.x=v540;
+g538.y=v541;
+g538.z=v542;
+g538.w=v543;
+g538.buffer=v544;
+g538.size=v545;
+g538.normalized=v546;
+g538.type=v547;
+g538.offset=v548;
+g538.stride=v549;
+g538.divisor=v550;
+g551.state=v552;
+g551.x=v553;
+g551.y=v554;
+g551.z=v555;
+g551.w=v556;
+g551.buffer=v557;
+g551.size=v558;
+g551.normalized=v559;
+g551.type=v560;
+g551.offset=v561;
+g551.stride=v562;
+g551.divisor=v563;
+g564.state=v565;
+g564.x=v566;
+g564.y=v567;
+g564.z=v568;
+g564.w=v569;
+g564.buffer=v570;
+g564.size=v571;
+g564.normalized=v572;
+g564.type=v573;
+g564.offset=v574;
+g564.stride=v575;
+g564.divisor=v576;
+g577.state=v578;
+g577.x=v579;
+g577.y=v580;
+g577.z=v581;
+g577.w=v582;
+g577.buffer=v583;
+g577.size=v584;
+g577.normalized=v585;
+g577.type=v586;
+g577.offset=v587;
+g577.stride=v588;
+g577.divisor=v589;
+g590.state=v591;
+g590.x=v592;
+g590.y=v593;
+g590.z=v594;
+g590.w=v595;
+g590.buffer=v596;
+g590.size=v597;
+g590.normalized=v598;
+g590.type=v599;
+g590.offset=v600;
+g590.stride=v601;
+g590.divisor=v602;
+v9.vert=v604;
+v9.frag=v606;
+v5.dirty=true;
+}
+,"batch":function(a0,a1){
+var v607,v642,v643,v644;
+v607=v13.next;
+if(v607!==v13.cur){
+if(v607){
+v1.bindFramebuffer(36160,v607.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v607;
+}
+if(v5.dirty){
+var v608,v609,v610,v611,v612,v613,v614,v615,v616,v617,v618,v619,v620,v621,v622,v623,v624,v625,v626,v627,v628,v629,v630,v631,v632;
+v608=v25[0];
+v609=v25[1];
+v610=v25[2];
+v611=v25[3];
+if(v608!==v26[0]||v609!==v26[1]||v610!==v26[2]||v611!==v26[3]){
+v1.colorMask(v608,v609,v610,v611);
+v26[0]=v608;
+v26[1]=v609;
+v26[2]=v610;
+v26[3]=v611;
+}
+v612=v4.frontFace;
+if(v612!==v5.frontFace){
+v1.frontFace(v612);
+v5.frontFace=v612;
+}
+v613=v4.polygonOffset_enable;
+if(v613!==v5.polygonOffset_enable){
+if(v613){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v613;
+}
+v614=v27[0];
+v615=v27[1];
+if(v614!==v28[0]||v615!==v28[1]){
+v1.polygonOffset(v614,v615);
+v28[0]=v614;
+v28[1]=v615;
+}
+v616=v4.sample_alpha;
+if(v616!==v5.sample_alpha){
+if(v616){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v616;
+}
+v617=v4.sample_enable;
+if(v617!==v5.sample_enable){
+if(v617){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v617;
+}
+v618=v29[0];
+v619=v29[1];
+if(v618!==v30[0]||v619!==v30[1]){
+v1.sampleCoverage(v618,v619);
+v30[0]=v618;
+v30[1]=v619;
+}
+v620=v4.stencil_enable;
+if(v620!==v5.stencil_enable){
+if(v620){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v620;
+}
+v621=v4.stencil_mask;
+if(v621!==v5.stencil_mask){
+v1.stencilMask(v621);
+v5.stencil_mask=v621;
+}
+v622=v31[0];
+v623=v31[1];
+v624=v31[2];
+if(v622!==v32[0]||v623!==v32[1]||v624!==v32[2]){
+v1.stencilFunc(v622,v623,v624);
+v32[0]=v622;
+v32[1]=v623;
+v32[2]=v624;
+}
+v625=v33[0];
+v626=v33[1];
+v627=v33[2];
+v628=v33[3];
+if(v625!==v34[0]||v626!==v34[1]||v627!==v34[2]||v628!==v34[3]){
+v1.stencilOpSeparate(v625,v626,v627,v628);
+v34[0]=v625;
+v34[1]=v626;
+v34[2]=v627;
+v34[3]=v628;
+}
+v629=v35[0];
+v630=v35[1];
+v631=v35[2];
+v632=v35[3];
+if(v629!==v36[0]||v630!==v36[1]||v631!==v36[2]||v632!==v36[3]){
+v1.stencilOpSeparate(v629,v630,v631,v632);
+v36[0]=v629;
+v36[1]=v630;
+v36[2]=v631;
+v36[3]=v632;
+}
+}
+v1.blendColor(0,0,0,0);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=0;
+if(g633){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g633;
+v1.blendEquationSeparate(32774,32774);
+v20[0]=32774;
+v20[1]=32774;
+v1.blendFuncSeparate(770,771,1,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=1;
+v22[3]=1;
+if(g634){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=g634;
+v1.cullFace(g635);
+v5.cull_face=g635;
+if(g636){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g636;
+v1.depthFunc(g637);
+v5.depth_func=g637;
+v1.depthMask(g638);
+v5.depth_mask=g638;
+v1.depthRange(0,1);
+v24[0]=0;
+v24[1]=1;
+if(g639){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=g639;
+v1.lineWidth(g640);
+v5.lineWidth=g640;
+if(g641){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g641;
+v642=v5.profile;
+v5.profile=false;
+v1.useProgram(g105.program);
+var v663,v664,v665,v666,v667,v668,v669,v670,v671,v672,v673,v674,v675,v676,v677,v678,v679,v680,v681,v682,v683,v684,v685,v686,v687,v688,v689,v690,v691,v692,v693,v694,v757;
+v11.setVAO(null);
+v663=g107.location;
+v664=v10[v663];
+if(!v664.buffer){
+v1.enableVertexAttribArray(v663);
+}
+if(v664.type!==g106.dtype||v664.size!==4||v664.buffer!==g106||v664.normalized!==false||v664.offset!==0||v664.stride!==0){
+v1.bindBuffer(34962,g106.buffer);
+v1.vertexAttribPointer(v663,4,g106.dtype,false,0,0);
+v664.type=g106.dtype;
+v664.size=4;
+v664.buffer=g106;
+v664.normalized=false;
+v664.offset=0;
+v664.stride=0;
+}
+v665=g111.location;
+v666=v10[v665];
+if(!v666.buffer){
+v1.enableVertexAttribArray(v665);
+}
+if(v666.type!==g110.dtype||v666.size!==4||v666.buffer!==g110||v666.normalized!==false||v666.offset!==0||v666.stride!==0){
+v1.bindBuffer(34962,g110.buffer);
+v1.vertexAttribPointer(v665,4,g110.dtype,false,0,0);
+v666.type=g110.dtype;
+v666.size=4;
+v666.buffer=g110;
+v666.normalized=false;
+v666.offset=0;
+v666.stride=0;
+}
+v667=g115.location;
+v668=v10[v667];
+if(!v668.buffer){
+v1.enableVertexAttribArray(v667);
+}
+if(v668.type!==g114.dtype||v668.size!==4||v668.buffer!==g114||v668.normalized!==false||v668.offset!==0||v668.stride!==0){
+v1.bindBuffer(34962,g114.buffer);
+v1.vertexAttribPointer(v667,4,g114.dtype,false,0,0);
+v668.type=g114.dtype;
+v668.size=4;
+v668.buffer=g114;
+v668.normalized=false;
+v668.offset=0;
+v668.stride=0;
+}
+v669=g119.location;
+v670=v10[v669];
+if(!v670.buffer){
+v1.enableVertexAttribArray(v669);
+}
+if(v670.type!==g118.dtype||v670.size!==4||v670.buffer!==g118||v670.normalized!==false||v670.offset!==0||v670.stride!==0){
+v1.bindBuffer(34962,g118.buffer);
+v1.vertexAttribPointer(v669,4,g118.dtype,false,0,0);
+v670.type=g118.dtype;
+v670.size=4;
+v670.buffer=g118;
+v670.normalized=false;
+v670.offset=0;
+v670.stride=0;
+}
+v671=g123.location;
+v672=v10[v671];
+if(!v672.buffer){
+v1.enableVertexAttribArray(v671);
+}
+if(v672.type!==g122.dtype||v672.size!==4||v672.buffer!==g122||v672.normalized!==false||v672.offset!==0||v672.stride!==0){
+v1.bindBuffer(34962,g122.buffer);
+v1.vertexAttribPointer(v671,4,g122.dtype,false,0,0);
+v672.type=g122.dtype;
+v672.size=4;
+v672.buffer=g122;
+v672.normalized=false;
+v672.offset=0;
+v672.stride=0;
+}
+v673=g127.location;
+v674=v10[v673];
+if(!v674.buffer){
+v1.enableVertexAttribArray(v673);
+}
+if(v674.type!==g126.dtype||v674.size!==4||v674.buffer!==g126||v674.normalized!==false||v674.offset!==0||v674.stride!==0){
+v1.bindBuffer(34962,g126.buffer);
+v1.vertexAttribPointer(v673,4,g126.dtype,false,0,0);
+v674.type=g126.dtype;
+v674.size=4;
+v674.buffer=g126;
+v674.normalized=false;
+v674.offset=0;
+v674.stride=0;
+}
+v675=g131.location;
+v676=v10[v675];
+if(!v676.buffer){
+v1.enableVertexAttribArray(v675);
+}
+if(v676.type!==g130.dtype||v676.size!==4||v676.buffer!==g130||v676.normalized!==false||v676.offset!==0||v676.stride!==0){
+v1.bindBuffer(34962,g130.buffer);
+v1.vertexAttribPointer(v675,4,g130.dtype,false,0,0);
+v676.type=g130.dtype;
+v676.size=4;
+v676.buffer=g130;
+v676.normalized=false;
+v676.offset=0;
+v676.stride=0;
+}
+v677=g135.location;
+v678=v10[v677];
+if(!v678.buffer){
+v1.enableVertexAttribArray(v677);
+}
+if(v678.type!==g134.dtype||v678.size!==4||v678.buffer!==g134||v678.normalized!==false||v678.offset!==0||v678.stride!==0){
+v1.bindBuffer(34962,g134.buffer);
+v1.vertexAttribPointer(v677,4,g134.dtype,false,0,0);
+v678.type=g134.dtype;
+v678.size=4;
+v678.buffer=g134;
+v678.normalized=false;
+v678.offset=0;
+v678.stride=0;
+}
+v679=g139.location;
+v680=v10[v679];
+if(!v680.buffer){
+v1.enableVertexAttribArray(v679);
+}
+if(v680.type!==g138.dtype||v680.size!==4||v680.buffer!==g138||v680.normalized!==false||v680.offset!==0||v680.stride!==0){
+v1.bindBuffer(34962,g138.buffer);
+v1.vertexAttribPointer(v679,4,g138.dtype,false,0,0);
+v680.type=g138.dtype;
+v680.size=4;
+v680.buffer=g138;
+v680.normalized=false;
+v680.offset=0;
+v680.stride=0;
+}
+v681=g143.location;
+v682=v10[v681];
+if(!v682.buffer){
+v1.enableVertexAttribArray(v681);
+}
+if(v682.type!==g142.dtype||v682.size!==4||v682.buffer!==g142||v682.normalized!==false||v682.offset!==0||v682.stride!==0){
+v1.bindBuffer(34962,g142.buffer);
+v1.vertexAttribPointer(v681,4,g142.dtype,false,0,0);
+v682.type=g142.dtype;
+v682.size=4;
+v682.buffer=g142;
+v682.normalized=false;
+v682.offset=0;
+v682.stride=0;
+}
+v683=g147.location;
+v684=v10[v683];
+if(!v684.buffer){
+v1.enableVertexAttribArray(v683);
+}
+if(v684.type!==g146.dtype||v684.size!==4||v684.buffer!==g146||v684.normalized!==false||v684.offset!==0||v684.stride!==0){
+v1.bindBuffer(34962,g146.buffer);
+v1.vertexAttribPointer(v683,4,g146.dtype,false,0,0);
+v684.type=g146.dtype;
+v684.size=4;
+v684.buffer=g146;
+v684.normalized=false;
+v684.offset=0;
+v684.stride=0;
+}
+v685=g151.location;
+v686=v10[v685];
+if(!v686.buffer){
+v1.enableVertexAttribArray(v685);
+}
+if(v686.type!==g150.dtype||v686.size!==4||v686.buffer!==g150||v686.normalized!==false||v686.offset!==0||v686.stride!==0){
+v1.bindBuffer(34962,g150.buffer);
+v1.vertexAttribPointer(v685,4,g150.dtype,false,0,0);
+v686.type=g150.dtype;
+v686.size=4;
+v686.buffer=g150;
+v686.normalized=false;
+v686.offset=0;
+v686.stride=0;
+}
+v687=g155.location;
+v688=v10[v687];
+if(!v688.buffer){
+v1.enableVertexAttribArray(v687);
+}
+if(v688.type!==g154.dtype||v688.size!==4||v688.buffer!==g154||v688.normalized!==false||v688.offset!==0||v688.stride!==0){
+v1.bindBuffer(34962,g154.buffer);
+v1.vertexAttribPointer(v687,4,g154.dtype,false,0,0);
+v688.type=g154.dtype;
+v688.size=4;
+v688.buffer=g154;
+v688.normalized=false;
+v688.offset=0;
+v688.stride=0;
+}
+v689=g159.location;
+v690=v10[v689];
+if(!v690.buffer){
+v1.enableVertexAttribArray(v689);
+}
+if(v690.type!==g158.dtype||v690.size!==4||v690.buffer!==g158||v690.normalized!==false||v690.offset!==0||v690.stride!==0){
+v1.bindBuffer(34962,g158.buffer);
+v1.vertexAttribPointer(v689,4,g158.dtype,false,0,0);
+v690.type=g158.dtype;
+v690.size=4;
+v690.buffer=g158;
+v690.normalized=false;
+v690.offset=0;
+v690.stride=0;
+}
+v691=g163.location;
+v692=v10[v691];
+if(!v692.buffer){
+v1.enableVertexAttribArray(v691);
+}
+if(v692.type!==g162.dtype||v692.size!==4||v692.buffer!==g162||v692.normalized!==false||v692.offset!==0||v692.stride!==0){
+v1.bindBuffer(34962,g162.buffer);
+v1.vertexAttribPointer(v691,4,g162.dtype,false,0,0);
+v692.type=g162.dtype;
+v692.size=4;
+v692.buffer=g162;
+v692.normalized=false;
+v692.offset=0;
+v692.stride=0;
+}
+v693=g167.location;
+v694=v10[v693];
+if(!v694.buffer){
+v1.enableVertexAttribArray(v693);
+}
+if(v694.type!==g166.dtype||v694.size!==4||v694.buffer!==g166||v694.normalized!==false||v694.offset!==0||v694.stride!==0){
+v1.bindBuffer(34962,g166.buffer);
+v1.vertexAttribPointer(v693,4,g166.dtype,false,0,0);
+v694.type=g166.dtype;
+v694.size=4;
+v694.buffer=g166;
+v694.normalized=false;
+v694.offset=0;
+v694.stride=0;
+}
+v1.uniform1i(g231.location,g232.bind());
+v757=v6.elements;
+if(v757){
+v1.bindBuffer(34963,v757.buffer.buffer);
+}
+else if(v11.currentVAO){
+v757=v7.getElements(v11.currentVAO.elements);
+if(v757)v1.bindBuffer(34963,v757.buffer.buffer);
+}
+for(v643=0;
+v643<a1;
+++v643){
+v644=a0[v643];
+var v645,v646,v647,v648,v649,v650,v651,v652,v653,v654,v655,v656,v657,v658,v659,v660,v661,v662,v695,v696,v697,v698,v699,v700,v701,v702,v703,v704,v706,v708,v710,v712,v714,v716,v718,v720,v721,v722,v724,v726,v728,v730,v732,v734,v736,v738,v739,v740,v741,v742,v743,v744,v745,v746,v747,v748,v749,v750,v751,v752,v753,v754,v755,v756,v758,v759;
+v645=v644["viewportX"];
+v49.x=v645;
+v646=v644["viewportY"];
+v49.y=v646;
+v647=v644["viewportWidth"];
+v49.width=v647;
+v648=v644["viewportHeight"];
+v49.height=v648;
+v649=v49.x|0;
+v650=v49.y|0;
+v651="width" in v49?v49.width|0:(v2.framebufferWidth-v649);
+v652="height" in v49?v49.height|0:(v2.framebufferHeight-v650);
+v653=v2.viewportWidth;
+v2.viewportWidth=v651;
+v654=v2.viewportHeight;
+v2.viewportHeight=v652;
+v1.viewport(v649,v650,v651,v652);
+v40[0]=v649;
+v40[1]=v650;
+v40[2]=v651;
+v40[3]=v652;
+v655=v644["scissorX"];
+v50.x=v655;
+v656=v644["scissorY"];
+v50.y=v656;
+v657=v644["scissorWidth"];
+v50.width=v657;
+v658=v644["scissorHeight"];
+v50.height=v658;
+v659=v50.x|0;
+v660=v50.y|0;
+v661="width" in v50?v50.width|0:(v2.framebufferWidth-v659);
+v662="height" in v50?v50.height|0:(v2.framebufferHeight-v660);
+v1.scissor(v659,v660,v661,v662);
+v38[0]=v659;
+v38[1]=v660;
+v38[2]=v661;
+v38[3]=v662;
+v695=v644["contextColor"];
+v696=v695[0];
+v698=v695[1];
+v700=v695[2];
+v702=v695[3];
+if(!v643||v697!==v696||v699!==v698||v701!==v700||v703!==v702){
+v697=v696;
+v699=v698;
+v701=v700;
+v703=v702;
+v1.uniform4f(g170.location,v696,v698,v700,v702);
+}
+v704=v644["dim0A"];
+v1.uniformMatrix4fv(g176.location,false,(Array.isArray(v704)||v704 instanceof Float32Array)?v704:(v705[0]=v704[0],v705[1]=v704[1],v705[2]=v704[2],v705[3]=v704[3],v705[4]=v704[4],v705[5]=v704[5],v705[6]=v704[6],v705[7]=v704[7],v705[8]=v704[8],v705[9]=v704[9],v705[10]=v704[10],v705[11]=v704[11],v705[12]=v704[12],v705[13]=v704[13],v705[14]=v704[14],v705[15]=v704[15],v705));
+v706=v644["dim0B"];
+v1.uniformMatrix4fv(g179.location,false,(Array.isArray(v706)||v706 instanceof Float32Array)?v706:(v707[0]=v706[0],v707[1]=v706[1],v707[2]=v706[2],v707[3]=v706[3],v707[4]=v706[4],v707[5]=v706[5],v707[6]=v706[6],v707[7]=v706[7],v707[8]=v706[8],v707[9]=v706[9],v707[10]=v706[10],v707[11]=v706[11],v707[12]=v706[12],v707[13]=v706[13],v707[14]=v706[14],v707[15]=v706[15],v707));
+v708=v644["dim0C"];
+v1.uniformMatrix4fv(g182.location,false,(Array.isArray(v708)||v708 instanceof Float32Array)?v708:(v709[0]=v708[0],v709[1]=v708[1],v709[2]=v708[2],v709[3]=v708[3],v709[4]=v708[4],v709[5]=v708[5],v709[6]=v708[6],v709[7]=v708[7],v709[8]=v708[8],v709[9]=v708[9],v709[10]=v708[10],v709[11]=v708[11],v709[12]=v708[12],v709[13]=v708[13],v709[14]=v708[14],v709[15]=v708[15],v709));
+v710=v644["dim0D"];
+v1.uniformMatrix4fv(g185.location,false,(Array.isArray(v710)||v710 instanceof Float32Array)?v710:(v711[0]=v710[0],v711[1]=v710[1],v711[2]=v710[2],v711[3]=v710[3],v711[4]=v710[4],v711[5]=v710[5],v711[6]=v710[6],v711[7]=v710[7],v711[8]=v710[8],v711[9]=v710[9],v711[10]=v710[10],v711[11]=v710[11],v711[12]=v710[12],v711[13]=v710[13],v711[14]=v710[14],v711[15]=v710[15],v711));
+v712=v644["dim1A"];
+v1.uniformMatrix4fv(g188.location,false,(Array.isArray(v712)||v712 instanceof Float32Array)?v712:(v713[0]=v712[0],v713[1]=v712[1],v713[2]=v712[2],v713[3]=v712[3],v713[4]=v712[4],v713[5]=v712[5],v713[6]=v712[6],v713[7]=v712[7],v713[8]=v712[8],v713[9]=v712[9],v713[10]=v712[10],v713[11]=v712[11],v713[12]=v712[12],v713[13]=v712[13],v713[14]=v712[14],v713[15]=v712[15],v713));
+v714=v644["dim1B"];
+v1.uniformMatrix4fv(g191.location,false,(Array.isArray(v714)||v714 instanceof Float32Array)?v714:(v715[0]=v714[0],v715[1]=v714[1],v715[2]=v714[2],v715[3]=v714[3],v715[4]=v714[4],v715[5]=v714[5],v715[6]=v714[6],v715[7]=v714[7],v715[8]=v714[8],v715[9]=v714[9],v715[10]=v714[10],v715[11]=v714[11],v715[12]=v714[12],v715[13]=v714[13],v715[14]=v714[14],v715[15]=v714[15],v715));
+v716=v644["dim1C"];
+v1.uniformMatrix4fv(g194.location,false,(Array.isArray(v716)||v716 instanceof Float32Array)?v716:(v717[0]=v716[0],v717[1]=v716[1],v717[2]=v716[2],v717[3]=v716[3],v717[4]=v716[4],v717[5]=v716[5],v717[6]=v716[6],v717[7]=v716[7],v717[8]=v716[8],v717[9]=v716[9],v717[10]=v716[10],v717[11]=v716[11],v717[12]=v716[12],v717[13]=v716[13],v717[14]=v716[14],v717[15]=v716[15],v717));
+v718=v644["dim1D"];
+v1.uniformMatrix4fv(g197.location,false,(Array.isArray(v718)||v718 instanceof Float32Array)?v718:(v719[0]=v718[0],v719[1]=v718[1],v719[2]=v718[2],v719[3]=v718[3],v719[4]=v718[4],v719[5]=v718[5],v719[6]=v718[6],v719[7]=v718[7],v719[8]=v718[8],v719[9]=v718[9],v719[10]=v718[10],v719[11]=v718[11],v719[12]=v718[12],v719[13]=v718[13],v719[14]=v718[14],v719[15]=v718[15],v719));
+v720=v644["drwLayer"];
+if(!v643||v721!==v720){
+v721=v720;
+v1.uniform1f(g200.location,v720);
+}
+v722=v644["hiA"];
+v1.uniformMatrix4fv(g202.location,false,(Array.isArray(v722)||v722 instanceof Float32Array)?v722:(v723[0]=v722[0],v723[1]=v722[1],v723[2]=v722[2],v723[3]=v722[3],v723[4]=v722[4],v723[5]=v722[5],v723[6]=v722[6],v723[7]=v722[7],v723[8]=v722[8],v723[9]=v722[9],v723[10]=v722[10],v723[11]=v722[11],v723[12]=v722[12],v723[13]=v722[13],v723[14]=v722[14],v723[15]=v722[15],v723));
+v724=v644["hiB"];
+v1.uniformMatrix4fv(g205.location,false,(Array.isArray(v724)||v724 instanceof Float32Array)?v724:(v725[0]=v724[0],v725[1]=v724[1],v725[2]=v724[2],v725[3]=v724[3],v725[4]=v724[4],v725[5]=v724[5],v725[6]=v724[6],v725[7]=v724[7],v725[8]=v724[8],v725[9]=v724[9],v725[10]=v724[10],v725[11]=v724[11],v725[12]=v724[12],v725[13]=v724[13],v725[14]=v724[14],v725[15]=v724[15],v725));
+v726=v644["hiC"];
+v1.uniformMatrix4fv(g208.location,false,(Array.isArray(v726)||v726 instanceof Float32Array)?v726:(v727[0]=v726[0],v727[1]=v726[1],v727[2]=v726[2],v727[3]=v726[3],v727[4]=v726[4],v727[5]=v726[5],v727[6]=v726[6],v727[7]=v726[7],v727[8]=v726[8],v727[9]=v726[9],v727[10]=v726[10],v727[11]=v726[11],v727[12]=v726[12],v727[13]=v726[13],v727[14]=v726[14],v727[15]=v726[15],v727));
+v728=v644["hiD"];
+v1.uniformMatrix4fv(g211.location,false,(Array.isArray(v728)||v728 instanceof Float32Array)?v728:(v729[0]=v728[0],v729[1]=v728[1],v729[2]=v728[2],v729[3]=v728[3],v729[4]=v728[4],v729[5]=v728[5],v729[6]=v728[6],v729[7]=v728[7],v729[8]=v728[8],v729[9]=v728[9],v729[10]=v728[10],v729[11]=v728[11],v729[12]=v728[12],v729[13]=v728[13],v729[14]=v728[14],v729[15]=v728[15],v729));
+v730=v644["loA"];
+v1.uniformMatrix4fv(g214.location,false,(Array.isArray(v730)||v730 instanceof Float32Array)?v730:(v731[0]=v730[0],v731[1]=v730[1],v731[2]=v730[2],v731[3]=v730[3],v731[4]=v730[4],v731[5]=v730[5],v731[6]=v730[6],v731[7]=v730[7],v731[8]=v730[8],v731[9]=v730[9],v731[10]=v730[10],v731[11]=v730[11],v731[12]=v730[12],v731[13]=v730[13],v731[14]=v730[14],v731[15]=v730[15],v731));
+v732=v644["loB"];
+v1.uniformMatrix4fv(g217.location,false,(Array.isArray(v732)||v732 instanceof Float32Array)?v732:(v733[0]=v732[0],v733[1]=v732[1],v733[2]=v732[2],v733[3]=v732[3],v733[4]=v732[4],v733[5]=v732[5],v733[6]=v732[6],v733[7]=v732[7],v733[8]=v732[8],v733[9]=v732[9],v733[10]=v732[10],v733[11]=v732[11],v733[12]=v732[12],v733[13]=v732[13],v733[14]=v732[14],v733[15]=v732[15],v733));
+v734=v644["loC"];
+v1.uniformMatrix4fv(g220.location,false,(Array.isArray(v734)||v734 instanceof Float32Array)?v734:(v735[0]=v734[0],v735[1]=v734[1],v735[2]=v734[2],v735[3]=v734[3],v735[4]=v734[4],v735[5]=v734[5],v735[6]=v734[6],v735[7]=v734[7],v735[8]=v734[8],v735[9]=v734[9],v735[10]=v734[10],v735[11]=v734[11],v735[12]=v734[12],v735[13]=v734[13],v735[14]=v734[14],v735[15]=v734[15],v735));
+v736=v644["loD"];
+v1.uniformMatrix4fv(g223.location,false,(Array.isArray(v736)||v736 instanceof Float32Array)?v736:(v737[0]=v736[0],v737[1]=v736[1],v737[2]=v736[2],v737[3]=v736[3],v737[4]=v736[4],v737[5]=v736[5],v737[6]=v736[6],v737[7]=v736[7],v737[8]=v736[8],v737[9]=v736[9],v737[10]=v736[10],v737[11]=v736[11],v737[12]=v736[12],v737[13]=v736[13],v737[14]=v736[14],v737[15]=v736[15],v737));
+v738=v644["maskHeight"];
+if(!v643||v739!==v738){
+v739=v738;
+v1.uniform1f(g226.location,v738);
+}
+v740=v644["maskTexture"];
+if(v740&&v740._reglType==="framebuffer"){
+v740=v740.color[0];
+}
+v741=v740._texture;
+v1.uniform1i(g228.location,v741.bind());
+v742=v644["resolution"];
+v743=v742[0];
+v745=v742[1];
+if(!v643||v744!==v743||v746!==v745){
+v744=v743;
+v746=v745;
+v1.uniform2f(g233.location,v743,v745);
+}
+v747=v644["viewBoxPos"];
+v748=v747[0];
+v750=v747[1];
+if(!v643||v749!==v748||v751!==v750){
+v749=v748;
+v751=v750;
+v1.uniform2f(g237.location,v748,v750);
+}
+v752=v644["viewBoxSize"];
+v753=v752[0];
+v755=v752[1];
+if(!v643||v754!==v753||v756!==v755){
+v754=v753;
+v756=v755;
+v1.uniform2f(g241.location,v753,v755);
+}
+v758=v644["offset"];
+v759=v644["count"];
+if(v759){
+if(v757){
+v1.drawElements(1,v759,v757.type,v758<<((v757.type-5121)>>1));
+}
+else{
+v1.drawArrays(1,v758,v759);
+}
+v2.viewportWidth=v653;
+v2.viewportHeight=v654;
+v741.unbind();
+}
+}
+g232.unbind();
+v5.dirty=true;
+v11.setVAO(null);
+v5.profile=v642;
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45 b/src/generated/regl-codegen/453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45
new file mode 100644
index 00000000000..1f3f501bb0e
--- /dev/null
+++ b/src/generated/regl-codegen/453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45
@@ -0,0 +1,452 @@
+module.exports = function anonymous(g0,g52
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v62,v63,v64,v65,v66,v67,v70,v71,v74,v75,v82,v83,v84,v85,v88,v89,v90,v91,v92,v93,v94,v95,v96,v97;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v62=v4.blend_color;
+v63=v5.blend_color;
+v64=v4.blend_equation;
+v65=v5.blend_equation;
+v66=v4.blend_func;
+v67=v5.blend_func;
+v70=v4.depth_range;
+v71=v5.depth_range;
+v74=v4.colorMask;
+v75=v5.colorMask;
+v82=v4.polygonOffset_offset;
+v83=v5.polygonOffset_offset;
+v84=v4.sample_coverage;
+v85=v5.sample_coverage;
+v88=v4.stencil_func;
+v89=v5.stencil_func;
+v90=v4.stencil_opFront;
+v91=v5.stencil_opFront;
+v92=v4.stencil_opBack;
+v93=v5.stencil_opBack;
+v94=v4.scissor_box;
+v95=v5.scissor_box;
+v96=v4.viewport;
+v97=v5.viewport;
+return {
+"poll":function(){
+var v48;
+var v53,v54,v55,v56,v57,v58,v59,v60,v61,v68,v69,v72,v73,v76,v77,v78,v79,v80,v81,v86,v87;
+v5.dirty=false;
+v53=v4.dither;
+v54=v4.blend_enable;
+v55=v4.depth_enable;
+v56=v4.cull_enable;
+v57=v4.polygonOffset_enable;
+v58=v4.sample_alpha;
+v59=v4.sample_enable;
+v60=v4.stencil_enable;
+v61=v4.scissor_enable;
+v68=v4.depth_func;
+v69=v5.depth_func;
+v72=v4.depth_mask;
+v73=v5.depth_mask;
+v76=v4.cull_face;
+v77=v5.cull_face;
+v78=v4.frontFace;
+v79=v5.frontFace;
+v80=v4.lineWidth;
+v81=v5.lineWidth;
+v86=v4.stencil_mask;
+v87=v5.stencil_mask;
+v48=v13.next;
+if(v48!==v13.cur){
+if(v48){
+v1.bindFramebuffer(36160,v48.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v48;
+}
+if(v53!==v5.dither){
+if(v53){
+v1.enable(3024)}
+else{
+v1.disable(3024)}
+v5.dither=v53;
+}
+if(v54!==v5.blend_enable){
+if(v54){
+v1.enable(3042)}
+else{
+v1.disable(3042)}
+v5.blend_enable=v54;
+}
+if(v55!==v5.depth_enable){
+if(v55){
+v1.enable(2929)}
+else{
+v1.disable(2929)}
+v5.depth_enable=v55;
+}
+if(v56!==v5.cull_enable){
+if(v56){
+v1.enable(2884)}
+else{
+v1.disable(2884)}
+v5.cull_enable=v56;
+}
+if(v57!==v5.polygonOffset_enable){
+if(v57){
+v1.enable(32823)}
+else{
+v1.disable(32823)}
+v5.polygonOffset_enable=v57;
+}
+if(v58!==v5.sample_alpha){
+if(v58){
+v1.enable(32926)}
+else{
+v1.disable(32926)}
+v5.sample_alpha=v58;
+}
+if(v59!==v5.sample_enable){
+if(v59){
+v1.enable(32928)}
+else{
+v1.disable(32928)}
+v5.sample_enable=v59;
+}
+if(v60!==v5.stencil_enable){
+if(v60){
+v1.enable(2960)}
+else{
+v1.disable(2960)}
+v5.stencil_enable=v60;
+}
+if(v61!==v5.scissor_enable){
+if(v61){
+v1.enable(3089)}
+else{
+v1.disable(3089)}
+v5.scissor_enable=v61;
+}
+if(v62[0]!==v63[0]||v62[1]!==v63[1]||v62[2]!==v63[2]||v62[3]!==v63[3]){
+v1.blendColor(v62[0],v62[1],v62[2],v62[3]);
+v63[0]=v62[0];
+v63[1]=v62[1];
+v63[2]=v62[2];
+v63[3]=v62[3];
+}
+if(v64[0]!==v65[0]||v64[1]!==v65[1]){
+v1.blendEquationSeparate(v64[0],v64[1]);
+v65[0]=v64[0];
+v65[1]=v64[1];
+}
+if(v66[0]!==v67[0]||v66[1]!==v67[1]||v66[2]!==v67[2]||v66[3]!==v67[3]){
+v1.blendFuncSeparate(v66[0],v66[1],v66[2],v66[3]);
+v67[0]=v66[0];
+v67[1]=v66[1];
+v67[2]=v66[2];
+v67[3]=v66[3];
+}
+if(v68!==v69){
+v1.depthFunc(v68);
+v5.depth_func=v68;
+}
+if(v70[0]!==v71[0]||v70[1]!==v71[1]){
+v1.depthRange(v70[0],v70[1]);
+v71[0]=v70[0];
+v71[1]=v70[1];
+}
+if(v72!==v73){
+v1.depthMask(v72);
+v5.depth_mask=v72;
+}
+if(v74[0]!==v75[0]||v74[1]!==v75[1]||v74[2]!==v75[2]||v74[3]!==v75[3]){
+v1.colorMask(v74[0],v74[1],v74[2],v74[3]);
+v75[0]=v74[0];
+v75[1]=v74[1];
+v75[2]=v74[2];
+v75[3]=v74[3];
+}
+if(v76!==v77){
+v1.cullFace(v76);
+v5.cull_face=v76;
+}
+if(v78!==v79){
+v1.frontFace(v78);
+v5.frontFace=v78;
+}
+if(v80!==v81){
+v1.lineWidth(v80);
+v5.lineWidth=v80;
+}
+if(v82[0]!==v83[0]||v82[1]!==v83[1]){
+v1.polygonOffset(v82[0],v82[1]);
+v83[0]=v82[0];
+v83[1]=v82[1];
+}
+if(v84[0]!==v85[0]||v84[1]!==v85[1]){
+v1.sampleCoverage(v84[0],v84[1]);
+v85[0]=v84[0];
+v85[1]=v84[1];
+}
+if(v86!==v87){
+v1.stencilMask(v86);
+v5.stencil_mask=v86;
+}
+if(v88[0]!==v89[0]||v88[1]!==v89[1]||v88[2]!==v89[2]){
+v1.stencilFunc(v88[0],v88[1],v88[2]);
+v89[0]=v88[0];
+v89[1]=v88[1];
+v89[2]=v88[2];
+}
+if(v90[0]!==v91[0]||v90[1]!==v91[1]||v90[2]!==v91[2]||v90[3]!==v91[3]){
+v1.stencilOpSeparate(v90[0],v90[1],v90[2],v90[3]);
+v91[0]=v90[0];
+v91[1]=v90[1];
+v91[2]=v90[2];
+v91[3]=v90[3];
+}
+if(v92[0]!==v93[0]||v92[1]!==v93[1]||v92[2]!==v93[2]||v92[3]!==v93[3]){
+v1.stencilOpSeparate(v92[0],v92[1],v92[2],v92[3]);
+v93[0]=v92[0];
+v93[1]=v92[1];
+v93[2]=v92[2];
+v93[3]=v92[3];
+}
+if(v94[0]!==v95[0]||v94[1]!==v95[1]||v94[2]!==v95[2]||v94[3]!==v95[3]){
+v1.scissor(v94[0],v94[1],v94[2],v94[3]);
+v95[0]=v94[0];
+v95[1]=v94[1];
+v95[2]=v94[2];
+v95[3]=v94[3];
+}
+if(v96[0]!==v97[0]||v96[1]!==v97[1]||v96[2]!==v97[2]||v96[3]!==v97[3]){
+v1.viewport(v96[0],v96[1],v96[2],v96[3]);
+v97[0]=v96[0];
+v97[1]=v96[1];
+v97[2]=v96[2];
+v97[3]=v96[3];
+}
+}
+,"refresh":function(){
+var v49,v50,v51;
+var v53,v54,v55,v56,v57,v58,v59,v60,v61,v68,v69,v72,v73,v76,v77,v78,v79,v80,v81,v86,v87;
+v5.dirty=false;
+v53=v4.dither;
+v54=v4.blend_enable;
+v55=v4.depth_enable;
+v56=v4.cull_enable;
+v57=v4.polygonOffset_enable;
+v58=v4.sample_alpha;
+v59=v4.sample_enable;
+v60=v4.stencil_enable;
+v61=v4.scissor_enable;
+v68=v4.depth_func;
+v69=v5.depth_func;
+v72=v4.depth_mask;
+v73=v5.depth_mask;
+v76=v4.cull_face;
+v77=v5.cull_face;
+v78=v4.frontFace;
+v79=v5.frontFace;
+v80=v4.lineWidth;
+v81=v5.lineWidth;
+v86=v4.stencil_mask;
+v87=v5.stencil_mask;
+v49=v13.next;
+if(v49){
+v1.bindFramebuffer(36160,v49.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v49;
+v50=v10;
+v51=0;
+for(var i=0;
+i<g52;
+++i){
+v51=v50[i];
+if(v51.buffer){
+v1.enableVertexAttribArray(i);
+v1.bindBuffer(34962,v51.buffer.buffer);
+v1.vertexAttribPointer(i,v51.size,v51.type,v51.normalized,v51.stride,v51.offset);
+}
+else{
+v1.disableVertexAttribArray(i);
+v1.vertexAttrib4f(i,v51.x,v51.y,v51.z,v51.w);
+v51.buffer=null;
+}
+}
+v11.currentVAO=null;
+v11.setVAO(v11.targetVAO);
+if(v53){
+v1.enable(3024)}
+else{
+v1.disable(3024)}
+v5.dither=v53;
+if(v54){
+v1.enable(3042)}
+else{
+v1.disable(3042)}
+v5.blend_enable=v54;
+if(v55){
+v1.enable(2929)}
+else{
+v1.disable(2929)}
+v5.depth_enable=v55;
+if(v56){
+v1.enable(2884)}
+else{
+v1.disable(2884)}
+v5.cull_enable=v56;
+if(v57){
+v1.enable(32823)}
+else{
+v1.disable(32823)}
+v5.polygonOffset_enable=v57;
+if(v58){
+v1.enable(32926)}
+else{
+v1.disable(32926)}
+v5.sample_alpha=v58;
+if(v59){
+v1.enable(32928)}
+else{
+v1.disable(32928)}
+v5.sample_enable=v59;
+if(v60){
+v1.enable(2960)}
+else{
+v1.disable(2960)}
+v5.stencil_enable=v60;
+if(v61){
+v1.enable(3089)}
+else{
+v1.disable(3089)}
+v5.scissor_enable=v61;
+v1.blendColor(v62[0],v62[1],v62[2],v62[3]);
+v63[0]=v62[0];
+v63[1]=v62[1];
+v63[2]=v62[2];
+v63[3]=v62[3];
+v1.blendEquationSeparate(v64[0],v64[1]);
+v65[0]=v64[0];
+v65[1]=v64[1];
+v1.blendFuncSeparate(v66[0],v66[1],v66[2],v66[3]);
+v67[0]=v66[0];
+v67[1]=v66[1];
+v67[2]=v66[2];
+v67[3]=v66[3];
+v1.depthFunc(v68);
+v5.depth_func=v68;
+v1.depthRange(v70[0],v70[1]);
+v71[0]=v70[0];
+v71[1]=v70[1];
+v1.depthMask(v72);
+v5.depth_mask=v72;
+v1.colorMask(v74[0],v74[1],v74[2],v74[3]);
+v75[0]=v74[0];
+v75[1]=v74[1];
+v75[2]=v74[2];
+v75[3]=v74[3];
+v1.cullFace(v76);
+v5.cull_face=v76;
+v1.frontFace(v78);
+v5.frontFace=v78;
+v1.lineWidth(v80);
+v5.lineWidth=v80;
+v1.polygonOffset(v82[0],v82[1]);
+v83[0]=v82[0];
+v83[1]=v82[1];
+v1.sampleCoverage(v84[0],v84[1]);
+v85[0]=v84[0];
+v85[1]=v84[1];
+v1.stencilMask(v86);
+v5.stencil_mask=v86;
+v1.stencilFunc(v88[0],v88[1],v88[2]);
+v89[0]=v88[0];
+v89[1]=v88[1];
+v89[2]=v88[2];
+v1.stencilOpSeparate(v90[0],v90[1],v90[2],v90[3]);
+v91[0]=v90[0];
+v91[1]=v90[1];
+v91[2]=v90[2];
+v91[3]=v90[3];
+v1.stencilOpSeparate(v92[0],v92[1],v92[2],v92[3]);
+v93[0]=v92[0];
+v93[1]=v92[1];
+v93[2]=v92[2];
+v93[3]=v92[3];
+v1.scissor(v94[0],v94[1],v94[2],v94[3]);
+v95[0]=v94[0];
+v95[1]=v94[1];
+v95[2]=v94[2];
+v95[3]=v94[3];
+v1.viewport(v96[0],v96[1],v96[2],v96[3]);
+v97[0]=v96[0];
+v97[1]=v96[1];
+v97[2]=v96[2];
+v97[3]=v96[3];
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210 b/src/generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210
new file mode 100644
index 00000000000..4db24cdf0d9
--- /dev/null
+++ b/src/generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210
@@ -0,0 +1,1423 @@
+module.exports = function anonymous(g0,g48,g92,g93,g99,g100,g103,g119,g137,g141,g147,g149,g151,g155,g159,g163,g167,g184,g186,g188,g190,g192,g194,g196,g198,g200,g202,g204,g206,g217,g219,g227,g231,g234,g237,g240,g243,g246,g249,g252,g255,g257,g259,g275,g302,g315,g317,g353,g354,g355,g356
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v49,v50;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v49={
+}
+;
+v49.stride=8;
+v49.offset=8;
+v50={
+}
+;
+v50.stride=8;
+v50.offset=8;
+return {
+"draw":function(a0){
+var v51,v52,v85,v86,v87,v88,v89,v90,v91,v94,v95,v96,v97,v98,v101,v102,v104,v105,v106,v107,v108,v109,v110,v111,v112,v113,v114,v115,v116,v117,v118,v120,v121,v122,v123,v124,v125,v126,v127,v128,v129,v130,v131,v132,v133,v134,v135,v136,v138,v139,v140,v142,v143,v144,v145,v146,v148,v150,v152,v153,v154,v156,v157,v158,v160,v161,v162,v164,v165,v166,v168,v169,v170,v171,v172;
+v51=v14.angle_instanced_arrays;
+v52=v13.next;
+if(v52!==v13.cur){
+if(v52){
+v1.bindFramebuffer(36160,v52.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v52;
+}
+if(v5.dirty){
+var v53,v54,v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84;
+v53=v4.dither;
+if(v53!==v5.dither){
+if(v53){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v53;
+}
+v54=v4.depth_func;
+if(v54!==v5.depth_func){
+v1.depthFunc(v54);
+v5.depth_func=v54;
+}
+v55=v23[0];
+v56=v23[1];
+if(v55!==v24[0]||v56!==v24[1]){
+v1.depthRange(v55,v56);
+v24[0]=v55;
+v24[1]=v56;
+}
+v57=v4.depth_mask;
+if(v57!==v5.depth_mask){
+v1.depthMask(v57);
+v5.depth_mask=v57;
+}
+v58=v25[0];
+v59=v25[1];
+v60=v25[2];
+v61=v25[3];
+if(v58!==v26[0]||v59!==v26[1]||v60!==v26[2]||v61!==v26[3]){
+v1.colorMask(v58,v59,v60,v61);
+v26[0]=v58;
+v26[1]=v59;
+v26[2]=v60;
+v26[3]=v61;
+}
+v62=v4.cull_enable;
+if(v62!==v5.cull_enable){
+if(v62){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v62;
+}
+v63=v4.cull_face;
+if(v63!==v5.cull_face){
+v1.cullFace(v63);
+v5.cull_face=v63;
+}
+v64=v4.frontFace;
+if(v64!==v5.frontFace){
+v1.frontFace(v64);
+v5.frontFace=v64;
+}
+v65=v4.lineWidth;
+if(v65!==v5.lineWidth){
+v1.lineWidth(v65);
+v5.lineWidth=v65;
+}
+v66=v4.polygonOffset_enable;
+if(v66!==v5.polygonOffset_enable){
+if(v66){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v66;
+}
+v67=v27[0];
+v68=v27[1];
+if(v67!==v28[0]||v68!==v28[1]){
+v1.polygonOffset(v67,v68);
+v28[0]=v67;
+v28[1]=v68;
+}
+v69=v4.sample_alpha;
+if(v69!==v5.sample_alpha){
+if(v69){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v69;
+}
+v70=v4.sample_enable;
+if(v70!==v5.sample_enable){
+if(v70){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v70;
+}
+v71=v29[0];
+v72=v29[1];
+if(v71!==v30[0]||v72!==v30[1]){
+v1.sampleCoverage(v71,v72);
+v30[0]=v71;
+v30[1]=v72;
+}
+v73=v4.stencil_mask;
+if(v73!==v5.stencil_mask){
+v1.stencilMask(v73);
+v5.stencil_mask=v73;
+}
+v74=v31[0];
+v75=v31[1];
+v76=v31[2];
+if(v74!==v32[0]||v75!==v32[1]||v76!==v32[2]){
+v1.stencilFunc(v74,v75,v76);
+v32[0]=v74;
+v32[1]=v75;
+v32[2]=v76;
+}
+v77=v33[0];
+v78=v33[1];
+v79=v33[2];
+v80=v33[3];
+if(v77!==v34[0]||v78!==v34[1]||v79!==v34[2]||v80!==v34[3]){
+v1.stencilOpSeparate(v77,v78,v79,v80);
+v34[0]=v77;
+v34[1]=v78;
+v34[2]=v79;
+v34[3]=v80;
+}
+v81=v35[0];
+v82=v35[1];
+v83=v35[2];
+v84=v35[3];
+if(v81!==v36[0]||v82!==v36[1]||v83!==v36[2]||v84!==v36[3]){
+v1.stencilOpSeparate(v81,v82,v83,v84);
+v36[0]=v81;
+v36[1]=v82;
+v36[2]=v83;
+v36[3]=v84;
+}
+}
+v85=a0["viewport"];
+v86=v85.x|0;
+v87=v85.y|0;
+v88="width" in v85?v85.width|0:(v2.framebufferWidth-v86);
+v89="height" in v85?v85.height|0:(v2.framebufferHeight-v87);
+v90=v2.viewportWidth;
+v2.viewportWidth=v88;
+v91=v2.viewportHeight;
+v2.viewportHeight=v89;
+v1.viewport(v86,v87,v88,v89);
+v40[0]=v86;
+v40[1]=v87;
+v40[2]=v88;
+v40[3]=v89;
+v1.blendColor(0,0,0,0);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=0;
+if(g92){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g92;
+v1.blendEquationSeparate(32774,32774);
+v20[0]=32774;
+v20[1]=32774;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g93){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g93;
+v94=a0["viewport"];
+v95=v94.x|0;
+v96=v94.y|0;
+v97="width" in v94?v94.width|0:(v2.framebufferWidth-v95);
+v98="height" in v94?v94.height|0:(v2.framebufferHeight-v96);
+v1.scissor(v95,v96,v97,v98);
+v38[0]=v95;
+v38[1]=v96;
+v38[2]=v97;
+v38[3]=v98;
+if(g99){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g99;
+if(g100){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g100;
+v101=v5.profile;
+if(v101){
+v102=performance.now();
+g48.count++;
+}
+v1.useProgram(g103.program);
+v104=v14.angle_instanced_arrays;
+v11.setVAO(null);
+v105=a0["positionBuffer"];
+v49.buffer=v105;
+v106=false;
+v107=1;
+v108=0;
+v109=0;
+v110=0;
+v111=0;
+v112=null;
+v113=0;
+v114=false;
+v115=5126;
+v116=0;
+v117=0;
+v118=0;
+if(v16(v49)){
+v106=true;
+v112=v8.createStream(34962,v49);
+v115=v112.dtype;
+}
+else{
+v112=v8.getBuffer(v49);
+if(v112){
+v115=v112.dtype;
+}
+else if("constant" in v49){
+v107=2;
+if(typeof v49.constant === "number"){
+v108=v49.constant;
+v109=v110=v111=0;
+}
+else{
+v108=v49.constant.length>0?v49.constant[0]:0;
+v109=v49.constant.length>1?v49.constant[1]:0;
+v110=v49.constant.length>2?v49.constant[2]:0;
+v111=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v112=v8.createStream(34962,v49.buffer);
+}
+else{
+v112=v8.getBuffer(v49.buffer);
+}
+v115="type" in v49?v46[v49.type]:v112.dtype;
+v114=!!v49.normalized;
+v113=v49.size|0;
+v116=v49.offset|0;
+v117=v49.stride|0;
+v118=v49.divisor|0;
+}
+}
+v120=g119.location;
+v121=v10[v120];
+if(v107===1){
+if(!v121.buffer){
+v1.enableVertexAttribArray(v120);
+}
+v122=v113||2;
+if(v121.type!==v115||v121.size!==v122||v121.buffer!==v112||v121.normalized!==v114||v121.offset!==v116||v121.stride!==v117){
+v1.bindBuffer(34962,v112.buffer);
+v1.vertexAttribPointer(v120,v122,v115,v114,v117,v116);
+v121.type=v115;
+v121.size=v122;
+v121.buffer=v112;
+v121.normalized=v114;
+v121.offset=v116;
+v121.stride=v117;
+}
+if(v121.divisor!==v118){
+v104.vertexAttribDivisorANGLE(v120,v118);
+v121.divisor=v118;
+}
+}
+else{
+if(v121.buffer){
+v1.disableVertexAttribArray(v120);
+v121.buffer=null;
+}
+if(v121.x!==v108||v121.y!==v109||v121.z!==v110||v121.w!==v111){
+v1.vertexAttrib4f(v120,v108,v109,v110,v111);
+v121.x=v108;
+v121.y=v109;
+v121.z=v110;
+v121.w=v111;
+}
+}
+v123=a0["positionFractBuffer"];
+v50.buffer=v123;
+v124=false;
+v125=1;
+v126=0;
+v127=0;
+v128=0;
+v129=0;
+v130=null;
+v131=0;
+v132=false;
+v133=5126;
+v134=0;
+v135=0;
+v136=0;
+if(v16(v50)){
+v124=true;
+v130=v8.createStream(34962,v50);
+v133=v130.dtype;
+}
+else{
+v130=v8.getBuffer(v50);
+if(v130){
+v133=v130.dtype;
+}
+else if("constant" in v50){
+v125=2;
+if(typeof v50.constant === "number"){
+v126=v50.constant;
+v127=v128=v129=0;
+}
+else{
+v126=v50.constant.length>0?v50.constant[0]:0;
+v127=v50.constant.length>1?v50.constant[1]:0;
+v128=v50.constant.length>2?v50.constant[2]:0;
+v129=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v130=v8.createStream(34962,v50.buffer);
+}
+else{
+v130=v8.getBuffer(v50.buffer);
+}
+v133="type" in v50?v46[v50.type]:v130.dtype;
+v132=!!v50.normalized;
+v131=v50.size|0;
+v134=v50.offset|0;
+v135=v50.stride|0;
+v136=v50.divisor|0;
+}
+}
+v138=g137.location;
+v139=v10[v138];
+if(v125===1){
+if(!v139.buffer){
+v1.enableVertexAttribArray(v138);
+}
+v140=v131||2;
+if(v139.type!==v133||v139.size!==v140||v139.buffer!==v130||v139.normalized!==v132||v139.offset!==v134||v139.stride!==v135){
+v1.bindBuffer(34962,v130.buffer);
+v1.vertexAttribPointer(v138,v140,v133,v132,v135,v134);
+v139.type=v133;
+v139.size=v140;
+v139.buffer=v130;
+v139.normalized=v132;
+v139.offset=v134;
+v139.stride=v135;
+}
+if(v139.divisor!==v136){
+v104.vertexAttribDivisorANGLE(v138,v136);
+v139.divisor=v136;
+}
+}
+else{
+if(v139.buffer){
+v1.disableVertexAttribArray(v138);
+v139.buffer=null;
+}
+if(v139.x!==v126||v139.y!==v127||v139.z!==v128||v139.w!==v129){
+v1.vertexAttrib4f(v138,v126,v127,v128,v129);
+v139.x=v126;
+v139.y=v127;
+v139.z=v128;
+v139.w=v129;
+}
+}
+v142=a0["fill"];
+v143=v142[0];
+v144=v142[1];
+v145=v142[2];
+v146=v142[3];
+v1.uniform4f(g141.location,v143,v144,v145,v146);
+v148=a0["id"];
+v1.uniform1f(g147.location,v148);
+v150=a0["opacity"];
+v1.uniform1f(g149.location,v150);
+v152=a0["scale"];
+v153=v152[0];
+v154=v152[1];
+v1.uniform2f(g151.location,v153,v154);
+v156=a0["scaleFract"];
+v157=v156[0];
+v158=v156[1];
+v1.uniform2f(g155.location,v157,v158);
+v160=a0["translate"];
+v161=v160[0];
+v162=v160[1];
+v1.uniform2f(g159.location,v161,v162);
+v164=a0["translateFract"];
+v165=v164[0];
+v166=v164[1];
+v1.uniform2f(g163.location,v165,v166);
+v168=g167.call(this,v2,a0,0);
+v169=null;
+v170=v16(v168);
+if(v170){
+v169=v7.createStream(v168);
+}
+else{
+v169=v7.getElements(v168);
+}
+if(v169)v1.bindBuffer(34963,v169.buffer.buffer);
+v171=v169?v169.vertCount:-1;
+if(v171){
+v172=v6.instances;
+if(v172>0){
+if(v169){
+v104.drawElementsInstancedANGLE(4,v171,v169.type,0<<((v169.type-5121)>>1),v172);
+}
+else{
+v104.drawArraysInstancedANGLE(4,0,v171,v172);
+}
+}
+else if(v172<0){
+if(v169){
+v1.drawElements(4,v171,v169.type,0<<((v169.type-5121)>>1));
+}
+else{
+v1.drawArrays(4,0,v171);
+}
+}
+v5.dirty=true;
+v11.setVAO(null);
+v2.viewportWidth=v90;
+v2.viewportHeight=v91;
+if(v101){
+g48.cpuTime+=performance.now()-v102;
+}
+if(v106){
+v8.destroyStream(v112);
+}
+if(v124){
+v8.destroyStream(v130);
+}
+if(v170){
+v7.destroyStream(v169);
+}
+}
+}
+,"scope":function(a0,a1,a2){
+var v173,v174,v175,v176,v177,v178,v179,v180,v181,v182,v183,v185,v187,v189,v191,v193,v195,v197,v199,v201,v203,v205,v207,v208,v209,v210,v211,v212,v213,v214,v215,v216,v218,v220,v221,v222,v223,v224,v225,v226,v228,v229,v230,v232,v233,v235,v236,v238,v239,v241,v242,v244,v245,v247,v248,v250,v251,v253,v254,v256,v258,v260,v261,v262,v263,v264,v265,v266,v267,v268,v269,v270,v271,v272,v273,v274,v276,v277,v278,v279,v280,v281,v282,v283,v284,v285,v286,v287,v288,v289,v290,v291,v292,v293,v294,v295,v296,v297,v298,v299,v300,v301,v303,v304,v305,v306,v307,v308,v309,v310,v311,v312,v313,v314,v316,v318;
+v173=a0["viewport"];
+v174=v173.x|0;
+v175=v173.y|0;
+v176="width" in v173?v173.width|0:(v2.framebufferWidth-v174);
+v177="height" in v173?v173.height|0:(v2.framebufferHeight-v175);
+v178=v2.viewportWidth;
+v2.viewportWidth=v176;
+v179=v2.viewportHeight;
+v2.viewportHeight=v177;
+v180=v39[0];
+v39[0]=v174;
+v181=v39[1];
+v39[1]=v175;
+v182=v39[2];
+v39[2]=v176;
+v183=v39[3];
+v39[3]=v177;
+v185=v17[0];
+v17[0]=g184;
+v187=v17[1];
+v17[1]=g186;
+v189=v17[2];
+v17[2]=g188;
+v191=v17[3];
+v17[3]=g190;
+v193=v4.blend_enable;
+v4.blend_enable=g192;
+v195=v19[0];
+v19[0]=g194;
+v197=v19[1];
+v19[1]=g196;
+v199=v21[0];
+v21[0]=g198;
+v201=v21[1];
+v21[1]=g200;
+v203=v21[2];
+v21[2]=g202;
+v205=v21[3];
+v21[3]=g204;
+v207=v4.depth_enable;
+v4.depth_enable=g206;
+v208=a0["viewport"];
+v209=v208.x|0;
+v210=v208.y|0;
+v211="width" in v208?v208.width|0:(v2.framebufferWidth-v209);
+v212="height" in v208?v208.height|0:(v2.framebufferHeight-v210);
+v213=v37[0];
+v37[0]=v209;
+v214=v37[1];
+v37[1]=v210;
+v215=v37[2];
+v37[2]=v211;
+v216=v37[3];
+v37[3]=v212;
+v218=v4.scissor_enable;
+v4.scissor_enable=g217;
+v220=v4.stencil_enable;
+v4.stencil_enable=g219;
+v221=v5.profile;
+if(v221){
+v222=performance.now();
+g48.count++;
+}
+v223=g167.call(this,v2,a0,a2);
+v224=null;
+v225=v16(v223);
+if(v225){
+v224=v7.createStream(v223);
+}
+else{
+v224=v7.getElements(v223);
+}
+v226=v6.elements;
+v6.elements=v224;
+v228=v6.offset;
+v6.offset=g227;
+v229=v224?v224.vertCount:-1;
+v230=v6.count;
+v6.count=v229;
+v232=v6.primitive;
+v6.primitive=g231;
+v233=a0["scale"];
+v235=v12[g234];
+v12[g234]=v233;
+v236=a0["fill"];
+v238=v12[g237];
+v12[g237]=v236;
+v239=a0["scaleFract"];
+v241=v12[g240];
+v12[g240]=v239;
+v242=a0["translateFract"];
+v244=v12[g243];
+v12[g243]=v242;
+v245=a0["translate"];
+v247=v12[g246];
+v12[g246]=v245;
+v248=a0["opacity"];
+v250=v12[g249];
+v12[g249]=v248;
+v251=v2["pixelRatio"];
+v253=v12[g252];
+v12[g252]=v251;
+v254=a0["id"];
+v256=v12[g255];
+v12[g255]=v254;
+v258=g257.call(this,v2,a0,a2);
+v260=v12[g259];
+v12[g259]=v258;
+v261=a0["positionBuffer"];
+v49.buffer=v261;
+v262=false;
+v263=1;
+v264=0;
+v265=0;
+v266=0;
+v267=0;
+v268=null;
+v269=0;
+v270=false;
+v271=5126;
+v272=0;
+v273=0;
+v274=0;
+if(v16(v49)){
+v262=true;
+v268=v8.createStream(34962,v49);
+v271=v268.dtype;
+}
+else{
+v268=v8.getBuffer(v49);
+if(v268){
+v271=v268.dtype;
+}
+else if("constant" in v49){
+v263=2;
+if(typeof v49.constant === "number"){
+v264=v49.constant;
+v265=v266=v267=0;
+}
+else{
+v264=v49.constant.length>0?v49.constant[0]:0;
+v265=v49.constant.length>1?v49.constant[1]:0;
+v266=v49.constant.length>2?v49.constant[2]:0;
+v267=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v268=v8.createStream(34962,v49.buffer);
+}
+else{
+v268=v8.getBuffer(v49.buffer);
+}
+v271="type" in v49?v46[v49.type]:v268.dtype;
+v270=!!v49.normalized;
+v269=v49.size|0;
+v272=v49.offset|0;
+v273=v49.stride|0;
+v274=v49.divisor|0;
+}
+}
+v276=g275.state;
+g275.state=v263;
+v277=g275.x;
+g275.x=v264;
+v278=g275.y;
+g275.y=v265;
+v279=g275.z;
+g275.z=v266;
+v280=g275.w;
+g275.w=v267;
+v281=g275.buffer;
+g275.buffer=v268;
+v282=g275.size;
+g275.size=v269;
+v283=g275.normalized;
+g275.normalized=v270;
+v284=g275.type;
+g275.type=v271;
+v285=g275.offset;
+g275.offset=v272;
+v286=g275.stride;
+g275.stride=v273;
+v287=g275.divisor;
+g275.divisor=v274;
+v288=a0["positionFractBuffer"];
+v50.buffer=v288;
+v289=false;
+v290=1;
+v291=0;
+v292=0;
+v293=0;
+v294=0;
+v295=null;
+v296=0;
+v297=false;
+v298=5126;
+v299=0;
+v300=0;
+v301=0;
+if(v16(v50)){
+v289=true;
+v295=v8.createStream(34962,v50);
+v298=v295.dtype;
+}
+else{
+v295=v8.getBuffer(v50);
+if(v295){
+v298=v295.dtype;
+}
+else if("constant" in v50){
+v290=2;
+if(typeof v50.constant === "number"){
+v291=v50.constant;
+v292=v293=v294=0;
+}
+else{
+v291=v50.constant.length>0?v50.constant[0]:0;
+v292=v50.constant.length>1?v50.constant[1]:0;
+v293=v50.constant.length>2?v50.constant[2]:0;
+v294=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v295=v8.createStream(34962,v50.buffer);
+}
+else{
+v295=v8.getBuffer(v50.buffer);
+}
+v298="type" in v50?v46[v50.type]:v295.dtype;
+v297=!!v50.normalized;
+v296=v50.size|0;
+v299=v50.offset|0;
+v300=v50.stride|0;
+v301=v50.divisor|0;
+}
+}
+v303=g302.state;
+g302.state=v290;
+v304=g302.x;
+g302.x=v291;
+v305=g302.y;
+g302.y=v292;
+v306=g302.z;
+g302.z=v293;
+v307=g302.w;
+g302.w=v294;
+v308=g302.buffer;
+g302.buffer=v295;
+v309=g302.size;
+g302.size=v296;
+v310=g302.normalized;
+g302.normalized=v297;
+v311=g302.type;
+g302.type=v298;
+v312=g302.offset;
+g302.offset=v299;
+v313=g302.stride;
+g302.stride=v300;
+v314=g302.divisor;
+g302.divisor=v301;
+v316=v9.vert;
+v9.vert=g315;
+v318=v9.frag;
+v9.frag=g317;
+v5.dirty=true;
+a1(v2,a0,a2);
+v2.viewportWidth=v178;
+v2.viewportHeight=v179;
+v39[0]=v180;
+v39[1]=v181;
+v39[2]=v182;
+v39[3]=v183;
+v17[0]=v185;
+v17[1]=v187;
+v17[2]=v189;
+v17[3]=v191;
+v4.blend_enable=v193;
+v19[0]=v195;
+v19[1]=v197;
+v21[0]=v199;
+v21[1]=v201;
+v21[2]=v203;
+v21[3]=v205;
+v4.depth_enable=v207;
+v37[0]=v213;
+v37[1]=v214;
+v37[2]=v215;
+v37[3]=v216;
+v4.scissor_enable=v218;
+v4.stencil_enable=v220;
+if(v221){
+g48.cpuTime+=performance.now()-v222;
+}
+if(v225){
+v7.destroyStream(v224);
+}
+v6.elements=v226;
+v6.offset=v228;
+v6.count=v230;
+v6.primitive=v232;
+v12[g234]=v235;
+v12[g237]=v238;
+v12[g240]=v241;
+v12[g243]=v244;
+v12[g246]=v247;
+v12[g249]=v250;
+v12[g252]=v253;
+v12[g255]=v256;
+v12[g259]=v260;
+if(v262){
+v8.destroyStream(v268);
+}
+g275.state=v276;
+g275.x=v277;
+g275.y=v278;
+g275.z=v279;
+g275.w=v280;
+g275.buffer=v281;
+g275.size=v282;
+g275.normalized=v283;
+g275.type=v284;
+g275.offset=v285;
+g275.stride=v286;
+g275.divisor=v287;
+if(v289){
+v8.destroyStream(v295);
+}
+g302.state=v303;
+g302.x=v304;
+g302.y=v305;
+g302.z=v306;
+g302.w=v307;
+g302.buffer=v308;
+g302.size=v309;
+g302.normalized=v310;
+g302.type=v311;
+g302.offset=v312;
+g302.stride=v313;
+g302.divisor=v314;
+v9.vert=v316;
+v9.frag=v318;
+v5.dirty=true;
+}
+,"batch":function(a0,a1){
+var v319,v320,v357,v358,v359,v360,v361;
+v319=v14.angle_instanced_arrays;
+v320=v13.next;
+if(v320!==v13.cur){
+if(v320){
+v1.bindFramebuffer(36160,v320.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v320;
+}
+if(v5.dirty){
+var v321,v322,v323,v324,v325,v326,v327,v328,v329,v330,v331,v332,v333,v334,v335,v336,v337,v338,v339,v340,v341,v342,v343,v344,v345,v346,v347,v348,v349,v350,v351,v352;
+v321=v4.dither;
+if(v321!==v5.dither){
+if(v321){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v321;
+}
+v322=v4.depth_func;
+if(v322!==v5.depth_func){
+v1.depthFunc(v322);
+v5.depth_func=v322;
+}
+v323=v23[0];
+v324=v23[1];
+if(v323!==v24[0]||v324!==v24[1]){
+v1.depthRange(v323,v324);
+v24[0]=v323;
+v24[1]=v324;
+}
+v325=v4.depth_mask;
+if(v325!==v5.depth_mask){
+v1.depthMask(v325);
+v5.depth_mask=v325;
+}
+v326=v25[0];
+v327=v25[1];
+v328=v25[2];
+v329=v25[3];
+if(v326!==v26[0]||v327!==v26[1]||v328!==v26[2]||v329!==v26[3]){
+v1.colorMask(v326,v327,v328,v329);
+v26[0]=v326;
+v26[1]=v327;
+v26[2]=v328;
+v26[3]=v329;
+}
+v330=v4.cull_enable;
+if(v330!==v5.cull_enable){
+if(v330){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v330;
+}
+v331=v4.cull_face;
+if(v331!==v5.cull_face){
+v1.cullFace(v331);
+v5.cull_face=v331;
+}
+v332=v4.frontFace;
+if(v332!==v5.frontFace){
+v1.frontFace(v332);
+v5.frontFace=v332;
+}
+v333=v4.lineWidth;
+if(v333!==v5.lineWidth){
+v1.lineWidth(v333);
+v5.lineWidth=v333;
+}
+v334=v4.polygonOffset_enable;
+if(v334!==v5.polygonOffset_enable){
+if(v334){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v334;
+}
+v335=v27[0];
+v336=v27[1];
+if(v335!==v28[0]||v336!==v28[1]){
+v1.polygonOffset(v335,v336);
+v28[0]=v335;
+v28[1]=v336;
+}
+v337=v4.sample_alpha;
+if(v337!==v5.sample_alpha){
+if(v337){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v337;
+}
+v338=v4.sample_enable;
+if(v338!==v5.sample_enable){
+if(v338){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v338;
+}
+v339=v29[0];
+v340=v29[1];
+if(v339!==v30[0]||v340!==v30[1]){
+v1.sampleCoverage(v339,v340);
+v30[0]=v339;
+v30[1]=v340;
+}
+v341=v4.stencil_mask;
+if(v341!==v5.stencil_mask){
+v1.stencilMask(v341);
+v5.stencil_mask=v341;
+}
+v342=v31[0];
+v343=v31[1];
+v344=v31[2];
+if(v342!==v32[0]||v343!==v32[1]||v344!==v32[2]){
+v1.stencilFunc(v342,v343,v344);
+v32[0]=v342;
+v32[1]=v343;
+v32[2]=v344;
+}
+v345=v33[0];
+v346=v33[1];
+v347=v33[2];
+v348=v33[3];
+if(v345!==v34[0]||v346!==v34[1]||v347!==v34[2]||v348!==v34[3]){
+v1.stencilOpSeparate(v345,v346,v347,v348);
+v34[0]=v345;
+v34[1]=v346;
+v34[2]=v347;
+v34[3]=v348;
+}
+v349=v35[0];
+v350=v35[1];
+v351=v35[2];
+v352=v35[3];
+if(v349!==v36[0]||v350!==v36[1]||v351!==v36[2]||v352!==v36[3]){
+v1.stencilOpSeparate(v349,v350,v351,v352);
+v36[0]=v349;
+v36[1]=v350;
+v36[2]=v351;
+v36[3]=v352;
+}
+}
+v1.blendColor(0,0,0,0);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=0;
+if(g353){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g353;
+v1.blendEquationSeparate(32774,32774);
+v20[0]=32774;
+v20[1]=32774;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g354){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g354;
+if(g355){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g355;
+if(g356){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g356;
+v357=v5.profile;
+if(v357){
+v358=performance.now();
+g48.count+=a1;
+}
+v1.useProgram(g103.program);
+v359=v14.angle_instanced_arrays;
+var v445;
+v11.setVAO(null);
+v445=v6.instances;
+for(v360=0;
+v360<a1;
+++v360){
+v361=a0[v360];
+var v362,v363,v364,v365,v366,v367,v368,v369,v370,v371,v372,v373,v374,v375,v376,v377,v378,v379,v380,v381,v382,v383,v384,v385,v386,v387,v388,v389,v390,v391,v392,v393,v394,v395,v396,v397,v398,v399,v400,v401,v402,v403,v404,v405,v406,v407,v408,v409,v410,v411,v412,v413,v414,v415,v416,v417,v418,v419,v420,v421,v422,v423,v424,v425,v426,v427,v428,v429,v430,v431,v432,v433,v434,v435,v436,v437,v438,v439,v440,v441,v442,v443,v444;
+v362=v361["viewport"];
+v363=v362.x|0;
+v364=v362.y|0;
+v365="width" in v362?v362.width|0:(v2.framebufferWidth-v363);
+v366="height" in v362?v362.height|0:(v2.framebufferHeight-v364);
+v367=v2.viewportWidth;
+v2.viewportWidth=v365;
+v368=v2.viewportHeight;
+v2.viewportHeight=v366;
+v1.viewport(v363,v364,v365,v366);
+v40[0]=v363;
+v40[1]=v364;
+v40[2]=v365;
+v40[3]=v366;
+v369=v361["viewport"];
+v370=v369.x|0;
+v371=v369.y|0;
+v372="width" in v369?v369.width|0:(v2.framebufferWidth-v370);
+v373="height" in v369?v369.height|0:(v2.framebufferHeight-v371);
+v1.scissor(v370,v371,v372,v373);
+v38[0]=v370;
+v38[1]=v371;
+v38[2]=v372;
+v38[3]=v373;
+v374=v361["positionBuffer"];
+v49.buffer=v374;
+v375=false;
+v376=1;
+v377=0;
+v378=0;
+v379=0;
+v380=0;
+v381=null;
+v382=0;
+v383=false;
+v384=5126;
+v385=0;
+v386=0;
+v387=0;
+if(v16(v49)){
+v375=true;
+v381=v8.createStream(34962,v49);
+v384=v381.dtype;
+}
+else{
+v381=v8.getBuffer(v49);
+if(v381){
+v384=v381.dtype;
+}
+else if("constant" in v49){
+v376=2;
+if(typeof v49.constant === "number"){
+v377=v49.constant;
+v378=v379=v380=0;
+}
+else{
+v377=v49.constant.length>0?v49.constant[0]:0;
+v378=v49.constant.length>1?v49.constant[1]:0;
+v379=v49.constant.length>2?v49.constant[2]:0;
+v380=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v381=v8.createStream(34962,v49.buffer);
+}
+else{
+v381=v8.getBuffer(v49.buffer);
+}
+v384="type" in v49?v46[v49.type]:v381.dtype;
+v383=!!v49.normalized;
+v382=v49.size|0;
+v385=v49.offset|0;
+v386=v49.stride|0;
+v387=v49.divisor|0;
+}
+}
+v388=g119.location;
+v389=v10[v388];
+if(v376===1){
+if(!v389.buffer){
+v1.enableVertexAttribArray(v388);
+}
+v390=v382||2;
+if(v389.type!==v384||v389.size!==v390||v389.buffer!==v381||v389.normalized!==v383||v389.offset!==v385||v389.stride!==v386){
+v1.bindBuffer(34962,v381.buffer);
+v1.vertexAttribPointer(v388,v390,v384,v383,v386,v385);
+v389.type=v384;
+v389.size=v390;
+v389.buffer=v381;
+v389.normalized=v383;
+v389.offset=v385;
+v389.stride=v386;
+}
+if(v389.divisor!==v387){
+v359.vertexAttribDivisorANGLE(v388,v387);
+v389.divisor=v387;
+}
+}
+else{
+if(v389.buffer){
+v1.disableVertexAttribArray(v388);
+v389.buffer=null;
+}
+if(v389.x!==v377||v389.y!==v378||v389.z!==v379||v389.w!==v380){
+v1.vertexAttrib4f(v388,v377,v378,v379,v380);
+v389.x=v377;
+v389.y=v378;
+v389.z=v379;
+v389.w=v380;
+}
+}
+v391=v361["positionFractBuffer"];
+v50.buffer=v391;
+v392=false;
+v393=1;
+v394=0;
+v395=0;
+v396=0;
+v397=0;
+v398=null;
+v399=0;
+v400=false;
+v401=5126;
+v402=0;
+v403=0;
+v404=0;
+if(v16(v50)){
+v392=true;
+v398=v8.createStream(34962,v50);
+v401=v398.dtype;
+}
+else{
+v398=v8.getBuffer(v50);
+if(v398){
+v401=v398.dtype;
+}
+else if("constant" in v50){
+v393=2;
+if(typeof v50.constant === "number"){
+v394=v50.constant;
+v395=v396=v397=0;
+}
+else{
+v394=v50.constant.length>0?v50.constant[0]:0;
+v395=v50.constant.length>1?v50.constant[1]:0;
+v396=v50.constant.length>2?v50.constant[2]:0;
+v397=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v398=v8.createStream(34962,v50.buffer);
+}
+else{
+v398=v8.getBuffer(v50.buffer);
+}
+v401="type" in v50?v46[v50.type]:v398.dtype;
+v400=!!v50.normalized;
+v399=v50.size|0;
+v402=v50.offset|0;
+v403=v50.stride|0;
+v404=v50.divisor|0;
+}
+}
+v405=g137.location;
+v406=v10[v405];
+if(v393===1){
+if(!v406.buffer){
+v1.enableVertexAttribArray(v405);
+}
+v407=v399||2;
+if(v406.type!==v401||v406.size!==v407||v406.buffer!==v398||v406.normalized!==v400||v406.offset!==v402||v406.stride!==v403){
+v1.bindBuffer(34962,v398.buffer);
+v1.vertexAttribPointer(v405,v407,v401,v400,v403,v402);
+v406.type=v401;
+v406.size=v407;
+v406.buffer=v398;
+v406.normalized=v400;
+v406.offset=v402;
+v406.stride=v403;
+}
+if(v406.divisor!==v404){
+v359.vertexAttribDivisorANGLE(v405,v404);
+v406.divisor=v404;
+}
+}
+else{
+if(v406.buffer){
+v1.disableVertexAttribArray(v405);
+v406.buffer=null;
+}
+if(v406.x!==v394||v406.y!==v395||v406.z!==v396||v406.w!==v397){
+v1.vertexAttrib4f(v405,v394,v395,v396,v397);
+v406.x=v394;
+v406.y=v395;
+v406.z=v396;
+v406.w=v397;
+}
+}
+v408=v361["fill"];
+v409=v408[0];
+v411=v408[1];
+v413=v408[2];
+v415=v408[3];
+if(!v360||v410!==v409||v412!==v411||v414!==v413||v416!==v415){
+v410=v409;
+v412=v411;
+v414=v413;
+v416=v415;
+v1.uniform4f(g141.location,v409,v411,v413,v415);
+}
+v417=v361["id"];
+if(!v360||v418!==v417){
+v418=v417;
+v1.uniform1f(g147.location,v417);
+}
+v419=v361["opacity"];
+if(!v360||v420!==v419){
+v420=v419;
+v1.uniform1f(g149.location,v419);
+}
+v421=v361["scale"];
+v422=v421[0];
+v424=v421[1];
+if(!v360||v423!==v422||v425!==v424){
+v423=v422;
+v425=v424;
+v1.uniform2f(g151.location,v422,v424);
+}
+v426=v361["scaleFract"];
+v427=v426[0];
+v429=v426[1];
+if(!v360||v428!==v427||v430!==v429){
+v428=v427;
+v430=v429;
+v1.uniform2f(g155.location,v427,v429);
+}
+v431=v361["translate"];
+v432=v431[0];
+v434=v431[1];
+if(!v360||v433!==v432||v435!==v434){
+v433=v432;
+v435=v434;
+v1.uniform2f(g159.location,v432,v434);
+}
+v436=v361["translateFract"];
+v437=v436[0];
+v439=v436[1];
+if(!v360||v438!==v437||v440!==v439){
+v438=v437;
+v440=v439;
+v1.uniform2f(g163.location,v437,v439);
+}
+v441=g167.call(this,v2,v361,v360);
+v442=null;
+v443=v16(v441);
+if(v443){
+v442=v7.createStream(v441);
+}
+else{
+v442=v7.getElements(v441);
+}
+if(v442)v1.bindBuffer(34963,v442.buffer.buffer);
+v444=v442?v442.vertCount:-1;
+if(v444){
+if(v445>0){
+if(v442){
+v359.drawElementsInstancedANGLE(4,v444,v442.type,0<<((v442.type-5121)>>1),v445);
+}
+else{
+v359.drawArraysInstancedANGLE(4,0,v444,v445);
+}
+}
+else if(v445<0){
+if(v442){
+v1.drawElements(4,v444,v442.type,0<<((v442.type-5121)>>1));
+}
+else{
+v1.drawArrays(4,0,v444);
+}
+}
+v2.viewportWidth=v367;
+v2.viewportHeight=v368;
+if(v375){
+v8.destroyStream(v381);
+}
+if(v392){
+v8.destroyStream(v398);
+}
+if(v443){
+v7.destroyStream(v442);
+}
+}
+}
+v5.dirty=true;
+v11.setVAO(null);
+if(v357){
+g48.cpuTime+=performance.now()-v358;
+}
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/4df455b48c9de7d9f1de4b9481b505c09613ba7f90d2b4e360e673839566688e b/src/generated/regl-codegen/4df455b48c9de7d9f1de4b9481b505c09613ba7f90d2b4e360e673839566688e
deleted file mode 100644
index 57535725df9..00000000000
--- a/src/generated/regl-codegen/4df455b48c9de7d9f1de4b9481b505c09613ba7f90d2b4e360e673839566688e
+++ /dev/null
@@ -1,662 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g55,g119,g129,g131,g137,g139,g199
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v116,v196;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v116={
-}
-;
-v196={
-}
-;
-return {
-"draw":function(a0){
-var v53,v54,v56,v57,v58,v105,v106,v107,v108,v109,v110,v111,v112,v113,v114,v115,v117,v118;
-v53=a0["framebuffer"];
-v54=v13.getFramebuffer(v53);
-if(!(!v53||v54))g18.commandRaise(g55,g19);
-v56=v13.next;
-v13.next=v54;
-v57=v2.framebufferWidth;
-v2.framebufferWidth=v54?v54.width:v2.drawingBufferWidth;
-v58=v2.framebufferHeight;
-v2.framebufferHeight=v54?v54.height:v2.drawingBufferHeight;
-if(v54!==v13.cur){
-if(v54){
-v1.bindFramebuffer(36160,v54.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v54;
-}
-if(v5.dirty){
-var v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93,v94,v95,v96,v97,v98,v99,v100,v101,v102,v103,v104;
-v59=v4.dither;
-if(v59!==v5.dither){
-if(v59){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v59;
-}
-v60=v4.blend_enable;
-if(v60!==v5.blend_enable){
-if(v60){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=v60;
-}
-v61=v20[0];
-v62=v20[1];
-v63=v20[2];
-v64=v20[3];
-if(v61!==v21[0]||v62!==v21[1]||v63!==v21[2]||v64!==v21[3]){
-v1.blendColor(v61,v62,v63,v64);
-v21[0]=v61;
-v21[1]=v62;
-v21[2]=v63;
-v21[3]=v64;
-}
-v65=v22[0];
-v66=v22[1];
-if(v65!==v23[0]||v66!==v23[1]){
-v1.blendEquationSeparate(v65,v66);
-v23[0]=v65;
-v23[1]=v66;
-}
-v67=v24[0];
-v68=v24[1];
-v69=v24[2];
-v70=v24[3];
-if(v67!==v25[0]||v68!==v25[1]||v69!==v25[2]||v70!==v25[3]){
-v1.blendFuncSeparate(v67,v68,v69,v70);
-v25[0]=v67;
-v25[1]=v68;
-v25[2]=v69;
-v25[3]=v70;
-}
-v71=v4.depth_enable;
-if(v71!==v5.depth_enable){
-if(v71){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v71;
-}
-v72=v4.depth_func;
-if(v72!==v5.depth_func){
-v1.depthFunc(v72);
-v5.depth_func=v72;
-}
-v73=v26[0];
-v74=v26[1];
-if(v73!==v27[0]||v74!==v27[1]){
-v1.depthRange(v73,v74);
-v27[0]=v73;
-v27[1]=v74;
-}
-v75=v4.depth_mask;
-if(v75!==v5.depth_mask){
-v1.depthMask(v75);
-v5.depth_mask=v75;
-}
-v76=v28[0];
-v77=v28[1];
-v78=v28[2];
-v79=v28[3];
-if(v76!==v29[0]||v77!==v29[1]||v78!==v29[2]||v79!==v29[3]){
-v1.colorMask(v76,v77,v78,v79);
-v29[0]=v76;
-v29[1]=v77;
-v29[2]=v78;
-v29[3]=v79;
-}
-v80=v4.cull_enable;
-if(v80!==v5.cull_enable){
-if(v80){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v80;
-}
-v81=v4.cull_face;
-if(v81!==v5.cull_face){
-v1.cullFace(v81);
-v5.cull_face=v81;
-}
-v82=v4.frontFace;
-if(v82!==v5.frontFace){
-v1.frontFace(v82);
-v5.frontFace=v82;
-}
-v83=v4.lineWidth;
-if(v83!==v5.lineWidth){
-v1.lineWidth(v83);
-v5.lineWidth=v83;
-}
-v84=v4.polygonOffset_enable;
-if(v84!==v5.polygonOffset_enable){
-if(v84){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v84;
-}
-v85=v30[0];
-v86=v30[1];
-if(v85!==v31[0]||v86!==v31[1]){
-v1.polygonOffset(v85,v86);
-v31[0]=v85;
-v31[1]=v86;
-}
-v87=v4.sample_alpha;
-if(v87!==v5.sample_alpha){
-if(v87){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v87;
-}
-v88=v4.sample_enable;
-if(v88!==v5.sample_enable){
-if(v88){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v88;
-}
-v89=v32[0];
-v90=v32[1];
-if(v89!==v33[0]||v90!==v33[1]){
-v1.sampleCoverage(v89,v90);
-v33[0]=v89;
-v33[1]=v90;
-}
-v91=v4.stencil_enable;
-if(v91!==v5.stencil_enable){
-if(v91){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v91;
-}
-v92=v4.stencil_mask;
-if(v92!==v5.stencil_mask){
-v1.stencilMask(v92);
-v5.stencil_mask=v92;
-}
-v93=v34[0];
-v94=v34[1];
-v95=v34[2];
-if(v93!==v35[0]||v94!==v35[1]||v95!==v35[2]){
-v1.stencilFunc(v93,v94,v95);
-v35[0]=v93;
-v35[1]=v94;
-v35[2]=v95;
-}
-v96=v36[0];
-v97=v36[1];
-v98=v36[2];
-v99=v36[3];
-if(v96!==v37[0]||v97!==v37[1]||v98!==v37[2]||v99!==v37[3]){
-v1.stencilOpSeparate(v96,v97,v98,v99);
-v37[0]=v96;
-v37[1]=v97;
-v37[2]=v98;
-v37[3]=v99;
-}
-v100=v38[0];
-v101=v38[1];
-v102=v38[2];
-v103=v38[3];
-if(v100!==v39[0]||v101!==v39[1]||v102!==v39[2]||v103!==v39[3]){
-v1.stencilOpSeparate(v100,v101,v102,v103);
-v39[0]=v100;
-v39[1]=v101;
-v39[2]=v102;
-v39[3]=v103;
-}
-v104=v4.scissor_enable;
-if(v104!==v5.scissor_enable){
-if(v104){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=v104;
-}
-}
-v105=v2.framebufferWidth;
-v106=v2.framebufferHeight;
-v107=v2.viewportWidth;
-v2.viewportWidth=v105;
-v108=v2.viewportHeight;
-v2.viewportHeight=v106;
-v1.viewport(0,0,v105,v106);
-v43[0]=0;
-v43[1]=0;
-v43[2]=v105;
-v43[3]=v106;
-v109=v2.framebufferWidth;
-v110=v2.framebufferHeight;
-v1.scissor(0,0,v109,v110);
-v41[0]=0;
-v41[1]=0;
-v41[2]=v109;
-v41[3]=v110;
-v111=v5.profile;
-if(v111){
-v112=performance.now();
-g52.count++;
-}
-v113=v9.frag;
-v114=v9.vert;
-v115=v9.program(v114,v113,g19);
-v1.useProgram(v115.program);
-v11.setVAO(null);
-v117=v115.id;
-v118=v116[v117];
-if(v118){
-v118.call(this,a0);
-}
-else{
-v118=v116[v117]=g119(v115);
-v118.call(this,a0);
-}
-v5.dirty=true;
-v11.setVAO(null);
-v13.next=v56;
-v2.framebufferWidth=v57;
-v2.framebufferHeight=v58;
-v2.viewportWidth=v107;
-v2.viewportHeight=v108;
-if(v111){
-g52.cpuTime+=performance.now()-v112;
-}
-}
-,"scope":function(a0,a1,a2){
-var v120,v121,v122,v123,v124,v125,v126,v127,v128,v130,v132,v133,v134,v135,v136,v138,v140,v141,v142,v143,v144;
-v120=a0["framebuffer"];
-v121=v13.getFramebuffer(v120);
-if(!(!v120||v121))g18.commandRaise(g55,g19);
-v122=v13.next;
-v13.next=v121;
-v123=v2.framebufferWidth;
-v2.framebufferWidth=v121?v121.width:v2.drawingBufferWidth;
-v124=v2.framebufferHeight;
-v2.framebufferHeight=v121?v121.height:v2.drawingBufferHeight;
-v125=v2.framebufferWidth;
-v126=v2.framebufferHeight;
-v127=v2.viewportWidth;
-v2.viewportWidth=v125;
-v128=v2.viewportHeight;
-v2.viewportHeight=v126;
-v130=v42[0];
-v42[0]=g129;
-v132=v42[1];
-v42[1]=g131;
-v133=v42[2];
-v42[2]=v125;
-v134=v42[3];
-v42[3]=v126;
-v135=v2.framebufferWidth;
-v136=v2.framebufferHeight;
-v138=v40[0];
-v40[0]=g137;
-v140=v40[1];
-v40[1]=g139;
-v141=v40[2];
-v40[2]=v135;
-v142=v40[3];
-v40[3]=v136;
-v143=v5.profile;
-if(v143){
-v144=performance.now();
-g52.count++;
-}
-v5.dirty=true;
-a1(v2,a0,a2);
-v13.next=v122;
-v2.framebufferWidth=v123;
-v2.framebufferHeight=v124;
-v2.viewportWidth=v127;
-v2.viewportHeight=v128;
-v42[0]=v130;
-v42[1]=v132;
-v42[2]=v133;
-v42[3]=v134;
-v40[0]=v138;
-v40[1]=v140;
-v40[2]=v141;
-v40[3]=v142;
-if(v143){
-g52.cpuTime+=performance.now()-v144;
-}
-v5.dirty=true;
-}
-,"batch":function(a0,a1){
-var v191,v192,v193,v194,v195,v197,v198;
-if(v5.dirty){
-var v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v174,v175,v176,v177,v178,v179,v180,v181,v182,v183,v184,v185,v186,v187,v188,v189,v190;
-v145=v4.dither;
-if(v145!==v5.dither){
-if(v145){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v145;
-}
-v146=v4.blend_enable;
-if(v146!==v5.blend_enable){
-if(v146){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=v146;
-}
-v147=v20[0];
-v148=v20[1];
-v149=v20[2];
-v150=v20[3];
-if(v147!==v21[0]||v148!==v21[1]||v149!==v21[2]||v150!==v21[3]){
-v1.blendColor(v147,v148,v149,v150);
-v21[0]=v147;
-v21[1]=v148;
-v21[2]=v149;
-v21[3]=v150;
-}
-v151=v22[0];
-v152=v22[1];
-if(v151!==v23[0]||v152!==v23[1]){
-v1.blendEquationSeparate(v151,v152);
-v23[0]=v151;
-v23[1]=v152;
-}
-v153=v24[0];
-v154=v24[1];
-v155=v24[2];
-v156=v24[3];
-if(v153!==v25[0]||v154!==v25[1]||v155!==v25[2]||v156!==v25[3]){
-v1.blendFuncSeparate(v153,v154,v155,v156);
-v25[0]=v153;
-v25[1]=v154;
-v25[2]=v155;
-v25[3]=v156;
-}
-v157=v4.depth_enable;
-if(v157!==v5.depth_enable){
-if(v157){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v157;
-}
-v158=v4.depth_func;
-if(v158!==v5.depth_func){
-v1.depthFunc(v158);
-v5.depth_func=v158;
-}
-v159=v26[0];
-v160=v26[1];
-if(v159!==v27[0]||v160!==v27[1]){
-v1.depthRange(v159,v160);
-v27[0]=v159;
-v27[1]=v160;
-}
-v161=v4.depth_mask;
-if(v161!==v5.depth_mask){
-v1.depthMask(v161);
-v5.depth_mask=v161;
-}
-v162=v28[0];
-v163=v28[1];
-v164=v28[2];
-v165=v28[3];
-if(v162!==v29[0]||v163!==v29[1]||v164!==v29[2]||v165!==v29[3]){
-v1.colorMask(v162,v163,v164,v165);
-v29[0]=v162;
-v29[1]=v163;
-v29[2]=v164;
-v29[3]=v165;
-}
-v166=v4.cull_enable;
-if(v166!==v5.cull_enable){
-if(v166){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v166;
-}
-v167=v4.cull_face;
-if(v167!==v5.cull_face){
-v1.cullFace(v167);
-v5.cull_face=v167;
-}
-v168=v4.frontFace;
-if(v168!==v5.frontFace){
-v1.frontFace(v168);
-v5.frontFace=v168;
-}
-v169=v4.lineWidth;
-if(v169!==v5.lineWidth){
-v1.lineWidth(v169);
-v5.lineWidth=v169;
-}
-v170=v4.polygonOffset_enable;
-if(v170!==v5.polygonOffset_enable){
-if(v170){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v170;
-}
-v171=v30[0];
-v172=v30[1];
-if(v171!==v31[0]||v172!==v31[1]){
-v1.polygonOffset(v171,v172);
-v31[0]=v171;
-v31[1]=v172;
-}
-v173=v4.sample_alpha;
-if(v173!==v5.sample_alpha){
-if(v173){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v173;
-}
-v174=v4.sample_enable;
-if(v174!==v5.sample_enable){
-if(v174){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v174;
-}
-v175=v32[0];
-v176=v32[1];
-if(v175!==v33[0]||v176!==v33[1]){
-v1.sampleCoverage(v175,v176);
-v33[0]=v175;
-v33[1]=v176;
-}
-v177=v4.stencil_enable;
-if(v177!==v5.stencil_enable){
-if(v177){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v177;
-}
-v178=v4.stencil_mask;
-if(v178!==v5.stencil_mask){
-v1.stencilMask(v178);
-v5.stencil_mask=v178;
-}
-v179=v34[0];
-v180=v34[1];
-v181=v34[2];
-if(v179!==v35[0]||v180!==v35[1]||v181!==v35[2]){
-v1.stencilFunc(v179,v180,v181);
-v35[0]=v179;
-v35[1]=v180;
-v35[2]=v181;
-}
-v182=v36[0];
-v183=v36[1];
-v184=v36[2];
-v185=v36[3];
-if(v182!==v37[0]||v183!==v37[1]||v184!==v37[2]||v185!==v37[3]){
-v1.stencilOpSeparate(v182,v183,v184,v185);
-v37[0]=v182;
-v37[1]=v183;
-v37[2]=v184;
-v37[3]=v185;
-}
-v186=v38[0];
-v187=v38[1];
-v188=v38[2];
-v189=v38[3];
-if(v186!==v39[0]||v187!==v39[1]||v188!==v39[2]||v189!==v39[3]){
-v1.stencilOpSeparate(v186,v187,v188,v189);
-v39[0]=v186;
-v39[1]=v187;
-v39[2]=v188;
-v39[3]=v189;
-}
-v190=v4.scissor_enable;
-if(v190!==v5.scissor_enable){
-if(v190){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=v190;
-}
-}
-v191=v5.profile;
-if(v191){
-v192=performance.now();
-g52.count+=a1;
-}
-v193=v9.frag;
-v194=v9.vert;
-v195=v9.program(v194,v193,g19);
-v1.useProgram(v195.program);
-v11.setVAO(null);
-v197=v195.id;
-v198=v196[v197];
-if(v198){
-v198.call(this,a0,a1);
-}
-else{
-v198=v196[v197]=g199(v195);
-v198.call(this,a0,a1);
-}
-v5.dirty=true;
-v11.setVAO(null);
-if(v191){
-g52.cpuTime+=performance.now()-v192;
-}
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/53f2bf051e4ba66c90f343d29aa8da9e4029454c0d428f8e46e94dfddc97c8c6 b/src/generated/regl-codegen/53f2bf051e4ba66c90f343d29aa8da9e4029454c0d428f8e46e94dfddc97c8c6
deleted file mode 100644
index e2035e296a1..00000000000
--- a/src/generated/regl-codegen/53f2bf051e4ba66c90f343d29aa8da9e4029454c0d428f8e46e94dfddc97c8c6
+++ /dev/null
@@ -1,459 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g54,g57
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v67,v68,v69,v70,v71,v72,v75,v76,v79,v80,v87,v88,v89,v90,v93,v94,v95,v96,v97,v98,v99,v100,v101,v102;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v67=v4.blend_color;
-v68=v5.blend_color;
-v69=v4.blend_equation;
-v70=v5.blend_equation;
-v71=v4.blend_func;
-v72=v5.blend_func;
-v75=v4.depth_range;
-v76=v5.depth_range;
-v79=v4.colorMask;
-v80=v5.colorMask;
-v87=v4.polygonOffset_offset;
-v88=v5.polygonOffset_offset;
-v89=v4.sample_coverage;
-v90=v5.sample_coverage;
-v93=v4.stencil_func;
-v94=v5.stencil_func;
-v95=v4.stencil_opFront;
-v96=v5.stencil_opFront;
-v97=v4.stencil_opBack;
-v98=v5.stencil_opBack;
-v99=v4.scissor_box;
-v100=v5.scissor_box;
-v101=v4.viewport;
-v102=v5.viewport;
-return {
-"poll":function(){
-var v52;
-var v58,v59,v60,v61,v62,v63,v64,v65,v66,v73,v74,v77,v78,v81,v82,v83,v84,v85,v86,v91,v92;
-v5.dirty=false;
-v58=v4.dither;
-v59=v4.blend_enable;
-v60=v4.depth_enable;
-v61=v4.cull_enable;
-v62=v4.polygonOffset_enable;
-v63=v4.sample_alpha;
-v64=v4.sample_enable;
-v65=v4.stencil_enable;
-v66=v4.scissor_enable;
-v73=v4.depth_func;
-v74=v5.depth_func;
-v77=v4.depth_mask;
-v78=v5.depth_mask;
-v81=v4.cull_face;
-v82=v5.cull_face;
-v83=v4.frontFace;
-v84=v5.frontFace;
-v85=v4.lineWidth;
-v86=v5.lineWidth;
-v91=v4.stencil_mask;
-v92=v5.stencil_mask;
-v52=v13.next;
-if(v52!==v13.cur){
-if(v52){
-v1.bindFramebuffer(36160,v52.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v52;
-}
-if(v58!==v5.dither){
-if(v58){
-v1.enable(3024)}
-else{
-v1.disable(3024)}
-v5.dither=v58;
-}
-if(v59!==v5.blend_enable){
-if(v59){
-v1.enable(3042)}
-else{
-v1.disable(3042)}
-v5.blend_enable=v59;
-}
-if(v60!==v5.depth_enable){
-if(v60){
-v1.enable(2929)}
-else{
-v1.disable(2929)}
-v5.depth_enable=v60;
-}
-if(v61!==v5.cull_enable){
-if(v61){
-v1.enable(2884)}
-else{
-v1.disable(2884)}
-v5.cull_enable=v61;
-}
-if(v62!==v5.polygonOffset_enable){
-if(v62){
-v1.enable(32823)}
-else{
-v1.disable(32823)}
-v5.polygonOffset_enable=v62;
-}
-if(v63!==v5.sample_alpha){
-if(v63){
-v1.enable(32926)}
-else{
-v1.disable(32926)}
-v5.sample_alpha=v63;
-}
-if(v64!==v5.sample_enable){
-if(v64){
-v1.enable(32928)}
-else{
-v1.disable(32928)}
-v5.sample_enable=v64;
-}
-if(v65!==v5.stencil_enable){
-if(v65){
-v1.enable(2960)}
-else{
-v1.disable(2960)}
-v5.stencil_enable=v65;
-}
-if(v66!==v5.scissor_enable){
-if(v66){
-v1.enable(3089)}
-else{
-v1.disable(3089)}
-v5.scissor_enable=v66;
-}
-if(v67[0]!==v68[0]||v67[1]!==v68[1]||v67[2]!==v68[2]||v67[3]!==v68[3]){
-v1.blendColor(v67[0],v67[1],v67[2],v67[3]);
-v68[0]=v67[0];
-v68[1]=v67[1];
-v68[2]=v67[2];
-v68[3]=v67[3];
-}
-if(v69[0]!==v70[0]||v69[1]!==v70[1]){
-v1.blendEquationSeparate(v69[0],v69[1]);
-v70[0]=v69[0];
-v70[1]=v69[1];
-}
-if(v71[0]!==v72[0]||v71[1]!==v72[1]||v71[2]!==v72[2]||v71[3]!==v72[3]){
-v1.blendFuncSeparate(v71[0],v71[1],v71[2],v71[3]);
-v72[0]=v71[0];
-v72[1]=v71[1];
-v72[2]=v71[2];
-v72[3]=v71[3];
-}
-if(v73!==v74){
-v1.depthFunc(v73);
-v5.depth_func=v73;
-}
-if(v75[0]!==v76[0]||v75[1]!==v76[1]){
-v1.depthRange(v75[0],v75[1]);
-v76[0]=v75[0];
-v76[1]=v75[1];
-}
-if(v77!==v78){
-v1.depthMask(v77);
-v5.depth_mask=v77;
-}
-if(v79[0]!==v80[0]||v79[1]!==v80[1]||v79[2]!==v80[2]||v79[3]!==v80[3]){
-v1.colorMask(v79[0],v79[1],v79[2],v79[3]);
-v80[0]=v79[0];
-v80[1]=v79[1];
-v80[2]=v79[2];
-v80[3]=v79[3];
-}
-if(v81!==v82){
-v1.cullFace(v81);
-v5.cull_face=v81;
-}
-if(v83!==v84){
-v1.frontFace(v83);
-v5.frontFace=v83;
-}
-if(v85!==v86){
-v1.lineWidth(v85);
-v5.lineWidth=v85;
-}
-if(v87[0]!==v88[0]||v87[1]!==v88[1]){
-v1.polygonOffset(v87[0],v87[1]);
-v88[0]=v87[0];
-v88[1]=v87[1];
-}
-if(v89[0]!==v90[0]||v89[1]!==v90[1]){
-v1.sampleCoverage(v89[0],v89[1]);
-v90[0]=v89[0];
-v90[1]=v89[1];
-}
-if(v91!==v92){
-v1.stencilMask(v91);
-v5.stencil_mask=v91;
-}
-if(v93[0]!==v94[0]||v93[1]!==v94[1]||v93[2]!==v94[2]){
-v1.stencilFunc(v93[0],v93[1],v93[2]);
-v94[0]=v93[0];
-v94[1]=v93[1];
-v94[2]=v93[2];
-}
-if(v95[0]!==v96[0]||v95[1]!==v96[1]||v95[2]!==v96[2]||v95[3]!==v96[3]){
-v1.stencilOpSeparate(v95[0],v95[1],v95[2],v95[3]);
-v96[0]=v95[0];
-v96[1]=v95[1];
-v96[2]=v95[2];
-v96[3]=v95[3];
-}
-if(v97[0]!==v98[0]||v97[1]!==v98[1]||v97[2]!==v98[2]||v97[3]!==v98[3]){
-v1.stencilOpSeparate(v97[0],v97[1],v97[2],v97[3]);
-v98[0]=v97[0];
-v98[1]=v97[1];
-v98[2]=v97[2];
-v98[3]=v97[3];
-}
-if(v99[0]!==v100[0]||v99[1]!==v100[1]||v99[2]!==v100[2]||v99[3]!==v100[3]){
-v1.scissor(v99[0],v99[1],v99[2],v99[3]);
-v100[0]=v99[0];
-v100[1]=v99[1];
-v100[2]=v99[2];
-v100[3]=v99[3];
-}
-if(v101[0]!==v102[0]||v101[1]!==v102[1]||v101[2]!==v102[2]||v101[3]!==v102[3]){
-v1.viewport(v101[0],v101[1],v101[2],v101[3]);
-v102[0]=v101[0];
-v102[1]=v101[1];
-v102[2]=v101[2];
-v102[3]=v101[3];
-}
-}
-,"refresh":function(){
-var v53,v55,v56;
-var v58,v59,v60,v61,v62,v63,v64,v65,v66,v73,v74,v77,v78,v81,v82,v83,v84,v85,v86,v91,v92;
-v5.dirty=false;
-v58=v4.dither;
-v59=v4.blend_enable;
-v60=v4.depth_enable;
-v61=v4.cull_enable;
-v62=v4.polygonOffset_enable;
-v63=v4.sample_alpha;
-v64=v4.sample_enable;
-v65=v4.stencil_enable;
-v66=v4.scissor_enable;
-v73=v4.depth_func;
-v74=v5.depth_func;
-v77=v4.depth_mask;
-v78=v5.depth_mask;
-v81=v4.cull_face;
-v82=v5.cull_face;
-v83=v4.frontFace;
-v84=v5.frontFace;
-v85=v4.lineWidth;
-v86=v5.lineWidth;
-v91=v4.stencil_mask;
-v92=v5.stencil_mask;
-v53=v13.next;
-if(v53){
-v1.bindFramebuffer(36160,v53.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v53;
-v55=v10;
-v56=0;
-for(var i=0;
-i<g57;
-++i){
-v56=v55[i];
-if(v56.buffer){
-v1.enableVertexAttribArray(i);
-v1.bindBuffer(34962,v56.buffer.buffer);
-v1.vertexAttribPointer(i,v56.size,v56.type,v56.normalized,v56.stride,v56.offset);
-}
-else{
-v1.disableVertexAttribArray(i);
-v1.vertexAttrib4f(i,v56.x,v56.y,v56.z,v56.w);
-v56.buffer=null;
-}
-}
-for(var i=0;
-i<g57;
-++i){
-g54.vertexAttribDivisorANGLE(i,v55[i].divisor);
-}
-v11.currentVAO=null;
-v11.setVAO(v11.targetVAO);
-if(v58){
-v1.enable(3024)}
-else{
-v1.disable(3024)}
-v5.dither=v58;
-if(v59){
-v1.enable(3042)}
-else{
-v1.disable(3042)}
-v5.blend_enable=v59;
-if(v60){
-v1.enable(2929)}
-else{
-v1.disable(2929)}
-v5.depth_enable=v60;
-if(v61){
-v1.enable(2884)}
-else{
-v1.disable(2884)}
-v5.cull_enable=v61;
-if(v62){
-v1.enable(32823)}
-else{
-v1.disable(32823)}
-v5.polygonOffset_enable=v62;
-if(v63){
-v1.enable(32926)}
-else{
-v1.disable(32926)}
-v5.sample_alpha=v63;
-if(v64){
-v1.enable(32928)}
-else{
-v1.disable(32928)}
-v5.sample_enable=v64;
-if(v65){
-v1.enable(2960)}
-else{
-v1.disable(2960)}
-v5.stencil_enable=v65;
-if(v66){
-v1.enable(3089)}
-else{
-v1.disable(3089)}
-v5.scissor_enable=v66;
-v1.blendColor(v67[0],v67[1],v67[2],v67[3]);
-v68[0]=v67[0];
-v68[1]=v67[1];
-v68[2]=v67[2];
-v68[3]=v67[3];
-v1.blendEquationSeparate(v69[0],v69[1]);
-v70[0]=v69[0];
-v70[1]=v69[1];
-v1.blendFuncSeparate(v71[0],v71[1],v71[2],v71[3]);
-v72[0]=v71[0];
-v72[1]=v71[1];
-v72[2]=v71[2];
-v72[3]=v71[3];
-v1.depthFunc(v73);
-v5.depth_func=v73;
-v1.depthRange(v75[0],v75[1]);
-v76[0]=v75[0];
-v76[1]=v75[1];
-v1.depthMask(v77);
-v5.depth_mask=v77;
-v1.colorMask(v79[0],v79[1],v79[2],v79[3]);
-v80[0]=v79[0];
-v80[1]=v79[1];
-v80[2]=v79[2];
-v80[3]=v79[3];
-v1.cullFace(v81);
-v5.cull_face=v81;
-v1.frontFace(v83);
-v5.frontFace=v83;
-v1.lineWidth(v85);
-v5.lineWidth=v85;
-v1.polygonOffset(v87[0],v87[1]);
-v88[0]=v87[0];
-v88[1]=v87[1];
-v1.sampleCoverage(v89[0],v89[1]);
-v90[0]=v89[0];
-v90[1]=v89[1];
-v1.stencilMask(v91);
-v5.stencil_mask=v91;
-v1.stencilFunc(v93[0],v93[1],v93[2]);
-v94[0]=v93[0];
-v94[1]=v93[1];
-v94[2]=v93[2];
-v1.stencilOpSeparate(v95[0],v95[1],v95[2],v95[3]);
-v96[0]=v95[0];
-v96[1]=v95[1];
-v96[2]=v95[2];
-v96[3]=v95[3];
-v1.stencilOpSeparate(v97[0],v97[1],v97[2],v97[3]);
-v98[0]=v97[0];
-v98[1]=v97[1];
-v98[2]=v97[2];
-v98[3]=v97[3];
-v1.scissor(v99[0],v99[1],v99[2],v99[3]);
-v100[0]=v99[0];
-v100[1]=v99[1];
-v100[2]=v99[2];
-v100[3]=v99[3];
-v1.viewport(v101[0],v101[1],v101[2],v101[3]);
-v102[0]=v101[0];
-v102[1]=v101[1];
-v102[2]=v101[2];
-v102[3]=v101[3];
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/59568c77bcbe6343ee6109df49ceeb78c8a8a8a81872e88fb077f9a3d6dc0567 b/src/generated/regl-codegen/59568c77bcbe6343ee6109df49ceeb78c8a8a8a81872e88fb077f9a3d6dc0567
deleted file mode 100644
index 9b8c5fadce5..00000000000
--- a/src/generated/regl-codegen/59568c77bcbe6343ee6109df49ceeb78c8a8a8a81872e88fb077f9a3d6dc0567
+++ /dev/null
@@ -1,637 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g116,g182
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v113,v179;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v113={
-}
-;
-v179={
-}
-;
-return {
-"draw":function(a0){
-var v53,v108,v109,v110,v111,v112,v114,v115;
-v53=v13.next;
-if(v53!==v13.cur){
-if(v53){
-v1.bindFramebuffer(36160,v53.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v53;
-}
-if(v5.dirty){
-var v54,v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93,v94,v95,v96,v97,v98,v99,v100,v101,v102,v103,v104,v105,v106,v107;
-v54=v4.dither;
-if(v54!==v5.dither){
-if(v54){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v54;
-}
-v55=v4.blend_enable;
-if(v55!==v5.blend_enable){
-if(v55){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=v55;
-}
-v56=v20[0];
-v57=v20[1];
-v58=v20[2];
-v59=v20[3];
-if(v56!==v21[0]||v57!==v21[1]||v58!==v21[2]||v59!==v21[3]){
-v1.blendColor(v56,v57,v58,v59);
-v21[0]=v56;
-v21[1]=v57;
-v21[2]=v58;
-v21[3]=v59;
-}
-v60=v22[0];
-v61=v22[1];
-if(v60!==v23[0]||v61!==v23[1]){
-v1.blendEquationSeparate(v60,v61);
-v23[0]=v60;
-v23[1]=v61;
-}
-v62=v24[0];
-v63=v24[1];
-v64=v24[2];
-v65=v24[3];
-if(v62!==v25[0]||v63!==v25[1]||v64!==v25[2]||v65!==v25[3]){
-v1.blendFuncSeparate(v62,v63,v64,v65);
-v25[0]=v62;
-v25[1]=v63;
-v25[2]=v64;
-v25[3]=v65;
-}
-v66=v4.depth_enable;
-if(v66!==v5.depth_enable){
-if(v66){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v66;
-}
-v67=v4.depth_func;
-if(v67!==v5.depth_func){
-v1.depthFunc(v67);
-v5.depth_func=v67;
-}
-v68=v26[0];
-v69=v26[1];
-if(v68!==v27[0]||v69!==v27[1]){
-v1.depthRange(v68,v69);
-v27[0]=v68;
-v27[1]=v69;
-}
-v70=v4.depth_mask;
-if(v70!==v5.depth_mask){
-v1.depthMask(v70);
-v5.depth_mask=v70;
-}
-v71=v28[0];
-v72=v28[1];
-v73=v28[2];
-v74=v28[3];
-if(v71!==v29[0]||v72!==v29[1]||v73!==v29[2]||v74!==v29[3]){
-v1.colorMask(v71,v72,v73,v74);
-v29[0]=v71;
-v29[1]=v72;
-v29[2]=v73;
-v29[3]=v74;
-}
-v75=v4.cull_enable;
-if(v75!==v5.cull_enable){
-if(v75){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v75;
-}
-v76=v4.cull_face;
-if(v76!==v5.cull_face){
-v1.cullFace(v76);
-v5.cull_face=v76;
-}
-v77=v4.frontFace;
-if(v77!==v5.frontFace){
-v1.frontFace(v77);
-v5.frontFace=v77;
-}
-v78=v4.lineWidth;
-if(v78!==v5.lineWidth){
-v1.lineWidth(v78);
-v5.lineWidth=v78;
-}
-v79=v4.polygonOffset_enable;
-if(v79!==v5.polygonOffset_enable){
-if(v79){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v79;
-}
-v80=v30[0];
-v81=v30[1];
-if(v80!==v31[0]||v81!==v31[1]){
-v1.polygonOffset(v80,v81);
-v31[0]=v80;
-v31[1]=v81;
-}
-v82=v4.sample_alpha;
-if(v82!==v5.sample_alpha){
-if(v82){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v82;
-}
-v83=v4.sample_enable;
-if(v83!==v5.sample_enable){
-if(v83){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v83;
-}
-v84=v32[0];
-v85=v32[1];
-if(v84!==v33[0]||v85!==v33[1]){
-v1.sampleCoverage(v84,v85);
-v33[0]=v84;
-v33[1]=v85;
-}
-v86=v4.stencil_enable;
-if(v86!==v5.stencil_enable){
-if(v86){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v86;
-}
-v87=v4.stencil_mask;
-if(v87!==v5.stencil_mask){
-v1.stencilMask(v87);
-v5.stencil_mask=v87;
-}
-v88=v34[0];
-v89=v34[1];
-v90=v34[2];
-if(v88!==v35[0]||v89!==v35[1]||v90!==v35[2]){
-v1.stencilFunc(v88,v89,v90);
-v35[0]=v88;
-v35[1]=v89;
-v35[2]=v90;
-}
-v91=v36[0];
-v92=v36[1];
-v93=v36[2];
-v94=v36[3];
-if(v91!==v37[0]||v92!==v37[1]||v93!==v37[2]||v94!==v37[3]){
-v1.stencilOpSeparate(v91,v92,v93,v94);
-v37[0]=v91;
-v37[1]=v92;
-v37[2]=v93;
-v37[3]=v94;
-}
-v95=v38[0];
-v96=v38[1];
-v97=v38[2];
-v98=v38[3];
-if(v95!==v39[0]||v96!==v39[1]||v97!==v39[2]||v98!==v39[3]){
-v1.stencilOpSeparate(v95,v96,v97,v98);
-v39[0]=v95;
-v39[1]=v96;
-v39[2]=v97;
-v39[3]=v98;
-}
-v99=v4.scissor_enable;
-if(v99!==v5.scissor_enable){
-if(v99){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=v99;
-}
-v100=v40[0];
-v101=v40[1];
-v102=v40[2];
-v103=v40[3];
-if(v100!==v41[0]||v101!==v41[1]||v102!==v41[2]||v103!==v41[3]){
-v1.scissor(v100,v101,v102,v103);
-v41[0]=v100;
-v41[1]=v101;
-v41[2]=v102;
-v41[3]=v103;
-}
-v104=v42[0];
-v105=v42[1];
-v106=v42[2];
-v107=v42[3];
-if(v104!==v43[0]||v105!==v43[1]||v106!==v43[2]||v107!==v43[3]){
-v1.viewport(v104,v105,v106,v107);
-v43[0]=v104;
-v43[1]=v105;
-v43[2]=v106;
-v43[3]=v107;
-}
-v5.dirty=false;
-}
-v108=v5.profile;
-if(v108){
-v109=performance.now();
-g52.count++;
-}
-v110=v9.frag;
-v111=v9.vert;
-v112=v9.program(v111,v110,g19);
-v1.useProgram(v112.program);
-v11.setVAO(null);
-v114=v112.id;
-v115=v113[v114];
-if(v115){
-v115.call(this,a0);
-}
-else{
-v115=v113[v114]=g116(v112);
-v115.call(this,a0);
-}
-v11.setVAO(null);
-if(v108){
-g52.cpuTime+=performance.now()-v109;
-}
-}
-,"scope":function(a0,a1,a2){
-var v117,v118;
-v117=v5.profile;
-if(v117){
-v118=performance.now();
-g52.count++;
-}
-a1(v2,a0,a2);
-if(v117){
-g52.cpuTime+=performance.now()-v118;
-}
-}
-,"batch":function(a0,a1){
-var v119,v174,v175,v176,v177,v178,v180,v181;
-v119=v13.next;
-if(v119!==v13.cur){
-if(v119){
-v1.bindFramebuffer(36160,v119.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v119;
-}
-if(v5.dirty){
-var v120,v121,v122,v123,v124,v125,v126,v127,v128,v129,v130,v131,v132,v133,v134,v135,v136,v137,v138,v139,v140,v141,v142,v143,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173;
-v120=v4.dither;
-if(v120!==v5.dither){
-if(v120){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v120;
-}
-v121=v4.blend_enable;
-if(v121!==v5.blend_enable){
-if(v121){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=v121;
-}
-v122=v20[0];
-v123=v20[1];
-v124=v20[2];
-v125=v20[3];
-if(v122!==v21[0]||v123!==v21[1]||v124!==v21[2]||v125!==v21[3]){
-v1.blendColor(v122,v123,v124,v125);
-v21[0]=v122;
-v21[1]=v123;
-v21[2]=v124;
-v21[3]=v125;
-}
-v126=v22[0];
-v127=v22[1];
-if(v126!==v23[0]||v127!==v23[1]){
-v1.blendEquationSeparate(v126,v127);
-v23[0]=v126;
-v23[1]=v127;
-}
-v128=v24[0];
-v129=v24[1];
-v130=v24[2];
-v131=v24[3];
-if(v128!==v25[0]||v129!==v25[1]||v130!==v25[2]||v131!==v25[3]){
-v1.blendFuncSeparate(v128,v129,v130,v131);
-v25[0]=v128;
-v25[1]=v129;
-v25[2]=v130;
-v25[3]=v131;
-}
-v132=v4.depth_enable;
-if(v132!==v5.depth_enable){
-if(v132){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v132;
-}
-v133=v4.depth_func;
-if(v133!==v5.depth_func){
-v1.depthFunc(v133);
-v5.depth_func=v133;
-}
-v134=v26[0];
-v135=v26[1];
-if(v134!==v27[0]||v135!==v27[1]){
-v1.depthRange(v134,v135);
-v27[0]=v134;
-v27[1]=v135;
-}
-v136=v4.depth_mask;
-if(v136!==v5.depth_mask){
-v1.depthMask(v136);
-v5.depth_mask=v136;
-}
-v137=v28[0];
-v138=v28[1];
-v139=v28[2];
-v140=v28[3];
-if(v137!==v29[0]||v138!==v29[1]||v139!==v29[2]||v140!==v29[3]){
-v1.colorMask(v137,v138,v139,v140);
-v29[0]=v137;
-v29[1]=v138;
-v29[2]=v139;
-v29[3]=v140;
-}
-v141=v4.cull_enable;
-if(v141!==v5.cull_enable){
-if(v141){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v141;
-}
-v142=v4.cull_face;
-if(v142!==v5.cull_face){
-v1.cullFace(v142);
-v5.cull_face=v142;
-}
-v143=v4.frontFace;
-if(v143!==v5.frontFace){
-v1.frontFace(v143);
-v5.frontFace=v143;
-}
-v144=v4.lineWidth;
-if(v144!==v5.lineWidth){
-v1.lineWidth(v144);
-v5.lineWidth=v144;
-}
-v145=v4.polygonOffset_enable;
-if(v145!==v5.polygonOffset_enable){
-if(v145){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v145;
-}
-v146=v30[0];
-v147=v30[1];
-if(v146!==v31[0]||v147!==v31[1]){
-v1.polygonOffset(v146,v147);
-v31[0]=v146;
-v31[1]=v147;
-}
-v148=v4.sample_alpha;
-if(v148!==v5.sample_alpha){
-if(v148){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v148;
-}
-v149=v4.sample_enable;
-if(v149!==v5.sample_enable){
-if(v149){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v149;
-}
-v150=v32[0];
-v151=v32[1];
-if(v150!==v33[0]||v151!==v33[1]){
-v1.sampleCoverage(v150,v151);
-v33[0]=v150;
-v33[1]=v151;
-}
-v152=v4.stencil_enable;
-if(v152!==v5.stencil_enable){
-if(v152){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v152;
-}
-v153=v4.stencil_mask;
-if(v153!==v5.stencil_mask){
-v1.stencilMask(v153);
-v5.stencil_mask=v153;
-}
-v154=v34[0];
-v155=v34[1];
-v156=v34[2];
-if(v154!==v35[0]||v155!==v35[1]||v156!==v35[2]){
-v1.stencilFunc(v154,v155,v156);
-v35[0]=v154;
-v35[1]=v155;
-v35[2]=v156;
-}
-v157=v36[0];
-v158=v36[1];
-v159=v36[2];
-v160=v36[3];
-if(v157!==v37[0]||v158!==v37[1]||v159!==v37[2]||v160!==v37[3]){
-v1.stencilOpSeparate(v157,v158,v159,v160);
-v37[0]=v157;
-v37[1]=v158;
-v37[2]=v159;
-v37[3]=v160;
-}
-v161=v38[0];
-v162=v38[1];
-v163=v38[2];
-v164=v38[3];
-if(v161!==v39[0]||v162!==v39[1]||v163!==v39[2]||v164!==v39[3]){
-v1.stencilOpSeparate(v161,v162,v163,v164);
-v39[0]=v161;
-v39[1]=v162;
-v39[2]=v163;
-v39[3]=v164;
-}
-v165=v4.scissor_enable;
-if(v165!==v5.scissor_enable){
-if(v165){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=v165;
-}
-v166=v40[0];
-v167=v40[1];
-v168=v40[2];
-v169=v40[3];
-if(v166!==v41[0]||v167!==v41[1]||v168!==v41[2]||v169!==v41[3]){
-v1.scissor(v166,v167,v168,v169);
-v41[0]=v166;
-v41[1]=v167;
-v41[2]=v168;
-v41[3]=v169;
-}
-v170=v42[0];
-v171=v42[1];
-v172=v42[2];
-v173=v42[3];
-if(v170!==v43[0]||v171!==v43[1]||v172!==v43[2]||v173!==v43[3]){
-v1.viewport(v170,v171,v172,v173);
-v43[0]=v170;
-v43[1]=v171;
-v43[2]=v172;
-v43[3]=v173;
-}
-v5.dirty=false;
-}
-v174=v5.profile;
-if(v174){
-v175=performance.now();
-g52.count+=a1;
-}
-v176=v9.frag;
-v177=v9.vert;
-v178=v9.program(v177,v176,g19);
-v1.useProgram(v178.program);
-v11.setVAO(null);
-v180=v178.id;
-v181=v179[v180];
-if(v181){
-v181.call(this,a0,a1);
-}
-else{
-v181=v179[v180]=g182(v178);
-v181.call(this,a0,a1);
-}
-v11.setVAO(null);
-if(v174){
-g52.cpuTime+=performance.now()-v175;
-}
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923 b/src/generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923
new file mode 100644
index 00000000000..cfbe2e0e6a3
--- /dev/null
+++ b/src/generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923
@@ -0,0 +1,2184 @@
+module.exports = function anonymous(g0,g48,g50,g52,g54,g56,g99,g100,g106,g109,g111,g112,g115,g130,g134,g137,g152,g156,g159,g174,g178,g193,g197,g199,g201,g203,g207,g211,g215,g219,g220,g240,g242,g244,g246,g248,g250,g252,g254,g256,g258,g260,g262,g273,g277,g281,g284,g287,g290,g293,g296,g299,g302,g305,g308,g310,g323,g336,g363,g390,g417,g444,g457,g459,g496,g497,g498
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v49,v51,v53,v55;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v49={
+}
+;
+v49.buffer=g50;
+v49.divisor=1;
+v51={
+}
+;
+v51.buffer=g52;
+v51.divisor=1;
+v53={
+}
+;
+v53.buffer=g54;
+v53.divisor=1;
+v55={
+}
+;
+v55.buffer=g56;
+v55.divisor=1;
+return {
+"draw":function(a0){
+var v57,v58,v92,v93,v94,v95,v96,v97,v98,v101,v102,v103,v104,v105,v107,v108,v110,v113,v114,v116,v117,v118,v119,v120,v121,v122,v123,v124,v125,v126,v127,v128,v129,v131,v132,v133,v135,v136,v138,v139,v140,v141,v142,v143,v144,v145,v146,v147,v148,v149,v150,v151,v153,v154,v155,v157,v158,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v175,v176,v177,v179,v180,v181,v182,v183,v184,v185,v186,v187,v188,v189,v190,v191,v192,v194,v195,v196,v198,v200,v202,v204,v205,v206,v208,v209,v210,v212,v213,v214,v216,v217,v218,v221,v222,v223,v224,v225,v226,v227,v228;
+v57=v14.angle_instanced_arrays;
+v58=v13.next;
+if(v58!==v13.cur){
+if(v58){
+v1.bindFramebuffer(36160,v58.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v58;
+}
+if(v5.dirty){
+var v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91;
+v59=v4.dither;
+if(v59!==v5.dither){
+if(v59){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v59;
+}
+v60=v4.depth_func;
+if(v60!==v5.depth_func){
+v1.depthFunc(v60);
+v5.depth_func=v60;
+}
+v61=v23[0];
+v62=v23[1];
+if(v61!==v24[0]||v62!==v24[1]){
+v1.depthRange(v61,v62);
+v24[0]=v61;
+v24[1]=v62;
+}
+v63=v4.depth_mask;
+if(v63!==v5.depth_mask){
+v1.depthMask(v63);
+v5.depth_mask=v63;
+}
+v64=v25[0];
+v65=v25[1];
+v66=v25[2];
+v67=v25[3];
+if(v64!==v26[0]||v65!==v26[1]||v66!==v26[2]||v67!==v26[3]){
+v1.colorMask(v64,v65,v66,v67);
+v26[0]=v64;
+v26[1]=v65;
+v26[2]=v66;
+v26[3]=v67;
+}
+v68=v4.cull_enable;
+if(v68!==v5.cull_enable){
+if(v68){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v68;
+}
+v69=v4.cull_face;
+if(v69!==v5.cull_face){
+v1.cullFace(v69);
+v5.cull_face=v69;
+}
+v70=v4.frontFace;
+if(v70!==v5.frontFace){
+v1.frontFace(v70);
+v5.frontFace=v70;
+}
+v71=v4.lineWidth;
+if(v71!==v5.lineWidth){
+v1.lineWidth(v71);
+v5.lineWidth=v71;
+}
+v72=v4.polygonOffset_enable;
+if(v72!==v5.polygonOffset_enable){
+if(v72){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v72;
+}
+v73=v27[0];
+v74=v27[1];
+if(v73!==v28[0]||v74!==v28[1]){
+v1.polygonOffset(v73,v74);
+v28[0]=v73;
+v28[1]=v74;
+}
+v75=v4.sample_alpha;
+if(v75!==v5.sample_alpha){
+if(v75){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v75;
+}
+v76=v4.sample_enable;
+if(v76!==v5.sample_enable){
+if(v76){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v76;
+}
+v77=v29[0];
+v78=v29[1];
+if(v77!==v30[0]||v78!==v30[1]){
+v1.sampleCoverage(v77,v78);
+v30[0]=v77;
+v30[1]=v78;
+}
+v79=v4.stencil_enable;
+if(v79!==v5.stencil_enable){
+if(v79){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v79;
+}
+v80=v4.stencil_mask;
+if(v80!==v5.stencil_mask){
+v1.stencilMask(v80);
+v5.stencil_mask=v80;
+}
+v81=v31[0];
+v82=v31[1];
+v83=v31[2];
+if(v81!==v32[0]||v82!==v32[1]||v83!==v32[2]){
+v1.stencilFunc(v81,v82,v83);
+v32[0]=v81;
+v32[1]=v82;
+v32[2]=v83;
+}
+v84=v33[0];
+v85=v33[1];
+v86=v33[2];
+v87=v33[3];
+if(v84!==v34[0]||v85!==v34[1]||v86!==v34[2]||v87!==v34[3]){
+v1.stencilOpSeparate(v84,v85,v86,v87);
+v34[0]=v84;
+v34[1]=v85;
+v34[2]=v86;
+v34[3]=v87;
+}
+v88=v35[0];
+v89=v35[1];
+v90=v35[2];
+v91=v35[3];
+if(v88!==v36[0]||v89!==v36[1]||v90!==v36[2]||v91!==v36[3]){
+v1.stencilOpSeparate(v88,v89,v90,v91);
+v36[0]=v88;
+v36[1]=v89;
+v36[2]=v90;
+v36[3]=v91;
+}
+}
+v92=a0["viewport"];
+v93=v92.x|0;
+v94=v92.y|0;
+v95="width" in v92?v92.width|0:(v2.framebufferWidth-v93);
+v96="height" in v92?v92.height|0:(v2.framebufferHeight-v94);
+v97=v2.viewportWidth;
+v2.viewportWidth=v95;
+v98=v2.viewportHeight;
+v2.viewportHeight=v96;
+v1.viewport(v93,v94,v95,v96);
+v40[0]=v93;
+v40[1]=v94;
+v40[2]=v95;
+v40[3]=v96;
+v1.blendColor(0,0,0,0);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=0;
+if(g99){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g99;
+v1.blendEquationSeparate(32774,32774);
+v20[0]=32774;
+v20[1]=32774;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g100){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g100;
+v101=a0["viewport"];
+v102=v101.x|0;
+v103=v101.y|0;
+v104="width" in v101?v101.width|0:(v2.framebufferWidth-v102);
+v105="height" in v101?v101.height|0:(v2.framebufferHeight-v103);
+v1.scissor(v102,v103,v104,v105);
+v38[0]=v102;
+v38[1]=v103;
+v38[2]=v104;
+v38[3]=v105;
+if(g106){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g106;
+v107=v5.profile;
+if(v107){
+v108=performance.now();
+g48.count++;
+}
+v1.useProgram(g109.program);
+v110=v14.angle_instanced_arrays;
+v11.setVAO(null);
+v113=g112.location;
+v114=v10[v113];
+if(!v114.buffer){
+v1.enableVertexAttribArray(v113);
+}
+if(v114.type!==5126||v114.size!==2||v114.buffer!==g111||v114.normalized!==false||v114.offset!==16||v114.stride!==24){
+v1.bindBuffer(34962,g111.buffer);
+v1.vertexAttribPointer(v113,2,5126,false,24,16);
+v114.type=5126;
+v114.size=2;
+v114.buffer=g111;
+v114.normalized=false;
+v114.offset=16;
+v114.stride=24;
+}
+if(v114.divisor!==0){
+v110.vertexAttribDivisorANGLE(v113,0);
+v114.divisor=0;
+}
+v116=g115.call(this,v2,a0,0);
+v49.offset=v116;
+v117=false;
+v118=1;
+v119=0;
+v120=0;
+v121=0;
+v122=0;
+v123=null;
+v124=0;
+v125=false;
+v126=5126;
+v127=0;
+v128=0;
+v129=0;
+if(v16(v49)){
+v117=true;
+v123=v8.createStream(34962,v49);
+v126=v123.dtype;
+}
+else{
+v123=v8.getBuffer(v49);
+if(v123){
+v126=v123.dtype;
+}
+else if("constant" in v49){
+v118=2;
+if(typeof v49.constant === "number"){
+v119=v49.constant;
+v120=v121=v122=0;
+}
+else{
+v119=v49.constant.length>0?v49.constant[0]:0;
+v120=v49.constant.length>1?v49.constant[1]:0;
+v121=v49.constant.length>2?v49.constant[2]:0;
+v122=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v123=v8.createStream(34962,v49.buffer);
+}
+else{
+v123=v8.getBuffer(v49.buffer);
+}
+v126="type" in v49?v46[v49.type]:v123.dtype;
+v125=!!v49.normalized;
+v124=v49.size|0;
+v127=v49.offset|0;
+v128=v49.stride|0;
+v129=v49.divisor|0;
+}
+}
+v131=g130.location;
+v132=v10[v131];
+if(v118===1){
+if(!v132.buffer){
+v1.enableVertexAttribArray(v131);
+}
+v133=v124||4;
+if(v132.type!==v126||v132.size!==v133||v132.buffer!==v123||v132.normalized!==v125||v132.offset!==v127||v132.stride!==v128){
+v1.bindBuffer(34962,v123.buffer);
+v1.vertexAttribPointer(v131,v133,v126,v125,v128,v127);
+v132.type=v126;
+v132.size=v133;
+v132.buffer=v123;
+v132.normalized=v125;
+v132.offset=v127;
+v132.stride=v128;
+}
+if(v132.divisor!==v129){
+v110.vertexAttribDivisorANGLE(v131,v129);
+v132.divisor=v129;
+}
+}
+else{
+if(v132.buffer){
+v1.disableVertexAttribArray(v131);
+v132.buffer=null;
+}
+if(v132.x!==v119||v132.y!==v120||v132.z!==v121||v132.w!==v122){
+v1.vertexAttrib4f(v131,v119,v120,v121,v122);
+v132.x=v119;
+v132.y=v120;
+v132.z=v121;
+v132.w=v122;
+}
+}
+v135=g134.location;
+v136=v10[v135];
+if(!v136.buffer){
+v1.enableVertexAttribArray(v135);
+}
+if(v136.type!==5126||v136.size!==2||v136.buffer!==g111||v136.normalized!==false||v136.offset!==0||v136.stride!==24){
+v1.bindBuffer(34962,g111.buffer);
+v1.vertexAttribPointer(v135,2,5126,false,24,0);
+v136.type=5126;
+v136.size=2;
+v136.buffer=g111;
+v136.normalized=false;
+v136.offset=0;
+v136.stride=24;
+}
+if(v136.divisor!==0){
+v110.vertexAttribDivisorANGLE(v135,0);
+v136.divisor=0;
+}
+v138=g137.call(this,v2,a0,0);
+v55.offset=v138;
+v139=false;
+v140=1;
+v141=0;
+v142=0;
+v143=0;
+v144=0;
+v145=null;
+v146=0;
+v147=false;
+v148=5126;
+v149=0;
+v150=0;
+v151=0;
+if(v16(v55)){
+v139=true;
+v145=v8.createStream(34962,v55);
+v148=v145.dtype;
+}
+else{
+v145=v8.getBuffer(v55);
+if(v145){
+v148=v145.dtype;
+}
+else if("constant" in v55){
+v140=2;
+if(typeof v55.constant === "number"){
+v141=v55.constant;
+v142=v143=v144=0;
+}
+else{
+v141=v55.constant.length>0?v55.constant[0]:0;
+v142=v55.constant.length>1?v55.constant[1]:0;
+v143=v55.constant.length>2?v55.constant[2]:0;
+v144=v55.constant.length>3?v55.constant[3]:0;
+}
+}
+else{
+if(v16(v55.buffer)){
+v145=v8.createStream(34962,v55.buffer);
+}
+else{
+v145=v8.getBuffer(v55.buffer);
+}
+v148="type" in v55?v46[v55.type]:v145.dtype;
+v147=!!v55.normalized;
+v146=v55.size|0;
+v149=v55.offset|0;
+v150=v55.stride|0;
+v151=v55.divisor|0;
+}
+}
+v153=g152.location;
+v154=v10[v153];
+if(v140===1){
+if(!v154.buffer){
+v1.enableVertexAttribArray(v153);
+}
+v155=v146||4;
+if(v154.type!==v148||v154.size!==v155||v154.buffer!==v145||v154.normalized!==v147||v154.offset!==v149||v154.stride!==v150){
+v1.bindBuffer(34962,v145.buffer);
+v1.vertexAttribPointer(v153,v155,v148,v147,v150,v149);
+v154.type=v148;
+v154.size=v155;
+v154.buffer=v145;
+v154.normalized=v147;
+v154.offset=v149;
+v154.stride=v150;
+}
+if(v154.divisor!==v151){
+v110.vertexAttribDivisorANGLE(v153,v151);
+v154.divisor=v151;
+}
+}
+else{
+if(v154.buffer){
+v1.disableVertexAttribArray(v153);
+v154.buffer=null;
+}
+if(v154.x!==v141||v154.y!==v142||v154.z!==v143||v154.w!==v144){
+v1.vertexAttrib4f(v153,v141,v142,v143,v144);
+v154.x=v141;
+v154.y=v142;
+v154.z=v143;
+v154.w=v144;
+}
+}
+v157=g156.location;
+v158=v10[v157];
+if(!v158.buffer){
+v1.enableVertexAttribArray(v157);
+}
+if(v158.type!==5126||v158.size!==2||v158.buffer!==g111||v158.normalized!==false||v158.offset!==8||v158.stride!==24){
+v1.bindBuffer(34962,g111.buffer);
+v1.vertexAttribPointer(v157,2,5126,false,24,8);
+v158.type=5126;
+v158.size=2;
+v158.buffer=g111;
+v158.normalized=false;
+v158.offset=8;
+v158.stride=24;
+}
+if(v158.divisor!==0){
+v110.vertexAttribDivisorANGLE(v157,0);
+v158.divisor=0;
+}
+v160=g159.call(this,v2,a0,0);
+v51.offset=v160;
+v161=false;
+v162=1;
+v163=0;
+v164=0;
+v165=0;
+v166=0;
+v167=null;
+v168=0;
+v169=false;
+v170=5126;
+v171=0;
+v172=0;
+v173=0;
+if(v16(v51)){
+v161=true;
+v167=v8.createStream(34962,v51);
+v170=v167.dtype;
+}
+else{
+v167=v8.getBuffer(v51);
+if(v167){
+v170=v167.dtype;
+}
+else if("constant" in v51){
+v162=2;
+if(typeof v51.constant === "number"){
+v163=v51.constant;
+v164=v165=v166=0;
+}
+else{
+v163=v51.constant.length>0?v51.constant[0]:0;
+v164=v51.constant.length>1?v51.constant[1]:0;
+v165=v51.constant.length>2?v51.constant[2]:0;
+v166=v51.constant.length>3?v51.constant[3]:0;
+}
+}
+else{
+if(v16(v51.buffer)){
+v167=v8.createStream(34962,v51.buffer);
+}
+else{
+v167=v8.getBuffer(v51.buffer);
+}
+v170="type" in v51?v46[v51.type]:v167.dtype;
+v169=!!v51.normalized;
+v168=v51.size|0;
+v171=v51.offset|0;
+v172=v51.stride|0;
+v173=v51.divisor|0;
+}
+}
+v175=g174.location;
+v176=v10[v175];
+if(v162===1){
+if(!v176.buffer){
+v1.enableVertexAttribArray(v175);
+}
+v177=v168||2;
+if(v176.type!==v170||v176.size!==v177||v176.buffer!==v167||v176.normalized!==v169||v176.offset!==v171||v176.stride!==v172){
+v1.bindBuffer(34962,v167.buffer);
+v1.vertexAttribPointer(v175,v177,v170,v169,v172,v171);
+v176.type=v170;
+v176.size=v177;
+v176.buffer=v167;
+v176.normalized=v169;
+v176.offset=v171;
+v176.stride=v172;
+}
+if(v176.divisor!==v173){
+v110.vertexAttribDivisorANGLE(v175,v173);
+v176.divisor=v173;
+}
+}
+else{
+if(v176.buffer){
+v1.disableVertexAttribArray(v175);
+v176.buffer=null;
+}
+if(v176.x!==v163||v176.y!==v164||v176.z!==v165||v176.w!==v166){
+v1.vertexAttrib4f(v175,v163,v164,v165,v166);
+v176.x=v163;
+v176.y=v164;
+v176.z=v165;
+v176.w=v166;
+}
+}
+v179=g178.call(this,v2,a0,0);
+v53.offset=v179;
+v180=false;
+v181=1;
+v182=0;
+v183=0;
+v184=0;
+v185=0;
+v186=null;
+v187=0;
+v188=false;
+v189=5126;
+v190=0;
+v191=0;
+v192=0;
+if(v16(v53)){
+v180=true;
+v186=v8.createStream(34962,v53);
+v189=v186.dtype;
+}
+else{
+v186=v8.getBuffer(v53);
+if(v186){
+v189=v186.dtype;
+}
+else if("constant" in v53){
+v181=2;
+if(typeof v53.constant === "number"){
+v182=v53.constant;
+v183=v184=v185=0;
+}
+else{
+v182=v53.constant.length>0?v53.constant[0]:0;
+v183=v53.constant.length>1?v53.constant[1]:0;
+v184=v53.constant.length>2?v53.constant[2]:0;
+v185=v53.constant.length>3?v53.constant[3]:0;
+}
+}
+else{
+if(v16(v53.buffer)){
+v186=v8.createStream(34962,v53.buffer);
+}
+else{
+v186=v8.getBuffer(v53.buffer);
+}
+v189="type" in v53?v46[v53.type]:v186.dtype;
+v188=!!v53.normalized;
+v187=v53.size|0;
+v190=v53.offset|0;
+v191=v53.stride|0;
+v192=v53.divisor|0;
+}
+}
+v194=g193.location;
+v195=v10[v194];
+if(v181===1){
+if(!v195.buffer){
+v1.enableVertexAttribArray(v194);
+}
+v196=v187||2;
+if(v195.type!==v189||v195.size!==v196||v195.buffer!==v186||v195.normalized!==v188||v195.offset!==v190||v195.stride!==v191){
+v1.bindBuffer(34962,v186.buffer);
+v1.vertexAttribPointer(v194,v196,v189,v188,v191,v190);
+v195.type=v189;
+v195.size=v196;
+v195.buffer=v186;
+v195.normalized=v188;
+v195.offset=v190;
+v195.stride=v191;
+}
+if(v195.divisor!==v192){
+v110.vertexAttribDivisorANGLE(v194,v192);
+v195.divisor=v192;
+}
+}
+else{
+if(v195.buffer){
+v1.disableVertexAttribArray(v194);
+v195.buffer=null;
+}
+if(v195.x!==v182||v195.y!==v183||v195.z!==v184||v195.w!==v185){
+v1.vertexAttrib4f(v194,v182,v183,v184,v185);
+v195.x=v182;
+v195.y=v183;
+v195.z=v184;
+v195.w=v185;
+}
+}
+v198=a0["capSize"];
+v1.uniform1f(g197.location,v198);
+v200=a0["lineWidth"];
+v1.uniform1f(g199.location,v200);
+v202=a0["opacity"];
+v1.uniform1f(g201.location,v202);
+v204=a0["scale"];
+v205=v204[0];
+v206=v204[1];
+v1.uniform2f(g203.location,v205,v206);
+v208=a0["scaleFract"];
+v209=v208[0];
+v210=v208[1];
+v1.uniform2f(g207.location,v209,v210);
+v212=a0["translate"];
+v213=v212[0];
+v214=v212[1];
+v1.uniform2f(g211.location,v213,v214);
+v216=a0["translateFract"];
+v217=v216[0];
+v218=v216[1];
+v1.uniform2f(g215.location,v217,v218);
+v221=g220.call(this,v2,a0,0);
+v222=v221[0];
+v223=v221[1];
+v224=v221[2];
+v225=v221[3];
+v1.uniform4f(g219.location,v222,v223,v224,v225);
+v226=v6.elements;
+if(v226){
+v1.bindBuffer(34963,v226.buffer.buffer);
+}
+else if(v11.currentVAO){
+v226=v7.getElements(v11.currentVAO.elements);
+if(v226)v1.bindBuffer(34963,v226.buffer.buffer);
+}
+v227=v6.offset;
+v228=a0["count"];
+if(v228>0){
+if(v226){
+v110.drawElementsInstancedANGLE(4,36,v226.type,v227<<((v226.type-5121)>>1),v228);
+}
+else{
+v110.drawArraysInstancedANGLE(4,v227,36,v228);
+}
+}
+else if(v228<0){
+if(v226){
+v1.drawElements(4,36,v226.type,v227<<((v226.type-5121)>>1));
+}
+else{
+v1.drawArrays(4,v227,36);
+}
+}
+v5.dirty=true;
+v11.setVAO(null);
+v2.viewportWidth=v97;
+v2.viewportHeight=v98;
+if(v107){
+g48.cpuTime+=performance.now()-v108;
+}
+if(v117){
+v8.destroyStream(v123);
+}
+if(v139){
+v8.destroyStream(v145);
+}
+if(v161){
+v8.destroyStream(v167);
+}
+if(v180){
+v8.destroyStream(v186);
+}
+}
+,"scope":function(a0,a1,a2){
+var v229,v230,v231,v232,v233,v234,v235,v236,v237,v238,v239,v241,v243,v245,v247,v249,v251,v253,v255,v257,v259,v261,v263,v264,v265,v266,v267,v268,v269,v270,v271,v272,v274,v275,v276,v278,v279,v280,v282,v283,v285,v286,v288,v289,v291,v292,v294,v295,v297,v298,v300,v301,v303,v304,v306,v307,v309,v311,v312,v313,v314,v315,v316,v317,v318,v319,v320,v321,v322,v324,v325,v326,v327,v328,v329,v330,v331,v332,v333,v334,v335,v337,v338,v339,v340,v341,v342,v343,v344,v345,v346,v347,v348,v349,v350,v351,v352,v353,v354,v355,v356,v357,v358,v359,v360,v361,v362,v364,v365,v366,v367,v368,v369,v370,v371,v372,v373,v374,v375,v376,v377,v378,v379,v380,v381,v382,v383,v384,v385,v386,v387,v388,v389,v391,v392,v393,v394,v395,v396,v397,v398,v399,v400,v401,v402,v403,v404,v405,v406,v407,v408,v409,v410,v411,v412,v413,v414,v415,v416,v418,v419,v420,v421,v422,v423,v424,v425,v426,v427,v428,v429,v430,v431,v432,v433,v434,v435,v436,v437,v438,v439,v440,v441,v442,v443,v445,v446,v447,v448,v449,v450,v451,v452,v453,v454,v455,v456,v458,v460;
+v229=a0["viewport"];
+v230=v229.x|0;
+v231=v229.y|0;
+v232="width" in v229?v229.width|0:(v2.framebufferWidth-v230);
+v233="height" in v229?v229.height|0:(v2.framebufferHeight-v231);
+v234=v2.viewportWidth;
+v2.viewportWidth=v232;
+v235=v2.viewportHeight;
+v2.viewportHeight=v233;
+v236=v39[0];
+v39[0]=v230;
+v237=v39[1];
+v39[1]=v231;
+v238=v39[2];
+v39[2]=v232;
+v239=v39[3];
+v39[3]=v233;
+v241=v17[0];
+v17[0]=g240;
+v243=v17[1];
+v17[1]=g242;
+v245=v17[2];
+v17[2]=g244;
+v247=v17[3];
+v17[3]=g246;
+v249=v4.blend_enable;
+v4.blend_enable=g248;
+v251=v19[0];
+v19[0]=g250;
+v253=v19[1];
+v19[1]=g252;
+v255=v21[0];
+v21[0]=g254;
+v257=v21[1];
+v21[1]=g256;
+v259=v21[2];
+v21[2]=g258;
+v261=v21[3];
+v21[3]=g260;
+v263=v4.depth_enable;
+v4.depth_enable=g262;
+v264=a0["viewport"];
+v265=v264.x|0;
+v266=v264.y|0;
+v267="width" in v264?v264.width|0:(v2.framebufferWidth-v265);
+v268="height" in v264?v264.height|0:(v2.framebufferHeight-v266);
+v269=v37[0];
+v37[0]=v265;
+v270=v37[1];
+v37[1]=v266;
+v271=v37[2];
+v37[2]=v267;
+v272=v37[3];
+v37[3]=v268;
+v274=v4.scissor_enable;
+v4.scissor_enable=g273;
+v275=v5.profile;
+if(v275){
+v276=performance.now();
+g48.count++;
+}
+v278=v6.count;
+v6.count=g277;
+v279=a0["count"];
+v280=v6.instances;
+v6.instances=v279;
+v282=v6.primitive;
+v6.primitive=g281;
+v283=a0["range"];
+v285=v12[g284];
+v12[g284]=v283;
+v286=a0["lineWidth"];
+v288=v12[g287];
+v12[g287]=v286;
+v289=a0["capSize"];
+v291=v12[g290];
+v12[g290]=v289;
+v292=a0["opacity"];
+v294=v12[g293];
+v12[g293]=v292;
+v295=a0["scale"];
+v297=v12[g296];
+v12[g296]=v295;
+v298=a0["translate"];
+v300=v12[g299];
+v12[g299]=v298;
+v301=a0["scaleFract"];
+v303=v12[g302];
+v12[g302]=v301;
+v304=a0["translateFract"];
+v306=v12[g305];
+v12[g305]=v304;
+v307=g220.call(this,v2,a0,a2);
+v309=v12[g308];
+v12[g308]=v307;
+v311=g310.state;
+g310.state=1;
+v312=g310.x;
+g310.x=0;
+v313=g310.y;
+g310.y=0;
+v314=g310.z;
+g310.z=0;
+v315=g310.w;
+g310.w=0;
+v316=g310.buffer;
+g310.buffer=g111;
+v317=g310.size;
+g310.size=0;
+v318=g310.normalized;
+g310.normalized=false;
+v319=g310.type;
+g310.type=5126;
+v320=g310.offset;
+g310.offset=0;
+v321=g310.stride;
+g310.stride=24;
+v322=g310.divisor;
+g310.divisor=0;
+v324=g323.state;
+g323.state=1;
+v325=g323.x;
+g323.x=0;
+v326=g323.y;
+g323.y=0;
+v327=g323.z;
+g323.z=0;
+v328=g323.w;
+g323.w=0;
+v329=g323.buffer;
+g323.buffer=g111;
+v330=g323.size;
+g323.size=0;
+v331=g323.normalized;
+g323.normalized=false;
+v332=g323.type;
+g323.type=5126;
+v333=g323.offset;
+g323.offset=8;
+v334=g323.stride;
+g323.stride=24;
+v335=g323.divisor;
+g323.divisor=0;
+v337=g336.state;
+g336.state=1;
+v338=g336.x;
+g336.x=0;
+v339=g336.y;
+g336.y=0;
+v340=g336.z;
+g336.z=0;
+v341=g336.w;
+g336.w=0;
+v342=g336.buffer;
+g336.buffer=g111;
+v343=g336.size;
+g336.size=0;
+v344=g336.normalized;
+g336.normalized=false;
+v345=g336.type;
+g336.type=5126;
+v346=g336.offset;
+g336.offset=16;
+v347=g336.stride;
+g336.stride=24;
+v348=g336.divisor;
+g336.divisor=0;
+v349=g115.call(this,v2,a0,a2);
+v49.offset=v349;
+v350=false;
+v351=1;
+v352=0;
+v353=0;
+v354=0;
+v355=0;
+v356=null;
+v357=0;
+v358=false;
+v359=5126;
+v360=0;
+v361=0;
+v362=0;
+if(v16(v49)){
+v350=true;
+v356=v8.createStream(34962,v49);
+v359=v356.dtype;
+}
+else{
+v356=v8.getBuffer(v49);
+if(v356){
+v359=v356.dtype;
+}
+else if("constant" in v49){
+v351=2;
+if(typeof v49.constant === "number"){
+v352=v49.constant;
+v353=v354=v355=0;
+}
+else{
+v352=v49.constant.length>0?v49.constant[0]:0;
+v353=v49.constant.length>1?v49.constant[1]:0;
+v354=v49.constant.length>2?v49.constant[2]:0;
+v355=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v356=v8.createStream(34962,v49.buffer);
+}
+else{
+v356=v8.getBuffer(v49.buffer);
+}
+v359="type" in v49?v46[v49.type]:v356.dtype;
+v358=!!v49.normalized;
+v357=v49.size|0;
+v360=v49.offset|0;
+v361=v49.stride|0;
+v362=v49.divisor|0;
+}
+}
+v364=g363.state;
+g363.state=v351;
+v365=g363.x;
+g363.x=v352;
+v366=g363.y;
+g363.y=v353;
+v367=g363.z;
+g363.z=v354;
+v368=g363.w;
+g363.w=v355;
+v369=g363.buffer;
+g363.buffer=v356;
+v370=g363.size;
+g363.size=v357;
+v371=g363.normalized;
+g363.normalized=v358;
+v372=g363.type;
+g363.type=v359;
+v373=g363.offset;
+g363.offset=v360;
+v374=g363.stride;
+g363.stride=v361;
+v375=g363.divisor;
+g363.divisor=v362;
+v376=g159.call(this,v2,a0,a2);
+v51.offset=v376;
+v377=false;
+v378=1;
+v379=0;
+v380=0;
+v381=0;
+v382=0;
+v383=null;
+v384=0;
+v385=false;
+v386=5126;
+v387=0;
+v388=0;
+v389=0;
+if(v16(v51)){
+v377=true;
+v383=v8.createStream(34962,v51);
+v386=v383.dtype;
+}
+else{
+v383=v8.getBuffer(v51);
+if(v383){
+v386=v383.dtype;
+}
+else if("constant" in v51){
+v378=2;
+if(typeof v51.constant === "number"){
+v379=v51.constant;
+v380=v381=v382=0;
+}
+else{
+v379=v51.constant.length>0?v51.constant[0]:0;
+v380=v51.constant.length>1?v51.constant[1]:0;
+v381=v51.constant.length>2?v51.constant[2]:0;
+v382=v51.constant.length>3?v51.constant[3]:0;
+}
+}
+else{
+if(v16(v51.buffer)){
+v383=v8.createStream(34962,v51.buffer);
+}
+else{
+v383=v8.getBuffer(v51.buffer);
+}
+v386="type" in v51?v46[v51.type]:v383.dtype;
+v385=!!v51.normalized;
+v384=v51.size|0;
+v387=v51.offset|0;
+v388=v51.stride|0;
+v389=v51.divisor|0;
+}
+}
+v391=g390.state;
+g390.state=v378;
+v392=g390.x;
+g390.x=v379;
+v393=g390.y;
+g390.y=v380;
+v394=g390.z;
+g390.z=v381;
+v395=g390.w;
+g390.w=v382;
+v396=g390.buffer;
+g390.buffer=v383;
+v397=g390.size;
+g390.size=v384;
+v398=g390.normalized;
+g390.normalized=v385;
+v399=g390.type;
+g390.type=v386;
+v400=g390.offset;
+g390.offset=v387;
+v401=g390.stride;
+g390.stride=v388;
+v402=g390.divisor;
+g390.divisor=v389;
+v403=g178.call(this,v2,a0,a2);
+v53.offset=v403;
+v404=false;
+v405=1;
+v406=0;
+v407=0;
+v408=0;
+v409=0;
+v410=null;
+v411=0;
+v412=false;
+v413=5126;
+v414=0;
+v415=0;
+v416=0;
+if(v16(v53)){
+v404=true;
+v410=v8.createStream(34962,v53);
+v413=v410.dtype;
+}
+else{
+v410=v8.getBuffer(v53);
+if(v410){
+v413=v410.dtype;
+}
+else if("constant" in v53){
+v405=2;
+if(typeof v53.constant === "number"){
+v406=v53.constant;
+v407=v408=v409=0;
+}
+else{
+v406=v53.constant.length>0?v53.constant[0]:0;
+v407=v53.constant.length>1?v53.constant[1]:0;
+v408=v53.constant.length>2?v53.constant[2]:0;
+v409=v53.constant.length>3?v53.constant[3]:0;
+}
+}
+else{
+if(v16(v53.buffer)){
+v410=v8.createStream(34962,v53.buffer);
+}
+else{
+v410=v8.getBuffer(v53.buffer);
+}
+v413="type" in v53?v46[v53.type]:v410.dtype;
+v412=!!v53.normalized;
+v411=v53.size|0;
+v414=v53.offset|0;
+v415=v53.stride|0;
+v416=v53.divisor|0;
+}
+}
+v418=g417.state;
+g417.state=v405;
+v419=g417.x;
+g417.x=v406;
+v420=g417.y;
+g417.y=v407;
+v421=g417.z;
+g417.z=v408;
+v422=g417.w;
+g417.w=v409;
+v423=g417.buffer;
+g417.buffer=v410;
+v424=g417.size;
+g417.size=v411;
+v425=g417.normalized;
+g417.normalized=v412;
+v426=g417.type;
+g417.type=v413;
+v427=g417.offset;
+g417.offset=v414;
+v428=g417.stride;
+g417.stride=v415;
+v429=g417.divisor;
+g417.divisor=v416;
+v430=g137.call(this,v2,a0,a2);
+v55.offset=v430;
+v431=false;
+v432=1;
+v433=0;
+v434=0;
+v435=0;
+v436=0;
+v437=null;
+v438=0;
+v439=false;
+v440=5126;
+v441=0;
+v442=0;
+v443=0;
+if(v16(v55)){
+v431=true;
+v437=v8.createStream(34962,v55);
+v440=v437.dtype;
+}
+else{
+v437=v8.getBuffer(v55);
+if(v437){
+v440=v437.dtype;
+}
+else if("constant" in v55){
+v432=2;
+if(typeof v55.constant === "number"){
+v433=v55.constant;
+v434=v435=v436=0;
+}
+else{
+v433=v55.constant.length>0?v55.constant[0]:0;
+v434=v55.constant.length>1?v55.constant[1]:0;
+v435=v55.constant.length>2?v55.constant[2]:0;
+v436=v55.constant.length>3?v55.constant[3]:0;
+}
+}
+else{
+if(v16(v55.buffer)){
+v437=v8.createStream(34962,v55.buffer);
+}
+else{
+v437=v8.getBuffer(v55.buffer);
+}
+v440="type" in v55?v46[v55.type]:v437.dtype;
+v439=!!v55.normalized;
+v438=v55.size|0;
+v441=v55.offset|0;
+v442=v55.stride|0;
+v443=v55.divisor|0;
+}
+}
+v445=g444.state;
+g444.state=v432;
+v446=g444.x;
+g444.x=v433;
+v447=g444.y;
+g444.y=v434;
+v448=g444.z;
+g444.z=v435;
+v449=g444.w;
+g444.w=v436;
+v450=g444.buffer;
+g444.buffer=v437;
+v451=g444.size;
+g444.size=v438;
+v452=g444.normalized;
+g444.normalized=v439;
+v453=g444.type;
+g444.type=v440;
+v454=g444.offset;
+g444.offset=v441;
+v455=g444.stride;
+g444.stride=v442;
+v456=g444.divisor;
+g444.divisor=v443;
+v458=v9.vert;
+v9.vert=g457;
+v460=v9.frag;
+v9.frag=g459;
+v5.dirty=true;
+a1(v2,a0,a2);
+v2.viewportWidth=v234;
+v2.viewportHeight=v235;
+v39[0]=v236;
+v39[1]=v237;
+v39[2]=v238;
+v39[3]=v239;
+v17[0]=v241;
+v17[1]=v243;
+v17[2]=v245;
+v17[3]=v247;
+v4.blend_enable=v249;
+v19[0]=v251;
+v19[1]=v253;
+v21[0]=v255;
+v21[1]=v257;
+v21[2]=v259;
+v21[3]=v261;
+v4.depth_enable=v263;
+v37[0]=v269;
+v37[1]=v270;
+v37[2]=v271;
+v37[3]=v272;
+v4.scissor_enable=v274;
+if(v275){
+g48.cpuTime+=performance.now()-v276;
+}
+v6.count=v278;
+v6.instances=v280;
+v6.primitive=v282;
+v12[g284]=v285;
+v12[g287]=v288;
+v12[g290]=v291;
+v12[g293]=v294;
+v12[g296]=v297;
+v12[g299]=v300;
+v12[g302]=v303;
+v12[g305]=v306;
+v12[g308]=v309;
+g310.state=v311;
+g310.x=v312;
+g310.y=v313;
+g310.z=v314;
+g310.w=v315;
+g310.buffer=v316;
+g310.size=v317;
+g310.normalized=v318;
+g310.type=v319;
+g310.offset=v320;
+g310.stride=v321;
+g310.divisor=v322;
+g323.state=v324;
+g323.x=v325;
+g323.y=v326;
+g323.z=v327;
+g323.w=v328;
+g323.buffer=v329;
+g323.size=v330;
+g323.normalized=v331;
+g323.type=v332;
+g323.offset=v333;
+g323.stride=v334;
+g323.divisor=v335;
+g336.state=v337;
+g336.x=v338;
+g336.y=v339;
+g336.z=v340;
+g336.w=v341;
+g336.buffer=v342;
+g336.size=v343;
+g336.normalized=v344;
+g336.type=v345;
+g336.offset=v346;
+g336.stride=v347;
+g336.divisor=v348;
+if(v350){
+v8.destroyStream(v356);
+}
+g363.state=v364;
+g363.x=v365;
+g363.y=v366;
+g363.z=v367;
+g363.w=v368;
+g363.buffer=v369;
+g363.size=v370;
+g363.normalized=v371;
+g363.type=v372;
+g363.offset=v373;
+g363.stride=v374;
+g363.divisor=v375;
+if(v377){
+v8.destroyStream(v383);
+}
+g390.state=v391;
+g390.x=v392;
+g390.y=v393;
+g390.z=v394;
+g390.w=v395;
+g390.buffer=v396;
+g390.size=v397;
+g390.normalized=v398;
+g390.type=v399;
+g390.offset=v400;
+g390.stride=v401;
+g390.divisor=v402;
+if(v404){
+v8.destroyStream(v410);
+}
+g417.state=v418;
+g417.x=v419;
+g417.y=v420;
+g417.z=v421;
+g417.w=v422;
+g417.buffer=v423;
+g417.size=v424;
+g417.normalized=v425;
+g417.type=v426;
+g417.offset=v427;
+g417.stride=v428;
+g417.divisor=v429;
+if(v431){
+v8.destroyStream(v437);
+}
+g444.state=v445;
+g444.x=v446;
+g444.y=v447;
+g444.z=v448;
+g444.w=v449;
+g444.buffer=v450;
+g444.size=v451;
+g444.normalized=v452;
+g444.type=v453;
+g444.offset=v454;
+g444.stride=v455;
+g444.divisor=v456;
+v9.vert=v458;
+v9.frag=v460;
+v5.dirty=true;
+}
+,"batch":function(a0,a1){
+var v461,v462,v499,v500,v501,v502,v503;
+v461=v14.angle_instanced_arrays;
+v462=v13.next;
+if(v462!==v13.cur){
+if(v462){
+v1.bindFramebuffer(36160,v462.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v462;
+}
+if(v5.dirty){
+var v463,v464,v465,v466,v467,v468,v469,v470,v471,v472,v473,v474,v475,v476,v477,v478,v479,v480,v481,v482,v483,v484,v485,v486,v487,v488,v489,v490,v491,v492,v493,v494,v495;
+v463=v4.dither;
+if(v463!==v5.dither){
+if(v463){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v463;
+}
+v464=v4.depth_func;
+if(v464!==v5.depth_func){
+v1.depthFunc(v464);
+v5.depth_func=v464;
+}
+v465=v23[0];
+v466=v23[1];
+if(v465!==v24[0]||v466!==v24[1]){
+v1.depthRange(v465,v466);
+v24[0]=v465;
+v24[1]=v466;
+}
+v467=v4.depth_mask;
+if(v467!==v5.depth_mask){
+v1.depthMask(v467);
+v5.depth_mask=v467;
+}
+v468=v25[0];
+v469=v25[1];
+v470=v25[2];
+v471=v25[3];
+if(v468!==v26[0]||v469!==v26[1]||v470!==v26[2]||v471!==v26[3]){
+v1.colorMask(v468,v469,v470,v471);
+v26[0]=v468;
+v26[1]=v469;
+v26[2]=v470;
+v26[3]=v471;
+}
+v472=v4.cull_enable;
+if(v472!==v5.cull_enable){
+if(v472){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v472;
+}
+v473=v4.cull_face;
+if(v473!==v5.cull_face){
+v1.cullFace(v473);
+v5.cull_face=v473;
+}
+v474=v4.frontFace;
+if(v474!==v5.frontFace){
+v1.frontFace(v474);
+v5.frontFace=v474;
+}
+v475=v4.lineWidth;
+if(v475!==v5.lineWidth){
+v1.lineWidth(v475);
+v5.lineWidth=v475;
+}
+v476=v4.polygonOffset_enable;
+if(v476!==v5.polygonOffset_enable){
+if(v476){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v476;
+}
+v477=v27[0];
+v478=v27[1];
+if(v477!==v28[0]||v478!==v28[1]){
+v1.polygonOffset(v477,v478);
+v28[0]=v477;
+v28[1]=v478;
+}
+v479=v4.sample_alpha;
+if(v479!==v5.sample_alpha){
+if(v479){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v479;
+}
+v480=v4.sample_enable;
+if(v480!==v5.sample_enable){
+if(v480){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v480;
+}
+v481=v29[0];
+v482=v29[1];
+if(v481!==v30[0]||v482!==v30[1]){
+v1.sampleCoverage(v481,v482);
+v30[0]=v481;
+v30[1]=v482;
+}
+v483=v4.stencil_enable;
+if(v483!==v5.stencil_enable){
+if(v483){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v483;
+}
+v484=v4.stencil_mask;
+if(v484!==v5.stencil_mask){
+v1.stencilMask(v484);
+v5.stencil_mask=v484;
+}
+v485=v31[0];
+v486=v31[1];
+v487=v31[2];
+if(v485!==v32[0]||v486!==v32[1]||v487!==v32[2]){
+v1.stencilFunc(v485,v486,v487);
+v32[0]=v485;
+v32[1]=v486;
+v32[2]=v487;
+}
+v488=v33[0];
+v489=v33[1];
+v490=v33[2];
+v491=v33[3];
+if(v488!==v34[0]||v489!==v34[1]||v490!==v34[2]||v491!==v34[3]){
+v1.stencilOpSeparate(v488,v489,v490,v491);
+v34[0]=v488;
+v34[1]=v489;
+v34[2]=v490;
+v34[3]=v491;
+}
+v492=v35[0];
+v493=v35[1];
+v494=v35[2];
+v495=v35[3];
+if(v492!==v36[0]||v493!==v36[1]||v494!==v36[2]||v495!==v36[3]){
+v1.stencilOpSeparate(v492,v493,v494,v495);
+v36[0]=v492;
+v36[1]=v493;
+v36[2]=v494;
+v36[3]=v495;
+}
+}
+v1.blendColor(0,0,0,0);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=0;
+if(g496){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g496;
+v1.blendEquationSeparate(32774,32774);
+v20[0]=32774;
+v20[1]=32774;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g497){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g497;
+if(g498){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g498;
+v499=v5.profile;
+if(v499){
+v500=performance.now();
+g48.count+=a1;
+}
+v1.useProgram(g109.program);
+v501=v14.angle_instanced_arrays;
+var v516,v517,v518,v519,v520,v521,v625,v626;
+v11.setVAO(null);
+v516=g112.location;
+v517=v10[v516];
+if(!v517.buffer){
+v1.enableVertexAttribArray(v516);
+}
+if(v517.type!==5126||v517.size!==2||v517.buffer!==g111||v517.normalized!==false||v517.offset!==16||v517.stride!==24){
+v1.bindBuffer(34962,g111.buffer);
+v1.vertexAttribPointer(v516,2,5126,false,24,16);
+v517.type=5126;
+v517.size=2;
+v517.buffer=g111;
+v517.normalized=false;
+v517.offset=16;
+v517.stride=24;
+}
+if(v517.divisor!==0){
+v501.vertexAttribDivisorANGLE(v516,0);
+v517.divisor=0;
+}
+v518=g134.location;
+v519=v10[v518];
+if(!v519.buffer){
+v1.enableVertexAttribArray(v518);
+}
+if(v519.type!==5126||v519.size!==2||v519.buffer!==g111||v519.normalized!==false||v519.offset!==0||v519.stride!==24){
+v1.bindBuffer(34962,g111.buffer);
+v1.vertexAttribPointer(v518,2,5126,false,24,0);
+v519.type=5126;
+v519.size=2;
+v519.buffer=g111;
+v519.normalized=false;
+v519.offset=0;
+v519.stride=24;
+}
+if(v519.divisor!==0){
+v501.vertexAttribDivisorANGLE(v518,0);
+v519.divisor=0;
+}
+v520=g156.location;
+v521=v10[v520];
+if(!v521.buffer){
+v1.enableVertexAttribArray(v520);
+}
+if(v521.type!==5126||v521.size!==2||v521.buffer!==g111||v521.normalized!==false||v521.offset!==8||v521.stride!==24){
+v1.bindBuffer(34962,g111.buffer);
+v1.vertexAttribPointer(v520,2,5126,false,24,8);
+v521.type=5126;
+v521.size=2;
+v521.buffer=g111;
+v521.normalized=false;
+v521.offset=8;
+v521.stride=24;
+}
+if(v521.divisor!==0){
+v501.vertexAttribDivisorANGLE(v520,0);
+v521.divisor=0;
+}
+v625=v6.elements;
+if(v625){
+v1.bindBuffer(34963,v625.buffer.buffer);
+}
+else if(v11.currentVAO){
+v625=v7.getElements(v11.currentVAO.elements);
+if(v625)v1.bindBuffer(34963,v625.buffer.buffer);
+}
+v626=v6.offset;
+for(v502=0;
+v502<a1;
+++v502){
+v503=a0[v502];
+var v504,v505,v506,v507,v508,v509,v510,v511,v512,v513,v514,v515,v522,v523,v524,v525,v526,v527,v528,v529,v530,v531,v532,v533,v534,v535,v536,v537,v538,v539,v540,v541,v542,v543,v544,v545,v546,v547,v548,v549,v550,v551,v552,v553,v554,v555,v556,v557,v558,v559,v560,v561,v562,v563,v564,v565,v566,v567,v568,v569,v570,v571,v572,v573,v574,v575,v576,v577,v578,v579,v580,v581,v582,v583,v584,v585,v586,v587,v588,v589,v590,v591,v592,v593,v594,v595,v596,v597,v598,v599,v600,v601,v602,v603,v604,v605,v606,v607,v608,v609,v610,v611,v612,v613,v614,v615,v616,v617,v618,v619,v620,v621,v622,v623,v624,v627;
+v504=v503["viewport"];
+v505=v504.x|0;
+v506=v504.y|0;
+v507="width" in v504?v504.width|0:(v2.framebufferWidth-v505);
+v508="height" in v504?v504.height|0:(v2.framebufferHeight-v506);
+v509=v2.viewportWidth;
+v2.viewportWidth=v507;
+v510=v2.viewportHeight;
+v2.viewportHeight=v508;
+v1.viewport(v505,v506,v507,v508);
+v40[0]=v505;
+v40[1]=v506;
+v40[2]=v507;
+v40[3]=v508;
+v511=v503["viewport"];
+v512=v511.x|0;
+v513=v511.y|0;
+v514="width" in v511?v511.width|0:(v2.framebufferWidth-v512);
+v515="height" in v511?v511.height|0:(v2.framebufferHeight-v513);
+v1.scissor(v512,v513,v514,v515);
+v38[0]=v512;
+v38[1]=v513;
+v38[2]=v514;
+v38[3]=v515;
+v522=g115.call(this,v2,v503,v502);
+v49.offset=v522;
+v523=false;
+v524=1;
+v525=0;
+v526=0;
+v527=0;
+v528=0;
+v529=null;
+v530=0;
+v531=false;
+v532=5126;
+v533=0;
+v534=0;
+v535=0;
+if(v16(v49)){
+v523=true;
+v529=v8.createStream(34962,v49);
+v532=v529.dtype;
+}
+else{
+v529=v8.getBuffer(v49);
+if(v529){
+v532=v529.dtype;
+}
+else if("constant" in v49){
+v524=2;
+if(typeof v49.constant === "number"){
+v525=v49.constant;
+v526=v527=v528=0;
+}
+else{
+v525=v49.constant.length>0?v49.constant[0]:0;
+v526=v49.constant.length>1?v49.constant[1]:0;
+v527=v49.constant.length>2?v49.constant[2]:0;
+v528=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v529=v8.createStream(34962,v49.buffer);
+}
+else{
+v529=v8.getBuffer(v49.buffer);
+}
+v532="type" in v49?v46[v49.type]:v529.dtype;
+v531=!!v49.normalized;
+v530=v49.size|0;
+v533=v49.offset|0;
+v534=v49.stride|0;
+v535=v49.divisor|0;
+}
+}
+v536=g130.location;
+v537=v10[v536];
+if(v524===1){
+if(!v537.buffer){
+v1.enableVertexAttribArray(v536);
+}
+v538=v530||4;
+if(v537.type!==v532||v537.size!==v538||v537.buffer!==v529||v537.normalized!==v531||v537.offset!==v533||v537.stride!==v534){
+v1.bindBuffer(34962,v529.buffer);
+v1.vertexAttribPointer(v536,v538,v532,v531,v534,v533);
+v537.type=v532;
+v537.size=v538;
+v537.buffer=v529;
+v537.normalized=v531;
+v537.offset=v533;
+v537.stride=v534;
+}
+if(v537.divisor!==v535){
+v501.vertexAttribDivisorANGLE(v536,v535);
+v537.divisor=v535;
+}
+}
+else{
+if(v537.buffer){
+v1.disableVertexAttribArray(v536);
+v537.buffer=null;
+}
+if(v537.x!==v525||v537.y!==v526||v537.z!==v527||v537.w!==v528){
+v1.vertexAttrib4f(v536,v525,v526,v527,v528);
+v537.x=v525;
+v537.y=v526;
+v537.z=v527;
+v537.w=v528;
+}
+}
+v539=g137.call(this,v2,v503,v502);
+v55.offset=v539;
+v540=false;
+v541=1;
+v542=0;
+v543=0;
+v544=0;
+v545=0;
+v546=null;
+v547=0;
+v548=false;
+v549=5126;
+v550=0;
+v551=0;
+v552=0;
+if(v16(v55)){
+v540=true;
+v546=v8.createStream(34962,v55);
+v549=v546.dtype;
+}
+else{
+v546=v8.getBuffer(v55);
+if(v546){
+v549=v546.dtype;
+}
+else if("constant" in v55){
+v541=2;
+if(typeof v55.constant === "number"){
+v542=v55.constant;
+v543=v544=v545=0;
+}
+else{
+v542=v55.constant.length>0?v55.constant[0]:0;
+v543=v55.constant.length>1?v55.constant[1]:0;
+v544=v55.constant.length>2?v55.constant[2]:0;
+v545=v55.constant.length>3?v55.constant[3]:0;
+}
+}
+else{
+if(v16(v55.buffer)){
+v546=v8.createStream(34962,v55.buffer);
+}
+else{
+v546=v8.getBuffer(v55.buffer);
+}
+v549="type" in v55?v46[v55.type]:v546.dtype;
+v548=!!v55.normalized;
+v547=v55.size|0;
+v550=v55.offset|0;
+v551=v55.stride|0;
+v552=v55.divisor|0;
+}
+}
+v553=g152.location;
+v554=v10[v553];
+if(v541===1){
+if(!v554.buffer){
+v1.enableVertexAttribArray(v553);
+}
+v555=v547||4;
+if(v554.type!==v549||v554.size!==v555||v554.buffer!==v546||v554.normalized!==v548||v554.offset!==v550||v554.stride!==v551){
+v1.bindBuffer(34962,v546.buffer);
+v1.vertexAttribPointer(v553,v555,v549,v548,v551,v550);
+v554.type=v549;
+v554.size=v555;
+v554.buffer=v546;
+v554.normalized=v548;
+v554.offset=v550;
+v554.stride=v551;
+}
+if(v554.divisor!==v552){
+v501.vertexAttribDivisorANGLE(v553,v552);
+v554.divisor=v552;
+}
+}
+else{
+if(v554.buffer){
+v1.disableVertexAttribArray(v553);
+v554.buffer=null;
+}
+if(v554.x!==v542||v554.y!==v543||v554.z!==v544||v554.w!==v545){
+v1.vertexAttrib4f(v553,v542,v543,v544,v545);
+v554.x=v542;
+v554.y=v543;
+v554.z=v544;
+v554.w=v545;
+}
+}
+v556=g159.call(this,v2,v503,v502);
+v51.offset=v556;
+v557=false;
+v558=1;
+v559=0;
+v560=0;
+v561=0;
+v562=0;
+v563=null;
+v564=0;
+v565=false;
+v566=5126;
+v567=0;
+v568=0;
+v569=0;
+if(v16(v51)){
+v557=true;
+v563=v8.createStream(34962,v51);
+v566=v563.dtype;
+}
+else{
+v563=v8.getBuffer(v51);
+if(v563){
+v566=v563.dtype;
+}
+else if("constant" in v51){
+v558=2;
+if(typeof v51.constant === "number"){
+v559=v51.constant;
+v560=v561=v562=0;
+}
+else{
+v559=v51.constant.length>0?v51.constant[0]:0;
+v560=v51.constant.length>1?v51.constant[1]:0;
+v561=v51.constant.length>2?v51.constant[2]:0;
+v562=v51.constant.length>3?v51.constant[3]:0;
+}
+}
+else{
+if(v16(v51.buffer)){
+v563=v8.createStream(34962,v51.buffer);
+}
+else{
+v563=v8.getBuffer(v51.buffer);
+}
+v566="type" in v51?v46[v51.type]:v563.dtype;
+v565=!!v51.normalized;
+v564=v51.size|0;
+v567=v51.offset|0;
+v568=v51.stride|0;
+v569=v51.divisor|0;
+}
+}
+v570=g174.location;
+v571=v10[v570];
+if(v558===1){
+if(!v571.buffer){
+v1.enableVertexAttribArray(v570);
+}
+v572=v564||2;
+if(v571.type!==v566||v571.size!==v572||v571.buffer!==v563||v571.normalized!==v565||v571.offset!==v567||v571.stride!==v568){
+v1.bindBuffer(34962,v563.buffer);
+v1.vertexAttribPointer(v570,v572,v566,v565,v568,v567);
+v571.type=v566;
+v571.size=v572;
+v571.buffer=v563;
+v571.normalized=v565;
+v571.offset=v567;
+v571.stride=v568;
+}
+if(v571.divisor!==v569){
+v501.vertexAttribDivisorANGLE(v570,v569);
+v571.divisor=v569;
+}
+}
+else{
+if(v571.buffer){
+v1.disableVertexAttribArray(v570);
+v571.buffer=null;
+}
+if(v571.x!==v559||v571.y!==v560||v571.z!==v561||v571.w!==v562){
+v1.vertexAttrib4f(v570,v559,v560,v561,v562);
+v571.x=v559;
+v571.y=v560;
+v571.z=v561;
+v571.w=v562;
+}
+}
+v573=g178.call(this,v2,v503,v502);
+v53.offset=v573;
+v574=false;
+v575=1;
+v576=0;
+v577=0;
+v578=0;
+v579=0;
+v580=null;
+v581=0;
+v582=false;
+v583=5126;
+v584=0;
+v585=0;
+v586=0;
+if(v16(v53)){
+v574=true;
+v580=v8.createStream(34962,v53);
+v583=v580.dtype;
+}
+else{
+v580=v8.getBuffer(v53);
+if(v580){
+v583=v580.dtype;
+}
+else if("constant" in v53){
+v575=2;
+if(typeof v53.constant === "number"){
+v576=v53.constant;
+v577=v578=v579=0;
+}
+else{
+v576=v53.constant.length>0?v53.constant[0]:0;
+v577=v53.constant.length>1?v53.constant[1]:0;
+v578=v53.constant.length>2?v53.constant[2]:0;
+v579=v53.constant.length>3?v53.constant[3]:0;
+}
+}
+else{
+if(v16(v53.buffer)){
+v580=v8.createStream(34962,v53.buffer);
+}
+else{
+v580=v8.getBuffer(v53.buffer);
+}
+v583="type" in v53?v46[v53.type]:v580.dtype;
+v582=!!v53.normalized;
+v581=v53.size|0;
+v584=v53.offset|0;
+v585=v53.stride|0;
+v586=v53.divisor|0;
+}
+}
+v587=g193.location;
+v588=v10[v587];
+if(v575===1){
+if(!v588.buffer){
+v1.enableVertexAttribArray(v587);
+}
+v589=v581||2;
+if(v588.type!==v583||v588.size!==v589||v588.buffer!==v580||v588.normalized!==v582||v588.offset!==v584||v588.stride!==v585){
+v1.bindBuffer(34962,v580.buffer);
+v1.vertexAttribPointer(v587,v589,v583,v582,v585,v584);
+v588.type=v583;
+v588.size=v589;
+v588.buffer=v580;
+v588.normalized=v582;
+v588.offset=v584;
+v588.stride=v585;
+}
+if(v588.divisor!==v586){
+v501.vertexAttribDivisorANGLE(v587,v586);
+v588.divisor=v586;
+}
+}
+else{
+if(v588.buffer){
+v1.disableVertexAttribArray(v587);
+v588.buffer=null;
+}
+if(v588.x!==v576||v588.y!==v577||v588.z!==v578||v588.w!==v579){
+v1.vertexAttrib4f(v587,v576,v577,v578,v579);
+v588.x=v576;
+v588.y=v577;
+v588.z=v578;
+v588.w=v579;
+}
+}
+v590=v503["capSize"];
+if(!v502||v591!==v590){
+v591=v590;
+v1.uniform1f(g197.location,v590);
+}
+v592=v503["lineWidth"];
+if(!v502||v593!==v592){
+v593=v592;
+v1.uniform1f(g199.location,v592);
+}
+v594=v503["opacity"];
+if(!v502||v595!==v594){
+v595=v594;
+v1.uniform1f(g201.location,v594);
+}
+v596=v503["scale"];
+v597=v596[0];
+v599=v596[1];
+if(!v502||v598!==v597||v600!==v599){
+v598=v597;
+v600=v599;
+v1.uniform2f(g203.location,v597,v599);
+}
+v601=v503["scaleFract"];
+v602=v601[0];
+v604=v601[1];
+if(!v502||v603!==v602||v605!==v604){
+v603=v602;
+v605=v604;
+v1.uniform2f(g207.location,v602,v604);
+}
+v606=v503["translate"];
+v607=v606[0];
+v609=v606[1];
+if(!v502||v608!==v607||v610!==v609){
+v608=v607;
+v610=v609;
+v1.uniform2f(g211.location,v607,v609);
+}
+v611=v503["translateFract"];
+v612=v611[0];
+v614=v611[1];
+if(!v502||v613!==v612||v615!==v614){
+v613=v612;
+v615=v614;
+v1.uniform2f(g215.location,v612,v614);
+}
+v616=g220.call(this,v2,v503,v502);
+v617=v616[0];
+v619=v616[1];
+v621=v616[2];
+v623=v616[3];
+if(!v502||v618!==v617||v620!==v619||v622!==v621||v624!==v623){
+v618=v617;
+v620=v619;
+v622=v621;
+v624=v623;
+v1.uniform4f(g219.location,v617,v619,v621,v623);
+}
+v627=v503["count"];
+if(v627>0){
+if(v625){
+v501.drawElementsInstancedANGLE(4,36,v625.type,v626<<((v625.type-5121)>>1),v627);
+}
+else{
+v501.drawArraysInstancedANGLE(4,v626,36,v627);
+}
+}
+else if(v627<0){
+if(v625){
+v1.drawElements(4,36,v625.type,v626<<((v625.type-5121)>>1));
+}
+else{
+v1.drawArrays(4,v626,36);
+}
+}
+v2.viewportWidth=v509;
+v2.viewportHeight=v510;
+if(v523){
+v8.destroyStream(v529);
+}
+if(v540){
+v8.destroyStream(v546);
+}
+if(v557){
+v8.destroyStream(v563);
+}
+if(v574){
+v8.destroyStream(v580);
+}
+}
+v5.dirty=true;
+v11.setVAO(null);
+if(v499){
+g48.cpuTime+=performance.now()-v500;
+}
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/6c3ff5a68d2906faf59307b58a799389f916ebdd3f7732ce75967575041988fc b/src/generated/regl-codegen/6c3ff5a68d2906faf59307b58a799389f916ebdd3f7732ce75967575041988fc
deleted file mode 100644
index 8f6d7817550..00000000000
--- a/src/generated/regl-codegen/6c3ff5a68d2906faf59307b58a799389f916ebdd3f7732ce75967575041988fc
+++ /dev/null
@@ -1,2226 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g54,g56,g58,g60,g97,g104,g105,g107,g112,g115,g117,g118,g121,g123,g137,g141,g144,g146,g160,g164,g167,g169,g183,g187,g189,g203,g207,g209,g210,g212,g213,g215,g216,g218,g221,g223,g226,g228,g231,g233,g236,g237,g239,g258,g260,g262,g264,g266,g268,g270,g272,g274,g276,g278,g280,g291,g295,g299,g302,g305,g308,g311,g314,g317,g320,g323,g326,g328,g341,g354,g381,g408,g435,g462,g475,g477,g514,g515,g516
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v53,v55,v57,v59;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v53={
-}
-;
-v53.buffer=g54;
-v53.divisor=1;
-v55={
-}
-;
-v55.buffer=g56;
-v55.divisor=1;
-v57={
-}
-;
-v57.buffer=g58;
-v57.divisor=1;
-v59={
-}
-;
-v59.buffer=g60;
-v59.divisor=1;
-return {
-"draw":function(a0){
-var v61,v62,v96,v98,v99,v100,v101,v102,v103,v106,v108,v109,v110,v111,v113,v114,v116,v119,v120,v122,v124,v125,v126,v127,v128,v129,v130,v131,v132,v133,v134,v135,v136,v138,v139,v140,v142,v143,v145,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v159,v161,v162,v163,v165,v166,v168,v170,v171,v172,v173,v174,v175,v176,v177,v178,v179,v180,v181,v182,v184,v185,v186,v188,v190,v191,v192,v193,v194,v195,v196,v197,v198,v199,v200,v201,v202,v204,v205,v206,v208,v211,v214,v217,v219,v220,v222,v224,v225,v227,v229,v230,v232,v234,v235,v238,v240,v241,v242,v243,v244,v245,v246;
-v61=v14.angle_instanced_arrays;
-v62=v13.next;
-if(v62!==v13.cur){
-if(v62){
-v1.bindFramebuffer(36160,v62.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v62;
-}
-if(v5.dirty){
-var v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93,v94,v95;
-v63=v4.dither;
-if(v63!==v5.dither){
-if(v63){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v63;
-}
-v64=v4.depth_func;
-if(v64!==v5.depth_func){
-v1.depthFunc(v64);
-v5.depth_func=v64;
-}
-v65=v26[0];
-v66=v26[1];
-if(v65!==v27[0]||v66!==v27[1]){
-v1.depthRange(v65,v66);
-v27[0]=v65;
-v27[1]=v66;
-}
-v67=v4.depth_mask;
-if(v67!==v5.depth_mask){
-v1.depthMask(v67);
-v5.depth_mask=v67;
-}
-v68=v28[0];
-v69=v28[1];
-v70=v28[2];
-v71=v28[3];
-if(v68!==v29[0]||v69!==v29[1]||v70!==v29[2]||v71!==v29[3]){
-v1.colorMask(v68,v69,v70,v71);
-v29[0]=v68;
-v29[1]=v69;
-v29[2]=v70;
-v29[3]=v71;
-}
-v72=v4.cull_enable;
-if(v72!==v5.cull_enable){
-if(v72){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v72;
-}
-v73=v4.cull_face;
-if(v73!==v5.cull_face){
-v1.cullFace(v73);
-v5.cull_face=v73;
-}
-v74=v4.frontFace;
-if(v74!==v5.frontFace){
-v1.frontFace(v74);
-v5.frontFace=v74;
-}
-v75=v4.lineWidth;
-if(v75!==v5.lineWidth){
-v1.lineWidth(v75);
-v5.lineWidth=v75;
-}
-v76=v4.polygonOffset_enable;
-if(v76!==v5.polygonOffset_enable){
-if(v76){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v76;
-}
-v77=v30[0];
-v78=v30[1];
-if(v77!==v31[0]||v78!==v31[1]){
-v1.polygonOffset(v77,v78);
-v31[0]=v77;
-v31[1]=v78;
-}
-v79=v4.sample_alpha;
-if(v79!==v5.sample_alpha){
-if(v79){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v79;
-}
-v80=v4.sample_enable;
-if(v80!==v5.sample_enable){
-if(v80){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v80;
-}
-v81=v32[0];
-v82=v32[1];
-if(v81!==v33[0]||v82!==v33[1]){
-v1.sampleCoverage(v81,v82);
-v33[0]=v81;
-v33[1]=v82;
-}
-v83=v4.stencil_enable;
-if(v83!==v5.stencil_enable){
-if(v83){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v83;
-}
-v84=v4.stencil_mask;
-if(v84!==v5.stencil_mask){
-v1.stencilMask(v84);
-v5.stencil_mask=v84;
-}
-v85=v34[0];
-v86=v34[1];
-v87=v34[2];
-if(v85!==v35[0]||v86!==v35[1]||v87!==v35[2]){
-v1.stencilFunc(v85,v86,v87);
-v35[0]=v85;
-v35[1]=v86;
-v35[2]=v87;
-}
-v88=v36[0];
-v89=v36[1];
-v90=v36[2];
-v91=v36[3];
-if(v88!==v37[0]||v89!==v37[1]||v90!==v37[2]||v91!==v37[3]){
-v1.stencilOpSeparate(v88,v89,v90,v91);
-v37[0]=v88;
-v37[1]=v89;
-v37[2]=v90;
-v37[3]=v91;
-}
-v92=v38[0];
-v93=v38[1];
-v94=v38[2];
-v95=v38[3];
-if(v92!==v39[0]||v93!==v39[1]||v94!==v39[2]||v95!==v39[3]){
-v1.stencilOpSeparate(v92,v93,v94,v95);
-v39[0]=v92;
-v39[1]=v93;
-v39[2]=v94;
-v39[3]=v95;
-}
-}
-v96=a0["viewport"];
-if(!(v96&&typeof v96==="object"))g18.commandRaise(g97,g19);
-v98=v96.x|0;
-v99=v96.y|0;
-v100="width" in v96?v96.width|0:(v2.framebufferWidth-v98);
-v101="height" in v96?v96.height|0:(v2.framebufferHeight-v99);
-if(!(v100>=0&&v101>=0))g18.commandRaise(g97,g19);
-v102=v2.viewportWidth;
-v2.viewportWidth=v100;
-v103=v2.viewportHeight;
-v2.viewportHeight=v101;
-v1.viewport(v98,v99,v100,v101);
-v43[0]=v98;
-v43[1]=v99;
-v43[2]=v100;
-v43[3]=v101;
-v1.blendColor(0,0,0,0);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=0;
-if(g104){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g104;
-v1.blendEquationSeparate(32774,32774);
-v23[0]=32774;
-v23[1]=32774;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g105){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g105;
-v106=a0["viewport"];
-if(!(v106&&typeof v106==="object"))g18.commandRaise(g107,g19);
-v108=v106.x|0;
-v109=v106.y|0;
-v110="width" in v106?v106.width|0:(v2.framebufferWidth-v108);
-v111="height" in v106?v106.height|0:(v2.framebufferHeight-v109);
-if(!(v110>=0&&v111>=0))g18.commandRaise(g107,g19);
-v1.scissor(v108,v109,v110,v111);
-v41[0]=v108;
-v41[1]=v109;
-v41[2]=v110;
-v41[3]=v111;
-if(g112){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g112;
-v113=v5.profile;
-if(v113){
-v114=performance.now();
-g52.count++;
-}
-v1.useProgram(g115.program);
-v116=v14.angle_instanced_arrays;
-v11.setVAO(null);
-v119=g118.location;
-v120=v10[v119];
-if(!v120.buffer){
-v1.enableVertexAttribArray(v119);
-}
-if(v120.type!==5126||v120.size!==2||v120.buffer!==g117||v120.normalized!==false||v120.offset!==16||v120.stride!==24){
-v1.bindBuffer(34962,g117.buffer);
-v1.vertexAttribPointer(v119,2,5126,false,24,16);
-v120.type=5126;
-v120.size=2;
-v120.buffer=g117;
-v120.normalized=false;
-v120.offset=16;
-v120.stride=24;
-}
-if(v120.divisor!==0){
-v116.vertexAttribDivisorANGLE(v119,0);
-v120.divisor=0;
-}
-v122=g121.call(this,v2,a0,0);
-v53.offset=v122;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g123,g19);
-v124=false;
-v125=1;
-v126=0;
-v127=0;
-v128=0;
-v129=0;
-v130=null;
-v131=0;
-v132=false;
-v133=5126;
-v134=0;
-v135=0;
-v136=0;
-if(v16(v53)){
-v124=true;
-v130=v8.createStream(34962,v53);
-v133=v130.dtype;
-}
-else{
-v130=v8.getBuffer(v53);
-if(v130){
-v133=v130.dtype;
-}
-else if("constant" in v53){
-v125=2;
-if(typeof v53.constant === "number"){
-v126=v53.constant;
-v127=v128=v129=0;
-}
-else{
-v126=v53.constant.length>0?v53.constant[0]:0;
-v127=v53.constant.length>1?v53.constant[1]:0;
-v128=v53.constant.length>2?v53.constant[2]:0;
-v129=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v130=v8.createStream(34962,v53.buffer);
-}
-else{
-v130=v8.getBuffer(v53.buffer);
-}
-v133="type" in v53?v49[v53.type]:v130.dtype;
-v132=!!v53.normalized;
-v131=v53.size|0;
-v134=v53.offset|0;
-v135=v53.stride|0;
-v136=v53.divisor|0;
-}
-}
-v138=g137.location;
-v139=v10[v138];
-if(v125===1){
-if(!v139.buffer){
-v1.enableVertexAttribArray(v138);
-}
-v140=v131||4;
-if(v139.type!==v133||v139.size!==v140||v139.buffer!==v130||v139.normalized!==v132||v139.offset!==v134||v139.stride!==v135){
-v1.bindBuffer(34962,v130.buffer);
-v1.vertexAttribPointer(v138,v140,v133,v132,v135,v134);
-v139.type=v133;
-v139.size=v140;
-v139.buffer=v130;
-v139.normalized=v132;
-v139.offset=v134;
-v139.stride=v135;
-}
-if(v139.divisor!==v136){
-v116.vertexAttribDivisorANGLE(v138,v136);
-v139.divisor=v136;
-}
-}
-else{
-if(v139.buffer){
-v1.disableVertexAttribArray(v138);
-v139.buffer=null;
-}
-if(v139.x!==v126||v139.y!==v127||v139.z!==v128||v139.w!==v129){
-v1.vertexAttrib4f(v138,v126,v127,v128,v129);
-v139.x=v126;
-v139.y=v127;
-v139.z=v128;
-v139.w=v129;
-}
-}
-v142=g141.location;
-v143=v10[v142];
-if(!v143.buffer){
-v1.enableVertexAttribArray(v142);
-}
-if(v143.type!==5126||v143.size!==2||v143.buffer!==g117||v143.normalized!==false||v143.offset!==0||v143.stride!==24){
-v1.bindBuffer(34962,g117.buffer);
-v1.vertexAttribPointer(v142,2,5126,false,24,0);
-v143.type=5126;
-v143.size=2;
-v143.buffer=g117;
-v143.normalized=false;
-v143.offset=0;
-v143.stride=24;
-}
-if(v143.divisor!==0){
-v116.vertexAttribDivisorANGLE(v142,0);
-v143.divisor=0;
-}
-v145=g144.call(this,v2,a0,0);
-v59.offset=v145;
-if(!(v59&&(typeof v59==="object"||typeof v59==="function")&&(v16(v59)||v8.getBuffer(v59)||v8.getBuffer(v59.buffer)||v16(v59.buffer)||("constant" in v59&&(typeof v59.constant==="number"||v17(v59.constant))))))g18.commandRaise(g146,g19);
-v147=false;
-v148=1;
-v149=0;
-v150=0;
-v151=0;
-v152=0;
-v153=null;
-v154=0;
-v155=false;
-v156=5126;
-v157=0;
-v158=0;
-v159=0;
-if(v16(v59)){
-v147=true;
-v153=v8.createStream(34962,v59);
-v156=v153.dtype;
-}
-else{
-v153=v8.getBuffer(v59);
-if(v153){
-v156=v153.dtype;
-}
-else if("constant" in v59){
-v148=2;
-if(typeof v59.constant === "number"){
-v149=v59.constant;
-v150=v151=v152=0;
-}
-else{
-v149=v59.constant.length>0?v59.constant[0]:0;
-v150=v59.constant.length>1?v59.constant[1]:0;
-v151=v59.constant.length>2?v59.constant[2]:0;
-v152=v59.constant.length>3?v59.constant[3]:0;
-}
-}
-else{
-if(v16(v59.buffer)){
-v153=v8.createStream(34962,v59.buffer);
-}
-else{
-v153=v8.getBuffer(v59.buffer);
-}
-v156="type" in v59?v49[v59.type]:v153.dtype;
-v155=!!v59.normalized;
-v154=v59.size|0;
-v157=v59.offset|0;
-v158=v59.stride|0;
-v159=v59.divisor|0;
-}
-}
-v161=g160.location;
-v162=v10[v161];
-if(v148===1){
-if(!v162.buffer){
-v1.enableVertexAttribArray(v161);
-}
-v163=v154||4;
-if(v162.type!==v156||v162.size!==v163||v162.buffer!==v153||v162.normalized!==v155||v162.offset!==v157||v162.stride!==v158){
-v1.bindBuffer(34962,v153.buffer);
-v1.vertexAttribPointer(v161,v163,v156,v155,v158,v157);
-v162.type=v156;
-v162.size=v163;
-v162.buffer=v153;
-v162.normalized=v155;
-v162.offset=v157;
-v162.stride=v158;
-}
-if(v162.divisor!==v159){
-v116.vertexAttribDivisorANGLE(v161,v159);
-v162.divisor=v159;
-}
-}
-else{
-if(v162.buffer){
-v1.disableVertexAttribArray(v161);
-v162.buffer=null;
-}
-if(v162.x!==v149||v162.y!==v150||v162.z!==v151||v162.w!==v152){
-v1.vertexAttrib4f(v161,v149,v150,v151,v152);
-v162.x=v149;
-v162.y=v150;
-v162.z=v151;
-v162.w=v152;
-}
-}
-v165=g164.location;
-v166=v10[v165];
-if(!v166.buffer){
-v1.enableVertexAttribArray(v165);
-}
-if(v166.type!==5126||v166.size!==2||v166.buffer!==g117||v166.normalized!==false||v166.offset!==8||v166.stride!==24){
-v1.bindBuffer(34962,g117.buffer);
-v1.vertexAttribPointer(v165,2,5126,false,24,8);
-v166.type=5126;
-v166.size=2;
-v166.buffer=g117;
-v166.normalized=false;
-v166.offset=8;
-v166.stride=24;
-}
-if(v166.divisor!==0){
-v116.vertexAttribDivisorANGLE(v165,0);
-v166.divisor=0;
-}
-v168=g167.call(this,v2,a0,0);
-v55.offset=v168;
-if(!(v55&&(typeof v55==="object"||typeof v55==="function")&&(v16(v55)||v8.getBuffer(v55)||v8.getBuffer(v55.buffer)||v16(v55.buffer)||("constant" in v55&&(typeof v55.constant==="number"||v17(v55.constant))))))g18.commandRaise(g169,g19);
-v170=false;
-v171=1;
-v172=0;
-v173=0;
-v174=0;
-v175=0;
-v176=null;
-v177=0;
-v178=false;
-v179=5126;
-v180=0;
-v181=0;
-v182=0;
-if(v16(v55)){
-v170=true;
-v176=v8.createStream(34962,v55);
-v179=v176.dtype;
-}
-else{
-v176=v8.getBuffer(v55);
-if(v176){
-v179=v176.dtype;
-}
-else if("constant" in v55){
-v171=2;
-if(typeof v55.constant === "number"){
-v172=v55.constant;
-v173=v174=v175=0;
-}
-else{
-v172=v55.constant.length>0?v55.constant[0]:0;
-v173=v55.constant.length>1?v55.constant[1]:0;
-v174=v55.constant.length>2?v55.constant[2]:0;
-v175=v55.constant.length>3?v55.constant[3]:0;
-}
-}
-else{
-if(v16(v55.buffer)){
-v176=v8.createStream(34962,v55.buffer);
-}
-else{
-v176=v8.getBuffer(v55.buffer);
-}
-v179="type" in v55?v49[v55.type]:v176.dtype;
-v178=!!v55.normalized;
-v177=v55.size|0;
-v180=v55.offset|0;
-v181=v55.stride|0;
-v182=v55.divisor|0;
-}
-}
-v184=g183.location;
-v185=v10[v184];
-if(v171===1){
-if(!v185.buffer){
-v1.enableVertexAttribArray(v184);
-}
-v186=v177||2;
-if(v185.type!==v179||v185.size!==v186||v185.buffer!==v176||v185.normalized!==v178||v185.offset!==v180||v185.stride!==v181){
-v1.bindBuffer(34962,v176.buffer);
-v1.vertexAttribPointer(v184,v186,v179,v178,v181,v180);
-v185.type=v179;
-v185.size=v186;
-v185.buffer=v176;
-v185.normalized=v178;
-v185.offset=v180;
-v185.stride=v181;
-}
-if(v185.divisor!==v182){
-v116.vertexAttribDivisorANGLE(v184,v182);
-v185.divisor=v182;
-}
-}
-else{
-if(v185.buffer){
-v1.disableVertexAttribArray(v184);
-v185.buffer=null;
-}
-if(v185.x!==v172||v185.y!==v173||v185.z!==v174||v185.w!==v175){
-v1.vertexAttrib4f(v184,v172,v173,v174,v175);
-v185.x=v172;
-v185.y=v173;
-v185.z=v174;
-v185.w=v175;
-}
-}
-v188=g187.call(this,v2,a0,0);
-v57.offset=v188;
-if(!(v57&&(typeof v57==="object"||typeof v57==="function")&&(v16(v57)||v8.getBuffer(v57)||v8.getBuffer(v57.buffer)||v16(v57.buffer)||("constant" in v57&&(typeof v57.constant==="number"||v17(v57.constant))))))g18.commandRaise(g189,g19);
-v190=false;
-v191=1;
-v192=0;
-v193=0;
-v194=0;
-v195=0;
-v196=null;
-v197=0;
-v198=false;
-v199=5126;
-v200=0;
-v201=0;
-v202=0;
-if(v16(v57)){
-v190=true;
-v196=v8.createStream(34962,v57);
-v199=v196.dtype;
-}
-else{
-v196=v8.getBuffer(v57);
-if(v196){
-v199=v196.dtype;
-}
-else if("constant" in v57){
-v191=2;
-if(typeof v57.constant === "number"){
-v192=v57.constant;
-v193=v194=v195=0;
-}
-else{
-v192=v57.constant.length>0?v57.constant[0]:0;
-v193=v57.constant.length>1?v57.constant[1]:0;
-v194=v57.constant.length>2?v57.constant[2]:0;
-v195=v57.constant.length>3?v57.constant[3]:0;
-}
-}
-else{
-if(v16(v57.buffer)){
-v196=v8.createStream(34962,v57.buffer);
-}
-else{
-v196=v8.getBuffer(v57.buffer);
-}
-v199="type" in v57?v49[v57.type]:v196.dtype;
-v198=!!v57.normalized;
-v197=v57.size|0;
-v200=v57.offset|0;
-v201=v57.stride|0;
-v202=v57.divisor|0;
-}
-}
-v204=g203.location;
-v205=v10[v204];
-if(v191===1){
-if(!v205.buffer){
-v1.enableVertexAttribArray(v204);
-}
-v206=v197||2;
-if(v205.type!==v199||v205.size!==v206||v205.buffer!==v196||v205.normalized!==v198||v205.offset!==v200||v205.stride!==v201){
-v1.bindBuffer(34962,v196.buffer);
-v1.vertexAttribPointer(v204,v206,v199,v198,v201,v200);
-v205.type=v199;
-v205.size=v206;
-v205.buffer=v196;
-v205.normalized=v198;
-v205.offset=v200;
-v205.stride=v201;
-}
-if(v205.divisor!==v202){
-v116.vertexAttribDivisorANGLE(v204,v202);
-v205.divisor=v202;
-}
-}
-else{
-if(v205.buffer){
-v1.disableVertexAttribArray(v204);
-v205.buffer=null;
-}
-if(v205.x!==v192||v205.y!==v193||v205.z!==v194||v205.w!==v195){
-v1.vertexAttrib4f(v204,v192,v193,v194,v195);
-v205.x=v192;
-v205.y=v193;
-v205.z=v194;
-v205.w=v195;
-}
-}
-v208=a0["capSize"];
-if(!(typeof v208==="number"))g18.commandRaise(g209,g19);
-v1.uniform1f(g207.location,v208);
-v211=a0["lineWidth"];
-if(!(typeof v211==="number"))g18.commandRaise(g212,g19);
-v1.uniform1f(g210.location,v211);
-v214=a0["opacity"];
-if(!(typeof v214==="number"))g18.commandRaise(g215,g19);
-v1.uniform1f(g213.location,v214);
-v217=a0["scale"];
-if(!(v17(v217)&&v217.length===2))g18.commandRaise(g218,g19);
-v219=v217[0];
-v220=v217[1];
-v1.uniform2f(g216.location,v219,v220);
-v222=a0["scaleFract"];
-if(!(v17(v222)&&v222.length===2))g18.commandRaise(g223,g19);
-v224=v222[0];
-v225=v222[1];
-v1.uniform2f(g221.location,v224,v225);
-v227=a0["translate"];
-if(!(v17(v227)&&v227.length===2))g18.commandRaise(g228,g19);
-v229=v227[0];
-v230=v227[1];
-v1.uniform2f(g226.location,v229,v230);
-v232=a0["translateFract"];
-if(!(v17(v232)&&v232.length===2))g18.commandRaise(g233,g19);
-v234=v232[0];
-v235=v232[1];
-v1.uniform2f(g231.location,v234,v235);
-v238=g237.call(this,v2,a0,0);
-if(!(v17(v238)&&v238.length===4))g18.commandRaise(g239,g19);
-v240=v238[0];
-v241=v238[1];
-v242=v238[2];
-v243=v238[3];
-v1.uniform4f(g236.location,v240,v241,v242,v243);
-v244=v6.elements;
-if(v244){
-v1.bindBuffer(34963,v244.buffer.buffer);
-}
-else if(v11.currentVAO){
-v244=v7.getElements(v11.currentVAO.elements);
-if(v244)v1.bindBuffer(34963,v244.buffer.buffer);
-}
-v245=v6.offset;
-v246=a0["count"];
-if(v246>0){
-if(v244){
-v116.drawElementsInstancedANGLE(4,36,v244.type,v245<<((v244.type-5121)>>1),v246);
-}
-else{
-v116.drawArraysInstancedANGLE(4,v245,36,v246);
-}
-}
-else if(v246<0){
-if(v244){
-v1.drawElements(4,36,v244.type,v245<<((v244.type-5121)>>1));
-}
-else{
-v1.drawArrays(4,v245,36);
-}
-}
-v5.dirty=true;
-v11.setVAO(null);
-v2.viewportWidth=v102;
-v2.viewportHeight=v103;
-if(v113){
-g52.cpuTime+=performance.now()-v114;
-}
-if(v124){
-v8.destroyStream(v130);
-}
-if(v147){
-v8.destroyStream(v153);
-}
-if(v170){
-v8.destroyStream(v176);
-}
-if(v190){
-v8.destroyStream(v196);
-}
-}
-,"scope":function(a0,a1,a2){
-var v247,v248,v249,v250,v251,v252,v253,v254,v255,v256,v257,v259,v261,v263,v265,v267,v269,v271,v273,v275,v277,v279,v281,v282,v283,v284,v285,v286,v287,v288,v289,v290,v292,v293,v294,v296,v297,v298,v300,v301,v303,v304,v306,v307,v309,v310,v312,v313,v315,v316,v318,v319,v321,v322,v324,v325,v327,v329,v330,v331,v332,v333,v334,v335,v336,v337,v338,v339,v340,v342,v343,v344,v345,v346,v347,v348,v349,v350,v351,v352,v353,v355,v356,v357,v358,v359,v360,v361,v362,v363,v364,v365,v366,v367,v368,v369,v370,v371,v372,v373,v374,v375,v376,v377,v378,v379,v380,v382,v383,v384,v385,v386,v387,v388,v389,v390,v391,v392,v393,v394,v395,v396,v397,v398,v399,v400,v401,v402,v403,v404,v405,v406,v407,v409,v410,v411,v412,v413,v414,v415,v416,v417,v418,v419,v420,v421,v422,v423,v424,v425,v426,v427,v428,v429,v430,v431,v432,v433,v434,v436,v437,v438,v439,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v452,v453,v454,v455,v456,v457,v458,v459,v460,v461,v463,v464,v465,v466,v467,v468,v469,v470,v471,v472,v473,v474,v476,v478;
-v247=a0["viewport"];
-if(!(v247&&typeof v247==="object"))g18.commandRaise(g97,g19);
-v248=v247.x|0;
-v249=v247.y|0;
-v250="width" in v247?v247.width|0:(v2.framebufferWidth-v248);
-v251="height" in v247?v247.height|0:(v2.framebufferHeight-v249);
-if(!(v250>=0&&v251>=0))g18.commandRaise(g97,g19);
-v252=v2.viewportWidth;
-v2.viewportWidth=v250;
-v253=v2.viewportHeight;
-v2.viewportHeight=v251;
-v254=v42[0];
-v42[0]=v248;
-v255=v42[1];
-v42[1]=v249;
-v256=v42[2];
-v42[2]=v250;
-v257=v42[3];
-v42[3]=v251;
-v259=v20[0];
-v20[0]=g258;
-v261=v20[1];
-v20[1]=g260;
-v263=v20[2];
-v20[2]=g262;
-v265=v20[3];
-v20[3]=g264;
-v267=v4.blend_enable;
-v4.blend_enable=g266;
-v269=v22[0];
-v22[0]=g268;
-v271=v22[1];
-v22[1]=g270;
-v273=v24[0];
-v24[0]=g272;
-v275=v24[1];
-v24[1]=g274;
-v277=v24[2];
-v24[2]=g276;
-v279=v24[3];
-v24[3]=g278;
-v281=v4.depth_enable;
-v4.depth_enable=g280;
-v282=a0["viewport"];
-if(!(v282&&typeof v282==="object"))g18.commandRaise(g107,g19);
-v283=v282.x|0;
-v284=v282.y|0;
-v285="width" in v282?v282.width|0:(v2.framebufferWidth-v283);
-v286="height" in v282?v282.height|0:(v2.framebufferHeight-v284);
-if(!(v285>=0&&v286>=0))g18.commandRaise(g107,g19);
-v287=v40[0];
-v40[0]=v283;
-v288=v40[1];
-v40[1]=v284;
-v289=v40[2];
-v40[2]=v285;
-v290=v40[3];
-v40[3]=v286;
-v292=v4.scissor_enable;
-v4.scissor_enable=g291;
-v293=v5.profile;
-if(v293){
-v294=performance.now();
-g52.count++;
-}
-v296=v6.count;
-v6.count=g295;
-v297=a0["count"];
-v298=v6.instances;
-v6.instances=v297;
-v300=v6.primitive;
-v6.primitive=g299;
-v301=a0["range"];
-v303=v12[g302];
-v12[g302]=v301;
-v304=a0["lineWidth"];
-v306=v12[g305];
-v12[g305]=v304;
-v307=a0["capSize"];
-v309=v12[g308];
-v12[g308]=v307;
-v310=a0["opacity"];
-v312=v12[g311];
-v12[g311]=v310;
-v313=a0["scale"];
-v315=v12[g314];
-v12[g314]=v313;
-v316=a0["translate"];
-v318=v12[g317];
-v12[g317]=v316;
-v319=a0["scaleFract"];
-v321=v12[g320];
-v12[g320]=v319;
-v322=a0["translateFract"];
-v324=v12[g323];
-v12[g323]=v322;
-v325=g237.call(this,v2,a0,a2);
-v327=v12[g326];
-v12[g326]=v325;
-v329=g328.state;
-g328.state=1;
-v330=g328.x;
-g328.x=0;
-v331=g328.y;
-g328.y=0;
-v332=g328.z;
-g328.z=0;
-v333=g328.w;
-g328.w=0;
-v334=g328.buffer;
-g328.buffer=g117;
-v335=g328.size;
-g328.size=0;
-v336=g328.normalized;
-g328.normalized=false;
-v337=g328.type;
-g328.type=5126;
-v338=g328.offset;
-g328.offset=0;
-v339=g328.stride;
-g328.stride=24;
-v340=g328.divisor;
-g328.divisor=0;
-v342=g341.state;
-g341.state=1;
-v343=g341.x;
-g341.x=0;
-v344=g341.y;
-g341.y=0;
-v345=g341.z;
-g341.z=0;
-v346=g341.w;
-g341.w=0;
-v347=g341.buffer;
-g341.buffer=g117;
-v348=g341.size;
-g341.size=0;
-v349=g341.normalized;
-g341.normalized=false;
-v350=g341.type;
-g341.type=5126;
-v351=g341.offset;
-g341.offset=8;
-v352=g341.stride;
-g341.stride=24;
-v353=g341.divisor;
-g341.divisor=0;
-v355=g354.state;
-g354.state=1;
-v356=g354.x;
-g354.x=0;
-v357=g354.y;
-g354.y=0;
-v358=g354.z;
-g354.z=0;
-v359=g354.w;
-g354.w=0;
-v360=g354.buffer;
-g354.buffer=g117;
-v361=g354.size;
-g354.size=0;
-v362=g354.normalized;
-g354.normalized=false;
-v363=g354.type;
-g354.type=5126;
-v364=g354.offset;
-g354.offset=16;
-v365=g354.stride;
-g354.stride=24;
-v366=g354.divisor;
-g354.divisor=0;
-v367=g121.call(this,v2,a0,a2);
-v53.offset=v367;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g123,g19);
-v368=false;
-v369=1;
-v370=0;
-v371=0;
-v372=0;
-v373=0;
-v374=null;
-v375=0;
-v376=false;
-v377=5126;
-v378=0;
-v379=0;
-v380=0;
-if(v16(v53)){
-v368=true;
-v374=v8.createStream(34962,v53);
-v377=v374.dtype;
-}
-else{
-v374=v8.getBuffer(v53);
-if(v374){
-v377=v374.dtype;
-}
-else if("constant" in v53){
-v369=2;
-if(typeof v53.constant === "number"){
-v370=v53.constant;
-v371=v372=v373=0;
-}
-else{
-v370=v53.constant.length>0?v53.constant[0]:0;
-v371=v53.constant.length>1?v53.constant[1]:0;
-v372=v53.constant.length>2?v53.constant[2]:0;
-v373=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v374=v8.createStream(34962,v53.buffer);
-}
-else{
-v374=v8.getBuffer(v53.buffer);
-}
-v377="type" in v53?v49[v53.type]:v374.dtype;
-v376=!!v53.normalized;
-v375=v53.size|0;
-v378=v53.offset|0;
-v379=v53.stride|0;
-v380=v53.divisor|0;
-}
-}
-v382=g381.state;
-g381.state=v369;
-v383=g381.x;
-g381.x=v370;
-v384=g381.y;
-g381.y=v371;
-v385=g381.z;
-g381.z=v372;
-v386=g381.w;
-g381.w=v373;
-v387=g381.buffer;
-g381.buffer=v374;
-v388=g381.size;
-g381.size=v375;
-v389=g381.normalized;
-g381.normalized=v376;
-v390=g381.type;
-g381.type=v377;
-v391=g381.offset;
-g381.offset=v378;
-v392=g381.stride;
-g381.stride=v379;
-v393=g381.divisor;
-g381.divisor=v380;
-v394=g167.call(this,v2,a0,a2);
-v55.offset=v394;
-if(!(v55&&(typeof v55==="object"||typeof v55==="function")&&(v16(v55)||v8.getBuffer(v55)||v8.getBuffer(v55.buffer)||v16(v55.buffer)||("constant" in v55&&(typeof v55.constant==="number"||v17(v55.constant))))))g18.commandRaise(g169,g19);
-v395=false;
-v396=1;
-v397=0;
-v398=0;
-v399=0;
-v400=0;
-v401=null;
-v402=0;
-v403=false;
-v404=5126;
-v405=0;
-v406=0;
-v407=0;
-if(v16(v55)){
-v395=true;
-v401=v8.createStream(34962,v55);
-v404=v401.dtype;
-}
-else{
-v401=v8.getBuffer(v55);
-if(v401){
-v404=v401.dtype;
-}
-else if("constant" in v55){
-v396=2;
-if(typeof v55.constant === "number"){
-v397=v55.constant;
-v398=v399=v400=0;
-}
-else{
-v397=v55.constant.length>0?v55.constant[0]:0;
-v398=v55.constant.length>1?v55.constant[1]:0;
-v399=v55.constant.length>2?v55.constant[2]:0;
-v400=v55.constant.length>3?v55.constant[3]:0;
-}
-}
-else{
-if(v16(v55.buffer)){
-v401=v8.createStream(34962,v55.buffer);
-}
-else{
-v401=v8.getBuffer(v55.buffer);
-}
-v404="type" in v55?v49[v55.type]:v401.dtype;
-v403=!!v55.normalized;
-v402=v55.size|0;
-v405=v55.offset|0;
-v406=v55.stride|0;
-v407=v55.divisor|0;
-}
-}
-v409=g408.state;
-g408.state=v396;
-v410=g408.x;
-g408.x=v397;
-v411=g408.y;
-g408.y=v398;
-v412=g408.z;
-g408.z=v399;
-v413=g408.w;
-g408.w=v400;
-v414=g408.buffer;
-g408.buffer=v401;
-v415=g408.size;
-g408.size=v402;
-v416=g408.normalized;
-g408.normalized=v403;
-v417=g408.type;
-g408.type=v404;
-v418=g408.offset;
-g408.offset=v405;
-v419=g408.stride;
-g408.stride=v406;
-v420=g408.divisor;
-g408.divisor=v407;
-v421=g187.call(this,v2,a0,a2);
-v57.offset=v421;
-if(!(v57&&(typeof v57==="object"||typeof v57==="function")&&(v16(v57)||v8.getBuffer(v57)||v8.getBuffer(v57.buffer)||v16(v57.buffer)||("constant" in v57&&(typeof v57.constant==="number"||v17(v57.constant))))))g18.commandRaise(g189,g19);
-v422=false;
-v423=1;
-v424=0;
-v425=0;
-v426=0;
-v427=0;
-v428=null;
-v429=0;
-v430=false;
-v431=5126;
-v432=0;
-v433=0;
-v434=0;
-if(v16(v57)){
-v422=true;
-v428=v8.createStream(34962,v57);
-v431=v428.dtype;
-}
-else{
-v428=v8.getBuffer(v57);
-if(v428){
-v431=v428.dtype;
-}
-else if("constant" in v57){
-v423=2;
-if(typeof v57.constant === "number"){
-v424=v57.constant;
-v425=v426=v427=0;
-}
-else{
-v424=v57.constant.length>0?v57.constant[0]:0;
-v425=v57.constant.length>1?v57.constant[1]:0;
-v426=v57.constant.length>2?v57.constant[2]:0;
-v427=v57.constant.length>3?v57.constant[3]:0;
-}
-}
-else{
-if(v16(v57.buffer)){
-v428=v8.createStream(34962,v57.buffer);
-}
-else{
-v428=v8.getBuffer(v57.buffer);
-}
-v431="type" in v57?v49[v57.type]:v428.dtype;
-v430=!!v57.normalized;
-v429=v57.size|0;
-v432=v57.offset|0;
-v433=v57.stride|0;
-v434=v57.divisor|0;
-}
-}
-v436=g435.state;
-g435.state=v423;
-v437=g435.x;
-g435.x=v424;
-v438=g435.y;
-g435.y=v425;
-v439=g435.z;
-g435.z=v426;
-v440=g435.w;
-g435.w=v427;
-v441=g435.buffer;
-g435.buffer=v428;
-v442=g435.size;
-g435.size=v429;
-v443=g435.normalized;
-g435.normalized=v430;
-v444=g435.type;
-g435.type=v431;
-v445=g435.offset;
-g435.offset=v432;
-v446=g435.stride;
-g435.stride=v433;
-v447=g435.divisor;
-g435.divisor=v434;
-v448=g144.call(this,v2,a0,a2);
-v59.offset=v448;
-if(!(v59&&(typeof v59==="object"||typeof v59==="function")&&(v16(v59)||v8.getBuffer(v59)||v8.getBuffer(v59.buffer)||v16(v59.buffer)||("constant" in v59&&(typeof v59.constant==="number"||v17(v59.constant))))))g18.commandRaise(g146,g19);
-v449=false;
-v450=1;
-v451=0;
-v452=0;
-v453=0;
-v454=0;
-v455=null;
-v456=0;
-v457=false;
-v458=5126;
-v459=0;
-v460=0;
-v461=0;
-if(v16(v59)){
-v449=true;
-v455=v8.createStream(34962,v59);
-v458=v455.dtype;
-}
-else{
-v455=v8.getBuffer(v59);
-if(v455){
-v458=v455.dtype;
-}
-else if("constant" in v59){
-v450=2;
-if(typeof v59.constant === "number"){
-v451=v59.constant;
-v452=v453=v454=0;
-}
-else{
-v451=v59.constant.length>0?v59.constant[0]:0;
-v452=v59.constant.length>1?v59.constant[1]:0;
-v453=v59.constant.length>2?v59.constant[2]:0;
-v454=v59.constant.length>3?v59.constant[3]:0;
-}
-}
-else{
-if(v16(v59.buffer)){
-v455=v8.createStream(34962,v59.buffer);
-}
-else{
-v455=v8.getBuffer(v59.buffer);
-}
-v458="type" in v59?v49[v59.type]:v455.dtype;
-v457=!!v59.normalized;
-v456=v59.size|0;
-v459=v59.offset|0;
-v460=v59.stride|0;
-v461=v59.divisor|0;
-}
-}
-v463=g462.state;
-g462.state=v450;
-v464=g462.x;
-g462.x=v451;
-v465=g462.y;
-g462.y=v452;
-v466=g462.z;
-g462.z=v453;
-v467=g462.w;
-g462.w=v454;
-v468=g462.buffer;
-g462.buffer=v455;
-v469=g462.size;
-g462.size=v456;
-v470=g462.normalized;
-g462.normalized=v457;
-v471=g462.type;
-g462.type=v458;
-v472=g462.offset;
-g462.offset=v459;
-v473=g462.stride;
-g462.stride=v460;
-v474=g462.divisor;
-g462.divisor=v461;
-v476=v9.vert;
-v9.vert=g475;
-v478=v9.frag;
-v9.frag=g477;
-v5.dirty=true;
-a1(v2,a0,a2);
-v2.viewportWidth=v252;
-v2.viewportHeight=v253;
-v42[0]=v254;
-v42[1]=v255;
-v42[2]=v256;
-v42[3]=v257;
-v20[0]=v259;
-v20[1]=v261;
-v20[2]=v263;
-v20[3]=v265;
-v4.blend_enable=v267;
-v22[0]=v269;
-v22[1]=v271;
-v24[0]=v273;
-v24[1]=v275;
-v24[2]=v277;
-v24[3]=v279;
-v4.depth_enable=v281;
-v40[0]=v287;
-v40[1]=v288;
-v40[2]=v289;
-v40[3]=v290;
-v4.scissor_enable=v292;
-if(v293){
-g52.cpuTime+=performance.now()-v294;
-}
-v6.count=v296;
-v6.instances=v298;
-v6.primitive=v300;
-v12[g302]=v303;
-v12[g305]=v306;
-v12[g308]=v309;
-v12[g311]=v312;
-v12[g314]=v315;
-v12[g317]=v318;
-v12[g320]=v321;
-v12[g323]=v324;
-v12[g326]=v327;
-g328.state=v329;
-g328.x=v330;
-g328.y=v331;
-g328.z=v332;
-g328.w=v333;
-g328.buffer=v334;
-g328.size=v335;
-g328.normalized=v336;
-g328.type=v337;
-g328.offset=v338;
-g328.stride=v339;
-g328.divisor=v340;
-g341.state=v342;
-g341.x=v343;
-g341.y=v344;
-g341.z=v345;
-g341.w=v346;
-g341.buffer=v347;
-g341.size=v348;
-g341.normalized=v349;
-g341.type=v350;
-g341.offset=v351;
-g341.stride=v352;
-g341.divisor=v353;
-g354.state=v355;
-g354.x=v356;
-g354.y=v357;
-g354.z=v358;
-g354.w=v359;
-g354.buffer=v360;
-g354.size=v361;
-g354.normalized=v362;
-g354.type=v363;
-g354.offset=v364;
-g354.stride=v365;
-g354.divisor=v366;
-if(v368){
-v8.destroyStream(v374);
-}
-g381.state=v382;
-g381.x=v383;
-g381.y=v384;
-g381.z=v385;
-g381.w=v386;
-g381.buffer=v387;
-g381.size=v388;
-g381.normalized=v389;
-g381.type=v390;
-g381.offset=v391;
-g381.stride=v392;
-g381.divisor=v393;
-if(v395){
-v8.destroyStream(v401);
-}
-g408.state=v409;
-g408.x=v410;
-g408.y=v411;
-g408.z=v412;
-g408.w=v413;
-g408.buffer=v414;
-g408.size=v415;
-g408.normalized=v416;
-g408.type=v417;
-g408.offset=v418;
-g408.stride=v419;
-g408.divisor=v420;
-if(v422){
-v8.destroyStream(v428);
-}
-g435.state=v436;
-g435.x=v437;
-g435.y=v438;
-g435.z=v439;
-g435.w=v440;
-g435.buffer=v441;
-g435.size=v442;
-g435.normalized=v443;
-g435.type=v444;
-g435.offset=v445;
-g435.stride=v446;
-g435.divisor=v447;
-if(v449){
-v8.destroyStream(v455);
-}
-g462.state=v463;
-g462.x=v464;
-g462.y=v465;
-g462.z=v466;
-g462.w=v467;
-g462.buffer=v468;
-g462.size=v469;
-g462.normalized=v470;
-g462.type=v471;
-g462.offset=v472;
-g462.stride=v473;
-g462.divisor=v474;
-v9.vert=v476;
-v9.frag=v478;
-v5.dirty=true;
-}
-,"batch":function(a0,a1){
-var v479,v480,v517,v518,v519,v520,v521;
-v479=v14.angle_instanced_arrays;
-v480=v13.next;
-if(v480!==v13.cur){
-if(v480){
-v1.bindFramebuffer(36160,v480.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v480;
-}
-if(v5.dirty){
-var v481,v482,v483,v484,v485,v486,v487,v488,v489,v490,v491,v492,v493,v494,v495,v496,v497,v498,v499,v500,v501,v502,v503,v504,v505,v506,v507,v508,v509,v510,v511,v512,v513;
-v481=v4.dither;
-if(v481!==v5.dither){
-if(v481){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v481;
-}
-v482=v4.depth_func;
-if(v482!==v5.depth_func){
-v1.depthFunc(v482);
-v5.depth_func=v482;
-}
-v483=v26[0];
-v484=v26[1];
-if(v483!==v27[0]||v484!==v27[1]){
-v1.depthRange(v483,v484);
-v27[0]=v483;
-v27[1]=v484;
-}
-v485=v4.depth_mask;
-if(v485!==v5.depth_mask){
-v1.depthMask(v485);
-v5.depth_mask=v485;
-}
-v486=v28[0];
-v487=v28[1];
-v488=v28[2];
-v489=v28[3];
-if(v486!==v29[0]||v487!==v29[1]||v488!==v29[2]||v489!==v29[3]){
-v1.colorMask(v486,v487,v488,v489);
-v29[0]=v486;
-v29[1]=v487;
-v29[2]=v488;
-v29[3]=v489;
-}
-v490=v4.cull_enable;
-if(v490!==v5.cull_enable){
-if(v490){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v490;
-}
-v491=v4.cull_face;
-if(v491!==v5.cull_face){
-v1.cullFace(v491);
-v5.cull_face=v491;
-}
-v492=v4.frontFace;
-if(v492!==v5.frontFace){
-v1.frontFace(v492);
-v5.frontFace=v492;
-}
-v493=v4.lineWidth;
-if(v493!==v5.lineWidth){
-v1.lineWidth(v493);
-v5.lineWidth=v493;
-}
-v494=v4.polygonOffset_enable;
-if(v494!==v5.polygonOffset_enable){
-if(v494){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v494;
-}
-v495=v30[0];
-v496=v30[1];
-if(v495!==v31[0]||v496!==v31[1]){
-v1.polygonOffset(v495,v496);
-v31[0]=v495;
-v31[1]=v496;
-}
-v497=v4.sample_alpha;
-if(v497!==v5.sample_alpha){
-if(v497){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v497;
-}
-v498=v4.sample_enable;
-if(v498!==v5.sample_enable){
-if(v498){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v498;
-}
-v499=v32[0];
-v500=v32[1];
-if(v499!==v33[0]||v500!==v33[1]){
-v1.sampleCoverage(v499,v500);
-v33[0]=v499;
-v33[1]=v500;
-}
-v501=v4.stencil_enable;
-if(v501!==v5.stencil_enable){
-if(v501){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v501;
-}
-v502=v4.stencil_mask;
-if(v502!==v5.stencil_mask){
-v1.stencilMask(v502);
-v5.stencil_mask=v502;
-}
-v503=v34[0];
-v504=v34[1];
-v505=v34[2];
-if(v503!==v35[0]||v504!==v35[1]||v505!==v35[2]){
-v1.stencilFunc(v503,v504,v505);
-v35[0]=v503;
-v35[1]=v504;
-v35[2]=v505;
-}
-v506=v36[0];
-v507=v36[1];
-v508=v36[2];
-v509=v36[3];
-if(v506!==v37[0]||v507!==v37[1]||v508!==v37[2]||v509!==v37[3]){
-v1.stencilOpSeparate(v506,v507,v508,v509);
-v37[0]=v506;
-v37[1]=v507;
-v37[2]=v508;
-v37[3]=v509;
-}
-v510=v38[0];
-v511=v38[1];
-v512=v38[2];
-v513=v38[3];
-if(v510!==v39[0]||v511!==v39[1]||v512!==v39[2]||v513!==v39[3]){
-v1.stencilOpSeparate(v510,v511,v512,v513);
-v39[0]=v510;
-v39[1]=v511;
-v39[2]=v512;
-v39[3]=v513;
-}
-}
-v1.blendColor(0,0,0,0);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=0;
-if(g514){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g514;
-v1.blendEquationSeparate(32774,32774);
-v23[0]=32774;
-v23[1]=32774;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g515){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g515;
-if(g516){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g516;
-v517=v5.profile;
-if(v517){
-v518=performance.now();
-g52.count+=a1;
-}
-v1.useProgram(g115.program);
-v519=v14.angle_instanced_arrays;
-var v534,v535,v536,v537,v538,v539,v643,v644;
-v11.setVAO(null);
-v534=g118.location;
-v535=v10[v534];
-if(!v535.buffer){
-v1.enableVertexAttribArray(v534);
-}
-if(v535.type!==5126||v535.size!==2||v535.buffer!==g117||v535.normalized!==false||v535.offset!==16||v535.stride!==24){
-v1.bindBuffer(34962,g117.buffer);
-v1.vertexAttribPointer(v534,2,5126,false,24,16);
-v535.type=5126;
-v535.size=2;
-v535.buffer=g117;
-v535.normalized=false;
-v535.offset=16;
-v535.stride=24;
-}
-if(v535.divisor!==0){
-v519.vertexAttribDivisorANGLE(v534,0);
-v535.divisor=0;
-}
-v536=g141.location;
-v537=v10[v536];
-if(!v537.buffer){
-v1.enableVertexAttribArray(v536);
-}
-if(v537.type!==5126||v537.size!==2||v537.buffer!==g117||v537.normalized!==false||v537.offset!==0||v537.stride!==24){
-v1.bindBuffer(34962,g117.buffer);
-v1.vertexAttribPointer(v536,2,5126,false,24,0);
-v537.type=5126;
-v537.size=2;
-v537.buffer=g117;
-v537.normalized=false;
-v537.offset=0;
-v537.stride=24;
-}
-if(v537.divisor!==0){
-v519.vertexAttribDivisorANGLE(v536,0);
-v537.divisor=0;
-}
-v538=g164.location;
-v539=v10[v538];
-if(!v539.buffer){
-v1.enableVertexAttribArray(v538);
-}
-if(v539.type!==5126||v539.size!==2||v539.buffer!==g117||v539.normalized!==false||v539.offset!==8||v539.stride!==24){
-v1.bindBuffer(34962,g117.buffer);
-v1.vertexAttribPointer(v538,2,5126,false,24,8);
-v539.type=5126;
-v539.size=2;
-v539.buffer=g117;
-v539.normalized=false;
-v539.offset=8;
-v539.stride=24;
-}
-if(v539.divisor!==0){
-v519.vertexAttribDivisorANGLE(v538,0);
-v539.divisor=0;
-}
-v643=v6.elements;
-if(v643){
-v1.bindBuffer(34963,v643.buffer.buffer);
-}
-else if(v11.currentVAO){
-v643=v7.getElements(v11.currentVAO.elements);
-if(v643)v1.bindBuffer(34963,v643.buffer.buffer);
-}
-v644=v6.offset;
-for(v520=0;
-v520<a1;
-++v520){
-v521=a0[v520];
-var v522,v523,v524,v525,v526,v527,v528,v529,v530,v531,v532,v533,v540,v541,v542,v543,v544,v545,v546,v547,v548,v549,v550,v551,v552,v553,v554,v555,v556,v557,v558,v559,v560,v561,v562,v563,v564,v565,v566,v567,v568,v569,v570,v571,v572,v573,v574,v575,v576,v577,v578,v579,v580,v581,v582,v583,v584,v585,v586,v587,v588,v589,v590,v591,v592,v593,v594,v595,v596,v597,v598,v599,v600,v601,v602,v603,v604,v605,v606,v607,v608,v609,v610,v611,v612,v613,v614,v615,v616,v617,v618,v619,v620,v621,v622,v623,v624,v625,v626,v627,v628,v629,v630,v631,v632,v633,v634,v635,v636,v637,v638,v639,v640,v641,v642,v645;
-v522=v521["viewport"];
-if(!(v522&&typeof v522==="object"))g18.commandRaise(g97,g19);
-v523=v522.x|0;
-v524=v522.y|0;
-v525="width" in v522?v522.width|0:(v2.framebufferWidth-v523);
-v526="height" in v522?v522.height|0:(v2.framebufferHeight-v524);
-if(!(v525>=0&&v526>=0))g18.commandRaise(g97,g19);
-v527=v2.viewportWidth;
-v2.viewportWidth=v525;
-v528=v2.viewportHeight;
-v2.viewportHeight=v526;
-v1.viewport(v523,v524,v525,v526);
-v43[0]=v523;
-v43[1]=v524;
-v43[2]=v525;
-v43[3]=v526;
-v529=v521["viewport"];
-if(!(v529&&typeof v529==="object"))g18.commandRaise(g107,g19);
-v530=v529.x|0;
-v531=v529.y|0;
-v532="width" in v529?v529.width|0:(v2.framebufferWidth-v530);
-v533="height" in v529?v529.height|0:(v2.framebufferHeight-v531);
-if(!(v532>=0&&v533>=0))g18.commandRaise(g107,g19);
-v1.scissor(v530,v531,v532,v533);
-v41[0]=v530;
-v41[1]=v531;
-v41[2]=v532;
-v41[3]=v533;
-v540=g121.call(this,v2,v521,v520);
-v53.offset=v540;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g123,g19);
-v541=false;
-v542=1;
-v543=0;
-v544=0;
-v545=0;
-v546=0;
-v547=null;
-v548=0;
-v549=false;
-v550=5126;
-v551=0;
-v552=0;
-v553=0;
-if(v16(v53)){
-v541=true;
-v547=v8.createStream(34962,v53);
-v550=v547.dtype;
-}
-else{
-v547=v8.getBuffer(v53);
-if(v547){
-v550=v547.dtype;
-}
-else if("constant" in v53){
-v542=2;
-if(typeof v53.constant === "number"){
-v543=v53.constant;
-v544=v545=v546=0;
-}
-else{
-v543=v53.constant.length>0?v53.constant[0]:0;
-v544=v53.constant.length>1?v53.constant[1]:0;
-v545=v53.constant.length>2?v53.constant[2]:0;
-v546=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v547=v8.createStream(34962,v53.buffer);
-}
-else{
-v547=v8.getBuffer(v53.buffer);
-}
-v550="type" in v53?v49[v53.type]:v547.dtype;
-v549=!!v53.normalized;
-v548=v53.size|0;
-v551=v53.offset|0;
-v552=v53.stride|0;
-v553=v53.divisor|0;
-}
-}
-v554=g137.location;
-v555=v10[v554];
-if(v542===1){
-if(!v555.buffer){
-v1.enableVertexAttribArray(v554);
-}
-v556=v548||4;
-if(v555.type!==v550||v555.size!==v556||v555.buffer!==v547||v555.normalized!==v549||v555.offset!==v551||v555.stride!==v552){
-v1.bindBuffer(34962,v547.buffer);
-v1.vertexAttribPointer(v554,v556,v550,v549,v552,v551);
-v555.type=v550;
-v555.size=v556;
-v555.buffer=v547;
-v555.normalized=v549;
-v555.offset=v551;
-v555.stride=v552;
-}
-if(v555.divisor!==v553){
-v519.vertexAttribDivisorANGLE(v554,v553);
-v555.divisor=v553;
-}
-}
-else{
-if(v555.buffer){
-v1.disableVertexAttribArray(v554);
-v555.buffer=null;
-}
-if(v555.x!==v543||v555.y!==v544||v555.z!==v545||v555.w!==v546){
-v1.vertexAttrib4f(v554,v543,v544,v545,v546);
-v555.x=v543;
-v555.y=v544;
-v555.z=v545;
-v555.w=v546;
-}
-}
-v557=g144.call(this,v2,v521,v520);
-v59.offset=v557;
-if(!(v59&&(typeof v59==="object"||typeof v59==="function")&&(v16(v59)||v8.getBuffer(v59)||v8.getBuffer(v59.buffer)||v16(v59.buffer)||("constant" in v59&&(typeof v59.constant==="number"||v17(v59.constant))))))g18.commandRaise(g146,g19);
-v558=false;
-v559=1;
-v560=0;
-v561=0;
-v562=0;
-v563=0;
-v564=null;
-v565=0;
-v566=false;
-v567=5126;
-v568=0;
-v569=0;
-v570=0;
-if(v16(v59)){
-v558=true;
-v564=v8.createStream(34962,v59);
-v567=v564.dtype;
-}
-else{
-v564=v8.getBuffer(v59);
-if(v564){
-v567=v564.dtype;
-}
-else if("constant" in v59){
-v559=2;
-if(typeof v59.constant === "number"){
-v560=v59.constant;
-v561=v562=v563=0;
-}
-else{
-v560=v59.constant.length>0?v59.constant[0]:0;
-v561=v59.constant.length>1?v59.constant[1]:0;
-v562=v59.constant.length>2?v59.constant[2]:0;
-v563=v59.constant.length>3?v59.constant[3]:0;
-}
-}
-else{
-if(v16(v59.buffer)){
-v564=v8.createStream(34962,v59.buffer);
-}
-else{
-v564=v8.getBuffer(v59.buffer);
-}
-v567="type" in v59?v49[v59.type]:v564.dtype;
-v566=!!v59.normalized;
-v565=v59.size|0;
-v568=v59.offset|0;
-v569=v59.stride|0;
-v570=v59.divisor|0;
-}
-}
-v571=g160.location;
-v572=v10[v571];
-if(v559===1){
-if(!v572.buffer){
-v1.enableVertexAttribArray(v571);
-}
-v573=v565||4;
-if(v572.type!==v567||v572.size!==v573||v572.buffer!==v564||v572.normalized!==v566||v572.offset!==v568||v572.stride!==v569){
-v1.bindBuffer(34962,v564.buffer);
-v1.vertexAttribPointer(v571,v573,v567,v566,v569,v568);
-v572.type=v567;
-v572.size=v573;
-v572.buffer=v564;
-v572.normalized=v566;
-v572.offset=v568;
-v572.stride=v569;
-}
-if(v572.divisor!==v570){
-v519.vertexAttribDivisorANGLE(v571,v570);
-v572.divisor=v570;
-}
-}
-else{
-if(v572.buffer){
-v1.disableVertexAttribArray(v571);
-v572.buffer=null;
-}
-if(v572.x!==v560||v572.y!==v561||v572.z!==v562||v572.w!==v563){
-v1.vertexAttrib4f(v571,v560,v561,v562,v563);
-v572.x=v560;
-v572.y=v561;
-v572.z=v562;
-v572.w=v563;
-}
-}
-v574=g167.call(this,v2,v521,v520);
-v55.offset=v574;
-if(!(v55&&(typeof v55==="object"||typeof v55==="function")&&(v16(v55)||v8.getBuffer(v55)||v8.getBuffer(v55.buffer)||v16(v55.buffer)||("constant" in v55&&(typeof v55.constant==="number"||v17(v55.constant))))))g18.commandRaise(g169,g19);
-v575=false;
-v576=1;
-v577=0;
-v578=0;
-v579=0;
-v580=0;
-v581=null;
-v582=0;
-v583=false;
-v584=5126;
-v585=0;
-v586=0;
-v587=0;
-if(v16(v55)){
-v575=true;
-v581=v8.createStream(34962,v55);
-v584=v581.dtype;
-}
-else{
-v581=v8.getBuffer(v55);
-if(v581){
-v584=v581.dtype;
-}
-else if("constant" in v55){
-v576=2;
-if(typeof v55.constant === "number"){
-v577=v55.constant;
-v578=v579=v580=0;
-}
-else{
-v577=v55.constant.length>0?v55.constant[0]:0;
-v578=v55.constant.length>1?v55.constant[1]:0;
-v579=v55.constant.length>2?v55.constant[2]:0;
-v580=v55.constant.length>3?v55.constant[3]:0;
-}
-}
-else{
-if(v16(v55.buffer)){
-v581=v8.createStream(34962,v55.buffer);
-}
-else{
-v581=v8.getBuffer(v55.buffer);
-}
-v584="type" in v55?v49[v55.type]:v581.dtype;
-v583=!!v55.normalized;
-v582=v55.size|0;
-v585=v55.offset|0;
-v586=v55.stride|0;
-v587=v55.divisor|0;
-}
-}
-v588=g183.location;
-v589=v10[v588];
-if(v576===1){
-if(!v589.buffer){
-v1.enableVertexAttribArray(v588);
-}
-v590=v582||2;
-if(v589.type!==v584||v589.size!==v590||v589.buffer!==v581||v589.normalized!==v583||v589.offset!==v585||v589.stride!==v586){
-v1.bindBuffer(34962,v581.buffer);
-v1.vertexAttribPointer(v588,v590,v584,v583,v586,v585);
-v589.type=v584;
-v589.size=v590;
-v589.buffer=v581;
-v589.normalized=v583;
-v589.offset=v585;
-v589.stride=v586;
-}
-if(v589.divisor!==v587){
-v519.vertexAttribDivisorANGLE(v588,v587);
-v589.divisor=v587;
-}
-}
-else{
-if(v589.buffer){
-v1.disableVertexAttribArray(v588);
-v589.buffer=null;
-}
-if(v589.x!==v577||v589.y!==v578||v589.z!==v579||v589.w!==v580){
-v1.vertexAttrib4f(v588,v577,v578,v579,v580);
-v589.x=v577;
-v589.y=v578;
-v589.z=v579;
-v589.w=v580;
-}
-}
-v591=g187.call(this,v2,v521,v520);
-v57.offset=v591;
-if(!(v57&&(typeof v57==="object"||typeof v57==="function")&&(v16(v57)||v8.getBuffer(v57)||v8.getBuffer(v57.buffer)||v16(v57.buffer)||("constant" in v57&&(typeof v57.constant==="number"||v17(v57.constant))))))g18.commandRaise(g189,g19);
-v592=false;
-v593=1;
-v594=0;
-v595=0;
-v596=0;
-v597=0;
-v598=null;
-v599=0;
-v600=false;
-v601=5126;
-v602=0;
-v603=0;
-v604=0;
-if(v16(v57)){
-v592=true;
-v598=v8.createStream(34962,v57);
-v601=v598.dtype;
-}
-else{
-v598=v8.getBuffer(v57);
-if(v598){
-v601=v598.dtype;
-}
-else if("constant" in v57){
-v593=2;
-if(typeof v57.constant === "number"){
-v594=v57.constant;
-v595=v596=v597=0;
-}
-else{
-v594=v57.constant.length>0?v57.constant[0]:0;
-v595=v57.constant.length>1?v57.constant[1]:0;
-v596=v57.constant.length>2?v57.constant[2]:0;
-v597=v57.constant.length>3?v57.constant[3]:0;
-}
-}
-else{
-if(v16(v57.buffer)){
-v598=v8.createStream(34962,v57.buffer);
-}
-else{
-v598=v8.getBuffer(v57.buffer);
-}
-v601="type" in v57?v49[v57.type]:v598.dtype;
-v600=!!v57.normalized;
-v599=v57.size|0;
-v602=v57.offset|0;
-v603=v57.stride|0;
-v604=v57.divisor|0;
-}
-}
-v605=g203.location;
-v606=v10[v605];
-if(v593===1){
-if(!v606.buffer){
-v1.enableVertexAttribArray(v605);
-}
-v607=v599||2;
-if(v606.type!==v601||v606.size!==v607||v606.buffer!==v598||v606.normalized!==v600||v606.offset!==v602||v606.stride!==v603){
-v1.bindBuffer(34962,v598.buffer);
-v1.vertexAttribPointer(v605,v607,v601,v600,v603,v602);
-v606.type=v601;
-v606.size=v607;
-v606.buffer=v598;
-v606.normalized=v600;
-v606.offset=v602;
-v606.stride=v603;
-}
-if(v606.divisor!==v604){
-v519.vertexAttribDivisorANGLE(v605,v604);
-v606.divisor=v604;
-}
-}
-else{
-if(v606.buffer){
-v1.disableVertexAttribArray(v605);
-v606.buffer=null;
-}
-if(v606.x!==v594||v606.y!==v595||v606.z!==v596||v606.w!==v597){
-v1.vertexAttrib4f(v605,v594,v595,v596,v597);
-v606.x=v594;
-v606.y=v595;
-v606.z=v596;
-v606.w=v597;
-}
-}
-v608=v521["capSize"];
-if(!(typeof v608==="number"))g18.commandRaise(g209,g19);
-if(!v520||v609!==v608){
-v609=v608;
-v1.uniform1f(g207.location,v608);
-}
-v610=v521["lineWidth"];
-if(!(typeof v610==="number"))g18.commandRaise(g212,g19);
-if(!v520||v611!==v610){
-v611=v610;
-v1.uniform1f(g210.location,v610);
-}
-v612=v521["opacity"];
-if(!(typeof v612==="number"))g18.commandRaise(g215,g19);
-if(!v520||v613!==v612){
-v613=v612;
-v1.uniform1f(g213.location,v612);
-}
-v614=v521["scale"];
-if(!(v17(v614)&&v614.length===2))g18.commandRaise(g218,g19);
-v615=v614[0];
-v617=v614[1];
-if(!v520||v616!==v615||v618!==v617){
-v616=v615;
-v618=v617;
-v1.uniform2f(g216.location,v615,v617);
-}
-v619=v521["scaleFract"];
-if(!(v17(v619)&&v619.length===2))g18.commandRaise(g223,g19);
-v620=v619[0];
-v622=v619[1];
-if(!v520||v621!==v620||v623!==v622){
-v621=v620;
-v623=v622;
-v1.uniform2f(g221.location,v620,v622);
-}
-v624=v521["translate"];
-if(!(v17(v624)&&v624.length===2))g18.commandRaise(g228,g19);
-v625=v624[0];
-v627=v624[1];
-if(!v520||v626!==v625||v628!==v627){
-v626=v625;
-v628=v627;
-v1.uniform2f(g226.location,v625,v627);
-}
-v629=v521["translateFract"];
-if(!(v17(v629)&&v629.length===2))g18.commandRaise(g233,g19);
-v630=v629[0];
-v632=v629[1];
-if(!v520||v631!==v630||v633!==v632){
-v631=v630;
-v633=v632;
-v1.uniform2f(g231.location,v630,v632);
-}
-v634=g237.call(this,v2,v521,v520);
-if(!(v17(v634)&&v634.length===4))g18.commandRaise(g239,g19);
-v635=v634[0];
-v637=v634[1];
-v639=v634[2];
-v641=v634[3];
-if(!v520||v636!==v635||v638!==v637||v640!==v639||v642!==v641){
-v636=v635;
-v638=v637;
-v640=v639;
-v642=v641;
-v1.uniform4f(g236.location,v635,v637,v639,v641);
-}
-v645=v521["count"];
-if(v645>0){
-if(v643){
-v519.drawElementsInstancedANGLE(4,36,v643.type,v644<<((v643.type-5121)>>1),v645);
-}
-else{
-v519.drawArraysInstancedANGLE(4,v644,36,v645);
-}
-}
-else if(v645<0){
-if(v643){
-v1.drawElements(4,36,v643.type,v644<<((v643.type-5121)>>1));
-}
-else{
-v1.drawArrays(4,v644,36);
-}
-}
-v2.viewportWidth=v527;
-v2.viewportHeight=v528;
-if(v541){
-v8.destroyStream(v547);
-}
-if(v558){
-v8.destroyStream(v564);
-}
-if(v575){
-v8.destroyStream(v581);
-}
-if(v592){
-v8.destroyStream(v598);
-}
-}
-v5.dirty=true;
-v11.setVAO(null);
-if(v517){
-g52.cpuTime+=performance.now()-v518;
-}
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/7c8e7f36e693904898ece5f7f8b49b23c69d98397567c3915a45647209eb7da4 b/src/generated/regl-codegen/7c8e7f36e693904898ece5f7f8b49b23c69d98397567c3915a45647209eb7da4
deleted file mode 100644
index b0b526f358e..00000000000
--- a/src/generated/regl-codegen/7c8e7f36e693904898ece5f7f8b49b23c69d98397567c3915a45647209eb7da4
+++ /dev/null
@@ -1,2052 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g97,g104,g105,g106,g109,g112,g126,g131,g145,g150,g164,g169,g183,g187,g189,g190,g191,g193,g195,g196,g198,g201,g202,g204,g207,g209,g210,g211,g213,g214,g216,g221,g222,g224,g225,g227,g228,g230,g233,g235,g238,g240,g243,g245,g252,g254,g267,g269,g271,g273,g275,g277,g279,g281,g283,g285,g287,g295,g298,g301,g304,g307,g310,g313,g316,g319,g322,g325,g328,g331,g334,g350,g377,g404,g431,g444,g446,g496,g497,g498
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v53,v54;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v53={
-}
-;
-v53.offset=4;
-v53.stride=8;
-v54={
-}
-;
-v54.offset=0;
-v54.stride=8;
-return {
-"draw":function(a0){
-var v55,v56,v96,v98,v99,v100,v101,v102,v103,v107,v108,v110,v111,v113,v114,v115,v116,v117,v118,v119,v120,v121,v122,v123,v124,v125,v127,v128,v129,v130,v132,v133,v134,v135,v136,v137,v138,v139,v140,v141,v142,v143,v144,v146,v147,v148,v149,v151,v152,v153,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v165,v166,v167,v168,v170,v171,v172,v173,v174,v175,v176,v177,v178,v179,v180,v181,v182,v184,v185,v186,v188,v192,v194,v197,v199,v200,v203,v205,v206,v208,v212,v215,v217,v218,v219,v220,v223,v226,v229,v231,v232,v234,v236,v237,v239,v241,v242,v244,v246,v247,v248,v249,v250,v251,v253,v255;
-v55=v14.angle_instanced_arrays;
-v56=v13.next;
-if(v56!==v13.cur){
-if(v56){
-v1.bindFramebuffer(36160,v56.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v56;
-}
-if(v5.dirty){
-var v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93,v94,v95;
-v57=v4.dither;
-if(v57!==v5.dither){
-if(v57){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v57;
-}
-v58=v22[0];
-v59=v22[1];
-if(v58!==v23[0]||v59!==v23[1]){
-v1.blendEquationSeparate(v58,v59);
-v23[0]=v58;
-v23[1]=v59;
-}
-v60=v4.depth_func;
-if(v60!==v5.depth_func){
-v1.depthFunc(v60);
-v5.depth_func=v60;
-}
-v61=v26[0];
-v62=v26[1];
-if(v61!==v27[0]||v62!==v27[1]){
-v1.depthRange(v61,v62);
-v27[0]=v61;
-v27[1]=v62;
-}
-v63=v4.depth_mask;
-if(v63!==v5.depth_mask){
-v1.depthMask(v63);
-v5.depth_mask=v63;
-}
-v64=v28[0];
-v65=v28[1];
-v66=v28[2];
-v67=v28[3];
-if(v64!==v29[0]||v65!==v29[1]||v66!==v29[2]||v67!==v29[3]){
-v1.colorMask(v64,v65,v66,v67);
-v29[0]=v64;
-v29[1]=v65;
-v29[2]=v66;
-v29[3]=v67;
-}
-v68=v4.cull_enable;
-if(v68!==v5.cull_enable){
-if(v68){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v68;
-}
-v69=v4.cull_face;
-if(v69!==v5.cull_face){
-v1.cullFace(v69);
-v5.cull_face=v69;
-}
-v70=v4.frontFace;
-if(v70!==v5.frontFace){
-v1.frontFace(v70);
-v5.frontFace=v70;
-}
-v71=v4.lineWidth;
-if(v71!==v5.lineWidth){
-v1.lineWidth(v71);
-v5.lineWidth=v71;
-}
-v72=v4.polygonOffset_enable;
-if(v72!==v5.polygonOffset_enable){
-if(v72){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v72;
-}
-v73=v30[0];
-v74=v30[1];
-if(v73!==v31[0]||v74!==v31[1]){
-v1.polygonOffset(v73,v74);
-v31[0]=v73;
-v31[1]=v74;
-}
-v75=v4.sample_alpha;
-if(v75!==v5.sample_alpha){
-if(v75){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v75;
-}
-v76=v4.sample_enable;
-if(v76!==v5.sample_enable){
-if(v76){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v76;
-}
-v77=v32[0];
-v78=v32[1];
-if(v77!==v33[0]||v78!==v33[1]){
-v1.sampleCoverage(v77,v78);
-v33[0]=v77;
-v33[1]=v78;
-}
-v79=v4.stencil_mask;
-if(v79!==v5.stencil_mask){
-v1.stencilMask(v79);
-v5.stencil_mask=v79;
-}
-v80=v34[0];
-v81=v34[1];
-v82=v34[2];
-if(v80!==v35[0]||v81!==v35[1]||v82!==v35[2]){
-v1.stencilFunc(v80,v81,v82);
-v35[0]=v80;
-v35[1]=v81;
-v35[2]=v82;
-}
-v83=v36[0];
-v84=v36[1];
-v85=v36[2];
-v86=v36[3];
-if(v83!==v37[0]||v84!==v37[1]||v85!==v37[2]||v86!==v37[3]){
-v1.stencilOpSeparate(v83,v84,v85,v86);
-v37[0]=v83;
-v37[1]=v84;
-v37[2]=v85;
-v37[3]=v86;
-}
-v87=v38[0];
-v88=v38[1];
-v89=v38[2];
-v90=v38[3];
-if(v87!==v39[0]||v88!==v39[1]||v89!==v39[2]||v90!==v39[3]){
-v1.stencilOpSeparate(v87,v88,v89,v90);
-v39[0]=v87;
-v39[1]=v88;
-v39[2]=v89;
-v39[3]=v90;
-}
-v91=v4.scissor_enable;
-if(v91!==v5.scissor_enable){
-if(v91){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=v91;
-}
-v92=v40[0];
-v93=v40[1];
-v94=v40[2];
-v95=v40[3];
-if(v92!==v41[0]||v93!==v41[1]||v94!==v41[2]||v95!==v41[3]){
-v1.scissor(v92,v93,v94,v95);
-v41[0]=v92;
-v41[1]=v93;
-v41[2]=v94;
-v41[3]=v95;
-}
-}
-v96=this["viewport"];
-if(!(v96&&typeof v96==="object"))g18.commandRaise(g97,g19);
-v98=v96.x|0;
-v99=v96.y|0;
-v100="width" in v96?v96.width|0:(v2.framebufferWidth-v98);
-v101="height" in v96?v96.height|0:(v2.framebufferHeight-v99);
-if(!(v100>=0&&v101>=0))g18.commandRaise(g97,g19);
-v102=v2.viewportWidth;
-v2.viewportWidth=v100;
-v103=v2.viewportHeight;
-v2.viewportHeight=v101;
-v1.viewport(v98,v99,v100,v101);
-v43[0]=v98;
-v43[1]=v99;
-v43[2]=v100;
-v43[3]=v101;
-v1.blendColor(0,0,0,1);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=1;
-if(g104){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g104;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g105){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g105;
-if(g106){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g106;
-v107=v5.profile;
-if(v107){
-v108=performance.now();
-g52.count++;
-}
-v1.useProgram(g109.program);
-v110=v14.angle_instanced_arrays;
-v11.setVAO(null);
-v111=this["charBuffer"];
-if(!(v111&&(typeof v111==="object"||typeof v111==="function")&&(v16(v111)||v8.getBuffer(v111)||v8.getBuffer(v111.buffer)||v16(v111.buffer)||("constant" in v111&&(typeof v111.constant==="number"||v17(v111.constant))))))g18.commandRaise(g112,g19);
-v113=false;
-v114=1;
-v115=0;
-v116=0;
-v117=0;
-v118=0;
-v119=null;
-v120=0;
-v121=false;
-v122=5126;
-v123=0;
-v124=0;
-v125=0;
-if(v16(v111)){
-v113=true;
-v119=v8.createStream(34962,v111);
-v122=v119.dtype;
-}
-else{
-v119=v8.getBuffer(v111);
-if(v119){
-v122=v119.dtype;
-}
-else if("constant" in v111){
-v114=2;
-if(typeof v111.constant === "number"){
-v115=v111.constant;
-v116=v117=v118=0;
-}
-else{
-v115=v111.constant.length>0?v111.constant[0]:0;
-v116=v111.constant.length>1?v111.constant[1]:0;
-v117=v111.constant.length>2?v111.constant[2]:0;
-v118=v111.constant.length>3?v111.constant[3]:0;
-}
-}
-else{
-if(v16(v111.buffer)){
-v119=v8.createStream(34962,v111.buffer);
-}
-else{
-v119=v8.getBuffer(v111.buffer);
-}
-v122="type" in v111?v49[v111.type]:v119.dtype;
-v121=!!v111.normalized;
-v120=v111.size|0;
-v123=v111.offset|0;
-v124=v111.stride|0;
-v125=v111.divisor|0;
-}
-}
-v127=g126.location;
-v128=v10[v127];
-if(v114===1){
-if(!v128.buffer){
-v1.enableVertexAttribArray(v127);
-}
-v129=v120||1;
-if(v128.type!==v122||v128.size!==v129||v128.buffer!==v119||v128.normalized!==v121||v128.offset!==v123||v128.stride!==v124){
-v1.bindBuffer(34962,v119.buffer);
-v1.vertexAttribPointer(v127,v129,v122,v121,v124,v123);
-v128.type=v122;
-v128.size=v129;
-v128.buffer=v119;
-v128.normalized=v121;
-v128.offset=v123;
-v128.stride=v124;
-}
-if(v128.divisor!==v125){
-v110.vertexAttribDivisorANGLE(v127,v125);
-v128.divisor=v125;
-}
-}
-else{
-if(v128.buffer){
-v1.disableVertexAttribArray(v127);
-v128.buffer=null;
-}
-if(v128.x!==v115||v128.y!==v116||v128.z!==v117||v128.w!==v118){
-v1.vertexAttrib4f(v127,v115,v116,v117,v118);
-v128.x=v115;
-v128.y=v116;
-v128.z=v117;
-v128.w=v118;
-}
-}
-v130=this["sizeBuffer"];
-v53.buffer=v130;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g131,g19);
-v132=false;
-v133=1;
-v134=0;
-v135=0;
-v136=0;
-v137=0;
-v138=null;
-v139=0;
-v140=false;
-v141=5126;
-v142=0;
-v143=0;
-v144=0;
-if(v16(v53)){
-v132=true;
-v138=v8.createStream(34962,v53);
-v141=v138.dtype;
-}
-else{
-v138=v8.getBuffer(v53);
-if(v138){
-v141=v138.dtype;
-}
-else if("constant" in v53){
-v133=2;
-if(typeof v53.constant === "number"){
-v134=v53.constant;
-v135=v136=v137=0;
-}
-else{
-v134=v53.constant.length>0?v53.constant[0]:0;
-v135=v53.constant.length>1?v53.constant[1]:0;
-v136=v53.constant.length>2?v53.constant[2]:0;
-v137=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v138=v8.createStream(34962,v53.buffer);
-}
-else{
-v138=v8.getBuffer(v53.buffer);
-}
-v141="type" in v53?v49[v53.type]:v138.dtype;
-v140=!!v53.normalized;
-v139=v53.size|0;
-v142=v53.offset|0;
-v143=v53.stride|0;
-v144=v53.divisor|0;
-}
-}
-v146=g145.location;
-v147=v10[v146];
-if(v133===1){
-if(!v147.buffer){
-v1.enableVertexAttribArray(v146);
-}
-v148=v139||1;
-if(v147.type!==v141||v147.size!==v148||v147.buffer!==v138||v147.normalized!==v140||v147.offset!==v142||v147.stride!==v143){
-v1.bindBuffer(34962,v138.buffer);
-v1.vertexAttribPointer(v146,v148,v141,v140,v143,v142);
-v147.type=v141;
-v147.size=v148;
-v147.buffer=v138;
-v147.normalized=v140;
-v147.offset=v142;
-v147.stride=v143;
-}
-if(v147.divisor!==v144){
-v110.vertexAttribDivisorANGLE(v146,v144);
-v147.divisor=v144;
-}
-}
-else{
-if(v147.buffer){
-v1.disableVertexAttribArray(v146);
-v147.buffer=null;
-}
-if(v147.x!==v134||v147.y!==v135||v147.z!==v136||v147.w!==v137){
-v1.vertexAttrib4f(v146,v134,v135,v136,v137);
-v147.x=v134;
-v147.y=v135;
-v147.z=v136;
-v147.w=v137;
-}
-}
-v149=this["position"];
-if(!(v149&&(typeof v149==="object"||typeof v149==="function")&&(v16(v149)||v8.getBuffer(v149)||v8.getBuffer(v149.buffer)||v16(v149.buffer)||("constant" in v149&&(typeof v149.constant==="number"||v17(v149.constant))))))g18.commandRaise(g150,g19);
-v151=false;
-v152=1;
-v153=0;
-v154=0;
-v155=0;
-v156=0;
-v157=null;
-v158=0;
-v159=false;
-v160=5126;
-v161=0;
-v162=0;
-v163=0;
-if(v16(v149)){
-v151=true;
-v157=v8.createStream(34962,v149);
-v160=v157.dtype;
-}
-else{
-v157=v8.getBuffer(v149);
-if(v157){
-v160=v157.dtype;
-}
-else if("constant" in v149){
-v152=2;
-if(typeof v149.constant === "number"){
-v153=v149.constant;
-v154=v155=v156=0;
-}
-else{
-v153=v149.constant.length>0?v149.constant[0]:0;
-v154=v149.constant.length>1?v149.constant[1]:0;
-v155=v149.constant.length>2?v149.constant[2]:0;
-v156=v149.constant.length>3?v149.constant[3]:0;
-}
-}
-else{
-if(v16(v149.buffer)){
-v157=v8.createStream(34962,v149.buffer);
-}
-else{
-v157=v8.getBuffer(v149.buffer);
-}
-v160="type" in v149?v49[v149.type]:v157.dtype;
-v159=!!v149.normalized;
-v158=v149.size|0;
-v161=v149.offset|0;
-v162=v149.stride|0;
-v163=v149.divisor|0;
-}
-}
-v165=g164.location;
-v166=v10[v165];
-if(v152===1){
-if(!v166.buffer){
-v1.enableVertexAttribArray(v165);
-}
-v167=v158||2;
-if(v166.type!==v160||v166.size!==v167||v166.buffer!==v157||v166.normalized!==v159||v166.offset!==v161||v166.stride!==v162){
-v1.bindBuffer(34962,v157.buffer);
-v1.vertexAttribPointer(v165,v167,v160,v159,v162,v161);
-v166.type=v160;
-v166.size=v167;
-v166.buffer=v157;
-v166.normalized=v159;
-v166.offset=v161;
-v166.stride=v162;
-}
-if(v166.divisor!==v163){
-v110.vertexAttribDivisorANGLE(v165,v163);
-v166.divisor=v163;
-}
-}
-else{
-if(v166.buffer){
-v1.disableVertexAttribArray(v165);
-v166.buffer=null;
-}
-if(v166.x!==v153||v166.y!==v154||v166.z!==v155||v166.w!==v156){
-v1.vertexAttrib4f(v165,v153,v154,v155,v156);
-v166.x=v153;
-v166.y=v154;
-v166.z=v155;
-v166.w=v156;
-}
-}
-v168=this["sizeBuffer"];
-v54.buffer=v168;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g169,g19);
-v170=false;
-v171=1;
-v172=0;
-v173=0;
-v174=0;
-v175=0;
-v176=null;
-v177=0;
-v178=false;
-v179=5126;
-v180=0;
-v181=0;
-v182=0;
-if(v16(v54)){
-v170=true;
-v176=v8.createStream(34962,v54);
-v179=v176.dtype;
-}
-else{
-v176=v8.getBuffer(v54);
-if(v176){
-v179=v176.dtype;
-}
-else if("constant" in v54){
-v171=2;
-if(typeof v54.constant === "number"){
-v172=v54.constant;
-v173=v174=v175=0;
-}
-else{
-v172=v54.constant.length>0?v54.constant[0]:0;
-v173=v54.constant.length>1?v54.constant[1]:0;
-v174=v54.constant.length>2?v54.constant[2]:0;
-v175=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v176=v8.createStream(34962,v54.buffer);
-}
-else{
-v176=v8.getBuffer(v54.buffer);
-}
-v179="type" in v54?v49[v54.type]:v176.dtype;
-v178=!!v54.normalized;
-v177=v54.size|0;
-v180=v54.offset|0;
-v181=v54.stride|0;
-v182=v54.divisor|0;
-}
-}
-v184=g183.location;
-v185=v10[v184];
-if(v171===1){
-if(!v185.buffer){
-v1.enableVertexAttribArray(v184);
-}
-v186=v177||1;
-if(v185.type!==v179||v185.size!==v186||v185.buffer!==v176||v185.normalized!==v178||v185.offset!==v180||v185.stride!==v181){
-v1.bindBuffer(34962,v176.buffer);
-v1.vertexAttribPointer(v184,v186,v179,v178,v181,v180);
-v185.type=v179;
-v185.size=v186;
-v185.buffer=v176;
-v185.normalized=v178;
-v185.offset=v180;
-v185.stride=v181;
-}
-if(v185.divisor!==v182){
-v110.vertexAttribDivisorANGLE(v184,v182);
-v185.divisor=v182;
-}
-}
-else{
-if(v185.buffer){
-v1.disableVertexAttribArray(v184);
-v185.buffer=null;
-}
-if(v185.x!==v172||v185.y!==v173||v185.z!==v174||v185.w!==v175){
-v1.vertexAttrib4f(v184,v172,v173,v174,v175);
-v185.x=v172;
-v185.y=v173;
-v185.z=v174;
-v185.w=v175;
-}
-}
-v188=a0["align"];
-if(!(typeof v188==="number"))g18.commandRaise(g189,g19);
-v1.uniform1f(g187.location,v188);
-v192=g191.call(this,v2,a0,0);
-if(v192&&v192._reglType==="framebuffer"){
-v192=v192.color[0];
-}
-if(!(typeof v192==="function"&&v192._reglType==="texture2d"))g18.commandRaise(g193,g19);
-v194=v192._texture;
-v1.uniform1i(g190.location,v194.bind());
-v197=g196.call(this,v2,a0,0);
-if(!(v17(v197)&&v197.length===2))g18.commandRaise(g198,g19);
-v199=v197[0];
-v200=v197[1];
-v1.uniform2f(g195.location,v199,v200);
-v203=g202.call(this,v2,a0,0);
-if(!(v17(v203)&&v203.length===2))g18.commandRaise(g204,g19);
-v205=v203[0];
-v206=v203[1];
-v1.uniform2f(g201.location,v205,v206);
-v208=a0["baseline"];
-if(!(typeof v208==="number"))g18.commandRaise(g209,g19);
-v1.uniform1f(g207.location,v208);
-v212=g211.call(this,v2,a0,0);
-if(!(typeof v212==="number"))g18.commandRaise(g213,g19);
-v1.uniform1f(g210.location,v212);
-v215=a0["color"];
-if(!(v17(v215)&&v215.length===4))g18.commandRaise(g216,g19);
-v217=v215[0];
-v218=v215[1];
-v219=v215[2];
-v220=v215[3];
-v1.uniform4f(g214.location,v217,v218,v219,v220);
-v223=g222.call(this,v2,a0,0);
-if(!(typeof v223==="number"))g18.commandRaise(g224,g19);
-v1.uniform1f(g221.location,v223);
-v226=a0["opacity"];
-if(!(typeof v226==="number"))g18.commandRaise(g227,g19);
-v1.uniform1f(g225.location,v226);
-v229=a0["positionOffset"];
-if(!(v17(v229)&&v229.length===2))g18.commandRaise(g230,g19);
-v231=v229[0];
-v232=v229[1];
-v1.uniform2f(g228.location,v231,v232);
-v234=this["scale"];
-if(!(v17(v234)&&v234.length===2))g18.commandRaise(g235,g19);
-v236=v234[0];
-v237=v234[1];
-v1.uniform2f(g233.location,v236,v237);
-v239=this["translate"];
-if(!(v17(v239)&&v239.length===2))g18.commandRaise(g240,g19);
-v241=v239[0];
-v242=v239[1];
-v1.uniform2f(g238.location,v241,v242);
-v244=this["viewportArray"];
-if(!(v17(v244)&&v244.length===4))g18.commandRaise(g245,g19);
-v246=v244[0];
-v247=v244[1];
-v248=v244[2];
-v249=v244[3];
-v1.uniform4f(g243.location,v246,v247,v248,v249);
-v250=v6.elements;
-if(v250){
-v1.bindBuffer(34963,v250.buffer.buffer);
-}
-else if(v11.currentVAO){
-v250=v7.getElements(v11.currentVAO.elements);
-if(v250)v1.bindBuffer(34963,v250.buffer.buffer);
-}
-v251=a0["offset"];
-if(!(v251>=0))g18.commandRaise(g252,g19);
-v253=a0["count"];
-if(!(typeof v253==="number"&&v253>=0&&v253===(v253|0)))g18.commandRaise(g254,g19);
-if(v253){
-v255=v6.instances;
-if(v255>0){
-if(v250){
-v110.drawElementsInstancedANGLE(0,v253,v250.type,v251<<((v250.type-5121)>>1),v255);
-}
-else{
-v110.drawArraysInstancedANGLE(0,v251,v253,v255);
-}
-}
-else if(v255<0){
-if(v250){
-v1.drawElements(0,v253,v250.type,v251<<((v250.type-5121)>>1));
-}
-else{
-v1.drawArrays(0,v251,v253);
-}
-}
-v5.dirty=true;
-v11.setVAO(null);
-v2.viewportWidth=v102;
-v2.viewportHeight=v103;
-if(v107){
-g52.cpuTime+=performance.now()-v108;
-}
-if(v113){
-v8.destroyStream(v119);
-}
-if(v132){
-v8.destroyStream(v138);
-}
-if(v151){
-v8.destroyStream(v157);
-}
-if(v170){
-v8.destroyStream(v176);
-}
-v194.unbind();
-}
-}
-,"scope":function(a0,a1,a2){
-var v256,v257,v258,v259,v260,v261,v262,v263,v264,v265,v266,v268,v270,v272,v274,v276,v278,v280,v282,v284,v286,v288,v289,v290,v291,v292,v293,v294,v296,v297,v299,v300,v302,v303,v305,v306,v308,v309,v311,v312,v314,v315,v317,v318,v320,v321,v323,v324,v326,v327,v329,v330,v332,v333,v335,v336,v337,v338,v339,v340,v341,v342,v343,v344,v345,v346,v347,v348,v349,v351,v352,v353,v354,v355,v356,v357,v358,v359,v360,v361,v362,v363,v364,v365,v366,v367,v368,v369,v370,v371,v372,v373,v374,v375,v376,v378,v379,v380,v381,v382,v383,v384,v385,v386,v387,v388,v389,v390,v391,v392,v393,v394,v395,v396,v397,v398,v399,v400,v401,v402,v403,v405,v406,v407,v408,v409,v410,v411,v412,v413,v414,v415,v416,v417,v418,v419,v420,v421,v422,v423,v424,v425,v426,v427,v428,v429,v430,v432,v433,v434,v435,v436,v437,v438,v439,v440,v441,v442,v443,v445,v447;
-v256=this["viewport"];
-if(!(v256&&typeof v256==="object"))g18.commandRaise(g97,g19);
-v257=v256.x|0;
-v258=v256.y|0;
-v259="width" in v256?v256.width|0:(v2.framebufferWidth-v257);
-v260="height" in v256?v256.height|0:(v2.framebufferHeight-v258);
-if(!(v259>=0&&v260>=0))g18.commandRaise(g97,g19);
-v261=v2.viewportWidth;
-v2.viewportWidth=v259;
-v262=v2.viewportHeight;
-v2.viewportHeight=v260;
-v263=v42[0];
-v42[0]=v257;
-v264=v42[1];
-v42[1]=v258;
-v265=v42[2];
-v42[2]=v259;
-v266=v42[3];
-v42[3]=v260;
-v268=v20[0];
-v20[0]=g267;
-v270=v20[1];
-v20[1]=g269;
-v272=v20[2];
-v20[2]=g271;
-v274=v20[3];
-v20[3]=g273;
-v276=v4.blend_enable;
-v4.blend_enable=g275;
-v278=v24[0];
-v24[0]=g277;
-v280=v24[1];
-v24[1]=g279;
-v282=v24[2];
-v24[2]=g281;
-v284=v24[3];
-v24[3]=g283;
-v286=v4.depth_enable;
-v4.depth_enable=g285;
-v288=v4.stencil_enable;
-v4.stencil_enable=g287;
-v289=v5.profile;
-if(v289){
-v290=performance.now();
-g52.count++;
-}
-v291=a0["offset"];
-if(!(v291>=0))g18.commandRaise(g252,g19);
-v292=v6.offset;
-v6.offset=v291;
-v293=a0["count"];
-if(!(typeof v293==="number"&&v293>=0&&v293===(v293|0)))g18.commandRaise(g254,g19);
-v294=v6.count;
-v6.count=v293;
-v296=v6.primitive;
-v6.primitive=g295;
-v297=g202.call(this,v2,a0,a2);
-v299=v12[g298];
-v12[g298]=v297;
-v300=g196.call(this,v2,a0,a2);
-v302=v12[g301];
-v12[g301]=v300;
-v303=g191.call(this,v2,a0,a2);
-v305=v12[g304];
-v12[g304]=v303;
-v306=g211.call(this,v2,a0,a2);
-v308=v12[g307];
-v12[g307]=v306;
-v309=g222.call(this,v2,a0,a2);
-v311=v12[g310];
-v12[g310]=v309;
-v312=a0["color"];
-v314=v12[g313];
-v12[g313]=v312;
-v315=a0["opacity"];
-v317=v12[g316];
-v12[g316]=v315;
-v318=this["viewportArray"];
-v320=v12[g319];
-v12[g319]=v318;
-v321=this["scale"];
-v323=v12[g322];
-v12[g322]=v321;
-v324=a0["align"];
-v326=v12[g325];
-v12[g325]=v324;
-v327=a0["baseline"];
-v329=v12[g328];
-v12[g328]=v327;
-v330=this["translate"];
-v332=v12[g331];
-v12[g331]=v330;
-v333=a0["positionOffset"];
-v335=v12[g334];
-v12[g334]=v333;
-v336=this["charBuffer"];
-if(!(v336&&(typeof v336==="object"||typeof v336==="function")&&(v16(v336)||v8.getBuffer(v336)||v8.getBuffer(v336.buffer)||v16(v336.buffer)||("constant" in v336&&(typeof v336.constant==="number"||v17(v336.constant))))))g18.commandRaise(g112,g19);
-v337=false;
-v338=1;
-v339=0;
-v340=0;
-v341=0;
-v342=0;
-v343=null;
-v344=0;
-v345=false;
-v346=5126;
-v347=0;
-v348=0;
-v349=0;
-if(v16(v336)){
-v337=true;
-v343=v8.createStream(34962,v336);
-v346=v343.dtype;
-}
-else{
-v343=v8.getBuffer(v336);
-if(v343){
-v346=v343.dtype;
-}
-else if("constant" in v336){
-v338=2;
-if(typeof v336.constant === "number"){
-v339=v336.constant;
-v340=v341=v342=0;
-}
-else{
-v339=v336.constant.length>0?v336.constant[0]:0;
-v340=v336.constant.length>1?v336.constant[1]:0;
-v341=v336.constant.length>2?v336.constant[2]:0;
-v342=v336.constant.length>3?v336.constant[3]:0;
-}
-}
-else{
-if(v16(v336.buffer)){
-v343=v8.createStream(34962,v336.buffer);
-}
-else{
-v343=v8.getBuffer(v336.buffer);
-}
-v346="type" in v336?v49[v336.type]:v343.dtype;
-v345=!!v336.normalized;
-v344=v336.size|0;
-v347=v336.offset|0;
-v348=v336.stride|0;
-v349=v336.divisor|0;
-}
-}
-v351=g350.state;
-g350.state=v338;
-v352=g350.x;
-g350.x=v339;
-v353=g350.y;
-g350.y=v340;
-v354=g350.z;
-g350.z=v341;
-v355=g350.w;
-g350.w=v342;
-v356=g350.buffer;
-g350.buffer=v343;
-v357=g350.size;
-g350.size=v344;
-v358=g350.normalized;
-g350.normalized=v345;
-v359=g350.type;
-g350.type=v346;
-v360=g350.offset;
-g350.offset=v347;
-v361=g350.stride;
-g350.stride=v348;
-v362=g350.divisor;
-g350.divisor=v349;
-v363=this["position"];
-if(!(v363&&(typeof v363==="object"||typeof v363==="function")&&(v16(v363)||v8.getBuffer(v363)||v8.getBuffer(v363.buffer)||v16(v363.buffer)||("constant" in v363&&(typeof v363.constant==="number"||v17(v363.constant))))))g18.commandRaise(g150,g19);
-v364=false;
-v365=1;
-v366=0;
-v367=0;
-v368=0;
-v369=0;
-v370=null;
-v371=0;
-v372=false;
-v373=5126;
-v374=0;
-v375=0;
-v376=0;
-if(v16(v363)){
-v364=true;
-v370=v8.createStream(34962,v363);
-v373=v370.dtype;
-}
-else{
-v370=v8.getBuffer(v363);
-if(v370){
-v373=v370.dtype;
-}
-else if("constant" in v363){
-v365=2;
-if(typeof v363.constant === "number"){
-v366=v363.constant;
-v367=v368=v369=0;
-}
-else{
-v366=v363.constant.length>0?v363.constant[0]:0;
-v367=v363.constant.length>1?v363.constant[1]:0;
-v368=v363.constant.length>2?v363.constant[2]:0;
-v369=v363.constant.length>3?v363.constant[3]:0;
-}
-}
-else{
-if(v16(v363.buffer)){
-v370=v8.createStream(34962,v363.buffer);
-}
-else{
-v370=v8.getBuffer(v363.buffer);
-}
-v373="type" in v363?v49[v363.type]:v370.dtype;
-v372=!!v363.normalized;
-v371=v363.size|0;
-v374=v363.offset|0;
-v375=v363.stride|0;
-v376=v363.divisor|0;
-}
-}
-v378=g377.state;
-g377.state=v365;
-v379=g377.x;
-g377.x=v366;
-v380=g377.y;
-g377.y=v367;
-v381=g377.z;
-g377.z=v368;
-v382=g377.w;
-g377.w=v369;
-v383=g377.buffer;
-g377.buffer=v370;
-v384=g377.size;
-g377.size=v371;
-v385=g377.normalized;
-g377.normalized=v372;
-v386=g377.type;
-g377.type=v373;
-v387=g377.offset;
-g377.offset=v374;
-v388=g377.stride;
-g377.stride=v375;
-v389=g377.divisor;
-g377.divisor=v376;
-v390=this["sizeBuffer"];
-v53.buffer=v390;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g131,g19);
-v391=false;
-v392=1;
-v393=0;
-v394=0;
-v395=0;
-v396=0;
-v397=null;
-v398=0;
-v399=false;
-v400=5126;
-v401=0;
-v402=0;
-v403=0;
-if(v16(v53)){
-v391=true;
-v397=v8.createStream(34962,v53);
-v400=v397.dtype;
-}
-else{
-v397=v8.getBuffer(v53);
-if(v397){
-v400=v397.dtype;
-}
-else if("constant" in v53){
-v392=2;
-if(typeof v53.constant === "number"){
-v393=v53.constant;
-v394=v395=v396=0;
-}
-else{
-v393=v53.constant.length>0?v53.constant[0]:0;
-v394=v53.constant.length>1?v53.constant[1]:0;
-v395=v53.constant.length>2?v53.constant[2]:0;
-v396=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v397=v8.createStream(34962,v53.buffer);
-}
-else{
-v397=v8.getBuffer(v53.buffer);
-}
-v400="type" in v53?v49[v53.type]:v397.dtype;
-v399=!!v53.normalized;
-v398=v53.size|0;
-v401=v53.offset|0;
-v402=v53.stride|0;
-v403=v53.divisor|0;
-}
-}
-v405=g404.state;
-g404.state=v392;
-v406=g404.x;
-g404.x=v393;
-v407=g404.y;
-g404.y=v394;
-v408=g404.z;
-g404.z=v395;
-v409=g404.w;
-g404.w=v396;
-v410=g404.buffer;
-g404.buffer=v397;
-v411=g404.size;
-g404.size=v398;
-v412=g404.normalized;
-g404.normalized=v399;
-v413=g404.type;
-g404.type=v400;
-v414=g404.offset;
-g404.offset=v401;
-v415=g404.stride;
-g404.stride=v402;
-v416=g404.divisor;
-g404.divisor=v403;
-v417=this["sizeBuffer"];
-v54.buffer=v417;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g169,g19);
-v418=false;
-v419=1;
-v420=0;
-v421=0;
-v422=0;
-v423=0;
-v424=null;
-v425=0;
-v426=false;
-v427=5126;
-v428=0;
-v429=0;
-v430=0;
-if(v16(v54)){
-v418=true;
-v424=v8.createStream(34962,v54);
-v427=v424.dtype;
-}
-else{
-v424=v8.getBuffer(v54);
-if(v424){
-v427=v424.dtype;
-}
-else if("constant" in v54){
-v419=2;
-if(typeof v54.constant === "number"){
-v420=v54.constant;
-v421=v422=v423=0;
-}
-else{
-v420=v54.constant.length>0?v54.constant[0]:0;
-v421=v54.constant.length>1?v54.constant[1]:0;
-v422=v54.constant.length>2?v54.constant[2]:0;
-v423=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v424=v8.createStream(34962,v54.buffer);
-}
-else{
-v424=v8.getBuffer(v54.buffer);
-}
-v427="type" in v54?v49[v54.type]:v424.dtype;
-v426=!!v54.normalized;
-v425=v54.size|0;
-v428=v54.offset|0;
-v429=v54.stride|0;
-v430=v54.divisor|0;
-}
-}
-v432=g431.state;
-g431.state=v419;
-v433=g431.x;
-g431.x=v420;
-v434=g431.y;
-g431.y=v421;
-v435=g431.z;
-g431.z=v422;
-v436=g431.w;
-g431.w=v423;
-v437=g431.buffer;
-g431.buffer=v424;
-v438=g431.size;
-g431.size=v425;
-v439=g431.normalized;
-g431.normalized=v426;
-v440=g431.type;
-g431.type=v427;
-v441=g431.offset;
-g431.offset=v428;
-v442=g431.stride;
-g431.stride=v429;
-v443=g431.divisor;
-g431.divisor=v430;
-v445=v9.vert;
-v9.vert=g444;
-v447=v9.frag;
-v9.frag=g446;
-v5.dirty=true;
-a1(v2,a0,a2);
-v2.viewportWidth=v261;
-v2.viewportHeight=v262;
-v42[0]=v263;
-v42[1]=v264;
-v42[2]=v265;
-v42[3]=v266;
-v20[0]=v268;
-v20[1]=v270;
-v20[2]=v272;
-v20[3]=v274;
-v4.blend_enable=v276;
-v24[0]=v278;
-v24[1]=v280;
-v24[2]=v282;
-v24[3]=v284;
-v4.depth_enable=v286;
-v4.stencil_enable=v288;
-if(v289){
-g52.cpuTime+=performance.now()-v290;
-}
-v6.offset=v292;
-v6.count=v294;
-v6.primitive=v296;
-v12[g298]=v299;
-v12[g301]=v302;
-v12[g304]=v305;
-v12[g307]=v308;
-v12[g310]=v311;
-v12[g313]=v314;
-v12[g316]=v317;
-v12[g319]=v320;
-v12[g322]=v323;
-v12[g325]=v326;
-v12[g328]=v329;
-v12[g331]=v332;
-v12[g334]=v335;
-if(v337){
-v8.destroyStream(v343);
-}
-g350.state=v351;
-g350.x=v352;
-g350.y=v353;
-g350.z=v354;
-g350.w=v355;
-g350.buffer=v356;
-g350.size=v357;
-g350.normalized=v358;
-g350.type=v359;
-g350.offset=v360;
-g350.stride=v361;
-g350.divisor=v362;
-if(v364){
-v8.destroyStream(v370);
-}
-g377.state=v378;
-g377.x=v379;
-g377.y=v380;
-g377.z=v381;
-g377.w=v382;
-g377.buffer=v383;
-g377.size=v384;
-g377.normalized=v385;
-g377.type=v386;
-g377.offset=v387;
-g377.stride=v388;
-g377.divisor=v389;
-if(v391){
-v8.destroyStream(v397);
-}
-g404.state=v405;
-g404.x=v406;
-g404.y=v407;
-g404.z=v408;
-g404.w=v409;
-g404.buffer=v410;
-g404.size=v411;
-g404.normalized=v412;
-g404.type=v413;
-g404.offset=v414;
-g404.stride=v415;
-g404.divisor=v416;
-if(v418){
-v8.destroyStream(v424);
-}
-g431.state=v432;
-g431.x=v433;
-g431.y=v434;
-g431.z=v435;
-g431.w=v436;
-g431.buffer=v437;
-g431.size=v438;
-g431.normalized=v439;
-g431.type=v440;
-g431.offset=v441;
-g431.stride=v442;
-g431.divisor=v443;
-v9.vert=v445;
-v9.frag=v447;
-v5.dirty=true;
-}
-,"batch":function(a0,a1){
-var v448,v449,v489,v490,v491,v492,v493,v494,v495,v499,v500,v501,v502,v503;
-v448=v14.angle_instanced_arrays;
-v449=v13.next;
-if(v449!==v13.cur){
-if(v449){
-v1.bindFramebuffer(36160,v449.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v449;
-}
-if(v5.dirty){
-var v450,v451,v452,v453,v454,v455,v456,v457,v458,v459,v460,v461,v462,v463,v464,v465,v466,v467,v468,v469,v470,v471,v472,v473,v474,v475,v476,v477,v478,v479,v480,v481,v482,v483,v484,v485,v486,v487,v488;
-v450=v4.dither;
-if(v450!==v5.dither){
-if(v450){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v450;
-}
-v451=v22[0];
-v452=v22[1];
-if(v451!==v23[0]||v452!==v23[1]){
-v1.blendEquationSeparate(v451,v452);
-v23[0]=v451;
-v23[1]=v452;
-}
-v453=v4.depth_func;
-if(v453!==v5.depth_func){
-v1.depthFunc(v453);
-v5.depth_func=v453;
-}
-v454=v26[0];
-v455=v26[1];
-if(v454!==v27[0]||v455!==v27[1]){
-v1.depthRange(v454,v455);
-v27[0]=v454;
-v27[1]=v455;
-}
-v456=v4.depth_mask;
-if(v456!==v5.depth_mask){
-v1.depthMask(v456);
-v5.depth_mask=v456;
-}
-v457=v28[0];
-v458=v28[1];
-v459=v28[2];
-v460=v28[3];
-if(v457!==v29[0]||v458!==v29[1]||v459!==v29[2]||v460!==v29[3]){
-v1.colorMask(v457,v458,v459,v460);
-v29[0]=v457;
-v29[1]=v458;
-v29[2]=v459;
-v29[3]=v460;
-}
-v461=v4.cull_enable;
-if(v461!==v5.cull_enable){
-if(v461){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v461;
-}
-v462=v4.cull_face;
-if(v462!==v5.cull_face){
-v1.cullFace(v462);
-v5.cull_face=v462;
-}
-v463=v4.frontFace;
-if(v463!==v5.frontFace){
-v1.frontFace(v463);
-v5.frontFace=v463;
-}
-v464=v4.lineWidth;
-if(v464!==v5.lineWidth){
-v1.lineWidth(v464);
-v5.lineWidth=v464;
-}
-v465=v4.polygonOffset_enable;
-if(v465!==v5.polygonOffset_enable){
-if(v465){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v465;
-}
-v466=v30[0];
-v467=v30[1];
-if(v466!==v31[0]||v467!==v31[1]){
-v1.polygonOffset(v466,v467);
-v31[0]=v466;
-v31[1]=v467;
-}
-v468=v4.sample_alpha;
-if(v468!==v5.sample_alpha){
-if(v468){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v468;
-}
-v469=v4.sample_enable;
-if(v469!==v5.sample_enable){
-if(v469){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v469;
-}
-v470=v32[0];
-v471=v32[1];
-if(v470!==v33[0]||v471!==v33[1]){
-v1.sampleCoverage(v470,v471);
-v33[0]=v470;
-v33[1]=v471;
-}
-v472=v4.stencil_mask;
-if(v472!==v5.stencil_mask){
-v1.stencilMask(v472);
-v5.stencil_mask=v472;
-}
-v473=v34[0];
-v474=v34[1];
-v475=v34[2];
-if(v473!==v35[0]||v474!==v35[1]||v475!==v35[2]){
-v1.stencilFunc(v473,v474,v475);
-v35[0]=v473;
-v35[1]=v474;
-v35[2]=v475;
-}
-v476=v36[0];
-v477=v36[1];
-v478=v36[2];
-v479=v36[3];
-if(v476!==v37[0]||v477!==v37[1]||v478!==v37[2]||v479!==v37[3]){
-v1.stencilOpSeparate(v476,v477,v478,v479);
-v37[0]=v476;
-v37[1]=v477;
-v37[2]=v478;
-v37[3]=v479;
-}
-v480=v38[0];
-v481=v38[1];
-v482=v38[2];
-v483=v38[3];
-if(v480!==v39[0]||v481!==v39[1]||v482!==v39[2]||v483!==v39[3]){
-v1.stencilOpSeparate(v480,v481,v482,v483);
-v39[0]=v480;
-v39[1]=v481;
-v39[2]=v482;
-v39[3]=v483;
-}
-v484=v4.scissor_enable;
-if(v484!==v5.scissor_enable){
-if(v484){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=v484;
-}
-v485=v40[0];
-v486=v40[1];
-v487=v40[2];
-v488=v40[3];
-if(v485!==v41[0]||v486!==v41[1]||v487!==v41[2]||v488!==v41[3]){
-v1.scissor(v485,v486,v487,v488);
-v41[0]=v485;
-v41[1]=v486;
-v41[2]=v487;
-v41[3]=v488;
-}
-}
-v489=this["viewport"];
-if(!(v489&&typeof v489==="object"))g18.commandRaise(g97,g19);
-v490=v489.x|0;
-v491=v489.y|0;
-v492="width" in v489?v489.width|0:(v2.framebufferWidth-v490);
-v493="height" in v489?v489.height|0:(v2.framebufferHeight-v491);
-if(!(v492>=0&&v493>=0))g18.commandRaise(g97,g19);
-v494=v2.viewportWidth;
-v2.viewportWidth=v492;
-v495=v2.viewportHeight;
-v2.viewportHeight=v493;
-v1.viewport(v490,v491,v492,v493);
-v43[0]=v490;
-v43[1]=v491;
-v43[2]=v492;
-v43[3]=v493;
-v1.blendColor(0,0,0,1);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=1;
-if(g496){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g496;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g497){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g497;
-if(g498){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g498;
-v499=v5.profile;
-if(v499){
-v500=performance.now();
-g52.count+=a1;
-}
-v1.useProgram(g109.program);
-v501=v14.angle_instanced_arrays;
-var v504,v505,v506,v507,v508,v509,v510,v511,v512,v513,v514,v515,v516,v517,v518,v519,v520,v521,v522,v523,v524,v525,v526,v527,v528,v529,v530,v531,v532,v533,v534,v535,v536,v537,v538,v539,v540,v541,v542,v543,v544,v545,v546,v547,v548,v549,v550,v551,v552,v553,v554,v555,v556,v557,v558,v559,v560,v561,v562,v563,v564,v565,v566,v567,v568,v569,v570,v571,v572,v573,v574,v575,v576,v577,v578,v579,v580,v581,v582,v619,v622;
-v11.setVAO(null);
-v504=this["charBuffer"];
-if(!(v504&&(typeof v504==="object"||typeof v504==="function")&&(v16(v504)||v8.getBuffer(v504)||v8.getBuffer(v504.buffer)||v16(v504.buffer)||("constant" in v504&&(typeof v504.constant==="number"||v17(v504.constant))))))g18.commandRaise(g112,g19);
-v505=false;
-v506=1;
-v507=0;
-v508=0;
-v509=0;
-v510=0;
-v511=null;
-v512=0;
-v513=false;
-v514=5126;
-v515=0;
-v516=0;
-v517=0;
-if(v16(v504)){
-v505=true;
-v511=v8.createStream(34962,v504);
-v514=v511.dtype;
-}
-else{
-v511=v8.getBuffer(v504);
-if(v511){
-v514=v511.dtype;
-}
-else if("constant" in v504){
-v506=2;
-if(typeof v504.constant === "number"){
-v507=v504.constant;
-v508=v509=v510=0;
-}
-else{
-v507=v504.constant.length>0?v504.constant[0]:0;
-v508=v504.constant.length>1?v504.constant[1]:0;
-v509=v504.constant.length>2?v504.constant[2]:0;
-v510=v504.constant.length>3?v504.constant[3]:0;
-}
-}
-else{
-if(v16(v504.buffer)){
-v511=v8.createStream(34962,v504.buffer);
-}
-else{
-v511=v8.getBuffer(v504.buffer);
-}
-v514="type" in v504?v49[v504.type]:v511.dtype;
-v513=!!v504.normalized;
-v512=v504.size|0;
-v515=v504.offset|0;
-v516=v504.stride|0;
-v517=v504.divisor|0;
-}
-}
-v518=g126.location;
-v519=v10[v518];
-if(v506===1){
-if(!v519.buffer){
-v1.enableVertexAttribArray(v518);
-}
-v520=v512||1;
-if(v519.type!==v514||v519.size!==v520||v519.buffer!==v511||v519.normalized!==v513||v519.offset!==v515||v519.stride!==v516){
-v1.bindBuffer(34962,v511.buffer);
-v1.vertexAttribPointer(v518,v520,v514,v513,v516,v515);
-v519.type=v514;
-v519.size=v520;
-v519.buffer=v511;
-v519.normalized=v513;
-v519.offset=v515;
-v519.stride=v516;
-}
-if(v519.divisor!==v517){
-v501.vertexAttribDivisorANGLE(v518,v517);
-v519.divisor=v517;
-}
-}
-else{
-if(v519.buffer){
-v1.disableVertexAttribArray(v518);
-v519.buffer=null;
-}
-if(v519.x!==v507||v519.y!==v508||v519.z!==v509||v519.w!==v510){
-v1.vertexAttrib4f(v518,v507,v508,v509,v510);
-v519.x=v507;
-v519.y=v508;
-v519.z=v509;
-v519.w=v510;
-}
-}
-v521=this["sizeBuffer"];
-v53.buffer=v521;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g131,g19);
-v522=false;
-v523=1;
-v524=0;
-v525=0;
-v526=0;
-v527=0;
-v528=null;
-v529=0;
-v530=false;
-v531=5126;
-v532=0;
-v533=0;
-v534=0;
-if(v16(v53)){
-v522=true;
-v528=v8.createStream(34962,v53);
-v531=v528.dtype;
-}
-else{
-v528=v8.getBuffer(v53);
-if(v528){
-v531=v528.dtype;
-}
-else if("constant" in v53){
-v523=2;
-if(typeof v53.constant === "number"){
-v524=v53.constant;
-v525=v526=v527=0;
-}
-else{
-v524=v53.constant.length>0?v53.constant[0]:0;
-v525=v53.constant.length>1?v53.constant[1]:0;
-v526=v53.constant.length>2?v53.constant[2]:0;
-v527=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v528=v8.createStream(34962,v53.buffer);
-}
-else{
-v528=v8.getBuffer(v53.buffer);
-}
-v531="type" in v53?v49[v53.type]:v528.dtype;
-v530=!!v53.normalized;
-v529=v53.size|0;
-v532=v53.offset|0;
-v533=v53.stride|0;
-v534=v53.divisor|0;
-}
-}
-v535=g145.location;
-v536=v10[v535];
-if(v523===1){
-if(!v536.buffer){
-v1.enableVertexAttribArray(v535);
-}
-v537=v529||1;
-if(v536.type!==v531||v536.size!==v537||v536.buffer!==v528||v536.normalized!==v530||v536.offset!==v532||v536.stride!==v533){
-v1.bindBuffer(34962,v528.buffer);
-v1.vertexAttribPointer(v535,v537,v531,v530,v533,v532);
-v536.type=v531;
-v536.size=v537;
-v536.buffer=v528;
-v536.normalized=v530;
-v536.offset=v532;
-v536.stride=v533;
-}
-if(v536.divisor!==v534){
-v501.vertexAttribDivisorANGLE(v535,v534);
-v536.divisor=v534;
-}
-}
-else{
-if(v536.buffer){
-v1.disableVertexAttribArray(v535);
-v536.buffer=null;
-}
-if(v536.x!==v524||v536.y!==v525||v536.z!==v526||v536.w!==v527){
-v1.vertexAttrib4f(v535,v524,v525,v526,v527);
-v536.x=v524;
-v536.y=v525;
-v536.z=v526;
-v536.w=v527;
-}
-}
-v538=this["position"];
-if(!(v538&&(typeof v538==="object"||typeof v538==="function")&&(v16(v538)||v8.getBuffer(v538)||v8.getBuffer(v538.buffer)||v16(v538.buffer)||("constant" in v538&&(typeof v538.constant==="number"||v17(v538.constant))))))g18.commandRaise(g150,g19);
-v539=false;
-v540=1;
-v541=0;
-v542=0;
-v543=0;
-v544=0;
-v545=null;
-v546=0;
-v547=false;
-v548=5126;
-v549=0;
-v550=0;
-v551=0;
-if(v16(v538)){
-v539=true;
-v545=v8.createStream(34962,v538);
-v548=v545.dtype;
-}
-else{
-v545=v8.getBuffer(v538);
-if(v545){
-v548=v545.dtype;
-}
-else if("constant" in v538){
-v540=2;
-if(typeof v538.constant === "number"){
-v541=v538.constant;
-v542=v543=v544=0;
-}
-else{
-v541=v538.constant.length>0?v538.constant[0]:0;
-v542=v538.constant.length>1?v538.constant[1]:0;
-v543=v538.constant.length>2?v538.constant[2]:0;
-v544=v538.constant.length>3?v538.constant[3]:0;
-}
-}
-else{
-if(v16(v538.buffer)){
-v545=v8.createStream(34962,v538.buffer);
-}
-else{
-v545=v8.getBuffer(v538.buffer);
-}
-v548="type" in v538?v49[v538.type]:v545.dtype;
-v547=!!v538.normalized;
-v546=v538.size|0;
-v549=v538.offset|0;
-v550=v538.stride|0;
-v551=v538.divisor|0;
-}
-}
-v552=g164.location;
-v553=v10[v552];
-if(v540===1){
-if(!v553.buffer){
-v1.enableVertexAttribArray(v552);
-}
-v554=v546||2;
-if(v553.type!==v548||v553.size!==v554||v553.buffer!==v545||v553.normalized!==v547||v553.offset!==v549||v553.stride!==v550){
-v1.bindBuffer(34962,v545.buffer);
-v1.vertexAttribPointer(v552,v554,v548,v547,v550,v549);
-v553.type=v548;
-v553.size=v554;
-v553.buffer=v545;
-v553.normalized=v547;
-v553.offset=v549;
-v553.stride=v550;
-}
-if(v553.divisor!==v551){
-v501.vertexAttribDivisorANGLE(v552,v551);
-v553.divisor=v551;
-}
-}
-else{
-if(v553.buffer){
-v1.disableVertexAttribArray(v552);
-v553.buffer=null;
-}
-if(v553.x!==v541||v553.y!==v542||v553.z!==v543||v553.w!==v544){
-v1.vertexAttrib4f(v552,v541,v542,v543,v544);
-v553.x=v541;
-v553.y=v542;
-v553.z=v543;
-v553.w=v544;
-}
-}
-v555=this["sizeBuffer"];
-v54.buffer=v555;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g169,g19);
-v556=false;
-v557=1;
-v558=0;
-v559=0;
-v560=0;
-v561=0;
-v562=null;
-v563=0;
-v564=false;
-v565=5126;
-v566=0;
-v567=0;
-v568=0;
-if(v16(v54)){
-v556=true;
-v562=v8.createStream(34962,v54);
-v565=v562.dtype;
-}
-else{
-v562=v8.getBuffer(v54);
-if(v562){
-v565=v562.dtype;
-}
-else if("constant" in v54){
-v557=2;
-if(typeof v54.constant === "number"){
-v558=v54.constant;
-v559=v560=v561=0;
-}
-else{
-v558=v54.constant.length>0?v54.constant[0]:0;
-v559=v54.constant.length>1?v54.constant[1]:0;
-v560=v54.constant.length>2?v54.constant[2]:0;
-v561=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v562=v8.createStream(34962,v54.buffer);
-}
-else{
-v562=v8.getBuffer(v54.buffer);
-}
-v565="type" in v54?v49[v54.type]:v562.dtype;
-v564=!!v54.normalized;
-v563=v54.size|0;
-v566=v54.offset|0;
-v567=v54.stride|0;
-v568=v54.divisor|0;
-}
-}
-v569=g183.location;
-v570=v10[v569];
-if(v557===1){
-if(!v570.buffer){
-v1.enableVertexAttribArray(v569);
-}
-v571=v563||1;
-if(v570.type!==v565||v570.size!==v571||v570.buffer!==v562||v570.normalized!==v564||v570.offset!==v566||v570.stride!==v567){
-v1.bindBuffer(34962,v562.buffer);
-v1.vertexAttribPointer(v569,v571,v565,v564,v567,v566);
-v570.type=v565;
-v570.size=v571;
-v570.buffer=v562;
-v570.normalized=v564;
-v570.offset=v566;
-v570.stride=v567;
-}
-if(v570.divisor!==v568){
-v501.vertexAttribDivisorANGLE(v569,v568);
-v570.divisor=v568;
-}
-}
-else{
-if(v570.buffer){
-v1.disableVertexAttribArray(v569);
-v570.buffer=null;
-}
-if(v570.x!==v558||v570.y!==v559||v570.z!==v560||v570.w!==v561){
-v1.vertexAttrib4f(v569,v558,v559,v560,v561);
-v570.x=v558;
-v570.y=v559;
-v570.z=v560;
-v570.w=v561;
-}
-}
-v572=this["scale"];
-if(!(v17(v572)&&v572.length===2))g18.commandRaise(g235,g19);
-v573=v572[0];
-v574=v572[1];
-v1.uniform2f(g233.location,v573,v574);
-v575=this["translate"];
-if(!(v17(v575)&&v575.length===2))g18.commandRaise(g240,g19);
-v576=v575[0];
-v577=v575[1];
-v1.uniform2f(g238.location,v576,v577);
-v578=this["viewportArray"];
-if(!(v17(v578)&&v578.length===4))g18.commandRaise(g245,g19);
-v579=v578[0];
-v580=v578[1];
-v581=v578[2];
-v582=v578[3];
-v1.uniform4f(g243.location,v579,v580,v581,v582);
-v619=v6.elements;
-if(v619){
-v1.bindBuffer(34963,v619.buffer.buffer);
-}
-else if(v11.currentVAO){
-v619=v7.getElements(v11.currentVAO.elements);
-if(v619)v1.bindBuffer(34963,v619.buffer.buffer);
-}
-v622=v6.instances;
-for(v502=0;
-v502<a1;
-++v502){
-v503=a0[v502];
-var v583,v584,v585,v586,v587,v588,v589,v590,v591,v592,v593,v594,v595,v596,v597,v598,v599,v600,v601,v602,v603,v604,v605,v606,v607,v608,v609,v610,v611,v612,v613,v614,v615,v616,v617,v618,v620,v621;
-v583=v503["align"];
-if(!(typeof v583==="number"))g18.commandRaise(g189,g19);
-if(!v502||v584!==v583){
-v584=v583;
-v1.uniform1f(g187.location,v583);
-}
-v585=g191.call(this,v2,v503,v502);
-if(v585&&v585._reglType==="framebuffer"){
-v585=v585.color[0];
-}
-if(!(typeof v585==="function"&&v585._reglType==="texture2d"))g18.commandRaise(g193,g19);
-v586=v585._texture;
-v1.uniform1i(g190.location,v586.bind());
-v587=g196.call(this,v2,v503,v502);
-if(!(v17(v587)&&v587.length===2))g18.commandRaise(g198,g19);
-v588=v587[0];
-v590=v587[1];
-if(!v502||v589!==v588||v591!==v590){
-v589=v588;
-v591=v590;
-v1.uniform2f(g195.location,v588,v590);
-}
-v592=g202.call(this,v2,v503,v502);
-if(!(v17(v592)&&v592.length===2))g18.commandRaise(g204,g19);
-v593=v592[0];
-v595=v592[1];
-if(!v502||v594!==v593||v596!==v595){
-v594=v593;
-v596=v595;
-v1.uniform2f(g201.location,v593,v595);
-}
-v597=v503["baseline"];
-if(!(typeof v597==="number"))g18.commandRaise(g209,g19);
-if(!v502||v598!==v597){
-v598=v597;
-v1.uniform1f(g207.location,v597);
-}
-v599=g211.call(this,v2,v503,v502);
-if(!(typeof v599==="number"))g18.commandRaise(g213,g19);
-if(!v502||v600!==v599){
-v600=v599;
-v1.uniform1f(g210.location,v599);
-}
-v601=v503["color"];
-if(!(v17(v601)&&v601.length===4))g18.commandRaise(g216,g19);
-v602=v601[0];
-v604=v601[1];
-v606=v601[2];
-v608=v601[3];
-if(!v502||v603!==v602||v605!==v604||v607!==v606||v609!==v608){
-v603=v602;
-v605=v604;
-v607=v606;
-v609=v608;
-v1.uniform4f(g214.location,v602,v604,v606,v608);
-}
-v610=g222.call(this,v2,v503,v502);
-if(!(typeof v610==="number"))g18.commandRaise(g224,g19);
-if(!v502||v611!==v610){
-v611=v610;
-v1.uniform1f(g221.location,v610);
-}
-v612=v503["opacity"];
-if(!(typeof v612==="number"))g18.commandRaise(g227,g19);
-if(!v502||v613!==v612){
-v613=v612;
-v1.uniform1f(g225.location,v612);
-}
-v614=v503["positionOffset"];
-if(!(v17(v614)&&v614.length===2))g18.commandRaise(g230,g19);
-v615=v614[0];
-v617=v614[1];
-if(!v502||v616!==v615||v618!==v617){
-v616=v615;
-v618=v617;
-v1.uniform2f(g228.location,v615,v617);
-}
-v620=v503["offset"];
-if(!(v620>=0))g18.commandRaise(g252,g19);
-v621=v503["count"];
-if(!(typeof v621==="number"&&v621>=0&&v621===(v621|0)))g18.commandRaise(g254,g19);
-if(v621){
-if(v622>0){
-if(v619){
-v501.drawElementsInstancedANGLE(0,v621,v619.type,v620<<((v619.type-5121)>>1),v622);
-}
-else{
-v501.drawArraysInstancedANGLE(0,v620,v621,v622);
-}
-}
-else if(v622<0){
-if(v619){
-v1.drawElements(0,v621,v619.type,v620<<((v619.type-5121)>>1));
-}
-else{
-v1.drawArrays(0,v620,v621);
-}
-}
-v586.unbind();
-}
-}
-if(v505){
-v8.destroyStream(v511);
-}
-if(v522){
-v8.destroyStream(v528);
-}
-if(v539){
-v8.destroyStream(v545);
-}
-if(v556){
-v8.destroyStream(v562);
-}
-v5.dirty=true;
-v11.setVAO(null);
-v2.viewportWidth=v494;
-v2.viewportHeight=v495;
-if(v499){
-g52.cpuTime+=performance.now()-v500;
-}
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034 b/src/generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034
new file mode 100644
index 00000000000..8bf633d85f3
--- /dev/null
+++ b/src/generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034
@@ -0,0 +1,2000 @@
+module.exports = function anonymous(g0,g48,g99,g100,g101,g104,g120,g138,g156,g174,g178,g180,g181,g184,g185,g189,g190,g194,g196,g197,g199,g205,g206,g208,g210,g214,g218,g222,g243,g245,g247,g249,g251,g253,g255,g257,g259,g261,g263,g271,g274,g277,g280,g283,g286,g289,g292,g295,g298,g301,g304,g307,g310,g326,g353,g380,g407,g420,g422,g472,g473,g474
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v49,v50;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v49={
+}
+;
+v49.offset=4;
+v49.stride=8;
+v50={
+}
+;
+v50.offset=0;
+v50.stride=8;
+return {
+"draw":function(a0){
+var v51,v52,v92,v93,v94,v95,v96,v97,v98,v102,v103,v105,v106,v107,v108,v109,v110,v111,v112,v113,v114,v115,v116,v117,v118,v119,v121,v122,v123,v124,v125,v126,v127,v128,v129,v130,v131,v132,v133,v134,v135,v136,v137,v139,v140,v141,v142,v143,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v175,v176,v177,v179,v182,v183,v186,v187,v188,v191,v192,v193,v195,v198,v200,v201,v202,v203,v204,v207,v209,v211,v212,v213,v215,v216,v217,v219,v220,v221,v223,v224,v225,v226,v227,v228,v229,v230,v231;
+v51=v14.angle_instanced_arrays;
+v52=v13.next;
+if(v52!==v13.cur){
+if(v52){
+v1.bindFramebuffer(36160,v52.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v52;
+}
+if(v5.dirty){
+var v53,v54,v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91;
+v53=v4.dither;
+if(v53!==v5.dither){
+if(v53){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v53;
+}
+v54=v19[0];
+v55=v19[1];
+if(v54!==v20[0]||v55!==v20[1]){
+v1.blendEquationSeparate(v54,v55);
+v20[0]=v54;
+v20[1]=v55;
+}
+v56=v4.depth_func;
+if(v56!==v5.depth_func){
+v1.depthFunc(v56);
+v5.depth_func=v56;
+}
+v57=v23[0];
+v58=v23[1];
+if(v57!==v24[0]||v58!==v24[1]){
+v1.depthRange(v57,v58);
+v24[0]=v57;
+v24[1]=v58;
+}
+v59=v4.depth_mask;
+if(v59!==v5.depth_mask){
+v1.depthMask(v59);
+v5.depth_mask=v59;
+}
+v60=v25[0];
+v61=v25[1];
+v62=v25[2];
+v63=v25[3];
+if(v60!==v26[0]||v61!==v26[1]||v62!==v26[2]||v63!==v26[3]){
+v1.colorMask(v60,v61,v62,v63);
+v26[0]=v60;
+v26[1]=v61;
+v26[2]=v62;
+v26[3]=v63;
+}
+v64=v4.cull_enable;
+if(v64!==v5.cull_enable){
+if(v64){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v64;
+}
+v65=v4.cull_face;
+if(v65!==v5.cull_face){
+v1.cullFace(v65);
+v5.cull_face=v65;
+}
+v66=v4.frontFace;
+if(v66!==v5.frontFace){
+v1.frontFace(v66);
+v5.frontFace=v66;
+}
+v67=v4.lineWidth;
+if(v67!==v5.lineWidth){
+v1.lineWidth(v67);
+v5.lineWidth=v67;
+}
+v68=v4.polygonOffset_enable;
+if(v68!==v5.polygonOffset_enable){
+if(v68){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v68;
+}
+v69=v27[0];
+v70=v27[1];
+if(v69!==v28[0]||v70!==v28[1]){
+v1.polygonOffset(v69,v70);
+v28[0]=v69;
+v28[1]=v70;
+}
+v71=v4.sample_alpha;
+if(v71!==v5.sample_alpha){
+if(v71){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v71;
+}
+v72=v4.sample_enable;
+if(v72!==v5.sample_enable){
+if(v72){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v72;
+}
+v73=v29[0];
+v74=v29[1];
+if(v73!==v30[0]||v74!==v30[1]){
+v1.sampleCoverage(v73,v74);
+v30[0]=v73;
+v30[1]=v74;
+}
+v75=v4.stencil_mask;
+if(v75!==v5.stencil_mask){
+v1.stencilMask(v75);
+v5.stencil_mask=v75;
+}
+v76=v31[0];
+v77=v31[1];
+v78=v31[2];
+if(v76!==v32[0]||v77!==v32[1]||v78!==v32[2]){
+v1.stencilFunc(v76,v77,v78);
+v32[0]=v76;
+v32[1]=v77;
+v32[2]=v78;
+}
+v79=v33[0];
+v80=v33[1];
+v81=v33[2];
+v82=v33[3];
+if(v79!==v34[0]||v80!==v34[1]||v81!==v34[2]||v82!==v34[3]){
+v1.stencilOpSeparate(v79,v80,v81,v82);
+v34[0]=v79;
+v34[1]=v80;
+v34[2]=v81;
+v34[3]=v82;
+}
+v83=v35[0];
+v84=v35[1];
+v85=v35[2];
+v86=v35[3];
+if(v83!==v36[0]||v84!==v36[1]||v85!==v36[2]||v86!==v36[3]){
+v1.stencilOpSeparate(v83,v84,v85,v86);
+v36[0]=v83;
+v36[1]=v84;
+v36[2]=v85;
+v36[3]=v86;
+}
+v87=v4.scissor_enable;
+if(v87!==v5.scissor_enable){
+if(v87){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=v87;
+}
+v88=v37[0];
+v89=v37[1];
+v90=v37[2];
+v91=v37[3];
+if(v88!==v38[0]||v89!==v38[1]||v90!==v38[2]||v91!==v38[3]){
+v1.scissor(v88,v89,v90,v91);
+v38[0]=v88;
+v38[1]=v89;
+v38[2]=v90;
+v38[3]=v91;
+}
+}
+v92=this["viewport"];
+v93=v92.x|0;
+v94=v92.y|0;
+v95="width" in v92?v92.width|0:(v2.framebufferWidth-v93);
+v96="height" in v92?v92.height|0:(v2.framebufferHeight-v94);
+v97=v2.viewportWidth;
+v2.viewportWidth=v95;
+v98=v2.viewportHeight;
+v2.viewportHeight=v96;
+v1.viewport(v93,v94,v95,v96);
+v40[0]=v93;
+v40[1]=v94;
+v40[2]=v95;
+v40[3]=v96;
+v1.blendColor(0,0,0,1);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=1;
+if(g99){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g99;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g100){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g100;
+if(g101){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g101;
+v102=v5.profile;
+if(v102){
+v103=performance.now();
+g48.count++;
+}
+v1.useProgram(g104.program);
+v105=v14.angle_instanced_arrays;
+v11.setVAO(null);
+v106=this["charBuffer"];
+v107=false;
+v108=1;
+v109=0;
+v110=0;
+v111=0;
+v112=0;
+v113=null;
+v114=0;
+v115=false;
+v116=5126;
+v117=0;
+v118=0;
+v119=0;
+if(v16(v106)){
+v107=true;
+v113=v8.createStream(34962,v106);
+v116=v113.dtype;
+}
+else{
+v113=v8.getBuffer(v106);
+if(v113){
+v116=v113.dtype;
+}
+else if("constant" in v106){
+v108=2;
+if(typeof v106.constant === "number"){
+v109=v106.constant;
+v110=v111=v112=0;
+}
+else{
+v109=v106.constant.length>0?v106.constant[0]:0;
+v110=v106.constant.length>1?v106.constant[1]:0;
+v111=v106.constant.length>2?v106.constant[2]:0;
+v112=v106.constant.length>3?v106.constant[3]:0;
+}
+}
+else{
+if(v16(v106.buffer)){
+v113=v8.createStream(34962,v106.buffer);
+}
+else{
+v113=v8.getBuffer(v106.buffer);
+}
+v116="type" in v106?v46[v106.type]:v113.dtype;
+v115=!!v106.normalized;
+v114=v106.size|0;
+v117=v106.offset|0;
+v118=v106.stride|0;
+v119=v106.divisor|0;
+}
+}
+v121=g120.location;
+v122=v10[v121];
+if(v108===1){
+if(!v122.buffer){
+v1.enableVertexAttribArray(v121);
+}
+v123=v114||1;
+if(v122.type!==v116||v122.size!==v123||v122.buffer!==v113||v122.normalized!==v115||v122.offset!==v117||v122.stride!==v118){
+v1.bindBuffer(34962,v113.buffer);
+v1.vertexAttribPointer(v121,v123,v116,v115,v118,v117);
+v122.type=v116;
+v122.size=v123;
+v122.buffer=v113;
+v122.normalized=v115;
+v122.offset=v117;
+v122.stride=v118;
+}
+if(v122.divisor!==v119){
+v105.vertexAttribDivisorANGLE(v121,v119);
+v122.divisor=v119;
+}
+}
+else{
+if(v122.buffer){
+v1.disableVertexAttribArray(v121);
+v122.buffer=null;
+}
+if(v122.x!==v109||v122.y!==v110||v122.z!==v111||v122.w!==v112){
+v1.vertexAttrib4f(v121,v109,v110,v111,v112);
+v122.x=v109;
+v122.y=v110;
+v122.z=v111;
+v122.w=v112;
+}
+}
+v124=this["sizeBuffer"];
+v49.buffer=v124;
+v125=false;
+v126=1;
+v127=0;
+v128=0;
+v129=0;
+v130=0;
+v131=null;
+v132=0;
+v133=false;
+v134=5126;
+v135=0;
+v136=0;
+v137=0;
+if(v16(v49)){
+v125=true;
+v131=v8.createStream(34962,v49);
+v134=v131.dtype;
+}
+else{
+v131=v8.getBuffer(v49);
+if(v131){
+v134=v131.dtype;
+}
+else if("constant" in v49){
+v126=2;
+if(typeof v49.constant === "number"){
+v127=v49.constant;
+v128=v129=v130=0;
+}
+else{
+v127=v49.constant.length>0?v49.constant[0]:0;
+v128=v49.constant.length>1?v49.constant[1]:0;
+v129=v49.constant.length>2?v49.constant[2]:0;
+v130=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v131=v8.createStream(34962,v49.buffer);
+}
+else{
+v131=v8.getBuffer(v49.buffer);
+}
+v134="type" in v49?v46[v49.type]:v131.dtype;
+v133=!!v49.normalized;
+v132=v49.size|0;
+v135=v49.offset|0;
+v136=v49.stride|0;
+v137=v49.divisor|0;
+}
+}
+v139=g138.location;
+v140=v10[v139];
+if(v126===1){
+if(!v140.buffer){
+v1.enableVertexAttribArray(v139);
+}
+v141=v132||1;
+if(v140.type!==v134||v140.size!==v141||v140.buffer!==v131||v140.normalized!==v133||v140.offset!==v135||v140.stride!==v136){
+v1.bindBuffer(34962,v131.buffer);
+v1.vertexAttribPointer(v139,v141,v134,v133,v136,v135);
+v140.type=v134;
+v140.size=v141;
+v140.buffer=v131;
+v140.normalized=v133;
+v140.offset=v135;
+v140.stride=v136;
+}
+if(v140.divisor!==v137){
+v105.vertexAttribDivisorANGLE(v139,v137);
+v140.divisor=v137;
+}
+}
+else{
+if(v140.buffer){
+v1.disableVertexAttribArray(v139);
+v140.buffer=null;
+}
+if(v140.x!==v127||v140.y!==v128||v140.z!==v129||v140.w!==v130){
+v1.vertexAttrib4f(v139,v127,v128,v129,v130);
+v140.x=v127;
+v140.y=v128;
+v140.z=v129;
+v140.w=v130;
+}
+}
+v142=this["position"];
+v143=false;
+v144=1;
+v145=0;
+v146=0;
+v147=0;
+v148=0;
+v149=null;
+v150=0;
+v151=false;
+v152=5126;
+v153=0;
+v154=0;
+v155=0;
+if(v16(v142)){
+v143=true;
+v149=v8.createStream(34962,v142);
+v152=v149.dtype;
+}
+else{
+v149=v8.getBuffer(v142);
+if(v149){
+v152=v149.dtype;
+}
+else if("constant" in v142){
+v144=2;
+if(typeof v142.constant === "number"){
+v145=v142.constant;
+v146=v147=v148=0;
+}
+else{
+v145=v142.constant.length>0?v142.constant[0]:0;
+v146=v142.constant.length>1?v142.constant[1]:0;
+v147=v142.constant.length>2?v142.constant[2]:0;
+v148=v142.constant.length>3?v142.constant[3]:0;
+}
+}
+else{
+if(v16(v142.buffer)){
+v149=v8.createStream(34962,v142.buffer);
+}
+else{
+v149=v8.getBuffer(v142.buffer);
+}
+v152="type" in v142?v46[v142.type]:v149.dtype;
+v151=!!v142.normalized;
+v150=v142.size|0;
+v153=v142.offset|0;
+v154=v142.stride|0;
+v155=v142.divisor|0;
+}
+}
+v157=g156.location;
+v158=v10[v157];
+if(v144===1){
+if(!v158.buffer){
+v1.enableVertexAttribArray(v157);
+}
+v159=v150||2;
+if(v158.type!==v152||v158.size!==v159||v158.buffer!==v149||v158.normalized!==v151||v158.offset!==v153||v158.stride!==v154){
+v1.bindBuffer(34962,v149.buffer);
+v1.vertexAttribPointer(v157,v159,v152,v151,v154,v153);
+v158.type=v152;
+v158.size=v159;
+v158.buffer=v149;
+v158.normalized=v151;
+v158.offset=v153;
+v158.stride=v154;
+}
+if(v158.divisor!==v155){
+v105.vertexAttribDivisorANGLE(v157,v155);
+v158.divisor=v155;
+}
+}
+else{
+if(v158.buffer){
+v1.disableVertexAttribArray(v157);
+v158.buffer=null;
+}
+if(v158.x!==v145||v158.y!==v146||v158.z!==v147||v158.w!==v148){
+v1.vertexAttrib4f(v157,v145,v146,v147,v148);
+v158.x=v145;
+v158.y=v146;
+v158.z=v147;
+v158.w=v148;
+}
+}
+v160=this["sizeBuffer"];
+v50.buffer=v160;
+v161=false;
+v162=1;
+v163=0;
+v164=0;
+v165=0;
+v166=0;
+v167=null;
+v168=0;
+v169=false;
+v170=5126;
+v171=0;
+v172=0;
+v173=0;
+if(v16(v50)){
+v161=true;
+v167=v8.createStream(34962,v50);
+v170=v167.dtype;
+}
+else{
+v167=v8.getBuffer(v50);
+if(v167){
+v170=v167.dtype;
+}
+else if("constant" in v50){
+v162=2;
+if(typeof v50.constant === "number"){
+v163=v50.constant;
+v164=v165=v166=0;
+}
+else{
+v163=v50.constant.length>0?v50.constant[0]:0;
+v164=v50.constant.length>1?v50.constant[1]:0;
+v165=v50.constant.length>2?v50.constant[2]:0;
+v166=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v167=v8.createStream(34962,v50.buffer);
+}
+else{
+v167=v8.getBuffer(v50.buffer);
+}
+v170="type" in v50?v46[v50.type]:v167.dtype;
+v169=!!v50.normalized;
+v168=v50.size|0;
+v171=v50.offset|0;
+v172=v50.stride|0;
+v173=v50.divisor|0;
+}
+}
+v175=g174.location;
+v176=v10[v175];
+if(v162===1){
+if(!v176.buffer){
+v1.enableVertexAttribArray(v175);
+}
+v177=v168||1;
+if(v176.type!==v170||v176.size!==v177||v176.buffer!==v167||v176.normalized!==v169||v176.offset!==v171||v176.stride!==v172){
+v1.bindBuffer(34962,v167.buffer);
+v1.vertexAttribPointer(v175,v177,v170,v169,v172,v171);
+v176.type=v170;
+v176.size=v177;
+v176.buffer=v167;
+v176.normalized=v169;
+v176.offset=v171;
+v176.stride=v172;
+}
+if(v176.divisor!==v173){
+v105.vertexAttribDivisorANGLE(v175,v173);
+v176.divisor=v173;
+}
+}
+else{
+if(v176.buffer){
+v1.disableVertexAttribArray(v175);
+v176.buffer=null;
+}
+if(v176.x!==v163||v176.y!==v164||v176.z!==v165||v176.w!==v166){
+v1.vertexAttrib4f(v175,v163,v164,v165,v166);
+v176.x=v163;
+v176.y=v164;
+v176.z=v165;
+v176.w=v166;
+}
+}
+v179=a0["align"];
+v1.uniform1f(g178.location,v179);
+v182=g181.call(this,v2,a0,0);
+if(v182&&v182._reglType==="framebuffer"){
+v182=v182.color[0];
+}
+v183=v182._texture;
+v1.uniform1i(g180.location,v183.bind());
+v186=g185.call(this,v2,a0,0);
+v187=v186[0];
+v188=v186[1];
+v1.uniform2f(g184.location,v187,v188);
+v191=g190.call(this,v2,a0,0);
+v192=v191[0];
+v193=v191[1];
+v1.uniform2f(g189.location,v192,v193);
+v195=a0["baseline"];
+v1.uniform1f(g194.location,v195);
+v198=g197.call(this,v2,a0,0);
+v1.uniform1f(g196.location,v198);
+v200=a0["color"];
+v201=v200[0];
+v202=v200[1];
+v203=v200[2];
+v204=v200[3];
+v1.uniform4f(g199.location,v201,v202,v203,v204);
+v207=g206.call(this,v2,a0,0);
+v1.uniform1f(g205.location,v207);
+v209=a0["opacity"];
+v1.uniform1f(g208.location,v209);
+v211=a0["positionOffset"];
+v212=v211[0];
+v213=v211[1];
+v1.uniform2f(g210.location,v212,v213);
+v215=this["scale"];
+v216=v215[0];
+v217=v215[1];
+v1.uniform2f(g214.location,v216,v217);
+v219=this["translate"];
+v220=v219[0];
+v221=v219[1];
+v1.uniform2f(g218.location,v220,v221);
+v223=this["viewportArray"];
+v224=v223[0];
+v225=v223[1];
+v226=v223[2];
+v227=v223[3];
+v1.uniform4f(g222.location,v224,v225,v226,v227);
+v228=v6.elements;
+if(v228){
+v1.bindBuffer(34963,v228.buffer.buffer);
+}
+else if(v11.currentVAO){
+v228=v7.getElements(v11.currentVAO.elements);
+if(v228)v1.bindBuffer(34963,v228.buffer.buffer);
+}
+v229=a0["offset"];
+v230=a0["count"];
+if(v230){
+v231=v6.instances;
+if(v231>0){
+if(v228){
+v105.drawElementsInstancedANGLE(0,v230,v228.type,v229<<((v228.type-5121)>>1),v231);
+}
+else{
+v105.drawArraysInstancedANGLE(0,v229,v230,v231);
+}
+}
+else if(v231<0){
+if(v228){
+v1.drawElements(0,v230,v228.type,v229<<((v228.type-5121)>>1));
+}
+else{
+v1.drawArrays(0,v229,v230);
+}
+}
+v5.dirty=true;
+v11.setVAO(null);
+v2.viewportWidth=v97;
+v2.viewportHeight=v98;
+if(v102){
+g48.cpuTime+=performance.now()-v103;
+}
+if(v107){
+v8.destroyStream(v113);
+}
+if(v125){
+v8.destroyStream(v131);
+}
+if(v143){
+v8.destroyStream(v149);
+}
+if(v161){
+v8.destroyStream(v167);
+}
+v183.unbind();
+}
+}
+,"scope":function(a0,a1,a2){
+var v232,v233,v234,v235,v236,v237,v238,v239,v240,v241,v242,v244,v246,v248,v250,v252,v254,v256,v258,v260,v262,v264,v265,v266,v267,v268,v269,v270,v272,v273,v275,v276,v278,v279,v281,v282,v284,v285,v287,v288,v290,v291,v293,v294,v296,v297,v299,v300,v302,v303,v305,v306,v308,v309,v311,v312,v313,v314,v315,v316,v317,v318,v319,v320,v321,v322,v323,v324,v325,v327,v328,v329,v330,v331,v332,v333,v334,v335,v336,v337,v338,v339,v340,v341,v342,v343,v344,v345,v346,v347,v348,v349,v350,v351,v352,v354,v355,v356,v357,v358,v359,v360,v361,v362,v363,v364,v365,v366,v367,v368,v369,v370,v371,v372,v373,v374,v375,v376,v377,v378,v379,v381,v382,v383,v384,v385,v386,v387,v388,v389,v390,v391,v392,v393,v394,v395,v396,v397,v398,v399,v400,v401,v402,v403,v404,v405,v406,v408,v409,v410,v411,v412,v413,v414,v415,v416,v417,v418,v419,v421,v423;
+v232=this["viewport"];
+v233=v232.x|0;
+v234=v232.y|0;
+v235="width" in v232?v232.width|0:(v2.framebufferWidth-v233);
+v236="height" in v232?v232.height|0:(v2.framebufferHeight-v234);
+v237=v2.viewportWidth;
+v2.viewportWidth=v235;
+v238=v2.viewportHeight;
+v2.viewportHeight=v236;
+v239=v39[0];
+v39[0]=v233;
+v240=v39[1];
+v39[1]=v234;
+v241=v39[2];
+v39[2]=v235;
+v242=v39[3];
+v39[3]=v236;
+v244=v17[0];
+v17[0]=g243;
+v246=v17[1];
+v17[1]=g245;
+v248=v17[2];
+v17[2]=g247;
+v250=v17[3];
+v17[3]=g249;
+v252=v4.blend_enable;
+v4.blend_enable=g251;
+v254=v21[0];
+v21[0]=g253;
+v256=v21[1];
+v21[1]=g255;
+v258=v21[2];
+v21[2]=g257;
+v260=v21[3];
+v21[3]=g259;
+v262=v4.depth_enable;
+v4.depth_enable=g261;
+v264=v4.stencil_enable;
+v4.stencil_enable=g263;
+v265=v5.profile;
+if(v265){
+v266=performance.now();
+g48.count++;
+}
+v267=a0["offset"];
+v268=v6.offset;
+v6.offset=v267;
+v269=a0["count"];
+v270=v6.count;
+v6.count=v269;
+v272=v6.primitive;
+v6.primitive=g271;
+v273=g190.call(this,v2,a0,a2);
+v275=v12[g274];
+v12[g274]=v273;
+v276=g185.call(this,v2,a0,a2);
+v278=v12[g277];
+v12[g277]=v276;
+v279=g181.call(this,v2,a0,a2);
+v281=v12[g280];
+v12[g280]=v279;
+v282=g197.call(this,v2,a0,a2);
+v284=v12[g283];
+v12[g283]=v282;
+v285=g206.call(this,v2,a0,a2);
+v287=v12[g286];
+v12[g286]=v285;
+v288=a0["color"];
+v290=v12[g289];
+v12[g289]=v288;
+v291=a0["opacity"];
+v293=v12[g292];
+v12[g292]=v291;
+v294=this["viewportArray"];
+v296=v12[g295];
+v12[g295]=v294;
+v297=this["scale"];
+v299=v12[g298];
+v12[g298]=v297;
+v300=a0["align"];
+v302=v12[g301];
+v12[g301]=v300;
+v303=a0["baseline"];
+v305=v12[g304];
+v12[g304]=v303;
+v306=this["translate"];
+v308=v12[g307];
+v12[g307]=v306;
+v309=a0["positionOffset"];
+v311=v12[g310];
+v12[g310]=v309;
+v312=this["charBuffer"];
+v313=false;
+v314=1;
+v315=0;
+v316=0;
+v317=0;
+v318=0;
+v319=null;
+v320=0;
+v321=false;
+v322=5126;
+v323=0;
+v324=0;
+v325=0;
+if(v16(v312)){
+v313=true;
+v319=v8.createStream(34962,v312);
+v322=v319.dtype;
+}
+else{
+v319=v8.getBuffer(v312);
+if(v319){
+v322=v319.dtype;
+}
+else if("constant" in v312){
+v314=2;
+if(typeof v312.constant === "number"){
+v315=v312.constant;
+v316=v317=v318=0;
+}
+else{
+v315=v312.constant.length>0?v312.constant[0]:0;
+v316=v312.constant.length>1?v312.constant[1]:0;
+v317=v312.constant.length>2?v312.constant[2]:0;
+v318=v312.constant.length>3?v312.constant[3]:0;
+}
+}
+else{
+if(v16(v312.buffer)){
+v319=v8.createStream(34962,v312.buffer);
+}
+else{
+v319=v8.getBuffer(v312.buffer);
+}
+v322="type" in v312?v46[v312.type]:v319.dtype;
+v321=!!v312.normalized;
+v320=v312.size|0;
+v323=v312.offset|0;
+v324=v312.stride|0;
+v325=v312.divisor|0;
+}
+}
+v327=g326.state;
+g326.state=v314;
+v328=g326.x;
+g326.x=v315;
+v329=g326.y;
+g326.y=v316;
+v330=g326.z;
+g326.z=v317;
+v331=g326.w;
+g326.w=v318;
+v332=g326.buffer;
+g326.buffer=v319;
+v333=g326.size;
+g326.size=v320;
+v334=g326.normalized;
+g326.normalized=v321;
+v335=g326.type;
+g326.type=v322;
+v336=g326.offset;
+g326.offset=v323;
+v337=g326.stride;
+g326.stride=v324;
+v338=g326.divisor;
+g326.divisor=v325;
+v339=this["position"];
+v340=false;
+v341=1;
+v342=0;
+v343=0;
+v344=0;
+v345=0;
+v346=null;
+v347=0;
+v348=false;
+v349=5126;
+v350=0;
+v351=0;
+v352=0;
+if(v16(v339)){
+v340=true;
+v346=v8.createStream(34962,v339);
+v349=v346.dtype;
+}
+else{
+v346=v8.getBuffer(v339);
+if(v346){
+v349=v346.dtype;
+}
+else if("constant" in v339){
+v341=2;
+if(typeof v339.constant === "number"){
+v342=v339.constant;
+v343=v344=v345=0;
+}
+else{
+v342=v339.constant.length>0?v339.constant[0]:0;
+v343=v339.constant.length>1?v339.constant[1]:0;
+v344=v339.constant.length>2?v339.constant[2]:0;
+v345=v339.constant.length>3?v339.constant[3]:0;
+}
+}
+else{
+if(v16(v339.buffer)){
+v346=v8.createStream(34962,v339.buffer);
+}
+else{
+v346=v8.getBuffer(v339.buffer);
+}
+v349="type" in v339?v46[v339.type]:v346.dtype;
+v348=!!v339.normalized;
+v347=v339.size|0;
+v350=v339.offset|0;
+v351=v339.stride|0;
+v352=v339.divisor|0;
+}
+}
+v354=g353.state;
+g353.state=v341;
+v355=g353.x;
+g353.x=v342;
+v356=g353.y;
+g353.y=v343;
+v357=g353.z;
+g353.z=v344;
+v358=g353.w;
+g353.w=v345;
+v359=g353.buffer;
+g353.buffer=v346;
+v360=g353.size;
+g353.size=v347;
+v361=g353.normalized;
+g353.normalized=v348;
+v362=g353.type;
+g353.type=v349;
+v363=g353.offset;
+g353.offset=v350;
+v364=g353.stride;
+g353.stride=v351;
+v365=g353.divisor;
+g353.divisor=v352;
+v366=this["sizeBuffer"];
+v49.buffer=v366;
+v367=false;
+v368=1;
+v369=0;
+v370=0;
+v371=0;
+v372=0;
+v373=null;
+v374=0;
+v375=false;
+v376=5126;
+v377=0;
+v378=0;
+v379=0;
+if(v16(v49)){
+v367=true;
+v373=v8.createStream(34962,v49);
+v376=v373.dtype;
+}
+else{
+v373=v8.getBuffer(v49);
+if(v373){
+v376=v373.dtype;
+}
+else if("constant" in v49){
+v368=2;
+if(typeof v49.constant === "number"){
+v369=v49.constant;
+v370=v371=v372=0;
+}
+else{
+v369=v49.constant.length>0?v49.constant[0]:0;
+v370=v49.constant.length>1?v49.constant[1]:0;
+v371=v49.constant.length>2?v49.constant[2]:0;
+v372=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v373=v8.createStream(34962,v49.buffer);
+}
+else{
+v373=v8.getBuffer(v49.buffer);
+}
+v376="type" in v49?v46[v49.type]:v373.dtype;
+v375=!!v49.normalized;
+v374=v49.size|0;
+v377=v49.offset|0;
+v378=v49.stride|0;
+v379=v49.divisor|0;
+}
+}
+v381=g380.state;
+g380.state=v368;
+v382=g380.x;
+g380.x=v369;
+v383=g380.y;
+g380.y=v370;
+v384=g380.z;
+g380.z=v371;
+v385=g380.w;
+g380.w=v372;
+v386=g380.buffer;
+g380.buffer=v373;
+v387=g380.size;
+g380.size=v374;
+v388=g380.normalized;
+g380.normalized=v375;
+v389=g380.type;
+g380.type=v376;
+v390=g380.offset;
+g380.offset=v377;
+v391=g380.stride;
+g380.stride=v378;
+v392=g380.divisor;
+g380.divisor=v379;
+v393=this["sizeBuffer"];
+v50.buffer=v393;
+v394=false;
+v395=1;
+v396=0;
+v397=0;
+v398=0;
+v399=0;
+v400=null;
+v401=0;
+v402=false;
+v403=5126;
+v404=0;
+v405=0;
+v406=0;
+if(v16(v50)){
+v394=true;
+v400=v8.createStream(34962,v50);
+v403=v400.dtype;
+}
+else{
+v400=v8.getBuffer(v50);
+if(v400){
+v403=v400.dtype;
+}
+else if("constant" in v50){
+v395=2;
+if(typeof v50.constant === "number"){
+v396=v50.constant;
+v397=v398=v399=0;
+}
+else{
+v396=v50.constant.length>0?v50.constant[0]:0;
+v397=v50.constant.length>1?v50.constant[1]:0;
+v398=v50.constant.length>2?v50.constant[2]:0;
+v399=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v400=v8.createStream(34962,v50.buffer);
+}
+else{
+v400=v8.getBuffer(v50.buffer);
+}
+v403="type" in v50?v46[v50.type]:v400.dtype;
+v402=!!v50.normalized;
+v401=v50.size|0;
+v404=v50.offset|0;
+v405=v50.stride|0;
+v406=v50.divisor|0;
+}
+}
+v408=g407.state;
+g407.state=v395;
+v409=g407.x;
+g407.x=v396;
+v410=g407.y;
+g407.y=v397;
+v411=g407.z;
+g407.z=v398;
+v412=g407.w;
+g407.w=v399;
+v413=g407.buffer;
+g407.buffer=v400;
+v414=g407.size;
+g407.size=v401;
+v415=g407.normalized;
+g407.normalized=v402;
+v416=g407.type;
+g407.type=v403;
+v417=g407.offset;
+g407.offset=v404;
+v418=g407.stride;
+g407.stride=v405;
+v419=g407.divisor;
+g407.divisor=v406;
+v421=v9.vert;
+v9.vert=g420;
+v423=v9.frag;
+v9.frag=g422;
+v5.dirty=true;
+a1(v2,a0,a2);
+v2.viewportWidth=v237;
+v2.viewportHeight=v238;
+v39[0]=v239;
+v39[1]=v240;
+v39[2]=v241;
+v39[3]=v242;
+v17[0]=v244;
+v17[1]=v246;
+v17[2]=v248;
+v17[3]=v250;
+v4.blend_enable=v252;
+v21[0]=v254;
+v21[1]=v256;
+v21[2]=v258;
+v21[3]=v260;
+v4.depth_enable=v262;
+v4.stencil_enable=v264;
+if(v265){
+g48.cpuTime+=performance.now()-v266;
+}
+v6.offset=v268;
+v6.count=v270;
+v6.primitive=v272;
+v12[g274]=v275;
+v12[g277]=v278;
+v12[g280]=v281;
+v12[g283]=v284;
+v12[g286]=v287;
+v12[g289]=v290;
+v12[g292]=v293;
+v12[g295]=v296;
+v12[g298]=v299;
+v12[g301]=v302;
+v12[g304]=v305;
+v12[g307]=v308;
+v12[g310]=v311;
+if(v313){
+v8.destroyStream(v319);
+}
+g326.state=v327;
+g326.x=v328;
+g326.y=v329;
+g326.z=v330;
+g326.w=v331;
+g326.buffer=v332;
+g326.size=v333;
+g326.normalized=v334;
+g326.type=v335;
+g326.offset=v336;
+g326.stride=v337;
+g326.divisor=v338;
+if(v340){
+v8.destroyStream(v346);
+}
+g353.state=v354;
+g353.x=v355;
+g353.y=v356;
+g353.z=v357;
+g353.w=v358;
+g353.buffer=v359;
+g353.size=v360;
+g353.normalized=v361;
+g353.type=v362;
+g353.offset=v363;
+g353.stride=v364;
+g353.divisor=v365;
+if(v367){
+v8.destroyStream(v373);
+}
+g380.state=v381;
+g380.x=v382;
+g380.y=v383;
+g380.z=v384;
+g380.w=v385;
+g380.buffer=v386;
+g380.size=v387;
+g380.normalized=v388;
+g380.type=v389;
+g380.offset=v390;
+g380.stride=v391;
+g380.divisor=v392;
+if(v394){
+v8.destroyStream(v400);
+}
+g407.state=v408;
+g407.x=v409;
+g407.y=v410;
+g407.z=v411;
+g407.w=v412;
+g407.buffer=v413;
+g407.size=v414;
+g407.normalized=v415;
+g407.type=v416;
+g407.offset=v417;
+g407.stride=v418;
+g407.divisor=v419;
+v9.vert=v421;
+v9.frag=v423;
+v5.dirty=true;
+}
+,"batch":function(a0,a1){
+var v424,v425,v465,v466,v467,v468,v469,v470,v471,v475,v476,v477,v478,v479;
+v424=v14.angle_instanced_arrays;
+v425=v13.next;
+if(v425!==v13.cur){
+if(v425){
+v1.bindFramebuffer(36160,v425.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v425;
+}
+if(v5.dirty){
+var v426,v427,v428,v429,v430,v431,v432,v433,v434,v435,v436,v437,v438,v439,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v452,v453,v454,v455,v456,v457,v458,v459,v460,v461,v462,v463,v464;
+v426=v4.dither;
+if(v426!==v5.dither){
+if(v426){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v426;
+}
+v427=v19[0];
+v428=v19[1];
+if(v427!==v20[0]||v428!==v20[1]){
+v1.blendEquationSeparate(v427,v428);
+v20[0]=v427;
+v20[1]=v428;
+}
+v429=v4.depth_func;
+if(v429!==v5.depth_func){
+v1.depthFunc(v429);
+v5.depth_func=v429;
+}
+v430=v23[0];
+v431=v23[1];
+if(v430!==v24[0]||v431!==v24[1]){
+v1.depthRange(v430,v431);
+v24[0]=v430;
+v24[1]=v431;
+}
+v432=v4.depth_mask;
+if(v432!==v5.depth_mask){
+v1.depthMask(v432);
+v5.depth_mask=v432;
+}
+v433=v25[0];
+v434=v25[1];
+v435=v25[2];
+v436=v25[3];
+if(v433!==v26[0]||v434!==v26[1]||v435!==v26[2]||v436!==v26[3]){
+v1.colorMask(v433,v434,v435,v436);
+v26[0]=v433;
+v26[1]=v434;
+v26[2]=v435;
+v26[3]=v436;
+}
+v437=v4.cull_enable;
+if(v437!==v5.cull_enable){
+if(v437){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v437;
+}
+v438=v4.cull_face;
+if(v438!==v5.cull_face){
+v1.cullFace(v438);
+v5.cull_face=v438;
+}
+v439=v4.frontFace;
+if(v439!==v5.frontFace){
+v1.frontFace(v439);
+v5.frontFace=v439;
+}
+v440=v4.lineWidth;
+if(v440!==v5.lineWidth){
+v1.lineWidth(v440);
+v5.lineWidth=v440;
+}
+v441=v4.polygonOffset_enable;
+if(v441!==v5.polygonOffset_enable){
+if(v441){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v441;
+}
+v442=v27[0];
+v443=v27[1];
+if(v442!==v28[0]||v443!==v28[1]){
+v1.polygonOffset(v442,v443);
+v28[0]=v442;
+v28[1]=v443;
+}
+v444=v4.sample_alpha;
+if(v444!==v5.sample_alpha){
+if(v444){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v444;
+}
+v445=v4.sample_enable;
+if(v445!==v5.sample_enable){
+if(v445){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v445;
+}
+v446=v29[0];
+v447=v29[1];
+if(v446!==v30[0]||v447!==v30[1]){
+v1.sampleCoverage(v446,v447);
+v30[0]=v446;
+v30[1]=v447;
+}
+v448=v4.stencil_mask;
+if(v448!==v5.stencil_mask){
+v1.stencilMask(v448);
+v5.stencil_mask=v448;
+}
+v449=v31[0];
+v450=v31[1];
+v451=v31[2];
+if(v449!==v32[0]||v450!==v32[1]||v451!==v32[2]){
+v1.stencilFunc(v449,v450,v451);
+v32[0]=v449;
+v32[1]=v450;
+v32[2]=v451;
+}
+v452=v33[0];
+v453=v33[1];
+v454=v33[2];
+v455=v33[3];
+if(v452!==v34[0]||v453!==v34[1]||v454!==v34[2]||v455!==v34[3]){
+v1.stencilOpSeparate(v452,v453,v454,v455);
+v34[0]=v452;
+v34[1]=v453;
+v34[2]=v454;
+v34[3]=v455;
+}
+v456=v35[0];
+v457=v35[1];
+v458=v35[2];
+v459=v35[3];
+if(v456!==v36[0]||v457!==v36[1]||v458!==v36[2]||v459!==v36[3]){
+v1.stencilOpSeparate(v456,v457,v458,v459);
+v36[0]=v456;
+v36[1]=v457;
+v36[2]=v458;
+v36[3]=v459;
+}
+v460=v4.scissor_enable;
+if(v460!==v5.scissor_enable){
+if(v460){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=v460;
+}
+v461=v37[0];
+v462=v37[1];
+v463=v37[2];
+v464=v37[3];
+if(v461!==v38[0]||v462!==v38[1]||v463!==v38[2]||v464!==v38[3]){
+v1.scissor(v461,v462,v463,v464);
+v38[0]=v461;
+v38[1]=v462;
+v38[2]=v463;
+v38[3]=v464;
+}
+}
+v465=this["viewport"];
+v466=v465.x|0;
+v467=v465.y|0;
+v468="width" in v465?v465.width|0:(v2.framebufferWidth-v466);
+v469="height" in v465?v465.height|0:(v2.framebufferHeight-v467);
+v470=v2.viewportWidth;
+v2.viewportWidth=v468;
+v471=v2.viewportHeight;
+v2.viewportHeight=v469;
+v1.viewport(v466,v467,v468,v469);
+v40[0]=v466;
+v40[1]=v467;
+v40[2]=v468;
+v40[3]=v469;
+v1.blendColor(0,0,0,1);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=1;
+if(g472){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g472;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g473){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g473;
+if(g474){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g474;
+v475=v5.profile;
+if(v475){
+v476=performance.now();
+g48.count+=a1;
+}
+v1.useProgram(g104.program);
+v477=v14.angle_instanced_arrays;
+var v480,v481,v482,v483,v484,v485,v486,v487,v488,v489,v490,v491,v492,v493,v494,v495,v496,v497,v498,v499,v500,v501,v502,v503,v504,v505,v506,v507,v508,v509,v510,v511,v512,v513,v514,v515,v516,v517,v518,v519,v520,v521,v522,v523,v524,v525,v526,v527,v528,v529,v530,v531,v532,v533,v534,v535,v536,v537,v538,v539,v540,v541,v542,v543,v544,v545,v546,v547,v548,v549,v550,v551,v552,v553,v554,v555,v556,v557,v558,v595,v598;
+v11.setVAO(null);
+v480=this["charBuffer"];
+v481=false;
+v482=1;
+v483=0;
+v484=0;
+v485=0;
+v486=0;
+v487=null;
+v488=0;
+v489=false;
+v490=5126;
+v491=0;
+v492=0;
+v493=0;
+if(v16(v480)){
+v481=true;
+v487=v8.createStream(34962,v480);
+v490=v487.dtype;
+}
+else{
+v487=v8.getBuffer(v480);
+if(v487){
+v490=v487.dtype;
+}
+else if("constant" in v480){
+v482=2;
+if(typeof v480.constant === "number"){
+v483=v480.constant;
+v484=v485=v486=0;
+}
+else{
+v483=v480.constant.length>0?v480.constant[0]:0;
+v484=v480.constant.length>1?v480.constant[1]:0;
+v485=v480.constant.length>2?v480.constant[2]:0;
+v486=v480.constant.length>3?v480.constant[3]:0;
+}
+}
+else{
+if(v16(v480.buffer)){
+v487=v8.createStream(34962,v480.buffer);
+}
+else{
+v487=v8.getBuffer(v480.buffer);
+}
+v490="type" in v480?v46[v480.type]:v487.dtype;
+v489=!!v480.normalized;
+v488=v480.size|0;
+v491=v480.offset|0;
+v492=v480.stride|0;
+v493=v480.divisor|0;
+}
+}
+v494=g120.location;
+v495=v10[v494];
+if(v482===1){
+if(!v495.buffer){
+v1.enableVertexAttribArray(v494);
+}
+v496=v488||1;
+if(v495.type!==v490||v495.size!==v496||v495.buffer!==v487||v495.normalized!==v489||v495.offset!==v491||v495.stride!==v492){
+v1.bindBuffer(34962,v487.buffer);
+v1.vertexAttribPointer(v494,v496,v490,v489,v492,v491);
+v495.type=v490;
+v495.size=v496;
+v495.buffer=v487;
+v495.normalized=v489;
+v495.offset=v491;
+v495.stride=v492;
+}
+if(v495.divisor!==v493){
+v477.vertexAttribDivisorANGLE(v494,v493);
+v495.divisor=v493;
+}
+}
+else{
+if(v495.buffer){
+v1.disableVertexAttribArray(v494);
+v495.buffer=null;
+}
+if(v495.x!==v483||v495.y!==v484||v495.z!==v485||v495.w!==v486){
+v1.vertexAttrib4f(v494,v483,v484,v485,v486);
+v495.x=v483;
+v495.y=v484;
+v495.z=v485;
+v495.w=v486;
+}
+}
+v497=this["sizeBuffer"];
+v49.buffer=v497;
+v498=false;
+v499=1;
+v500=0;
+v501=0;
+v502=0;
+v503=0;
+v504=null;
+v505=0;
+v506=false;
+v507=5126;
+v508=0;
+v509=0;
+v510=0;
+if(v16(v49)){
+v498=true;
+v504=v8.createStream(34962,v49);
+v507=v504.dtype;
+}
+else{
+v504=v8.getBuffer(v49);
+if(v504){
+v507=v504.dtype;
+}
+else if("constant" in v49){
+v499=2;
+if(typeof v49.constant === "number"){
+v500=v49.constant;
+v501=v502=v503=0;
+}
+else{
+v500=v49.constant.length>0?v49.constant[0]:0;
+v501=v49.constant.length>1?v49.constant[1]:0;
+v502=v49.constant.length>2?v49.constant[2]:0;
+v503=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v504=v8.createStream(34962,v49.buffer);
+}
+else{
+v504=v8.getBuffer(v49.buffer);
+}
+v507="type" in v49?v46[v49.type]:v504.dtype;
+v506=!!v49.normalized;
+v505=v49.size|0;
+v508=v49.offset|0;
+v509=v49.stride|0;
+v510=v49.divisor|0;
+}
+}
+v511=g138.location;
+v512=v10[v511];
+if(v499===1){
+if(!v512.buffer){
+v1.enableVertexAttribArray(v511);
+}
+v513=v505||1;
+if(v512.type!==v507||v512.size!==v513||v512.buffer!==v504||v512.normalized!==v506||v512.offset!==v508||v512.stride!==v509){
+v1.bindBuffer(34962,v504.buffer);
+v1.vertexAttribPointer(v511,v513,v507,v506,v509,v508);
+v512.type=v507;
+v512.size=v513;
+v512.buffer=v504;
+v512.normalized=v506;
+v512.offset=v508;
+v512.stride=v509;
+}
+if(v512.divisor!==v510){
+v477.vertexAttribDivisorANGLE(v511,v510);
+v512.divisor=v510;
+}
+}
+else{
+if(v512.buffer){
+v1.disableVertexAttribArray(v511);
+v512.buffer=null;
+}
+if(v512.x!==v500||v512.y!==v501||v512.z!==v502||v512.w!==v503){
+v1.vertexAttrib4f(v511,v500,v501,v502,v503);
+v512.x=v500;
+v512.y=v501;
+v512.z=v502;
+v512.w=v503;
+}
+}
+v514=this["position"];
+v515=false;
+v516=1;
+v517=0;
+v518=0;
+v519=0;
+v520=0;
+v521=null;
+v522=0;
+v523=false;
+v524=5126;
+v525=0;
+v526=0;
+v527=0;
+if(v16(v514)){
+v515=true;
+v521=v8.createStream(34962,v514);
+v524=v521.dtype;
+}
+else{
+v521=v8.getBuffer(v514);
+if(v521){
+v524=v521.dtype;
+}
+else if("constant" in v514){
+v516=2;
+if(typeof v514.constant === "number"){
+v517=v514.constant;
+v518=v519=v520=0;
+}
+else{
+v517=v514.constant.length>0?v514.constant[0]:0;
+v518=v514.constant.length>1?v514.constant[1]:0;
+v519=v514.constant.length>2?v514.constant[2]:0;
+v520=v514.constant.length>3?v514.constant[3]:0;
+}
+}
+else{
+if(v16(v514.buffer)){
+v521=v8.createStream(34962,v514.buffer);
+}
+else{
+v521=v8.getBuffer(v514.buffer);
+}
+v524="type" in v514?v46[v514.type]:v521.dtype;
+v523=!!v514.normalized;
+v522=v514.size|0;
+v525=v514.offset|0;
+v526=v514.stride|0;
+v527=v514.divisor|0;
+}
+}
+v528=g156.location;
+v529=v10[v528];
+if(v516===1){
+if(!v529.buffer){
+v1.enableVertexAttribArray(v528);
+}
+v530=v522||2;
+if(v529.type!==v524||v529.size!==v530||v529.buffer!==v521||v529.normalized!==v523||v529.offset!==v525||v529.stride!==v526){
+v1.bindBuffer(34962,v521.buffer);
+v1.vertexAttribPointer(v528,v530,v524,v523,v526,v525);
+v529.type=v524;
+v529.size=v530;
+v529.buffer=v521;
+v529.normalized=v523;
+v529.offset=v525;
+v529.stride=v526;
+}
+if(v529.divisor!==v527){
+v477.vertexAttribDivisorANGLE(v528,v527);
+v529.divisor=v527;
+}
+}
+else{
+if(v529.buffer){
+v1.disableVertexAttribArray(v528);
+v529.buffer=null;
+}
+if(v529.x!==v517||v529.y!==v518||v529.z!==v519||v529.w!==v520){
+v1.vertexAttrib4f(v528,v517,v518,v519,v520);
+v529.x=v517;
+v529.y=v518;
+v529.z=v519;
+v529.w=v520;
+}
+}
+v531=this["sizeBuffer"];
+v50.buffer=v531;
+v532=false;
+v533=1;
+v534=0;
+v535=0;
+v536=0;
+v537=0;
+v538=null;
+v539=0;
+v540=false;
+v541=5126;
+v542=0;
+v543=0;
+v544=0;
+if(v16(v50)){
+v532=true;
+v538=v8.createStream(34962,v50);
+v541=v538.dtype;
+}
+else{
+v538=v8.getBuffer(v50);
+if(v538){
+v541=v538.dtype;
+}
+else if("constant" in v50){
+v533=2;
+if(typeof v50.constant === "number"){
+v534=v50.constant;
+v535=v536=v537=0;
+}
+else{
+v534=v50.constant.length>0?v50.constant[0]:0;
+v535=v50.constant.length>1?v50.constant[1]:0;
+v536=v50.constant.length>2?v50.constant[2]:0;
+v537=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v538=v8.createStream(34962,v50.buffer);
+}
+else{
+v538=v8.getBuffer(v50.buffer);
+}
+v541="type" in v50?v46[v50.type]:v538.dtype;
+v540=!!v50.normalized;
+v539=v50.size|0;
+v542=v50.offset|0;
+v543=v50.stride|0;
+v544=v50.divisor|0;
+}
+}
+v545=g174.location;
+v546=v10[v545];
+if(v533===1){
+if(!v546.buffer){
+v1.enableVertexAttribArray(v545);
+}
+v547=v539||1;
+if(v546.type!==v541||v546.size!==v547||v546.buffer!==v538||v546.normalized!==v540||v546.offset!==v542||v546.stride!==v543){
+v1.bindBuffer(34962,v538.buffer);
+v1.vertexAttribPointer(v545,v547,v541,v540,v543,v542);
+v546.type=v541;
+v546.size=v547;
+v546.buffer=v538;
+v546.normalized=v540;
+v546.offset=v542;
+v546.stride=v543;
+}
+if(v546.divisor!==v544){
+v477.vertexAttribDivisorANGLE(v545,v544);
+v546.divisor=v544;
+}
+}
+else{
+if(v546.buffer){
+v1.disableVertexAttribArray(v545);
+v546.buffer=null;
+}
+if(v546.x!==v534||v546.y!==v535||v546.z!==v536||v546.w!==v537){
+v1.vertexAttrib4f(v545,v534,v535,v536,v537);
+v546.x=v534;
+v546.y=v535;
+v546.z=v536;
+v546.w=v537;
+}
+}
+v548=this["scale"];
+v549=v548[0];
+v550=v548[1];
+v1.uniform2f(g214.location,v549,v550);
+v551=this["translate"];
+v552=v551[0];
+v553=v551[1];
+v1.uniform2f(g218.location,v552,v553);
+v554=this["viewportArray"];
+v555=v554[0];
+v556=v554[1];
+v557=v554[2];
+v558=v554[3];
+v1.uniform4f(g222.location,v555,v556,v557,v558);
+v595=v6.elements;
+if(v595){
+v1.bindBuffer(34963,v595.buffer.buffer);
+}
+else if(v11.currentVAO){
+v595=v7.getElements(v11.currentVAO.elements);
+if(v595)v1.bindBuffer(34963,v595.buffer.buffer);
+}
+v598=v6.instances;
+for(v478=0;
+v478<a1;
+++v478){
+v479=a0[v478];
+var v559,v560,v561,v562,v563,v564,v565,v566,v567,v568,v569,v570,v571,v572,v573,v574,v575,v576,v577,v578,v579,v580,v581,v582,v583,v584,v585,v586,v587,v588,v589,v590,v591,v592,v593,v594,v596,v597;
+v559=v479["align"];
+if(!v478||v560!==v559){
+v560=v559;
+v1.uniform1f(g178.location,v559);
+}
+v561=g181.call(this,v2,v479,v478);
+if(v561&&v561._reglType==="framebuffer"){
+v561=v561.color[0];
+}
+v562=v561._texture;
+v1.uniform1i(g180.location,v562.bind());
+v563=g185.call(this,v2,v479,v478);
+v564=v563[0];
+v566=v563[1];
+if(!v478||v565!==v564||v567!==v566){
+v565=v564;
+v567=v566;
+v1.uniform2f(g184.location,v564,v566);
+}
+v568=g190.call(this,v2,v479,v478);
+v569=v568[0];
+v571=v568[1];
+if(!v478||v570!==v569||v572!==v571){
+v570=v569;
+v572=v571;
+v1.uniform2f(g189.location,v569,v571);
+}
+v573=v479["baseline"];
+if(!v478||v574!==v573){
+v574=v573;
+v1.uniform1f(g194.location,v573);
+}
+v575=g197.call(this,v2,v479,v478);
+if(!v478||v576!==v575){
+v576=v575;
+v1.uniform1f(g196.location,v575);
+}
+v577=v479["color"];
+v578=v577[0];
+v580=v577[1];
+v582=v577[2];
+v584=v577[3];
+if(!v478||v579!==v578||v581!==v580||v583!==v582||v585!==v584){
+v579=v578;
+v581=v580;
+v583=v582;
+v585=v584;
+v1.uniform4f(g199.location,v578,v580,v582,v584);
+}
+v586=g206.call(this,v2,v479,v478);
+if(!v478||v587!==v586){
+v587=v586;
+v1.uniform1f(g205.location,v586);
+}
+v588=v479["opacity"];
+if(!v478||v589!==v588){
+v589=v588;
+v1.uniform1f(g208.location,v588);
+}
+v590=v479["positionOffset"];
+v591=v590[0];
+v593=v590[1];
+if(!v478||v592!==v591||v594!==v593){
+v592=v591;
+v594=v593;
+v1.uniform2f(g210.location,v591,v593);
+}
+v596=v479["offset"];
+v597=v479["count"];
+if(v597){
+if(v598>0){
+if(v595){
+v477.drawElementsInstancedANGLE(0,v597,v595.type,v596<<((v595.type-5121)>>1),v598);
+}
+else{
+v477.drawArraysInstancedANGLE(0,v596,v597,v598);
+}
+}
+else if(v598<0){
+if(v595){
+v1.drawElements(0,v597,v595.type,v596<<((v595.type-5121)>>1));
+}
+else{
+v1.drawArrays(0,v596,v597);
+}
+}
+v562.unbind();
+}
+}
+if(v481){
+v8.destroyStream(v487);
+}
+if(v498){
+v8.destroyStream(v504);
+}
+if(v515){
+v8.destroyStream(v521);
+}
+if(v532){
+v8.destroyStream(v538);
+}
+v5.dirty=true;
+v11.setVAO(null);
+v2.viewportWidth=v470;
+v2.viewportHeight=v471;
+if(v475){
+g48.cpuTime+=performance.now()-v476;
+}
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/8a43b073e4f3e9c0e499c8ac9c253f2aa1e3d3de2febfccc6526b52295dbf770 b/src/generated/regl-codegen/8a43b073e4f3e9c0e499c8ac9c253f2aa1e3d3de2febfccc6526b52295dbf770
deleted file mode 100644
index d2ca9f641d2..00000000000
--- a/src/generated/regl-codegen/8a43b073e4f3e9c0e499c8ac9c253f2aa1e3d3de2febfccc6526b52295dbf770
+++ /dev/null
@@ -1,664 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g56,g120,g130,g132,g138,g140,g201
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v117,v198;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v117={
-}
-;
-v198={
-}
-;
-return {
-"draw":function(a0){
-var v53,v54,v55,v57,v58,v59,v106,v107,v108,v109,v110,v111,v112,v113,v114,v115,v116,v118,v119;
-v53=v14.angle_instanced_arrays;
-v54=a0["framebuffer"];
-v55=v13.getFramebuffer(v54);
-if(!(!v54||v55))g18.commandRaise(g56,g19);
-v57=v13.next;
-v13.next=v55;
-v58=v2.framebufferWidth;
-v2.framebufferWidth=v55?v55.width:v2.drawingBufferWidth;
-v59=v2.framebufferHeight;
-v2.framebufferHeight=v55?v55.height:v2.drawingBufferHeight;
-if(v55!==v13.cur){
-if(v55){
-v1.bindFramebuffer(36160,v55.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v55;
-}
-if(v5.dirty){
-var v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93,v94,v95,v96,v97,v98,v99,v100,v101,v102,v103,v104,v105;
-v60=v4.dither;
-if(v60!==v5.dither){
-if(v60){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v60;
-}
-v61=v4.blend_enable;
-if(v61!==v5.blend_enable){
-if(v61){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=v61;
-}
-v62=v20[0];
-v63=v20[1];
-v64=v20[2];
-v65=v20[3];
-if(v62!==v21[0]||v63!==v21[1]||v64!==v21[2]||v65!==v21[3]){
-v1.blendColor(v62,v63,v64,v65);
-v21[0]=v62;
-v21[1]=v63;
-v21[2]=v64;
-v21[3]=v65;
-}
-v66=v22[0];
-v67=v22[1];
-if(v66!==v23[0]||v67!==v23[1]){
-v1.blendEquationSeparate(v66,v67);
-v23[0]=v66;
-v23[1]=v67;
-}
-v68=v24[0];
-v69=v24[1];
-v70=v24[2];
-v71=v24[3];
-if(v68!==v25[0]||v69!==v25[1]||v70!==v25[2]||v71!==v25[3]){
-v1.blendFuncSeparate(v68,v69,v70,v71);
-v25[0]=v68;
-v25[1]=v69;
-v25[2]=v70;
-v25[3]=v71;
-}
-v72=v4.depth_enable;
-if(v72!==v5.depth_enable){
-if(v72){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v72;
-}
-v73=v4.depth_func;
-if(v73!==v5.depth_func){
-v1.depthFunc(v73);
-v5.depth_func=v73;
-}
-v74=v26[0];
-v75=v26[1];
-if(v74!==v27[0]||v75!==v27[1]){
-v1.depthRange(v74,v75);
-v27[0]=v74;
-v27[1]=v75;
-}
-v76=v4.depth_mask;
-if(v76!==v5.depth_mask){
-v1.depthMask(v76);
-v5.depth_mask=v76;
-}
-v77=v28[0];
-v78=v28[1];
-v79=v28[2];
-v80=v28[3];
-if(v77!==v29[0]||v78!==v29[1]||v79!==v29[2]||v80!==v29[3]){
-v1.colorMask(v77,v78,v79,v80);
-v29[0]=v77;
-v29[1]=v78;
-v29[2]=v79;
-v29[3]=v80;
-}
-v81=v4.cull_enable;
-if(v81!==v5.cull_enable){
-if(v81){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v81;
-}
-v82=v4.cull_face;
-if(v82!==v5.cull_face){
-v1.cullFace(v82);
-v5.cull_face=v82;
-}
-v83=v4.frontFace;
-if(v83!==v5.frontFace){
-v1.frontFace(v83);
-v5.frontFace=v83;
-}
-v84=v4.lineWidth;
-if(v84!==v5.lineWidth){
-v1.lineWidth(v84);
-v5.lineWidth=v84;
-}
-v85=v4.polygonOffset_enable;
-if(v85!==v5.polygonOffset_enable){
-if(v85){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v85;
-}
-v86=v30[0];
-v87=v30[1];
-if(v86!==v31[0]||v87!==v31[1]){
-v1.polygonOffset(v86,v87);
-v31[0]=v86;
-v31[1]=v87;
-}
-v88=v4.sample_alpha;
-if(v88!==v5.sample_alpha){
-if(v88){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v88;
-}
-v89=v4.sample_enable;
-if(v89!==v5.sample_enable){
-if(v89){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v89;
-}
-v90=v32[0];
-v91=v32[1];
-if(v90!==v33[0]||v91!==v33[1]){
-v1.sampleCoverage(v90,v91);
-v33[0]=v90;
-v33[1]=v91;
-}
-v92=v4.stencil_enable;
-if(v92!==v5.stencil_enable){
-if(v92){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v92;
-}
-v93=v4.stencil_mask;
-if(v93!==v5.stencil_mask){
-v1.stencilMask(v93);
-v5.stencil_mask=v93;
-}
-v94=v34[0];
-v95=v34[1];
-v96=v34[2];
-if(v94!==v35[0]||v95!==v35[1]||v96!==v35[2]){
-v1.stencilFunc(v94,v95,v96);
-v35[0]=v94;
-v35[1]=v95;
-v35[2]=v96;
-}
-v97=v36[0];
-v98=v36[1];
-v99=v36[2];
-v100=v36[3];
-if(v97!==v37[0]||v98!==v37[1]||v99!==v37[2]||v100!==v37[3]){
-v1.stencilOpSeparate(v97,v98,v99,v100);
-v37[0]=v97;
-v37[1]=v98;
-v37[2]=v99;
-v37[3]=v100;
-}
-v101=v38[0];
-v102=v38[1];
-v103=v38[2];
-v104=v38[3];
-if(v101!==v39[0]||v102!==v39[1]||v103!==v39[2]||v104!==v39[3]){
-v1.stencilOpSeparate(v101,v102,v103,v104);
-v39[0]=v101;
-v39[1]=v102;
-v39[2]=v103;
-v39[3]=v104;
-}
-v105=v4.scissor_enable;
-if(v105!==v5.scissor_enable){
-if(v105){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=v105;
-}
-}
-v106=v2.framebufferWidth;
-v107=v2.framebufferHeight;
-v108=v2.viewportWidth;
-v2.viewportWidth=v106;
-v109=v2.viewportHeight;
-v2.viewportHeight=v107;
-v1.viewport(0,0,v106,v107);
-v43[0]=0;
-v43[1]=0;
-v43[2]=v106;
-v43[3]=v107;
-v110=v2.framebufferWidth;
-v111=v2.framebufferHeight;
-v1.scissor(0,0,v110,v111);
-v41[0]=0;
-v41[1]=0;
-v41[2]=v110;
-v41[3]=v111;
-v112=v5.profile;
-if(v112){
-v113=performance.now();
-g52.count++;
-}
-v114=v9.frag;
-v115=v9.vert;
-v116=v9.program(v115,v114,g19);
-v1.useProgram(v116.program);
-v11.setVAO(null);
-v118=v116.id;
-v119=v117[v118];
-if(v119){
-v119.call(this,a0);
-}
-else{
-v119=v117[v118]=g120(v116);
-v119.call(this,a0);
-}
-v5.dirty=true;
-v11.setVAO(null);
-v13.next=v57;
-v2.framebufferWidth=v58;
-v2.framebufferHeight=v59;
-v2.viewportWidth=v108;
-v2.viewportHeight=v109;
-if(v112){
-g52.cpuTime+=performance.now()-v113;
-}
-}
-,"scope":function(a0,a1,a2){
-var v121,v122,v123,v124,v125,v126,v127,v128,v129,v131,v133,v134,v135,v136,v137,v139,v141,v142,v143,v144,v145;
-v121=a0["framebuffer"];
-v122=v13.getFramebuffer(v121);
-if(!(!v121||v122))g18.commandRaise(g56,g19);
-v123=v13.next;
-v13.next=v122;
-v124=v2.framebufferWidth;
-v2.framebufferWidth=v122?v122.width:v2.drawingBufferWidth;
-v125=v2.framebufferHeight;
-v2.framebufferHeight=v122?v122.height:v2.drawingBufferHeight;
-v126=v2.framebufferWidth;
-v127=v2.framebufferHeight;
-v128=v2.viewportWidth;
-v2.viewportWidth=v126;
-v129=v2.viewportHeight;
-v2.viewportHeight=v127;
-v131=v42[0];
-v42[0]=g130;
-v133=v42[1];
-v42[1]=g132;
-v134=v42[2];
-v42[2]=v126;
-v135=v42[3];
-v42[3]=v127;
-v136=v2.framebufferWidth;
-v137=v2.framebufferHeight;
-v139=v40[0];
-v40[0]=g138;
-v141=v40[1];
-v40[1]=g140;
-v142=v40[2];
-v40[2]=v136;
-v143=v40[3];
-v40[3]=v137;
-v144=v5.profile;
-if(v144){
-v145=performance.now();
-g52.count++;
-}
-v5.dirty=true;
-a1(v2,a0,a2);
-v13.next=v123;
-v2.framebufferWidth=v124;
-v2.framebufferHeight=v125;
-v2.viewportWidth=v128;
-v2.viewportHeight=v129;
-v42[0]=v131;
-v42[1]=v133;
-v42[2]=v134;
-v42[3]=v135;
-v40[0]=v139;
-v40[1]=v141;
-v40[2]=v142;
-v40[3]=v143;
-if(v144){
-g52.cpuTime+=performance.now()-v145;
-}
-v5.dirty=true;
-}
-,"batch":function(a0,a1){
-var v146,v193,v194,v195,v196,v197,v199,v200;
-v146=v14.angle_instanced_arrays;
-if(v5.dirty){
-var v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v174,v175,v176,v177,v178,v179,v180,v181,v182,v183,v184,v185,v186,v187,v188,v189,v190,v191,v192;
-v147=v4.dither;
-if(v147!==v5.dither){
-if(v147){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v147;
-}
-v148=v4.blend_enable;
-if(v148!==v5.blend_enable){
-if(v148){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=v148;
-}
-v149=v20[0];
-v150=v20[1];
-v151=v20[2];
-v152=v20[3];
-if(v149!==v21[0]||v150!==v21[1]||v151!==v21[2]||v152!==v21[3]){
-v1.blendColor(v149,v150,v151,v152);
-v21[0]=v149;
-v21[1]=v150;
-v21[2]=v151;
-v21[3]=v152;
-}
-v153=v22[0];
-v154=v22[1];
-if(v153!==v23[0]||v154!==v23[1]){
-v1.blendEquationSeparate(v153,v154);
-v23[0]=v153;
-v23[1]=v154;
-}
-v155=v24[0];
-v156=v24[1];
-v157=v24[2];
-v158=v24[3];
-if(v155!==v25[0]||v156!==v25[1]||v157!==v25[2]||v158!==v25[3]){
-v1.blendFuncSeparate(v155,v156,v157,v158);
-v25[0]=v155;
-v25[1]=v156;
-v25[2]=v157;
-v25[3]=v158;
-}
-v159=v4.depth_enable;
-if(v159!==v5.depth_enable){
-if(v159){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v159;
-}
-v160=v4.depth_func;
-if(v160!==v5.depth_func){
-v1.depthFunc(v160);
-v5.depth_func=v160;
-}
-v161=v26[0];
-v162=v26[1];
-if(v161!==v27[0]||v162!==v27[1]){
-v1.depthRange(v161,v162);
-v27[0]=v161;
-v27[1]=v162;
-}
-v163=v4.depth_mask;
-if(v163!==v5.depth_mask){
-v1.depthMask(v163);
-v5.depth_mask=v163;
-}
-v164=v28[0];
-v165=v28[1];
-v166=v28[2];
-v167=v28[3];
-if(v164!==v29[0]||v165!==v29[1]||v166!==v29[2]||v167!==v29[3]){
-v1.colorMask(v164,v165,v166,v167);
-v29[0]=v164;
-v29[1]=v165;
-v29[2]=v166;
-v29[3]=v167;
-}
-v168=v4.cull_enable;
-if(v168!==v5.cull_enable){
-if(v168){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v168;
-}
-v169=v4.cull_face;
-if(v169!==v5.cull_face){
-v1.cullFace(v169);
-v5.cull_face=v169;
-}
-v170=v4.frontFace;
-if(v170!==v5.frontFace){
-v1.frontFace(v170);
-v5.frontFace=v170;
-}
-v171=v4.lineWidth;
-if(v171!==v5.lineWidth){
-v1.lineWidth(v171);
-v5.lineWidth=v171;
-}
-v172=v4.polygonOffset_enable;
-if(v172!==v5.polygonOffset_enable){
-if(v172){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v172;
-}
-v173=v30[0];
-v174=v30[1];
-if(v173!==v31[0]||v174!==v31[1]){
-v1.polygonOffset(v173,v174);
-v31[0]=v173;
-v31[1]=v174;
-}
-v175=v4.sample_alpha;
-if(v175!==v5.sample_alpha){
-if(v175){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v175;
-}
-v176=v4.sample_enable;
-if(v176!==v5.sample_enable){
-if(v176){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v176;
-}
-v177=v32[0];
-v178=v32[1];
-if(v177!==v33[0]||v178!==v33[1]){
-v1.sampleCoverage(v177,v178);
-v33[0]=v177;
-v33[1]=v178;
-}
-v179=v4.stencil_enable;
-if(v179!==v5.stencil_enable){
-if(v179){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v179;
-}
-v180=v4.stencil_mask;
-if(v180!==v5.stencil_mask){
-v1.stencilMask(v180);
-v5.stencil_mask=v180;
-}
-v181=v34[0];
-v182=v34[1];
-v183=v34[2];
-if(v181!==v35[0]||v182!==v35[1]||v183!==v35[2]){
-v1.stencilFunc(v181,v182,v183);
-v35[0]=v181;
-v35[1]=v182;
-v35[2]=v183;
-}
-v184=v36[0];
-v185=v36[1];
-v186=v36[2];
-v187=v36[3];
-if(v184!==v37[0]||v185!==v37[1]||v186!==v37[2]||v187!==v37[3]){
-v1.stencilOpSeparate(v184,v185,v186,v187);
-v37[0]=v184;
-v37[1]=v185;
-v37[2]=v186;
-v37[3]=v187;
-}
-v188=v38[0];
-v189=v38[1];
-v190=v38[2];
-v191=v38[3];
-if(v188!==v39[0]||v189!==v39[1]||v190!==v39[2]||v191!==v39[3]){
-v1.stencilOpSeparate(v188,v189,v190,v191);
-v39[0]=v188;
-v39[1]=v189;
-v39[2]=v190;
-v39[3]=v191;
-}
-v192=v4.scissor_enable;
-if(v192!==v5.scissor_enable){
-if(v192){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=v192;
-}
-}
-v193=v5.profile;
-if(v193){
-v194=performance.now();
-g52.count+=a1;
-}
-v195=v9.frag;
-v196=v9.vert;
-v197=v9.program(v196,v195,g19);
-v1.useProgram(v197.program);
-v11.setVAO(null);
-v199=v197.id;
-v200=v198[v199];
-if(v200){
-v200.call(this,a0,a1);
-}
-else{
-v200=v198[v199]=g201(v197);
-v200.call(this,a0,a1);
-}
-v5.dirty=true;
-v11.setVAO(null);
-if(v193){
-g52.cpuTime+=performance.now()-v194;
-}
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623 b/src/generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623
new file mode 100644
index 00000000000..887359115fe
--- /dev/null
+++ b/src/generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623
@@ -0,0 +1,637 @@
+module.exports = function anonymous(g0,g48,g113,g180
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v110,v177;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v110={
+}
+;
+v177={
+}
+;
+return {
+"draw":function(a0){
+var v49,v50,v105,v106,v107,v108,v109,v111,v112;
+v49=v14.angle_instanced_arrays;
+v50=v13.next;
+if(v50!==v13.cur){
+if(v50){
+v1.bindFramebuffer(36160,v50.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v50;
+}
+if(v5.dirty){
+var v51,v52,v53,v54,v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93,v94,v95,v96,v97,v98,v99,v100,v101,v102,v103,v104;
+v51=v4.dither;
+if(v51!==v5.dither){
+if(v51){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v51;
+}
+v52=v4.blend_enable;
+if(v52!==v5.blend_enable){
+if(v52){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=v52;
+}
+v53=v17[0];
+v54=v17[1];
+v55=v17[2];
+v56=v17[3];
+if(v53!==v18[0]||v54!==v18[1]||v55!==v18[2]||v56!==v18[3]){
+v1.blendColor(v53,v54,v55,v56);
+v18[0]=v53;
+v18[1]=v54;
+v18[2]=v55;
+v18[3]=v56;
+}
+v57=v19[0];
+v58=v19[1];
+if(v57!==v20[0]||v58!==v20[1]){
+v1.blendEquationSeparate(v57,v58);
+v20[0]=v57;
+v20[1]=v58;
+}
+v59=v21[0];
+v60=v21[1];
+v61=v21[2];
+v62=v21[3];
+if(v59!==v22[0]||v60!==v22[1]||v61!==v22[2]||v62!==v22[3]){
+v1.blendFuncSeparate(v59,v60,v61,v62);
+v22[0]=v59;
+v22[1]=v60;
+v22[2]=v61;
+v22[3]=v62;
+}
+v63=v4.depth_enable;
+if(v63!==v5.depth_enable){
+if(v63){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v63;
+}
+v64=v4.depth_func;
+if(v64!==v5.depth_func){
+v1.depthFunc(v64);
+v5.depth_func=v64;
+}
+v65=v23[0];
+v66=v23[1];
+if(v65!==v24[0]||v66!==v24[1]){
+v1.depthRange(v65,v66);
+v24[0]=v65;
+v24[1]=v66;
+}
+v67=v4.depth_mask;
+if(v67!==v5.depth_mask){
+v1.depthMask(v67);
+v5.depth_mask=v67;
+}
+v68=v25[0];
+v69=v25[1];
+v70=v25[2];
+v71=v25[3];
+if(v68!==v26[0]||v69!==v26[1]||v70!==v26[2]||v71!==v26[3]){
+v1.colorMask(v68,v69,v70,v71);
+v26[0]=v68;
+v26[1]=v69;
+v26[2]=v70;
+v26[3]=v71;
+}
+v72=v4.cull_enable;
+if(v72!==v5.cull_enable){
+if(v72){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v72;
+}
+v73=v4.cull_face;
+if(v73!==v5.cull_face){
+v1.cullFace(v73);
+v5.cull_face=v73;
+}
+v74=v4.frontFace;
+if(v74!==v5.frontFace){
+v1.frontFace(v74);
+v5.frontFace=v74;
+}
+v75=v4.lineWidth;
+if(v75!==v5.lineWidth){
+v1.lineWidth(v75);
+v5.lineWidth=v75;
+}
+v76=v4.polygonOffset_enable;
+if(v76!==v5.polygonOffset_enable){
+if(v76){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v76;
+}
+v77=v27[0];
+v78=v27[1];
+if(v77!==v28[0]||v78!==v28[1]){
+v1.polygonOffset(v77,v78);
+v28[0]=v77;
+v28[1]=v78;
+}
+v79=v4.sample_alpha;
+if(v79!==v5.sample_alpha){
+if(v79){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v79;
+}
+v80=v4.sample_enable;
+if(v80!==v5.sample_enable){
+if(v80){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v80;
+}
+v81=v29[0];
+v82=v29[1];
+if(v81!==v30[0]||v82!==v30[1]){
+v1.sampleCoverage(v81,v82);
+v30[0]=v81;
+v30[1]=v82;
+}
+v83=v4.stencil_enable;
+if(v83!==v5.stencil_enable){
+if(v83){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v83;
+}
+v84=v4.stencil_mask;
+if(v84!==v5.stencil_mask){
+v1.stencilMask(v84);
+v5.stencil_mask=v84;
+}
+v85=v31[0];
+v86=v31[1];
+v87=v31[2];
+if(v85!==v32[0]||v86!==v32[1]||v87!==v32[2]){
+v1.stencilFunc(v85,v86,v87);
+v32[0]=v85;
+v32[1]=v86;
+v32[2]=v87;
+}
+v88=v33[0];
+v89=v33[1];
+v90=v33[2];
+v91=v33[3];
+if(v88!==v34[0]||v89!==v34[1]||v90!==v34[2]||v91!==v34[3]){
+v1.stencilOpSeparate(v88,v89,v90,v91);
+v34[0]=v88;
+v34[1]=v89;
+v34[2]=v90;
+v34[3]=v91;
+}
+v92=v35[0];
+v93=v35[1];
+v94=v35[2];
+v95=v35[3];
+if(v92!==v36[0]||v93!==v36[1]||v94!==v36[2]||v95!==v36[3]){
+v1.stencilOpSeparate(v92,v93,v94,v95);
+v36[0]=v92;
+v36[1]=v93;
+v36[2]=v94;
+v36[3]=v95;
+}
+v96=v4.scissor_enable;
+if(v96!==v5.scissor_enable){
+if(v96){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=v96;
+}
+v97=v37[0];
+v98=v37[1];
+v99=v37[2];
+v100=v37[3];
+if(v97!==v38[0]||v98!==v38[1]||v99!==v38[2]||v100!==v38[3]){
+v1.scissor(v97,v98,v99,v100);
+v38[0]=v97;
+v38[1]=v98;
+v38[2]=v99;
+v38[3]=v100;
+}
+v101=v39[0];
+v102=v39[1];
+v103=v39[2];
+v104=v39[3];
+if(v101!==v40[0]||v102!==v40[1]||v103!==v40[2]||v104!==v40[3]){
+v1.viewport(v101,v102,v103,v104);
+v40[0]=v101;
+v40[1]=v102;
+v40[2]=v103;
+v40[3]=v104;
+}
+v5.dirty=false;
+}
+v105=v5.profile;
+if(v105){
+v106=performance.now();
+g48.count++;
+}
+v107=v9.frag;
+v108=v9.vert;
+v109=v9.program(v108,v107);
+v1.useProgram(v109.program);
+v11.setVAO(null);
+v111=v109.id;
+v112=v110[v111];
+if(v112){
+v112.call(this,a0);
+}
+else{
+v112=v110[v111]=g113(v109);
+v112.call(this,a0);
+}
+v11.setVAO(null);
+if(v105){
+g48.cpuTime+=performance.now()-v106;
+}
+}
+,"scope":function(a0,a1,a2){
+var v114,v115;
+v114=v5.profile;
+if(v114){
+v115=performance.now();
+g48.count++;
+}
+a1(v2,a0,a2);
+if(v114){
+g48.cpuTime+=performance.now()-v115;
+}
+}
+,"batch":function(a0,a1){
+var v116,v117,v172,v173,v174,v175,v176,v178,v179;
+v116=v14.angle_instanced_arrays;
+v117=v13.next;
+if(v117!==v13.cur){
+if(v117){
+v1.bindFramebuffer(36160,v117.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v117;
+}
+if(v5.dirty){
+var v118,v119,v120,v121,v122,v123,v124,v125,v126,v127,v128,v129,v130,v131,v132,v133,v134,v135,v136,v137,v138,v139,v140,v141,v142,v143,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171;
+v118=v4.dither;
+if(v118!==v5.dither){
+if(v118){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v118;
+}
+v119=v4.blend_enable;
+if(v119!==v5.blend_enable){
+if(v119){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=v119;
+}
+v120=v17[0];
+v121=v17[1];
+v122=v17[2];
+v123=v17[3];
+if(v120!==v18[0]||v121!==v18[1]||v122!==v18[2]||v123!==v18[3]){
+v1.blendColor(v120,v121,v122,v123);
+v18[0]=v120;
+v18[1]=v121;
+v18[2]=v122;
+v18[3]=v123;
+}
+v124=v19[0];
+v125=v19[1];
+if(v124!==v20[0]||v125!==v20[1]){
+v1.blendEquationSeparate(v124,v125);
+v20[0]=v124;
+v20[1]=v125;
+}
+v126=v21[0];
+v127=v21[1];
+v128=v21[2];
+v129=v21[3];
+if(v126!==v22[0]||v127!==v22[1]||v128!==v22[2]||v129!==v22[3]){
+v1.blendFuncSeparate(v126,v127,v128,v129);
+v22[0]=v126;
+v22[1]=v127;
+v22[2]=v128;
+v22[3]=v129;
+}
+v130=v4.depth_enable;
+if(v130!==v5.depth_enable){
+if(v130){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v130;
+}
+v131=v4.depth_func;
+if(v131!==v5.depth_func){
+v1.depthFunc(v131);
+v5.depth_func=v131;
+}
+v132=v23[0];
+v133=v23[1];
+if(v132!==v24[0]||v133!==v24[1]){
+v1.depthRange(v132,v133);
+v24[0]=v132;
+v24[1]=v133;
+}
+v134=v4.depth_mask;
+if(v134!==v5.depth_mask){
+v1.depthMask(v134);
+v5.depth_mask=v134;
+}
+v135=v25[0];
+v136=v25[1];
+v137=v25[2];
+v138=v25[3];
+if(v135!==v26[0]||v136!==v26[1]||v137!==v26[2]||v138!==v26[3]){
+v1.colorMask(v135,v136,v137,v138);
+v26[0]=v135;
+v26[1]=v136;
+v26[2]=v137;
+v26[3]=v138;
+}
+v139=v4.cull_enable;
+if(v139!==v5.cull_enable){
+if(v139){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v139;
+}
+v140=v4.cull_face;
+if(v140!==v5.cull_face){
+v1.cullFace(v140);
+v5.cull_face=v140;
+}
+v141=v4.frontFace;
+if(v141!==v5.frontFace){
+v1.frontFace(v141);
+v5.frontFace=v141;
+}
+v142=v4.lineWidth;
+if(v142!==v5.lineWidth){
+v1.lineWidth(v142);
+v5.lineWidth=v142;
+}
+v143=v4.polygonOffset_enable;
+if(v143!==v5.polygonOffset_enable){
+if(v143){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v143;
+}
+v144=v27[0];
+v145=v27[1];
+if(v144!==v28[0]||v145!==v28[1]){
+v1.polygonOffset(v144,v145);
+v28[0]=v144;
+v28[1]=v145;
+}
+v146=v4.sample_alpha;
+if(v146!==v5.sample_alpha){
+if(v146){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v146;
+}
+v147=v4.sample_enable;
+if(v147!==v5.sample_enable){
+if(v147){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v147;
+}
+v148=v29[0];
+v149=v29[1];
+if(v148!==v30[0]||v149!==v30[1]){
+v1.sampleCoverage(v148,v149);
+v30[0]=v148;
+v30[1]=v149;
+}
+v150=v4.stencil_enable;
+if(v150!==v5.stencil_enable){
+if(v150){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v150;
+}
+v151=v4.stencil_mask;
+if(v151!==v5.stencil_mask){
+v1.stencilMask(v151);
+v5.stencil_mask=v151;
+}
+v152=v31[0];
+v153=v31[1];
+v154=v31[2];
+if(v152!==v32[0]||v153!==v32[1]||v154!==v32[2]){
+v1.stencilFunc(v152,v153,v154);
+v32[0]=v152;
+v32[1]=v153;
+v32[2]=v154;
+}
+v155=v33[0];
+v156=v33[1];
+v157=v33[2];
+v158=v33[3];
+if(v155!==v34[0]||v156!==v34[1]||v157!==v34[2]||v158!==v34[3]){
+v1.stencilOpSeparate(v155,v156,v157,v158);
+v34[0]=v155;
+v34[1]=v156;
+v34[2]=v157;
+v34[3]=v158;
+}
+v159=v35[0];
+v160=v35[1];
+v161=v35[2];
+v162=v35[3];
+if(v159!==v36[0]||v160!==v36[1]||v161!==v36[2]||v162!==v36[3]){
+v1.stencilOpSeparate(v159,v160,v161,v162);
+v36[0]=v159;
+v36[1]=v160;
+v36[2]=v161;
+v36[3]=v162;
+}
+v163=v4.scissor_enable;
+if(v163!==v5.scissor_enable){
+if(v163){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=v163;
+}
+v164=v37[0];
+v165=v37[1];
+v166=v37[2];
+v167=v37[3];
+if(v164!==v38[0]||v165!==v38[1]||v166!==v38[2]||v167!==v38[3]){
+v1.scissor(v164,v165,v166,v167);
+v38[0]=v164;
+v38[1]=v165;
+v38[2]=v166;
+v38[3]=v167;
+}
+v168=v39[0];
+v169=v39[1];
+v170=v39[2];
+v171=v39[3];
+if(v168!==v40[0]||v169!==v40[1]||v170!==v40[2]||v171!==v40[3]){
+v1.viewport(v168,v169,v170,v171);
+v40[0]=v168;
+v40[1]=v169;
+v40[2]=v170;
+v40[3]=v171;
+}
+v5.dirty=false;
+}
+v172=v5.profile;
+if(v172){
+v173=performance.now();
+g48.count+=a1;
+}
+v174=v9.frag;
+v175=v9.vert;
+v176=v9.program(v175,v174);
+v1.useProgram(v176.program);
+v11.setVAO(null);
+v178=v176.id;
+v179=v177[v178];
+if(v179){
+v179.call(this,a0,a1);
+}
+else{
+v179=v177[v178]=g180(v176);
+v179.call(this,a0,a1);
+}
+v11.setVAO(null);
+if(v172){
+g48.cpuTime+=performance.now()-v173;
+}
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/909861c036d6f1ef40ba2dfcc33ef32489d2fe05fa7b7984d5ff315ddceb17b1 b/src/generated/regl-codegen/909861c036d6f1ef40ba2dfcc33ef32489d2fe05fa7b7984d5ff315ddceb17b1
deleted file mode 100644
index 17f3c1077b9..00000000000
--- a/src/generated/regl-codegen/909861c036d6f1ef40ba2dfcc33ef32489d2fe05fa7b7984d5ff315ddceb17b1
+++ /dev/null
@@ -1,454 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g56
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v66,v67,v68,v69,v70,v71,v74,v75,v78,v79,v86,v87,v88,v89,v92,v93,v94,v95,v96,v97,v98,v99,v100,v101;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v66=v4.blend_color;
-v67=v5.blend_color;
-v68=v4.blend_equation;
-v69=v5.blend_equation;
-v70=v4.blend_func;
-v71=v5.blend_func;
-v74=v4.depth_range;
-v75=v5.depth_range;
-v78=v4.colorMask;
-v79=v5.colorMask;
-v86=v4.polygonOffset_offset;
-v87=v5.polygonOffset_offset;
-v88=v4.sample_coverage;
-v89=v5.sample_coverage;
-v92=v4.stencil_func;
-v93=v5.stencil_func;
-v94=v4.stencil_opFront;
-v95=v5.stencil_opFront;
-v96=v4.stencil_opBack;
-v97=v5.stencil_opBack;
-v98=v4.scissor_box;
-v99=v5.scissor_box;
-v100=v4.viewport;
-v101=v5.viewport;
-return {
-"poll":function(){
-var v52;
-var v57,v58,v59,v60,v61,v62,v63,v64,v65,v72,v73,v76,v77,v80,v81,v82,v83,v84,v85,v90,v91;
-v5.dirty=false;
-v57=v4.dither;
-v58=v4.blend_enable;
-v59=v4.depth_enable;
-v60=v4.cull_enable;
-v61=v4.polygonOffset_enable;
-v62=v4.sample_alpha;
-v63=v4.sample_enable;
-v64=v4.stencil_enable;
-v65=v4.scissor_enable;
-v72=v4.depth_func;
-v73=v5.depth_func;
-v76=v4.depth_mask;
-v77=v5.depth_mask;
-v80=v4.cull_face;
-v81=v5.cull_face;
-v82=v4.frontFace;
-v83=v5.frontFace;
-v84=v4.lineWidth;
-v85=v5.lineWidth;
-v90=v4.stencil_mask;
-v91=v5.stencil_mask;
-v52=v13.next;
-if(v52!==v13.cur){
-if(v52){
-v1.bindFramebuffer(36160,v52.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v52;
-}
-if(v57!==v5.dither){
-if(v57){
-v1.enable(3024)}
-else{
-v1.disable(3024)}
-v5.dither=v57;
-}
-if(v58!==v5.blend_enable){
-if(v58){
-v1.enable(3042)}
-else{
-v1.disable(3042)}
-v5.blend_enable=v58;
-}
-if(v59!==v5.depth_enable){
-if(v59){
-v1.enable(2929)}
-else{
-v1.disable(2929)}
-v5.depth_enable=v59;
-}
-if(v60!==v5.cull_enable){
-if(v60){
-v1.enable(2884)}
-else{
-v1.disable(2884)}
-v5.cull_enable=v60;
-}
-if(v61!==v5.polygonOffset_enable){
-if(v61){
-v1.enable(32823)}
-else{
-v1.disable(32823)}
-v5.polygonOffset_enable=v61;
-}
-if(v62!==v5.sample_alpha){
-if(v62){
-v1.enable(32926)}
-else{
-v1.disable(32926)}
-v5.sample_alpha=v62;
-}
-if(v63!==v5.sample_enable){
-if(v63){
-v1.enable(32928)}
-else{
-v1.disable(32928)}
-v5.sample_enable=v63;
-}
-if(v64!==v5.stencil_enable){
-if(v64){
-v1.enable(2960)}
-else{
-v1.disable(2960)}
-v5.stencil_enable=v64;
-}
-if(v65!==v5.scissor_enable){
-if(v65){
-v1.enable(3089)}
-else{
-v1.disable(3089)}
-v5.scissor_enable=v65;
-}
-if(v66[0]!==v67[0]||v66[1]!==v67[1]||v66[2]!==v67[2]||v66[3]!==v67[3]){
-v1.blendColor(v66[0],v66[1],v66[2],v66[3]);
-v67[0]=v66[0];
-v67[1]=v66[1];
-v67[2]=v66[2];
-v67[3]=v66[3];
-}
-if(v68[0]!==v69[0]||v68[1]!==v69[1]){
-v1.blendEquationSeparate(v68[0],v68[1]);
-v69[0]=v68[0];
-v69[1]=v68[1];
-}
-if(v70[0]!==v71[0]||v70[1]!==v71[1]||v70[2]!==v71[2]||v70[3]!==v71[3]){
-v1.blendFuncSeparate(v70[0],v70[1],v70[2],v70[3]);
-v71[0]=v70[0];
-v71[1]=v70[1];
-v71[2]=v70[2];
-v71[3]=v70[3];
-}
-if(v72!==v73){
-v1.depthFunc(v72);
-v5.depth_func=v72;
-}
-if(v74[0]!==v75[0]||v74[1]!==v75[1]){
-v1.depthRange(v74[0],v74[1]);
-v75[0]=v74[0];
-v75[1]=v74[1];
-}
-if(v76!==v77){
-v1.depthMask(v76);
-v5.depth_mask=v76;
-}
-if(v78[0]!==v79[0]||v78[1]!==v79[1]||v78[2]!==v79[2]||v78[3]!==v79[3]){
-v1.colorMask(v78[0],v78[1],v78[2],v78[3]);
-v79[0]=v78[0];
-v79[1]=v78[1];
-v79[2]=v78[2];
-v79[3]=v78[3];
-}
-if(v80!==v81){
-v1.cullFace(v80);
-v5.cull_face=v80;
-}
-if(v82!==v83){
-v1.frontFace(v82);
-v5.frontFace=v82;
-}
-if(v84!==v85){
-v1.lineWidth(v84);
-v5.lineWidth=v84;
-}
-if(v86[0]!==v87[0]||v86[1]!==v87[1]){
-v1.polygonOffset(v86[0],v86[1]);
-v87[0]=v86[0];
-v87[1]=v86[1];
-}
-if(v88[0]!==v89[0]||v88[1]!==v89[1]){
-v1.sampleCoverage(v88[0],v88[1]);
-v89[0]=v88[0];
-v89[1]=v88[1];
-}
-if(v90!==v91){
-v1.stencilMask(v90);
-v5.stencil_mask=v90;
-}
-if(v92[0]!==v93[0]||v92[1]!==v93[1]||v92[2]!==v93[2]){
-v1.stencilFunc(v92[0],v92[1],v92[2]);
-v93[0]=v92[0];
-v93[1]=v92[1];
-v93[2]=v92[2];
-}
-if(v94[0]!==v95[0]||v94[1]!==v95[1]||v94[2]!==v95[2]||v94[3]!==v95[3]){
-v1.stencilOpSeparate(v94[0],v94[1],v94[2],v94[3]);
-v95[0]=v94[0];
-v95[1]=v94[1];
-v95[2]=v94[2];
-v95[3]=v94[3];
-}
-if(v96[0]!==v97[0]||v96[1]!==v97[1]||v96[2]!==v97[2]||v96[3]!==v97[3]){
-v1.stencilOpSeparate(v96[0],v96[1],v96[2],v96[3]);
-v97[0]=v96[0];
-v97[1]=v96[1];
-v97[2]=v96[2];
-v97[3]=v96[3];
-}
-if(v98[0]!==v99[0]||v98[1]!==v99[1]||v98[2]!==v99[2]||v98[3]!==v99[3]){
-v1.scissor(v98[0],v98[1],v98[2],v98[3]);
-v99[0]=v98[0];
-v99[1]=v98[1];
-v99[2]=v98[2];
-v99[3]=v98[3];
-}
-if(v100[0]!==v101[0]||v100[1]!==v101[1]||v100[2]!==v101[2]||v100[3]!==v101[3]){
-v1.viewport(v100[0],v100[1],v100[2],v100[3]);
-v101[0]=v100[0];
-v101[1]=v100[1];
-v101[2]=v100[2];
-v101[3]=v100[3];
-}
-}
-,"refresh":function(){
-var v53,v54,v55;
-var v57,v58,v59,v60,v61,v62,v63,v64,v65,v72,v73,v76,v77,v80,v81,v82,v83,v84,v85,v90,v91;
-v5.dirty=false;
-v57=v4.dither;
-v58=v4.blend_enable;
-v59=v4.depth_enable;
-v60=v4.cull_enable;
-v61=v4.polygonOffset_enable;
-v62=v4.sample_alpha;
-v63=v4.sample_enable;
-v64=v4.stencil_enable;
-v65=v4.scissor_enable;
-v72=v4.depth_func;
-v73=v5.depth_func;
-v76=v4.depth_mask;
-v77=v5.depth_mask;
-v80=v4.cull_face;
-v81=v5.cull_face;
-v82=v4.frontFace;
-v83=v5.frontFace;
-v84=v4.lineWidth;
-v85=v5.lineWidth;
-v90=v4.stencil_mask;
-v91=v5.stencil_mask;
-v53=v13.next;
-if(v53){
-v1.bindFramebuffer(36160,v53.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v53;
-v54=v10;
-v55=0;
-for(var i=0;
-i<g56;
-++i){
-v55=v54[i];
-if(v55.buffer){
-v1.enableVertexAttribArray(i);
-v1.bindBuffer(34962,v55.buffer.buffer);
-v1.vertexAttribPointer(i,v55.size,v55.type,v55.normalized,v55.stride,v55.offset);
-}
-else{
-v1.disableVertexAttribArray(i);
-v1.vertexAttrib4f(i,v55.x,v55.y,v55.z,v55.w);
-v55.buffer=null;
-}
-}
-v11.currentVAO=null;
-v11.setVAO(v11.targetVAO);
-if(v57){
-v1.enable(3024)}
-else{
-v1.disable(3024)}
-v5.dither=v57;
-if(v58){
-v1.enable(3042)}
-else{
-v1.disable(3042)}
-v5.blend_enable=v58;
-if(v59){
-v1.enable(2929)}
-else{
-v1.disable(2929)}
-v5.depth_enable=v59;
-if(v60){
-v1.enable(2884)}
-else{
-v1.disable(2884)}
-v5.cull_enable=v60;
-if(v61){
-v1.enable(32823)}
-else{
-v1.disable(32823)}
-v5.polygonOffset_enable=v61;
-if(v62){
-v1.enable(32926)}
-else{
-v1.disable(32926)}
-v5.sample_alpha=v62;
-if(v63){
-v1.enable(32928)}
-else{
-v1.disable(32928)}
-v5.sample_enable=v63;
-if(v64){
-v1.enable(2960)}
-else{
-v1.disable(2960)}
-v5.stencil_enable=v64;
-if(v65){
-v1.enable(3089)}
-else{
-v1.disable(3089)}
-v5.scissor_enable=v65;
-v1.blendColor(v66[0],v66[1],v66[2],v66[3]);
-v67[0]=v66[0];
-v67[1]=v66[1];
-v67[2]=v66[2];
-v67[3]=v66[3];
-v1.blendEquationSeparate(v68[0],v68[1]);
-v69[0]=v68[0];
-v69[1]=v68[1];
-v1.blendFuncSeparate(v70[0],v70[1],v70[2],v70[3]);
-v71[0]=v70[0];
-v71[1]=v70[1];
-v71[2]=v70[2];
-v71[3]=v70[3];
-v1.depthFunc(v72);
-v5.depth_func=v72;
-v1.depthRange(v74[0],v74[1]);
-v75[0]=v74[0];
-v75[1]=v74[1];
-v1.depthMask(v76);
-v5.depth_mask=v76;
-v1.colorMask(v78[0],v78[1],v78[2],v78[3]);
-v79[0]=v78[0];
-v79[1]=v78[1];
-v79[2]=v78[2];
-v79[3]=v78[3];
-v1.cullFace(v80);
-v5.cull_face=v80;
-v1.frontFace(v82);
-v5.frontFace=v82;
-v1.lineWidth(v84);
-v5.lineWidth=v84;
-v1.polygonOffset(v86[0],v86[1]);
-v87[0]=v86[0];
-v87[1]=v86[1];
-v1.sampleCoverage(v88[0],v88[1]);
-v89[0]=v88[0];
-v89[1]=v88[1];
-v1.stencilMask(v90);
-v5.stencil_mask=v90;
-v1.stencilFunc(v92[0],v92[1],v92[2]);
-v93[0]=v92[0];
-v93[1]=v92[1];
-v93[2]=v92[2];
-v1.stencilOpSeparate(v94[0],v94[1],v94[2],v94[3]);
-v95[0]=v94[0];
-v95[1]=v94[1];
-v95[2]=v94[2];
-v95[3]=v94[3];
-v1.stencilOpSeparate(v96[0],v96[1],v96[2],v96[3]);
-v97[0]=v96[0];
-v97[1]=v96[1];
-v97[2]=v96[2];
-v97[3]=v96[3];
-v1.scissor(v98[0],v98[1],v98[2],v98[3]);
-v99[0]=v98[0];
-v99[1]=v98[1];
-v99[2]=v98[2];
-v99[3]=v98[3];
-v1.viewport(v100[0],v100[1],v100[2],v100[3]);
-v101[0]=v100[0];
-v101[1]=v100[1];
-v101[2]=v100[2];
-v101[3]=v100[3];
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470 b/src/generated/regl-codegen/a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470
new file mode 100644
index 00000000000..dca7febc49a
--- /dev/null
+++ b/src/generated/regl-codegen/a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470
@@ -0,0 +1,635 @@
+module.exports = function anonymous(g0,g48,g112,g178
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v109,v175;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v109={
+}
+;
+v175={
+}
+;
+return {
+"draw":function(a0){
+var v49,v104,v105,v106,v107,v108,v110,v111;
+v49=v13.next;
+if(v49!==v13.cur){
+if(v49){
+v1.bindFramebuffer(36160,v49.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v49;
+}
+if(v5.dirty){
+var v50,v51,v52,v53,v54,v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93,v94,v95,v96,v97,v98,v99,v100,v101,v102,v103;
+v50=v4.dither;
+if(v50!==v5.dither){
+if(v50){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v50;
+}
+v51=v4.blend_enable;
+if(v51!==v5.blend_enable){
+if(v51){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=v51;
+}
+v52=v17[0];
+v53=v17[1];
+v54=v17[2];
+v55=v17[3];
+if(v52!==v18[0]||v53!==v18[1]||v54!==v18[2]||v55!==v18[3]){
+v1.blendColor(v52,v53,v54,v55);
+v18[0]=v52;
+v18[1]=v53;
+v18[2]=v54;
+v18[3]=v55;
+}
+v56=v19[0];
+v57=v19[1];
+if(v56!==v20[0]||v57!==v20[1]){
+v1.blendEquationSeparate(v56,v57);
+v20[0]=v56;
+v20[1]=v57;
+}
+v58=v21[0];
+v59=v21[1];
+v60=v21[2];
+v61=v21[3];
+if(v58!==v22[0]||v59!==v22[1]||v60!==v22[2]||v61!==v22[3]){
+v1.blendFuncSeparate(v58,v59,v60,v61);
+v22[0]=v58;
+v22[1]=v59;
+v22[2]=v60;
+v22[3]=v61;
+}
+v62=v4.depth_enable;
+if(v62!==v5.depth_enable){
+if(v62){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v62;
+}
+v63=v4.depth_func;
+if(v63!==v5.depth_func){
+v1.depthFunc(v63);
+v5.depth_func=v63;
+}
+v64=v23[0];
+v65=v23[1];
+if(v64!==v24[0]||v65!==v24[1]){
+v1.depthRange(v64,v65);
+v24[0]=v64;
+v24[1]=v65;
+}
+v66=v4.depth_mask;
+if(v66!==v5.depth_mask){
+v1.depthMask(v66);
+v5.depth_mask=v66;
+}
+v67=v25[0];
+v68=v25[1];
+v69=v25[2];
+v70=v25[3];
+if(v67!==v26[0]||v68!==v26[1]||v69!==v26[2]||v70!==v26[3]){
+v1.colorMask(v67,v68,v69,v70);
+v26[0]=v67;
+v26[1]=v68;
+v26[2]=v69;
+v26[3]=v70;
+}
+v71=v4.cull_enable;
+if(v71!==v5.cull_enable){
+if(v71){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v71;
+}
+v72=v4.cull_face;
+if(v72!==v5.cull_face){
+v1.cullFace(v72);
+v5.cull_face=v72;
+}
+v73=v4.frontFace;
+if(v73!==v5.frontFace){
+v1.frontFace(v73);
+v5.frontFace=v73;
+}
+v74=v4.lineWidth;
+if(v74!==v5.lineWidth){
+v1.lineWidth(v74);
+v5.lineWidth=v74;
+}
+v75=v4.polygonOffset_enable;
+if(v75!==v5.polygonOffset_enable){
+if(v75){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v75;
+}
+v76=v27[0];
+v77=v27[1];
+if(v76!==v28[0]||v77!==v28[1]){
+v1.polygonOffset(v76,v77);
+v28[0]=v76;
+v28[1]=v77;
+}
+v78=v4.sample_alpha;
+if(v78!==v5.sample_alpha){
+if(v78){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v78;
+}
+v79=v4.sample_enable;
+if(v79!==v5.sample_enable){
+if(v79){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v79;
+}
+v80=v29[0];
+v81=v29[1];
+if(v80!==v30[0]||v81!==v30[1]){
+v1.sampleCoverage(v80,v81);
+v30[0]=v80;
+v30[1]=v81;
+}
+v82=v4.stencil_enable;
+if(v82!==v5.stencil_enable){
+if(v82){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v82;
+}
+v83=v4.stencil_mask;
+if(v83!==v5.stencil_mask){
+v1.stencilMask(v83);
+v5.stencil_mask=v83;
+}
+v84=v31[0];
+v85=v31[1];
+v86=v31[2];
+if(v84!==v32[0]||v85!==v32[1]||v86!==v32[2]){
+v1.stencilFunc(v84,v85,v86);
+v32[0]=v84;
+v32[1]=v85;
+v32[2]=v86;
+}
+v87=v33[0];
+v88=v33[1];
+v89=v33[2];
+v90=v33[3];
+if(v87!==v34[0]||v88!==v34[1]||v89!==v34[2]||v90!==v34[3]){
+v1.stencilOpSeparate(v87,v88,v89,v90);
+v34[0]=v87;
+v34[1]=v88;
+v34[2]=v89;
+v34[3]=v90;
+}
+v91=v35[0];
+v92=v35[1];
+v93=v35[2];
+v94=v35[3];
+if(v91!==v36[0]||v92!==v36[1]||v93!==v36[2]||v94!==v36[3]){
+v1.stencilOpSeparate(v91,v92,v93,v94);
+v36[0]=v91;
+v36[1]=v92;
+v36[2]=v93;
+v36[3]=v94;
+}
+v95=v4.scissor_enable;
+if(v95!==v5.scissor_enable){
+if(v95){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=v95;
+}
+v96=v37[0];
+v97=v37[1];
+v98=v37[2];
+v99=v37[3];
+if(v96!==v38[0]||v97!==v38[1]||v98!==v38[2]||v99!==v38[3]){
+v1.scissor(v96,v97,v98,v99);
+v38[0]=v96;
+v38[1]=v97;
+v38[2]=v98;
+v38[3]=v99;
+}
+v100=v39[0];
+v101=v39[1];
+v102=v39[2];
+v103=v39[3];
+if(v100!==v40[0]||v101!==v40[1]||v102!==v40[2]||v103!==v40[3]){
+v1.viewport(v100,v101,v102,v103);
+v40[0]=v100;
+v40[1]=v101;
+v40[2]=v102;
+v40[3]=v103;
+}
+v5.dirty=false;
+}
+v104=v5.profile;
+if(v104){
+v105=performance.now();
+g48.count++;
+}
+v106=v9.frag;
+v107=v9.vert;
+v108=v9.program(v107,v106);
+v1.useProgram(v108.program);
+v11.setVAO(null);
+v110=v108.id;
+v111=v109[v110];
+if(v111){
+v111.call(this,a0);
+}
+else{
+v111=v109[v110]=g112(v108);
+v111.call(this,a0);
+}
+v11.setVAO(null);
+if(v104){
+g48.cpuTime+=performance.now()-v105;
+}
+}
+,"scope":function(a0,a1,a2){
+var v113,v114;
+v113=v5.profile;
+if(v113){
+v114=performance.now();
+g48.count++;
+}
+a1(v2,a0,a2);
+if(v113){
+g48.cpuTime+=performance.now()-v114;
+}
+}
+,"batch":function(a0,a1){
+var v115,v170,v171,v172,v173,v174,v176,v177;
+v115=v13.next;
+if(v115!==v13.cur){
+if(v115){
+v1.bindFramebuffer(36160,v115.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v115;
+}
+if(v5.dirty){
+var v116,v117,v118,v119,v120,v121,v122,v123,v124,v125,v126,v127,v128,v129,v130,v131,v132,v133,v134,v135,v136,v137,v138,v139,v140,v141,v142,v143,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169;
+v116=v4.dither;
+if(v116!==v5.dither){
+if(v116){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v116;
+}
+v117=v4.blend_enable;
+if(v117!==v5.blend_enable){
+if(v117){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=v117;
+}
+v118=v17[0];
+v119=v17[1];
+v120=v17[2];
+v121=v17[3];
+if(v118!==v18[0]||v119!==v18[1]||v120!==v18[2]||v121!==v18[3]){
+v1.blendColor(v118,v119,v120,v121);
+v18[0]=v118;
+v18[1]=v119;
+v18[2]=v120;
+v18[3]=v121;
+}
+v122=v19[0];
+v123=v19[1];
+if(v122!==v20[0]||v123!==v20[1]){
+v1.blendEquationSeparate(v122,v123);
+v20[0]=v122;
+v20[1]=v123;
+}
+v124=v21[0];
+v125=v21[1];
+v126=v21[2];
+v127=v21[3];
+if(v124!==v22[0]||v125!==v22[1]||v126!==v22[2]||v127!==v22[3]){
+v1.blendFuncSeparate(v124,v125,v126,v127);
+v22[0]=v124;
+v22[1]=v125;
+v22[2]=v126;
+v22[3]=v127;
+}
+v128=v4.depth_enable;
+if(v128!==v5.depth_enable){
+if(v128){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v128;
+}
+v129=v4.depth_func;
+if(v129!==v5.depth_func){
+v1.depthFunc(v129);
+v5.depth_func=v129;
+}
+v130=v23[0];
+v131=v23[1];
+if(v130!==v24[0]||v131!==v24[1]){
+v1.depthRange(v130,v131);
+v24[0]=v130;
+v24[1]=v131;
+}
+v132=v4.depth_mask;
+if(v132!==v5.depth_mask){
+v1.depthMask(v132);
+v5.depth_mask=v132;
+}
+v133=v25[0];
+v134=v25[1];
+v135=v25[2];
+v136=v25[3];
+if(v133!==v26[0]||v134!==v26[1]||v135!==v26[2]||v136!==v26[3]){
+v1.colorMask(v133,v134,v135,v136);
+v26[0]=v133;
+v26[1]=v134;
+v26[2]=v135;
+v26[3]=v136;
+}
+v137=v4.cull_enable;
+if(v137!==v5.cull_enable){
+if(v137){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v137;
+}
+v138=v4.cull_face;
+if(v138!==v5.cull_face){
+v1.cullFace(v138);
+v5.cull_face=v138;
+}
+v139=v4.frontFace;
+if(v139!==v5.frontFace){
+v1.frontFace(v139);
+v5.frontFace=v139;
+}
+v140=v4.lineWidth;
+if(v140!==v5.lineWidth){
+v1.lineWidth(v140);
+v5.lineWidth=v140;
+}
+v141=v4.polygonOffset_enable;
+if(v141!==v5.polygonOffset_enable){
+if(v141){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v141;
+}
+v142=v27[0];
+v143=v27[1];
+if(v142!==v28[0]||v143!==v28[1]){
+v1.polygonOffset(v142,v143);
+v28[0]=v142;
+v28[1]=v143;
+}
+v144=v4.sample_alpha;
+if(v144!==v5.sample_alpha){
+if(v144){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v144;
+}
+v145=v4.sample_enable;
+if(v145!==v5.sample_enable){
+if(v145){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v145;
+}
+v146=v29[0];
+v147=v29[1];
+if(v146!==v30[0]||v147!==v30[1]){
+v1.sampleCoverage(v146,v147);
+v30[0]=v146;
+v30[1]=v147;
+}
+v148=v4.stencil_enable;
+if(v148!==v5.stencil_enable){
+if(v148){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v148;
+}
+v149=v4.stencil_mask;
+if(v149!==v5.stencil_mask){
+v1.stencilMask(v149);
+v5.stencil_mask=v149;
+}
+v150=v31[0];
+v151=v31[1];
+v152=v31[2];
+if(v150!==v32[0]||v151!==v32[1]||v152!==v32[2]){
+v1.stencilFunc(v150,v151,v152);
+v32[0]=v150;
+v32[1]=v151;
+v32[2]=v152;
+}
+v153=v33[0];
+v154=v33[1];
+v155=v33[2];
+v156=v33[3];
+if(v153!==v34[0]||v154!==v34[1]||v155!==v34[2]||v156!==v34[3]){
+v1.stencilOpSeparate(v153,v154,v155,v156);
+v34[0]=v153;
+v34[1]=v154;
+v34[2]=v155;
+v34[3]=v156;
+}
+v157=v35[0];
+v158=v35[1];
+v159=v35[2];
+v160=v35[3];
+if(v157!==v36[0]||v158!==v36[1]||v159!==v36[2]||v160!==v36[3]){
+v1.stencilOpSeparate(v157,v158,v159,v160);
+v36[0]=v157;
+v36[1]=v158;
+v36[2]=v159;
+v36[3]=v160;
+}
+v161=v4.scissor_enable;
+if(v161!==v5.scissor_enable){
+if(v161){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=v161;
+}
+v162=v37[0];
+v163=v37[1];
+v164=v37[2];
+v165=v37[3];
+if(v162!==v38[0]||v163!==v38[1]||v164!==v38[2]||v165!==v38[3]){
+v1.scissor(v162,v163,v164,v165);
+v38[0]=v162;
+v38[1]=v163;
+v38[2]=v164;
+v38[3]=v165;
+}
+v166=v39[0];
+v167=v39[1];
+v168=v39[2];
+v169=v39[3];
+if(v166!==v40[0]||v167!==v40[1]||v168!==v40[2]||v169!==v40[3]){
+v1.viewport(v166,v167,v168,v169);
+v40[0]=v166;
+v40[1]=v167;
+v40[2]=v168;
+v40[3]=v169;
+}
+v5.dirty=false;
+}
+v170=v5.profile;
+if(v170){
+v171=performance.now();
+g48.count+=a1;
+}
+v172=v9.frag;
+v173=v9.vert;
+v174=v9.program(v173,v172);
+v1.useProgram(v174.program);
+v11.setVAO(null);
+v176=v174.id;
+v177=v175[v176];
+if(v177){
+v177.call(this,a0,a1);
+}
+else{
+v177=v175[v176]=g178(v174);
+v177.call(this,a0,a1);
+}
+v11.setVAO(null);
+if(v170){
+g48.cpuTime+=performance.now()-v171;
+}
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019 b/src/generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019
new file mode 100644
index 00000000000..6ce2a3ebc41
--- /dev/null
+++ b/src/generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019
@@ -0,0 +1,3311 @@
+module.exports = function anonymous(g0,g48,g92,g93,g99,g100,g103,g105,g120,g124,g139,g143,g158,g162,g177,g181,g196,g200,g215,g219,g234,g238,g253,g257,g272,g276,g277,g279,g280,g284,g285,g286,g288,g292,g296,g300,g321,g323,g325,g327,g329,g331,g333,g335,g337,g339,g350,g352,g364,g366,g368,g369,g372,g375,g378,g381,g384,g387,g390,g393,g409,g436,g463,g490,g517,g544,g571,g598,g625,g638,g640,g678,g679,g680,g681
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+return {
+"draw":function(a0){
+var v49,v50,v85,v86,v87,v88,v89,v90,v91,v94,v95,v96,v97,v98,v101,v102,v104,v106,v107,v108,v109,v110,v111,v112,v113,v114,v115,v116,v117,v118,v119,v121,v122,v123,v125,v126,v127,v128,v129,v130,v131,v132,v133,v134,v135,v136,v137,v138,v140,v141,v142,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v159,v160,v161,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v174,v175,v176,v178,v179,v180,v182,v183,v184,v185,v186,v187,v188,v189,v190,v191,v192,v193,v194,v195,v197,v198,v199,v201,v202,v203,v204,v205,v206,v207,v208,v209,v210,v211,v212,v213,v214,v216,v217,v218,v220,v221,v222,v223,v224,v225,v226,v227,v228,v229,v230,v231,v232,v233,v235,v236,v237,v239,v240,v241,v242,v243,v244,v245,v246,v247,v248,v249,v250,v251,v252,v254,v255,v256,v258,v259,v260,v261,v262,v263,v264,v265,v266,v267,v268,v269,v270,v271,v273,v274,v275,v278,v281,v282,v283,v287,v289,v290,v291,v293,v294,v295,v297,v298,v299,v301,v302,v303,v304,v305,v306,v307,v308,v309;
+v49=v14.angle_instanced_arrays;
+v50=v13.next;
+if(v50!==v13.cur){
+if(v50){
+v1.bindFramebuffer(36160,v50.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v50;
+}
+if(v5.dirty){
+var v51,v52,v53,v54,v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84;
+v51=v4.dither;
+if(v51!==v5.dither){
+if(v51){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v51;
+}
+v52=v19[0];
+v53=v19[1];
+if(v52!==v20[0]||v53!==v20[1]){
+v1.blendEquationSeparate(v52,v53);
+v20[0]=v52;
+v20[1]=v53;
+}
+v54=v4.depth_func;
+if(v54!==v5.depth_func){
+v1.depthFunc(v54);
+v5.depth_func=v54;
+}
+v55=v23[0];
+v56=v23[1];
+if(v55!==v24[0]||v56!==v24[1]){
+v1.depthRange(v55,v56);
+v24[0]=v55;
+v24[1]=v56;
+}
+v57=v4.depth_mask;
+if(v57!==v5.depth_mask){
+v1.depthMask(v57);
+v5.depth_mask=v57;
+}
+v58=v25[0];
+v59=v25[1];
+v60=v25[2];
+v61=v25[3];
+if(v58!==v26[0]||v59!==v26[1]||v60!==v26[2]||v61!==v26[3]){
+v1.colorMask(v58,v59,v60,v61);
+v26[0]=v58;
+v26[1]=v59;
+v26[2]=v60;
+v26[3]=v61;
+}
+v62=v4.cull_enable;
+if(v62!==v5.cull_enable){
+if(v62){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v62;
+}
+v63=v4.cull_face;
+if(v63!==v5.cull_face){
+v1.cullFace(v63);
+v5.cull_face=v63;
+}
+v64=v4.frontFace;
+if(v64!==v5.frontFace){
+v1.frontFace(v64);
+v5.frontFace=v64;
+}
+v65=v4.lineWidth;
+if(v65!==v5.lineWidth){
+v1.lineWidth(v65);
+v5.lineWidth=v65;
+}
+v66=v4.polygonOffset_enable;
+if(v66!==v5.polygonOffset_enable){
+if(v66){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v66;
+}
+v67=v27[0];
+v68=v27[1];
+if(v67!==v28[0]||v68!==v28[1]){
+v1.polygonOffset(v67,v68);
+v28[0]=v67;
+v28[1]=v68;
+}
+v69=v4.sample_alpha;
+if(v69!==v5.sample_alpha){
+if(v69){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v69;
+}
+v70=v4.sample_enable;
+if(v70!==v5.sample_enable){
+if(v70){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v70;
+}
+v71=v29[0];
+v72=v29[1];
+if(v71!==v30[0]||v72!==v30[1]){
+v1.sampleCoverage(v71,v72);
+v30[0]=v71;
+v30[1]=v72;
+}
+v73=v4.stencil_mask;
+if(v73!==v5.stencil_mask){
+v1.stencilMask(v73);
+v5.stencil_mask=v73;
+}
+v74=v31[0];
+v75=v31[1];
+v76=v31[2];
+if(v74!==v32[0]||v75!==v32[1]||v76!==v32[2]){
+v1.stencilFunc(v74,v75,v76);
+v32[0]=v74;
+v32[1]=v75;
+v32[2]=v76;
+}
+v77=v33[0];
+v78=v33[1];
+v79=v33[2];
+v80=v33[3];
+if(v77!==v34[0]||v78!==v34[1]||v79!==v34[2]||v80!==v34[3]){
+v1.stencilOpSeparate(v77,v78,v79,v80);
+v34[0]=v77;
+v34[1]=v78;
+v34[2]=v79;
+v34[3]=v80;
+}
+v81=v35[0];
+v82=v35[1];
+v83=v35[2];
+v84=v35[3];
+if(v81!==v36[0]||v82!==v36[1]||v83!==v36[2]||v84!==v36[3]){
+v1.stencilOpSeparate(v81,v82,v83,v84);
+v36[0]=v81;
+v36[1]=v82;
+v36[2]=v83;
+v36[3]=v84;
+}
+}
+v85=a0["viewport"];
+v86=v85.x|0;
+v87=v85.y|0;
+v88="width" in v85?v85.width|0:(v2.framebufferWidth-v86);
+v89="height" in v85?v85.height|0:(v2.framebufferHeight-v87);
+v90=v2.viewportWidth;
+v2.viewportWidth=v88;
+v91=v2.viewportHeight;
+v2.viewportHeight=v89;
+v1.viewport(v86,v87,v88,v89);
+v40[0]=v86;
+v40[1]=v87;
+v40[2]=v88;
+v40[3]=v89;
+v1.blendColor(0,0,0,1);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=1;
+if(g92){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g92;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g93){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g93;
+v94=a0["viewport"];
+v95=v94.x|0;
+v96=v94.y|0;
+v97="width" in v94?v94.width|0:(v2.framebufferWidth-v95);
+v98="height" in v94?v94.height|0:(v2.framebufferHeight-v96);
+v1.scissor(v95,v96,v97,v98);
+v38[0]=v95;
+v38[1]=v96;
+v38[2]=v97;
+v38[3]=v98;
+if(g99){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g99;
+if(g100){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g100;
+v101=v5.profile;
+if(v101){
+v102=performance.now();
+g48.count++;
+}
+v1.useProgram(g103.program);
+v104=v14.angle_instanced_arrays;
+v11.setVAO(null);
+v106=g105.call(this,v2,a0,0);
+v107=false;
+v108=1;
+v109=0;
+v110=0;
+v111=0;
+v112=0;
+v113=null;
+v114=0;
+v115=false;
+v116=5126;
+v117=0;
+v118=0;
+v119=0;
+if(v16(v106)){
+v107=true;
+v113=v8.createStream(34962,v106);
+v116=v113.dtype;
+}
+else{
+v113=v8.getBuffer(v106);
+if(v113){
+v116=v113.dtype;
+}
+else if("constant" in v106){
+v108=2;
+if(typeof v106.constant === "number"){
+v109=v106.constant;
+v110=v111=v112=0;
+}
+else{
+v109=v106.constant.length>0?v106.constant[0]:0;
+v110=v106.constant.length>1?v106.constant[1]:0;
+v111=v106.constant.length>2?v106.constant[2]:0;
+v112=v106.constant.length>3?v106.constant[3]:0;
+}
+}
+else{
+if(v16(v106.buffer)){
+v113=v8.createStream(34962,v106.buffer);
+}
+else{
+v113=v8.getBuffer(v106.buffer);
+}
+v116="type" in v106?v46[v106.type]:v113.dtype;
+v115=!!v106.normalized;
+v114=v106.size|0;
+v117=v106.offset|0;
+v118=v106.stride|0;
+v119=v106.divisor|0;
+}
+}
+v121=g120.location;
+v122=v10[v121];
+if(v108===1){
+if(!v122.buffer){
+v1.enableVertexAttribArray(v121);
+}
+v123=v114||4;
+if(v122.type!==v116||v122.size!==v123||v122.buffer!==v113||v122.normalized!==v115||v122.offset!==v117||v122.stride!==v118){
+v1.bindBuffer(34962,v113.buffer);
+v1.vertexAttribPointer(v121,v123,v116,v115,v118,v117);
+v122.type=v116;
+v122.size=v123;
+v122.buffer=v113;
+v122.normalized=v115;
+v122.offset=v117;
+v122.stride=v118;
+}
+if(v122.divisor!==v119){
+v104.vertexAttribDivisorANGLE(v121,v119);
+v122.divisor=v119;
+}
+}
+else{
+if(v122.buffer){
+v1.disableVertexAttribArray(v121);
+v122.buffer=null;
+}
+if(v122.x!==v109||v122.y!==v110||v122.z!==v111||v122.w!==v112){
+v1.vertexAttrib4f(v121,v109,v110,v111,v112);
+v122.x=v109;
+v122.y=v110;
+v122.z=v111;
+v122.w=v112;
+}
+}
+v125=g124.call(this,v2,a0,0);
+v126=false;
+v127=1;
+v128=0;
+v129=0;
+v130=0;
+v131=0;
+v132=null;
+v133=0;
+v134=false;
+v135=5126;
+v136=0;
+v137=0;
+v138=0;
+if(v16(v125)){
+v126=true;
+v132=v8.createStream(34962,v125);
+v135=v132.dtype;
+}
+else{
+v132=v8.getBuffer(v125);
+if(v132){
+v135=v132.dtype;
+}
+else if("constant" in v125){
+v127=2;
+if(typeof v125.constant === "number"){
+v128=v125.constant;
+v129=v130=v131=0;
+}
+else{
+v128=v125.constant.length>0?v125.constant[0]:0;
+v129=v125.constant.length>1?v125.constant[1]:0;
+v130=v125.constant.length>2?v125.constant[2]:0;
+v131=v125.constant.length>3?v125.constant[3]:0;
+}
+}
+else{
+if(v16(v125.buffer)){
+v132=v8.createStream(34962,v125.buffer);
+}
+else{
+v132=v8.getBuffer(v125.buffer);
+}
+v135="type" in v125?v46[v125.type]:v132.dtype;
+v134=!!v125.normalized;
+v133=v125.size|0;
+v136=v125.offset|0;
+v137=v125.stride|0;
+v138=v125.divisor|0;
+}
+}
+v140=g139.location;
+v141=v10[v140];
+if(v127===1){
+if(!v141.buffer){
+v1.enableVertexAttribArray(v140);
+}
+v142=v133||1;
+if(v141.type!==v135||v141.size!==v142||v141.buffer!==v132||v141.normalized!==v134||v141.offset!==v136||v141.stride!==v137){
+v1.bindBuffer(34962,v132.buffer);
+v1.vertexAttribPointer(v140,v142,v135,v134,v137,v136);
+v141.type=v135;
+v141.size=v142;
+v141.buffer=v132;
+v141.normalized=v134;
+v141.offset=v136;
+v141.stride=v137;
+}
+if(v141.divisor!==v138){
+v104.vertexAttribDivisorANGLE(v140,v138);
+v141.divisor=v138;
+}
+}
+else{
+if(v141.buffer){
+v1.disableVertexAttribArray(v140);
+v141.buffer=null;
+}
+if(v141.x!==v128||v141.y!==v129||v141.z!==v130||v141.w!==v131){
+v1.vertexAttrib4f(v140,v128,v129,v130,v131);
+v141.x=v128;
+v141.y=v129;
+v141.z=v130;
+v141.w=v131;
+}
+}
+v144=g143.call(this,v2,a0,0);
+v145=false;
+v146=1;
+v147=0;
+v148=0;
+v149=0;
+v150=0;
+v151=null;
+v152=0;
+v153=false;
+v154=5126;
+v155=0;
+v156=0;
+v157=0;
+if(v16(v144)){
+v145=true;
+v151=v8.createStream(34962,v144);
+v154=v151.dtype;
+}
+else{
+v151=v8.getBuffer(v144);
+if(v151){
+v154=v151.dtype;
+}
+else if("constant" in v144){
+v146=2;
+if(typeof v144.constant === "number"){
+v147=v144.constant;
+v148=v149=v150=0;
+}
+else{
+v147=v144.constant.length>0?v144.constant[0]:0;
+v148=v144.constant.length>1?v144.constant[1]:0;
+v149=v144.constant.length>2?v144.constant[2]:0;
+v150=v144.constant.length>3?v144.constant[3]:0;
+}
+}
+else{
+if(v16(v144.buffer)){
+v151=v8.createStream(34962,v144.buffer);
+}
+else{
+v151=v8.getBuffer(v144.buffer);
+}
+v154="type" in v144?v46[v144.type]:v151.dtype;
+v153=!!v144.normalized;
+v152=v144.size|0;
+v155=v144.offset|0;
+v156=v144.stride|0;
+v157=v144.divisor|0;
+}
+}
+v159=g158.location;
+v160=v10[v159];
+if(v146===1){
+if(!v160.buffer){
+v1.enableVertexAttribArray(v159);
+}
+v161=v152||4;
+if(v160.type!==v154||v160.size!==v161||v160.buffer!==v151||v160.normalized!==v153||v160.offset!==v155||v160.stride!==v156){
+v1.bindBuffer(34962,v151.buffer);
+v1.vertexAttribPointer(v159,v161,v154,v153,v156,v155);
+v160.type=v154;
+v160.size=v161;
+v160.buffer=v151;
+v160.normalized=v153;
+v160.offset=v155;
+v160.stride=v156;
+}
+if(v160.divisor!==v157){
+v104.vertexAttribDivisorANGLE(v159,v157);
+v160.divisor=v157;
+}
+}
+else{
+if(v160.buffer){
+v1.disableVertexAttribArray(v159);
+v160.buffer=null;
+}
+if(v160.x!==v147||v160.y!==v148||v160.z!==v149||v160.w!==v150){
+v1.vertexAttrib4f(v159,v147,v148,v149,v150);
+v160.x=v147;
+v160.y=v148;
+v160.z=v149;
+v160.w=v150;
+}
+}
+v163=g162.call(this,v2,a0,0);
+v164=false;
+v165=1;
+v166=0;
+v167=0;
+v168=0;
+v169=0;
+v170=null;
+v171=0;
+v172=false;
+v173=5126;
+v174=0;
+v175=0;
+v176=0;
+if(v16(v163)){
+v164=true;
+v170=v8.createStream(34962,v163);
+v173=v170.dtype;
+}
+else{
+v170=v8.getBuffer(v163);
+if(v170){
+v173=v170.dtype;
+}
+else if("constant" in v163){
+v165=2;
+if(typeof v163.constant === "number"){
+v166=v163.constant;
+v167=v168=v169=0;
+}
+else{
+v166=v163.constant.length>0?v163.constant[0]:0;
+v167=v163.constant.length>1?v163.constant[1]:0;
+v168=v163.constant.length>2?v163.constant[2]:0;
+v169=v163.constant.length>3?v163.constant[3]:0;
+}
+}
+else{
+if(v16(v163.buffer)){
+v170=v8.createStream(34962,v163.buffer);
+}
+else{
+v170=v8.getBuffer(v163.buffer);
+}
+v173="type" in v163?v46[v163.type]:v170.dtype;
+v172=!!v163.normalized;
+v171=v163.size|0;
+v174=v163.offset|0;
+v175=v163.stride|0;
+v176=v163.divisor|0;
+}
+}
+v178=g177.location;
+v179=v10[v178];
+if(v165===1){
+if(!v179.buffer){
+v1.enableVertexAttribArray(v178);
+}
+v180=v171||1;
+if(v179.type!==v173||v179.size!==v180||v179.buffer!==v170||v179.normalized!==v172||v179.offset!==v174||v179.stride!==v175){
+v1.bindBuffer(34962,v170.buffer);
+v1.vertexAttribPointer(v178,v180,v173,v172,v175,v174);
+v179.type=v173;
+v179.size=v180;
+v179.buffer=v170;
+v179.normalized=v172;
+v179.offset=v174;
+v179.stride=v175;
+}
+if(v179.divisor!==v176){
+v104.vertexAttribDivisorANGLE(v178,v176);
+v179.divisor=v176;
+}
+}
+else{
+if(v179.buffer){
+v1.disableVertexAttribArray(v178);
+v179.buffer=null;
+}
+if(v179.x!==v166||v179.y!==v167||v179.z!==v168||v179.w!==v169){
+v1.vertexAttrib4f(v178,v166,v167,v168,v169);
+v179.x=v166;
+v179.y=v167;
+v179.z=v168;
+v179.w=v169;
+}
+}
+v182=g181.call(this,v2,a0,0);
+v183=false;
+v184=1;
+v185=0;
+v186=0;
+v187=0;
+v188=0;
+v189=null;
+v190=0;
+v191=false;
+v192=5126;
+v193=0;
+v194=0;
+v195=0;
+if(v16(v182)){
+v183=true;
+v189=v8.createStream(34962,v182);
+v192=v189.dtype;
+}
+else{
+v189=v8.getBuffer(v182);
+if(v189){
+v192=v189.dtype;
+}
+else if("constant" in v182){
+v184=2;
+if(typeof v182.constant === "number"){
+v185=v182.constant;
+v186=v187=v188=0;
+}
+else{
+v185=v182.constant.length>0?v182.constant[0]:0;
+v186=v182.constant.length>1?v182.constant[1]:0;
+v187=v182.constant.length>2?v182.constant[2]:0;
+v188=v182.constant.length>3?v182.constant[3]:0;
+}
+}
+else{
+if(v16(v182.buffer)){
+v189=v8.createStream(34962,v182.buffer);
+}
+else{
+v189=v8.getBuffer(v182.buffer);
+}
+v192="type" in v182?v46[v182.type]:v189.dtype;
+v191=!!v182.normalized;
+v190=v182.size|0;
+v193=v182.offset|0;
+v194=v182.stride|0;
+v195=v182.divisor|0;
+}
+}
+v197=g196.location;
+v198=v10[v197];
+if(v184===1){
+if(!v198.buffer){
+v1.enableVertexAttribArray(v197);
+}
+v199=v190||1;
+if(v198.type!==v192||v198.size!==v199||v198.buffer!==v189||v198.normalized!==v191||v198.offset!==v193||v198.stride!==v194){
+v1.bindBuffer(34962,v189.buffer);
+v1.vertexAttribPointer(v197,v199,v192,v191,v194,v193);
+v198.type=v192;
+v198.size=v199;
+v198.buffer=v189;
+v198.normalized=v191;
+v198.offset=v193;
+v198.stride=v194;
+}
+if(v198.divisor!==v195){
+v104.vertexAttribDivisorANGLE(v197,v195);
+v198.divisor=v195;
+}
+}
+else{
+if(v198.buffer){
+v1.disableVertexAttribArray(v197);
+v198.buffer=null;
+}
+if(v198.x!==v185||v198.y!==v186||v198.z!==v187||v198.w!==v188){
+v1.vertexAttrib4f(v197,v185,v186,v187,v188);
+v198.x=v185;
+v198.y=v186;
+v198.z=v187;
+v198.w=v188;
+}
+}
+v201=g200.call(this,v2,a0,0);
+v202=false;
+v203=1;
+v204=0;
+v205=0;
+v206=0;
+v207=0;
+v208=null;
+v209=0;
+v210=false;
+v211=5126;
+v212=0;
+v213=0;
+v214=0;
+if(v16(v201)){
+v202=true;
+v208=v8.createStream(34962,v201);
+v211=v208.dtype;
+}
+else{
+v208=v8.getBuffer(v201);
+if(v208){
+v211=v208.dtype;
+}
+else if("constant" in v201){
+v203=2;
+if(typeof v201.constant === "number"){
+v204=v201.constant;
+v205=v206=v207=0;
+}
+else{
+v204=v201.constant.length>0?v201.constant[0]:0;
+v205=v201.constant.length>1?v201.constant[1]:0;
+v206=v201.constant.length>2?v201.constant[2]:0;
+v207=v201.constant.length>3?v201.constant[3]:0;
+}
+}
+else{
+if(v16(v201.buffer)){
+v208=v8.createStream(34962,v201.buffer);
+}
+else{
+v208=v8.getBuffer(v201.buffer);
+}
+v211="type" in v201?v46[v201.type]:v208.dtype;
+v210=!!v201.normalized;
+v209=v201.size|0;
+v212=v201.offset|0;
+v213=v201.stride|0;
+v214=v201.divisor|0;
+}
+}
+v216=g215.location;
+v217=v10[v216];
+if(v203===1){
+if(!v217.buffer){
+v1.enableVertexAttribArray(v216);
+}
+v218=v209||1;
+if(v217.type!==v211||v217.size!==v218||v217.buffer!==v208||v217.normalized!==v210||v217.offset!==v212||v217.stride!==v213){
+v1.bindBuffer(34962,v208.buffer);
+v1.vertexAttribPointer(v216,v218,v211,v210,v213,v212);
+v217.type=v211;
+v217.size=v218;
+v217.buffer=v208;
+v217.normalized=v210;
+v217.offset=v212;
+v217.stride=v213;
+}
+if(v217.divisor!==v214){
+v104.vertexAttribDivisorANGLE(v216,v214);
+v217.divisor=v214;
+}
+}
+else{
+if(v217.buffer){
+v1.disableVertexAttribArray(v216);
+v217.buffer=null;
+}
+if(v217.x!==v204||v217.y!==v205||v217.z!==v206||v217.w!==v207){
+v1.vertexAttrib4f(v216,v204,v205,v206,v207);
+v217.x=v204;
+v217.y=v205;
+v217.z=v206;
+v217.w=v207;
+}
+}
+v220=g219.call(this,v2,a0,0);
+v221=false;
+v222=1;
+v223=0;
+v224=0;
+v225=0;
+v226=0;
+v227=null;
+v228=0;
+v229=false;
+v230=5126;
+v231=0;
+v232=0;
+v233=0;
+if(v16(v220)){
+v221=true;
+v227=v8.createStream(34962,v220);
+v230=v227.dtype;
+}
+else{
+v227=v8.getBuffer(v220);
+if(v227){
+v230=v227.dtype;
+}
+else if("constant" in v220){
+v222=2;
+if(typeof v220.constant === "number"){
+v223=v220.constant;
+v224=v225=v226=0;
+}
+else{
+v223=v220.constant.length>0?v220.constant[0]:0;
+v224=v220.constant.length>1?v220.constant[1]:0;
+v225=v220.constant.length>2?v220.constant[2]:0;
+v226=v220.constant.length>3?v220.constant[3]:0;
+}
+}
+else{
+if(v16(v220.buffer)){
+v227=v8.createStream(34962,v220.buffer);
+}
+else{
+v227=v8.getBuffer(v220.buffer);
+}
+v230="type" in v220?v46[v220.type]:v227.dtype;
+v229=!!v220.normalized;
+v228=v220.size|0;
+v231=v220.offset|0;
+v232=v220.stride|0;
+v233=v220.divisor|0;
+}
+}
+v235=g234.location;
+v236=v10[v235];
+if(v222===1){
+if(!v236.buffer){
+v1.enableVertexAttribArray(v235);
+}
+v237=v228||1;
+if(v236.type!==v230||v236.size!==v237||v236.buffer!==v227||v236.normalized!==v229||v236.offset!==v231||v236.stride!==v232){
+v1.bindBuffer(34962,v227.buffer);
+v1.vertexAttribPointer(v235,v237,v230,v229,v232,v231);
+v236.type=v230;
+v236.size=v237;
+v236.buffer=v227;
+v236.normalized=v229;
+v236.offset=v231;
+v236.stride=v232;
+}
+if(v236.divisor!==v233){
+v104.vertexAttribDivisorANGLE(v235,v233);
+v236.divisor=v233;
+}
+}
+else{
+if(v236.buffer){
+v1.disableVertexAttribArray(v235);
+v236.buffer=null;
+}
+if(v236.x!==v223||v236.y!==v224||v236.z!==v225||v236.w!==v226){
+v1.vertexAttrib4f(v235,v223,v224,v225,v226);
+v236.x=v223;
+v236.y=v224;
+v236.z=v225;
+v236.w=v226;
+}
+}
+v239=g238.call(this,v2,a0,0);
+v240=false;
+v241=1;
+v242=0;
+v243=0;
+v244=0;
+v245=0;
+v246=null;
+v247=0;
+v248=false;
+v249=5126;
+v250=0;
+v251=0;
+v252=0;
+if(v16(v239)){
+v240=true;
+v246=v8.createStream(34962,v239);
+v249=v246.dtype;
+}
+else{
+v246=v8.getBuffer(v239);
+if(v246){
+v249=v246.dtype;
+}
+else if("constant" in v239){
+v241=2;
+if(typeof v239.constant === "number"){
+v242=v239.constant;
+v243=v244=v245=0;
+}
+else{
+v242=v239.constant.length>0?v239.constant[0]:0;
+v243=v239.constant.length>1?v239.constant[1]:0;
+v244=v239.constant.length>2?v239.constant[2]:0;
+v245=v239.constant.length>3?v239.constant[3]:0;
+}
+}
+else{
+if(v16(v239.buffer)){
+v246=v8.createStream(34962,v239.buffer);
+}
+else{
+v246=v8.getBuffer(v239.buffer);
+}
+v249="type" in v239?v46[v239.type]:v246.dtype;
+v248=!!v239.normalized;
+v247=v239.size|0;
+v250=v239.offset|0;
+v251=v239.stride|0;
+v252=v239.divisor|0;
+}
+}
+v254=g253.location;
+v255=v10[v254];
+if(v241===1){
+if(!v255.buffer){
+v1.enableVertexAttribArray(v254);
+}
+v256=v247||1;
+if(v255.type!==v249||v255.size!==v256||v255.buffer!==v246||v255.normalized!==v248||v255.offset!==v250||v255.stride!==v251){
+v1.bindBuffer(34962,v246.buffer);
+v1.vertexAttribPointer(v254,v256,v249,v248,v251,v250);
+v255.type=v249;
+v255.size=v256;
+v255.buffer=v246;
+v255.normalized=v248;
+v255.offset=v250;
+v255.stride=v251;
+}
+if(v255.divisor!==v252){
+v104.vertexAttribDivisorANGLE(v254,v252);
+v255.divisor=v252;
+}
+}
+else{
+if(v255.buffer){
+v1.disableVertexAttribArray(v254);
+v255.buffer=null;
+}
+if(v255.x!==v242||v255.y!==v243||v255.z!==v244||v255.w!==v245){
+v1.vertexAttrib4f(v254,v242,v243,v244,v245);
+v255.x=v242;
+v255.y=v243;
+v255.z=v244;
+v255.w=v245;
+}
+}
+v258=g257.call(this,v2,a0,0);
+v259=false;
+v260=1;
+v261=0;
+v262=0;
+v263=0;
+v264=0;
+v265=null;
+v266=0;
+v267=false;
+v268=5126;
+v269=0;
+v270=0;
+v271=0;
+if(v16(v258)){
+v259=true;
+v265=v8.createStream(34962,v258);
+v268=v265.dtype;
+}
+else{
+v265=v8.getBuffer(v258);
+if(v265){
+v268=v265.dtype;
+}
+else if("constant" in v258){
+v260=2;
+if(typeof v258.constant === "number"){
+v261=v258.constant;
+v262=v263=v264=0;
+}
+else{
+v261=v258.constant.length>0?v258.constant[0]:0;
+v262=v258.constant.length>1?v258.constant[1]:0;
+v263=v258.constant.length>2?v258.constant[2]:0;
+v264=v258.constant.length>3?v258.constant[3]:0;
+}
+}
+else{
+if(v16(v258.buffer)){
+v265=v8.createStream(34962,v258.buffer);
+}
+else{
+v265=v8.getBuffer(v258.buffer);
+}
+v268="type" in v258?v46[v258.type]:v265.dtype;
+v267=!!v258.normalized;
+v266=v258.size|0;
+v269=v258.offset|0;
+v270=v258.stride|0;
+v271=v258.divisor|0;
+}
+}
+v273=g272.location;
+v274=v10[v273];
+if(v260===1){
+if(!v274.buffer){
+v1.enableVertexAttribArray(v273);
+}
+v275=v266||1;
+if(v274.type!==v268||v274.size!==v275||v274.buffer!==v265||v274.normalized!==v267||v274.offset!==v269||v274.stride!==v270){
+v1.bindBuffer(34962,v265.buffer);
+v1.vertexAttribPointer(v273,v275,v268,v267,v270,v269);
+v274.type=v268;
+v274.size=v275;
+v274.buffer=v265;
+v274.normalized=v267;
+v274.offset=v269;
+v274.stride=v270;
+}
+if(v274.divisor!==v271){
+v104.vertexAttribDivisorANGLE(v273,v271);
+v274.divisor=v271;
+}
+}
+else{
+if(v274.buffer){
+v1.disableVertexAttribArray(v273);
+v274.buffer=null;
+}
+if(v274.x!==v261||v274.y!==v262||v274.z!==v263||v274.w!==v264){
+v1.vertexAttrib4f(v273,v261,v262,v263,v264);
+v274.x=v261;
+v274.y=v262;
+v274.z=v263;
+v274.w=v264;
+}
+}
+v1.uniform1i(g276.location,false);
+v278=a0["opacity"];
+v1.uniform1f(g277.location,v278);
+v281=g280.call(this,v2,a0,0);
+v282=v281[0];
+v283=v281[1];
+v1.uniform2f(g279.location,v282,v283);
+v1.uniform1i(g284.location,g285.bind());
+v287=v2["pixelRatio"];
+v1.uniform1f(g286.location,v287);
+v289=a0["scale"];
+v290=v289[0];
+v291=v289[1];
+v1.uniform2f(g288.location,v290,v291);
+v293=a0["scaleFract"];
+v294=v293[0];
+v295=v293[1];
+v1.uniform2f(g292.location,v294,v295);
+v297=a0["translate"];
+v298=v297[0];
+v299=v297[1];
+v1.uniform2f(g296.location,v298,v299);
+v301=a0["translateFract"];
+v302=v301[0];
+v303=v301[1];
+v1.uniform2f(g300.location,v302,v303);
+v304=a0["elements"];
+v305=null;
+v306=v16(v304);
+if(v306){
+v305=v7.createStream(v304);
+}
+else{
+v305=v7.getElements(v304);
+}
+if(v305)v1.bindBuffer(34963,v305.buffer.buffer);
+v307=a0["offset"];
+v308=a0["count"];
+if(v308){
+v309=v6.instances;
+if(v309>0){
+if(v305){
+v104.drawElementsInstancedANGLE(0,v308,v305.type,v307<<((v305.type-5121)>>1),v309);
+}
+else{
+v104.drawArraysInstancedANGLE(0,v307,v308,v309);
+}
+}
+else if(v309<0){
+if(v305){
+v1.drawElements(0,v308,v305.type,v307<<((v305.type-5121)>>1));
+}
+else{
+v1.drawArrays(0,v307,v308);
+}
+}
+v5.dirty=true;
+v11.setVAO(null);
+v2.viewportWidth=v90;
+v2.viewportHeight=v91;
+if(v101){
+g48.cpuTime+=performance.now()-v102;
+}
+if(v107){
+v8.destroyStream(v113);
+}
+if(v126){
+v8.destroyStream(v132);
+}
+if(v145){
+v8.destroyStream(v151);
+}
+if(v164){
+v8.destroyStream(v170);
+}
+if(v183){
+v8.destroyStream(v189);
+}
+if(v202){
+v8.destroyStream(v208);
+}
+if(v221){
+v8.destroyStream(v227);
+}
+if(v240){
+v8.destroyStream(v246);
+}
+if(v259){
+v8.destroyStream(v265);
+}
+g285.unbind();
+if(v306){
+v7.destroyStream(v305);
+}
+}
+}
+,"scope":function(a0,a1,a2){
+var v310,v311,v312,v313,v314,v315,v316,v317,v318,v319,v320,v322,v324,v326,v328,v330,v332,v334,v336,v338,v340,v341,v342,v343,v344,v345,v346,v347,v348,v349,v351,v353,v354,v355,v356,v357,v358,v359,v360,v361,v362,v363,v365,v367,v370,v371,v373,v374,v376,v377,v379,v380,v382,v383,v385,v386,v388,v389,v391,v392,v394,v395,v396,v397,v398,v399,v400,v401,v402,v403,v404,v405,v406,v407,v408,v410,v411,v412,v413,v414,v415,v416,v417,v418,v419,v420,v421,v422,v423,v424,v425,v426,v427,v428,v429,v430,v431,v432,v433,v434,v435,v437,v438,v439,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v452,v453,v454,v455,v456,v457,v458,v459,v460,v461,v462,v464,v465,v466,v467,v468,v469,v470,v471,v472,v473,v474,v475,v476,v477,v478,v479,v480,v481,v482,v483,v484,v485,v486,v487,v488,v489,v491,v492,v493,v494,v495,v496,v497,v498,v499,v500,v501,v502,v503,v504,v505,v506,v507,v508,v509,v510,v511,v512,v513,v514,v515,v516,v518,v519,v520,v521,v522,v523,v524,v525,v526,v527,v528,v529,v530,v531,v532,v533,v534,v535,v536,v537,v538,v539,v540,v541,v542,v543,v545,v546,v547,v548,v549,v550,v551,v552,v553,v554,v555,v556,v557,v558,v559,v560,v561,v562,v563,v564,v565,v566,v567,v568,v569,v570,v572,v573,v574,v575,v576,v577,v578,v579,v580,v581,v582,v583,v584,v585,v586,v587,v588,v589,v590,v591,v592,v593,v594,v595,v596,v597,v599,v600,v601,v602,v603,v604,v605,v606,v607,v608,v609,v610,v611,v612,v613,v614,v615,v616,v617,v618,v619,v620,v621,v622,v623,v624,v626,v627,v628,v629,v630,v631,v632,v633,v634,v635,v636,v637,v639,v641;
+v310=a0["viewport"];
+v311=v310.x|0;
+v312=v310.y|0;
+v313="width" in v310?v310.width|0:(v2.framebufferWidth-v311);
+v314="height" in v310?v310.height|0:(v2.framebufferHeight-v312);
+v315=v2.viewportWidth;
+v2.viewportWidth=v313;
+v316=v2.viewportHeight;
+v2.viewportHeight=v314;
+v317=v39[0];
+v39[0]=v311;
+v318=v39[1];
+v39[1]=v312;
+v319=v39[2];
+v39[2]=v313;
+v320=v39[3];
+v39[3]=v314;
+v322=v17[0];
+v17[0]=g321;
+v324=v17[1];
+v17[1]=g323;
+v326=v17[2];
+v17[2]=g325;
+v328=v17[3];
+v17[3]=g327;
+v330=v4.blend_enable;
+v4.blend_enable=g329;
+v332=v21[0];
+v21[0]=g331;
+v334=v21[1];
+v21[1]=g333;
+v336=v21[2];
+v21[2]=g335;
+v338=v21[3];
+v21[3]=g337;
+v340=v4.depth_enable;
+v4.depth_enable=g339;
+v341=a0["viewport"];
+v342=v341.x|0;
+v343=v341.y|0;
+v344="width" in v341?v341.width|0:(v2.framebufferWidth-v342);
+v345="height" in v341?v341.height|0:(v2.framebufferHeight-v343);
+v346=v37[0];
+v37[0]=v342;
+v347=v37[1];
+v37[1]=v343;
+v348=v37[2];
+v37[2]=v344;
+v349=v37[3];
+v37[3]=v345;
+v351=v4.scissor_enable;
+v4.scissor_enable=g350;
+v353=v4.stencil_enable;
+v4.stencil_enable=g352;
+v354=v5.profile;
+if(v354){
+v355=performance.now();
+g48.count++;
+}
+v356=a0["elements"];
+v357=null;
+v358=v16(v356);
+if(v358){
+v357=v7.createStream(v356);
+}
+else{
+v357=v7.getElements(v356);
+}
+v359=v6.elements;
+v6.elements=v357;
+v360=a0["offset"];
+v361=v6.offset;
+v6.offset=v360;
+v362=a0["count"];
+v363=v6.count;
+v6.count=v362;
+v365=v6.primitive;
+v6.primitive=g364;
+v367=v12[g366];
+v12[g366]=false;
+v370=v12[g369];
+v12[g369]=g368;
+v371=a0["opacity"];
+v373=v12[g372];
+v12[g372]=v371;
+v374=g280.call(this,v2,a0,a2);
+v376=v12[g375];
+v12[g375]=v374;
+v377=v2["pixelRatio"];
+v379=v12[g378];
+v12[g378]=v377;
+v380=a0["scale"];
+v382=v12[g381];
+v12[g381]=v380;
+v383=a0["scaleFract"];
+v385=v12[g384];
+v12[g384]=v383;
+v386=a0["translate"];
+v388=v12[g387];
+v12[g387]=v386;
+v389=a0["translateFract"];
+v391=v12[g390];
+v12[g390]=v389;
+v392=a0["markerTexture"];
+v394=v12[g393];
+v12[g393]=v392;
+v395=g200.call(this,v2,a0,a2);
+v396=false;
+v397=1;
+v398=0;
+v399=0;
+v400=0;
+v401=0;
+v402=null;
+v403=0;
+v404=false;
+v405=5126;
+v406=0;
+v407=0;
+v408=0;
+if(v16(v395)){
+v396=true;
+v402=v8.createStream(34962,v395);
+v405=v402.dtype;
+}
+else{
+v402=v8.getBuffer(v395);
+if(v402){
+v405=v402.dtype;
+}
+else if("constant" in v395){
+v397=2;
+if(typeof v395.constant === "number"){
+v398=v395.constant;
+v399=v400=v401=0;
+}
+else{
+v398=v395.constant.length>0?v395.constant[0]:0;
+v399=v395.constant.length>1?v395.constant[1]:0;
+v400=v395.constant.length>2?v395.constant[2]:0;
+v401=v395.constant.length>3?v395.constant[3]:0;
+}
+}
+else{
+if(v16(v395.buffer)){
+v402=v8.createStream(34962,v395.buffer);
+}
+else{
+v402=v8.getBuffer(v395.buffer);
+}
+v405="type" in v395?v46[v395.type]:v402.dtype;
+v404=!!v395.normalized;
+v403=v395.size|0;
+v406=v395.offset|0;
+v407=v395.stride|0;
+v408=v395.divisor|0;
+}
+}
+v410=g409.state;
+g409.state=v397;
+v411=g409.x;
+g409.x=v398;
+v412=g409.y;
+g409.y=v399;
+v413=g409.z;
+g409.z=v400;
+v414=g409.w;
+g409.w=v401;
+v415=g409.buffer;
+g409.buffer=v402;
+v416=g409.size;
+g409.size=v403;
+v417=g409.normalized;
+g409.normalized=v404;
+v418=g409.type;
+g409.type=v405;
+v419=g409.offset;
+g409.offset=v406;
+v420=g409.stride;
+g409.stride=v407;
+v421=g409.divisor;
+g409.divisor=v408;
+v422=g238.call(this,v2,a0,a2);
+v423=false;
+v424=1;
+v425=0;
+v426=0;
+v427=0;
+v428=0;
+v429=null;
+v430=0;
+v431=false;
+v432=5126;
+v433=0;
+v434=0;
+v435=0;
+if(v16(v422)){
+v423=true;
+v429=v8.createStream(34962,v422);
+v432=v429.dtype;
+}
+else{
+v429=v8.getBuffer(v422);
+if(v429){
+v432=v429.dtype;
+}
+else if("constant" in v422){
+v424=2;
+if(typeof v422.constant === "number"){
+v425=v422.constant;
+v426=v427=v428=0;
+}
+else{
+v425=v422.constant.length>0?v422.constant[0]:0;
+v426=v422.constant.length>1?v422.constant[1]:0;
+v427=v422.constant.length>2?v422.constant[2]:0;
+v428=v422.constant.length>3?v422.constant[3]:0;
+}
+}
+else{
+if(v16(v422.buffer)){
+v429=v8.createStream(34962,v422.buffer);
+}
+else{
+v429=v8.getBuffer(v422.buffer);
+}
+v432="type" in v422?v46[v422.type]:v429.dtype;
+v431=!!v422.normalized;
+v430=v422.size|0;
+v433=v422.offset|0;
+v434=v422.stride|0;
+v435=v422.divisor|0;
+}
+}
+v437=g436.state;
+g436.state=v424;
+v438=g436.x;
+g436.x=v425;
+v439=g436.y;
+g436.y=v426;
+v440=g436.z;
+g436.z=v427;
+v441=g436.w;
+g436.w=v428;
+v442=g436.buffer;
+g436.buffer=v429;
+v443=g436.size;
+g436.size=v430;
+v444=g436.normalized;
+g436.normalized=v431;
+v445=g436.type;
+g436.type=v432;
+v446=g436.offset;
+g436.offset=v433;
+v447=g436.stride;
+g436.stride=v434;
+v448=g436.divisor;
+g436.divisor=v435;
+v449=g219.call(this,v2,a0,a2);
+v450=false;
+v451=1;
+v452=0;
+v453=0;
+v454=0;
+v455=0;
+v456=null;
+v457=0;
+v458=false;
+v459=5126;
+v460=0;
+v461=0;
+v462=0;
+if(v16(v449)){
+v450=true;
+v456=v8.createStream(34962,v449);
+v459=v456.dtype;
+}
+else{
+v456=v8.getBuffer(v449);
+if(v456){
+v459=v456.dtype;
+}
+else if("constant" in v449){
+v451=2;
+if(typeof v449.constant === "number"){
+v452=v449.constant;
+v453=v454=v455=0;
+}
+else{
+v452=v449.constant.length>0?v449.constant[0]:0;
+v453=v449.constant.length>1?v449.constant[1]:0;
+v454=v449.constant.length>2?v449.constant[2]:0;
+v455=v449.constant.length>3?v449.constant[3]:0;
+}
+}
+else{
+if(v16(v449.buffer)){
+v456=v8.createStream(34962,v449.buffer);
+}
+else{
+v456=v8.getBuffer(v449.buffer);
+}
+v459="type" in v449?v46[v449.type]:v456.dtype;
+v458=!!v449.normalized;
+v457=v449.size|0;
+v460=v449.offset|0;
+v461=v449.stride|0;
+v462=v449.divisor|0;
+}
+}
+v464=g463.state;
+g463.state=v451;
+v465=g463.x;
+g463.x=v452;
+v466=g463.y;
+g463.y=v453;
+v467=g463.z;
+g463.z=v454;
+v468=g463.w;
+g463.w=v455;
+v469=g463.buffer;
+g463.buffer=v456;
+v470=g463.size;
+g463.size=v457;
+v471=g463.normalized;
+g463.normalized=v458;
+v472=g463.type;
+g463.type=v459;
+v473=g463.offset;
+g463.offset=v460;
+v474=g463.stride;
+g463.stride=v461;
+v475=g463.divisor;
+g463.divisor=v462;
+v476=g257.call(this,v2,a0,a2);
+v477=false;
+v478=1;
+v479=0;
+v480=0;
+v481=0;
+v482=0;
+v483=null;
+v484=0;
+v485=false;
+v486=5126;
+v487=0;
+v488=0;
+v489=0;
+if(v16(v476)){
+v477=true;
+v483=v8.createStream(34962,v476);
+v486=v483.dtype;
+}
+else{
+v483=v8.getBuffer(v476);
+if(v483){
+v486=v483.dtype;
+}
+else if("constant" in v476){
+v478=2;
+if(typeof v476.constant === "number"){
+v479=v476.constant;
+v480=v481=v482=0;
+}
+else{
+v479=v476.constant.length>0?v476.constant[0]:0;
+v480=v476.constant.length>1?v476.constant[1]:0;
+v481=v476.constant.length>2?v476.constant[2]:0;
+v482=v476.constant.length>3?v476.constant[3]:0;
+}
+}
+else{
+if(v16(v476.buffer)){
+v483=v8.createStream(34962,v476.buffer);
+}
+else{
+v483=v8.getBuffer(v476.buffer);
+}
+v486="type" in v476?v46[v476.type]:v483.dtype;
+v485=!!v476.normalized;
+v484=v476.size|0;
+v487=v476.offset|0;
+v488=v476.stride|0;
+v489=v476.divisor|0;
+}
+}
+v491=g490.state;
+g490.state=v478;
+v492=g490.x;
+g490.x=v479;
+v493=g490.y;
+g490.y=v480;
+v494=g490.z;
+g490.z=v481;
+v495=g490.w;
+g490.w=v482;
+v496=g490.buffer;
+g490.buffer=v483;
+v497=g490.size;
+g490.size=v484;
+v498=g490.normalized;
+g490.normalized=v485;
+v499=g490.type;
+g490.type=v486;
+v500=g490.offset;
+g490.offset=v487;
+v501=g490.stride;
+g490.stride=v488;
+v502=g490.divisor;
+g490.divisor=v489;
+v503=g181.call(this,v2,a0,a2);
+v504=false;
+v505=1;
+v506=0;
+v507=0;
+v508=0;
+v509=0;
+v510=null;
+v511=0;
+v512=false;
+v513=5126;
+v514=0;
+v515=0;
+v516=0;
+if(v16(v503)){
+v504=true;
+v510=v8.createStream(34962,v503);
+v513=v510.dtype;
+}
+else{
+v510=v8.getBuffer(v503);
+if(v510){
+v513=v510.dtype;
+}
+else if("constant" in v503){
+v505=2;
+if(typeof v503.constant === "number"){
+v506=v503.constant;
+v507=v508=v509=0;
+}
+else{
+v506=v503.constant.length>0?v503.constant[0]:0;
+v507=v503.constant.length>1?v503.constant[1]:0;
+v508=v503.constant.length>2?v503.constant[2]:0;
+v509=v503.constant.length>3?v503.constant[3]:0;
+}
+}
+else{
+if(v16(v503.buffer)){
+v510=v8.createStream(34962,v503.buffer);
+}
+else{
+v510=v8.getBuffer(v503.buffer);
+}
+v513="type" in v503?v46[v503.type]:v510.dtype;
+v512=!!v503.normalized;
+v511=v503.size|0;
+v514=v503.offset|0;
+v515=v503.stride|0;
+v516=v503.divisor|0;
+}
+}
+v518=g517.state;
+g517.state=v505;
+v519=g517.x;
+g517.x=v506;
+v520=g517.y;
+g517.y=v507;
+v521=g517.z;
+g517.z=v508;
+v522=g517.w;
+g517.w=v509;
+v523=g517.buffer;
+g517.buffer=v510;
+v524=g517.size;
+g517.size=v511;
+v525=g517.normalized;
+g517.normalized=v512;
+v526=g517.type;
+g517.type=v513;
+v527=g517.offset;
+g517.offset=v514;
+v528=g517.stride;
+g517.stride=v515;
+v529=g517.divisor;
+g517.divisor=v516;
+v530=g124.call(this,v2,a0,a2);
+v531=false;
+v532=1;
+v533=0;
+v534=0;
+v535=0;
+v536=0;
+v537=null;
+v538=0;
+v539=false;
+v540=5126;
+v541=0;
+v542=0;
+v543=0;
+if(v16(v530)){
+v531=true;
+v537=v8.createStream(34962,v530);
+v540=v537.dtype;
+}
+else{
+v537=v8.getBuffer(v530);
+if(v537){
+v540=v537.dtype;
+}
+else if("constant" in v530){
+v532=2;
+if(typeof v530.constant === "number"){
+v533=v530.constant;
+v534=v535=v536=0;
+}
+else{
+v533=v530.constant.length>0?v530.constant[0]:0;
+v534=v530.constant.length>1?v530.constant[1]:0;
+v535=v530.constant.length>2?v530.constant[2]:0;
+v536=v530.constant.length>3?v530.constant[3]:0;
+}
+}
+else{
+if(v16(v530.buffer)){
+v537=v8.createStream(34962,v530.buffer);
+}
+else{
+v537=v8.getBuffer(v530.buffer);
+}
+v540="type" in v530?v46[v530.type]:v537.dtype;
+v539=!!v530.normalized;
+v538=v530.size|0;
+v541=v530.offset|0;
+v542=v530.stride|0;
+v543=v530.divisor|0;
+}
+}
+v545=g544.state;
+g544.state=v532;
+v546=g544.x;
+g544.x=v533;
+v547=g544.y;
+g544.y=v534;
+v548=g544.z;
+g544.z=v535;
+v549=g544.w;
+g544.w=v536;
+v550=g544.buffer;
+g544.buffer=v537;
+v551=g544.size;
+g544.size=v538;
+v552=g544.normalized;
+g544.normalized=v539;
+v553=g544.type;
+g544.type=v540;
+v554=g544.offset;
+g544.offset=v541;
+v555=g544.stride;
+g544.stride=v542;
+v556=g544.divisor;
+g544.divisor=v543;
+v557=g143.call(this,v2,a0,a2);
+v558=false;
+v559=1;
+v560=0;
+v561=0;
+v562=0;
+v563=0;
+v564=null;
+v565=0;
+v566=false;
+v567=5126;
+v568=0;
+v569=0;
+v570=0;
+if(v16(v557)){
+v558=true;
+v564=v8.createStream(34962,v557);
+v567=v564.dtype;
+}
+else{
+v564=v8.getBuffer(v557);
+if(v564){
+v567=v564.dtype;
+}
+else if("constant" in v557){
+v559=2;
+if(typeof v557.constant === "number"){
+v560=v557.constant;
+v561=v562=v563=0;
+}
+else{
+v560=v557.constant.length>0?v557.constant[0]:0;
+v561=v557.constant.length>1?v557.constant[1]:0;
+v562=v557.constant.length>2?v557.constant[2]:0;
+v563=v557.constant.length>3?v557.constant[3]:0;
+}
+}
+else{
+if(v16(v557.buffer)){
+v564=v8.createStream(34962,v557.buffer);
+}
+else{
+v564=v8.getBuffer(v557.buffer);
+}
+v567="type" in v557?v46[v557.type]:v564.dtype;
+v566=!!v557.normalized;
+v565=v557.size|0;
+v568=v557.offset|0;
+v569=v557.stride|0;
+v570=v557.divisor|0;
+}
+}
+v572=g571.state;
+g571.state=v559;
+v573=g571.x;
+g571.x=v560;
+v574=g571.y;
+g571.y=v561;
+v575=g571.z;
+g571.z=v562;
+v576=g571.w;
+g571.w=v563;
+v577=g571.buffer;
+g571.buffer=v564;
+v578=g571.size;
+g571.size=v565;
+v579=g571.normalized;
+g571.normalized=v566;
+v580=g571.type;
+g571.type=v567;
+v581=g571.offset;
+g571.offset=v568;
+v582=g571.stride;
+g571.stride=v569;
+v583=g571.divisor;
+g571.divisor=v570;
+v584=g105.call(this,v2,a0,a2);
+v585=false;
+v586=1;
+v587=0;
+v588=0;
+v589=0;
+v590=0;
+v591=null;
+v592=0;
+v593=false;
+v594=5126;
+v595=0;
+v596=0;
+v597=0;
+if(v16(v584)){
+v585=true;
+v591=v8.createStream(34962,v584);
+v594=v591.dtype;
+}
+else{
+v591=v8.getBuffer(v584);
+if(v591){
+v594=v591.dtype;
+}
+else if("constant" in v584){
+v586=2;
+if(typeof v584.constant === "number"){
+v587=v584.constant;
+v588=v589=v590=0;
+}
+else{
+v587=v584.constant.length>0?v584.constant[0]:0;
+v588=v584.constant.length>1?v584.constant[1]:0;
+v589=v584.constant.length>2?v584.constant[2]:0;
+v590=v584.constant.length>3?v584.constant[3]:0;
+}
+}
+else{
+if(v16(v584.buffer)){
+v591=v8.createStream(34962,v584.buffer);
+}
+else{
+v591=v8.getBuffer(v584.buffer);
+}
+v594="type" in v584?v46[v584.type]:v591.dtype;
+v593=!!v584.normalized;
+v592=v584.size|0;
+v595=v584.offset|0;
+v596=v584.stride|0;
+v597=v584.divisor|0;
+}
+}
+v599=g598.state;
+g598.state=v586;
+v600=g598.x;
+g598.x=v587;
+v601=g598.y;
+g598.y=v588;
+v602=g598.z;
+g598.z=v589;
+v603=g598.w;
+g598.w=v590;
+v604=g598.buffer;
+g598.buffer=v591;
+v605=g598.size;
+g598.size=v592;
+v606=g598.normalized;
+g598.normalized=v593;
+v607=g598.type;
+g598.type=v594;
+v608=g598.offset;
+g598.offset=v595;
+v609=g598.stride;
+g598.stride=v596;
+v610=g598.divisor;
+g598.divisor=v597;
+v611=g162.call(this,v2,a0,a2);
+v612=false;
+v613=1;
+v614=0;
+v615=0;
+v616=0;
+v617=0;
+v618=null;
+v619=0;
+v620=false;
+v621=5126;
+v622=0;
+v623=0;
+v624=0;
+if(v16(v611)){
+v612=true;
+v618=v8.createStream(34962,v611);
+v621=v618.dtype;
+}
+else{
+v618=v8.getBuffer(v611);
+if(v618){
+v621=v618.dtype;
+}
+else if("constant" in v611){
+v613=2;
+if(typeof v611.constant === "number"){
+v614=v611.constant;
+v615=v616=v617=0;
+}
+else{
+v614=v611.constant.length>0?v611.constant[0]:0;
+v615=v611.constant.length>1?v611.constant[1]:0;
+v616=v611.constant.length>2?v611.constant[2]:0;
+v617=v611.constant.length>3?v611.constant[3]:0;
+}
+}
+else{
+if(v16(v611.buffer)){
+v618=v8.createStream(34962,v611.buffer);
+}
+else{
+v618=v8.getBuffer(v611.buffer);
+}
+v621="type" in v611?v46[v611.type]:v618.dtype;
+v620=!!v611.normalized;
+v619=v611.size|0;
+v622=v611.offset|0;
+v623=v611.stride|0;
+v624=v611.divisor|0;
+}
+}
+v626=g625.state;
+g625.state=v613;
+v627=g625.x;
+g625.x=v614;
+v628=g625.y;
+g625.y=v615;
+v629=g625.z;
+g625.z=v616;
+v630=g625.w;
+g625.w=v617;
+v631=g625.buffer;
+g625.buffer=v618;
+v632=g625.size;
+g625.size=v619;
+v633=g625.normalized;
+g625.normalized=v620;
+v634=g625.type;
+g625.type=v621;
+v635=g625.offset;
+g625.offset=v622;
+v636=g625.stride;
+g625.stride=v623;
+v637=g625.divisor;
+g625.divisor=v624;
+v639=v9.vert;
+v9.vert=g638;
+v641=v9.frag;
+v9.frag=g640;
+v5.dirty=true;
+a1(v2,a0,a2);
+v2.viewportWidth=v315;
+v2.viewportHeight=v316;
+v39[0]=v317;
+v39[1]=v318;
+v39[2]=v319;
+v39[3]=v320;
+v17[0]=v322;
+v17[1]=v324;
+v17[2]=v326;
+v17[3]=v328;
+v4.blend_enable=v330;
+v21[0]=v332;
+v21[1]=v334;
+v21[2]=v336;
+v21[3]=v338;
+v4.depth_enable=v340;
+v37[0]=v346;
+v37[1]=v347;
+v37[2]=v348;
+v37[3]=v349;
+v4.scissor_enable=v351;
+v4.stencil_enable=v353;
+if(v354){
+g48.cpuTime+=performance.now()-v355;
+}
+if(v358){
+v7.destroyStream(v357);
+}
+v6.elements=v359;
+v6.offset=v361;
+v6.count=v363;
+v6.primitive=v365;
+v12[g366]=v367;
+v12[g369]=v370;
+v12[g372]=v373;
+v12[g375]=v376;
+v12[g378]=v379;
+v12[g381]=v382;
+v12[g384]=v385;
+v12[g387]=v388;
+v12[g390]=v391;
+v12[g393]=v394;
+if(v396){
+v8.destroyStream(v402);
+}
+g409.state=v410;
+g409.x=v411;
+g409.y=v412;
+g409.z=v413;
+g409.w=v414;
+g409.buffer=v415;
+g409.size=v416;
+g409.normalized=v417;
+g409.type=v418;
+g409.offset=v419;
+g409.stride=v420;
+g409.divisor=v421;
+if(v423){
+v8.destroyStream(v429);
+}
+g436.state=v437;
+g436.x=v438;
+g436.y=v439;
+g436.z=v440;
+g436.w=v441;
+g436.buffer=v442;
+g436.size=v443;
+g436.normalized=v444;
+g436.type=v445;
+g436.offset=v446;
+g436.stride=v447;
+g436.divisor=v448;
+if(v450){
+v8.destroyStream(v456);
+}
+g463.state=v464;
+g463.x=v465;
+g463.y=v466;
+g463.z=v467;
+g463.w=v468;
+g463.buffer=v469;
+g463.size=v470;
+g463.normalized=v471;
+g463.type=v472;
+g463.offset=v473;
+g463.stride=v474;
+g463.divisor=v475;
+if(v477){
+v8.destroyStream(v483);
+}
+g490.state=v491;
+g490.x=v492;
+g490.y=v493;
+g490.z=v494;
+g490.w=v495;
+g490.buffer=v496;
+g490.size=v497;
+g490.normalized=v498;
+g490.type=v499;
+g490.offset=v500;
+g490.stride=v501;
+g490.divisor=v502;
+if(v504){
+v8.destroyStream(v510);
+}
+g517.state=v518;
+g517.x=v519;
+g517.y=v520;
+g517.z=v521;
+g517.w=v522;
+g517.buffer=v523;
+g517.size=v524;
+g517.normalized=v525;
+g517.type=v526;
+g517.offset=v527;
+g517.stride=v528;
+g517.divisor=v529;
+if(v531){
+v8.destroyStream(v537);
+}
+g544.state=v545;
+g544.x=v546;
+g544.y=v547;
+g544.z=v548;
+g544.w=v549;
+g544.buffer=v550;
+g544.size=v551;
+g544.normalized=v552;
+g544.type=v553;
+g544.offset=v554;
+g544.stride=v555;
+g544.divisor=v556;
+if(v558){
+v8.destroyStream(v564);
+}
+g571.state=v572;
+g571.x=v573;
+g571.y=v574;
+g571.z=v575;
+g571.w=v576;
+g571.buffer=v577;
+g571.size=v578;
+g571.normalized=v579;
+g571.type=v580;
+g571.offset=v581;
+g571.stride=v582;
+g571.divisor=v583;
+if(v585){
+v8.destroyStream(v591);
+}
+g598.state=v599;
+g598.x=v600;
+g598.y=v601;
+g598.z=v602;
+g598.w=v603;
+g598.buffer=v604;
+g598.size=v605;
+g598.normalized=v606;
+g598.type=v607;
+g598.offset=v608;
+g598.stride=v609;
+g598.divisor=v610;
+if(v612){
+v8.destroyStream(v618);
+}
+g625.state=v626;
+g625.x=v627;
+g625.y=v628;
+g625.z=v629;
+g625.w=v630;
+g625.buffer=v631;
+g625.size=v632;
+g625.normalized=v633;
+g625.type=v634;
+g625.offset=v635;
+g625.stride=v636;
+g625.divisor=v637;
+v9.vert=v639;
+v9.frag=v641;
+v5.dirty=true;
+}
+,"batch":function(a0,a1){
+var v642,v643,v682,v683,v684,v685,v686;
+v642=v14.angle_instanced_arrays;
+v643=v13.next;
+if(v643!==v13.cur){
+if(v643){
+v1.bindFramebuffer(36160,v643.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v643;
+}
+if(v5.dirty){
+var v644,v645,v646,v647,v648,v649,v650,v651,v652,v653,v654,v655,v656,v657,v658,v659,v660,v661,v662,v663,v664,v665,v666,v667,v668,v669,v670,v671,v672,v673,v674,v675,v676,v677;
+v644=v4.dither;
+if(v644!==v5.dither){
+if(v644){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v644;
+}
+v645=v19[0];
+v646=v19[1];
+if(v645!==v20[0]||v646!==v20[1]){
+v1.blendEquationSeparate(v645,v646);
+v20[0]=v645;
+v20[1]=v646;
+}
+v647=v4.depth_func;
+if(v647!==v5.depth_func){
+v1.depthFunc(v647);
+v5.depth_func=v647;
+}
+v648=v23[0];
+v649=v23[1];
+if(v648!==v24[0]||v649!==v24[1]){
+v1.depthRange(v648,v649);
+v24[0]=v648;
+v24[1]=v649;
+}
+v650=v4.depth_mask;
+if(v650!==v5.depth_mask){
+v1.depthMask(v650);
+v5.depth_mask=v650;
+}
+v651=v25[0];
+v652=v25[1];
+v653=v25[2];
+v654=v25[3];
+if(v651!==v26[0]||v652!==v26[1]||v653!==v26[2]||v654!==v26[3]){
+v1.colorMask(v651,v652,v653,v654);
+v26[0]=v651;
+v26[1]=v652;
+v26[2]=v653;
+v26[3]=v654;
+}
+v655=v4.cull_enable;
+if(v655!==v5.cull_enable){
+if(v655){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v655;
+}
+v656=v4.cull_face;
+if(v656!==v5.cull_face){
+v1.cullFace(v656);
+v5.cull_face=v656;
+}
+v657=v4.frontFace;
+if(v657!==v5.frontFace){
+v1.frontFace(v657);
+v5.frontFace=v657;
+}
+v658=v4.lineWidth;
+if(v658!==v5.lineWidth){
+v1.lineWidth(v658);
+v5.lineWidth=v658;
+}
+v659=v4.polygonOffset_enable;
+if(v659!==v5.polygonOffset_enable){
+if(v659){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v659;
+}
+v660=v27[0];
+v661=v27[1];
+if(v660!==v28[0]||v661!==v28[1]){
+v1.polygonOffset(v660,v661);
+v28[0]=v660;
+v28[1]=v661;
+}
+v662=v4.sample_alpha;
+if(v662!==v5.sample_alpha){
+if(v662){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v662;
+}
+v663=v4.sample_enable;
+if(v663!==v5.sample_enable){
+if(v663){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v663;
+}
+v664=v29[0];
+v665=v29[1];
+if(v664!==v30[0]||v665!==v30[1]){
+v1.sampleCoverage(v664,v665);
+v30[0]=v664;
+v30[1]=v665;
+}
+v666=v4.stencil_mask;
+if(v666!==v5.stencil_mask){
+v1.stencilMask(v666);
+v5.stencil_mask=v666;
+}
+v667=v31[0];
+v668=v31[1];
+v669=v31[2];
+if(v667!==v32[0]||v668!==v32[1]||v669!==v32[2]){
+v1.stencilFunc(v667,v668,v669);
+v32[0]=v667;
+v32[1]=v668;
+v32[2]=v669;
+}
+v670=v33[0];
+v671=v33[1];
+v672=v33[2];
+v673=v33[3];
+if(v670!==v34[0]||v671!==v34[1]||v672!==v34[2]||v673!==v34[3]){
+v1.stencilOpSeparate(v670,v671,v672,v673);
+v34[0]=v670;
+v34[1]=v671;
+v34[2]=v672;
+v34[3]=v673;
+}
+v674=v35[0];
+v675=v35[1];
+v676=v35[2];
+v677=v35[3];
+if(v674!==v36[0]||v675!==v36[1]||v676!==v36[2]||v677!==v36[3]){
+v1.stencilOpSeparate(v674,v675,v676,v677);
+v36[0]=v674;
+v36[1]=v675;
+v36[2]=v676;
+v36[3]=v677;
+}
+}
+v1.blendColor(0,0,0,1);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=1;
+if(g678){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g678;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g679){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g679;
+if(g680){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g680;
+if(g681){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g681;
+v682=v5.profile;
+if(v682){
+v683=performance.now();
+g48.count+=a1;
+}
+v1.useProgram(g103.program);
+v684=v14.angle_instanced_arrays;
+var v886;
+v11.setVAO(null);
+v1.uniform1i(g276.location,false);
+v1.uniform1i(g284.location,g285.bind());
+v886=v6.instances;
+for(v685=0;
+v685<a1;
+++v685){
+v686=a0[v685];
+var v687,v688,v689,v690,v691,v692,v693,v694,v695,v696,v697,v698,v699,v700,v701,v702,v703,v704,v705,v706,v707,v708,v709,v710,v711,v712,v713,v714,v715,v716,v717,v718,v719,v720,v721,v722,v723,v724,v725,v726,v727,v728,v729,v730,v731,v732,v733,v734,v735,v736,v737,v738,v739,v740,v741,v742,v743,v744,v745,v746,v747,v748,v749,v750,v751,v752,v753,v754,v755,v756,v757,v758,v759,v760,v761,v762,v763,v764,v765,v766,v767,v768,v769,v770,v771,v772,v773,v774,v775,v776,v777,v778,v779,v780,v781,v782,v783,v784,v785,v786,v787,v788,v789,v790,v791,v792,v793,v794,v795,v796,v797,v798,v799,v800,v801,v802,v803,v804,v805,v806,v807,v808,v809,v810,v811,v812,v813,v814,v815,v816,v817,v818,v819,v820,v821,v822,v823,v824,v825,v826,v827,v828,v829,v830,v831,v832,v833,v834,v835,v836,v837,v838,v839,v840,v841,v842,v843,v844,v845,v846,v847,v848,v849,v850,v851,v852,v853,v854,v855,v856,v857,v858,v859,v860,v861,v862,v863,v864,v865,v866,v867,v868,v869,v870,v871,v872,v873,v874,v875,v876,v877,v878,v879,v880,v881,v882,v883,v884,v885;
+v687=v686["viewport"];
+v688=v687.x|0;
+v689=v687.y|0;
+v690="width" in v687?v687.width|0:(v2.framebufferWidth-v688);
+v691="height" in v687?v687.height|0:(v2.framebufferHeight-v689);
+v692=v2.viewportWidth;
+v2.viewportWidth=v690;
+v693=v2.viewportHeight;
+v2.viewportHeight=v691;
+v1.viewport(v688,v689,v690,v691);
+v40[0]=v688;
+v40[1]=v689;
+v40[2]=v690;
+v40[3]=v691;
+v694=v686["viewport"];
+v695=v694.x|0;
+v696=v694.y|0;
+v697="width" in v694?v694.width|0:(v2.framebufferWidth-v695);
+v698="height" in v694?v694.height|0:(v2.framebufferHeight-v696);
+v1.scissor(v695,v696,v697,v698);
+v38[0]=v695;
+v38[1]=v696;
+v38[2]=v697;
+v38[3]=v698;
+v699=g105.call(this,v2,v686,v685);
+v700=false;
+v701=1;
+v702=0;
+v703=0;
+v704=0;
+v705=0;
+v706=null;
+v707=0;
+v708=false;
+v709=5126;
+v710=0;
+v711=0;
+v712=0;
+if(v16(v699)){
+v700=true;
+v706=v8.createStream(34962,v699);
+v709=v706.dtype;
+}
+else{
+v706=v8.getBuffer(v699);
+if(v706){
+v709=v706.dtype;
+}
+else if("constant" in v699){
+v701=2;
+if(typeof v699.constant === "number"){
+v702=v699.constant;
+v703=v704=v705=0;
+}
+else{
+v702=v699.constant.length>0?v699.constant[0]:0;
+v703=v699.constant.length>1?v699.constant[1]:0;
+v704=v699.constant.length>2?v699.constant[2]:0;
+v705=v699.constant.length>3?v699.constant[3]:0;
+}
+}
+else{
+if(v16(v699.buffer)){
+v706=v8.createStream(34962,v699.buffer);
+}
+else{
+v706=v8.getBuffer(v699.buffer);
+}
+v709="type" in v699?v46[v699.type]:v706.dtype;
+v708=!!v699.normalized;
+v707=v699.size|0;
+v710=v699.offset|0;
+v711=v699.stride|0;
+v712=v699.divisor|0;
+}
+}
+v713=g120.location;
+v714=v10[v713];
+if(v701===1){
+if(!v714.buffer){
+v1.enableVertexAttribArray(v713);
+}
+v715=v707||4;
+if(v714.type!==v709||v714.size!==v715||v714.buffer!==v706||v714.normalized!==v708||v714.offset!==v710||v714.stride!==v711){
+v1.bindBuffer(34962,v706.buffer);
+v1.vertexAttribPointer(v713,v715,v709,v708,v711,v710);
+v714.type=v709;
+v714.size=v715;
+v714.buffer=v706;
+v714.normalized=v708;
+v714.offset=v710;
+v714.stride=v711;
+}
+if(v714.divisor!==v712){
+v684.vertexAttribDivisorANGLE(v713,v712);
+v714.divisor=v712;
+}
+}
+else{
+if(v714.buffer){
+v1.disableVertexAttribArray(v713);
+v714.buffer=null;
+}
+if(v714.x!==v702||v714.y!==v703||v714.z!==v704||v714.w!==v705){
+v1.vertexAttrib4f(v713,v702,v703,v704,v705);
+v714.x=v702;
+v714.y=v703;
+v714.z=v704;
+v714.w=v705;
+}
+}
+v716=g124.call(this,v2,v686,v685);
+v717=false;
+v718=1;
+v719=0;
+v720=0;
+v721=0;
+v722=0;
+v723=null;
+v724=0;
+v725=false;
+v726=5126;
+v727=0;
+v728=0;
+v729=0;
+if(v16(v716)){
+v717=true;
+v723=v8.createStream(34962,v716);
+v726=v723.dtype;
+}
+else{
+v723=v8.getBuffer(v716);
+if(v723){
+v726=v723.dtype;
+}
+else if("constant" in v716){
+v718=2;
+if(typeof v716.constant === "number"){
+v719=v716.constant;
+v720=v721=v722=0;
+}
+else{
+v719=v716.constant.length>0?v716.constant[0]:0;
+v720=v716.constant.length>1?v716.constant[1]:0;
+v721=v716.constant.length>2?v716.constant[2]:0;
+v722=v716.constant.length>3?v716.constant[3]:0;
+}
+}
+else{
+if(v16(v716.buffer)){
+v723=v8.createStream(34962,v716.buffer);
+}
+else{
+v723=v8.getBuffer(v716.buffer);
+}
+v726="type" in v716?v46[v716.type]:v723.dtype;
+v725=!!v716.normalized;
+v724=v716.size|0;
+v727=v716.offset|0;
+v728=v716.stride|0;
+v729=v716.divisor|0;
+}
+}
+v730=g139.location;
+v731=v10[v730];
+if(v718===1){
+if(!v731.buffer){
+v1.enableVertexAttribArray(v730);
+}
+v732=v724||1;
+if(v731.type!==v726||v731.size!==v732||v731.buffer!==v723||v731.normalized!==v725||v731.offset!==v727||v731.stride!==v728){
+v1.bindBuffer(34962,v723.buffer);
+v1.vertexAttribPointer(v730,v732,v726,v725,v728,v727);
+v731.type=v726;
+v731.size=v732;
+v731.buffer=v723;
+v731.normalized=v725;
+v731.offset=v727;
+v731.stride=v728;
+}
+if(v731.divisor!==v729){
+v684.vertexAttribDivisorANGLE(v730,v729);
+v731.divisor=v729;
+}
+}
+else{
+if(v731.buffer){
+v1.disableVertexAttribArray(v730);
+v731.buffer=null;
+}
+if(v731.x!==v719||v731.y!==v720||v731.z!==v721||v731.w!==v722){
+v1.vertexAttrib4f(v730,v719,v720,v721,v722);
+v731.x=v719;
+v731.y=v720;
+v731.z=v721;
+v731.w=v722;
+}
+}
+v733=g143.call(this,v2,v686,v685);
+v734=false;
+v735=1;
+v736=0;
+v737=0;
+v738=0;
+v739=0;
+v740=null;
+v741=0;
+v742=false;
+v743=5126;
+v744=0;
+v745=0;
+v746=0;
+if(v16(v733)){
+v734=true;
+v740=v8.createStream(34962,v733);
+v743=v740.dtype;
+}
+else{
+v740=v8.getBuffer(v733);
+if(v740){
+v743=v740.dtype;
+}
+else if("constant" in v733){
+v735=2;
+if(typeof v733.constant === "number"){
+v736=v733.constant;
+v737=v738=v739=0;
+}
+else{
+v736=v733.constant.length>0?v733.constant[0]:0;
+v737=v733.constant.length>1?v733.constant[1]:0;
+v738=v733.constant.length>2?v733.constant[2]:0;
+v739=v733.constant.length>3?v733.constant[3]:0;
+}
+}
+else{
+if(v16(v733.buffer)){
+v740=v8.createStream(34962,v733.buffer);
+}
+else{
+v740=v8.getBuffer(v733.buffer);
+}
+v743="type" in v733?v46[v733.type]:v740.dtype;
+v742=!!v733.normalized;
+v741=v733.size|0;
+v744=v733.offset|0;
+v745=v733.stride|0;
+v746=v733.divisor|0;
+}
+}
+v747=g158.location;
+v748=v10[v747];
+if(v735===1){
+if(!v748.buffer){
+v1.enableVertexAttribArray(v747);
+}
+v749=v741||4;
+if(v748.type!==v743||v748.size!==v749||v748.buffer!==v740||v748.normalized!==v742||v748.offset!==v744||v748.stride!==v745){
+v1.bindBuffer(34962,v740.buffer);
+v1.vertexAttribPointer(v747,v749,v743,v742,v745,v744);
+v748.type=v743;
+v748.size=v749;
+v748.buffer=v740;
+v748.normalized=v742;
+v748.offset=v744;
+v748.stride=v745;
+}
+if(v748.divisor!==v746){
+v684.vertexAttribDivisorANGLE(v747,v746);
+v748.divisor=v746;
+}
+}
+else{
+if(v748.buffer){
+v1.disableVertexAttribArray(v747);
+v748.buffer=null;
+}
+if(v748.x!==v736||v748.y!==v737||v748.z!==v738||v748.w!==v739){
+v1.vertexAttrib4f(v747,v736,v737,v738,v739);
+v748.x=v736;
+v748.y=v737;
+v748.z=v738;
+v748.w=v739;
+}
+}
+v750=g162.call(this,v2,v686,v685);
+v751=false;
+v752=1;
+v753=0;
+v754=0;
+v755=0;
+v756=0;
+v757=null;
+v758=0;
+v759=false;
+v760=5126;
+v761=0;
+v762=0;
+v763=0;
+if(v16(v750)){
+v751=true;
+v757=v8.createStream(34962,v750);
+v760=v757.dtype;
+}
+else{
+v757=v8.getBuffer(v750);
+if(v757){
+v760=v757.dtype;
+}
+else if("constant" in v750){
+v752=2;
+if(typeof v750.constant === "number"){
+v753=v750.constant;
+v754=v755=v756=0;
+}
+else{
+v753=v750.constant.length>0?v750.constant[0]:0;
+v754=v750.constant.length>1?v750.constant[1]:0;
+v755=v750.constant.length>2?v750.constant[2]:0;
+v756=v750.constant.length>3?v750.constant[3]:0;
+}
+}
+else{
+if(v16(v750.buffer)){
+v757=v8.createStream(34962,v750.buffer);
+}
+else{
+v757=v8.getBuffer(v750.buffer);
+}
+v760="type" in v750?v46[v750.type]:v757.dtype;
+v759=!!v750.normalized;
+v758=v750.size|0;
+v761=v750.offset|0;
+v762=v750.stride|0;
+v763=v750.divisor|0;
+}
+}
+v764=g177.location;
+v765=v10[v764];
+if(v752===1){
+if(!v765.buffer){
+v1.enableVertexAttribArray(v764);
+}
+v766=v758||1;
+if(v765.type!==v760||v765.size!==v766||v765.buffer!==v757||v765.normalized!==v759||v765.offset!==v761||v765.stride!==v762){
+v1.bindBuffer(34962,v757.buffer);
+v1.vertexAttribPointer(v764,v766,v760,v759,v762,v761);
+v765.type=v760;
+v765.size=v766;
+v765.buffer=v757;
+v765.normalized=v759;
+v765.offset=v761;
+v765.stride=v762;
+}
+if(v765.divisor!==v763){
+v684.vertexAttribDivisorANGLE(v764,v763);
+v765.divisor=v763;
+}
+}
+else{
+if(v765.buffer){
+v1.disableVertexAttribArray(v764);
+v765.buffer=null;
+}
+if(v765.x!==v753||v765.y!==v754||v765.z!==v755||v765.w!==v756){
+v1.vertexAttrib4f(v764,v753,v754,v755,v756);
+v765.x=v753;
+v765.y=v754;
+v765.z=v755;
+v765.w=v756;
+}
+}
+v767=g181.call(this,v2,v686,v685);
+v768=false;
+v769=1;
+v770=0;
+v771=0;
+v772=0;
+v773=0;
+v774=null;
+v775=0;
+v776=false;
+v777=5126;
+v778=0;
+v779=0;
+v780=0;
+if(v16(v767)){
+v768=true;
+v774=v8.createStream(34962,v767);
+v777=v774.dtype;
+}
+else{
+v774=v8.getBuffer(v767);
+if(v774){
+v777=v774.dtype;
+}
+else if("constant" in v767){
+v769=2;
+if(typeof v767.constant === "number"){
+v770=v767.constant;
+v771=v772=v773=0;
+}
+else{
+v770=v767.constant.length>0?v767.constant[0]:0;
+v771=v767.constant.length>1?v767.constant[1]:0;
+v772=v767.constant.length>2?v767.constant[2]:0;
+v773=v767.constant.length>3?v767.constant[3]:0;
+}
+}
+else{
+if(v16(v767.buffer)){
+v774=v8.createStream(34962,v767.buffer);
+}
+else{
+v774=v8.getBuffer(v767.buffer);
+}
+v777="type" in v767?v46[v767.type]:v774.dtype;
+v776=!!v767.normalized;
+v775=v767.size|0;
+v778=v767.offset|0;
+v779=v767.stride|0;
+v780=v767.divisor|0;
+}
+}
+v781=g196.location;
+v782=v10[v781];
+if(v769===1){
+if(!v782.buffer){
+v1.enableVertexAttribArray(v781);
+}
+v783=v775||1;
+if(v782.type!==v777||v782.size!==v783||v782.buffer!==v774||v782.normalized!==v776||v782.offset!==v778||v782.stride!==v779){
+v1.bindBuffer(34962,v774.buffer);
+v1.vertexAttribPointer(v781,v783,v777,v776,v779,v778);
+v782.type=v777;
+v782.size=v783;
+v782.buffer=v774;
+v782.normalized=v776;
+v782.offset=v778;
+v782.stride=v779;
+}
+if(v782.divisor!==v780){
+v684.vertexAttribDivisorANGLE(v781,v780);
+v782.divisor=v780;
+}
+}
+else{
+if(v782.buffer){
+v1.disableVertexAttribArray(v781);
+v782.buffer=null;
+}
+if(v782.x!==v770||v782.y!==v771||v782.z!==v772||v782.w!==v773){
+v1.vertexAttrib4f(v781,v770,v771,v772,v773);
+v782.x=v770;
+v782.y=v771;
+v782.z=v772;
+v782.w=v773;
+}
+}
+v784=g200.call(this,v2,v686,v685);
+v785=false;
+v786=1;
+v787=0;
+v788=0;
+v789=0;
+v790=0;
+v791=null;
+v792=0;
+v793=false;
+v794=5126;
+v795=0;
+v796=0;
+v797=0;
+if(v16(v784)){
+v785=true;
+v791=v8.createStream(34962,v784);
+v794=v791.dtype;
+}
+else{
+v791=v8.getBuffer(v784);
+if(v791){
+v794=v791.dtype;
+}
+else if("constant" in v784){
+v786=2;
+if(typeof v784.constant === "number"){
+v787=v784.constant;
+v788=v789=v790=0;
+}
+else{
+v787=v784.constant.length>0?v784.constant[0]:0;
+v788=v784.constant.length>1?v784.constant[1]:0;
+v789=v784.constant.length>2?v784.constant[2]:0;
+v790=v784.constant.length>3?v784.constant[3]:0;
+}
+}
+else{
+if(v16(v784.buffer)){
+v791=v8.createStream(34962,v784.buffer);
+}
+else{
+v791=v8.getBuffer(v784.buffer);
+}
+v794="type" in v784?v46[v784.type]:v791.dtype;
+v793=!!v784.normalized;
+v792=v784.size|0;
+v795=v784.offset|0;
+v796=v784.stride|0;
+v797=v784.divisor|0;
+}
+}
+v798=g215.location;
+v799=v10[v798];
+if(v786===1){
+if(!v799.buffer){
+v1.enableVertexAttribArray(v798);
+}
+v800=v792||1;
+if(v799.type!==v794||v799.size!==v800||v799.buffer!==v791||v799.normalized!==v793||v799.offset!==v795||v799.stride!==v796){
+v1.bindBuffer(34962,v791.buffer);
+v1.vertexAttribPointer(v798,v800,v794,v793,v796,v795);
+v799.type=v794;
+v799.size=v800;
+v799.buffer=v791;
+v799.normalized=v793;
+v799.offset=v795;
+v799.stride=v796;
+}
+if(v799.divisor!==v797){
+v684.vertexAttribDivisorANGLE(v798,v797);
+v799.divisor=v797;
+}
+}
+else{
+if(v799.buffer){
+v1.disableVertexAttribArray(v798);
+v799.buffer=null;
+}
+if(v799.x!==v787||v799.y!==v788||v799.z!==v789||v799.w!==v790){
+v1.vertexAttrib4f(v798,v787,v788,v789,v790);
+v799.x=v787;
+v799.y=v788;
+v799.z=v789;
+v799.w=v790;
+}
+}
+v801=g219.call(this,v2,v686,v685);
+v802=false;
+v803=1;
+v804=0;
+v805=0;
+v806=0;
+v807=0;
+v808=null;
+v809=0;
+v810=false;
+v811=5126;
+v812=0;
+v813=0;
+v814=0;
+if(v16(v801)){
+v802=true;
+v808=v8.createStream(34962,v801);
+v811=v808.dtype;
+}
+else{
+v808=v8.getBuffer(v801);
+if(v808){
+v811=v808.dtype;
+}
+else if("constant" in v801){
+v803=2;
+if(typeof v801.constant === "number"){
+v804=v801.constant;
+v805=v806=v807=0;
+}
+else{
+v804=v801.constant.length>0?v801.constant[0]:0;
+v805=v801.constant.length>1?v801.constant[1]:0;
+v806=v801.constant.length>2?v801.constant[2]:0;
+v807=v801.constant.length>3?v801.constant[3]:0;
+}
+}
+else{
+if(v16(v801.buffer)){
+v808=v8.createStream(34962,v801.buffer);
+}
+else{
+v808=v8.getBuffer(v801.buffer);
+}
+v811="type" in v801?v46[v801.type]:v808.dtype;
+v810=!!v801.normalized;
+v809=v801.size|0;
+v812=v801.offset|0;
+v813=v801.stride|0;
+v814=v801.divisor|0;
+}
+}
+v815=g234.location;
+v816=v10[v815];
+if(v803===1){
+if(!v816.buffer){
+v1.enableVertexAttribArray(v815);
+}
+v817=v809||1;
+if(v816.type!==v811||v816.size!==v817||v816.buffer!==v808||v816.normalized!==v810||v816.offset!==v812||v816.stride!==v813){
+v1.bindBuffer(34962,v808.buffer);
+v1.vertexAttribPointer(v815,v817,v811,v810,v813,v812);
+v816.type=v811;
+v816.size=v817;
+v816.buffer=v808;
+v816.normalized=v810;
+v816.offset=v812;
+v816.stride=v813;
+}
+if(v816.divisor!==v814){
+v684.vertexAttribDivisorANGLE(v815,v814);
+v816.divisor=v814;
+}
+}
+else{
+if(v816.buffer){
+v1.disableVertexAttribArray(v815);
+v816.buffer=null;
+}
+if(v816.x!==v804||v816.y!==v805||v816.z!==v806||v816.w!==v807){
+v1.vertexAttrib4f(v815,v804,v805,v806,v807);
+v816.x=v804;
+v816.y=v805;
+v816.z=v806;
+v816.w=v807;
+}
+}
+v818=g238.call(this,v2,v686,v685);
+v819=false;
+v820=1;
+v821=0;
+v822=0;
+v823=0;
+v824=0;
+v825=null;
+v826=0;
+v827=false;
+v828=5126;
+v829=0;
+v830=0;
+v831=0;
+if(v16(v818)){
+v819=true;
+v825=v8.createStream(34962,v818);
+v828=v825.dtype;
+}
+else{
+v825=v8.getBuffer(v818);
+if(v825){
+v828=v825.dtype;
+}
+else if("constant" in v818){
+v820=2;
+if(typeof v818.constant === "number"){
+v821=v818.constant;
+v822=v823=v824=0;
+}
+else{
+v821=v818.constant.length>0?v818.constant[0]:0;
+v822=v818.constant.length>1?v818.constant[1]:0;
+v823=v818.constant.length>2?v818.constant[2]:0;
+v824=v818.constant.length>3?v818.constant[3]:0;
+}
+}
+else{
+if(v16(v818.buffer)){
+v825=v8.createStream(34962,v818.buffer);
+}
+else{
+v825=v8.getBuffer(v818.buffer);
+}
+v828="type" in v818?v46[v818.type]:v825.dtype;
+v827=!!v818.normalized;
+v826=v818.size|0;
+v829=v818.offset|0;
+v830=v818.stride|0;
+v831=v818.divisor|0;
+}
+}
+v832=g253.location;
+v833=v10[v832];
+if(v820===1){
+if(!v833.buffer){
+v1.enableVertexAttribArray(v832);
+}
+v834=v826||1;
+if(v833.type!==v828||v833.size!==v834||v833.buffer!==v825||v833.normalized!==v827||v833.offset!==v829||v833.stride!==v830){
+v1.bindBuffer(34962,v825.buffer);
+v1.vertexAttribPointer(v832,v834,v828,v827,v830,v829);
+v833.type=v828;
+v833.size=v834;
+v833.buffer=v825;
+v833.normalized=v827;
+v833.offset=v829;
+v833.stride=v830;
+}
+if(v833.divisor!==v831){
+v684.vertexAttribDivisorANGLE(v832,v831);
+v833.divisor=v831;
+}
+}
+else{
+if(v833.buffer){
+v1.disableVertexAttribArray(v832);
+v833.buffer=null;
+}
+if(v833.x!==v821||v833.y!==v822||v833.z!==v823||v833.w!==v824){
+v1.vertexAttrib4f(v832,v821,v822,v823,v824);
+v833.x=v821;
+v833.y=v822;
+v833.z=v823;
+v833.w=v824;
+}
+}
+v835=g257.call(this,v2,v686,v685);
+v836=false;
+v837=1;
+v838=0;
+v839=0;
+v840=0;
+v841=0;
+v842=null;
+v843=0;
+v844=false;
+v845=5126;
+v846=0;
+v847=0;
+v848=0;
+if(v16(v835)){
+v836=true;
+v842=v8.createStream(34962,v835);
+v845=v842.dtype;
+}
+else{
+v842=v8.getBuffer(v835);
+if(v842){
+v845=v842.dtype;
+}
+else if("constant" in v835){
+v837=2;
+if(typeof v835.constant === "number"){
+v838=v835.constant;
+v839=v840=v841=0;
+}
+else{
+v838=v835.constant.length>0?v835.constant[0]:0;
+v839=v835.constant.length>1?v835.constant[1]:0;
+v840=v835.constant.length>2?v835.constant[2]:0;
+v841=v835.constant.length>3?v835.constant[3]:0;
+}
+}
+else{
+if(v16(v835.buffer)){
+v842=v8.createStream(34962,v835.buffer);
+}
+else{
+v842=v8.getBuffer(v835.buffer);
+}
+v845="type" in v835?v46[v835.type]:v842.dtype;
+v844=!!v835.normalized;
+v843=v835.size|0;
+v846=v835.offset|0;
+v847=v835.stride|0;
+v848=v835.divisor|0;
+}
+}
+v849=g272.location;
+v850=v10[v849];
+if(v837===1){
+if(!v850.buffer){
+v1.enableVertexAttribArray(v849);
+}
+v851=v843||1;
+if(v850.type!==v845||v850.size!==v851||v850.buffer!==v842||v850.normalized!==v844||v850.offset!==v846||v850.stride!==v847){
+v1.bindBuffer(34962,v842.buffer);
+v1.vertexAttribPointer(v849,v851,v845,v844,v847,v846);
+v850.type=v845;
+v850.size=v851;
+v850.buffer=v842;
+v850.normalized=v844;
+v850.offset=v846;
+v850.stride=v847;
+}
+if(v850.divisor!==v848){
+v684.vertexAttribDivisorANGLE(v849,v848);
+v850.divisor=v848;
+}
+}
+else{
+if(v850.buffer){
+v1.disableVertexAttribArray(v849);
+v850.buffer=null;
+}
+if(v850.x!==v838||v850.y!==v839||v850.z!==v840||v850.w!==v841){
+v1.vertexAttrib4f(v849,v838,v839,v840,v841);
+v850.x=v838;
+v850.y=v839;
+v850.z=v840;
+v850.w=v841;
+}
+}
+v852=v686["opacity"];
+if(!v685||v853!==v852){
+v853=v852;
+v1.uniform1f(g277.location,v852);
+}
+v854=g280.call(this,v2,v686,v685);
+v855=v854[0];
+v857=v854[1];
+if(!v685||v856!==v855||v858!==v857){
+v856=v855;
+v858=v857;
+v1.uniform2f(g279.location,v855,v857);
+}
+v859=v2["pixelRatio"];
+if(!v685||v860!==v859){
+v860=v859;
+v1.uniform1f(g286.location,v859);
+}
+v861=v686["scale"];
+v862=v861[0];
+v864=v861[1];
+if(!v685||v863!==v862||v865!==v864){
+v863=v862;
+v865=v864;
+v1.uniform2f(g288.location,v862,v864);
+}
+v866=v686["scaleFract"];
+v867=v866[0];
+v869=v866[1];
+if(!v685||v868!==v867||v870!==v869){
+v868=v867;
+v870=v869;
+v1.uniform2f(g292.location,v867,v869);
+}
+v871=v686["translate"];
+v872=v871[0];
+v874=v871[1];
+if(!v685||v873!==v872||v875!==v874){
+v873=v872;
+v875=v874;
+v1.uniform2f(g296.location,v872,v874);
+}
+v876=v686["translateFract"];
+v877=v876[0];
+v879=v876[1];
+if(!v685||v878!==v877||v880!==v879){
+v878=v877;
+v880=v879;
+v1.uniform2f(g300.location,v877,v879);
+}
+v881=v686["elements"];
+v882=null;
+v883=v16(v881);
+if(v883){
+v882=v7.createStream(v881);
+}
+else{
+v882=v7.getElements(v881);
+}
+if(v882)v1.bindBuffer(34963,v882.buffer.buffer);
+v884=v686["offset"];
+v885=v686["count"];
+if(v885){
+if(v886>0){
+if(v882){
+v684.drawElementsInstancedANGLE(0,v885,v882.type,v884<<((v882.type-5121)>>1),v886);
+}
+else{
+v684.drawArraysInstancedANGLE(0,v884,v885,v886);
+}
+}
+else if(v886<0){
+if(v882){
+v1.drawElements(0,v885,v882.type,v884<<((v882.type-5121)>>1));
+}
+else{
+v1.drawArrays(0,v884,v885);
+}
+}
+v2.viewportWidth=v692;
+v2.viewportHeight=v693;
+if(v700){
+v8.destroyStream(v706);
+}
+if(v717){
+v8.destroyStream(v723);
+}
+if(v734){
+v8.destroyStream(v740);
+}
+if(v751){
+v8.destroyStream(v757);
+}
+if(v768){
+v8.destroyStream(v774);
+}
+if(v785){
+v8.destroyStream(v791);
+}
+if(v802){
+v8.destroyStream(v808);
+}
+if(v819){
+v8.destroyStream(v825);
+}
+if(v836){
+v8.destroyStream(v842);
+}
+if(v883){
+v7.destroyStream(v882);
+}
+}
+}
+g285.unbind();
+v5.dirty=true;
+v11.setVAO(null);
+if(v682){
+g48.cpuTime+=performance.now()-v683;
+}
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/c759965c8d66b2b356ae7455825df829f2ba7d4e7e903236f8c8d3bc5f45bd44 b/src/generated/regl-codegen/c759965c8d66b2b356ae7455825df829f2ba7d4e7e903236f8c8d3bc5f45bd44
deleted file mode 100644
index db5d9b7c33b..00000000000
--- a/src/generated/regl-codegen/c759965c8d66b2b356ae7455825df829f2ba7d4e7e903236f8c8d3bc5f45bd44
+++ /dev/null
@@ -1,2116 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g85,g92,g93,g94,g95,g96,g97,g98,g99,g104,g109,g111,g112,g113,g116,g117,g120,g121,g124,g125,g128,g129,g132,g133,g136,g137,g140,g141,g144,g145,g148,g149,g152,g153,g156,g157,g160,g161,g164,g165,g168,g169,g172,g173,g176,g178,g183,g185,g187,g189,g191,g193,g195,g197,g199,g201,g203,g205,g207,g209,g211,g213,g215,g217,g218,g220,g222,g224,g226,g228,g230,g232,g234,g236,g238,g240,g242,g244,g246,g248,g250,g252,g253,g255,g257,g258,g259,g261,g264,g266,g269,g271,g276,g278,g293,g295,g297,g299,g301,g303,g305,g307,g309,g311,g313,g315,g317,g319,g321,g323,g325,g327,g329,g331,g345,g352,g354,g355,g358,g361,g364,g367,g370,g373,g376,g379,g382,g385,g388,g391,g394,g397,g400,g403,g406,g409,g412,g415,g418,g421,g424,g426,g439,g452,g465,g478,g491,g504,g517,g530,g543,g556,g569,g582,g595,g608,g621,g634,g636,g664,g665,g666,g667,g668,g669,g670,g671,g672
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v53,v54,v186,v190,v194,v198,v202,v206,v210,v214,v221,v225,v229,v233,v237,v241,v245,v249,v736,v738,v740,v742,v744,v746,v748,v750,v754,v756,v758,v760,v762,v764,v766,v768;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v53={
-}
-;
-v54={
-}
-;
-v186=new Float32Array(16);
-v190=new Float32Array(16);
-v194=new Float32Array(16);
-v198=new Float32Array(16);
-v202=new Float32Array(16);
-v206=new Float32Array(16);
-v210=new Float32Array(16);
-v214=new Float32Array(16);
-v221=new Float32Array(16);
-v225=new Float32Array(16);
-v229=new Float32Array(16);
-v233=new Float32Array(16);
-v237=new Float32Array(16);
-v241=new Float32Array(16);
-v245=new Float32Array(16);
-v249=new Float32Array(16);
-v736=new Float32Array(16);
-v738=new Float32Array(16);
-v740=new Float32Array(16);
-v742=new Float32Array(16);
-v744=new Float32Array(16);
-v746=new Float32Array(16);
-v748=new Float32Array(16);
-v750=new Float32Array(16);
-v754=new Float32Array(16);
-v756=new Float32Array(16);
-v758=new Float32Array(16);
-v760=new Float32Array(16);
-v762=new Float32Array(16);
-v764=new Float32Array(16);
-v766=new Float32Array(16);
-v768=new Float32Array(16);
-return {
-"draw":function(a0){
-var v55,v81,v82,v83,v84,v86,v87,v88,v89,v90,v91,v100,v101,v102,v103,v105,v106,v107,v108,v110,v114,v115,v118,v119,v122,v123,v126,v127,v130,v131,v134,v135,v138,v139,v142,v143,v146,v147,v150,v151,v154,v155,v158,v159,v162,v163,v166,v167,v170,v171,v174,v175,v177,v179,v180,v181,v182,v184,v188,v192,v196,v200,v204,v208,v212,v216,v219,v223,v227,v231,v235,v239,v243,v247,v251,v254,v256,v260,v262,v263,v265,v267,v268,v270,v272,v273,v274,v275,v277;
-v55=v13.next;
-if(v55!==v13.cur){
-if(v55){
-v1.bindFramebuffer(36160,v55.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v55;
-}
-if(v5.dirty){
-var v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80;
-v56=v28[0];
-v57=v28[1];
-v58=v28[2];
-v59=v28[3];
-if(v56!==v29[0]||v57!==v29[1]||v58!==v29[2]||v59!==v29[3]){
-v1.colorMask(v56,v57,v58,v59);
-v29[0]=v56;
-v29[1]=v57;
-v29[2]=v58;
-v29[3]=v59;
-}
-v60=v4.frontFace;
-if(v60!==v5.frontFace){
-v1.frontFace(v60);
-v5.frontFace=v60;
-}
-v61=v4.polygonOffset_enable;
-if(v61!==v5.polygonOffset_enable){
-if(v61){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v61;
-}
-v62=v30[0];
-v63=v30[1];
-if(v62!==v31[0]||v63!==v31[1]){
-v1.polygonOffset(v62,v63);
-v31[0]=v62;
-v31[1]=v63;
-}
-v64=v4.sample_alpha;
-if(v64!==v5.sample_alpha){
-if(v64){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v64;
-}
-v65=v4.sample_enable;
-if(v65!==v5.sample_enable){
-if(v65){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v65;
-}
-v66=v32[0];
-v67=v32[1];
-if(v66!==v33[0]||v67!==v33[1]){
-v1.sampleCoverage(v66,v67);
-v33[0]=v66;
-v33[1]=v67;
-}
-v68=v4.stencil_enable;
-if(v68!==v5.stencil_enable){
-if(v68){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v68;
-}
-v69=v4.stencil_mask;
-if(v69!==v5.stencil_mask){
-v1.stencilMask(v69);
-v5.stencil_mask=v69;
-}
-v70=v34[0];
-v71=v34[1];
-v72=v34[2];
-if(v70!==v35[0]||v71!==v35[1]||v72!==v35[2]){
-v1.stencilFunc(v70,v71,v72);
-v35[0]=v70;
-v35[1]=v71;
-v35[2]=v72;
-}
-v73=v36[0];
-v74=v36[1];
-v75=v36[2];
-v76=v36[3];
-if(v73!==v37[0]||v74!==v37[1]||v75!==v37[2]||v76!==v37[3]){
-v1.stencilOpSeparate(v73,v74,v75,v76);
-v37[0]=v73;
-v37[1]=v74;
-v37[2]=v75;
-v37[3]=v76;
-}
-v77=v38[0];
-v78=v38[1];
-v79=v38[2];
-v80=v38[3];
-if(v77!==v39[0]||v78!==v39[1]||v79!==v39[2]||v80!==v39[3]){
-v1.stencilOpSeparate(v77,v78,v79,v80);
-v39[0]=v77;
-v39[1]=v78;
-v39[2]=v79;
-v39[3]=v80;
-}
-}
-v81=a0["viewportX"];
-v53.x=v81;
-v82=a0["viewportY"];
-v53.y=v82;
-v83=a0["viewportWidth"];
-v53.width=v83;
-v84=a0["viewportHeight"];
-v53.height=v84;
-if(!(v53&&typeof v53==="object"))g18.commandRaise(g85,g19);
-v86=v53.x|0;
-v87=v53.y|0;
-v88="width" in v53?v53.width|0:(v2.framebufferWidth-v86);
-v89="height" in v53?v53.height|0:(v2.framebufferHeight-v87);
-if(!(v88>=0&&v89>=0))g18.commandRaise(g85,g19);
-v90=v2.viewportWidth;
-v2.viewportWidth=v88;
-v91=v2.viewportHeight;
-v2.viewportHeight=v89;
-v1.viewport(v86,v87,v88,v89);
-v43[0]=v86;
-v43[1]=v87;
-v43[2]=v88;
-v43[3]=v89;
-v1.blendColor(0,0,0,0);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=0;
-if(g92){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g92;
-v1.blendEquationSeparate(32774,32774);
-v23[0]=32774;
-v23[1]=32774;
-v1.blendFuncSeparate(770,771,1,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=1;
-v25[3]=1;
-if(g93){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=g93;
-v1.cullFace(g94);
-v5.cull_face=g94;
-if(g95){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g95;
-v1.depthFunc(g96);
-v5.depth_func=g96;
-v1.depthMask(g97);
-v5.depth_mask=g97;
-v1.depthRange(0,1);
-v27[0]=0;
-v27[1]=1;
-if(g98){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=g98;
-v1.lineWidth(g99);
-v5.lineWidth=g99;
-v100=a0["scissorX"];
-v54.x=v100;
-v101=a0["scissorY"];
-v54.y=v101;
-v102=a0["scissorWidth"];
-v54.width=v102;
-v103=a0["scissorHeight"];
-v54.height=v103;
-if(!(v54&&typeof v54==="object"))g18.commandRaise(g104,g19);
-v105=v54.x|0;
-v106=v54.y|0;
-v107="width" in v54?v54.width|0:(v2.framebufferWidth-v105);
-v108="height" in v54?v54.height|0:(v2.framebufferHeight-v106);
-if(!(v107>=0&&v108>=0))g18.commandRaise(g104,g19);
-v1.scissor(v105,v106,v107,v108);
-v41[0]=v105;
-v41[1]=v106;
-v41[2]=v107;
-v41[3]=v108;
-if(g109){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g109;
-v110=v5.profile;
-v5.profile=false;
-v1.useProgram(g111.program);
-v11.setVAO(null);
-v114=g113.location;
-v115=v10[v114];
-if(!v115.buffer){
-v1.enableVertexAttribArray(v114);
-}
-if(v115.type!==g112.dtype||v115.size!==4||v115.buffer!==g112||v115.normalized!==false||v115.offset!==0||v115.stride!==0){
-v1.bindBuffer(34962,g112.buffer);
-v1.vertexAttribPointer(v114,4,g112.dtype,false,0,0);
-v115.type=g112.dtype;
-v115.size=4;
-v115.buffer=g112;
-v115.normalized=false;
-v115.offset=0;
-v115.stride=0;
-}
-v118=g117.location;
-v119=v10[v118];
-if(!v119.buffer){
-v1.enableVertexAttribArray(v118);
-}
-if(v119.type!==g116.dtype||v119.size!==4||v119.buffer!==g116||v119.normalized!==false||v119.offset!==0||v119.stride!==0){
-v1.bindBuffer(34962,g116.buffer);
-v1.vertexAttribPointer(v118,4,g116.dtype,false,0,0);
-v119.type=g116.dtype;
-v119.size=4;
-v119.buffer=g116;
-v119.normalized=false;
-v119.offset=0;
-v119.stride=0;
-}
-v122=g121.location;
-v123=v10[v122];
-if(!v123.buffer){
-v1.enableVertexAttribArray(v122);
-}
-if(v123.type!==g120.dtype||v123.size!==4||v123.buffer!==g120||v123.normalized!==false||v123.offset!==0||v123.stride!==0){
-v1.bindBuffer(34962,g120.buffer);
-v1.vertexAttribPointer(v122,4,g120.dtype,false,0,0);
-v123.type=g120.dtype;
-v123.size=4;
-v123.buffer=g120;
-v123.normalized=false;
-v123.offset=0;
-v123.stride=0;
-}
-v126=g125.location;
-v127=v10[v126];
-if(!v127.buffer){
-v1.enableVertexAttribArray(v126);
-}
-if(v127.type!==g124.dtype||v127.size!==4||v127.buffer!==g124||v127.normalized!==false||v127.offset!==0||v127.stride!==0){
-v1.bindBuffer(34962,g124.buffer);
-v1.vertexAttribPointer(v126,4,g124.dtype,false,0,0);
-v127.type=g124.dtype;
-v127.size=4;
-v127.buffer=g124;
-v127.normalized=false;
-v127.offset=0;
-v127.stride=0;
-}
-v130=g129.location;
-v131=v10[v130];
-if(!v131.buffer){
-v1.enableVertexAttribArray(v130);
-}
-if(v131.type!==g128.dtype||v131.size!==4||v131.buffer!==g128||v131.normalized!==false||v131.offset!==0||v131.stride!==0){
-v1.bindBuffer(34962,g128.buffer);
-v1.vertexAttribPointer(v130,4,g128.dtype,false,0,0);
-v131.type=g128.dtype;
-v131.size=4;
-v131.buffer=g128;
-v131.normalized=false;
-v131.offset=0;
-v131.stride=0;
-}
-v134=g133.location;
-v135=v10[v134];
-if(!v135.buffer){
-v1.enableVertexAttribArray(v134);
-}
-if(v135.type!==g132.dtype||v135.size!==4||v135.buffer!==g132||v135.normalized!==false||v135.offset!==0||v135.stride!==0){
-v1.bindBuffer(34962,g132.buffer);
-v1.vertexAttribPointer(v134,4,g132.dtype,false,0,0);
-v135.type=g132.dtype;
-v135.size=4;
-v135.buffer=g132;
-v135.normalized=false;
-v135.offset=0;
-v135.stride=0;
-}
-v138=g137.location;
-v139=v10[v138];
-if(!v139.buffer){
-v1.enableVertexAttribArray(v138);
-}
-if(v139.type!==g136.dtype||v139.size!==4||v139.buffer!==g136||v139.normalized!==false||v139.offset!==0||v139.stride!==0){
-v1.bindBuffer(34962,g136.buffer);
-v1.vertexAttribPointer(v138,4,g136.dtype,false,0,0);
-v139.type=g136.dtype;
-v139.size=4;
-v139.buffer=g136;
-v139.normalized=false;
-v139.offset=0;
-v139.stride=0;
-}
-v142=g141.location;
-v143=v10[v142];
-if(!v143.buffer){
-v1.enableVertexAttribArray(v142);
-}
-if(v143.type!==g140.dtype||v143.size!==4||v143.buffer!==g140||v143.normalized!==false||v143.offset!==0||v143.stride!==0){
-v1.bindBuffer(34962,g140.buffer);
-v1.vertexAttribPointer(v142,4,g140.dtype,false,0,0);
-v143.type=g140.dtype;
-v143.size=4;
-v143.buffer=g140;
-v143.normalized=false;
-v143.offset=0;
-v143.stride=0;
-}
-v146=g145.location;
-v147=v10[v146];
-if(!v147.buffer){
-v1.enableVertexAttribArray(v146);
-}
-if(v147.type!==g144.dtype||v147.size!==4||v147.buffer!==g144||v147.normalized!==false||v147.offset!==0||v147.stride!==0){
-v1.bindBuffer(34962,g144.buffer);
-v1.vertexAttribPointer(v146,4,g144.dtype,false,0,0);
-v147.type=g144.dtype;
-v147.size=4;
-v147.buffer=g144;
-v147.normalized=false;
-v147.offset=0;
-v147.stride=0;
-}
-v150=g149.location;
-v151=v10[v150];
-if(!v151.buffer){
-v1.enableVertexAttribArray(v150);
-}
-if(v151.type!==g148.dtype||v151.size!==4||v151.buffer!==g148||v151.normalized!==false||v151.offset!==0||v151.stride!==0){
-v1.bindBuffer(34962,g148.buffer);
-v1.vertexAttribPointer(v150,4,g148.dtype,false,0,0);
-v151.type=g148.dtype;
-v151.size=4;
-v151.buffer=g148;
-v151.normalized=false;
-v151.offset=0;
-v151.stride=0;
-}
-v154=g153.location;
-v155=v10[v154];
-if(!v155.buffer){
-v1.enableVertexAttribArray(v154);
-}
-if(v155.type!==g152.dtype||v155.size!==4||v155.buffer!==g152||v155.normalized!==false||v155.offset!==0||v155.stride!==0){
-v1.bindBuffer(34962,g152.buffer);
-v1.vertexAttribPointer(v154,4,g152.dtype,false,0,0);
-v155.type=g152.dtype;
-v155.size=4;
-v155.buffer=g152;
-v155.normalized=false;
-v155.offset=0;
-v155.stride=0;
-}
-v158=g157.location;
-v159=v10[v158];
-if(!v159.buffer){
-v1.enableVertexAttribArray(v158);
-}
-if(v159.type!==g156.dtype||v159.size!==4||v159.buffer!==g156||v159.normalized!==false||v159.offset!==0||v159.stride!==0){
-v1.bindBuffer(34962,g156.buffer);
-v1.vertexAttribPointer(v158,4,g156.dtype,false,0,0);
-v159.type=g156.dtype;
-v159.size=4;
-v159.buffer=g156;
-v159.normalized=false;
-v159.offset=0;
-v159.stride=0;
-}
-v162=g161.location;
-v163=v10[v162];
-if(!v163.buffer){
-v1.enableVertexAttribArray(v162);
-}
-if(v163.type!==g160.dtype||v163.size!==4||v163.buffer!==g160||v163.normalized!==false||v163.offset!==0||v163.stride!==0){
-v1.bindBuffer(34962,g160.buffer);
-v1.vertexAttribPointer(v162,4,g160.dtype,false,0,0);
-v163.type=g160.dtype;
-v163.size=4;
-v163.buffer=g160;
-v163.normalized=false;
-v163.offset=0;
-v163.stride=0;
-}
-v166=g165.location;
-v167=v10[v166];
-if(!v167.buffer){
-v1.enableVertexAttribArray(v166);
-}
-if(v167.type!==g164.dtype||v167.size!==4||v167.buffer!==g164||v167.normalized!==false||v167.offset!==0||v167.stride!==0){
-v1.bindBuffer(34962,g164.buffer);
-v1.vertexAttribPointer(v166,4,g164.dtype,false,0,0);
-v167.type=g164.dtype;
-v167.size=4;
-v167.buffer=g164;
-v167.normalized=false;
-v167.offset=0;
-v167.stride=0;
-}
-v170=g169.location;
-v171=v10[v170];
-if(!v171.buffer){
-v1.enableVertexAttribArray(v170);
-}
-if(v171.type!==g168.dtype||v171.size!==4||v171.buffer!==g168||v171.normalized!==false||v171.offset!==0||v171.stride!==0){
-v1.bindBuffer(34962,g168.buffer);
-v1.vertexAttribPointer(v170,4,g168.dtype,false,0,0);
-v171.type=g168.dtype;
-v171.size=4;
-v171.buffer=g168;
-v171.normalized=false;
-v171.offset=0;
-v171.stride=0;
-}
-v174=g173.location;
-v175=v10[v174];
-if(!v175.buffer){
-v1.enableVertexAttribArray(v174);
-}
-if(v175.type!==g172.dtype||v175.size!==4||v175.buffer!==g172||v175.normalized!==false||v175.offset!==0||v175.stride!==0){
-v1.bindBuffer(34962,g172.buffer);
-v1.vertexAttribPointer(v174,4,g172.dtype,false,0,0);
-v175.type=g172.dtype;
-v175.size=4;
-v175.buffer=g172;
-v175.normalized=false;
-v175.offset=0;
-v175.stride=0;
-}
-v177=a0["contextColor"];
-if(!(v17(v177)&&v177.length===4))g18.commandRaise(g178,g19);
-v179=v177[0];
-v180=v177[1];
-v181=v177[2];
-v182=v177[3];
-v1.uniform4f(g176.location,v179,v180,v181,v182);
-v184=a0["dim0A"];
-if(!(v17(v184)&&v184.length===16))g18.commandRaise(g185,g19);
-v1.uniformMatrix4fv(g183.location,false,(Array.isArray(v184)||v184 instanceof Float32Array)?v184:(v186[0]=v184[0],v186[1]=v184[1],v186[2]=v184[2],v186[3]=v184[3],v186[4]=v184[4],v186[5]=v184[5],v186[6]=v184[6],v186[7]=v184[7],v186[8]=v184[8],v186[9]=v184[9],v186[10]=v184[10],v186[11]=v184[11],v186[12]=v184[12],v186[13]=v184[13],v186[14]=v184[14],v186[15]=v184[15],v186));
-v188=a0["dim0B"];
-if(!(v17(v188)&&v188.length===16))g18.commandRaise(g189,g19);
-v1.uniformMatrix4fv(g187.location,false,(Array.isArray(v188)||v188 instanceof Float32Array)?v188:(v190[0]=v188[0],v190[1]=v188[1],v190[2]=v188[2],v190[3]=v188[3],v190[4]=v188[4],v190[5]=v188[5],v190[6]=v188[6],v190[7]=v188[7],v190[8]=v188[8],v190[9]=v188[9],v190[10]=v188[10],v190[11]=v188[11],v190[12]=v188[12],v190[13]=v188[13],v190[14]=v188[14],v190[15]=v188[15],v190));
-v192=a0["dim0C"];
-if(!(v17(v192)&&v192.length===16))g18.commandRaise(g193,g19);
-v1.uniformMatrix4fv(g191.location,false,(Array.isArray(v192)||v192 instanceof Float32Array)?v192:(v194[0]=v192[0],v194[1]=v192[1],v194[2]=v192[2],v194[3]=v192[3],v194[4]=v192[4],v194[5]=v192[5],v194[6]=v192[6],v194[7]=v192[7],v194[8]=v192[8],v194[9]=v192[9],v194[10]=v192[10],v194[11]=v192[11],v194[12]=v192[12],v194[13]=v192[13],v194[14]=v192[14],v194[15]=v192[15],v194));
-v196=a0["dim0D"];
-if(!(v17(v196)&&v196.length===16))g18.commandRaise(g197,g19);
-v1.uniformMatrix4fv(g195.location,false,(Array.isArray(v196)||v196 instanceof Float32Array)?v196:(v198[0]=v196[0],v198[1]=v196[1],v198[2]=v196[2],v198[3]=v196[3],v198[4]=v196[4],v198[5]=v196[5],v198[6]=v196[6],v198[7]=v196[7],v198[8]=v196[8],v198[9]=v196[9],v198[10]=v196[10],v198[11]=v196[11],v198[12]=v196[12],v198[13]=v196[13],v198[14]=v196[14],v198[15]=v196[15],v198));
-v200=a0["dim1A"];
-if(!(v17(v200)&&v200.length===16))g18.commandRaise(g201,g19);
-v1.uniformMatrix4fv(g199.location,false,(Array.isArray(v200)||v200 instanceof Float32Array)?v200:(v202[0]=v200[0],v202[1]=v200[1],v202[2]=v200[2],v202[3]=v200[3],v202[4]=v200[4],v202[5]=v200[5],v202[6]=v200[6],v202[7]=v200[7],v202[8]=v200[8],v202[9]=v200[9],v202[10]=v200[10],v202[11]=v200[11],v202[12]=v200[12],v202[13]=v200[13],v202[14]=v200[14],v202[15]=v200[15],v202));
-v204=a0["dim1B"];
-if(!(v17(v204)&&v204.length===16))g18.commandRaise(g205,g19);
-v1.uniformMatrix4fv(g203.location,false,(Array.isArray(v204)||v204 instanceof Float32Array)?v204:(v206[0]=v204[0],v206[1]=v204[1],v206[2]=v204[2],v206[3]=v204[3],v206[4]=v204[4],v206[5]=v204[5],v206[6]=v204[6],v206[7]=v204[7],v206[8]=v204[8],v206[9]=v204[9],v206[10]=v204[10],v206[11]=v204[11],v206[12]=v204[12],v206[13]=v204[13],v206[14]=v204[14],v206[15]=v204[15],v206));
-v208=a0["dim1C"];
-if(!(v17(v208)&&v208.length===16))g18.commandRaise(g209,g19);
-v1.uniformMatrix4fv(g207.location,false,(Array.isArray(v208)||v208 instanceof Float32Array)?v208:(v210[0]=v208[0],v210[1]=v208[1],v210[2]=v208[2],v210[3]=v208[3],v210[4]=v208[4],v210[5]=v208[5],v210[6]=v208[6],v210[7]=v208[7],v210[8]=v208[8],v210[9]=v208[9],v210[10]=v208[10],v210[11]=v208[11],v210[12]=v208[12],v210[13]=v208[13],v210[14]=v208[14],v210[15]=v208[15],v210));
-v212=a0["dim1D"];
-if(!(v17(v212)&&v212.length===16))g18.commandRaise(g213,g19);
-v1.uniformMatrix4fv(g211.location,false,(Array.isArray(v212)||v212 instanceof Float32Array)?v212:(v214[0]=v212[0],v214[1]=v212[1],v214[2]=v212[2],v214[3]=v212[3],v214[4]=v212[4],v214[5]=v212[5],v214[6]=v212[6],v214[7]=v212[7],v214[8]=v212[8],v214[9]=v212[9],v214[10]=v212[10],v214[11]=v212[11],v214[12]=v212[12],v214[13]=v212[13],v214[14]=v212[14],v214[15]=v212[15],v214));
-v216=a0["drwLayer"];
-if(!(typeof v216==="number"))g18.commandRaise(g217,g19);
-v1.uniform1f(g215.location,v216);
-v219=a0["hiA"];
-if(!(v17(v219)&&v219.length===16))g18.commandRaise(g220,g19);
-v1.uniformMatrix4fv(g218.location,false,(Array.isArray(v219)||v219 instanceof Float32Array)?v219:(v221[0]=v219[0],v221[1]=v219[1],v221[2]=v219[2],v221[3]=v219[3],v221[4]=v219[4],v221[5]=v219[5],v221[6]=v219[6],v221[7]=v219[7],v221[8]=v219[8],v221[9]=v219[9],v221[10]=v219[10],v221[11]=v219[11],v221[12]=v219[12],v221[13]=v219[13],v221[14]=v219[14],v221[15]=v219[15],v221));
-v223=a0["hiB"];
-if(!(v17(v223)&&v223.length===16))g18.commandRaise(g224,g19);
-v1.uniformMatrix4fv(g222.location,false,(Array.isArray(v223)||v223 instanceof Float32Array)?v223:(v225[0]=v223[0],v225[1]=v223[1],v225[2]=v223[2],v225[3]=v223[3],v225[4]=v223[4],v225[5]=v223[5],v225[6]=v223[6],v225[7]=v223[7],v225[8]=v223[8],v225[9]=v223[9],v225[10]=v223[10],v225[11]=v223[11],v225[12]=v223[12],v225[13]=v223[13],v225[14]=v223[14],v225[15]=v223[15],v225));
-v227=a0["hiC"];
-if(!(v17(v227)&&v227.length===16))g18.commandRaise(g228,g19);
-v1.uniformMatrix4fv(g226.location,false,(Array.isArray(v227)||v227 instanceof Float32Array)?v227:(v229[0]=v227[0],v229[1]=v227[1],v229[2]=v227[2],v229[3]=v227[3],v229[4]=v227[4],v229[5]=v227[5],v229[6]=v227[6],v229[7]=v227[7],v229[8]=v227[8],v229[9]=v227[9],v229[10]=v227[10],v229[11]=v227[11],v229[12]=v227[12],v229[13]=v227[13],v229[14]=v227[14],v229[15]=v227[15],v229));
-v231=a0["hiD"];
-if(!(v17(v231)&&v231.length===16))g18.commandRaise(g232,g19);
-v1.uniformMatrix4fv(g230.location,false,(Array.isArray(v231)||v231 instanceof Float32Array)?v231:(v233[0]=v231[0],v233[1]=v231[1],v233[2]=v231[2],v233[3]=v231[3],v233[4]=v231[4],v233[5]=v231[5],v233[6]=v231[6],v233[7]=v231[7],v233[8]=v231[8],v233[9]=v231[9],v233[10]=v231[10],v233[11]=v231[11],v233[12]=v231[12],v233[13]=v231[13],v233[14]=v231[14],v233[15]=v231[15],v233));
-v235=a0["loA"];
-if(!(v17(v235)&&v235.length===16))g18.commandRaise(g236,g19);
-v1.uniformMatrix4fv(g234.location,false,(Array.isArray(v235)||v235 instanceof Float32Array)?v235:(v237[0]=v235[0],v237[1]=v235[1],v237[2]=v235[2],v237[3]=v235[3],v237[4]=v235[4],v237[5]=v235[5],v237[6]=v235[6],v237[7]=v235[7],v237[8]=v235[8],v237[9]=v235[9],v237[10]=v235[10],v237[11]=v235[11],v237[12]=v235[12],v237[13]=v235[13],v237[14]=v235[14],v237[15]=v235[15],v237));
-v239=a0["loB"];
-if(!(v17(v239)&&v239.length===16))g18.commandRaise(g240,g19);
-v1.uniformMatrix4fv(g238.location,false,(Array.isArray(v239)||v239 instanceof Float32Array)?v239:(v241[0]=v239[0],v241[1]=v239[1],v241[2]=v239[2],v241[3]=v239[3],v241[4]=v239[4],v241[5]=v239[5],v241[6]=v239[6],v241[7]=v239[7],v241[8]=v239[8],v241[9]=v239[9],v241[10]=v239[10],v241[11]=v239[11],v241[12]=v239[12],v241[13]=v239[13],v241[14]=v239[14],v241[15]=v239[15],v241));
-v243=a0["loC"];
-if(!(v17(v243)&&v243.length===16))g18.commandRaise(g244,g19);
-v1.uniformMatrix4fv(g242.location,false,(Array.isArray(v243)||v243 instanceof Float32Array)?v243:(v245[0]=v243[0],v245[1]=v243[1],v245[2]=v243[2],v245[3]=v243[3],v245[4]=v243[4],v245[5]=v243[5],v245[6]=v243[6],v245[7]=v243[7],v245[8]=v243[8],v245[9]=v243[9],v245[10]=v243[10],v245[11]=v243[11],v245[12]=v243[12],v245[13]=v243[13],v245[14]=v243[14],v245[15]=v243[15],v245));
-v247=a0["loD"];
-if(!(v17(v247)&&v247.length===16))g18.commandRaise(g248,g19);
-v1.uniformMatrix4fv(g246.location,false,(Array.isArray(v247)||v247 instanceof Float32Array)?v247:(v249[0]=v247[0],v249[1]=v247[1],v249[2]=v247[2],v249[3]=v247[3],v249[4]=v247[4],v249[5]=v247[5],v249[6]=v247[6],v249[7]=v247[7],v249[8]=v247[8],v249[9]=v247[9],v249[10]=v247[10],v249[11]=v247[11],v249[12]=v247[12],v249[13]=v247[13],v249[14]=v247[14],v249[15]=v247[15],v249));
-v251=a0["maskHeight"];
-if(!(typeof v251==="number"))g18.commandRaise(g252,g19);
-v1.uniform1f(g250.location,v251);
-v254=a0["maskTexture"];
-if(v254&&v254._reglType==="framebuffer"){
-v254=v254.color[0];
-}
-if(!(typeof v254==="function"&&v254._reglType==="texture2d"))g18.commandRaise(g255,g19);
-v256=v254._texture;
-v1.uniform1i(g253.location,v256.bind());
-v1.uniform1i(g257.location,g258.bind());
-v260=a0["resolution"];
-if(!(v17(v260)&&v260.length===2))g18.commandRaise(g261,g19);
-v262=v260[0];
-v263=v260[1];
-v1.uniform2f(g259.location,v262,v263);
-v265=a0["viewBoxPos"];
-if(!(v17(v265)&&v265.length===2))g18.commandRaise(g266,g19);
-v267=v265[0];
-v268=v265[1];
-v1.uniform2f(g264.location,v267,v268);
-v270=a0["viewBoxSize"];
-if(!(v17(v270)&&v270.length===2))g18.commandRaise(g271,g19);
-v272=v270[0];
-v273=v270[1];
-v1.uniform2f(g269.location,v272,v273);
-v274=v6.elements;
-if(v274){
-v1.bindBuffer(34963,v274.buffer.buffer);
-}
-else if(v11.currentVAO){
-v274=v7.getElements(v11.currentVAO.elements);
-if(v274)v1.bindBuffer(34963,v274.buffer.buffer);
-}
-v275=a0["offset"];
-if(!(v275>=0))g18.commandRaise(g276,g19);
-v277=a0["count"];
-if(!(typeof v277==="number"&&v277>=0&&v277===(v277|0)))g18.commandRaise(g278,g19);
-if(v277){
-if(v274){
-v1.drawElements(1,v277,v274.type,v275<<((v274.type-5121)>>1));
-}
-else{
-v1.drawArrays(1,v275,v277);
-}
-v5.dirty=true;
-v11.setVAO(null);
-v2.viewportWidth=v90;
-v2.viewportHeight=v91;
-v5.profile=v110;
-v256.unbind();
-g258.unbind();
-}
-}
-,"scope":function(a0,a1,a2){
-var v279,v280,v281,v282,v283,v284,v285,v286,v287,v288,v289,v290,v291,v292,v294,v296,v298,v300,v302,v304,v306,v308,v310,v312,v314,v316,v318,v320,v322,v324,v326,v328,v330,v332,v333,v334,v335,v336,v337,v338,v339,v340,v341,v342,v343,v344,v346,v347,v348,v349,v350,v351,v353,v356,v357,v359,v360,v362,v363,v365,v366,v368,v369,v371,v372,v374,v375,v377,v378,v380,v381,v383,v384,v386,v387,v389,v390,v392,v393,v395,v396,v398,v399,v401,v402,v404,v405,v407,v408,v410,v411,v413,v414,v416,v417,v419,v420,v422,v423,v425,v427,v428,v429,v430,v431,v432,v433,v434,v435,v436,v437,v438,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v453,v454,v455,v456,v457,v458,v459,v460,v461,v462,v463,v464,v466,v467,v468,v469,v470,v471,v472,v473,v474,v475,v476,v477,v479,v480,v481,v482,v483,v484,v485,v486,v487,v488,v489,v490,v492,v493,v494,v495,v496,v497,v498,v499,v500,v501,v502,v503,v505,v506,v507,v508,v509,v510,v511,v512,v513,v514,v515,v516,v518,v519,v520,v521,v522,v523,v524,v525,v526,v527,v528,v529,v531,v532,v533,v534,v535,v536,v537,v538,v539,v540,v541,v542,v544,v545,v546,v547,v548,v549,v550,v551,v552,v553,v554,v555,v557,v558,v559,v560,v561,v562,v563,v564,v565,v566,v567,v568,v570,v571,v572,v573,v574,v575,v576,v577,v578,v579,v580,v581,v583,v584,v585,v586,v587,v588,v589,v590,v591,v592,v593,v594,v596,v597,v598,v599,v600,v601,v602,v603,v604,v605,v606,v607,v609,v610,v611,v612,v613,v614,v615,v616,v617,v618,v619,v620,v622,v623,v624,v625,v626,v627,v628,v629,v630,v631,v632,v633,v635,v637;
-v279=a0["viewportX"];
-v53.x=v279;
-v280=a0["viewportY"];
-v53.y=v280;
-v281=a0["viewportWidth"];
-v53.width=v281;
-v282=a0["viewportHeight"];
-v53.height=v282;
-if(!(v53&&typeof v53==="object"))g18.commandRaise(g85,g19);
-v283=v53.x|0;
-v284=v53.y|0;
-v285="width" in v53?v53.width|0:(v2.framebufferWidth-v283);
-v286="height" in v53?v53.height|0:(v2.framebufferHeight-v284);
-if(!(v285>=0&&v286>=0))g18.commandRaise(g85,g19);
-v287=v2.viewportWidth;
-v2.viewportWidth=v285;
-v288=v2.viewportHeight;
-v2.viewportHeight=v286;
-v289=v42[0];
-v42[0]=v283;
-v290=v42[1];
-v42[1]=v284;
-v291=v42[2];
-v42[2]=v285;
-v292=v42[3];
-v42[3]=v286;
-v294=v20[0];
-v20[0]=g293;
-v296=v20[1];
-v20[1]=g295;
-v298=v20[2];
-v20[2]=g297;
-v300=v20[3];
-v20[3]=g299;
-v302=v4.blend_enable;
-v4.blend_enable=g301;
-v304=v22[0];
-v22[0]=g303;
-v306=v22[1];
-v22[1]=g305;
-v308=v24[0];
-v24[0]=g307;
-v310=v24[1];
-v24[1]=g309;
-v312=v24[2];
-v24[2]=g311;
-v314=v24[3];
-v24[3]=g313;
-v316=v4.cull_enable;
-v4.cull_enable=g315;
-v318=v4.cull_face;
-v4.cull_face=g317;
-v320=v4.depth_enable;
-v4.depth_enable=g319;
-v322=v4.depth_func;
-v4.depth_func=g321;
-v324=v4.depth_mask;
-v4.depth_mask=g323;
-v326=v26[0];
-v26[0]=g325;
-v328=v26[1];
-v26[1]=g327;
-v330=v4.dither;
-v4.dither=g329;
-v332=v4.lineWidth;
-v4.lineWidth=g331;
-v333=a0["scissorX"];
-v54.x=v333;
-v334=a0["scissorY"];
-v54.y=v334;
-v335=a0["scissorWidth"];
-v54.width=v335;
-v336=a0["scissorHeight"];
-v54.height=v336;
-if(!(v54&&typeof v54==="object"))g18.commandRaise(g104,g19);
-v337=v54.x|0;
-v338=v54.y|0;
-v339="width" in v54?v54.width|0:(v2.framebufferWidth-v337);
-v340="height" in v54?v54.height|0:(v2.framebufferHeight-v338);
-if(!(v339>=0&&v340>=0))g18.commandRaise(g104,g19);
-v341=v40[0];
-v40[0]=v337;
-v342=v40[1];
-v40[1]=v338;
-v343=v40[2];
-v40[2]=v339;
-v344=v40[3];
-v40[3]=v340;
-v346=v4.scissor_enable;
-v4.scissor_enable=g345;
-v347=v5.profile;
-v5.profile=false;
-v348=a0["offset"];
-if(!(v348>=0))g18.commandRaise(g276,g19);
-v349=v6.offset;
-v6.offset=v348;
-v350=a0["count"];
-if(!(typeof v350==="number"&&v350>=0&&v350===(v350|0)))g18.commandRaise(g278,g19);
-v351=v6.count;
-v6.count=v350;
-v353=v6.primitive;
-v6.primitive=g352;
-v356=v12[g355];
-v12[g355]=g354;
-v357=a0["resolution"];
-v359=v12[g358];
-v12[g358]=v357;
-v360=a0["viewBoxPos"];
-v362=v12[g361];
-v12[g361]=v360;
-v363=a0["viewBoxSize"];
-v365=v12[g364];
-v12[g364]=v363;
-v366=a0["dim0A"];
-v368=v12[g367];
-v12[g367]=v366;
-v369=a0["dim1A"];
-v371=v12[g370];
-v12[g370]=v369;
-v372=a0["dim0B"];
-v374=v12[g373];
-v12[g373]=v372;
-v375=a0["dim1B"];
-v377=v12[g376];
-v12[g376]=v375;
-v378=a0["dim0C"];
-v380=v12[g379];
-v12[g379]=v378;
-v381=a0["dim1C"];
-v383=v12[g382];
-v12[g382]=v381;
-v384=a0["dim0D"];
-v386=v12[g385];
-v12[g385]=v384;
-v387=a0["dim1D"];
-v389=v12[g388];
-v12[g388]=v387;
-v390=a0["loA"];
-v392=v12[g391];
-v12[g391]=v390;
-v393=a0["hiA"];
-v395=v12[g394];
-v12[g394]=v393;
-v396=a0["loB"];
-v398=v12[g397];
-v12[g397]=v396;
-v399=a0["hiB"];
-v401=v12[g400];
-v12[g400]=v399;
-v402=a0["loC"];
-v404=v12[g403];
-v12[g403]=v402;
-v405=a0["hiC"];
-v407=v12[g406];
-v12[g406]=v405;
-v408=a0["loD"];
-v410=v12[g409];
-v12[g409]=v408;
-v411=a0["hiD"];
-v413=v12[g412];
-v12[g412]=v411;
-v414=a0["contextColor"];
-v416=v12[g415];
-v12[g415]=v414;
-v417=a0["maskTexture"];
-v419=v12[g418];
-v12[g418]=v417;
-v420=a0["drwLayer"];
-v422=v12[g421];
-v12[g421]=v420;
-v423=a0["maskHeight"];
-v425=v12[g424];
-v12[g424]=v423;
-v427=g426.state;
-g426.state=1;
-v428=g426.x;
-g426.x=0;
-v429=g426.y;
-g426.y=0;
-v430=g426.z;
-g426.z=0;
-v431=g426.w;
-g426.w=0;
-v432=g426.buffer;
-g426.buffer=g116;
-v433=g426.size;
-g426.size=0;
-v434=g426.normalized;
-g426.normalized=false;
-v435=g426.type;
-g426.type=g116.dtype;
-v436=g426.offset;
-g426.offset=0;
-v437=g426.stride;
-g426.stride=0;
-v438=g426.divisor;
-g426.divisor=0;
-v440=g439.state;
-g439.state=1;
-v441=g439.x;
-g439.x=0;
-v442=g439.y;
-g439.y=0;
-v443=g439.z;
-g439.z=0;
-v444=g439.w;
-g439.w=0;
-v445=g439.buffer;
-g439.buffer=g120;
-v446=g439.size;
-g439.size=0;
-v447=g439.normalized;
-g439.normalized=false;
-v448=g439.type;
-g439.type=g120.dtype;
-v449=g439.offset;
-g439.offset=0;
-v450=g439.stride;
-g439.stride=0;
-v451=g439.divisor;
-g439.divisor=0;
-v453=g452.state;
-g452.state=1;
-v454=g452.x;
-g452.x=0;
-v455=g452.y;
-g452.y=0;
-v456=g452.z;
-g452.z=0;
-v457=g452.w;
-g452.w=0;
-v458=g452.buffer;
-g452.buffer=g124;
-v459=g452.size;
-g452.size=0;
-v460=g452.normalized;
-g452.normalized=false;
-v461=g452.type;
-g452.type=g124.dtype;
-v462=g452.offset;
-g452.offset=0;
-v463=g452.stride;
-g452.stride=0;
-v464=g452.divisor;
-g452.divisor=0;
-v466=g465.state;
-g465.state=1;
-v467=g465.x;
-g465.x=0;
-v468=g465.y;
-g465.y=0;
-v469=g465.z;
-g465.z=0;
-v470=g465.w;
-g465.w=0;
-v471=g465.buffer;
-g465.buffer=g128;
-v472=g465.size;
-g465.size=0;
-v473=g465.normalized;
-g465.normalized=false;
-v474=g465.type;
-g465.type=g128.dtype;
-v475=g465.offset;
-g465.offset=0;
-v476=g465.stride;
-g465.stride=0;
-v477=g465.divisor;
-g465.divisor=0;
-v479=g478.state;
-g478.state=1;
-v480=g478.x;
-g478.x=0;
-v481=g478.y;
-g478.y=0;
-v482=g478.z;
-g478.z=0;
-v483=g478.w;
-g478.w=0;
-v484=g478.buffer;
-g478.buffer=g132;
-v485=g478.size;
-g478.size=0;
-v486=g478.normalized;
-g478.normalized=false;
-v487=g478.type;
-g478.type=g132.dtype;
-v488=g478.offset;
-g478.offset=0;
-v489=g478.stride;
-g478.stride=0;
-v490=g478.divisor;
-g478.divisor=0;
-v492=g491.state;
-g491.state=1;
-v493=g491.x;
-g491.x=0;
-v494=g491.y;
-g491.y=0;
-v495=g491.z;
-g491.z=0;
-v496=g491.w;
-g491.w=0;
-v497=g491.buffer;
-g491.buffer=g136;
-v498=g491.size;
-g491.size=0;
-v499=g491.normalized;
-g491.normalized=false;
-v500=g491.type;
-g491.type=g136.dtype;
-v501=g491.offset;
-g491.offset=0;
-v502=g491.stride;
-g491.stride=0;
-v503=g491.divisor;
-g491.divisor=0;
-v505=g504.state;
-g504.state=1;
-v506=g504.x;
-g504.x=0;
-v507=g504.y;
-g504.y=0;
-v508=g504.z;
-g504.z=0;
-v509=g504.w;
-g504.w=0;
-v510=g504.buffer;
-g504.buffer=g140;
-v511=g504.size;
-g504.size=0;
-v512=g504.normalized;
-g504.normalized=false;
-v513=g504.type;
-g504.type=g140.dtype;
-v514=g504.offset;
-g504.offset=0;
-v515=g504.stride;
-g504.stride=0;
-v516=g504.divisor;
-g504.divisor=0;
-v518=g517.state;
-g517.state=1;
-v519=g517.x;
-g517.x=0;
-v520=g517.y;
-g517.y=0;
-v521=g517.z;
-g517.z=0;
-v522=g517.w;
-g517.w=0;
-v523=g517.buffer;
-g517.buffer=g144;
-v524=g517.size;
-g517.size=0;
-v525=g517.normalized;
-g517.normalized=false;
-v526=g517.type;
-g517.type=g144.dtype;
-v527=g517.offset;
-g517.offset=0;
-v528=g517.stride;
-g517.stride=0;
-v529=g517.divisor;
-g517.divisor=0;
-v531=g530.state;
-g530.state=1;
-v532=g530.x;
-g530.x=0;
-v533=g530.y;
-g530.y=0;
-v534=g530.z;
-g530.z=0;
-v535=g530.w;
-g530.w=0;
-v536=g530.buffer;
-g530.buffer=g148;
-v537=g530.size;
-g530.size=0;
-v538=g530.normalized;
-g530.normalized=false;
-v539=g530.type;
-g530.type=g148.dtype;
-v540=g530.offset;
-g530.offset=0;
-v541=g530.stride;
-g530.stride=0;
-v542=g530.divisor;
-g530.divisor=0;
-v544=g543.state;
-g543.state=1;
-v545=g543.x;
-g543.x=0;
-v546=g543.y;
-g543.y=0;
-v547=g543.z;
-g543.z=0;
-v548=g543.w;
-g543.w=0;
-v549=g543.buffer;
-g543.buffer=g152;
-v550=g543.size;
-g543.size=0;
-v551=g543.normalized;
-g543.normalized=false;
-v552=g543.type;
-g543.type=g152.dtype;
-v553=g543.offset;
-g543.offset=0;
-v554=g543.stride;
-g543.stride=0;
-v555=g543.divisor;
-g543.divisor=0;
-v557=g556.state;
-g556.state=1;
-v558=g556.x;
-g556.x=0;
-v559=g556.y;
-g556.y=0;
-v560=g556.z;
-g556.z=0;
-v561=g556.w;
-g556.w=0;
-v562=g556.buffer;
-g556.buffer=g156;
-v563=g556.size;
-g556.size=0;
-v564=g556.normalized;
-g556.normalized=false;
-v565=g556.type;
-g556.type=g156.dtype;
-v566=g556.offset;
-g556.offset=0;
-v567=g556.stride;
-g556.stride=0;
-v568=g556.divisor;
-g556.divisor=0;
-v570=g569.state;
-g569.state=1;
-v571=g569.x;
-g569.x=0;
-v572=g569.y;
-g569.y=0;
-v573=g569.z;
-g569.z=0;
-v574=g569.w;
-g569.w=0;
-v575=g569.buffer;
-g569.buffer=g160;
-v576=g569.size;
-g569.size=0;
-v577=g569.normalized;
-g569.normalized=false;
-v578=g569.type;
-g569.type=g160.dtype;
-v579=g569.offset;
-g569.offset=0;
-v580=g569.stride;
-g569.stride=0;
-v581=g569.divisor;
-g569.divisor=0;
-v583=g582.state;
-g582.state=1;
-v584=g582.x;
-g582.x=0;
-v585=g582.y;
-g582.y=0;
-v586=g582.z;
-g582.z=0;
-v587=g582.w;
-g582.w=0;
-v588=g582.buffer;
-g582.buffer=g164;
-v589=g582.size;
-g582.size=0;
-v590=g582.normalized;
-g582.normalized=false;
-v591=g582.type;
-g582.type=g164.dtype;
-v592=g582.offset;
-g582.offset=0;
-v593=g582.stride;
-g582.stride=0;
-v594=g582.divisor;
-g582.divisor=0;
-v596=g595.state;
-g595.state=1;
-v597=g595.x;
-g595.x=0;
-v598=g595.y;
-g595.y=0;
-v599=g595.z;
-g595.z=0;
-v600=g595.w;
-g595.w=0;
-v601=g595.buffer;
-g595.buffer=g168;
-v602=g595.size;
-g595.size=0;
-v603=g595.normalized;
-g595.normalized=false;
-v604=g595.type;
-g595.type=g168.dtype;
-v605=g595.offset;
-g595.offset=0;
-v606=g595.stride;
-g595.stride=0;
-v607=g595.divisor;
-g595.divisor=0;
-v609=g608.state;
-g608.state=1;
-v610=g608.x;
-g608.x=0;
-v611=g608.y;
-g608.y=0;
-v612=g608.z;
-g608.z=0;
-v613=g608.w;
-g608.w=0;
-v614=g608.buffer;
-g608.buffer=g172;
-v615=g608.size;
-g608.size=0;
-v616=g608.normalized;
-g608.normalized=false;
-v617=g608.type;
-g608.type=g172.dtype;
-v618=g608.offset;
-g608.offset=0;
-v619=g608.stride;
-g608.stride=0;
-v620=g608.divisor;
-g608.divisor=0;
-v622=g621.state;
-g621.state=1;
-v623=g621.x;
-g621.x=0;
-v624=g621.y;
-g621.y=0;
-v625=g621.z;
-g621.z=0;
-v626=g621.w;
-g621.w=0;
-v627=g621.buffer;
-g621.buffer=g112;
-v628=g621.size;
-g621.size=0;
-v629=g621.normalized;
-g621.normalized=false;
-v630=g621.type;
-g621.type=g112.dtype;
-v631=g621.offset;
-g621.offset=0;
-v632=g621.stride;
-g621.stride=0;
-v633=g621.divisor;
-g621.divisor=0;
-v635=v9.vert;
-v9.vert=g634;
-v637=v9.frag;
-v9.frag=g636;
-v5.dirty=true;
-a1(v2,a0,a2);
-v2.viewportWidth=v287;
-v2.viewportHeight=v288;
-v42[0]=v289;
-v42[1]=v290;
-v42[2]=v291;
-v42[3]=v292;
-v20[0]=v294;
-v20[1]=v296;
-v20[2]=v298;
-v20[3]=v300;
-v4.blend_enable=v302;
-v22[0]=v304;
-v22[1]=v306;
-v24[0]=v308;
-v24[1]=v310;
-v24[2]=v312;
-v24[3]=v314;
-v4.cull_enable=v316;
-v4.cull_face=v318;
-v4.depth_enable=v320;
-v4.depth_func=v322;
-v4.depth_mask=v324;
-v26[0]=v326;
-v26[1]=v328;
-v4.dither=v330;
-v4.lineWidth=v332;
-v40[0]=v341;
-v40[1]=v342;
-v40[2]=v343;
-v40[3]=v344;
-v4.scissor_enable=v346;
-v5.profile=v347;
-v6.offset=v349;
-v6.count=v351;
-v6.primitive=v353;
-v12[g355]=v356;
-v12[g358]=v359;
-v12[g361]=v362;
-v12[g364]=v365;
-v12[g367]=v368;
-v12[g370]=v371;
-v12[g373]=v374;
-v12[g376]=v377;
-v12[g379]=v380;
-v12[g382]=v383;
-v12[g385]=v386;
-v12[g388]=v389;
-v12[g391]=v392;
-v12[g394]=v395;
-v12[g397]=v398;
-v12[g400]=v401;
-v12[g403]=v404;
-v12[g406]=v407;
-v12[g409]=v410;
-v12[g412]=v413;
-v12[g415]=v416;
-v12[g418]=v419;
-v12[g421]=v422;
-v12[g424]=v425;
-g426.state=v427;
-g426.x=v428;
-g426.y=v429;
-g426.z=v430;
-g426.w=v431;
-g426.buffer=v432;
-g426.size=v433;
-g426.normalized=v434;
-g426.type=v435;
-g426.offset=v436;
-g426.stride=v437;
-g426.divisor=v438;
-g439.state=v440;
-g439.x=v441;
-g439.y=v442;
-g439.z=v443;
-g439.w=v444;
-g439.buffer=v445;
-g439.size=v446;
-g439.normalized=v447;
-g439.type=v448;
-g439.offset=v449;
-g439.stride=v450;
-g439.divisor=v451;
-g452.state=v453;
-g452.x=v454;
-g452.y=v455;
-g452.z=v456;
-g452.w=v457;
-g452.buffer=v458;
-g452.size=v459;
-g452.normalized=v460;
-g452.type=v461;
-g452.offset=v462;
-g452.stride=v463;
-g452.divisor=v464;
-g465.state=v466;
-g465.x=v467;
-g465.y=v468;
-g465.z=v469;
-g465.w=v470;
-g465.buffer=v471;
-g465.size=v472;
-g465.normalized=v473;
-g465.type=v474;
-g465.offset=v475;
-g465.stride=v476;
-g465.divisor=v477;
-g478.state=v479;
-g478.x=v480;
-g478.y=v481;
-g478.z=v482;
-g478.w=v483;
-g478.buffer=v484;
-g478.size=v485;
-g478.normalized=v486;
-g478.type=v487;
-g478.offset=v488;
-g478.stride=v489;
-g478.divisor=v490;
-g491.state=v492;
-g491.x=v493;
-g491.y=v494;
-g491.z=v495;
-g491.w=v496;
-g491.buffer=v497;
-g491.size=v498;
-g491.normalized=v499;
-g491.type=v500;
-g491.offset=v501;
-g491.stride=v502;
-g491.divisor=v503;
-g504.state=v505;
-g504.x=v506;
-g504.y=v507;
-g504.z=v508;
-g504.w=v509;
-g504.buffer=v510;
-g504.size=v511;
-g504.normalized=v512;
-g504.type=v513;
-g504.offset=v514;
-g504.stride=v515;
-g504.divisor=v516;
-g517.state=v518;
-g517.x=v519;
-g517.y=v520;
-g517.z=v521;
-g517.w=v522;
-g517.buffer=v523;
-g517.size=v524;
-g517.normalized=v525;
-g517.type=v526;
-g517.offset=v527;
-g517.stride=v528;
-g517.divisor=v529;
-g530.state=v531;
-g530.x=v532;
-g530.y=v533;
-g530.z=v534;
-g530.w=v535;
-g530.buffer=v536;
-g530.size=v537;
-g530.normalized=v538;
-g530.type=v539;
-g530.offset=v540;
-g530.stride=v541;
-g530.divisor=v542;
-g543.state=v544;
-g543.x=v545;
-g543.y=v546;
-g543.z=v547;
-g543.w=v548;
-g543.buffer=v549;
-g543.size=v550;
-g543.normalized=v551;
-g543.type=v552;
-g543.offset=v553;
-g543.stride=v554;
-g543.divisor=v555;
-g556.state=v557;
-g556.x=v558;
-g556.y=v559;
-g556.z=v560;
-g556.w=v561;
-g556.buffer=v562;
-g556.size=v563;
-g556.normalized=v564;
-g556.type=v565;
-g556.offset=v566;
-g556.stride=v567;
-g556.divisor=v568;
-g569.state=v570;
-g569.x=v571;
-g569.y=v572;
-g569.z=v573;
-g569.w=v574;
-g569.buffer=v575;
-g569.size=v576;
-g569.normalized=v577;
-g569.type=v578;
-g569.offset=v579;
-g569.stride=v580;
-g569.divisor=v581;
-g582.state=v583;
-g582.x=v584;
-g582.y=v585;
-g582.z=v586;
-g582.w=v587;
-g582.buffer=v588;
-g582.size=v589;
-g582.normalized=v590;
-g582.type=v591;
-g582.offset=v592;
-g582.stride=v593;
-g582.divisor=v594;
-g595.state=v596;
-g595.x=v597;
-g595.y=v598;
-g595.z=v599;
-g595.w=v600;
-g595.buffer=v601;
-g595.size=v602;
-g595.normalized=v603;
-g595.type=v604;
-g595.offset=v605;
-g595.stride=v606;
-g595.divisor=v607;
-g608.state=v609;
-g608.x=v610;
-g608.y=v611;
-g608.z=v612;
-g608.w=v613;
-g608.buffer=v614;
-g608.size=v615;
-g608.normalized=v616;
-g608.type=v617;
-g608.offset=v618;
-g608.stride=v619;
-g608.divisor=v620;
-g621.state=v622;
-g621.x=v623;
-g621.y=v624;
-g621.z=v625;
-g621.w=v626;
-g621.buffer=v627;
-g621.size=v628;
-g621.normalized=v629;
-g621.type=v630;
-g621.offset=v631;
-g621.stride=v632;
-g621.divisor=v633;
-v9.vert=v635;
-v9.frag=v637;
-v5.dirty=true;
-}
-,"batch":function(a0,a1){
-var v638,v673,v674,v675;
-v638=v13.next;
-if(v638!==v13.cur){
-if(v638){
-v1.bindFramebuffer(36160,v638.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v638;
-}
-if(v5.dirty){
-var v639,v640,v641,v642,v643,v644,v645,v646,v647,v648,v649,v650,v651,v652,v653,v654,v655,v656,v657,v658,v659,v660,v661,v662,v663;
-v639=v28[0];
-v640=v28[1];
-v641=v28[2];
-v642=v28[3];
-if(v639!==v29[0]||v640!==v29[1]||v641!==v29[2]||v642!==v29[3]){
-v1.colorMask(v639,v640,v641,v642);
-v29[0]=v639;
-v29[1]=v640;
-v29[2]=v641;
-v29[3]=v642;
-}
-v643=v4.frontFace;
-if(v643!==v5.frontFace){
-v1.frontFace(v643);
-v5.frontFace=v643;
-}
-v644=v4.polygonOffset_enable;
-if(v644!==v5.polygonOffset_enable){
-if(v644){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v644;
-}
-v645=v30[0];
-v646=v30[1];
-if(v645!==v31[0]||v646!==v31[1]){
-v1.polygonOffset(v645,v646);
-v31[0]=v645;
-v31[1]=v646;
-}
-v647=v4.sample_alpha;
-if(v647!==v5.sample_alpha){
-if(v647){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v647;
-}
-v648=v4.sample_enable;
-if(v648!==v5.sample_enable){
-if(v648){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v648;
-}
-v649=v32[0];
-v650=v32[1];
-if(v649!==v33[0]||v650!==v33[1]){
-v1.sampleCoverage(v649,v650);
-v33[0]=v649;
-v33[1]=v650;
-}
-v651=v4.stencil_enable;
-if(v651!==v5.stencil_enable){
-if(v651){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v651;
-}
-v652=v4.stencil_mask;
-if(v652!==v5.stencil_mask){
-v1.stencilMask(v652);
-v5.stencil_mask=v652;
-}
-v653=v34[0];
-v654=v34[1];
-v655=v34[2];
-if(v653!==v35[0]||v654!==v35[1]||v655!==v35[2]){
-v1.stencilFunc(v653,v654,v655);
-v35[0]=v653;
-v35[1]=v654;
-v35[2]=v655;
-}
-v656=v36[0];
-v657=v36[1];
-v658=v36[2];
-v659=v36[3];
-if(v656!==v37[0]||v657!==v37[1]||v658!==v37[2]||v659!==v37[3]){
-v1.stencilOpSeparate(v656,v657,v658,v659);
-v37[0]=v656;
-v37[1]=v657;
-v37[2]=v658;
-v37[3]=v659;
-}
-v660=v38[0];
-v661=v38[1];
-v662=v38[2];
-v663=v38[3];
-if(v660!==v39[0]||v661!==v39[1]||v662!==v39[2]||v663!==v39[3]){
-v1.stencilOpSeparate(v660,v661,v662,v663);
-v39[0]=v660;
-v39[1]=v661;
-v39[2]=v662;
-v39[3]=v663;
-}
-}
-v1.blendColor(0,0,0,0);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=0;
-if(g664){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g664;
-v1.blendEquationSeparate(32774,32774);
-v23[0]=32774;
-v23[1]=32774;
-v1.blendFuncSeparate(770,771,1,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=1;
-v25[3]=1;
-if(g665){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=g665;
-v1.cullFace(g666);
-v5.cull_face=g666;
-if(g667){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=g667;
-v1.depthFunc(g668);
-v5.depth_func=g668;
-v1.depthMask(g669);
-v5.depth_mask=g669;
-v1.depthRange(0,1);
-v27[0]=0;
-v27[1]=1;
-if(g670){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=g670;
-v1.lineWidth(g671);
-v5.lineWidth=g671;
-if(g672){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g672;
-v673=v5.profile;
-v5.profile=false;
-v1.useProgram(g111.program);
-var v694,v695,v696,v697,v698,v699,v700,v701,v702,v703,v704,v705,v706,v707,v708,v709,v710,v711,v712,v713,v714,v715,v716,v717,v718,v719,v720,v721,v722,v723,v724,v725,v788;
-v11.setVAO(null);
-v694=g113.location;
-v695=v10[v694];
-if(!v695.buffer){
-v1.enableVertexAttribArray(v694);
-}
-if(v695.type!==g112.dtype||v695.size!==4||v695.buffer!==g112||v695.normalized!==false||v695.offset!==0||v695.stride!==0){
-v1.bindBuffer(34962,g112.buffer);
-v1.vertexAttribPointer(v694,4,g112.dtype,false,0,0);
-v695.type=g112.dtype;
-v695.size=4;
-v695.buffer=g112;
-v695.normalized=false;
-v695.offset=0;
-v695.stride=0;
-}
-v696=g117.location;
-v697=v10[v696];
-if(!v697.buffer){
-v1.enableVertexAttribArray(v696);
-}
-if(v697.type!==g116.dtype||v697.size!==4||v697.buffer!==g116||v697.normalized!==false||v697.offset!==0||v697.stride!==0){
-v1.bindBuffer(34962,g116.buffer);
-v1.vertexAttribPointer(v696,4,g116.dtype,false,0,0);
-v697.type=g116.dtype;
-v697.size=4;
-v697.buffer=g116;
-v697.normalized=false;
-v697.offset=0;
-v697.stride=0;
-}
-v698=g121.location;
-v699=v10[v698];
-if(!v699.buffer){
-v1.enableVertexAttribArray(v698);
-}
-if(v699.type!==g120.dtype||v699.size!==4||v699.buffer!==g120||v699.normalized!==false||v699.offset!==0||v699.stride!==0){
-v1.bindBuffer(34962,g120.buffer);
-v1.vertexAttribPointer(v698,4,g120.dtype,false,0,0);
-v699.type=g120.dtype;
-v699.size=4;
-v699.buffer=g120;
-v699.normalized=false;
-v699.offset=0;
-v699.stride=0;
-}
-v700=g125.location;
-v701=v10[v700];
-if(!v701.buffer){
-v1.enableVertexAttribArray(v700);
-}
-if(v701.type!==g124.dtype||v701.size!==4||v701.buffer!==g124||v701.normalized!==false||v701.offset!==0||v701.stride!==0){
-v1.bindBuffer(34962,g124.buffer);
-v1.vertexAttribPointer(v700,4,g124.dtype,false,0,0);
-v701.type=g124.dtype;
-v701.size=4;
-v701.buffer=g124;
-v701.normalized=false;
-v701.offset=0;
-v701.stride=0;
-}
-v702=g129.location;
-v703=v10[v702];
-if(!v703.buffer){
-v1.enableVertexAttribArray(v702);
-}
-if(v703.type!==g128.dtype||v703.size!==4||v703.buffer!==g128||v703.normalized!==false||v703.offset!==0||v703.stride!==0){
-v1.bindBuffer(34962,g128.buffer);
-v1.vertexAttribPointer(v702,4,g128.dtype,false,0,0);
-v703.type=g128.dtype;
-v703.size=4;
-v703.buffer=g128;
-v703.normalized=false;
-v703.offset=0;
-v703.stride=0;
-}
-v704=g133.location;
-v705=v10[v704];
-if(!v705.buffer){
-v1.enableVertexAttribArray(v704);
-}
-if(v705.type!==g132.dtype||v705.size!==4||v705.buffer!==g132||v705.normalized!==false||v705.offset!==0||v705.stride!==0){
-v1.bindBuffer(34962,g132.buffer);
-v1.vertexAttribPointer(v704,4,g132.dtype,false,0,0);
-v705.type=g132.dtype;
-v705.size=4;
-v705.buffer=g132;
-v705.normalized=false;
-v705.offset=0;
-v705.stride=0;
-}
-v706=g137.location;
-v707=v10[v706];
-if(!v707.buffer){
-v1.enableVertexAttribArray(v706);
-}
-if(v707.type!==g136.dtype||v707.size!==4||v707.buffer!==g136||v707.normalized!==false||v707.offset!==0||v707.stride!==0){
-v1.bindBuffer(34962,g136.buffer);
-v1.vertexAttribPointer(v706,4,g136.dtype,false,0,0);
-v707.type=g136.dtype;
-v707.size=4;
-v707.buffer=g136;
-v707.normalized=false;
-v707.offset=0;
-v707.stride=0;
-}
-v708=g141.location;
-v709=v10[v708];
-if(!v709.buffer){
-v1.enableVertexAttribArray(v708);
-}
-if(v709.type!==g140.dtype||v709.size!==4||v709.buffer!==g140||v709.normalized!==false||v709.offset!==0||v709.stride!==0){
-v1.bindBuffer(34962,g140.buffer);
-v1.vertexAttribPointer(v708,4,g140.dtype,false,0,0);
-v709.type=g140.dtype;
-v709.size=4;
-v709.buffer=g140;
-v709.normalized=false;
-v709.offset=0;
-v709.stride=0;
-}
-v710=g145.location;
-v711=v10[v710];
-if(!v711.buffer){
-v1.enableVertexAttribArray(v710);
-}
-if(v711.type!==g144.dtype||v711.size!==4||v711.buffer!==g144||v711.normalized!==false||v711.offset!==0||v711.stride!==0){
-v1.bindBuffer(34962,g144.buffer);
-v1.vertexAttribPointer(v710,4,g144.dtype,false,0,0);
-v711.type=g144.dtype;
-v711.size=4;
-v711.buffer=g144;
-v711.normalized=false;
-v711.offset=0;
-v711.stride=0;
-}
-v712=g149.location;
-v713=v10[v712];
-if(!v713.buffer){
-v1.enableVertexAttribArray(v712);
-}
-if(v713.type!==g148.dtype||v713.size!==4||v713.buffer!==g148||v713.normalized!==false||v713.offset!==0||v713.stride!==0){
-v1.bindBuffer(34962,g148.buffer);
-v1.vertexAttribPointer(v712,4,g148.dtype,false,0,0);
-v713.type=g148.dtype;
-v713.size=4;
-v713.buffer=g148;
-v713.normalized=false;
-v713.offset=0;
-v713.stride=0;
-}
-v714=g153.location;
-v715=v10[v714];
-if(!v715.buffer){
-v1.enableVertexAttribArray(v714);
-}
-if(v715.type!==g152.dtype||v715.size!==4||v715.buffer!==g152||v715.normalized!==false||v715.offset!==0||v715.stride!==0){
-v1.bindBuffer(34962,g152.buffer);
-v1.vertexAttribPointer(v714,4,g152.dtype,false,0,0);
-v715.type=g152.dtype;
-v715.size=4;
-v715.buffer=g152;
-v715.normalized=false;
-v715.offset=0;
-v715.stride=0;
-}
-v716=g157.location;
-v717=v10[v716];
-if(!v717.buffer){
-v1.enableVertexAttribArray(v716);
-}
-if(v717.type!==g156.dtype||v717.size!==4||v717.buffer!==g156||v717.normalized!==false||v717.offset!==0||v717.stride!==0){
-v1.bindBuffer(34962,g156.buffer);
-v1.vertexAttribPointer(v716,4,g156.dtype,false,0,0);
-v717.type=g156.dtype;
-v717.size=4;
-v717.buffer=g156;
-v717.normalized=false;
-v717.offset=0;
-v717.stride=0;
-}
-v718=g161.location;
-v719=v10[v718];
-if(!v719.buffer){
-v1.enableVertexAttribArray(v718);
-}
-if(v719.type!==g160.dtype||v719.size!==4||v719.buffer!==g160||v719.normalized!==false||v719.offset!==0||v719.stride!==0){
-v1.bindBuffer(34962,g160.buffer);
-v1.vertexAttribPointer(v718,4,g160.dtype,false,0,0);
-v719.type=g160.dtype;
-v719.size=4;
-v719.buffer=g160;
-v719.normalized=false;
-v719.offset=0;
-v719.stride=0;
-}
-v720=g165.location;
-v721=v10[v720];
-if(!v721.buffer){
-v1.enableVertexAttribArray(v720);
-}
-if(v721.type!==g164.dtype||v721.size!==4||v721.buffer!==g164||v721.normalized!==false||v721.offset!==0||v721.stride!==0){
-v1.bindBuffer(34962,g164.buffer);
-v1.vertexAttribPointer(v720,4,g164.dtype,false,0,0);
-v721.type=g164.dtype;
-v721.size=4;
-v721.buffer=g164;
-v721.normalized=false;
-v721.offset=0;
-v721.stride=0;
-}
-v722=g169.location;
-v723=v10[v722];
-if(!v723.buffer){
-v1.enableVertexAttribArray(v722);
-}
-if(v723.type!==g168.dtype||v723.size!==4||v723.buffer!==g168||v723.normalized!==false||v723.offset!==0||v723.stride!==0){
-v1.bindBuffer(34962,g168.buffer);
-v1.vertexAttribPointer(v722,4,g168.dtype,false,0,0);
-v723.type=g168.dtype;
-v723.size=4;
-v723.buffer=g168;
-v723.normalized=false;
-v723.offset=0;
-v723.stride=0;
-}
-v724=g173.location;
-v725=v10[v724];
-if(!v725.buffer){
-v1.enableVertexAttribArray(v724);
-}
-if(v725.type!==g172.dtype||v725.size!==4||v725.buffer!==g172||v725.normalized!==false||v725.offset!==0||v725.stride!==0){
-v1.bindBuffer(34962,g172.buffer);
-v1.vertexAttribPointer(v724,4,g172.dtype,false,0,0);
-v725.type=g172.dtype;
-v725.size=4;
-v725.buffer=g172;
-v725.normalized=false;
-v725.offset=0;
-v725.stride=0;
-}
-v1.uniform1i(g257.location,g258.bind());
-v788=v6.elements;
-if(v788){
-v1.bindBuffer(34963,v788.buffer.buffer);
-}
-else if(v11.currentVAO){
-v788=v7.getElements(v11.currentVAO.elements);
-if(v788)v1.bindBuffer(34963,v788.buffer.buffer);
-}
-for(v674=0;
-v674<a1;
-++v674){
-v675=a0[v674];
-var v676,v677,v678,v679,v680,v681,v682,v683,v684,v685,v686,v687,v688,v689,v690,v691,v692,v693,v726,v727,v728,v729,v730,v731,v732,v733,v734,v735,v737,v739,v741,v743,v745,v747,v749,v751,v752,v753,v755,v757,v759,v761,v763,v765,v767,v769,v770,v771,v772,v773,v774,v775,v776,v777,v778,v779,v780,v781,v782,v783,v784,v785,v786,v787,v789,v790;
-v676=v675["viewportX"];
-v53.x=v676;
-v677=v675["viewportY"];
-v53.y=v677;
-v678=v675["viewportWidth"];
-v53.width=v678;
-v679=v675["viewportHeight"];
-v53.height=v679;
-if(!(v53&&typeof v53==="object"))g18.commandRaise(g85,g19);
-v680=v53.x|0;
-v681=v53.y|0;
-v682="width" in v53?v53.width|0:(v2.framebufferWidth-v680);
-v683="height" in v53?v53.height|0:(v2.framebufferHeight-v681);
-if(!(v682>=0&&v683>=0))g18.commandRaise(g85,g19);
-v684=v2.viewportWidth;
-v2.viewportWidth=v682;
-v685=v2.viewportHeight;
-v2.viewportHeight=v683;
-v1.viewport(v680,v681,v682,v683);
-v43[0]=v680;
-v43[1]=v681;
-v43[2]=v682;
-v43[3]=v683;
-v686=v675["scissorX"];
-v54.x=v686;
-v687=v675["scissorY"];
-v54.y=v687;
-v688=v675["scissorWidth"];
-v54.width=v688;
-v689=v675["scissorHeight"];
-v54.height=v689;
-if(!(v54&&typeof v54==="object"))g18.commandRaise(g104,g19);
-v690=v54.x|0;
-v691=v54.y|0;
-v692="width" in v54?v54.width|0:(v2.framebufferWidth-v690);
-v693="height" in v54?v54.height|0:(v2.framebufferHeight-v691);
-if(!(v692>=0&&v693>=0))g18.commandRaise(g104,g19);
-v1.scissor(v690,v691,v692,v693);
-v41[0]=v690;
-v41[1]=v691;
-v41[2]=v692;
-v41[3]=v693;
-v726=v675["contextColor"];
-if(!(v17(v726)&&v726.length===4))g18.commandRaise(g178,g19);
-v727=v726[0];
-v729=v726[1];
-v731=v726[2];
-v733=v726[3];
-if(!v674||v728!==v727||v730!==v729||v732!==v731||v734!==v733){
-v728=v727;
-v730=v729;
-v732=v731;
-v734=v733;
-v1.uniform4f(g176.location,v727,v729,v731,v733);
-}
-v735=v675["dim0A"];
-if(!(v17(v735)&&v735.length===16))g18.commandRaise(g185,g19);
-v1.uniformMatrix4fv(g183.location,false,(Array.isArray(v735)||v735 instanceof Float32Array)?v735:(v736[0]=v735[0],v736[1]=v735[1],v736[2]=v735[2],v736[3]=v735[3],v736[4]=v735[4],v736[5]=v735[5],v736[6]=v735[6],v736[7]=v735[7],v736[8]=v735[8],v736[9]=v735[9],v736[10]=v735[10],v736[11]=v735[11],v736[12]=v735[12],v736[13]=v735[13],v736[14]=v735[14],v736[15]=v735[15],v736));
-v737=v675["dim0B"];
-if(!(v17(v737)&&v737.length===16))g18.commandRaise(g189,g19);
-v1.uniformMatrix4fv(g187.location,false,(Array.isArray(v737)||v737 instanceof Float32Array)?v737:(v738[0]=v737[0],v738[1]=v737[1],v738[2]=v737[2],v738[3]=v737[3],v738[4]=v737[4],v738[5]=v737[5],v738[6]=v737[6],v738[7]=v737[7],v738[8]=v737[8],v738[9]=v737[9],v738[10]=v737[10],v738[11]=v737[11],v738[12]=v737[12],v738[13]=v737[13],v738[14]=v737[14],v738[15]=v737[15],v738));
-v739=v675["dim0C"];
-if(!(v17(v739)&&v739.length===16))g18.commandRaise(g193,g19);
-v1.uniformMatrix4fv(g191.location,false,(Array.isArray(v739)||v739 instanceof Float32Array)?v739:(v740[0]=v739[0],v740[1]=v739[1],v740[2]=v739[2],v740[3]=v739[3],v740[4]=v739[4],v740[5]=v739[5],v740[6]=v739[6],v740[7]=v739[7],v740[8]=v739[8],v740[9]=v739[9],v740[10]=v739[10],v740[11]=v739[11],v740[12]=v739[12],v740[13]=v739[13],v740[14]=v739[14],v740[15]=v739[15],v740));
-v741=v675["dim0D"];
-if(!(v17(v741)&&v741.length===16))g18.commandRaise(g197,g19);
-v1.uniformMatrix4fv(g195.location,false,(Array.isArray(v741)||v741 instanceof Float32Array)?v741:(v742[0]=v741[0],v742[1]=v741[1],v742[2]=v741[2],v742[3]=v741[3],v742[4]=v741[4],v742[5]=v741[5],v742[6]=v741[6],v742[7]=v741[7],v742[8]=v741[8],v742[9]=v741[9],v742[10]=v741[10],v742[11]=v741[11],v742[12]=v741[12],v742[13]=v741[13],v742[14]=v741[14],v742[15]=v741[15],v742));
-v743=v675["dim1A"];
-if(!(v17(v743)&&v743.length===16))g18.commandRaise(g201,g19);
-v1.uniformMatrix4fv(g199.location,false,(Array.isArray(v743)||v743 instanceof Float32Array)?v743:(v744[0]=v743[0],v744[1]=v743[1],v744[2]=v743[2],v744[3]=v743[3],v744[4]=v743[4],v744[5]=v743[5],v744[6]=v743[6],v744[7]=v743[7],v744[8]=v743[8],v744[9]=v743[9],v744[10]=v743[10],v744[11]=v743[11],v744[12]=v743[12],v744[13]=v743[13],v744[14]=v743[14],v744[15]=v743[15],v744));
-v745=v675["dim1B"];
-if(!(v17(v745)&&v745.length===16))g18.commandRaise(g205,g19);
-v1.uniformMatrix4fv(g203.location,false,(Array.isArray(v745)||v745 instanceof Float32Array)?v745:(v746[0]=v745[0],v746[1]=v745[1],v746[2]=v745[2],v746[3]=v745[3],v746[4]=v745[4],v746[5]=v745[5],v746[6]=v745[6],v746[7]=v745[7],v746[8]=v745[8],v746[9]=v745[9],v746[10]=v745[10],v746[11]=v745[11],v746[12]=v745[12],v746[13]=v745[13],v746[14]=v745[14],v746[15]=v745[15],v746));
-v747=v675["dim1C"];
-if(!(v17(v747)&&v747.length===16))g18.commandRaise(g209,g19);
-v1.uniformMatrix4fv(g207.location,false,(Array.isArray(v747)||v747 instanceof Float32Array)?v747:(v748[0]=v747[0],v748[1]=v747[1],v748[2]=v747[2],v748[3]=v747[3],v748[4]=v747[4],v748[5]=v747[5],v748[6]=v747[6],v748[7]=v747[7],v748[8]=v747[8],v748[9]=v747[9],v748[10]=v747[10],v748[11]=v747[11],v748[12]=v747[12],v748[13]=v747[13],v748[14]=v747[14],v748[15]=v747[15],v748));
-v749=v675["dim1D"];
-if(!(v17(v749)&&v749.length===16))g18.commandRaise(g213,g19);
-v1.uniformMatrix4fv(g211.location,false,(Array.isArray(v749)||v749 instanceof Float32Array)?v749:(v750[0]=v749[0],v750[1]=v749[1],v750[2]=v749[2],v750[3]=v749[3],v750[4]=v749[4],v750[5]=v749[5],v750[6]=v749[6],v750[7]=v749[7],v750[8]=v749[8],v750[9]=v749[9],v750[10]=v749[10],v750[11]=v749[11],v750[12]=v749[12],v750[13]=v749[13],v750[14]=v749[14],v750[15]=v749[15],v750));
-v751=v675["drwLayer"];
-if(!(typeof v751==="number"))g18.commandRaise(g217,g19);
-if(!v674||v752!==v751){
-v752=v751;
-v1.uniform1f(g215.location,v751);
-}
-v753=v675["hiA"];
-if(!(v17(v753)&&v753.length===16))g18.commandRaise(g220,g19);
-v1.uniformMatrix4fv(g218.location,false,(Array.isArray(v753)||v753 instanceof Float32Array)?v753:(v754[0]=v753[0],v754[1]=v753[1],v754[2]=v753[2],v754[3]=v753[3],v754[4]=v753[4],v754[5]=v753[5],v754[6]=v753[6],v754[7]=v753[7],v754[8]=v753[8],v754[9]=v753[9],v754[10]=v753[10],v754[11]=v753[11],v754[12]=v753[12],v754[13]=v753[13],v754[14]=v753[14],v754[15]=v753[15],v754));
-v755=v675["hiB"];
-if(!(v17(v755)&&v755.length===16))g18.commandRaise(g224,g19);
-v1.uniformMatrix4fv(g222.location,false,(Array.isArray(v755)||v755 instanceof Float32Array)?v755:(v756[0]=v755[0],v756[1]=v755[1],v756[2]=v755[2],v756[3]=v755[3],v756[4]=v755[4],v756[5]=v755[5],v756[6]=v755[6],v756[7]=v755[7],v756[8]=v755[8],v756[9]=v755[9],v756[10]=v755[10],v756[11]=v755[11],v756[12]=v755[12],v756[13]=v755[13],v756[14]=v755[14],v756[15]=v755[15],v756));
-v757=v675["hiC"];
-if(!(v17(v757)&&v757.length===16))g18.commandRaise(g228,g19);
-v1.uniformMatrix4fv(g226.location,false,(Array.isArray(v757)||v757 instanceof Float32Array)?v757:(v758[0]=v757[0],v758[1]=v757[1],v758[2]=v757[2],v758[3]=v757[3],v758[4]=v757[4],v758[5]=v757[5],v758[6]=v757[6],v758[7]=v757[7],v758[8]=v757[8],v758[9]=v757[9],v758[10]=v757[10],v758[11]=v757[11],v758[12]=v757[12],v758[13]=v757[13],v758[14]=v757[14],v758[15]=v757[15],v758));
-v759=v675["hiD"];
-if(!(v17(v759)&&v759.length===16))g18.commandRaise(g232,g19);
-v1.uniformMatrix4fv(g230.location,false,(Array.isArray(v759)||v759 instanceof Float32Array)?v759:(v760[0]=v759[0],v760[1]=v759[1],v760[2]=v759[2],v760[3]=v759[3],v760[4]=v759[4],v760[5]=v759[5],v760[6]=v759[6],v760[7]=v759[7],v760[8]=v759[8],v760[9]=v759[9],v760[10]=v759[10],v760[11]=v759[11],v760[12]=v759[12],v760[13]=v759[13],v760[14]=v759[14],v760[15]=v759[15],v760));
-v761=v675["loA"];
-if(!(v17(v761)&&v761.length===16))g18.commandRaise(g236,g19);
-v1.uniformMatrix4fv(g234.location,false,(Array.isArray(v761)||v761 instanceof Float32Array)?v761:(v762[0]=v761[0],v762[1]=v761[1],v762[2]=v761[2],v762[3]=v761[3],v762[4]=v761[4],v762[5]=v761[5],v762[6]=v761[6],v762[7]=v761[7],v762[8]=v761[8],v762[9]=v761[9],v762[10]=v761[10],v762[11]=v761[11],v762[12]=v761[12],v762[13]=v761[13],v762[14]=v761[14],v762[15]=v761[15],v762));
-v763=v675["loB"];
-if(!(v17(v763)&&v763.length===16))g18.commandRaise(g240,g19);
-v1.uniformMatrix4fv(g238.location,false,(Array.isArray(v763)||v763 instanceof Float32Array)?v763:(v764[0]=v763[0],v764[1]=v763[1],v764[2]=v763[2],v764[3]=v763[3],v764[4]=v763[4],v764[5]=v763[5],v764[6]=v763[6],v764[7]=v763[7],v764[8]=v763[8],v764[9]=v763[9],v764[10]=v763[10],v764[11]=v763[11],v764[12]=v763[12],v764[13]=v763[13],v764[14]=v763[14],v764[15]=v763[15],v764));
-v765=v675["loC"];
-if(!(v17(v765)&&v765.length===16))g18.commandRaise(g244,g19);
-v1.uniformMatrix4fv(g242.location,false,(Array.isArray(v765)||v765 instanceof Float32Array)?v765:(v766[0]=v765[0],v766[1]=v765[1],v766[2]=v765[2],v766[3]=v765[3],v766[4]=v765[4],v766[5]=v765[5],v766[6]=v765[6],v766[7]=v765[7],v766[8]=v765[8],v766[9]=v765[9],v766[10]=v765[10],v766[11]=v765[11],v766[12]=v765[12],v766[13]=v765[13],v766[14]=v765[14],v766[15]=v765[15],v766));
-v767=v675["loD"];
-if(!(v17(v767)&&v767.length===16))g18.commandRaise(g248,g19);
-v1.uniformMatrix4fv(g246.location,false,(Array.isArray(v767)||v767 instanceof Float32Array)?v767:(v768[0]=v767[0],v768[1]=v767[1],v768[2]=v767[2],v768[3]=v767[3],v768[4]=v767[4],v768[5]=v767[5],v768[6]=v767[6],v768[7]=v767[7],v768[8]=v767[8],v768[9]=v767[9],v768[10]=v767[10],v768[11]=v767[11],v768[12]=v767[12],v768[13]=v767[13],v768[14]=v767[14],v768[15]=v767[15],v768));
-v769=v675["maskHeight"];
-if(!(typeof v769==="number"))g18.commandRaise(g252,g19);
-if(!v674||v770!==v769){
-v770=v769;
-v1.uniform1f(g250.location,v769);
-}
-v771=v675["maskTexture"];
-if(v771&&v771._reglType==="framebuffer"){
-v771=v771.color[0];
-}
-if(!(typeof v771==="function"&&v771._reglType==="texture2d"))g18.commandRaise(g255,g19);
-v772=v771._texture;
-v1.uniform1i(g253.location,v772.bind());
-v773=v675["resolution"];
-if(!(v17(v773)&&v773.length===2))g18.commandRaise(g261,g19);
-v774=v773[0];
-v776=v773[1];
-if(!v674||v775!==v774||v777!==v776){
-v775=v774;
-v777=v776;
-v1.uniform2f(g259.location,v774,v776);
-}
-v778=v675["viewBoxPos"];
-if(!(v17(v778)&&v778.length===2))g18.commandRaise(g266,g19);
-v779=v778[0];
-v781=v778[1];
-if(!v674||v780!==v779||v782!==v781){
-v780=v779;
-v782=v781;
-v1.uniform2f(g264.location,v779,v781);
-}
-v783=v675["viewBoxSize"];
-if(!(v17(v783)&&v783.length===2))g18.commandRaise(g271,g19);
-v784=v783[0];
-v786=v783[1];
-if(!v674||v785!==v784||v787!==v786){
-v785=v784;
-v787=v786;
-v1.uniform2f(g269.location,v784,v786);
-}
-v789=v675["offset"];
-if(!(v789>=0))g18.commandRaise(g276,g19);
-v790=v675["count"];
-if(!(typeof v790==="number"&&v790>=0&&v790===(v790|0)))g18.commandRaise(g278,g19);
-if(v790){
-if(v788){
-v1.drawElements(1,v790,v788.type,v789<<((v788.type-5121)>>1));
-}
-else{
-v1.drawArrays(1,v789,v790);
-}
-v2.viewportWidth=v684;
-v2.viewportHeight=v685;
-v772.unbind();
-}
-}
-g258.unbind();
-v5.dirty=true;
-v11.setVAO(null);
-v5.profile=v673;
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81 b/src/generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81
new file mode 100644
index 00000000000..bdd998d0d11
--- /dev/null
+++ b/src/generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81
@@ -0,0 +1,660 @@
+module.exports = function anonymous(g0,g48,g115,g125,g127,g133,g135,g196
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v112,v193;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v112={
+}
+;
+v193={
+}
+;
+return {
+"draw":function(a0){
+var v49,v50,v51,v52,v53,v54,v101,v102,v103,v104,v105,v106,v107,v108,v109,v110,v111,v113,v114;
+v49=v14.angle_instanced_arrays;
+v50=a0["framebuffer"];
+v51=v13.getFramebuffer(v50);
+v52=v13.next;
+v13.next=v51;
+v53=v2.framebufferWidth;
+v2.framebufferWidth=v51?v51.width:v2.drawingBufferWidth;
+v54=v2.framebufferHeight;
+v2.framebufferHeight=v51?v51.height:v2.drawingBufferHeight;
+if(v51!==v13.cur){
+if(v51){
+v1.bindFramebuffer(36160,v51.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v51;
+}
+if(v5.dirty){
+var v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93,v94,v95,v96,v97,v98,v99,v100;
+v55=v4.dither;
+if(v55!==v5.dither){
+if(v55){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v55;
+}
+v56=v4.blend_enable;
+if(v56!==v5.blend_enable){
+if(v56){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=v56;
+}
+v57=v17[0];
+v58=v17[1];
+v59=v17[2];
+v60=v17[3];
+if(v57!==v18[0]||v58!==v18[1]||v59!==v18[2]||v60!==v18[3]){
+v1.blendColor(v57,v58,v59,v60);
+v18[0]=v57;
+v18[1]=v58;
+v18[2]=v59;
+v18[3]=v60;
+}
+v61=v19[0];
+v62=v19[1];
+if(v61!==v20[0]||v62!==v20[1]){
+v1.blendEquationSeparate(v61,v62);
+v20[0]=v61;
+v20[1]=v62;
+}
+v63=v21[0];
+v64=v21[1];
+v65=v21[2];
+v66=v21[3];
+if(v63!==v22[0]||v64!==v22[1]||v65!==v22[2]||v66!==v22[3]){
+v1.blendFuncSeparate(v63,v64,v65,v66);
+v22[0]=v63;
+v22[1]=v64;
+v22[2]=v65;
+v22[3]=v66;
+}
+v67=v4.depth_enable;
+if(v67!==v5.depth_enable){
+if(v67){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v67;
+}
+v68=v4.depth_func;
+if(v68!==v5.depth_func){
+v1.depthFunc(v68);
+v5.depth_func=v68;
+}
+v69=v23[0];
+v70=v23[1];
+if(v69!==v24[0]||v70!==v24[1]){
+v1.depthRange(v69,v70);
+v24[0]=v69;
+v24[1]=v70;
+}
+v71=v4.depth_mask;
+if(v71!==v5.depth_mask){
+v1.depthMask(v71);
+v5.depth_mask=v71;
+}
+v72=v25[0];
+v73=v25[1];
+v74=v25[2];
+v75=v25[3];
+if(v72!==v26[0]||v73!==v26[1]||v74!==v26[2]||v75!==v26[3]){
+v1.colorMask(v72,v73,v74,v75);
+v26[0]=v72;
+v26[1]=v73;
+v26[2]=v74;
+v26[3]=v75;
+}
+v76=v4.cull_enable;
+if(v76!==v5.cull_enable){
+if(v76){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v76;
+}
+v77=v4.cull_face;
+if(v77!==v5.cull_face){
+v1.cullFace(v77);
+v5.cull_face=v77;
+}
+v78=v4.frontFace;
+if(v78!==v5.frontFace){
+v1.frontFace(v78);
+v5.frontFace=v78;
+}
+v79=v4.lineWidth;
+if(v79!==v5.lineWidth){
+v1.lineWidth(v79);
+v5.lineWidth=v79;
+}
+v80=v4.polygonOffset_enable;
+if(v80!==v5.polygonOffset_enable){
+if(v80){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v80;
+}
+v81=v27[0];
+v82=v27[1];
+if(v81!==v28[0]||v82!==v28[1]){
+v1.polygonOffset(v81,v82);
+v28[0]=v81;
+v28[1]=v82;
+}
+v83=v4.sample_alpha;
+if(v83!==v5.sample_alpha){
+if(v83){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v83;
+}
+v84=v4.sample_enable;
+if(v84!==v5.sample_enable){
+if(v84){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v84;
+}
+v85=v29[0];
+v86=v29[1];
+if(v85!==v30[0]||v86!==v30[1]){
+v1.sampleCoverage(v85,v86);
+v30[0]=v85;
+v30[1]=v86;
+}
+v87=v4.stencil_enable;
+if(v87!==v5.stencil_enable){
+if(v87){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v87;
+}
+v88=v4.stencil_mask;
+if(v88!==v5.stencil_mask){
+v1.stencilMask(v88);
+v5.stencil_mask=v88;
+}
+v89=v31[0];
+v90=v31[1];
+v91=v31[2];
+if(v89!==v32[0]||v90!==v32[1]||v91!==v32[2]){
+v1.stencilFunc(v89,v90,v91);
+v32[0]=v89;
+v32[1]=v90;
+v32[2]=v91;
+}
+v92=v33[0];
+v93=v33[1];
+v94=v33[2];
+v95=v33[3];
+if(v92!==v34[0]||v93!==v34[1]||v94!==v34[2]||v95!==v34[3]){
+v1.stencilOpSeparate(v92,v93,v94,v95);
+v34[0]=v92;
+v34[1]=v93;
+v34[2]=v94;
+v34[3]=v95;
+}
+v96=v35[0];
+v97=v35[1];
+v98=v35[2];
+v99=v35[3];
+if(v96!==v36[0]||v97!==v36[1]||v98!==v36[2]||v99!==v36[3]){
+v1.stencilOpSeparate(v96,v97,v98,v99);
+v36[0]=v96;
+v36[1]=v97;
+v36[2]=v98;
+v36[3]=v99;
+}
+v100=v4.scissor_enable;
+if(v100!==v5.scissor_enable){
+if(v100){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=v100;
+}
+}
+v101=v2.framebufferWidth;
+v102=v2.framebufferHeight;
+v103=v2.viewportWidth;
+v2.viewportWidth=v101;
+v104=v2.viewportHeight;
+v2.viewportHeight=v102;
+v1.viewport(0,0,v101,v102);
+v40[0]=0;
+v40[1]=0;
+v40[2]=v101;
+v40[3]=v102;
+v105=v2.framebufferWidth;
+v106=v2.framebufferHeight;
+v1.scissor(0,0,v105,v106);
+v38[0]=0;
+v38[1]=0;
+v38[2]=v105;
+v38[3]=v106;
+v107=v5.profile;
+if(v107){
+v108=performance.now();
+g48.count++;
+}
+v109=v9.frag;
+v110=v9.vert;
+v111=v9.program(v110,v109);
+v1.useProgram(v111.program);
+v11.setVAO(null);
+v113=v111.id;
+v114=v112[v113];
+if(v114){
+v114.call(this,a0);
+}
+else{
+v114=v112[v113]=g115(v111);
+v114.call(this,a0);
+}
+v5.dirty=true;
+v11.setVAO(null);
+v13.next=v52;
+v2.framebufferWidth=v53;
+v2.framebufferHeight=v54;
+v2.viewportWidth=v103;
+v2.viewportHeight=v104;
+if(v107){
+g48.cpuTime+=performance.now()-v108;
+}
+}
+,"scope":function(a0,a1,a2){
+var v116,v117,v118,v119,v120,v121,v122,v123,v124,v126,v128,v129,v130,v131,v132,v134,v136,v137,v138,v139,v140;
+v116=a0["framebuffer"];
+v117=v13.getFramebuffer(v116);
+v118=v13.next;
+v13.next=v117;
+v119=v2.framebufferWidth;
+v2.framebufferWidth=v117?v117.width:v2.drawingBufferWidth;
+v120=v2.framebufferHeight;
+v2.framebufferHeight=v117?v117.height:v2.drawingBufferHeight;
+v121=v2.framebufferWidth;
+v122=v2.framebufferHeight;
+v123=v2.viewportWidth;
+v2.viewportWidth=v121;
+v124=v2.viewportHeight;
+v2.viewportHeight=v122;
+v126=v39[0];
+v39[0]=g125;
+v128=v39[1];
+v39[1]=g127;
+v129=v39[2];
+v39[2]=v121;
+v130=v39[3];
+v39[3]=v122;
+v131=v2.framebufferWidth;
+v132=v2.framebufferHeight;
+v134=v37[0];
+v37[0]=g133;
+v136=v37[1];
+v37[1]=g135;
+v137=v37[2];
+v37[2]=v131;
+v138=v37[3];
+v37[3]=v132;
+v139=v5.profile;
+if(v139){
+v140=performance.now();
+g48.count++;
+}
+v5.dirty=true;
+a1(v2,a0,a2);
+v13.next=v118;
+v2.framebufferWidth=v119;
+v2.framebufferHeight=v120;
+v2.viewportWidth=v123;
+v2.viewportHeight=v124;
+v39[0]=v126;
+v39[1]=v128;
+v39[2]=v129;
+v39[3]=v130;
+v37[0]=v134;
+v37[1]=v136;
+v37[2]=v137;
+v37[3]=v138;
+if(v139){
+g48.cpuTime+=performance.now()-v140;
+}
+v5.dirty=true;
+}
+,"batch":function(a0,a1){
+var v141,v188,v189,v190,v191,v192,v194,v195;
+v141=v14.angle_instanced_arrays;
+if(v5.dirty){
+var v142,v143,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v174,v175,v176,v177,v178,v179,v180,v181,v182,v183,v184,v185,v186,v187;
+v142=v4.dither;
+if(v142!==v5.dither){
+if(v142){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v142;
+}
+v143=v4.blend_enable;
+if(v143!==v5.blend_enable){
+if(v143){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=v143;
+}
+v144=v17[0];
+v145=v17[1];
+v146=v17[2];
+v147=v17[3];
+if(v144!==v18[0]||v145!==v18[1]||v146!==v18[2]||v147!==v18[3]){
+v1.blendColor(v144,v145,v146,v147);
+v18[0]=v144;
+v18[1]=v145;
+v18[2]=v146;
+v18[3]=v147;
+}
+v148=v19[0];
+v149=v19[1];
+if(v148!==v20[0]||v149!==v20[1]){
+v1.blendEquationSeparate(v148,v149);
+v20[0]=v148;
+v20[1]=v149;
+}
+v150=v21[0];
+v151=v21[1];
+v152=v21[2];
+v153=v21[3];
+if(v150!==v22[0]||v151!==v22[1]||v152!==v22[2]||v153!==v22[3]){
+v1.blendFuncSeparate(v150,v151,v152,v153);
+v22[0]=v150;
+v22[1]=v151;
+v22[2]=v152;
+v22[3]=v153;
+}
+v154=v4.depth_enable;
+if(v154!==v5.depth_enable){
+if(v154){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v154;
+}
+v155=v4.depth_func;
+if(v155!==v5.depth_func){
+v1.depthFunc(v155);
+v5.depth_func=v155;
+}
+v156=v23[0];
+v157=v23[1];
+if(v156!==v24[0]||v157!==v24[1]){
+v1.depthRange(v156,v157);
+v24[0]=v156;
+v24[1]=v157;
+}
+v158=v4.depth_mask;
+if(v158!==v5.depth_mask){
+v1.depthMask(v158);
+v5.depth_mask=v158;
+}
+v159=v25[0];
+v160=v25[1];
+v161=v25[2];
+v162=v25[3];
+if(v159!==v26[0]||v160!==v26[1]||v161!==v26[2]||v162!==v26[3]){
+v1.colorMask(v159,v160,v161,v162);
+v26[0]=v159;
+v26[1]=v160;
+v26[2]=v161;
+v26[3]=v162;
+}
+v163=v4.cull_enable;
+if(v163!==v5.cull_enable){
+if(v163){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v163;
+}
+v164=v4.cull_face;
+if(v164!==v5.cull_face){
+v1.cullFace(v164);
+v5.cull_face=v164;
+}
+v165=v4.frontFace;
+if(v165!==v5.frontFace){
+v1.frontFace(v165);
+v5.frontFace=v165;
+}
+v166=v4.lineWidth;
+if(v166!==v5.lineWidth){
+v1.lineWidth(v166);
+v5.lineWidth=v166;
+}
+v167=v4.polygonOffset_enable;
+if(v167!==v5.polygonOffset_enable){
+if(v167){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v167;
+}
+v168=v27[0];
+v169=v27[1];
+if(v168!==v28[0]||v169!==v28[1]){
+v1.polygonOffset(v168,v169);
+v28[0]=v168;
+v28[1]=v169;
+}
+v170=v4.sample_alpha;
+if(v170!==v5.sample_alpha){
+if(v170){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v170;
+}
+v171=v4.sample_enable;
+if(v171!==v5.sample_enable){
+if(v171){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v171;
+}
+v172=v29[0];
+v173=v29[1];
+if(v172!==v30[0]||v173!==v30[1]){
+v1.sampleCoverage(v172,v173);
+v30[0]=v172;
+v30[1]=v173;
+}
+v174=v4.stencil_enable;
+if(v174!==v5.stencil_enable){
+if(v174){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=v174;
+}
+v175=v4.stencil_mask;
+if(v175!==v5.stencil_mask){
+v1.stencilMask(v175);
+v5.stencil_mask=v175;
+}
+v176=v31[0];
+v177=v31[1];
+v178=v31[2];
+if(v176!==v32[0]||v177!==v32[1]||v178!==v32[2]){
+v1.stencilFunc(v176,v177,v178);
+v32[0]=v176;
+v32[1]=v177;
+v32[2]=v178;
+}
+v179=v33[0];
+v180=v33[1];
+v181=v33[2];
+v182=v33[3];
+if(v179!==v34[0]||v180!==v34[1]||v181!==v34[2]||v182!==v34[3]){
+v1.stencilOpSeparate(v179,v180,v181,v182);
+v34[0]=v179;
+v34[1]=v180;
+v34[2]=v181;
+v34[3]=v182;
+}
+v183=v35[0];
+v184=v35[1];
+v185=v35[2];
+v186=v35[3];
+if(v183!==v36[0]||v184!==v36[1]||v185!==v36[2]||v186!==v36[3]){
+v1.stencilOpSeparate(v183,v184,v185,v186);
+v36[0]=v183;
+v36[1]=v184;
+v36[2]=v185;
+v36[3]=v186;
+}
+v187=v4.scissor_enable;
+if(v187!==v5.scissor_enable){
+if(v187){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=v187;
+}
+}
+v188=v5.profile;
+if(v188){
+v189=performance.now();
+g48.count+=a1;
+}
+v190=v9.frag;
+v191=v9.vert;
+v192=v9.program(v191,v190);
+v1.useProgram(v192.program);
+v11.setVAO(null);
+v194=v192.id;
+v195=v193[v194];
+if(v195){
+v195.call(this,a0,a1);
+}
+else{
+v195=v193[v194]=g196(v192);
+v195.call(this,a0,a1);
+}
+v5.dirty=true;
+v11.setVAO(null);
+if(v188){
+g48.cpuTime+=performance.now()-v189;
+}
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d b/src/generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d
new file mode 100644
index 00000000000..c3782048c18
--- /dev/null
+++ b/src/generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d
@@ -0,0 +1,2700 @@
+module.exports = function anonymous(g0,g48,g94,g95,g96,g97,g104,g105,g108,g124,g142,g160,g178,g182,g183,g186,g203,g221,g225,g227,g230,g232,g234,g235,g237,g239,g243,g245,g249,g250,g269,g271,g273,g275,g277,g279,g281,g283,g285,g287,g289,g291,g293,g306,g308,g312,g314,g318,g321,g324,g327,g330,g333,g336,g339,g342,g345,g348,g351,g354,g357,g360,g362,g375,g402,g429,g456,g483,g510,g537,g550,g552,g586,g587,g588,g589,g590
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v49,v50,v51,v52,v53,v54;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v49={
+}
+;
+v49.stride=4;
+v49.offset=0;
+v49.divisor=1;
+v50={
+}
+;
+v50.stride=4;
+v50.offset=4;
+v50.divisor=1;
+v51={
+}
+;
+v51.stride=8;
+v51.offset=0;
+v51.divisor=1;
+v52={
+}
+;
+v52.stride=8;
+v52.offset=8;
+v52.divisor=1;
+v53={
+}
+;
+v53.stride=8;
+v53.offset=16;
+v53.divisor=1;
+v54={
+}
+;
+v54.stride=8;
+v54.offset=24;
+v54.divisor=1;
+return {
+"draw":function(a0){
+var v55,v56,v87,v88,v89,v90,v91,v92,v93,v98,v99,v100,v101,v102,v103,v106,v107,v109,v110,v111,v112,v113,v114,v115,v116,v117,v118,v119,v120,v121,v122,v123,v125,v126,v127,v128,v129,v130,v131,v132,v133,v134,v135,v136,v137,v138,v139,v140,v141,v143,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v159,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v174,v175,v176,v177,v179,v180,v181,v184,v185,v187,v188,v189,v190,v191,v192,v193,v194,v195,v196,v197,v198,v199,v200,v201,v202,v204,v205,v206,v207,v208,v209,v210,v211,v212,v213,v214,v215,v216,v217,v218,v219,v220,v222,v223,v224,v226,v228,v229,v231,v233,v236,v238,v240,v241,v242,v244,v246,v247,v248,v251,v252,v253,v254,v255,v256,v257;
+v55=v14.angle_instanced_arrays;
+v56=v13.next;
+if(v56!==v13.cur){
+if(v56){
+v1.bindFramebuffer(36160,v56.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v56;
+}
+if(v5.dirty){
+var v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86;
+v57=v4.dither;
+if(v57!==v5.dither){
+if(v57){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v57;
+}
+v58=v4.depth_func;
+if(v58!==v5.depth_func){
+v1.depthFunc(v58);
+v5.depth_func=v58;
+}
+v59=v23[0];
+v60=v23[1];
+if(v59!==v24[0]||v60!==v24[1]){
+v1.depthRange(v59,v60);
+v24[0]=v59;
+v24[1]=v60;
+}
+v61=v4.depth_mask;
+if(v61!==v5.depth_mask){
+v1.depthMask(v61);
+v5.depth_mask=v61;
+}
+v62=v25[0];
+v63=v25[1];
+v64=v25[2];
+v65=v25[3];
+if(v62!==v26[0]||v63!==v26[1]||v64!==v26[2]||v65!==v26[3]){
+v1.colorMask(v62,v63,v64,v65);
+v26[0]=v62;
+v26[1]=v63;
+v26[2]=v64;
+v26[3]=v65;
+}
+v66=v4.frontFace;
+if(v66!==v5.frontFace){
+v1.frontFace(v66);
+v5.frontFace=v66;
+}
+v67=v4.lineWidth;
+if(v67!==v5.lineWidth){
+v1.lineWidth(v67);
+v5.lineWidth=v67;
+}
+v68=v4.polygonOffset_enable;
+if(v68!==v5.polygonOffset_enable){
+if(v68){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v68;
+}
+v69=v27[0];
+v70=v27[1];
+if(v69!==v28[0]||v70!==v28[1]){
+v1.polygonOffset(v69,v70);
+v28[0]=v69;
+v28[1]=v70;
+}
+v71=v4.sample_alpha;
+if(v71!==v5.sample_alpha){
+if(v71){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v71;
+}
+v72=v4.sample_enable;
+if(v72!==v5.sample_enable){
+if(v72){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v72;
+}
+v73=v29[0];
+v74=v29[1];
+if(v73!==v30[0]||v74!==v30[1]){
+v1.sampleCoverage(v73,v74);
+v30[0]=v73;
+v30[1]=v74;
+}
+v75=v4.stencil_mask;
+if(v75!==v5.stencil_mask){
+v1.stencilMask(v75);
+v5.stencil_mask=v75;
+}
+v76=v31[0];
+v77=v31[1];
+v78=v31[2];
+if(v76!==v32[0]||v77!==v32[1]||v78!==v32[2]){
+v1.stencilFunc(v76,v77,v78);
+v32[0]=v76;
+v32[1]=v77;
+v32[2]=v78;
+}
+v79=v33[0];
+v80=v33[1];
+v81=v33[2];
+v82=v33[3];
+if(v79!==v34[0]||v80!==v34[1]||v81!==v34[2]||v82!==v34[3]){
+v1.stencilOpSeparate(v79,v80,v81,v82);
+v34[0]=v79;
+v34[1]=v80;
+v34[2]=v81;
+v34[3]=v82;
+}
+v83=v35[0];
+v84=v35[1];
+v85=v35[2];
+v86=v35[3];
+if(v83!==v36[0]||v84!==v36[1]||v85!==v36[2]||v86!==v36[3]){
+v1.stencilOpSeparate(v83,v84,v85,v86);
+v36[0]=v83;
+v36[1]=v84;
+v36[2]=v85;
+v36[3]=v86;
+}
+}
+v87=a0["viewport"];
+v88=v87.x|0;
+v89=v87.y|0;
+v90="width" in v87?v87.width|0:(v2.framebufferWidth-v88);
+v91="height" in v87?v87.height|0:(v2.framebufferHeight-v89);
+v92=v2.viewportWidth;
+v2.viewportWidth=v90;
+v93=v2.viewportHeight;
+v2.viewportHeight=v91;
+v1.viewport(v88,v89,v90,v91);
+v40[0]=v88;
+v40[1]=v89;
+v40[2]=v90;
+v40[3]=v91;
+v1.blendColor(0,0,0,0);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=0;
+if(g94){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g94;
+v1.blendEquationSeparate(32774,32774);
+v20[0]=32774;
+v20[1]=32774;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g95){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=g95;
+v1.cullFace(g96);
+v5.cull_face=g96;
+v98=g97.call(this,v2,a0,0);
+if(v98){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v98;
+v99=a0["viewport"];
+v100=v99.x|0;
+v101=v99.y|0;
+v102="width" in v99?v99.width|0:(v2.framebufferWidth-v100);
+v103="height" in v99?v99.height|0:(v2.framebufferHeight-v101);
+v1.scissor(v100,v101,v102,v103);
+v38[0]=v100;
+v38[1]=v101;
+v38[2]=v102;
+v38[3]=v103;
+if(g104){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g104;
+if(g105){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g105;
+v106=v5.profile;
+if(v106){
+v107=performance.now();
+g48.count++;
+}
+v1.useProgram(g108.program);
+v109=v14.angle_instanced_arrays;
+v11.setVAO(null);
+v110=a0["colorBuffer"];
+v49.buffer=v110;
+v111=false;
+v112=1;
+v113=0;
+v114=0;
+v115=0;
+v116=0;
+v117=null;
+v118=0;
+v119=false;
+v120=5126;
+v121=0;
+v122=0;
+v123=0;
+if(v16(v49)){
+v111=true;
+v117=v8.createStream(34962,v49);
+v120=v117.dtype;
+}
+else{
+v117=v8.getBuffer(v49);
+if(v117){
+v120=v117.dtype;
+}
+else if("constant" in v49){
+v112=2;
+if(typeof v49.constant === "number"){
+v113=v49.constant;
+v114=v115=v116=0;
+}
+else{
+v113=v49.constant.length>0?v49.constant[0]:0;
+v114=v49.constant.length>1?v49.constant[1]:0;
+v115=v49.constant.length>2?v49.constant[2]:0;
+v116=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v117=v8.createStream(34962,v49.buffer);
+}
+else{
+v117=v8.getBuffer(v49.buffer);
+}
+v120="type" in v49?v46[v49.type]:v117.dtype;
+v119=!!v49.normalized;
+v118=v49.size|0;
+v121=v49.offset|0;
+v122=v49.stride|0;
+v123=v49.divisor|0;
+}
+}
+v125=g124.location;
+v126=v10[v125];
+if(v112===1){
+if(!v126.buffer){
+v1.enableVertexAttribArray(v125);
+}
+v127=v118||4;
+if(v126.type!==v120||v126.size!==v127||v126.buffer!==v117||v126.normalized!==v119||v126.offset!==v121||v126.stride!==v122){
+v1.bindBuffer(34962,v117.buffer);
+v1.vertexAttribPointer(v125,v127,v120,v119,v122,v121);
+v126.type=v120;
+v126.size=v127;
+v126.buffer=v117;
+v126.normalized=v119;
+v126.offset=v121;
+v126.stride=v122;
+}
+if(v126.divisor!==v123){
+v109.vertexAttribDivisorANGLE(v125,v123);
+v126.divisor=v123;
+}
+}
+else{
+if(v126.buffer){
+v1.disableVertexAttribArray(v125);
+v126.buffer=null;
+}
+if(v126.x!==v113||v126.y!==v114||v126.z!==v115||v126.w!==v116){
+v1.vertexAttrib4f(v125,v113,v114,v115,v116);
+v126.x=v113;
+v126.y=v114;
+v126.z=v115;
+v126.w=v116;
+}
+}
+v128=a0["positionBuffer"];
+v52.buffer=v128;
+v129=false;
+v130=1;
+v131=0;
+v132=0;
+v133=0;
+v134=0;
+v135=null;
+v136=0;
+v137=false;
+v138=5126;
+v139=0;
+v140=0;
+v141=0;
+if(v16(v52)){
+v129=true;
+v135=v8.createStream(34962,v52);
+v138=v135.dtype;
+}
+else{
+v135=v8.getBuffer(v52);
+if(v135){
+v138=v135.dtype;
+}
+else if("constant" in v52){
+v130=2;
+if(typeof v52.constant === "number"){
+v131=v52.constant;
+v132=v133=v134=0;
+}
+else{
+v131=v52.constant.length>0?v52.constant[0]:0;
+v132=v52.constant.length>1?v52.constant[1]:0;
+v133=v52.constant.length>2?v52.constant[2]:0;
+v134=v52.constant.length>3?v52.constant[3]:0;
+}
+}
+else{
+if(v16(v52.buffer)){
+v135=v8.createStream(34962,v52.buffer);
+}
+else{
+v135=v8.getBuffer(v52.buffer);
+}
+v138="type" in v52?v46[v52.type]:v135.dtype;
+v137=!!v52.normalized;
+v136=v52.size|0;
+v139=v52.offset|0;
+v140=v52.stride|0;
+v141=v52.divisor|0;
+}
+}
+v143=g142.location;
+v144=v10[v143];
+if(v130===1){
+if(!v144.buffer){
+v1.enableVertexAttribArray(v143);
+}
+v145=v136||2;
+if(v144.type!==v138||v144.size!==v145||v144.buffer!==v135||v144.normalized!==v137||v144.offset!==v139||v144.stride!==v140){
+v1.bindBuffer(34962,v135.buffer);
+v1.vertexAttribPointer(v143,v145,v138,v137,v140,v139);
+v144.type=v138;
+v144.size=v145;
+v144.buffer=v135;
+v144.normalized=v137;
+v144.offset=v139;
+v144.stride=v140;
+}
+if(v144.divisor!==v141){
+v109.vertexAttribDivisorANGLE(v143,v141);
+v144.divisor=v141;
+}
+}
+else{
+if(v144.buffer){
+v1.disableVertexAttribArray(v143);
+v144.buffer=null;
+}
+if(v144.x!==v131||v144.y!==v132||v144.z!==v133||v144.w!==v134){
+v1.vertexAttrib4f(v143,v131,v132,v133,v134);
+v144.x=v131;
+v144.y=v132;
+v144.z=v133;
+v144.w=v134;
+}
+}
+v146=a0["colorBuffer"];
+v50.buffer=v146;
+v147=false;
+v148=1;
+v149=0;
+v150=0;
+v151=0;
+v152=0;
+v153=null;
+v154=0;
+v155=false;
+v156=5126;
+v157=0;
+v158=0;
+v159=0;
+if(v16(v50)){
+v147=true;
+v153=v8.createStream(34962,v50);
+v156=v153.dtype;
+}
+else{
+v153=v8.getBuffer(v50);
+if(v153){
+v156=v153.dtype;
+}
+else if("constant" in v50){
+v148=2;
+if(typeof v50.constant === "number"){
+v149=v50.constant;
+v150=v151=v152=0;
+}
+else{
+v149=v50.constant.length>0?v50.constant[0]:0;
+v150=v50.constant.length>1?v50.constant[1]:0;
+v151=v50.constant.length>2?v50.constant[2]:0;
+v152=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v153=v8.createStream(34962,v50.buffer);
+}
+else{
+v153=v8.getBuffer(v50.buffer);
+}
+v156="type" in v50?v46[v50.type]:v153.dtype;
+v155=!!v50.normalized;
+v154=v50.size|0;
+v157=v50.offset|0;
+v158=v50.stride|0;
+v159=v50.divisor|0;
+}
+}
+v161=g160.location;
+v162=v10[v161];
+if(v148===1){
+if(!v162.buffer){
+v1.enableVertexAttribArray(v161);
+}
+v163=v154||4;
+if(v162.type!==v156||v162.size!==v163||v162.buffer!==v153||v162.normalized!==v155||v162.offset!==v157||v162.stride!==v158){
+v1.bindBuffer(34962,v153.buffer);
+v1.vertexAttribPointer(v161,v163,v156,v155,v158,v157);
+v162.type=v156;
+v162.size=v163;
+v162.buffer=v153;
+v162.normalized=v155;
+v162.offset=v157;
+v162.stride=v158;
+}
+if(v162.divisor!==v159){
+v109.vertexAttribDivisorANGLE(v161,v159);
+v162.divisor=v159;
+}
+}
+else{
+if(v162.buffer){
+v1.disableVertexAttribArray(v161);
+v162.buffer=null;
+}
+if(v162.x!==v149||v162.y!==v150||v162.z!==v151||v162.w!==v152){
+v1.vertexAttrib4f(v161,v149,v150,v151,v152);
+v162.x=v149;
+v162.y=v150;
+v162.z=v151;
+v162.w=v152;
+}
+}
+v164=a0["positionBuffer"];
+v53.buffer=v164;
+v165=false;
+v166=1;
+v167=0;
+v168=0;
+v169=0;
+v170=0;
+v171=null;
+v172=0;
+v173=false;
+v174=5126;
+v175=0;
+v176=0;
+v177=0;
+if(v16(v53)){
+v165=true;
+v171=v8.createStream(34962,v53);
+v174=v171.dtype;
+}
+else{
+v171=v8.getBuffer(v53);
+if(v171){
+v174=v171.dtype;
+}
+else if("constant" in v53){
+v166=2;
+if(typeof v53.constant === "number"){
+v167=v53.constant;
+v168=v169=v170=0;
+}
+else{
+v167=v53.constant.length>0?v53.constant[0]:0;
+v168=v53.constant.length>1?v53.constant[1]:0;
+v169=v53.constant.length>2?v53.constant[2]:0;
+v170=v53.constant.length>3?v53.constant[3]:0;
+}
+}
+else{
+if(v16(v53.buffer)){
+v171=v8.createStream(34962,v53.buffer);
+}
+else{
+v171=v8.getBuffer(v53.buffer);
+}
+v174="type" in v53?v46[v53.type]:v171.dtype;
+v173=!!v53.normalized;
+v172=v53.size|0;
+v175=v53.offset|0;
+v176=v53.stride|0;
+v177=v53.divisor|0;
+}
+}
+v179=g178.location;
+v180=v10[v179];
+if(v166===1){
+if(!v180.buffer){
+v1.enableVertexAttribArray(v179);
+}
+v181=v172||2;
+if(v180.type!==v174||v180.size!==v181||v180.buffer!==v171||v180.normalized!==v173||v180.offset!==v175||v180.stride!==v176){
+v1.bindBuffer(34962,v171.buffer);
+v1.vertexAttribPointer(v179,v181,v174,v173,v176,v175);
+v180.type=v174;
+v180.size=v181;
+v180.buffer=v171;
+v180.normalized=v173;
+v180.offset=v175;
+v180.stride=v176;
+}
+if(v180.divisor!==v177){
+v109.vertexAttribDivisorANGLE(v179,v177);
+v180.divisor=v177;
+}
+}
+else{
+if(v180.buffer){
+v1.disableVertexAttribArray(v179);
+v180.buffer=null;
+}
+if(v180.x!==v167||v180.y!==v168||v180.z!==v169||v180.w!==v170){
+v1.vertexAttrib4f(v179,v167,v168,v169,v170);
+v180.x=v167;
+v180.y=v168;
+v180.z=v169;
+v180.w=v170;
+}
+}
+v184=g183.location;
+v185=v10[v184];
+if(!v185.buffer){
+v1.enableVertexAttribArray(v184);
+}
+if(v185.type!==5126||v185.size!==1||v185.buffer!==g182||v185.normalized!==false||v185.offset!==0||v185.stride!==8){
+v1.bindBuffer(34962,g182.buffer);
+v1.vertexAttribPointer(v184,1,5126,false,8,0);
+v185.type=5126;
+v185.size=1;
+v185.buffer=g182;
+v185.normalized=false;
+v185.offset=0;
+v185.stride=8;
+}
+if(v185.divisor!==0){
+v109.vertexAttribDivisorANGLE(v184,0);
+v185.divisor=0;
+}
+v187=g186.location;
+v188=v10[v187];
+if(!v188.buffer){
+v1.enableVertexAttribArray(v187);
+}
+if(v188.type!==5126||v188.size!==1||v188.buffer!==g182||v188.normalized!==false||v188.offset!==4||v188.stride!==8){
+v1.bindBuffer(34962,g182.buffer);
+v1.vertexAttribPointer(v187,1,5126,false,8,4);
+v188.type=5126;
+v188.size=1;
+v188.buffer=g182;
+v188.normalized=false;
+v188.offset=4;
+v188.stride=8;
+}
+if(v188.divisor!==0){
+v109.vertexAttribDivisorANGLE(v187,0);
+v188.divisor=0;
+}
+v189=a0["positionBuffer"];
+v54.buffer=v189;
+v190=false;
+v191=1;
+v192=0;
+v193=0;
+v194=0;
+v195=0;
+v196=null;
+v197=0;
+v198=false;
+v199=5126;
+v200=0;
+v201=0;
+v202=0;
+if(v16(v54)){
+v190=true;
+v196=v8.createStream(34962,v54);
+v199=v196.dtype;
+}
+else{
+v196=v8.getBuffer(v54);
+if(v196){
+v199=v196.dtype;
+}
+else if("constant" in v54){
+v191=2;
+if(typeof v54.constant === "number"){
+v192=v54.constant;
+v193=v194=v195=0;
+}
+else{
+v192=v54.constant.length>0?v54.constant[0]:0;
+v193=v54.constant.length>1?v54.constant[1]:0;
+v194=v54.constant.length>2?v54.constant[2]:0;
+v195=v54.constant.length>3?v54.constant[3]:0;
+}
+}
+else{
+if(v16(v54.buffer)){
+v196=v8.createStream(34962,v54.buffer);
+}
+else{
+v196=v8.getBuffer(v54.buffer);
+}
+v199="type" in v54?v46[v54.type]:v196.dtype;
+v198=!!v54.normalized;
+v197=v54.size|0;
+v200=v54.offset|0;
+v201=v54.stride|0;
+v202=v54.divisor|0;
+}
+}
+v204=g203.location;
+v205=v10[v204];
+if(v191===1){
+if(!v205.buffer){
+v1.enableVertexAttribArray(v204);
+}
+v206=v197||2;
+if(v205.type!==v199||v205.size!==v206||v205.buffer!==v196||v205.normalized!==v198||v205.offset!==v200||v205.stride!==v201){
+v1.bindBuffer(34962,v196.buffer);
+v1.vertexAttribPointer(v204,v206,v199,v198,v201,v200);
+v205.type=v199;
+v205.size=v206;
+v205.buffer=v196;
+v205.normalized=v198;
+v205.offset=v200;
+v205.stride=v201;
+}
+if(v205.divisor!==v202){
+v109.vertexAttribDivisorANGLE(v204,v202);
+v205.divisor=v202;
+}
+}
+else{
+if(v205.buffer){
+v1.disableVertexAttribArray(v204);
+v205.buffer=null;
+}
+if(v205.x!==v192||v205.y!==v193||v205.z!==v194||v205.w!==v195){
+v1.vertexAttrib4f(v204,v192,v193,v194,v195);
+v205.x=v192;
+v205.y=v193;
+v205.z=v194;
+v205.w=v195;
+}
+}
+v207=a0["positionBuffer"];
+v51.buffer=v207;
+v208=false;
+v209=1;
+v210=0;
+v211=0;
+v212=0;
+v213=0;
+v214=null;
+v215=0;
+v216=false;
+v217=5126;
+v218=0;
+v219=0;
+v220=0;
+if(v16(v51)){
+v208=true;
+v214=v8.createStream(34962,v51);
+v217=v214.dtype;
+}
+else{
+v214=v8.getBuffer(v51);
+if(v214){
+v217=v214.dtype;
+}
+else if("constant" in v51){
+v209=2;
+if(typeof v51.constant === "number"){
+v210=v51.constant;
+v211=v212=v213=0;
+}
+else{
+v210=v51.constant.length>0?v51.constant[0]:0;
+v211=v51.constant.length>1?v51.constant[1]:0;
+v212=v51.constant.length>2?v51.constant[2]:0;
+v213=v51.constant.length>3?v51.constant[3]:0;
+}
+}
+else{
+if(v16(v51.buffer)){
+v214=v8.createStream(34962,v51.buffer);
+}
+else{
+v214=v8.getBuffer(v51.buffer);
+}
+v217="type" in v51?v46[v51.type]:v214.dtype;
+v216=!!v51.normalized;
+v215=v51.size|0;
+v218=v51.offset|0;
+v219=v51.stride|0;
+v220=v51.divisor|0;
+}
+}
+v222=g221.location;
+v223=v10[v222];
+if(v209===1){
+if(!v223.buffer){
+v1.enableVertexAttribArray(v222);
+}
+v224=v215||2;
+if(v223.type!==v217||v223.size!==v224||v223.buffer!==v214||v223.normalized!==v216||v223.offset!==v218||v223.stride!==v219){
+v1.bindBuffer(34962,v214.buffer);
+v1.vertexAttribPointer(v222,v224,v217,v216,v219,v218);
+v223.type=v217;
+v223.size=v224;
+v223.buffer=v214;
+v223.normalized=v216;
+v223.offset=v218;
+v223.stride=v219;
+}
+if(v223.divisor!==v220){
+v109.vertexAttribDivisorANGLE(v222,v220);
+v223.divisor=v220;
+}
+}
+else{
+if(v223.buffer){
+v1.disableVertexAttribArray(v222);
+v223.buffer=null;
+}
+if(v223.x!==v210||v223.y!==v211||v223.z!==v212||v223.w!==v213){
+v1.vertexAttrib4f(v222,v210,v211,v212,v213);
+v223.x=v210;
+v223.y=v211;
+v223.z=v212;
+v223.w=v213;
+}
+}
+v226=a0["dashLength"];
+v1.uniform1f(g225.location,v226);
+v228=a0["dashTexture"];
+if(v228&&v228._reglType==="framebuffer"){
+v228=v228.color[0];
+}
+v229=v228._texture;
+v1.uniform1i(g227.location,v229.bind());
+v231=a0["depth"];
+v1.uniform1f(g230.location,v231);
+v233=a0["miterLimit"];
+v1.uniform1f(g232.location,v233);
+v236=g235.call(this,v2,a0,0);
+v1.uniform1f(g234.location,v236);
+v238=a0["opacity"];
+v1.uniform1f(g237.location,v238);
+v240=a0["scale"];
+v241=v240[0];
+v242=v240[1];
+v1.uniform2f(g239.location,v241,v242);
+v244=a0["thickness"];
+v1.uniform1f(g243.location,v244);
+v246=a0["translate"];
+v247=v246[0];
+v248=v246[1];
+v1.uniform2f(g245.location,v247,v248);
+v251=g250.call(this,v2,a0,0);
+v252=v251[0];
+v253=v251[1];
+v254=v251[2];
+v255=v251[3];
+v1.uniform4f(g249.location,v252,v253,v254,v255);
+v256=v6.elements;
+if(v256){
+v1.bindBuffer(34963,v256.buffer.buffer);
+}
+else if(v11.currentVAO){
+v256=v7.getElements(v11.currentVAO.elements);
+if(v256)v1.bindBuffer(34963,v256.buffer.buffer);
+}
+v257=a0["count"];
+if(v257>0){
+if(v256){
+v109.drawElementsInstancedANGLE(5,4,v256.type,0<<((v256.type-5121)>>1),v257);
+}
+else{
+v109.drawArraysInstancedANGLE(5,0,4,v257);
+}
+}
+else if(v257<0){
+if(v256){
+v1.drawElements(5,4,v256.type,0<<((v256.type-5121)>>1));
+}
+else{
+v1.drawArrays(5,0,4);
+}
+}
+v5.dirty=true;
+v11.setVAO(null);
+v2.viewportWidth=v92;
+v2.viewportHeight=v93;
+if(v106){
+g48.cpuTime+=performance.now()-v107;
+}
+if(v111){
+v8.destroyStream(v117);
+}
+if(v129){
+v8.destroyStream(v135);
+}
+if(v147){
+v8.destroyStream(v153);
+}
+if(v165){
+v8.destroyStream(v171);
+}
+if(v190){
+v8.destroyStream(v196);
+}
+if(v208){
+v8.destroyStream(v214);
+}
+v229.unbind();
+}
+,"scope":function(a0,a1,a2){
+var v258,v259,v260,v261,v262,v263,v264,v265,v266,v267,v268,v270,v272,v274,v276,v278,v280,v282,v284,v286,v288,v290,v292,v294,v295,v296,v297,v298,v299,v300,v301,v302,v303,v304,v305,v307,v309,v310,v311,v313,v315,v316,v317,v319,v320,v322,v323,v325,v326,v328,v329,v331,v332,v334,v335,v337,v338,v340,v341,v343,v344,v346,v347,v349,v350,v352,v353,v355,v356,v358,v359,v361,v363,v364,v365,v366,v367,v368,v369,v370,v371,v372,v373,v374,v376,v377,v378,v379,v380,v381,v382,v383,v384,v385,v386,v387,v388,v389,v390,v391,v392,v393,v394,v395,v396,v397,v398,v399,v400,v401,v403,v404,v405,v406,v407,v408,v409,v410,v411,v412,v413,v414,v415,v416,v417,v418,v419,v420,v421,v422,v423,v424,v425,v426,v427,v428,v430,v431,v432,v433,v434,v435,v436,v437,v438,v439,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v452,v453,v454,v455,v457,v458,v459,v460,v461,v462,v463,v464,v465,v466,v467,v468,v469,v470,v471,v472,v473,v474,v475,v476,v477,v478,v479,v480,v481,v482,v484,v485,v486,v487,v488,v489,v490,v491,v492,v493,v494,v495,v496,v497,v498,v499,v500,v501,v502,v503,v504,v505,v506,v507,v508,v509,v511,v512,v513,v514,v515,v516,v517,v518,v519,v520,v521,v522,v523,v524,v525,v526,v527,v528,v529,v530,v531,v532,v533,v534,v535,v536,v538,v539,v540,v541,v542,v543,v544,v545,v546,v547,v548,v549,v551,v553;
+v258=a0["viewport"];
+v259=v258.x|0;
+v260=v258.y|0;
+v261="width" in v258?v258.width|0:(v2.framebufferWidth-v259);
+v262="height" in v258?v258.height|0:(v2.framebufferHeight-v260);
+v263=v2.viewportWidth;
+v2.viewportWidth=v261;
+v264=v2.viewportHeight;
+v2.viewportHeight=v262;
+v265=v39[0];
+v39[0]=v259;
+v266=v39[1];
+v39[1]=v260;
+v267=v39[2];
+v39[2]=v261;
+v268=v39[3];
+v39[3]=v262;
+v270=v17[0];
+v17[0]=g269;
+v272=v17[1];
+v17[1]=g271;
+v274=v17[2];
+v17[2]=g273;
+v276=v17[3];
+v17[3]=g275;
+v278=v4.blend_enable;
+v4.blend_enable=g277;
+v280=v19[0];
+v19[0]=g279;
+v282=v19[1];
+v19[1]=g281;
+v284=v21[0];
+v21[0]=g283;
+v286=v21[1];
+v21[1]=g285;
+v288=v21[2];
+v21[2]=g287;
+v290=v21[3];
+v21[3]=g289;
+v292=v4.cull_enable;
+v4.cull_enable=g291;
+v294=v4.cull_face;
+v4.cull_face=g293;
+v295=g97.call(this,v2,a0,a2);
+v296=v4.depth_enable;
+v4.depth_enable=v295;
+v297=a0["viewport"];
+v298=v297.x|0;
+v299=v297.y|0;
+v300="width" in v297?v297.width|0:(v2.framebufferWidth-v298);
+v301="height" in v297?v297.height|0:(v2.framebufferHeight-v299);
+v302=v37[0];
+v37[0]=v298;
+v303=v37[1];
+v37[1]=v299;
+v304=v37[2];
+v37[2]=v300;
+v305=v37[3];
+v37[3]=v301;
+v307=v4.scissor_enable;
+v4.scissor_enable=g306;
+v309=v4.stencil_enable;
+v4.stencil_enable=g308;
+v310=v5.profile;
+if(v310){
+v311=performance.now();
+g48.count++;
+}
+v313=v6.offset;
+v6.offset=g312;
+v315=v6.count;
+v6.count=g314;
+v316=a0["count"];
+v317=v6.instances;
+v6.instances=v316;
+v319=v6.primitive;
+v6.primitive=g318;
+v320=g235.call(this,v2,a0,a2);
+v322=v12[g321];
+v12[g321]=v320;
+v323=a0["miterLimit"];
+v325=v12[g324];
+v12[g324]=v323;
+v326=a0["scale"];
+v328=v12[g327];
+v12[g327]=v326;
+v329=a0["scaleFract"];
+v331=v12[g330];
+v12[g330]=v329;
+v332=a0["translateFract"];
+v334=v12[g333];
+v12[g333]=v332;
+v335=a0["translate"];
+v337=v12[g336];
+v12[g336]=v335;
+v338=a0["thickness"];
+v340=v12[g339];
+v12[g339]=v338;
+v341=a0["dashTexture"];
+v343=v12[g342];
+v12[g342]=v341;
+v344=a0["opacity"];
+v346=v12[g345];
+v12[g345]=v344;
+v347=v2["pixelRatio"];
+v349=v12[g348];
+v12[g348]=v347;
+v350=a0["id"];
+v352=v12[g351];
+v12[g351]=v350;
+v353=a0["dashLength"];
+v355=v12[g354];
+v12[g354]=v353;
+v356=g250.call(this,v2,a0,a2);
+v358=v12[g357];
+v12[g357]=v356;
+v359=a0["depth"];
+v361=v12[g360];
+v12[g360]=v359;
+v363=g362.state;
+g362.state=1;
+v364=g362.x;
+g362.x=0;
+v365=g362.y;
+g362.y=0;
+v366=g362.z;
+g362.z=0;
+v367=g362.w;
+g362.w=0;
+v368=g362.buffer;
+g362.buffer=g182;
+v369=g362.size;
+g362.size=0;
+v370=g362.normalized;
+g362.normalized=false;
+v371=g362.type;
+g362.type=5126;
+v372=g362.offset;
+g362.offset=0;
+v373=g362.stride;
+g362.stride=8;
+v374=g362.divisor;
+g362.divisor=0;
+v376=g375.state;
+g375.state=1;
+v377=g375.x;
+g375.x=0;
+v378=g375.y;
+g375.y=0;
+v379=g375.z;
+g375.z=0;
+v380=g375.w;
+g375.w=0;
+v381=g375.buffer;
+g375.buffer=g182;
+v382=g375.size;
+g375.size=0;
+v383=g375.normalized;
+g375.normalized=false;
+v384=g375.type;
+g375.type=5126;
+v385=g375.offset;
+g375.offset=4;
+v386=g375.stride;
+g375.stride=8;
+v387=g375.divisor;
+g375.divisor=0;
+v388=a0["colorBuffer"];
+v49.buffer=v388;
+v389=false;
+v390=1;
+v391=0;
+v392=0;
+v393=0;
+v394=0;
+v395=null;
+v396=0;
+v397=false;
+v398=5126;
+v399=0;
+v400=0;
+v401=0;
+if(v16(v49)){
+v389=true;
+v395=v8.createStream(34962,v49);
+v398=v395.dtype;
+}
+else{
+v395=v8.getBuffer(v49);
+if(v395){
+v398=v395.dtype;
+}
+else if("constant" in v49){
+v390=2;
+if(typeof v49.constant === "number"){
+v391=v49.constant;
+v392=v393=v394=0;
+}
+else{
+v391=v49.constant.length>0?v49.constant[0]:0;
+v392=v49.constant.length>1?v49.constant[1]:0;
+v393=v49.constant.length>2?v49.constant[2]:0;
+v394=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v395=v8.createStream(34962,v49.buffer);
+}
+else{
+v395=v8.getBuffer(v49.buffer);
+}
+v398="type" in v49?v46[v49.type]:v395.dtype;
+v397=!!v49.normalized;
+v396=v49.size|0;
+v399=v49.offset|0;
+v400=v49.stride|0;
+v401=v49.divisor|0;
+}
+}
+v403=g402.state;
+g402.state=v390;
+v404=g402.x;
+g402.x=v391;
+v405=g402.y;
+g402.y=v392;
+v406=g402.z;
+g402.z=v393;
+v407=g402.w;
+g402.w=v394;
+v408=g402.buffer;
+g402.buffer=v395;
+v409=g402.size;
+g402.size=v396;
+v410=g402.normalized;
+g402.normalized=v397;
+v411=g402.type;
+g402.type=v398;
+v412=g402.offset;
+g402.offset=v399;
+v413=g402.stride;
+g402.stride=v400;
+v414=g402.divisor;
+g402.divisor=v401;
+v415=a0["colorBuffer"];
+v50.buffer=v415;
+v416=false;
+v417=1;
+v418=0;
+v419=0;
+v420=0;
+v421=0;
+v422=null;
+v423=0;
+v424=false;
+v425=5126;
+v426=0;
+v427=0;
+v428=0;
+if(v16(v50)){
+v416=true;
+v422=v8.createStream(34962,v50);
+v425=v422.dtype;
+}
+else{
+v422=v8.getBuffer(v50);
+if(v422){
+v425=v422.dtype;
+}
+else if("constant" in v50){
+v417=2;
+if(typeof v50.constant === "number"){
+v418=v50.constant;
+v419=v420=v421=0;
+}
+else{
+v418=v50.constant.length>0?v50.constant[0]:0;
+v419=v50.constant.length>1?v50.constant[1]:0;
+v420=v50.constant.length>2?v50.constant[2]:0;
+v421=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v422=v8.createStream(34962,v50.buffer);
+}
+else{
+v422=v8.getBuffer(v50.buffer);
+}
+v425="type" in v50?v46[v50.type]:v422.dtype;
+v424=!!v50.normalized;
+v423=v50.size|0;
+v426=v50.offset|0;
+v427=v50.stride|0;
+v428=v50.divisor|0;
+}
+}
+v430=g429.state;
+g429.state=v417;
+v431=g429.x;
+g429.x=v418;
+v432=g429.y;
+g429.y=v419;
+v433=g429.z;
+g429.z=v420;
+v434=g429.w;
+g429.w=v421;
+v435=g429.buffer;
+g429.buffer=v422;
+v436=g429.size;
+g429.size=v423;
+v437=g429.normalized;
+g429.normalized=v424;
+v438=g429.type;
+g429.type=v425;
+v439=g429.offset;
+g429.offset=v426;
+v440=g429.stride;
+g429.stride=v427;
+v441=g429.divisor;
+g429.divisor=v428;
+v442=a0["positionBuffer"];
+v51.buffer=v442;
+v443=false;
+v444=1;
+v445=0;
+v446=0;
+v447=0;
+v448=0;
+v449=null;
+v450=0;
+v451=false;
+v452=5126;
+v453=0;
+v454=0;
+v455=0;
+if(v16(v51)){
+v443=true;
+v449=v8.createStream(34962,v51);
+v452=v449.dtype;
+}
+else{
+v449=v8.getBuffer(v51);
+if(v449){
+v452=v449.dtype;
+}
+else if("constant" in v51){
+v444=2;
+if(typeof v51.constant === "number"){
+v445=v51.constant;
+v446=v447=v448=0;
+}
+else{
+v445=v51.constant.length>0?v51.constant[0]:0;
+v446=v51.constant.length>1?v51.constant[1]:0;
+v447=v51.constant.length>2?v51.constant[2]:0;
+v448=v51.constant.length>3?v51.constant[3]:0;
+}
+}
+else{
+if(v16(v51.buffer)){
+v449=v8.createStream(34962,v51.buffer);
+}
+else{
+v449=v8.getBuffer(v51.buffer);
+}
+v452="type" in v51?v46[v51.type]:v449.dtype;
+v451=!!v51.normalized;
+v450=v51.size|0;
+v453=v51.offset|0;
+v454=v51.stride|0;
+v455=v51.divisor|0;
+}
+}
+v457=g456.state;
+g456.state=v444;
+v458=g456.x;
+g456.x=v445;
+v459=g456.y;
+g456.y=v446;
+v460=g456.z;
+g456.z=v447;
+v461=g456.w;
+g456.w=v448;
+v462=g456.buffer;
+g456.buffer=v449;
+v463=g456.size;
+g456.size=v450;
+v464=g456.normalized;
+g456.normalized=v451;
+v465=g456.type;
+g456.type=v452;
+v466=g456.offset;
+g456.offset=v453;
+v467=g456.stride;
+g456.stride=v454;
+v468=g456.divisor;
+g456.divisor=v455;
+v469=a0["positionBuffer"];
+v52.buffer=v469;
+v470=false;
+v471=1;
+v472=0;
+v473=0;
+v474=0;
+v475=0;
+v476=null;
+v477=0;
+v478=false;
+v479=5126;
+v480=0;
+v481=0;
+v482=0;
+if(v16(v52)){
+v470=true;
+v476=v8.createStream(34962,v52);
+v479=v476.dtype;
+}
+else{
+v476=v8.getBuffer(v52);
+if(v476){
+v479=v476.dtype;
+}
+else if("constant" in v52){
+v471=2;
+if(typeof v52.constant === "number"){
+v472=v52.constant;
+v473=v474=v475=0;
+}
+else{
+v472=v52.constant.length>0?v52.constant[0]:0;
+v473=v52.constant.length>1?v52.constant[1]:0;
+v474=v52.constant.length>2?v52.constant[2]:0;
+v475=v52.constant.length>3?v52.constant[3]:0;
+}
+}
+else{
+if(v16(v52.buffer)){
+v476=v8.createStream(34962,v52.buffer);
+}
+else{
+v476=v8.getBuffer(v52.buffer);
+}
+v479="type" in v52?v46[v52.type]:v476.dtype;
+v478=!!v52.normalized;
+v477=v52.size|0;
+v480=v52.offset|0;
+v481=v52.stride|0;
+v482=v52.divisor|0;
+}
+}
+v484=g483.state;
+g483.state=v471;
+v485=g483.x;
+g483.x=v472;
+v486=g483.y;
+g483.y=v473;
+v487=g483.z;
+g483.z=v474;
+v488=g483.w;
+g483.w=v475;
+v489=g483.buffer;
+g483.buffer=v476;
+v490=g483.size;
+g483.size=v477;
+v491=g483.normalized;
+g483.normalized=v478;
+v492=g483.type;
+g483.type=v479;
+v493=g483.offset;
+g483.offset=v480;
+v494=g483.stride;
+g483.stride=v481;
+v495=g483.divisor;
+g483.divisor=v482;
+v496=a0["positionBuffer"];
+v53.buffer=v496;
+v497=false;
+v498=1;
+v499=0;
+v500=0;
+v501=0;
+v502=0;
+v503=null;
+v504=0;
+v505=false;
+v506=5126;
+v507=0;
+v508=0;
+v509=0;
+if(v16(v53)){
+v497=true;
+v503=v8.createStream(34962,v53);
+v506=v503.dtype;
+}
+else{
+v503=v8.getBuffer(v53);
+if(v503){
+v506=v503.dtype;
+}
+else if("constant" in v53){
+v498=2;
+if(typeof v53.constant === "number"){
+v499=v53.constant;
+v500=v501=v502=0;
+}
+else{
+v499=v53.constant.length>0?v53.constant[0]:0;
+v500=v53.constant.length>1?v53.constant[1]:0;
+v501=v53.constant.length>2?v53.constant[2]:0;
+v502=v53.constant.length>3?v53.constant[3]:0;
+}
+}
+else{
+if(v16(v53.buffer)){
+v503=v8.createStream(34962,v53.buffer);
+}
+else{
+v503=v8.getBuffer(v53.buffer);
+}
+v506="type" in v53?v46[v53.type]:v503.dtype;
+v505=!!v53.normalized;
+v504=v53.size|0;
+v507=v53.offset|0;
+v508=v53.stride|0;
+v509=v53.divisor|0;
+}
+}
+v511=g510.state;
+g510.state=v498;
+v512=g510.x;
+g510.x=v499;
+v513=g510.y;
+g510.y=v500;
+v514=g510.z;
+g510.z=v501;
+v515=g510.w;
+g510.w=v502;
+v516=g510.buffer;
+g510.buffer=v503;
+v517=g510.size;
+g510.size=v504;
+v518=g510.normalized;
+g510.normalized=v505;
+v519=g510.type;
+g510.type=v506;
+v520=g510.offset;
+g510.offset=v507;
+v521=g510.stride;
+g510.stride=v508;
+v522=g510.divisor;
+g510.divisor=v509;
+v523=a0["positionBuffer"];
+v54.buffer=v523;
+v524=false;
+v525=1;
+v526=0;
+v527=0;
+v528=0;
+v529=0;
+v530=null;
+v531=0;
+v532=false;
+v533=5126;
+v534=0;
+v535=0;
+v536=0;
+if(v16(v54)){
+v524=true;
+v530=v8.createStream(34962,v54);
+v533=v530.dtype;
+}
+else{
+v530=v8.getBuffer(v54);
+if(v530){
+v533=v530.dtype;
+}
+else if("constant" in v54){
+v525=2;
+if(typeof v54.constant === "number"){
+v526=v54.constant;
+v527=v528=v529=0;
+}
+else{
+v526=v54.constant.length>0?v54.constant[0]:0;
+v527=v54.constant.length>1?v54.constant[1]:0;
+v528=v54.constant.length>2?v54.constant[2]:0;
+v529=v54.constant.length>3?v54.constant[3]:0;
+}
+}
+else{
+if(v16(v54.buffer)){
+v530=v8.createStream(34962,v54.buffer);
+}
+else{
+v530=v8.getBuffer(v54.buffer);
+}
+v533="type" in v54?v46[v54.type]:v530.dtype;
+v532=!!v54.normalized;
+v531=v54.size|0;
+v534=v54.offset|0;
+v535=v54.stride|0;
+v536=v54.divisor|0;
+}
+}
+v538=g537.state;
+g537.state=v525;
+v539=g537.x;
+g537.x=v526;
+v540=g537.y;
+g537.y=v527;
+v541=g537.z;
+g537.z=v528;
+v542=g537.w;
+g537.w=v529;
+v543=g537.buffer;
+g537.buffer=v530;
+v544=g537.size;
+g537.size=v531;
+v545=g537.normalized;
+g537.normalized=v532;
+v546=g537.type;
+g537.type=v533;
+v547=g537.offset;
+g537.offset=v534;
+v548=g537.stride;
+g537.stride=v535;
+v549=g537.divisor;
+g537.divisor=v536;
+v551=v9.vert;
+v9.vert=g550;
+v553=v9.frag;
+v9.frag=g552;
+v5.dirty=true;
+a1(v2,a0,a2);
+v2.viewportWidth=v263;
+v2.viewportHeight=v264;
+v39[0]=v265;
+v39[1]=v266;
+v39[2]=v267;
+v39[3]=v268;
+v17[0]=v270;
+v17[1]=v272;
+v17[2]=v274;
+v17[3]=v276;
+v4.blend_enable=v278;
+v19[0]=v280;
+v19[1]=v282;
+v21[0]=v284;
+v21[1]=v286;
+v21[2]=v288;
+v21[3]=v290;
+v4.cull_enable=v292;
+v4.cull_face=v294;
+v4.depth_enable=v296;
+v37[0]=v302;
+v37[1]=v303;
+v37[2]=v304;
+v37[3]=v305;
+v4.scissor_enable=v307;
+v4.stencil_enable=v309;
+if(v310){
+g48.cpuTime+=performance.now()-v311;
+}
+v6.offset=v313;
+v6.count=v315;
+v6.instances=v317;
+v6.primitive=v319;
+v12[g321]=v322;
+v12[g324]=v325;
+v12[g327]=v328;
+v12[g330]=v331;
+v12[g333]=v334;
+v12[g336]=v337;
+v12[g339]=v340;
+v12[g342]=v343;
+v12[g345]=v346;
+v12[g348]=v349;
+v12[g351]=v352;
+v12[g354]=v355;
+v12[g357]=v358;
+v12[g360]=v361;
+g362.state=v363;
+g362.x=v364;
+g362.y=v365;
+g362.z=v366;
+g362.w=v367;
+g362.buffer=v368;
+g362.size=v369;
+g362.normalized=v370;
+g362.type=v371;
+g362.offset=v372;
+g362.stride=v373;
+g362.divisor=v374;
+g375.state=v376;
+g375.x=v377;
+g375.y=v378;
+g375.z=v379;
+g375.w=v380;
+g375.buffer=v381;
+g375.size=v382;
+g375.normalized=v383;
+g375.type=v384;
+g375.offset=v385;
+g375.stride=v386;
+g375.divisor=v387;
+if(v389){
+v8.destroyStream(v395);
+}
+g402.state=v403;
+g402.x=v404;
+g402.y=v405;
+g402.z=v406;
+g402.w=v407;
+g402.buffer=v408;
+g402.size=v409;
+g402.normalized=v410;
+g402.type=v411;
+g402.offset=v412;
+g402.stride=v413;
+g402.divisor=v414;
+if(v416){
+v8.destroyStream(v422);
+}
+g429.state=v430;
+g429.x=v431;
+g429.y=v432;
+g429.z=v433;
+g429.w=v434;
+g429.buffer=v435;
+g429.size=v436;
+g429.normalized=v437;
+g429.type=v438;
+g429.offset=v439;
+g429.stride=v440;
+g429.divisor=v441;
+if(v443){
+v8.destroyStream(v449);
+}
+g456.state=v457;
+g456.x=v458;
+g456.y=v459;
+g456.z=v460;
+g456.w=v461;
+g456.buffer=v462;
+g456.size=v463;
+g456.normalized=v464;
+g456.type=v465;
+g456.offset=v466;
+g456.stride=v467;
+g456.divisor=v468;
+if(v470){
+v8.destroyStream(v476);
+}
+g483.state=v484;
+g483.x=v485;
+g483.y=v486;
+g483.z=v487;
+g483.w=v488;
+g483.buffer=v489;
+g483.size=v490;
+g483.normalized=v491;
+g483.type=v492;
+g483.offset=v493;
+g483.stride=v494;
+g483.divisor=v495;
+if(v497){
+v8.destroyStream(v503);
+}
+g510.state=v511;
+g510.x=v512;
+g510.y=v513;
+g510.z=v514;
+g510.w=v515;
+g510.buffer=v516;
+g510.size=v517;
+g510.normalized=v518;
+g510.type=v519;
+g510.offset=v520;
+g510.stride=v521;
+g510.divisor=v522;
+if(v524){
+v8.destroyStream(v530);
+}
+g537.state=v538;
+g537.x=v539;
+g537.y=v540;
+g537.z=v541;
+g537.w=v542;
+g537.buffer=v543;
+g537.size=v544;
+g537.normalized=v545;
+g537.type=v546;
+g537.offset=v547;
+g537.stride=v548;
+g537.divisor=v549;
+v9.vert=v551;
+v9.frag=v553;
+v5.dirty=true;
+}
+,"batch":function(a0,a1){
+var v554,v555,v591,v592,v593,v594,v595;
+v554=v14.angle_instanced_arrays;
+v555=v13.next;
+if(v555!==v13.cur){
+if(v555){
+v1.bindFramebuffer(36160,v555.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v555;
+}
+if(v5.dirty){
+var v556,v557,v558,v559,v560,v561,v562,v563,v564,v565,v566,v567,v568,v569,v570,v571,v572,v573,v574,v575,v576,v577,v578,v579,v580,v581,v582,v583,v584,v585;
+v556=v4.dither;
+if(v556!==v5.dither){
+if(v556){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v556;
+}
+v557=v4.depth_func;
+if(v557!==v5.depth_func){
+v1.depthFunc(v557);
+v5.depth_func=v557;
+}
+v558=v23[0];
+v559=v23[1];
+if(v558!==v24[0]||v559!==v24[1]){
+v1.depthRange(v558,v559);
+v24[0]=v558;
+v24[1]=v559;
+}
+v560=v4.depth_mask;
+if(v560!==v5.depth_mask){
+v1.depthMask(v560);
+v5.depth_mask=v560;
+}
+v561=v25[0];
+v562=v25[1];
+v563=v25[2];
+v564=v25[3];
+if(v561!==v26[0]||v562!==v26[1]||v563!==v26[2]||v564!==v26[3]){
+v1.colorMask(v561,v562,v563,v564);
+v26[0]=v561;
+v26[1]=v562;
+v26[2]=v563;
+v26[3]=v564;
+}
+v565=v4.frontFace;
+if(v565!==v5.frontFace){
+v1.frontFace(v565);
+v5.frontFace=v565;
+}
+v566=v4.lineWidth;
+if(v566!==v5.lineWidth){
+v1.lineWidth(v566);
+v5.lineWidth=v566;
+}
+v567=v4.polygonOffset_enable;
+if(v567!==v5.polygonOffset_enable){
+if(v567){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v567;
+}
+v568=v27[0];
+v569=v27[1];
+if(v568!==v28[0]||v569!==v28[1]){
+v1.polygonOffset(v568,v569);
+v28[0]=v568;
+v28[1]=v569;
+}
+v570=v4.sample_alpha;
+if(v570!==v5.sample_alpha){
+if(v570){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v570;
+}
+v571=v4.sample_enable;
+if(v571!==v5.sample_enable){
+if(v571){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v571;
+}
+v572=v29[0];
+v573=v29[1];
+if(v572!==v30[0]||v573!==v30[1]){
+v1.sampleCoverage(v572,v573);
+v30[0]=v572;
+v30[1]=v573;
+}
+v574=v4.stencil_mask;
+if(v574!==v5.stencil_mask){
+v1.stencilMask(v574);
+v5.stencil_mask=v574;
+}
+v575=v31[0];
+v576=v31[1];
+v577=v31[2];
+if(v575!==v32[0]||v576!==v32[1]||v577!==v32[2]){
+v1.stencilFunc(v575,v576,v577);
+v32[0]=v575;
+v32[1]=v576;
+v32[2]=v577;
+}
+v578=v33[0];
+v579=v33[1];
+v580=v33[2];
+v581=v33[3];
+if(v578!==v34[0]||v579!==v34[1]||v580!==v34[2]||v581!==v34[3]){
+v1.stencilOpSeparate(v578,v579,v580,v581);
+v34[0]=v578;
+v34[1]=v579;
+v34[2]=v580;
+v34[3]=v581;
+}
+v582=v35[0];
+v583=v35[1];
+v584=v35[2];
+v585=v35[3];
+if(v582!==v36[0]||v583!==v36[1]||v584!==v36[2]||v585!==v36[3]){
+v1.stencilOpSeparate(v582,v583,v584,v585);
+v36[0]=v582;
+v36[1]=v583;
+v36[2]=v584;
+v36[3]=v585;
+}
+}
+v1.blendColor(0,0,0,0);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=0;
+if(g586){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g586;
+v1.blendEquationSeparate(32774,32774);
+v20[0]=32774;
+v20[1]=32774;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g587){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=g587;
+v1.cullFace(g588);
+v5.cull_face=g588;
+if(g589){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g589;
+if(g590){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g590;
+v591=v5.profile;
+if(v591){
+v592=performance.now();
+g48.count+=a1;
+}
+v1.useProgram(g108.program);
+v593=v14.angle_instanced_arrays;
+var v609,v610,v611,v612,v748;
+v11.setVAO(null);
+v609=g183.location;
+v610=v10[v609];
+if(!v610.buffer){
+v1.enableVertexAttribArray(v609);
+}
+if(v610.type!==5126||v610.size!==1||v610.buffer!==g182||v610.normalized!==false||v610.offset!==0||v610.stride!==8){
+v1.bindBuffer(34962,g182.buffer);
+v1.vertexAttribPointer(v609,1,5126,false,8,0);
+v610.type=5126;
+v610.size=1;
+v610.buffer=g182;
+v610.normalized=false;
+v610.offset=0;
+v610.stride=8;
+}
+if(v610.divisor!==0){
+v593.vertexAttribDivisorANGLE(v609,0);
+v610.divisor=0;
+}
+v611=g186.location;
+v612=v10[v611];
+if(!v612.buffer){
+v1.enableVertexAttribArray(v611);
+}
+if(v612.type!==5126||v612.size!==1||v612.buffer!==g182||v612.normalized!==false||v612.offset!==4||v612.stride!==8){
+v1.bindBuffer(34962,g182.buffer);
+v1.vertexAttribPointer(v611,1,5126,false,8,4);
+v612.type=5126;
+v612.size=1;
+v612.buffer=g182;
+v612.normalized=false;
+v612.offset=4;
+v612.stride=8;
+}
+if(v612.divisor!==0){
+v593.vertexAttribDivisorANGLE(v611,0);
+v612.divisor=0;
+}
+v748=v6.elements;
+if(v748){
+v1.bindBuffer(34963,v748.buffer.buffer);
+}
+else if(v11.currentVAO){
+v748=v7.getElements(v11.currentVAO.elements);
+if(v748)v1.bindBuffer(34963,v748.buffer.buffer);
+}
+for(v594=0;
+v594<a1;
+++v594){
+v595=a0[v594];
+var v596,v597,v598,v599,v600,v601,v602,v603,v604,v605,v606,v607,v608,v613,v614,v615,v616,v617,v618,v619,v620,v621,v622,v623,v624,v625,v626,v627,v628,v629,v630,v631,v632,v633,v634,v635,v636,v637,v638,v639,v640,v641,v642,v643,v644,v645,v646,v647,v648,v649,v650,v651,v652,v653,v654,v655,v656,v657,v658,v659,v660,v661,v662,v663,v664,v665,v666,v667,v668,v669,v670,v671,v672,v673,v674,v675,v676,v677,v678,v679,v680,v681,v682,v683,v684,v685,v686,v687,v688,v689,v690,v691,v692,v693,v694,v695,v696,v697,v698,v699,v700,v701,v702,v703,v704,v705,v706,v707,v708,v709,v710,v711,v712,v713,v714,v715,v716,v717,v718,v719,v720,v721,v722,v723,v724,v725,v726,v727,v728,v729,v730,v731,v732,v733,v734,v735,v736,v737,v738,v739,v740,v741,v742,v743,v744,v745,v746,v747,v749;
+v596=v595["viewport"];
+v597=v596.x|0;
+v598=v596.y|0;
+v599="width" in v596?v596.width|0:(v2.framebufferWidth-v597);
+v600="height" in v596?v596.height|0:(v2.framebufferHeight-v598);
+v601=v2.viewportWidth;
+v2.viewportWidth=v599;
+v602=v2.viewportHeight;
+v2.viewportHeight=v600;
+v1.viewport(v597,v598,v599,v600);
+v40[0]=v597;
+v40[1]=v598;
+v40[2]=v599;
+v40[3]=v600;
+v603=g97.call(this,v2,v595,v594);
+if(v603){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v603;
+v604=v595["viewport"];
+v605=v604.x|0;
+v606=v604.y|0;
+v607="width" in v604?v604.width|0:(v2.framebufferWidth-v605);
+v608="height" in v604?v604.height|0:(v2.framebufferHeight-v606);
+v1.scissor(v605,v606,v607,v608);
+v38[0]=v605;
+v38[1]=v606;
+v38[2]=v607;
+v38[3]=v608;
+v613=v595["colorBuffer"];
+v49.buffer=v613;
+v614=false;
+v615=1;
+v616=0;
+v617=0;
+v618=0;
+v619=0;
+v620=null;
+v621=0;
+v622=false;
+v623=5126;
+v624=0;
+v625=0;
+v626=0;
+if(v16(v49)){
+v614=true;
+v620=v8.createStream(34962,v49);
+v623=v620.dtype;
+}
+else{
+v620=v8.getBuffer(v49);
+if(v620){
+v623=v620.dtype;
+}
+else if("constant" in v49){
+v615=2;
+if(typeof v49.constant === "number"){
+v616=v49.constant;
+v617=v618=v619=0;
+}
+else{
+v616=v49.constant.length>0?v49.constant[0]:0;
+v617=v49.constant.length>1?v49.constant[1]:0;
+v618=v49.constant.length>2?v49.constant[2]:0;
+v619=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v620=v8.createStream(34962,v49.buffer);
+}
+else{
+v620=v8.getBuffer(v49.buffer);
+}
+v623="type" in v49?v46[v49.type]:v620.dtype;
+v622=!!v49.normalized;
+v621=v49.size|0;
+v624=v49.offset|0;
+v625=v49.stride|0;
+v626=v49.divisor|0;
+}
+}
+v627=g124.location;
+v628=v10[v627];
+if(v615===1){
+if(!v628.buffer){
+v1.enableVertexAttribArray(v627);
+}
+v629=v621||4;
+if(v628.type!==v623||v628.size!==v629||v628.buffer!==v620||v628.normalized!==v622||v628.offset!==v624||v628.stride!==v625){
+v1.bindBuffer(34962,v620.buffer);
+v1.vertexAttribPointer(v627,v629,v623,v622,v625,v624);
+v628.type=v623;
+v628.size=v629;
+v628.buffer=v620;
+v628.normalized=v622;
+v628.offset=v624;
+v628.stride=v625;
+}
+if(v628.divisor!==v626){
+v593.vertexAttribDivisorANGLE(v627,v626);
+v628.divisor=v626;
+}
+}
+else{
+if(v628.buffer){
+v1.disableVertexAttribArray(v627);
+v628.buffer=null;
+}
+if(v628.x!==v616||v628.y!==v617||v628.z!==v618||v628.w!==v619){
+v1.vertexAttrib4f(v627,v616,v617,v618,v619);
+v628.x=v616;
+v628.y=v617;
+v628.z=v618;
+v628.w=v619;
+}
+}
+v630=v595["positionBuffer"];
+v52.buffer=v630;
+v631=false;
+v632=1;
+v633=0;
+v634=0;
+v635=0;
+v636=0;
+v637=null;
+v638=0;
+v639=false;
+v640=5126;
+v641=0;
+v642=0;
+v643=0;
+if(v16(v52)){
+v631=true;
+v637=v8.createStream(34962,v52);
+v640=v637.dtype;
+}
+else{
+v637=v8.getBuffer(v52);
+if(v637){
+v640=v637.dtype;
+}
+else if("constant" in v52){
+v632=2;
+if(typeof v52.constant === "number"){
+v633=v52.constant;
+v634=v635=v636=0;
+}
+else{
+v633=v52.constant.length>0?v52.constant[0]:0;
+v634=v52.constant.length>1?v52.constant[1]:0;
+v635=v52.constant.length>2?v52.constant[2]:0;
+v636=v52.constant.length>3?v52.constant[3]:0;
+}
+}
+else{
+if(v16(v52.buffer)){
+v637=v8.createStream(34962,v52.buffer);
+}
+else{
+v637=v8.getBuffer(v52.buffer);
+}
+v640="type" in v52?v46[v52.type]:v637.dtype;
+v639=!!v52.normalized;
+v638=v52.size|0;
+v641=v52.offset|0;
+v642=v52.stride|0;
+v643=v52.divisor|0;
+}
+}
+v644=g142.location;
+v645=v10[v644];
+if(v632===1){
+if(!v645.buffer){
+v1.enableVertexAttribArray(v644);
+}
+v646=v638||2;
+if(v645.type!==v640||v645.size!==v646||v645.buffer!==v637||v645.normalized!==v639||v645.offset!==v641||v645.stride!==v642){
+v1.bindBuffer(34962,v637.buffer);
+v1.vertexAttribPointer(v644,v646,v640,v639,v642,v641);
+v645.type=v640;
+v645.size=v646;
+v645.buffer=v637;
+v645.normalized=v639;
+v645.offset=v641;
+v645.stride=v642;
+}
+if(v645.divisor!==v643){
+v593.vertexAttribDivisorANGLE(v644,v643);
+v645.divisor=v643;
+}
+}
+else{
+if(v645.buffer){
+v1.disableVertexAttribArray(v644);
+v645.buffer=null;
+}
+if(v645.x!==v633||v645.y!==v634||v645.z!==v635||v645.w!==v636){
+v1.vertexAttrib4f(v644,v633,v634,v635,v636);
+v645.x=v633;
+v645.y=v634;
+v645.z=v635;
+v645.w=v636;
+}
+}
+v647=v595["colorBuffer"];
+v50.buffer=v647;
+v648=false;
+v649=1;
+v650=0;
+v651=0;
+v652=0;
+v653=0;
+v654=null;
+v655=0;
+v656=false;
+v657=5126;
+v658=0;
+v659=0;
+v660=0;
+if(v16(v50)){
+v648=true;
+v654=v8.createStream(34962,v50);
+v657=v654.dtype;
+}
+else{
+v654=v8.getBuffer(v50);
+if(v654){
+v657=v654.dtype;
+}
+else if("constant" in v50){
+v649=2;
+if(typeof v50.constant === "number"){
+v650=v50.constant;
+v651=v652=v653=0;
+}
+else{
+v650=v50.constant.length>0?v50.constant[0]:0;
+v651=v50.constant.length>1?v50.constant[1]:0;
+v652=v50.constant.length>2?v50.constant[2]:0;
+v653=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v654=v8.createStream(34962,v50.buffer);
+}
+else{
+v654=v8.getBuffer(v50.buffer);
+}
+v657="type" in v50?v46[v50.type]:v654.dtype;
+v656=!!v50.normalized;
+v655=v50.size|0;
+v658=v50.offset|0;
+v659=v50.stride|0;
+v660=v50.divisor|0;
+}
+}
+v661=g160.location;
+v662=v10[v661];
+if(v649===1){
+if(!v662.buffer){
+v1.enableVertexAttribArray(v661);
+}
+v663=v655||4;
+if(v662.type!==v657||v662.size!==v663||v662.buffer!==v654||v662.normalized!==v656||v662.offset!==v658||v662.stride!==v659){
+v1.bindBuffer(34962,v654.buffer);
+v1.vertexAttribPointer(v661,v663,v657,v656,v659,v658);
+v662.type=v657;
+v662.size=v663;
+v662.buffer=v654;
+v662.normalized=v656;
+v662.offset=v658;
+v662.stride=v659;
+}
+if(v662.divisor!==v660){
+v593.vertexAttribDivisorANGLE(v661,v660);
+v662.divisor=v660;
+}
+}
+else{
+if(v662.buffer){
+v1.disableVertexAttribArray(v661);
+v662.buffer=null;
+}
+if(v662.x!==v650||v662.y!==v651||v662.z!==v652||v662.w!==v653){
+v1.vertexAttrib4f(v661,v650,v651,v652,v653);
+v662.x=v650;
+v662.y=v651;
+v662.z=v652;
+v662.w=v653;
+}
+}
+v664=v595["positionBuffer"];
+v53.buffer=v664;
+v665=false;
+v666=1;
+v667=0;
+v668=0;
+v669=0;
+v670=0;
+v671=null;
+v672=0;
+v673=false;
+v674=5126;
+v675=0;
+v676=0;
+v677=0;
+if(v16(v53)){
+v665=true;
+v671=v8.createStream(34962,v53);
+v674=v671.dtype;
+}
+else{
+v671=v8.getBuffer(v53);
+if(v671){
+v674=v671.dtype;
+}
+else if("constant" in v53){
+v666=2;
+if(typeof v53.constant === "number"){
+v667=v53.constant;
+v668=v669=v670=0;
+}
+else{
+v667=v53.constant.length>0?v53.constant[0]:0;
+v668=v53.constant.length>1?v53.constant[1]:0;
+v669=v53.constant.length>2?v53.constant[2]:0;
+v670=v53.constant.length>3?v53.constant[3]:0;
+}
+}
+else{
+if(v16(v53.buffer)){
+v671=v8.createStream(34962,v53.buffer);
+}
+else{
+v671=v8.getBuffer(v53.buffer);
+}
+v674="type" in v53?v46[v53.type]:v671.dtype;
+v673=!!v53.normalized;
+v672=v53.size|0;
+v675=v53.offset|0;
+v676=v53.stride|0;
+v677=v53.divisor|0;
+}
+}
+v678=g178.location;
+v679=v10[v678];
+if(v666===1){
+if(!v679.buffer){
+v1.enableVertexAttribArray(v678);
+}
+v680=v672||2;
+if(v679.type!==v674||v679.size!==v680||v679.buffer!==v671||v679.normalized!==v673||v679.offset!==v675||v679.stride!==v676){
+v1.bindBuffer(34962,v671.buffer);
+v1.vertexAttribPointer(v678,v680,v674,v673,v676,v675);
+v679.type=v674;
+v679.size=v680;
+v679.buffer=v671;
+v679.normalized=v673;
+v679.offset=v675;
+v679.stride=v676;
+}
+if(v679.divisor!==v677){
+v593.vertexAttribDivisorANGLE(v678,v677);
+v679.divisor=v677;
+}
+}
+else{
+if(v679.buffer){
+v1.disableVertexAttribArray(v678);
+v679.buffer=null;
+}
+if(v679.x!==v667||v679.y!==v668||v679.z!==v669||v679.w!==v670){
+v1.vertexAttrib4f(v678,v667,v668,v669,v670);
+v679.x=v667;
+v679.y=v668;
+v679.z=v669;
+v679.w=v670;
+}
+}
+v681=v595["positionBuffer"];
+v54.buffer=v681;
+v682=false;
+v683=1;
+v684=0;
+v685=0;
+v686=0;
+v687=0;
+v688=null;
+v689=0;
+v690=false;
+v691=5126;
+v692=0;
+v693=0;
+v694=0;
+if(v16(v54)){
+v682=true;
+v688=v8.createStream(34962,v54);
+v691=v688.dtype;
+}
+else{
+v688=v8.getBuffer(v54);
+if(v688){
+v691=v688.dtype;
+}
+else if("constant" in v54){
+v683=2;
+if(typeof v54.constant === "number"){
+v684=v54.constant;
+v685=v686=v687=0;
+}
+else{
+v684=v54.constant.length>0?v54.constant[0]:0;
+v685=v54.constant.length>1?v54.constant[1]:0;
+v686=v54.constant.length>2?v54.constant[2]:0;
+v687=v54.constant.length>3?v54.constant[3]:0;
+}
+}
+else{
+if(v16(v54.buffer)){
+v688=v8.createStream(34962,v54.buffer);
+}
+else{
+v688=v8.getBuffer(v54.buffer);
+}
+v691="type" in v54?v46[v54.type]:v688.dtype;
+v690=!!v54.normalized;
+v689=v54.size|0;
+v692=v54.offset|0;
+v693=v54.stride|0;
+v694=v54.divisor|0;
+}
+}
+v695=g203.location;
+v696=v10[v695];
+if(v683===1){
+if(!v696.buffer){
+v1.enableVertexAttribArray(v695);
+}
+v697=v689||2;
+if(v696.type!==v691||v696.size!==v697||v696.buffer!==v688||v696.normalized!==v690||v696.offset!==v692||v696.stride!==v693){
+v1.bindBuffer(34962,v688.buffer);
+v1.vertexAttribPointer(v695,v697,v691,v690,v693,v692);
+v696.type=v691;
+v696.size=v697;
+v696.buffer=v688;
+v696.normalized=v690;
+v696.offset=v692;
+v696.stride=v693;
+}
+if(v696.divisor!==v694){
+v593.vertexAttribDivisorANGLE(v695,v694);
+v696.divisor=v694;
+}
+}
+else{
+if(v696.buffer){
+v1.disableVertexAttribArray(v695);
+v696.buffer=null;
+}
+if(v696.x!==v684||v696.y!==v685||v696.z!==v686||v696.w!==v687){
+v1.vertexAttrib4f(v695,v684,v685,v686,v687);
+v696.x=v684;
+v696.y=v685;
+v696.z=v686;
+v696.w=v687;
+}
+}
+v698=v595["positionBuffer"];
+v51.buffer=v698;
+v699=false;
+v700=1;
+v701=0;
+v702=0;
+v703=0;
+v704=0;
+v705=null;
+v706=0;
+v707=false;
+v708=5126;
+v709=0;
+v710=0;
+v711=0;
+if(v16(v51)){
+v699=true;
+v705=v8.createStream(34962,v51);
+v708=v705.dtype;
+}
+else{
+v705=v8.getBuffer(v51);
+if(v705){
+v708=v705.dtype;
+}
+else if("constant" in v51){
+v700=2;
+if(typeof v51.constant === "number"){
+v701=v51.constant;
+v702=v703=v704=0;
+}
+else{
+v701=v51.constant.length>0?v51.constant[0]:0;
+v702=v51.constant.length>1?v51.constant[1]:0;
+v703=v51.constant.length>2?v51.constant[2]:0;
+v704=v51.constant.length>3?v51.constant[3]:0;
+}
+}
+else{
+if(v16(v51.buffer)){
+v705=v8.createStream(34962,v51.buffer);
+}
+else{
+v705=v8.getBuffer(v51.buffer);
+}
+v708="type" in v51?v46[v51.type]:v705.dtype;
+v707=!!v51.normalized;
+v706=v51.size|0;
+v709=v51.offset|0;
+v710=v51.stride|0;
+v711=v51.divisor|0;
+}
+}
+v712=g221.location;
+v713=v10[v712];
+if(v700===1){
+if(!v713.buffer){
+v1.enableVertexAttribArray(v712);
+}
+v714=v706||2;
+if(v713.type!==v708||v713.size!==v714||v713.buffer!==v705||v713.normalized!==v707||v713.offset!==v709||v713.stride!==v710){
+v1.bindBuffer(34962,v705.buffer);
+v1.vertexAttribPointer(v712,v714,v708,v707,v710,v709);
+v713.type=v708;
+v713.size=v714;
+v713.buffer=v705;
+v713.normalized=v707;
+v713.offset=v709;
+v713.stride=v710;
+}
+if(v713.divisor!==v711){
+v593.vertexAttribDivisorANGLE(v712,v711);
+v713.divisor=v711;
+}
+}
+else{
+if(v713.buffer){
+v1.disableVertexAttribArray(v712);
+v713.buffer=null;
+}
+if(v713.x!==v701||v713.y!==v702||v713.z!==v703||v713.w!==v704){
+v1.vertexAttrib4f(v712,v701,v702,v703,v704);
+v713.x=v701;
+v713.y=v702;
+v713.z=v703;
+v713.w=v704;
+}
+}
+v715=v595["dashLength"];
+if(!v594||v716!==v715){
+v716=v715;
+v1.uniform1f(g225.location,v715);
+}
+v717=v595["dashTexture"];
+if(v717&&v717._reglType==="framebuffer"){
+v717=v717.color[0];
+}
+v718=v717._texture;
+v1.uniform1i(g227.location,v718.bind());
+v719=v595["depth"];
+if(!v594||v720!==v719){
+v720=v719;
+v1.uniform1f(g230.location,v719);
+}
+v721=v595["miterLimit"];
+if(!v594||v722!==v721){
+v722=v721;
+v1.uniform1f(g232.location,v721);
+}
+v723=g235.call(this,v2,v595,v594);
+if(!v594||v724!==v723){
+v724=v723;
+v1.uniform1f(g234.location,v723);
+}
+v725=v595["opacity"];
+if(!v594||v726!==v725){
+v726=v725;
+v1.uniform1f(g237.location,v725);
+}
+v727=v595["scale"];
+v728=v727[0];
+v730=v727[1];
+if(!v594||v729!==v728||v731!==v730){
+v729=v728;
+v731=v730;
+v1.uniform2f(g239.location,v728,v730);
+}
+v732=v595["thickness"];
+if(!v594||v733!==v732){
+v733=v732;
+v1.uniform1f(g243.location,v732);
+}
+v734=v595["translate"];
+v735=v734[0];
+v737=v734[1];
+if(!v594||v736!==v735||v738!==v737){
+v736=v735;
+v738=v737;
+v1.uniform2f(g245.location,v735,v737);
+}
+v739=g250.call(this,v2,v595,v594);
+v740=v739[0];
+v742=v739[1];
+v744=v739[2];
+v746=v739[3];
+if(!v594||v741!==v740||v743!==v742||v745!==v744||v747!==v746){
+v741=v740;
+v743=v742;
+v745=v744;
+v747=v746;
+v1.uniform4f(g249.location,v740,v742,v744,v746);
+}
+v749=v595["count"];
+if(v749>0){
+if(v748){
+v593.drawElementsInstancedANGLE(5,4,v748.type,0<<((v748.type-5121)>>1),v749);
+}
+else{
+v593.drawArraysInstancedANGLE(5,0,4,v749);
+}
+}
+else if(v749<0){
+if(v748){
+v1.drawElements(5,4,v748.type,0<<((v748.type-5121)>>1));
+}
+else{
+v1.drawArrays(5,0,4);
+}
+}
+v2.viewportWidth=v601;
+v2.viewportHeight=v602;
+if(v614){
+v8.destroyStream(v620);
+}
+if(v631){
+v8.destroyStream(v637);
+}
+if(v648){
+v8.destroyStream(v654);
+}
+if(v665){
+v8.destroyStream(v671);
+}
+if(v682){
+v8.destroyStream(v688);
+}
+if(v699){
+v8.destroyStream(v705);
+}
+v718.unbind();
+}
+v5.dirty=true;
+v11.setVAO(null);
+if(v591){
+g48.cpuTime+=performance.now()-v592;
+}
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5 b/src/generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5
new file mode 100644
index 00000000000..97ec31fdbe8
--- /dev/null
+++ b/src/generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5
@@ -0,0 +1,3325 @@
+module.exports = function anonymous(g0,g48,g92,g93,g99,g100,g103,g105,g120,g124,g139,g143,g158,g162,g177,g181,g196,g200,g215,g219,g234,g238,g253,g257,g272,g276,g277,g280,g282,g283,g287,g288,g289,g291,g295,g299,g303,g324,g326,g328,g330,g332,g334,g336,g338,g340,g342,g353,g355,g367,g369,g371,g372,g375,g378,g381,g384,g387,g390,g393,g396,g412,g439,g466,g493,g520,g547,g574,g601,g628,g641,g643,g681,g682,g683,g684
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+return {
+"draw":function(a0){
+var v49,v50,v85,v86,v87,v88,v89,v90,v91,v94,v95,v96,v97,v98,v101,v102,v104,v106,v107,v108,v109,v110,v111,v112,v113,v114,v115,v116,v117,v118,v119,v121,v122,v123,v125,v126,v127,v128,v129,v130,v131,v132,v133,v134,v135,v136,v137,v138,v140,v141,v142,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v159,v160,v161,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v174,v175,v176,v178,v179,v180,v182,v183,v184,v185,v186,v187,v188,v189,v190,v191,v192,v193,v194,v195,v197,v198,v199,v201,v202,v203,v204,v205,v206,v207,v208,v209,v210,v211,v212,v213,v214,v216,v217,v218,v220,v221,v222,v223,v224,v225,v226,v227,v228,v229,v230,v231,v232,v233,v235,v236,v237,v239,v240,v241,v242,v243,v244,v245,v246,v247,v248,v249,v250,v251,v252,v254,v255,v256,v258,v259,v260,v261,v262,v263,v264,v265,v266,v267,v268,v269,v270,v271,v273,v274,v275,v278,v279,v281,v284,v285,v286,v290,v292,v293,v294,v296,v297,v298,v300,v301,v302,v304,v305,v306,v307,v308,v309,v310,v311,v312;
+v49=v14.angle_instanced_arrays;
+v50=v13.next;
+if(v50!==v13.cur){
+if(v50){
+v1.bindFramebuffer(36160,v50.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v50;
+}
+if(v5.dirty){
+var v51,v52,v53,v54,v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84;
+v51=v4.dither;
+if(v51!==v5.dither){
+if(v51){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v51;
+}
+v52=v19[0];
+v53=v19[1];
+if(v52!==v20[0]||v53!==v20[1]){
+v1.blendEquationSeparate(v52,v53);
+v20[0]=v52;
+v20[1]=v53;
+}
+v54=v4.depth_func;
+if(v54!==v5.depth_func){
+v1.depthFunc(v54);
+v5.depth_func=v54;
+}
+v55=v23[0];
+v56=v23[1];
+if(v55!==v24[0]||v56!==v24[1]){
+v1.depthRange(v55,v56);
+v24[0]=v55;
+v24[1]=v56;
+}
+v57=v4.depth_mask;
+if(v57!==v5.depth_mask){
+v1.depthMask(v57);
+v5.depth_mask=v57;
+}
+v58=v25[0];
+v59=v25[1];
+v60=v25[2];
+v61=v25[3];
+if(v58!==v26[0]||v59!==v26[1]||v60!==v26[2]||v61!==v26[3]){
+v1.colorMask(v58,v59,v60,v61);
+v26[0]=v58;
+v26[1]=v59;
+v26[2]=v60;
+v26[3]=v61;
+}
+v62=v4.cull_enable;
+if(v62!==v5.cull_enable){
+if(v62){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v62;
+}
+v63=v4.cull_face;
+if(v63!==v5.cull_face){
+v1.cullFace(v63);
+v5.cull_face=v63;
+}
+v64=v4.frontFace;
+if(v64!==v5.frontFace){
+v1.frontFace(v64);
+v5.frontFace=v64;
+}
+v65=v4.lineWidth;
+if(v65!==v5.lineWidth){
+v1.lineWidth(v65);
+v5.lineWidth=v65;
+}
+v66=v4.polygonOffset_enable;
+if(v66!==v5.polygonOffset_enable){
+if(v66){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v66;
+}
+v67=v27[0];
+v68=v27[1];
+if(v67!==v28[0]||v68!==v28[1]){
+v1.polygonOffset(v67,v68);
+v28[0]=v67;
+v28[1]=v68;
+}
+v69=v4.sample_alpha;
+if(v69!==v5.sample_alpha){
+if(v69){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v69;
+}
+v70=v4.sample_enable;
+if(v70!==v5.sample_enable){
+if(v70){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v70;
+}
+v71=v29[0];
+v72=v29[1];
+if(v71!==v30[0]||v72!==v30[1]){
+v1.sampleCoverage(v71,v72);
+v30[0]=v71;
+v30[1]=v72;
+}
+v73=v4.stencil_mask;
+if(v73!==v5.stencil_mask){
+v1.stencilMask(v73);
+v5.stencil_mask=v73;
+}
+v74=v31[0];
+v75=v31[1];
+v76=v31[2];
+if(v74!==v32[0]||v75!==v32[1]||v76!==v32[2]){
+v1.stencilFunc(v74,v75,v76);
+v32[0]=v74;
+v32[1]=v75;
+v32[2]=v76;
+}
+v77=v33[0];
+v78=v33[1];
+v79=v33[2];
+v80=v33[3];
+if(v77!==v34[0]||v78!==v34[1]||v79!==v34[2]||v80!==v34[3]){
+v1.stencilOpSeparate(v77,v78,v79,v80);
+v34[0]=v77;
+v34[1]=v78;
+v34[2]=v79;
+v34[3]=v80;
+}
+v81=v35[0];
+v82=v35[1];
+v83=v35[2];
+v84=v35[3];
+if(v81!==v36[0]||v82!==v36[1]||v83!==v36[2]||v84!==v36[3]){
+v1.stencilOpSeparate(v81,v82,v83,v84);
+v36[0]=v81;
+v36[1]=v82;
+v36[2]=v83;
+v36[3]=v84;
+}
+}
+v85=a0["viewport"];
+v86=v85.x|0;
+v87=v85.y|0;
+v88="width" in v85?v85.width|0:(v2.framebufferWidth-v86);
+v89="height" in v85?v85.height|0:(v2.framebufferHeight-v87);
+v90=v2.viewportWidth;
+v2.viewportWidth=v88;
+v91=v2.viewportHeight;
+v2.viewportHeight=v89;
+v1.viewport(v86,v87,v88,v89);
+v40[0]=v86;
+v40[1]=v87;
+v40[2]=v88;
+v40[3]=v89;
+v1.blendColor(0,0,0,1);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=1;
+if(g92){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g92;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g93){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g93;
+v94=a0["viewport"];
+v95=v94.x|0;
+v96=v94.y|0;
+v97="width" in v94?v94.width|0:(v2.framebufferWidth-v95);
+v98="height" in v94?v94.height|0:(v2.framebufferHeight-v96);
+v1.scissor(v95,v96,v97,v98);
+v38[0]=v95;
+v38[1]=v96;
+v38[2]=v97;
+v38[3]=v98;
+if(g99){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g99;
+if(g100){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g100;
+v101=v5.profile;
+if(v101){
+v102=performance.now();
+g48.count++;
+}
+v1.useProgram(g103.program);
+v104=v14.angle_instanced_arrays;
+v11.setVAO(null);
+v106=g105.call(this,v2,a0,0);
+v107=false;
+v108=1;
+v109=0;
+v110=0;
+v111=0;
+v112=0;
+v113=null;
+v114=0;
+v115=false;
+v116=5126;
+v117=0;
+v118=0;
+v119=0;
+if(v16(v106)){
+v107=true;
+v113=v8.createStream(34962,v106);
+v116=v113.dtype;
+}
+else{
+v113=v8.getBuffer(v106);
+if(v113){
+v116=v113.dtype;
+}
+else if("constant" in v106){
+v108=2;
+if(typeof v106.constant === "number"){
+v109=v106.constant;
+v110=v111=v112=0;
+}
+else{
+v109=v106.constant.length>0?v106.constant[0]:0;
+v110=v106.constant.length>1?v106.constant[1]:0;
+v111=v106.constant.length>2?v106.constant[2]:0;
+v112=v106.constant.length>3?v106.constant[3]:0;
+}
+}
+else{
+if(v16(v106.buffer)){
+v113=v8.createStream(34962,v106.buffer);
+}
+else{
+v113=v8.getBuffer(v106.buffer);
+}
+v116="type" in v106?v46[v106.type]:v113.dtype;
+v115=!!v106.normalized;
+v114=v106.size|0;
+v117=v106.offset|0;
+v118=v106.stride|0;
+v119=v106.divisor|0;
+}
+}
+v121=g120.location;
+v122=v10[v121];
+if(v108===1){
+if(!v122.buffer){
+v1.enableVertexAttribArray(v121);
+}
+v123=v114||4;
+if(v122.type!==v116||v122.size!==v123||v122.buffer!==v113||v122.normalized!==v115||v122.offset!==v117||v122.stride!==v118){
+v1.bindBuffer(34962,v113.buffer);
+v1.vertexAttribPointer(v121,v123,v116,v115,v118,v117);
+v122.type=v116;
+v122.size=v123;
+v122.buffer=v113;
+v122.normalized=v115;
+v122.offset=v117;
+v122.stride=v118;
+}
+if(v122.divisor!==v119){
+v104.vertexAttribDivisorANGLE(v121,v119);
+v122.divisor=v119;
+}
+}
+else{
+if(v122.buffer){
+v1.disableVertexAttribArray(v121);
+v122.buffer=null;
+}
+if(v122.x!==v109||v122.y!==v110||v122.z!==v111||v122.w!==v112){
+v1.vertexAttrib4f(v121,v109,v110,v111,v112);
+v122.x=v109;
+v122.y=v110;
+v122.z=v111;
+v122.w=v112;
+}
+}
+v125=g124.call(this,v2,a0,0);
+v126=false;
+v127=1;
+v128=0;
+v129=0;
+v130=0;
+v131=0;
+v132=null;
+v133=0;
+v134=false;
+v135=5126;
+v136=0;
+v137=0;
+v138=0;
+if(v16(v125)){
+v126=true;
+v132=v8.createStream(34962,v125);
+v135=v132.dtype;
+}
+else{
+v132=v8.getBuffer(v125);
+if(v132){
+v135=v132.dtype;
+}
+else if("constant" in v125){
+v127=2;
+if(typeof v125.constant === "number"){
+v128=v125.constant;
+v129=v130=v131=0;
+}
+else{
+v128=v125.constant.length>0?v125.constant[0]:0;
+v129=v125.constant.length>1?v125.constant[1]:0;
+v130=v125.constant.length>2?v125.constant[2]:0;
+v131=v125.constant.length>3?v125.constant[3]:0;
+}
+}
+else{
+if(v16(v125.buffer)){
+v132=v8.createStream(34962,v125.buffer);
+}
+else{
+v132=v8.getBuffer(v125.buffer);
+}
+v135="type" in v125?v46[v125.type]:v132.dtype;
+v134=!!v125.normalized;
+v133=v125.size|0;
+v136=v125.offset|0;
+v137=v125.stride|0;
+v138=v125.divisor|0;
+}
+}
+v140=g139.location;
+v141=v10[v140];
+if(v127===1){
+if(!v141.buffer){
+v1.enableVertexAttribArray(v140);
+}
+v142=v133||1;
+if(v141.type!==v135||v141.size!==v142||v141.buffer!==v132||v141.normalized!==v134||v141.offset!==v136||v141.stride!==v137){
+v1.bindBuffer(34962,v132.buffer);
+v1.vertexAttribPointer(v140,v142,v135,v134,v137,v136);
+v141.type=v135;
+v141.size=v142;
+v141.buffer=v132;
+v141.normalized=v134;
+v141.offset=v136;
+v141.stride=v137;
+}
+if(v141.divisor!==v138){
+v104.vertexAttribDivisorANGLE(v140,v138);
+v141.divisor=v138;
+}
+}
+else{
+if(v141.buffer){
+v1.disableVertexAttribArray(v140);
+v141.buffer=null;
+}
+if(v141.x!==v128||v141.y!==v129||v141.z!==v130||v141.w!==v131){
+v1.vertexAttrib4f(v140,v128,v129,v130,v131);
+v141.x=v128;
+v141.y=v129;
+v141.z=v130;
+v141.w=v131;
+}
+}
+v144=g143.call(this,v2,a0,0);
+v145=false;
+v146=1;
+v147=0;
+v148=0;
+v149=0;
+v150=0;
+v151=null;
+v152=0;
+v153=false;
+v154=5126;
+v155=0;
+v156=0;
+v157=0;
+if(v16(v144)){
+v145=true;
+v151=v8.createStream(34962,v144);
+v154=v151.dtype;
+}
+else{
+v151=v8.getBuffer(v144);
+if(v151){
+v154=v151.dtype;
+}
+else if("constant" in v144){
+v146=2;
+if(typeof v144.constant === "number"){
+v147=v144.constant;
+v148=v149=v150=0;
+}
+else{
+v147=v144.constant.length>0?v144.constant[0]:0;
+v148=v144.constant.length>1?v144.constant[1]:0;
+v149=v144.constant.length>2?v144.constant[2]:0;
+v150=v144.constant.length>3?v144.constant[3]:0;
+}
+}
+else{
+if(v16(v144.buffer)){
+v151=v8.createStream(34962,v144.buffer);
+}
+else{
+v151=v8.getBuffer(v144.buffer);
+}
+v154="type" in v144?v46[v144.type]:v151.dtype;
+v153=!!v144.normalized;
+v152=v144.size|0;
+v155=v144.offset|0;
+v156=v144.stride|0;
+v157=v144.divisor|0;
+}
+}
+v159=g158.location;
+v160=v10[v159];
+if(v146===1){
+if(!v160.buffer){
+v1.enableVertexAttribArray(v159);
+}
+v161=v152||4;
+if(v160.type!==v154||v160.size!==v161||v160.buffer!==v151||v160.normalized!==v153||v160.offset!==v155||v160.stride!==v156){
+v1.bindBuffer(34962,v151.buffer);
+v1.vertexAttribPointer(v159,v161,v154,v153,v156,v155);
+v160.type=v154;
+v160.size=v161;
+v160.buffer=v151;
+v160.normalized=v153;
+v160.offset=v155;
+v160.stride=v156;
+}
+if(v160.divisor!==v157){
+v104.vertexAttribDivisorANGLE(v159,v157);
+v160.divisor=v157;
+}
+}
+else{
+if(v160.buffer){
+v1.disableVertexAttribArray(v159);
+v160.buffer=null;
+}
+if(v160.x!==v147||v160.y!==v148||v160.z!==v149||v160.w!==v150){
+v1.vertexAttrib4f(v159,v147,v148,v149,v150);
+v160.x=v147;
+v160.y=v148;
+v160.z=v149;
+v160.w=v150;
+}
+}
+v163=g162.call(this,v2,a0,0);
+v164=false;
+v165=1;
+v166=0;
+v167=0;
+v168=0;
+v169=0;
+v170=null;
+v171=0;
+v172=false;
+v173=5126;
+v174=0;
+v175=0;
+v176=0;
+if(v16(v163)){
+v164=true;
+v170=v8.createStream(34962,v163);
+v173=v170.dtype;
+}
+else{
+v170=v8.getBuffer(v163);
+if(v170){
+v173=v170.dtype;
+}
+else if("constant" in v163){
+v165=2;
+if(typeof v163.constant === "number"){
+v166=v163.constant;
+v167=v168=v169=0;
+}
+else{
+v166=v163.constant.length>0?v163.constant[0]:0;
+v167=v163.constant.length>1?v163.constant[1]:0;
+v168=v163.constant.length>2?v163.constant[2]:0;
+v169=v163.constant.length>3?v163.constant[3]:0;
+}
+}
+else{
+if(v16(v163.buffer)){
+v170=v8.createStream(34962,v163.buffer);
+}
+else{
+v170=v8.getBuffer(v163.buffer);
+}
+v173="type" in v163?v46[v163.type]:v170.dtype;
+v172=!!v163.normalized;
+v171=v163.size|0;
+v174=v163.offset|0;
+v175=v163.stride|0;
+v176=v163.divisor|0;
+}
+}
+v178=g177.location;
+v179=v10[v178];
+if(v165===1){
+if(!v179.buffer){
+v1.enableVertexAttribArray(v178);
+}
+v180=v171||1;
+if(v179.type!==v173||v179.size!==v180||v179.buffer!==v170||v179.normalized!==v172||v179.offset!==v174||v179.stride!==v175){
+v1.bindBuffer(34962,v170.buffer);
+v1.vertexAttribPointer(v178,v180,v173,v172,v175,v174);
+v179.type=v173;
+v179.size=v180;
+v179.buffer=v170;
+v179.normalized=v172;
+v179.offset=v174;
+v179.stride=v175;
+}
+if(v179.divisor!==v176){
+v104.vertexAttribDivisorANGLE(v178,v176);
+v179.divisor=v176;
+}
+}
+else{
+if(v179.buffer){
+v1.disableVertexAttribArray(v178);
+v179.buffer=null;
+}
+if(v179.x!==v166||v179.y!==v167||v179.z!==v168||v179.w!==v169){
+v1.vertexAttrib4f(v178,v166,v167,v168,v169);
+v179.x=v166;
+v179.y=v167;
+v179.z=v168;
+v179.w=v169;
+}
+}
+v182=g181.call(this,v2,a0,0);
+v183=false;
+v184=1;
+v185=0;
+v186=0;
+v187=0;
+v188=0;
+v189=null;
+v190=0;
+v191=false;
+v192=5126;
+v193=0;
+v194=0;
+v195=0;
+if(v16(v182)){
+v183=true;
+v189=v8.createStream(34962,v182);
+v192=v189.dtype;
+}
+else{
+v189=v8.getBuffer(v182);
+if(v189){
+v192=v189.dtype;
+}
+else if("constant" in v182){
+v184=2;
+if(typeof v182.constant === "number"){
+v185=v182.constant;
+v186=v187=v188=0;
+}
+else{
+v185=v182.constant.length>0?v182.constant[0]:0;
+v186=v182.constant.length>1?v182.constant[1]:0;
+v187=v182.constant.length>2?v182.constant[2]:0;
+v188=v182.constant.length>3?v182.constant[3]:0;
+}
+}
+else{
+if(v16(v182.buffer)){
+v189=v8.createStream(34962,v182.buffer);
+}
+else{
+v189=v8.getBuffer(v182.buffer);
+}
+v192="type" in v182?v46[v182.type]:v189.dtype;
+v191=!!v182.normalized;
+v190=v182.size|0;
+v193=v182.offset|0;
+v194=v182.stride|0;
+v195=v182.divisor|0;
+}
+}
+v197=g196.location;
+v198=v10[v197];
+if(v184===1){
+if(!v198.buffer){
+v1.enableVertexAttribArray(v197);
+}
+v199=v190||1;
+if(v198.type!==v192||v198.size!==v199||v198.buffer!==v189||v198.normalized!==v191||v198.offset!==v193||v198.stride!==v194){
+v1.bindBuffer(34962,v189.buffer);
+v1.vertexAttribPointer(v197,v199,v192,v191,v194,v193);
+v198.type=v192;
+v198.size=v199;
+v198.buffer=v189;
+v198.normalized=v191;
+v198.offset=v193;
+v198.stride=v194;
+}
+if(v198.divisor!==v195){
+v104.vertexAttribDivisorANGLE(v197,v195);
+v198.divisor=v195;
+}
+}
+else{
+if(v198.buffer){
+v1.disableVertexAttribArray(v197);
+v198.buffer=null;
+}
+if(v198.x!==v185||v198.y!==v186||v198.z!==v187||v198.w!==v188){
+v1.vertexAttrib4f(v197,v185,v186,v187,v188);
+v198.x=v185;
+v198.y=v186;
+v198.z=v187;
+v198.w=v188;
+}
+}
+v201=g200.call(this,v2,a0,0);
+v202=false;
+v203=1;
+v204=0;
+v205=0;
+v206=0;
+v207=0;
+v208=null;
+v209=0;
+v210=false;
+v211=5126;
+v212=0;
+v213=0;
+v214=0;
+if(v16(v201)){
+v202=true;
+v208=v8.createStream(34962,v201);
+v211=v208.dtype;
+}
+else{
+v208=v8.getBuffer(v201);
+if(v208){
+v211=v208.dtype;
+}
+else if("constant" in v201){
+v203=2;
+if(typeof v201.constant === "number"){
+v204=v201.constant;
+v205=v206=v207=0;
+}
+else{
+v204=v201.constant.length>0?v201.constant[0]:0;
+v205=v201.constant.length>1?v201.constant[1]:0;
+v206=v201.constant.length>2?v201.constant[2]:0;
+v207=v201.constant.length>3?v201.constant[3]:0;
+}
+}
+else{
+if(v16(v201.buffer)){
+v208=v8.createStream(34962,v201.buffer);
+}
+else{
+v208=v8.getBuffer(v201.buffer);
+}
+v211="type" in v201?v46[v201.type]:v208.dtype;
+v210=!!v201.normalized;
+v209=v201.size|0;
+v212=v201.offset|0;
+v213=v201.stride|0;
+v214=v201.divisor|0;
+}
+}
+v216=g215.location;
+v217=v10[v216];
+if(v203===1){
+if(!v217.buffer){
+v1.enableVertexAttribArray(v216);
+}
+v218=v209||1;
+if(v217.type!==v211||v217.size!==v218||v217.buffer!==v208||v217.normalized!==v210||v217.offset!==v212||v217.stride!==v213){
+v1.bindBuffer(34962,v208.buffer);
+v1.vertexAttribPointer(v216,v218,v211,v210,v213,v212);
+v217.type=v211;
+v217.size=v218;
+v217.buffer=v208;
+v217.normalized=v210;
+v217.offset=v212;
+v217.stride=v213;
+}
+if(v217.divisor!==v214){
+v104.vertexAttribDivisorANGLE(v216,v214);
+v217.divisor=v214;
+}
+}
+else{
+if(v217.buffer){
+v1.disableVertexAttribArray(v216);
+v217.buffer=null;
+}
+if(v217.x!==v204||v217.y!==v205||v217.z!==v206||v217.w!==v207){
+v1.vertexAttrib4f(v216,v204,v205,v206,v207);
+v217.x=v204;
+v217.y=v205;
+v217.z=v206;
+v217.w=v207;
+}
+}
+v220=g219.call(this,v2,a0,0);
+v221=false;
+v222=1;
+v223=0;
+v224=0;
+v225=0;
+v226=0;
+v227=null;
+v228=0;
+v229=false;
+v230=5126;
+v231=0;
+v232=0;
+v233=0;
+if(v16(v220)){
+v221=true;
+v227=v8.createStream(34962,v220);
+v230=v227.dtype;
+}
+else{
+v227=v8.getBuffer(v220);
+if(v227){
+v230=v227.dtype;
+}
+else if("constant" in v220){
+v222=2;
+if(typeof v220.constant === "number"){
+v223=v220.constant;
+v224=v225=v226=0;
+}
+else{
+v223=v220.constant.length>0?v220.constant[0]:0;
+v224=v220.constant.length>1?v220.constant[1]:0;
+v225=v220.constant.length>2?v220.constant[2]:0;
+v226=v220.constant.length>3?v220.constant[3]:0;
+}
+}
+else{
+if(v16(v220.buffer)){
+v227=v8.createStream(34962,v220.buffer);
+}
+else{
+v227=v8.getBuffer(v220.buffer);
+}
+v230="type" in v220?v46[v220.type]:v227.dtype;
+v229=!!v220.normalized;
+v228=v220.size|0;
+v231=v220.offset|0;
+v232=v220.stride|0;
+v233=v220.divisor|0;
+}
+}
+v235=g234.location;
+v236=v10[v235];
+if(v222===1){
+if(!v236.buffer){
+v1.enableVertexAttribArray(v235);
+}
+v237=v228||1;
+if(v236.type!==v230||v236.size!==v237||v236.buffer!==v227||v236.normalized!==v229||v236.offset!==v231||v236.stride!==v232){
+v1.bindBuffer(34962,v227.buffer);
+v1.vertexAttribPointer(v235,v237,v230,v229,v232,v231);
+v236.type=v230;
+v236.size=v237;
+v236.buffer=v227;
+v236.normalized=v229;
+v236.offset=v231;
+v236.stride=v232;
+}
+if(v236.divisor!==v233){
+v104.vertexAttribDivisorANGLE(v235,v233);
+v236.divisor=v233;
+}
+}
+else{
+if(v236.buffer){
+v1.disableVertexAttribArray(v235);
+v236.buffer=null;
+}
+if(v236.x!==v223||v236.y!==v224||v236.z!==v225||v236.w!==v226){
+v1.vertexAttrib4f(v235,v223,v224,v225,v226);
+v236.x=v223;
+v236.y=v224;
+v236.z=v225;
+v236.w=v226;
+}
+}
+v239=g238.call(this,v2,a0,0);
+v240=false;
+v241=1;
+v242=0;
+v243=0;
+v244=0;
+v245=0;
+v246=null;
+v247=0;
+v248=false;
+v249=5126;
+v250=0;
+v251=0;
+v252=0;
+if(v16(v239)){
+v240=true;
+v246=v8.createStream(34962,v239);
+v249=v246.dtype;
+}
+else{
+v246=v8.getBuffer(v239);
+if(v246){
+v249=v246.dtype;
+}
+else if("constant" in v239){
+v241=2;
+if(typeof v239.constant === "number"){
+v242=v239.constant;
+v243=v244=v245=0;
+}
+else{
+v242=v239.constant.length>0?v239.constant[0]:0;
+v243=v239.constant.length>1?v239.constant[1]:0;
+v244=v239.constant.length>2?v239.constant[2]:0;
+v245=v239.constant.length>3?v239.constant[3]:0;
+}
+}
+else{
+if(v16(v239.buffer)){
+v246=v8.createStream(34962,v239.buffer);
+}
+else{
+v246=v8.getBuffer(v239.buffer);
+}
+v249="type" in v239?v46[v239.type]:v246.dtype;
+v248=!!v239.normalized;
+v247=v239.size|0;
+v250=v239.offset|0;
+v251=v239.stride|0;
+v252=v239.divisor|0;
+}
+}
+v254=g253.location;
+v255=v10[v254];
+if(v241===1){
+if(!v255.buffer){
+v1.enableVertexAttribArray(v254);
+}
+v256=v247||1;
+if(v255.type!==v249||v255.size!==v256||v255.buffer!==v246||v255.normalized!==v248||v255.offset!==v250||v255.stride!==v251){
+v1.bindBuffer(34962,v246.buffer);
+v1.vertexAttribPointer(v254,v256,v249,v248,v251,v250);
+v255.type=v249;
+v255.size=v256;
+v255.buffer=v246;
+v255.normalized=v248;
+v255.offset=v250;
+v255.stride=v251;
+}
+if(v255.divisor!==v252){
+v104.vertexAttribDivisorANGLE(v254,v252);
+v255.divisor=v252;
+}
+}
+else{
+if(v255.buffer){
+v1.disableVertexAttribArray(v254);
+v255.buffer=null;
+}
+if(v255.x!==v242||v255.y!==v243||v255.z!==v244||v255.w!==v245){
+v1.vertexAttrib4f(v254,v242,v243,v244,v245);
+v255.x=v242;
+v255.y=v243;
+v255.z=v244;
+v255.w=v245;
+}
+}
+v258=g257.call(this,v2,a0,0);
+v259=false;
+v260=1;
+v261=0;
+v262=0;
+v263=0;
+v264=0;
+v265=null;
+v266=0;
+v267=false;
+v268=5126;
+v269=0;
+v270=0;
+v271=0;
+if(v16(v258)){
+v259=true;
+v265=v8.createStream(34962,v258);
+v268=v265.dtype;
+}
+else{
+v265=v8.getBuffer(v258);
+if(v265){
+v268=v265.dtype;
+}
+else if("constant" in v258){
+v260=2;
+if(typeof v258.constant === "number"){
+v261=v258.constant;
+v262=v263=v264=0;
+}
+else{
+v261=v258.constant.length>0?v258.constant[0]:0;
+v262=v258.constant.length>1?v258.constant[1]:0;
+v263=v258.constant.length>2?v258.constant[2]:0;
+v264=v258.constant.length>3?v258.constant[3]:0;
+}
+}
+else{
+if(v16(v258.buffer)){
+v265=v8.createStream(34962,v258.buffer);
+}
+else{
+v265=v8.getBuffer(v258.buffer);
+}
+v268="type" in v258?v46[v258.type]:v265.dtype;
+v267=!!v258.normalized;
+v266=v258.size|0;
+v269=v258.offset|0;
+v270=v258.stride|0;
+v271=v258.divisor|0;
+}
+}
+v273=g272.location;
+v274=v10[v273];
+if(v260===1){
+if(!v274.buffer){
+v1.enableVertexAttribArray(v273);
+}
+v275=v266||1;
+if(v274.type!==v268||v274.size!==v275||v274.buffer!==v265||v274.normalized!==v267||v274.offset!==v269||v274.stride!==v270){
+v1.bindBuffer(34962,v265.buffer);
+v1.vertexAttribPointer(v273,v275,v268,v267,v270,v269);
+v274.type=v268;
+v274.size=v275;
+v274.buffer=v265;
+v274.normalized=v267;
+v274.offset=v269;
+v274.stride=v270;
+}
+if(v274.divisor!==v271){
+v104.vertexAttribDivisorANGLE(v273,v271);
+v274.divisor=v271;
+}
+}
+else{
+if(v274.buffer){
+v1.disableVertexAttribArray(v273);
+v274.buffer=null;
+}
+if(v274.x!==v261||v274.y!==v262||v274.z!==v263||v274.w!==v264){
+v1.vertexAttrib4f(v273,v261,v262,v263,v264);
+v274.x=v261;
+v274.y=v262;
+v274.z=v263;
+v274.w=v264;
+}
+}
+v1.uniform1i(g276.location,false);
+v278=a0["markerTexture"];
+if(v278&&v278._reglType==="framebuffer"){
+v278=v278.color[0];
+}
+v279=v278._texture;
+v1.uniform1i(g277.location,v279.bind());
+v281=a0["opacity"];
+v1.uniform1f(g280.location,v281);
+v284=g283.call(this,v2,a0,0);
+v285=v284[0];
+v286=v284[1];
+v1.uniform2f(g282.location,v285,v286);
+v1.uniform1i(g287.location,g288.bind());
+v290=v2["pixelRatio"];
+v1.uniform1f(g289.location,v290);
+v292=a0["scale"];
+v293=v292[0];
+v294=v292[1];
+v1.uniform2f(g291.location,v293,v294);
+v296=a0["scaleFract"];
+v297=v296[0];
+v298=v296[1];
+v1.uniform2f(g295.location,v297,v298);
+v300=a0["translate"];
+v301=v300[0];
+v302=v300[1];
+v1.uniform2f(g299.location,v301,v302);
+v304=a0["translateFract"];
+v305=v304[0];
+v306=v304[1];
+v1.uniform2f(g303.location,v305,v306);
+v307=a0["elements"];
+v308=null;
+v309=v16(v307);
+if(v309){
+v308=v7.createStream(v307);
+}
+else{
+v308=v7.getElements(v307);
+}
+if(v308)v1.bindBuffer(34963,v308.buffer.buffer);
+v310=a0["offset"];
+v311=a0["count"];
+if(v311){
+v312=v6.instances;
+if(v312>0){
+if(v308){
+v104.drawElementsInstancedANGLE(0,v311,v308.type,v310<<((v308.type-5121)>>1),v312);
+}
+else{
+v104.drawArraysInstancedANGLE(0,v310,v311,v312);
+}
+}
+else if(v312<0){
+if(v308){
+v1.drawElements(0,v311,v308.type,v310<<((v308.type-5121)>>1));
+}
+else{
+v1.drawArrays(0,v310,v311);
+}
+}
+v5.dirty=true;
+v11.setVAO(null);
+v2.viewportWidth=v90;
+v2.viewportHeight=v91;
+if(v101){
+g48.cpuTime+=performance.now()-v102;
+}
+if(v107){
+v8.destroyStream(v113);
+}
+if(v126){
+v8.destroyStream(v132);
+}
+if(v145){
+v8.destroyStream(v151);
+}
+if(v164){
+v8.destroyStream(v170);
+}
+if(v183){
+v8.destroyStream(v189);
+}
+if(v202){
+v8.destroyStream(v208);
+}
+if(v221){
+v8.destroyStream(v227);
+}
+if(v240){
+v8.destroyStream(v246);
+}
+if(v259){
+v8.destroyStream(v265);
+}
+v279.unbind();
+g288.unbind();
+if(v309){
+v7.destroyStream(v308);
+}
+}
+}
+,"scope":function(a0,a1,a2){
+var v313,v314,v315,v316,v317,v318,v319,v320,v321,v322,v323,v325,v327,v329,v331,v333,v335,v337,v339,v341,v343,v344,v345,v346,v347,v348,v349,v350,v351,v352,v354,v356,v357,v358,v359,v360,v361,v362,v363,v364,v365,v366,v368,v370,v373,v374,v376,v377,v379,v380,v382,v383,v385,v386,v388,v389,v391,v392,v394,v395,v397,v398,v399,v400,v401,v402,v403,v404,v405,v406,v407,v408,v409,v410,v411,v413,v414,v415,v416,v417,v418,v419,v420,v421,v422,v423,v424,v425,v426,v427,v428,v429,v430,v431,v432,v433,v434,v435,v436,v437,v438,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v452,v453,v454,v455,v456,v457,v458,v459,v460,v461,v462,v463,v464,v465,v467,v468,v469,v470,v471,v472,v473,v474,v475,v476,v477,v478,v479,v480,v481,v482,v483,v484,v485,v486,v487,v488,v489,v490,v491,v492,v494,v495,v496,v497,v498,v499,v500,v501,v502,v503,v504,v505,v506,v507,v508,v509,v510,v511,v512,v513,v514,v515,v516,v517,v518,v519,v521,v522,v523,v524,v525,v526,v527,v528,v529,v530,v531,v532,v533,v534,v535,v536,v537,v538,v539,v540,v541,v542,v543,v544,v545,v546,v548,v549,v550,v551,v552,v553,v554,v555,v556,v557,v558,v559,v560,v561,v562,v563,v564,v565,v566,v567,v568,v569,v570,v571,v572,v573,v575,v576,v577,v578,v579,v580,v581,v582,v583,v584,v585,v586,v587,v588,v589,v590,v591,v592,v593,v594,v595,v596,v597,v598,v599,v600,v602,v603,v604,v605,v606,v607,v608,v609,v610,v611,v612,v613,v614,v615,v616,v617,v618,v619,v620,v621,v622,v623,v624,v625,v626,v627,v629,v630,v631,v632,v633,v634,v635,v636,v637,v638,v639,v640,v642,v644;
+v313=a0["viewport"];
+v314=v313.x|0;
+v315=v313.y|0;
+v316="width" in v313?v313.width|0:(v2.framebufferWidth-v314);
+v317="height" in v313?v313.height|0:(v2.framebufferHeight-v315);
+v318=v2.viewportWidth;
+v2.viewportWidth=v316;
+v319=v2.viewportHeight;
+v2.viewportHeight=v317;
+v320=v39[0];
+v39[0]=v314;
+v321=v39[1];
+v39[1]=v315;
+v322=v39[2];
+v39[2]=v316;
+v323=v39[3];
+v39[3]=v317;
+v325=v17[0];
+v17[0]=g324;
+v327=v17[1];
+v17[1]=g326;
+v329=v17[2];
+v17[2]=g328;
+v331=v17[3];
+v17[3]=g330;
+v333=v4.blend_enable;
+v4.blend_enable=g332;
+v335=v21[0];
+v21[0]=g334;
+v337=v21[1];
+v21[1]=g336;
+v339=v21[2];
+v21[2]=g338;
+v341=v21[3];
+v21[3]=g340;
+v343=v4.depth_enable;
+v4.depth_enable=g342;
+v344=a0["viewport"];
+v345=v344.x|0;
+v346=v344.y|0;
+v347="width" in v344?v344.width|0:(v2.framebufferWidth-v345);
+v348="height" in v344?v344.height|0:(v2.framebufferHeight-v346);
+v349=v37[0];
+v37[0]=v345;
+v350=v37[1];
+v37[1]=v346;
+v351=v37[2];
+v37[2]=v347;
+v352=v37[3];
+v37[3]=v348;
+v354=v4.scissor_enable;
+v4.scissor_enable=g353;
+v356=v4.stencil_enable;
+v4.stencil_enable=g355;
+v357=v5.profile;
+if(v357){
+v358=performance.now();
+g48.count++;
+}
+v359=a0["elements"];
+v360=null;
+v361=v16(v359);
+if(v361){
+v360=v7.createStream(v359);
+}
+else{
+v360=v7.getElements(v359);
+}
+v362=v6.elements;
+v6.elements=v360;
+v363=a0["offset"];
+v364=v6.offset;
+v6.offset=v363;
+v365=a0["count"];
+v366=v6.count;
+v6.count=v365;
+v368=v6.primitive;
+v6.primitive=g367;
+v370=v12[g369];
+v12[g369]=false;
+v373=v12[g372];
+v12[g372]=g371;
+v374=a0["opacity"];
+v376=v12[g375];
+v12[g375]=v374;
+v377=g283.call(this,v2,a0,a2);
+v379=v12[g378];
+v12[g378]=v377;
+v380=v2["pixelRatio"];
+v382=v12[g381];
+v12[g381]=v380;
+v383=a0["scale"];
+v385=v12[g384];
+v12[g384]=v383;
+v386=a0["scaleFract"];
+v388=v12[g387];
+v12[g387]=v386;
+v389=a0["translate"];
+v391=v12[g390];
+v12[g390]=v389;
+v392=a0["translateFract"];
+v394=v12[g393];
+v12[g393]=v392;
+v395=a0["markerTexture"];
+v397=v12[g396];
+v12[g396]=v395;
+v398=g200.call(this,v2,a0,a2);
+v399=false;
+v400=1;
+v401=0;
+v402=0;
+v403=0;
+v404=0;
+v405=null;
+v406=0;
+v407=false;
+v408=5126;
+v409=0;
+v410=0;
+v411=0;
+if(v16(v398)){
+v399=true;
+v405=v8.createStream(34962,v398);
+v408=v405.dtype;
+}
+else{
+v405=v8.getBuffer(v398);
+if(v405){
+v408=v405.dtype;
+}
+else if("constant" in v398){
+v400=2;
+if(typeof v398.constant === "number"){
+v401=v398.constant;
+v402=v403=v404=0;
+}
+else{
+v401=v398.constant.length>0?v398.constant[0]:0;
+v402=v398.constant.length>1?v398.constant[1]:0;
+v403=v398.constant.length>2?v398.constant[2]:0;
+v404=v398.constant.length>3?v398.constant[3]:0;
+}
+}
+else{
+if(v16(v398.buffer)){
+v405=v8.createStream(34962,v398.buffer);
+}
+else{
+v405=v8.getBuffer(v398.buffer);
+}
+v408="type" in v398?v46[v398.type]:v405.dtype;
+v407=!!v398.normalized;
+v406=v398.size|0;
+v409=v398.offset|0;
+v410=v398.stride|0;
+v411=v398.divisor|0;
+}
+}
+v413=g412.state;
+g412.state=v400;
+v414=g412.x;
+g412.x=v401;
+v415=g412.y;
+g412.y=v402;
+v416=g412.z;
+g412.z=v403;
+v417=g412.w;
+g412.w=v404;
+v418=g412.buffer;
+g412.buffer=v405;
+v419=g412.size;
+g412.size=v406;
+v420=g412.normalized;
+g412.normalized=v407;
+v421=g412.type;
+g412.type=v408;
+v422=g412.offset;
+g412.offset=v409;
+v423=g412.stride;
+g412.stride=v410;
+v424=g412.divisor;
+g412.divisor=v411;
+v425=g238.call(this,v2,a0,a2);
+v426=false;
+v427=1;
+v428=0;
+v429=0;
+v430=0;
+v431=0;
+v432=null;
+v433=0;
+v434=false;
+v435=5126;
+v436=0;
+v437=0;
+v438=0;
+if(v16(v425)){
+v426=true;
+v432=v8.createStream(34962,v425);
+v435=v432.dtype;
+}
+else{
+v432=v8.getBuffer(v425);
+if(v432){
+v435=v432.dtype;
+}
+else if("constant" in v425){
+v427=2;
+if(typeof v425.constant === "number"){
+v428=v425.constant;
+v429=v430=v431=0;
+}
+else{
+v428=v425.constant.length>0?v425.constant[0]:0;
+v429=v425.constant.length>1?v425.constant[1]:0;
+v430=v425.constant.length>2?v425.constant[2]:0;
+v431=v425.constant.length>3?v425.constant[3]:0;
+}
+}
+else{
+if(v16(v425.buffer)){
+v432=v8.createStream(34962,v425.buffer);
+}
+else{
+v432=v8.getBuffer(v425.buffer);
+}
+v435="type" in v425?v46[v425.type]:v432.dtype;
+v434=!!v425.normalized;
+v433=v425.size|0;
+v436=v425.offset|0;
+v437=v425.stride|0;
+v438=v425.divisor|0;
+}
+}
+v440=g439.state;
+g439.state=v427;
+v441=g439.x;
+g439.x=v428;
+v442=g439.y;
+g439.y=v429;
+v443=g439.z;
+g439.z=v430;
+v444=g439.w;
+g439.w=v431;
+v445=g439.buffer;
+g439.buffer=v432;
+v446=g439.size;
+g439.size=v433;
+v447=g439.normalized;
+g439.normalized=v434;
+v448=g439.type;
+g439.type=v435;
+v449=g439.offset;
+g439.offset=v436;
+v450=g439.stride;
+g439.stride=v437;
+v451=g439.divisor;
+g439.divisor=v438;
+v452=g219.call(this,v2,a0,a2);
+v453=false;
+v454=1;
+v455=0;
+v456=0;
+v457=0;
+v458=0;
+v459=null;
+v460=0;
+v461=false;
+v462=5126;
+v463=0;
+v464=0;
+v465=0;
+if(v16(v452)){
+v453=true;
+v459=v8.createStream(34962,v452);
+v462=v459.dtype;
+}
+else{
+v459=v8.getBuffer(v452);
+if(v459){
+v462=v459.dtype;
+}
+else if("constant" in v452){
+v454=2;
+if(typeof v452.constant === "number"){
+v455=v452.constant;
+v456=v457=v458=0;
+}
+else{
+v455=v452.constant.length>0?v452.constant[0]:0;
+v456=v452.constant.length>1?v452.constant[1]:0;
+v457=v452.constant.length>2?v452.constant[2]:0;
+v458=v452.constant.length>3?v452.constant[3]:0;
+}
+}
+else{
+if(v16(v452.buffer)){
+v459=v8.createStream(34962,v452.buffer);
+}
+else{
+v459=v8.getBuffer(v452.buffer);
+}
+v462="type" in v452?v46[v452.type]:v459.dtype;
+v461=!!v452.normalized;
+v460=v452.size|0;
+v463=v452.offset|0;
+v464=v452.stride|0;
+v465=v452.divisor|0;
+}
+}
+v467=g466.state;
+g466.state=v454;
+v468=g466.x;
+g466.x=v455;
+v469=g466.y;
+g466.y=v456;
+v470=g466.z;
+g466.z=v457;
+v471=g466.w;
+g466.w=v458;
+v472=g466.buffer;
+g466.buffer=v459;
+v473=g466.size;
+g466.size=v460;
+v474=g466.normalized;
+g466.normalized=v461;
+v475=g466.type;
+g466.type=v462;
+v476=g466.offset;
+g466.offset=v463;
+v477=g466.stride;
+g466.stride=v464;
+v478=g466.divisor;
+g466.divisor=v465;
+v479=g257.call(this,v2,a0,a2);
+v480=false;
+v481=1;
+v482=0;
+v483=0;
+v484=0;
+v485=0;
+v486=null;
+v487=0;
+v488=false;
+v489=5126;
+v490=0;
+v491=0;
+v492=0;
+if(v16(v479)){
+v480=true;
+v486=v8.createStream(34962,v479);
+v489=v486.dtype;
+}
+else{
+v486=v8.getBuffer(v479);
+if(v486){
+v489=v486.dtype;
+}
+else if("constant" in v479){
+v481=2;
+if(typeof v479.constant === "number"){
+v482=v479.constant;
+v483=v484=v485=0;
+}
+else{
+v482=v479.constant.length>0?v479.constant[0]:0;
+v483=v479.constant.length>1?v479.constant[1]:0;
+v484=v479.constant.length>2?v479.constant[2]:0;
+v485=v479.constant.length>3?v479.constant[3]:0;
+}
+}
+else{
+if(v16(v479.buffer)){
+v486=v8.createStream(34962,v479.buffer);
+}
+else{
+v486=v8.getBuffer(v479.buffer);
+}
+v489="type" in v479?v46[v479.type]:v486.dtype;
+v488=!!v479.normalized;
+v487=v479.size|0;
+v490=v479.offset|0;
+v491=v479.stride|0;
+v492=v479.divisor|0;
+}
+}
+v494=g493.state;
+g493.state=v481;
+v495=g493.x;
+g493.x=v482;
+v496=g493.y;
+g493.y=v483;
+v497=g493.z;
+g493.z=v484;
+v498=g493.w;
+g493.w=v485;
+v499=g493.buffer;
+g493.buffer=v486;
+v500=g493.size;
+g493.size=v487;
+v501=g493.normalized;
+g493.normalized=v488;
+v502=g493.type;
+g493.type=v489;
+v503=g493.offset;
+g493.offset=v490;
+v504=g493.stride;
+g493.stride=v491;
+v505=g493.divisor;
+g493.divisor=v492;
+v506=g181.call(this,v2,a0,a2);
+v507=false;
+v508=1;
+v509=0;
+v510=0;
+v511=0;
+v512=0;
+v513=null;
+v514=0;
+v515=false;
+v516=5126;
+v517=0;
+v518=0;
+v519=0;
+if(v16(v506)){
+v507=true;
+v513=v8.createStream(34962,v506);
+v516=v513.dtype;
+}
+else{
+v513=v8.getBuffer(v506);
+if(v513){
+v516=v513.dtype;
+}
+else if("constant" in v506){
+v508=2;
+if(typeof v506.constant === "number"){
+v509=v506.constant;
+v510=v511=v512=0;
+}
+else{
+v509=v506.constant.length>0?v506.constant[0]:0;
+v510=v506.constant.length>1?v506.constant[1]:0;
+v511=v506.constant.length>2?v506.constant[2]:0;
+v512=v506.constant.length>3?v506.constant[3]:0;
+}
+}
+else{
+if(v16(v506.buffer)){
+v513=v8.createStream(34962,v506.buffer);
+}
+else{
+v513=v8.getBuffer(v506.buffer);
+}
+v516="type" in v506?v46[v506.type]:v513.dtype;
+v515=!!v506.normalized;
+v514=v506.size|0;
+v517=v506.offset|0;
+v518=v506.stride|0;
+v519=v506.divisor|0;
+}
+}
+v521=g520.state;
+g520.state=v508;
+v522=g520.x;
+g520.x=v509;
+v523=g520.y;
+g520.y=v510;
+v524=g520.z;
+g520.z=v511;
+v525=g520.w;
+g520.w=v512;
+v526=g520.buffer;
+g520.buffer=v513;
+v527=g520.size;
+g520.size=v514;
+v528=g520.normalized;
+g520.normalized=v515;
+v529=g520.type;
+g520.type=v516;
+v530=g520.offset;
+g520.offset=v517;
+v531=g520.stride;
+g520.stride=v518;
+v532=g520.divisor;
+g520.divisor=v519;
+v533=g124.call(this,v2,a0,a2);
+v534=false;
+v535=1;
+v536=0;
+v537=0;
+v538=0;
+v539=0;
+v540=null;
+v541=0;
+v542=false;
+v543=5126;
+v544=0;
+v545=0;
+v546=0;
+if(v16(v533)){
+v534=true;
+v540=v8.createStream(34962,v533);
+v543=v540.dtype;
+}
+else{
+v540=v8.getBuffer(v533);
+if(v540){
+v543=v540.dtype;
+}
+else if("constant" in v533){
+v535=2;
+if(typeof v533.constant === "number"){
+v536=v533.constant;
+v537=v538=v539=0;
+}
+else{
+v536=v533.constant.length>0?v533.constant[0]:0;
+v537=v533.constant.length>1?v533.constant[1]:0;
+v538=v533.constant.length>2?v533.constant[2]:0;
+v539=v533.constant.length>3?v533.constant[3]:0;
+}
+}
+else{
+if(v16(v533.buffer)){
+v540=v8.createStream(34962,v533.buffer);
+}
+else{
+v540=v8.getBuffer(v533.buffer);
+}
+v543="type" in v533?v46[v533.type]:v540.dtype;
+v542=!!v533.normalized;
+v541=v533.size|0;
+v544=v533.offset|0;
+v545=v533.stride|0;
+v546=v533.divisor|0;
+}
+}
+v548=g547.state;
+g547.state=v535;
+v549=g547.x;
+g547.x=v536;
+v550=g547.y;
+g547.y=v537;
+v551=g547.z;
+g547.z=v538;
+v552=g547.w;
+g547.w=v539;
+v553=g547.buffer;
+g547.buffer=v540;
+v554=g547.size;
+g547.size=v541;
+v555=g547.normalized;
+g547.normalized=v542;
+v556=g547.type;
+g547.type=v543;
+v557=g547.offset;
+g547.offset=v544;
+v558=g547.stride;
+g547.stride=v545;
+v559=g547.divisor;
+g547.divisor=v546;
+v560=g143.call(this,v2,a0,a2);
+v561=false;
+v562=1;
+v563=0;
+v564=0;
+v565=0;
+v566=0;
+v567=null;
+v568=0;
+v569=false;
+v570=5126;
+v571=0;
+v572=0;
+v573=0;
+if(v16(v560)){
+v561=true;
+v567=v8.createStream(34962,v560);
+v570=v567.dtype;
+}
+else{
+v567=v8.getBuffer(v560);
+if(v567){
+v570=v567.dtype;
+}
+else if("constant" in v560){
+v562=2;
+if(typeof v560.constant === "number"){
+v563=v560.constant;
+v564=v565=v566=0;
+}
+else{
+v563=v560.constant.length>0?v560.constant[0]:0;
+v564=v560.constant.length>1?v560.constant[1]:0;
+v565=v560.constant.length>2?v560.constant[2]:0;
+v566=v560.constant.length>3?v560.constant[3]:0;
+}
+}
+else{
+if(v16(v560.buffer)){
+v567=v8.createStream(34962,v560.buffer);
+}
+else{
+v567=v8.getBuffer(v560.buffer);
+}
+v570="type" in v560?v46[v560.type]:v567.dtype;
+v569=!!v560.normalized;
+v568=v560.size|0;
+v571=v560.offset|0;
+v572=v560.stride|0;
+v573=v560.divisor|0;
+}
+}
+v575=g574.state;
+g574.state=v562;
+v576=g574.x;
+g574.x=v563;
+v577=g574.y;
+g574.y=v564;
+v578=g574.z;
+g574.z=v565;
+v579=g574.w;
+g574.w=v566;
+v580=g574.buffer;
+g574.buffer=v567;
+v581=g574.size;
+g574.size=v568;
+v582=g574.normalized;
+g574.normalized=v569;
+v583=g574.type;
+g574.type=v570;
+v584=g574.offset;
+g574.offset=v571;
+v585=g574.stride;
+g574.stride=v572;
+v586=g574.divisor;
+g574.divisor=v573;
+v587=g105.call(this,v2,a0,a2);
+v588=false;
+v589=1;
+v590=0;
+v591=0;
+v592=0;
+v593=0;
+v594=null;
+v595=0;
+v596=false;
+v597=5126;
+v598=0;
+v599=0;
+v600=0;
+if(v16(v587)){
+v588=true;
+v594=v8.createStream(34962,v587);
+v597=v594.dtype;
+}
+else{
+v594=v8.getBuffer(v587);
+if(v594){
+v597=v594.dtype;
+}
+else if("constant" in v587){
+v589=2;
+if(typeof v587.constant === "number"){
+v590=v587.constant;
+v591=v592=v593=0;
+}
+else{
+v590=v587.constant.length>0?v587.constant[0]:0;
+v591=v587.constant.length>1?v587.constant[1]:0;
+v592=v587.constant.length>2?v587.constant[2]:0;
+v593=v587.constant.length>3?v587.constant[3]:0;
+}
+}
+else{
+if(v16(v587.buffer)){
+v594=v8.createStream(34962,v587.buffer);
+}
+else{
+v594=v8.getBuffer(v587.buffer);
+}
+v597="type" in v587?v46[v587.type]:v594.dtype;
+v596=!!v587.normalized;
+v595=v587.size|0;
+v598=v587.offset|0;
+v599=v587.stride|0;
+v600=v587.divisor|0;
+}
+}
+v602=g601.state;
+g601.state=v589;
+v603=g601.x;
+g601.x=v590;
+v604=g601.y;
+g601.y=v591;
+v605=g601.z;
+g601.z=v592;
+v606=g601.w;
+g601.w=v593;
+v607=g601.buffer;
+g601.buffer=v594;
+v608=g601.size;
+g601.size=v595;
+v609=g601.normalized;
+g601.normalized=v596;
+v610=g601.type;
+g601.type=v597;
+v611=g601.offset;
+g601.offset=v598;
+v612=g601.stride;
+g601.stride=v599;
+v613=g601.divisor;
+g601.divisor=v600;
+v614=g162.call(this,v2,a0,a2);
+v615=false;
+v616=1;
+v617=0;
+v618=0;
+v619=0;
+v620=0;
+v621=null;
+v622=0;
+v623=false;
+v624=5126;
+v625=0;
+v626=0;
+v627=0;
+if(v16(v614)){
+v615=true;
+v621=v8.createStream(34962,v614);
+v624=v621.dtype;
+}
+else{
+v621=v8.getBuffer(v614);
+if(v621){
+v624=v621.dtype;
+}
+else if("constant" in v614){
+v616=2;
+if(typeof v614.constant === "number"){
+v617=v614.constant;
+v618=v619=v620=0;
+}
+else{
+v617=v614.constant.length>0?v614.constant[0]:0;
+v618=v614.constant.length>1?v614.constant[1]:0;
+v619=v614.constant.length>2?v614.constant[2]:0;
+v620=v614.constant.length>3?v614.constant[3]:0;
+}
+}
+else{
+if(v16(v614.buffer)){
+v621=v8.createStream(34962,v614.buffer);
+}
+else{
+v621=v8.getBuffer(v614.buffer);
+}
+v624="type" in v614?v46[v614.type]:v621.dtype;
+v623=!!v614.normalized;
+v622=v614.size|0;
+v625=v614.offset|0;
+v626=v614.stride|0;
+v627=v614.divisor|0;
+}
+}
+v629=g628.state;
+g628.state=v616;
+v630=g628.x;
+g628.x=v617;
+v631=g628.y;
+g628.y=v618;
+v632=g628.z;
+g628.z=v619;
+v633=g628.w;
+g628.w=v620;
+v634=g628.buffer;
+g628.buffer=v621;
+v635=g628.size;
+g628.size=v622;
+v636=g628.normalized;
+g628.normalized=v623;
+v637=g628.type;
+g628.type=v624;
+v638=g628.offset;
+g628.offset=v625;
+v639=g628.stride;
+g628.stride=v626;
+v640=g628.divisor;
+g628.divisor=v627;
+v642=v9.vert;
+v9.vert=g641;
+v644=v9.frag;
+v9.frag=g643;
+v5.dirty=true;
+a1(v2,a0,a2);
+v2.viewportWidth=v318;
+v2.viewportHeight=v319;
+v39[0]=v320;
+v39[1]=v321;
+v39[2]=v322;
+v39[3]=v323;
+v17[0]=v325;
+v17[1]=v327;
+v17[2]=v329;
+v17[3]=v331;
+v4.blend_enable=v333;
+v21[0]=v335;
+v21[1]=v337;
+v21[2]=v339;
+v21[3]=v341;
+v4.depth_enable=v343;
+v37[0]=v349;
+v37[1]=v350;
+v37[2]=v351;
+v37[3]=v352;
+v4.scissor_enable=v354;
+v4.stencil_enable=v356;
+if(v357){
+g48.cpuTime+=performance.now()-v358;
+}
+if(v361){
+v7.destroyStream(v360);
+}
+v6.elements=v362;
+v6.offset=v364;
+v6.count=v366;
+v6.primitive=v368;
+v12[g369]=v370;
+v12[g372]=v373;
+v12[g375]=v376;
+v12[g378]=v379;
+v12[g381]=v382;
+v12[g384]=v385;
+v12[g387]=v388;
+v12[g390]=v391;
+v12[g393]=v394;
+v12[g396]=v397;
+if(v399){
+v8.destroyStream(v405);
+}
+g412.state=v413;
+g412.x=v414;
+g412.y=v415;
+g412.z=v416;
+g412.w=v417;
+g412.buffer=v418;
+g412.size=v419;
+g412.normalized=v420;
+g412.type=v421;
+g412.offset=v422;
+g412.stride=v423;
+g412.divisor=v424;
+if(v426){
+v8.destroyStream(v432);
+}
+g439.state=v440;
+g439.x=v441;
+g439.y=v442;
+g439.z=v443;
+g439.w=v444;
+g439.buffer=v445;
+g439.size=v446;
+g439.normalized=v447;
+g439.type=v448;
+g439.offset=v449;
+g439.stride=v450;
+g439.divisor=v451;
+if(v453){
+v8.destroyStream(v459);
+}
+g466.state=v467;
+g466.x=v468;
+g466.y=v469;
+g466.z=v470;
+g466.w=v471;
+g466.buffer=v472;
+g466.size=v473;
+g466.normalized=v474;
+g466.type=v475;
+g466.offset=v476;
+g466.stride=v477;
+g466.divisor=v478;
+if(v480){
+v8.destroyStream(v486);
+}
+g493.state=v494;
+g493.x=v495;
+g493.y=v496;
+g493.z=v497;
+g493.w=v498;
+g493.buffer=v499;
+g493.size=v500;
+g493.normalized=v501;
+g493.type=v502;
+g493.offset=v503;
+g493.stride=v504;
+g493.divisor=v505;
+if(v507){
+v8.destroyStream(v513);
+}
+g520.state=v521;
+g520.x=v522;
+g520.y=v523;
+g520.z=v524;
+g520.w=v525;
+g520.buffer=v526;
+g520.size=v527;
+g520.normalized=v528;
+g520.type=v529;
+g520.offset=v530;
+g520.stride=v531;
+g520.divisor=v532;
+if(v534){
+v8.destroyStream(v540);
+}
+g547.state=v548;
+g547.x=v549;
+g547.y=v550;
+g547.z=v551;
+g547.w=v552;
+g547.buffer=v553;
+g547.size=v554;
+g547.normalized=v555;
+g547.type=v556;
+g547.offset=v557;
+g547.stride=v558;
+g547.divisor=v559;
+if(v561){
+v8.destroyStream(v567);
+}
+g574.state=v575;
+g574.x=v576;
+g574.y=v577;
+g574.z=v578;
+g574.w=v579;
+g574.buffer=v580;
+g574.size=v581;
+g574.normalized=v582;
+g574.type=v583;
+g574.offset=v584;
+g574.stride=v585;
+g574.divisor=v586;
+if(v588){
+v8.destroyStream(v594);
+}
+g601.state=v602;
+g601.x=v603;
+g601.y=v604;
+g601.z=v605;
+g601.w=v606;
+g601.buffer=v607;
+g601.size=v608;
+g601.normalized=v609;
+g601.type=v610;
+g601.offset=v611;
+g601.stride=v612;
+g601.divisor=v613;
+if(v615){
+v8.destroyStream(v621);
+}
+g628.state=v629;
+g628.x=v630;
+g628.y=v631;
+g628.z=v632;
+g628.w=v633;
+g628.buffer=v634;
+g628.size=v635;
+g628.normalized=v636;
+g628.type=v637;
+g628.offset=v638;
+g628.stride=v639;
+g628.divisor=v640;
+v9.vert=v642;
+v9.frag=v644;
+v5.dirty=true;
+}
+,"batch":function(a0,a1){
+var v645,v646,v685,v686,v687,v688,v689;
+v645=v14.angle_instanced_arrays;
+v646=v13.next;
+if(v646!==v13.cur){
+if(v646){
+v1.bindFramebuffer(36160,v646.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v646;
+}
+if(v5.dirty){
+var v647,v648,v649,v650,v651,v652,v653,v654,v655,v656,v657,v658,v659,v660,v661,v662,v663,v664,v665,v666,v667,v668,v669,v670,v671,v672,v673,v674,v675,v676,v677,v678,v679,v680;
+v647=v4.dither;
+if(v647!==v5.dither){
+if(v647){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v647;
+}
+v648=v19[0];
+v649=v19[1];
+if(v648!==v20[0]||v649!==v20[1]){
+v1.blendEquationSeparate(v648,v649);
+v20[0]=v648;
+v20[1]=v649;
+}
+v650=v4.depth_func;
+if(v650!==v5.depth_func){
+v1.depthFunc(v650);
+v5.depth_func=v650;
+}
+v651=v23[0];
+v652=v23[1];
+if(v651!==v24[0]||v652!==v24[1]){
+v1.depthRange(v651,v652);
+v24[0]=v651;
+v24[1]=v652;
+}
+v653=v4.depth_mask;
+if(v653!==v5.depth_mask){
+v1.depthMask(v653);
+v5.depth_mask=v653;
+}
+v654=v25[0];
+v655=v25[1];
+v656=v25[2];
+v657=v25[3];
+if(v654!==v26[0]||v655!==v26[1]||v656!==v26[2]||v657!==v26[3]){
+v1.colorMask(v654,v655,v656,v657);
+v26[0]=v654;
+v26[1]=v655;
+v26[2]=v656;
+v26[3]=v657;
+}
+v658=v4.cull_enable;
+if(v658!==v5.cull_enable){
+if(v658){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v658;
+}
+v659=v4.cull_face;
+if(v659!==v5.cull_face){
+v1.cullFace(v659);
+v5.cull_face=v659;
+}
+v660=v4.frontFace;
+if(v660!==v5.frontFace){
+v1.frontFace(v660);
+v5.frontFace=v660;
+}
+v661=v4.lineWidth;
+if(v661!==v5.lineWidth){
+v1.lineWidth(v661);
+v5.lineWidth=v661;
+}
+v662=v4.polygonOffset_enable;
+if(v662!==v5.polygonOffset_enable){
+if(v662){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v662;
+}
+v663=v27[0];
+v664=v27[1];
+if(v663!==v28[0]||v664!==v28[1]){
+v1.polygonOffset(v663,v664);
+v28[0]=v663;
+v28[1]=v664;
+}
+v665=v4.sample_alpha;
+if(v665!==v5.sample_alpha){
+if(v665){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v665;
+}
+v666=v4.sample_enable;
+if(v666!==v5.sample_enable){
+if(v666){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v666;
+}
+v667=v29[0];
+v668=v29[1];
+if(v667!==v30[0]||v668!==v30[1]){
+v1.sampleCoverage(v667,v668);
+v30[0]=v667;
+v30[1]=v668;
+}
+v669=v4.stencil_mask;
+if(v669!==v5.stencil_mask){
+v1.stencilMask(v669);
+v5.stencil_mask=v669;
+}
+v670=v31[0];
+v671=v31[1];
+v672=v31[2];
+if(v670!==v32[0]||v671!==v32[1]||v672!==v32[2]){
+v1.stencilFunc(v670,v671,v672);
+v32[0]=v670;
+v32[1]=v671;
+v32[2]=v672;
+}
+v673=v33[0];
+v674=v33[1];
+v675=v33[2];
+v676=v33[3];
+if(v673!==v34[0]||v674!==v34[1]||v675!==v34[2]||v676!==v34[3]){
+v1.stencilOpSeparate(v673,v674,v675,v676);
+v34[0]=v673;
+v34[1]=v674;
+v34[2]=v675;
+v34[3]=v676;
+}
+v677=v35[0];
+v678=v35[1];
+v679=v35[2];
+v680=v35[3];
+if(v677!==v36[0]||v678!==v36[1]||v679!==v36[2]||v680!==v36[3]){
+v1.stencilOpSeparate(v677,v678,v679,v680);
+v36[0]=v677;
+v36[1]=v678;
+v36[2]=v679;
+v36[3]=v680;
+}
+}
+v1.blendColor(0,0,0,1);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=1;
+if(g681){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g681;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g682){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=g682;
+if(g683){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g683;
+if(g684){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g684;
+v685=v5.profile;
+if(v685){
+v686=performance.now();
+g48.count+=a1;
+}
+v1.useProgram(g103.program);
+v687=v14.angle_instanced_arrays;
+var v891;
+v11.setVAO(null);
+v1.uniform1i(g276.location,false);
+v1.uniform1i(g287.location,g288.bind());
+v891=v6.instances;
+for(v688=0;
+v688<a1;
+++v688){
+v689=a0[v688];
+var v690,v691,v692,v693,v694,v695,v696,v697,v698,v699,v700,v701,v702,v703,v704,v705,v706,v707,v708,v709,v710,v711,v712,v713,v714,v715,v716,v717,v718,v719,v720,v721,v722,v723,v724,v725,v726,v727,v728,v729,v730,v731,v732,v733,v734,v735,v736,v737,v738,v739,v740,v741,v742,v743,v744,v745,v746,v747,v748,v749,v750,v751,v752,v753,v754,v755,v756,v757,v758,v759,v760,v761,v762,v763,v764,v765,v766,v767,v768,v769,v770,v771,v772,v773,v774,v775,v776,v777,v778,v779,v780,v781,v782,v783,v784,v785,v786,v787,v788,v789,v790,v791,v792,v793,v794,v795,v796,v797,v798,v799,v800,v801,v802,v803,v804,v805,v806,v807,v808,v809,v810,v811,v812,v813,v814,v815,v816,v817,v818,v819,v820,v821,v822,v823,v824,v825,v826,v827,v828,v829,v830,v831,v832,v833,v834,v835,v836,v837,v838,v839,v840,v841,v842,v843,v844,v845,v846,v847,v848,v849,v850,v851,v852,v853,v854,v855,v856,v857,v858,v859,v860,v861,v862,v863,v864,v865,v866,v867,v868,v869,v870,v871,v872,v873,v874,v875,v876,v877,v878,v879,v880,v881,v882,v883,v884,v885,v886,v887,v888,v889,v890;
+v690=v689["viewport"];
+v691=v690.x|0;
+v692=v690.y|0;
+v693="width" in v690?v690.width|0:(v2.framebufferWidth-v691);
+v694="height" in v690?v690.height|0:(v2.framebufferHeight-v692);
+v695=v2.viewportWidth;
+v2.viewportWidth=v693;
+v696=v2.viewportHeight;
+v2.viewportHeight=v694;
+v1.viewport(v691,v692,v693,v694);
+v40[0]=v691;
+v40[1]=v692;
+v40[2]=v693;
+v40[3]=v694;
+v697=v689["viewport"];
+v698=v697.x|0;
+v699=v697.y|0;
+v700="width" in v697?v697.width|0:(v2.framebufferWidth-v698);
+v701="height" in v697?v697.height|0:(v2.framebufferHeight-v699);
+v1.scissor(v698,v699,v700,v701);
+v38[0]=v698;
+v38[1]=v699;
+v38[2]=v700;
+v38[3]=v701;
+v702=g105.call(this,v2,v689,v688);
+v703=false;
+v704=1;
+v705=0;
+v706=0;
+v707=0;
+v708=0;
+v709=null;
+v710=0;
+v711=false;
+v712=5126;
+v713=0;
+v714=0;
+v715=0;
+if(v16(v702)){
+v703=true;
+v709=v8.createStream(34962,v702);
+v712=v709.dtype;
+}
+else{
+v709=v8.getBuffer(v702);
+if(v709){
+v712=v709.dtype;
+}
+else if("constant" in v702){
+v704=2;
+if(typeof v702.constant === "number"){
+v705=v702.constant;
+v706=v707=v708=0;
+}
+else{
+v705=v702.constant.length>0?v702.constant[0]:0;
+v706=v702.constant.length>1?v702.constant[1]:0;
+v707=v702.constant.length>2?v702.constant[2]:0;
+v708=v702.constant.length>3?v702.constant[3]:0;
+}
+}
+else{
+if(v16(v702.buffer)){
+v709=v8.createStream(34962,v702.buffer);
+}
+else{
+v709=v8.getBuffer(v702.buffer);
+}
+v712="type" in v702?v46[v702.type]:v709.dtype;
+v711=!!v702.normalized;
+v710=v702.size|0;
+v713=v702.offset|0;
+v714=v702.stride|0;
+v715=v702.divisor|0;
+}
+}
+v716=g120.location;
+v717=v10[v716];
+if(v704===1){
+if(!v717.buffer){
+v1.enableVertexAttribArray(v716);
+}
+v718=v710||4;
+if(v717.type!==v712||v717.size!==v718||v717.buffer!==v709||v717.normalized!==v711||v717.offset!==v713||v717.stride!==v714){
+v1.bindBuffer(34962,v709.buffer);
+v1.vertexAttribPointer(v716,v718,v712,v711,v714,v713);
+v717.type=v712;
+v717.size=v718;
+v717.buffer=v709;
+v717.normalized=v711;
+v717.offset=v713;
+v717.stride=v714;
+}
+if(v717.divisor!==v715){
+v687.vertexAttribDivisorANGLE(v716,v715);
+v717.divisor=v715;
+}
+}
+else{
+if(v717.buffer){
+v1.disableVertexAttribArray(v716);
+v717.buffer=null;
+}
+if(v717.x!==v705||v717.y!==v706||v717.z!==v707||v717.w!==v708){
+v1.vertexAttrib4f(v716,v705,v706,v707,v708);
+v717.x=v705;
+v717.y=v706;
+v717.z=v707;
+v717.w=v708;
+}
+}
+v719=g124.call(this,v2,v689,v688);
+v720=false;
+v721=1;
+v722=0;
+v723=0;
+v724=0;
+v725=0;
+v726=null;
+v727=0;
+v728=false;
+v729=5126;
+v730=0;
+v731=0;
+v732=0;
+if(v16(v719)){
+v720=true;
+v726=v8.createStream(34962,v719);
+v729=v726.dtype;
+}
+else{
+v726=v8.getBuffer(v719);
+if(v726){
+v729=v726.dtype;
+}
+else if("constant" in v719){
+v721=2;
+if(typeof v719.constant === "number"){
+v722=v719.constant;
+v723=v724=v725=0;
+}
+else{
+v722=v719.constant.length>0?v719.constant[0]:0;
+v723=v719.constant.length>1?v719.constant[1]:0;
+v724=v719.constant.length>2?v719.constant[2]:0;
+v725=v719.constant.length>3?v719.constant[3]:0;
+}
+}
+else{
+if(v16(v719.buffer)){
+v726=v8.createStream(34962,v719.buffer);
+}
+else{
+v726=v8.getBuffer(v719.buffer);
+}
+v729="type" in v719?v46[v719.type]:v726.dtype;
+v728=!!v719.normalized;
+v727=v719.size|0;
+v730=v719.offset|0;
+v731=v719.stride|0;
+v732=v719.divisor|0;
+}
+}
+v733=g139.location;
+v734=v10[v733];
+if(v721===1){
+if(!v734.buffer){
+v1.enableVertexAttribArray(v733);
+}
+v735=v727||1;
+if(v734.type!==v729||v734.size!==v735||v734.buffer!==v726||v734.normalized!==v728||v734.offset!==v730||v734.stride!==v731){
+v1.bindBuffer(34962,v726.buffer);
+v1.vertexAttribPointer(v733,v735,v729,v728,v731,v730);
+v734.type=v729;
+v734.size=v735;
+v734.buffer=v726;
+v734.normalized=v728;
+v734.offset=v730;
+v734.stride=v731;
+}
+if(v734.divisor!==v732){
+v687.vertexAttribDivisorANGLE(v733,v732);
+v734.divisor=v732;
+}
+}
+else{
+if(v734.buffer){
+v1.disableVertexAttribArray(v733);
+v734.buffer=null;
+}
+if(v734.x!==v722||v734.y!==v723||v734.z!==v724||v734.w!==v725){
+v1.vertexAttrib4f(v733,v722,v723,v724,v725);
+v734.x=v722;
+v734.y=v723;
+v734.z=v724;
+v734.w=v725;
+}
+}
+v736=g143.call(this,v2,v689,v688);
+v737=false;
+v738=1;
+v739=0;
+v740=0;
+v741=0;
+v742=0;
+v743=null;
+v744=0;
+v745=false;
+v746=5126;
+v747=0;
+v748=0;
+v749=0;
+if(v16(v736)){
+v737=true;
+v743=v8.createStream(34962,v736);
+v746=v743.dtype;
+}
+else{
+v743=v8.getBuffer(v736);
+if(v743){
+v746=v743.dtype;
+}
+else if("constant" in v736){
+v738=2;
+if(typeof v736.constant === "number"){
+v739=v736.constant;
+v740=v741=v742=0;
+}
+else{
+v739=v736.constant.length>0?v736.constant[0]:0;
+v740=v736.constant.length>1?v736.constant[1]:0;
+v741=v736.constant.length>2?v736.constant[2]:0;
+v742=v736.constant.length>3?v736.constant[3]:0;
+}
+}
+else{
+if(v16(v736.buffer)){
+v743=v8.createStream(34962,v736.buffer);
+}
+else{
+v743=v8.getBuffer(v736.buffer);
+}
+v746="type" in v736?v46[v736.type]:v743.dtype;
+v745=!!v736.normalized;
+v744=v736.size|0;
+v747=v736.offset|0;
+v748=v736.stride|0;
+v749=v736.divisor|0;
+}
+}
+v750=g158.location;
+v751=v10[v750];
+if(v738===1){
+if(!v751.buffer){
+v1.enableVertexAttribArray(v750);
+}
+v752=v744||4;
+if(v751.type!==v746||v751.size!==v752||v751.buffer!==v743||v751.normalized!==v745||v751.offset!==v747||v751.stride!==v748){
+v1.bindBuffer(34962,v743.buffer);
+v1.vertexAttribPointer(v750,v752,v746,v745,v748,v747);
+v751.type=v746;
+v751.size=v752;
+v751.buffer=v743;
+v751.normalized=v745;
+v751.offset=v747;
+v751.stride=v748;
+}
+if(v751.divisor!==v749){
+v687.vertexAttribDivisorANGLE(v750,v749);
+v751.divisor=v749;
+}
+}
+else{
+if(v751.buffer){
+v1.disableVertexAttribArray(v750);
+v751.buffer=null;
+}
+if(v751.x!==v739||v751.y!==v740||v751.z!==v741||v751.w!==v742){
+v1.vertexAttrib4f(v750,v739,v740,v741,v742);
+v751.x=v739;
+v751.y=v740;
+v751.z=v741;
+v751.w=v742;
+}
+}
+v753=g162.call(this,v2,v689,v688);
+v754=false;
+v755=1;
+v756=0;
+v757=0;
+v758=0;
+v759=0;
+v760=null;
+v761=0;
+v762=false;
+v763=5126;
+v764=0;
+v765=0;
+v766=0;
+if(v16(v753)){
+v754=true;
+v760=v8.createStream(34962,v753);
+v763=v760.dtype;
+}
+else{
+v760=v8.getBuffer(v753);
+if(v760){
+v763=v760.dtype;
+}
+else if("constant" in v753){
+v755=2;
+if(typeof v753.constant === "number"){
+v756=v753.constant;
+v757=v758=v759=0;
+}
+else{
+v756=v753.constant.length>0?v753.constant[0]:0;
+v757=v753.constant.length>1?v753.constant[1]:0;
+v758=v753.constant.length>2?v753.constant[2]:0;
+v759=v753.constant.length>3?v753.constant[3]:0;
+}
+}
+else{
+if(v16(v753.buffer)){
+v760=v8.createStream(34962,v753.buffer);
+}
+else{
+v760=v8.getBuffer(v753.buffer);
+}
+v763="type" in v753?v46[v753.type]:v760.dtype;
+v762=!!v753.normalized;
+v761=v753.size|0;
+v764=v753.offset|0;
+v765=v753.stride|0;
+v766=v753.divisor|0;
+}
+}
+v767=g177.location;
+v768=v10[v767];
+if(v755===1){
+if(!v768.buffer){
+v1.enableVertexAttribArray(v767);
+}
+v769=v761||1;
+if(v768.type!==v763||v768.size!==v769||v768.buffer!==v760||v768.normalized!==v762||v768.offset!==v764||v768.stride!==v765){
+v1.bindBuffer(34962,v760.buffer);
+v1.vertexAttribPointer(v767,v769,v763,v762,v765,v764);
+v768.type=v763;
+v768.size=v769;
+v768.buffer=v760;
+v768.normalized=v762;
+v768.offset=v764;
+v768.stride=v765;
+}
+if(v768.divisor!==v766){
+v687.vertexAttribDivisorANGLE(v767,v766);
+v768.divisor=v766;
+}
+}
+else{
+if(v768.buffer){
+v1.disableVertexAttribArray(v767);
+v768.buffer=null;
+}
+if(v768.x!==v756||v768.y!==v757||v768.z!==v758||v768.w!==v759){
+v1.vertexAttrib4f(v767,v756,v757,v758,v759);
+v768.x=v756;
+v768.y=v757;
+v768.z=v758;
+v768.w=v759;
+}
+}
+v770=g181.call(this,v2,v689,v688);
+v771=false;
+v772=1;
+v773=0;
+v774=0;
+v775=0;
+v776=0;
+v777=null;
+v778=0;
+v779=false;
+v780=5126;
+v781=0;
+v782=0;
+v783=0;
+if(v16(v770)){
+v771=true;
+v777=v8.createStream(34962,v770);
+v780=v777.dtype;
+}
+else{
+v777=v8.getBuffer(v770);
+if(v777){
+v780=v777.dtype;
+}
+else if("constant" in v770){
+v772=2;
+if(typeof v770.constant === "number"){
+v773=v770.constant;
+v774=v775=v776=0;
+}
+else{
+v773=v770.constant.length>0?v770.constant[0]:0;
+v774=v770.constant.length>1?v770.constant[1]:0;
+v775=v770.constant.length>2?v770.constant[2]:0;
+v776=v770.constant.length>3?v770.constant[3]:0;
+}
+}
+else{
+if(v16(v770.buffer)){
+v777=v8.createStream(34962,v770.buffer);
+}
+else{
+v777=v8.getBuffer(v770.buffer);
+}
+v780="type" in v770?v46[v770.type]:v777.dtype;
+v779=!!v770.normalized;
+v778=v770.size|0;
+v781=v770.offset|0;
+v782=v770.stride|0;
+v783=v770.divisor|0;
+}
+}
+v784=g196.location;
+v785=v10[v784];
+if(v772===1){
+if(!v785.buffer){
+v1.enableVertexAttribArray(v784);
+}
+v786=v778||1;
+if(v785.type!==v780||v785.size!==v786||v785.buffer!==v777||v785.normalized!==v779||v785.offset!==v781||v785.stride!==v782){
+v1.bindBuffer(34962,v777.buffer);
+v1.vertexAttribPointer(v784,v786,v780,v779,v782,v781);
+v785.type=v780;
+v785.size=v786;
+v785.buffer=v777;
+v785.normalized=v779;
+v785.offset=v781;
+v785.stride=v782;
+}
+if(v785.divisor!==v783){
+v687.vertexAttribDivisorANGLE(v784,v783);
+v785.divisor=v783;
+}
+}
+else{
+if(v785.buffer){
+v1.disableVertexAttribArray(v784);
+v785.buffer=null;
+}
+if(v785.x!==v773||v785.y!==v774||v785.z!==v775||v785.w!==v776){
+v1.vertexAttrib4f(v784,v773,v774,v775,v776);
+v785.x=v773;
+v785.y=v774;
+v785.z=v775;
+v785.w=v776;
+}
+}
+v787=g200.call(this,v2,v689,v688);
+v788=false;
+v789=1;
+v790=0;
+v791=0;
+v792=0;
+v793=0;
+v794=null;
+v795=0;
+v796=false;
+v797=5126;
+v798=0;
+v799=0;
+v800=0;
+if(v16(v787)){
+v788=true;
+v794=v8.createStream(34962,v787);
+v797=v794.dtype;
+}
+else{
+v794=v8.getBuffer(v787);
+if(v794){
+v797=v794.dtype;
+}
+else if("constant" in v787){
+v789=2;
+if(typeof v787.constant === "number"){
+v790=v787.constant;
+v791=v792=v793=0;
+}
+else{
+v790=v787.constant.length>0?v787.constant[0]:0;
+v791=v787.constant.length>1?v787.constant[1]:0;
+v792=v787.constant.length>2?v787.constant[2]:0;
+v793=v787.constant.length>3?v787.constant[3]:0;
+}
+}
+else{
+if(v16(v787.buffer)){
+v794=v8.createStream(34962,v787.buffer);
+}
+else{
+v794=v8.getBuffer(v787.buffer);
+}
+v797="type" in v787?v46[v787.type]:v794.dtype;
+v796=!!v787.normalized;
+v795=v787.size|0;
+v798=v787.offset|0;
+v799=v787.stride|0;
+v800=v787.divisor|0;
+}
+}
+v801=g215.location;
+v802=v10[v801];
+if(v789===1){
+if(!v802.buffer){
+v1.enableVertexAttribArray(v801);
+}
+v803=v795||1;
+if(v802.type!==v797||v802.size!==v803||v802.buffer!==v794||v802.normalized!==v796||v802.offset!==v798||v802.stride!==v799){
+v1.bindBuffer(34962,v794.buffer);
+v1.vertexAttribPointer(v801,v803,v797,v796,v799,v798);
+v802.type=v797;
+v802.size=v803;
+v802.buffer=v794;
+v802.normalized=v796;
+v802.offset=v798;
+v802.stride=v799;
+}
+if(v802.divisor!==v800){
+v687.vertexAttribDivisorANGLE(v801,v800);
+v802.divisor=v800;
+}
+}
+else{
+if(v802.buffer){
+v1.disableVertexAttribArray(v801);
+v802.buffer=null;
+}
+if(v802.x!==v790||v802.y!==v791||v802.z!==v792||v802.w!==v793){
+v1.vertexAttrib4f(v801,v790,v791,v792,v793);
+v802.x=v790;
+v802.y=v791;
+v802.z=v792;
+v802.w=v793;
+}
+}
+v804=g219.call(this,v2,v689,v688);
+v805=false;
+v806=1;
+v807=0;
+v808=0;
+v809=0;
+v810=0;
+v811=null;
+v812=0;
+v813=false;
+v814=5126;
+v815=0;
+v816=0;
+v817=0;
+if(v16(v804)){
+v805=true;
+v811=v8.createStream(34962,v804);
+v814=v811.dtype;
+}
+else{
+v811=v8.getBuffer(v804);
+if(v811){
+v814=v811.dtype;
+}
+else if("constant" in v804){
+v806=2;
+if(typeof v804.constant === "number"){
+v807=v804.constant;
+v808=v809=v810=0;
+}
+else{
+v807=v804.constant.length>0?v804.constant[0]:0;
+v808=v804.constant.length>1?v804.constant[1]:0;
+v809=v804.constant.length>2?v804.constant[2]:0;
+v810=v804.constant.length>3?v804.constant[3]:0;
+}
+}
+else{
+if(v16(v804.buffer)){
+v811=v8.createStream(34962,v804.buffer);
+}
+else{
+v811=v8.getBuffer(v804.buffer);
+}
+v814="type" in v804?v46[v804.type]:v811.dtype;
+v813=!!v804.normalized;
+v812=v804.size|0;
+v815=v804.offset|0;
+v816=v804.stride|0;
+v817=v804.divisor|0;
+}
+}
+v818=g234.location;
+v819=v10[v818];
+if(v806===1){
+if(!v819.buffer){
+v1.enableVertexAttribArray(v818);
+}
+v820=v812||1;
+if(v819.type!==v814||v819.size!==v820||v819.buffer!==v811||v819.normalized!==v813||v819.offset!==v815||v819.stride!==v816){
+v1.bindBuffer(34962,v811.buffer);
+v1.vertexAttribPointer(v818,v820,v814,v813,v816,v815);
+v819.type=v814;
+v819.size=v820;
+v819.buffer=v811;
+v819.normalized=v813;
+v819.offset=v815;
+v819.stride=v816;
+}
+if(v819.divisor!==v817){
+v687.vertexAttribDivisorANGLE(v818,v817);
+v819.divisor=v817;
+}
+}
+else{
+if(v819.buffer){
+v1.disableVertexAttribArray(v818);
+v819.buffer=null;
+}
+if(v819.x!==v807||v819.y!==v808||v819.z!==v809||v819.w!==v810){
+v1.vertexAttrib4f(v818,v807,v808,v809,v810);
+v819.x=v807;
+v819.y=v808;
+v819.z=v809;
+v819.w=v810;
+}
+}
+v821=g238.call(this,v2,v689,v688);
+v822=false;
+v823=1;
+v824=0;
+v825=0;
+v826=0;
+v827=0;
+v828=null;
+v829=0;
+v830=false;
+v831=5126;
+v832=0;
+v833=0;
+v834=0;
+if(v16(v821)){
+v822=true;
+v828=v8.createStream(34962,v821);
+v831=v828.dtype;
+}
+else{
+v828=v8.getBuffer(v821);
+if(v828){
+v831=v828.dtype;
+}
+else if("constant" in v821){
+v823=2;
+if(typeof v821.constant === "number"){
+v824=v821.constant;
+v825=v826=v827=0;
+}
+else{
+v824=v821.constant.length>0?v821.constant[0]:0;
+v825=v821.constant.length>1?v821.constant[1]:0;
+v826=v821.constant.length>2?v821.constant[2]:0;
+v827=v821.constant.length>3?v821.constant[3]:0;
+}
+}
+else{
+if(v16(v821.buffer)){
+v828=v8.createStream(34962,v821.buffer);
+}
+else{
+v828=v8.getBuffer(v821.buffer);
+}
+v831="type" in v821?v46[v821.type]:v828.dtype;
+v830=!!v821.normalized;
+v829=v821.size|0;
+v832=v821.offset|0;
+v833=v821.stride|0;
+v834=v821.divisor|0;
+}
+}
+v835=g253.location;
+v836=v10[v835];
+if(v823===1){
+if(!v836.buffer){
+v1.enableVertexAttribArray(v835);
+}
+v837=v829||1;
+if(v836.type!==v831||v836.size!==v837||v836.buffer!==v828||v836.normalized!==v830||v836.offset!==v832||v836.stride!==v833){
+v1.bindBuffer(34962,v828.buffer);
+v1.vertexAttribPointer(v835,v837,v831,v830,v833,v832);
+v836.type=v831;
+v836.size=v837;
+v836.buffer=v828;
+v836.normalized=v830;
+v836.offset=v832;
+v836.stride=v833;
+}
+if(v836.divisor!==v834){
+v687.vertexAttribDivisorANGLE(v835,v834);
+v836.divisor=v834;
+}
+}
+else{
+if(v836.buffer){
+v1.disableVertexAttribArray(v835);
+v836.buffer=null;
+}
+if(v836.x!==v824||v836.y!==v825||v836.z!==v826||v836.w!==v827){
+v1.vertexAttrib4f(v835,v824,v825,v826,v827);
+v836.x=v824;
+v836.y=v825;
+v836.z=v826;
+v836.w=v827;
+}
+}
+v838=g257.call(this,v2,v689,v688);
+v839=false;
+v840=1;
+v841=0;
+v842=0;
+v843=0;
+v844=0;
+v845=null;
+v846=0;
+v847=false;
+v848=5126;
+v849=0;
+v850=0;
+v851=0;
+if(v16(v838)){
+v839=true;
+v845=v8.createStream(34962,v838);
+v848=v845.dtype;
+}
+else{
+v845=v8.getBuffer(v838);
+if(v845){
+v848=v845.dtype;
+}
+else if("constant" in v838){
+v840=2;
+if(typeof v838.constant === "number"){
+v841=v838.constant;
+v842=v843=v844=0;
+}
+else{
+v841=v838.constant.length>0?v838.constant[0]:0;
+v842=v838.constant.length>1?v838.constant[1]:0;
+v843=v838.constant.length>2?v838.constant[2]:0;
+v844=v838.constant.length>3?v838.constant[3]:0;
+}
+}
+else{
+if(v16(v838.buffer)){
+v845=v8.createStream(34962,v838.buffer);
+}
+else{
+v845=v8.getBuffer(v838.buffer);
+}
+v848="type" in v838?v46[v838.type]:v845.dtype;
+v847=!!v838.normalized;
+v846=v838.size|0;
+v849=v838.offset|0;
+v850=v838.stride|0;
+v851=v838.divisor|0;
+}
+}
+v852=g272.location;
+v853=v10[v852];
+if(v840===1){
+if(!v853.buffer){
+v1.enableVertexAttribArray(v852);
+}
+v854=v846||1;
+if(v853.type!==v848||v853.size!==v854||v853.buffer!==v845||v853.normalized!==v847||v853.offset!==v849||v853.stride!==v850){
+v1.bindBuffer(34962,v845.buffer);
+v1.vertexAttribPointer(v852,v854,v848,v847,v850,v849);
+v853.type=v848;
+v853.size=v854;
+v853.buffer=v845;
+v853.normalized=v847;
+v853.offset=v849;
+v853.stride=v850;
+}
+if(v853.divisor!==v851){
+v687.vertexAttribDivisorANGLE(v852,v851);
+v853.divisor=v851;
+}
+}
+else{
+if(v853.buffer){
+v1.disableVertexAttribArray(v852);
+v853.buffer=null;
+}
+if(v853.x!==v841||v853.y!==v842||v853.z!==v843||v853.w!==v844){
+v1.vertexAttrib4f(v852,v841,v842,v843,v844);
+v853.x=v841;
+v853.y=v842;
+v853.z=v843;
+v853.w=v844;
+}
+}
+v855=v689["markerTexture"];
+if(v855&&v855._reglType==="framebuffer"){
+v855=v855.color[0];
+}
+v856=v855._texture;
+v1.uniform1i(g277.location,v856.bind());
+v857=v689["opacity"];
+if(!v688||v858!==v857){
+v858=v857;
+v1.uniform1f(g280.location,v857);
+}
+v859=g283.call(this,v2,v689,v688);
+v860=v859[0];
+v862=v859[1];
+if(!v688||v861!==v860||v863!==v862){
+v861=v860;
+v863=v862;
+v1.uniform2f(g282.location,v860,v862);
+}
+v864=v2["pixelRatio"];
+if(!v688||v865!==v864){
+v865=v864;
+v1.uniform1f(g289.location,v864);
+}
+v866=v689["scale"];
+v867=v866[0];
+v869=v866[1];
+if(!v688||v868!==v867||v870!==v869){
+v868=v867;
+v870=v869;
+v1.uniform2f(g291.location,v867,v869);
+}
+v871=v689["scaleFract"];
+v872=v871[0];
+v874=v871[1];
+if(!v688||v873!==v872||v875!==v874){
+v873=v872;
+v875=v874;
+v1.uniform2f(g295.location,v872,v874);
+}
+v876=v689["translate"];
+v877=v876[0];
+v879=v876[1];
+if(!v688||v878!==v877||v880!==v879){
+v878=v877;
+v880=v879;
+v1.uniform2f(g299.location,v877,v879);
+}
+v881=v689["translateFract"];
+v882=v881[0];
+v884=v881[1];
+if(!v688||v883!==v882||v885!==v884){
+v883=v882;
+v885=v884;
+v1.uniform2f(g303.location,v882,v884);
+}
+v886=v689["elements"];
+v887=null;
+v888=v16(v886);
+if(v888){
+v887=v7.createStream(v886);
+}
+else{
+v887=v7.getElements(v886);
+}
+if(v887)v1.bindBuffer(34963,v887.buffer.buffer);
+v889=v689["offset"];
+v890=v689["count"];
+if(v890){
+if(v891>0){
+if(v887){
+v687.drawElementsInstancedANGLE(0,v890,v887.type,v889<<((v887.type-5121)>>1),v891);
+}
+else{
+v687.drawArraysInstancedANGLE(0,v889,v890,v891);
+}
+}
+else if(v891<0){
+if(v887){
+v1.drawElements(0,v890,v887.type,v889<<((v887.type-5121)>>1));
+}
+else{
+v1.drawArrays(0,v889,v890);
+}
+}
+v2.viewportWidth=v695;
+v2.viewportHeight=v696;
+if(v703){
+v8.destroyStream(v709);
+}
+if(v720){
+v8.destroyStream(v726);
+}
+if(v737){
+v8.destroyStream(v743);
+}
+if(v754){
+v8.destroyStream(v760);
+}
+if(v771){
+v8.destroyStream(v777);
+}
+if(v788){
+v8.destroyStream(v794);
+}
+if(v805){
+v8.destroyStream(v811);
+}
+if(v822){
+v8.destroyStream(v828);
+}
+if(v839){
+v8.destroyStream(v845);
+}
+v856.unbind();
+if(v888){
+v7.destroyStream(v887);
+}
+}
+}
+g288.unbind();
+v5.dirty=true;
+v11.setVAO(null);
+if(v685){
+g48.cpuTime+=performance.now()-v686;
+}
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/f9448a214a3e3cd439b767559aa71a4d1ccf5a8f39b8b756973e71acd33ff956 b/src/generated/regl-codegen/f9448a214a3e3cd439b767559aa71a4d1ccf5a8f39b8b756973e71acd33ff956
deleted file mode 100644
index 3d04938a941..00000000000
--- a/src/generated/regl-codegen/f9448a214a3e3cd439b767559aa71a4d1ccf5a8f39b8b756973e71acd33ff956
+++ /dev/null
@@ -1,2755 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g92,g99,g100,g101,g102,g104,g106,g111,g112,g115,g118,g132,g137,g151,g156,g170,g175,g189,g193,g194,g197,g201,g215,g220,g234,g238,g240,g241,g243,g245,g247,g248,g250,g251,g252,g254,g255,g257,g258,g260,g263,g265,g266,g268,g271,g272,g274,g292,g294,g296,g298,g300,g302,g304,g306,g308,g310,g312,g314,g316,g329,g331,g335,g337,g341,g344,g347,g350,g353,g356,g359,g362,g365,g368,g371,g374,g377,g380,g383,g385,g398,g425,g452,g479,g506,g533,g560,g573,g575,g609,g610,g611,g612,g613
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v53,v54,v55,v56,v57,v58;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v53={
-}
-;
-v53.stride=4;
-v53.offset=0;
-v53.divisor=1;
-v54={
-}
-;
-v54.stride=4;
-v54.offset=4;
-v54.divisor=1;
-v55={
-}
-;
-v55.stride=8;
-v55.offset=0;
-v55.divisor=1;
-v56={
-}
-;
-v56.stride=8;
-v56.offset=8;
-v56.divisor=1;
-v57={
-}
-;
-v57.stride=8;
-v57.offset=16;
-v57.divisor=1;
-v58={
-}
-;
-v58.stride=8;
-v58.offset=24;
-v58.divisor=1;
-return {
-"draw":function(a0){
-var v59,v60,v91,v93,v94,v95,v96,v97,v98,v103,v105,v107,v108,v109,v110,v113,v114,v116,v117,v119,v120,v121,v122,v123,v124,v125,v126,v127,v128,v129,v130,v131,v133,v134,v135,v136,v138,v139,v140,v141,v142,v143,v144,v145,v146,v147,v148,v149,v150,v152,v153,v154,v155,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v171,v172,v173,v174,v176,v177,v178,v179,v180,v181,v182,v183,v184,v185,v186,v187,v188,v190,v191,v192,v195,v196,v198,v199,v200,v202,v203,v204,v205,v206,v207,v208,v209,v210,v211,v212,v213,v214,v216,v217,v218,v219,v221,v222,v223,v224,v225,v226,v227,v228,v229,v230,v231,v232,v233,v235,v236,v237,v239,v242,v244,v246,v249,v253,v256,v259,v261,v262,v264,v267,v269,v270,v273,v275,v276,v277,v278,v279,v280;
-v59=v14.angle_instanced_arrays;
-v60=v13.next;
-if(v60!==v13.cur){
-if(v60){
-v1.bindFramebuffer(36160,v60.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v60;
-}
-if(v5.dirty){
-var v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90;
-v61=v4.dither;
-if(v61!==v5.dither){
-if(v61){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v61;
-}
-v62=v4.depth_func;
-if(v62!==v5.depth_func){
-v1.depthFunc(v62);
-v5.depth_func=v62;
-}
-v63=v26[0];
-v64=v26[1];
-if(v63!==v27[0]||v64!==v27[1]){
-v1.depthRange(v63,v64);
-v27[0]=v63;
-v27[1]=v64;
-}
-v65=v4.depth_mask;
-if(v65!==v5.depth_mask){
-v1.depthMask(v65);
-v5.depth_mask=v65;
-}
-v66=v28[0];
-v67=v28[1];
-v68=v28[2];
-v69=v28[3];
-if(v66!==v29[0]||v67!==v29[1]||v68!==v29[2]||v69!==v29[3]){
-v1.colorMask(v66,v67,v68,v69);
-v29[0]=v66;
-v29[1]=v67;
-v29[2]=v68;
-v29[3]=v69;
-}
-v70=v4.frontFace;
-if(v70!==v5.frontFace){
-v1.frontFace(v70);
-v5.frontFace=v70;
-}
-v71=v4.lineWidth;
-if(v71!==v5.lineWidth){
-v1.lineWidth(v71);
-v5.lineWidth=v71;
-}
-v72=v4.polygonOffset_enable;
-if(v72!==v5.polygonOffset_enable){
-if(v72){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v72;
-}
-v73=v30[0];
-v74=v30[1];
-if(v73!==v31[0]||v74!==v31[1]){
-v1.polygonOffset(v73,v74);
-v31[0]=v73;
-v31[1]=v74;
-}
-v75=v4.sample_alpha;
-if(v75!==v5.sample_alpha){
-if(v75){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v75;
-}
-v76=v4.sample_enable;
-if(v76!==v5.sample_enable){
-if(v76){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v76;
-}
-v77=v32[0];
-v78=v32[1];
-if(v77!==v33[0]||v78!==v33[1]){
-v1.sampleCoverage(v77,v78);
-v33[0]=v77;
-v33[1]=v78;
-}
-v79=v4.stencil_mask;
-if(v79!==v5.stencil_mask){
-v1.stencilMask(v79);
-v5.stencil_mask=v79;
-}
-v80=v34[0];
-v81=v34[1];
-v82=v34[2];
-if(v80!==v35[0]||v81!==v35[1]||v82!==v35[2]){
-v1.stencilFunc(v80,v81,v82);
-v35[0]=v80;
-v35[1]=v81;
-v35[2]=v82;
-}
-v83=v36[0];
-v84=v36[1];
-v85=v36[2];
-v86=v36[3];
-if(v83!==v37[0]||v84!==v37[1]||v85!==v37[2]||v86!==v37[3]){
-v1.stencilOpSeparate(v83,v84,v85,v86);
-v37[0]=v83;
-v37[1]=v84;
-v37[2]=v85;
-v37[3]=v86;
-}
-v87=v38[0];
-v88=v38[1];
-v89=v38[2];
-v90=v38[3];
-if(v87!==v39[0]||v88!==v39[1]||v89!==v39[2]||v90!==v39[3]){
-v1.stencilOpSeparate(v87,v88,v89,v90);
-v39[0]=v87;
-v39[1]=v88;
-v39[2]=v89;
-v39[3]=v90;
-}
-}
-v91=a0["viewport"];
-if(!(v91&&typeof v91==="object"))g18.commandRaise(g92,g19);
-v93=v91.x|0;
-v94=v91.y|0;
-v95="width" in v91?v91.width|0:(v2.framebufferWidth-v93);
-v96="height" in v91?v91.height|0:(v2.framebufferHeight-v94);
-if(!(v95>=0&&v96>=0))g18.commandRaise(g92,g19);
-v97=v2.viewportWidth;
-v2.viewportWidth=v95;
-v98=v2.viewportHeight;
-v2.viewportHeight=v96;
-v1.viewport(v93,v94,v95,v96);
-v43[0]=v93;
-v43[1]=v94;
-v43[2]=v95;
-v43[3]=v96;
-v1.blendColor(0,0,0,0);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=0;
-if(g99){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g99;
-v1.blendEquationSeparate(32774,32774);
-v23[0]=32774;
-v23[1]=32774;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g100){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=g100;
-v1.cullFace(g101);
-v5.cull_face=g101;
-v103=g102.call(this,v2,a0,0);
-if(!(typeof v103==="boolean"))g18.commandRaise(g104,g19);
-if(v103){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v103;
-v105=a0["viewport"];
-if(!(v105&&typeof v105==="object"))g18.commandRaise(g106,g19);
-v107=v105.x|0;
-v108=v105.y|0;
-v109="width" in v105?v105.width|0:(v2.framebufferWidth-v107);
-v110="height" in v105?v105.height|0:(v2.framebufferHeight-v108);
-if(!(v109>=0&&v110>=0))g18.commandRaise(g106,g19);
-v1.scissor(v107,v108,v109,v110);
-v41[0]=v107;
-v41[1]=v108;
-v41[2]=v109;
-v41[3]=v110;
-if(g111){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g111;
-if(g112){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g112;
-v113=v5.profile;
-if(v113){
-v114=performance.now();
-g52.count++;
-}
-v1.useProgram(g115.program);
-v116=v14.angle_instanced_arrays;
-v11.setVAO(null);
-v117=a0["colorBuffer"];
-v53.buffer=v117;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g118,g19);
-v119=false;
-v120=1;
-v121=0;
-v122=0;
-v123=0;
-v124=0;
-v125=null;
-v126=0;
-v127=false;
-v128=5126;
-v129=0;
-v130=0;
-v131=0;
-if(v16(v53)){
-v119=true;
-v125=v8.createStream(34962,v53);
-v128=v125.dtype;
-}
-else{
-v125=v8.getBuffer(v53);
-if(v125){
-v128=v125.dtype;
-}
-else if("constant" in v53){
-v120=2;
-if(typeof v53.constant === "number"){
-v121=v53.constant;
-v122=v123=v124=0;
-}
-else{
-v121=v53.constant.length>0?v53.constant[0]:0;
-v122=v53.constant.length>1?v53.constant[1]:0;
-v123=v53.constant.length>2?v53.constant[2]:0;
-v124=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v125=v8.createStream(34962,v53.buffer);
-}
-else{
-v125=v8.getBuffer(v53.buffer);
-}
-v128="type" in v53?v49[v53.type]:v125.dtype;
-v127=!!v53.normalized;
-v126=v53.size|0;
-v129=v53.offset|0;
-v130=v53.stride|0;
-v131=v53.divisor|0;
-}
-}
-v133=g132.location;
-v134=v10[v133];
-if(v120===1){
-if(!v134.buffer){
-v1.enableVertexAttribArray(v133);
-}
-v135=v126||4;
-if(v134.type!==v128||v134.size!==v135||v134.buffer!==v125||v134.normalized!==v127||v134.offset!==v129||v134.stride!==v130){
-v1.bindBuffer(34962,v125.buffer);
-v1.vertexAttribPointer(v133,v135,v128,v127,v130,v129);
-v134.type=v128;
-v134.size=v135;
-v134.buffer=v125;
-v134.normalized=v127;
-v134.offset=v129;
-v134.stride=v130;
-}
-if(v134.divisor!==v131){
-v116.vertexAttribDivisorANGLE(v133,v131);
-v134.divisor=v131;
-}
-}
-else{
-if(v134.buffer){
-v1.disableVertexAttribArray(v133);
-v134.buffer=null;
-}
-if(v134.x!==v121||v134.y!==v122||v134.z!==v123||v134.w!==v124){
-v1.vertexAttrib4f(v133,v121,v122,v123,v124);
-v134.x=v121;
-v134.y=v122;
-v134.z=v123;
-v134.w=v124;
-}
-}
-v136=a0["positionBuffer"];
-v56.buffer=v136;
-if(!(v56&&(typeof v56==="object"||typeof v56==="function")&&(v16(v56)||v8.getBuffer(v56)||v8.getBuffer(v56.buffer)||v16(v56.buffer)||("constant" in v56&&(typeof v56.constant==="number"||v17(v56.constant))))))g18.commandRaise(g137,g19);
-v138=false;
-v139=1;
-v140=0;
-v141=0;
-v142=0;
-v143=0;
-v144=null;
-v145=0;
-v146=false;
-v147=5126;
-v148=0;
-v149=0;
-v150=0;
-if(v16(v56)){
-v138=true;
-v144=v8.createStream(34962,v56);
-v147=v144.dtype;
-}
-else{
-v144=v8.getBuffer(v56);
-if(v144){
-v147=v144.dtype;
-}
-else if("constant" in v56){
-v139=2;
-if(typeof v56.constant === "number"){
-v140=v56.constant;
-v141=v142=v143=0;
-}
-else{
-v140=v56.constant.length>0?v56.constant[0]:0;
-v141=v56.constant.length>1?v56.constant[1]:0;
-v142=v56.constant.length>2?v56.constant[2]:0;
-v143=v56.constant.length>3?v56.constant[3]:0;
-}
-}
-else{
-if(v16(v56.buffer)){
-v144=v8.createStream(34962,v56.buffer);
-}
-else{
-v144=v8.getBuffer(v56.buffer);
-}
-v147="type" in v56?v49[v56.type]:v144.dtype;
-v146=!!v56.normalized;
-v145=v56.size|0;
-v148=v56.offset|0;
-v149=v56.stride|0;
-v150=v56.divisor|0;
-}
-}
-v152=g151.location;
-v153=v10[v152];
-if(v139===1){
-if(!v153.buffer){
-v1.enableVertexAttribArray(v152);
-}
-v154=v145||2;
-if(v153.type!==v147||v153.size!==v154||v153.buffer!==v144||v153.normalized!==v146||v153.offset!==v148||v153.stride!==v149){
-v1.bindBuffer(34962,v144.buffer);
-v1.vertexAttribPointer(v152,v154,v147,v146,v149,v148);
-v153.type=v147;
-v153.size=v154;
-v153.buffer=v144;
-v153.normalized=v146;
-v153.offset=v148;
-v153.stride=v149;
-}
-if(v153.divisor!==v150){
-v116.vertexAttribDivisorANGLE(v152,v150);
-v153.divisor=v150;
-}
-}
-else{
-if(v153.buffer){
-v1.disableVertexAttribArray(v152);
-v153.buffer=null;
-}
-if(v153.x!==v140||v153.y!==v141||v153.z!==v142||v153.w!==v143){
-v1.vertexAttrib4f(v152,v140,v141,v142,v143);
-v153.x=v140;
-v153.y=v141;
-v153.z=v142;
-v153.w=v143;
-}
-}
-v155=a0["colorBuffer"];
-v54.buffer=v155;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g156,g19);
-v157=false;
-v158=1;
-v159=0;
-v160=0;
-v161=0;
-v162=0;
-v163=null;
-v164=0;
-v165=false;
-v166=5126;
-v167=0;
-v168=0;
-v169=0;
-if(v16(v54)){
-v157=true;
-v163=v8.createStream(34962,v54);
-v166=v163.dtype;
-}
-else{
-v163=v8.getBuffer(v54);
-if(v163){
-v166=v163.dtype;
-}
-else if("constant" in v54){
-v158=2;
-if(typeof v54.constant === "number"){
-v159=v54.constant;
-v160=v161=v162=0;
-}
-else{
-v159=v54.constant.length>0?v54.constant[0]:0;
-v160=v54.constant.length>1?v54.constant[1]:0;
-v161=v54.constant.length>2?v54.constant[2]:0;
-v162=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v163=v8.createStream(34962,v54.buffer);
-}
-else{
-v163=v8.getBuffer(v54.buffer);
-}
-v166="type" in v54?v49[v54.type]:v163.dtype;
-v165=!!v54.normalized;
-v164=v54.size|0;
-v167=v54.offset|0;
-v168=v54.stride|0;
-v169=v54.divisor|0;
-}
-}
-v171=g170.location;
-v172=v10[v171];
-if(v158===1){
-if(!v172.buffer){
-v1.enableVertexAttribArray(v171);
-}
-v173=v164||4;
-if(v172.type!==v166||v172.size!==v173||v172.buffer!==v163||v172.normalized!==v165||v172.offset!==v167||v172.stride!==v168){
-v1.bindBuffer(34962,v163.buffer);
-v1.vertexAttribPointer(v171,v173,v166,v165,v168,v167);
-v172.type=v166;
-v172.size=v173;
-v172.buffer=v163;
-v172.normalized=v165;
-v172.offset=v167;
-v172.stride=v168;
-}
-if(v172.divisor!==v169){
-v116.vertexAttribDivisorANGLE(v171,v169);
-v172.divisor=v169;
-}
-}
-else{
-if(v172.buffer){
-v1.disableVertexAttribArray(v171);
-v172.buffer=null;
-}
-if(v172.x!==v159||v172.y!==v160||v172.z!==v161||v172.w!==v162){
-v1.vertexAttrib4f(v171,v159,v160,v161,v162);
-v172.x=v159;
-v172.y=v160;
-v172.z=v161;
-v172.w=v162;
-}
-}
-v174=a0["positionBuffer"];
-v57.buffer=v174;
-if(!(v57&&(typeof v57==="object"||typeof v57==="function")&&(v16(v57)||v8.getBuffer(v57)||v8.getBuffer(v57.buffer)||v16(v57.buffer)||("constant" in v57&&(typeof v57.constant==="number"||v17(v57.constant))))))g18.commandRaise(g175,g19);
-v176=false;
-v177=1;
-v178=0;
-v179=0;
-v180=0;
-v181=0;
-v182=null;
-v183=0;
-v184=false;
-v185=5126;
-v186=0;
-v187=0;
-v188=0;
-if(v16(v57)){
-v176=true;
-v182=v8.createStream(34962,v57);
-v185=v182.dtype;
-}
-else{
-v182=v8.getBuffer(v57);
-if(v182){
-v185=v182.dtype;
-}
-else if("constant" in v57){
-v177=2;
-if(typeof v57.constant === "number"){
-v178=v57.constant;
-v179=v180=v181=0;
-}
-else{
-v178=v57.constant.length>0?v57.constant[0]:0;
-v179=v57.constant.length>1?v57.constant[1]:0;
-v180=v57.constant.length>2?v57.constant[2]:0;
-v181=v57.constant.length>3?v57.constant[3]:0;
-}
-}
-else{
-if(v16(v57.buffer)){
-v182=v8.createStream(34962,v57.buffer);
-}
-else{
-v182=v8.getBuffer(v57.buffer);
-}
-v185="type" in v57?v49[v57.type]:v182.dtype;
-v184=!!v57.normalized;
-v183=v57.size|0;
-v186=v57.offset|0;
-v187=v57.stride|0;
-v188=v57.divisor|0;
-}
-}
-v190=g189.location;
-v191=v10[v190];
-if(v177===1){
-if(!v191.buffer){
-v1.enableVertexAttribArray(v190);
-}
-v192=v183||2;
-if(v191.type!==v185||v191.size!==v192||v191.buffer!==v182||v191.normalized!==v184||v191.offset!==v186||v191.stride!==v187){
-v1.bindBuffer(34962,v182.buffer);
-v1.vertexAttribPointer(v190,v192,v185,v184,v187,v186);
-v191.type=v185;
-v191.size=v192;
-v191.buffer=v182;
-v191.normalized=v184;
-v191.offset=v186;
-v191.stride=v187;
-}
-if(v191.divisor!==v188){
-v116.vertexAttribDivisorANGLE(v190,v188);
-v191.divisor=v188;
-}
-}
-else{
-if(v191.buffer){
-v1.disableVertexAttribArray(v190);
-v191.buffer=null;
-}
-if(v191.x!==v178||v191.y!==v179||v191.z!==v180||v191.w!==v181){
-v1.vertexAttrib4f(v190,v178,v179,v180,v181);
-v191.x=v178;
-v191.y=v179;
-v191.z=v180;
-v191.w=v181;
-}
-}
-v195=g194.location;
-v196=v10[v195];
-if(!v196.buffer){
-v1.enableVertexAttribArray(v195);
-}
-if(v196.type!==5126||v196.size!==1||v196.buffer!==g193||v196.normalized!==false||v196.offset!==0||v196.stride!==8){
-v1.bindBuffer(34962,g193.buffer);
-v1.vertexAttribPointer(v195,1,5126,false,8,0);
-v196.type=5126;
-v196.size=1;
-v196.buffer=g193;
-v196.normalized=false;
-v196.offset=0;
-v196.stride=8;
-}
-if(v196.divisor!==0){
-v116.vertexAttribDivisorANGLE(v195,0);
-v196.divisor=0;
-}
-v198=g197.location;
-v199=v10[v198];
-if(!v199.buffer){
-v1.enableVertexAttribArray(v198);
-}
-if(v199.type!==5126||v199.size!==1||v199.buffer!==g193||v199.normalized!==false||v199.offset!==4||v199.stride!==8){
-v1.bindBuffer(34962,g193.buffer);
-v1.vertexAttribPointer(v198,1,5126,false,8,4);
-v199.type=5126;
-v199.size=1;
-v199.buffer=g193;
-v199.normalized=false;
-v199.offset=4;
-v199.stride=8;
-}
-if(v199.divisor!==0){
-v116.vertexAttribDivisorANGLE(v198,0);
-v199.divisor=0;
-}
-v200=a0["positionBuffer"];
-v58.buffer=v200;
-if(!(v58&&(typeof v58==="object"||typeof v58==="function")&&(v16(v58)||v8.getBuffer(v58)||v8.getBuffer(v58.buffer)||v16(v58.buffer)||("constant" in v58&&(typeof v58.constant==="number"||v17(v58.constant))))))g18.commandRaise(g201,g19);
-v202=false;
-v203=1;
-v204=0;
-v205=0;
-v206=0;
-v207=0;
-v208=null;
-v209=0;
-v210=false;
-v211=5126;
-v212=0;
-v213=0;
-v214=0;
-if(v16(v58)){
-v202=true;
-v208=v8.createStream(34962,v58);
-v211=v208.dtype;
-}
-else{
-v208=v8.getBuffer(v58);
-if(v208){
-v211=v208.dtype;
-}
-else if("constant" in v58){
-v203=2;
-if(typeof v58.constant === "number"){
-v204=v58.constant;
-v205=v206=v207=0;
-}
-else{
-v204=v58.constant.length>0?v58.constant[0]:0;
-v205=v58.constant.length>1?v58.constant[1]:0;
-v206=v58.constant.length>2?v58.constant[2]:0;
-v207=v58.constant.length>3?v58.constant[3]:0;
-}
-}
-else{
-if(v16(v58.buffer)){
-v208=v8.createStream(34962,v58.buffer);
-}
-else{
-v208=v8.getBuffer(v58.buffer);
-}
-v211="type" in v58?v49[v58.type]:v208.dtype;
-v210=!!v58.normalized;
-v209=v58.size|0;
-v212=v58.offset|0;
-v213=v58.stride|0;
-v214=v58.divisor|0;
-}
-}
-v216=g215.location;
-v217=v10[v216];
-if(v203===1){
-if(!v217.buffer){
-v1.enableVertexAttribArray(v216);
-}
-v218=v209||2;
-if(v217.type!==v211||v217.size!==v218||v217.buffer!==v208||v217.normalized!==v210||v217.offset!==v212||v217.stride!==v213){
-v1.bindBuffer(34962,v208.buffer);
-v1.vertexAttribPointer(v216,v218,v211,v210,v213,v212);
-v217.type=v211;
-v217.size=v218;
-v217.buffer=v208;
-v217.normalized=v210;
-v217.offset=v212;
-v217.stride=v213;
-}
-if(v217.divisor!==v214){
-v116.vertexAttribDivisorANGLE(v216,v214);
-v217.divisor=v214;
-}
-}
-else{
-if(v217.buffer){
-v1.disableVertexAttribArray(v216);
-v217.buffer=null;
-}
-if(v217.x!==v204||v217.y!==v205||v217.z!==v206||v217.w!==v207){
-v1.vertexAttrib4f(v216,v204,v205,v206,v207);
-v217.x=v204;
-v217.y=v205;
-v217.z=v206;
-v217.w=v207;
-}
-}
-v219=a0["positionBuffer"];
-v55.buffer=v219;
-if(!(v55&&(typeof v55==="object"||typeof v55==="function")&&(v16(v55)||v8.getBuffer(v55)||v8.getBuffer(v55.buffer)||v16(v55.buffer)||("constant" in v55&&(typeof v55.constant==="number"||v17(v55.constant))))))g18.commandRaise(g220,g19);
-v221=false;
-v222=1;
-v223=0;
-v224=0;
-v225=0;
-v226=0;
-v227=null;
-v228=0;
-v229=false;
-v230=5126;
-v231=0;
-v232=0;
-v233=0;
-if(v16(v55)){
-v221=true;
-v227=v8.createStream(34962,v55);
-v230=v227.dtype;
-}
-else{
-v227=v8.getBuffer(v55);
-if(v227){
-v230=v227.dtype;
-}
-else if("constant" in v55){
-v222=2;
-if(typeof v55.constant === "number"){
-v223=v55.constant;
-v224=v225=v226=0;
-}
-else{
-v223=v55.constant.length>0?v55.constant[0]:0;
-v224=v55.constant.length>1?v55.constant[1]:0;
-v225=v55.constant.length>2?v55.constant[2]:0;
-v226=v55.constant.length>3?v55.constant[3]:0;
-}
-}
-else{
-if(v16(v55.buffer)){
-v227=v8.createStream(34962,v55.buffer);
-}
-else{
-v227=v8.getBuffer(v55.buffer);
-}
-v230="type" in v55?v49[v55.type]:v227.dtype;
-v229=!!v55.normalized;
-v228=v55.size|0;
-v231=v55.offset|0;
-v232=v55.stride|0;
-v233=v55.divisor|0;
-}
-}
-v235=g234.location;
-v236=v10[v235];
-if(v222===1){
-if(!v236.buffer){
-v1.enableVertexAttribArray(v235);
-}
-v237=v228||2;
-if(v236.type!==v230||v236.size!==v237||v236.buffer!==v227||v236.normalized!==v229||v236.offset!==v231||v236.stride!==v232){
-v1.bindBuffer(34962,v227.buffer);
-v1.vertexAttribPointer(v235,v237,v230,v229,v232,v231);
-v236.type=v230;
-v236.size=v237;
-v236.buffer=v227;
-v236.normalized=v229;
-v236.offset=v231;
-v236.stride=v232;
-}
-if(v236.divisor!==v233){
-v116.vertexAttribDivisorANGLE(v235,v233);
-v236.divisor=v233;
-}
-}
-else{
-if(v236.buffer){
-v1.disableVertexAttribArray(v235);
-v236.buffer=null;
-}
-if(v236.x!==v223||v236.y!==v224||v236.z!==v225||v236.w!==v226){
-v1.vertexAttrib4f(v235,v223,v224,v225,v226);
-v236.x=v223;
-v236.y=v224;
-v236.z=v225;
-v236.w=v226;
-}
-}
-v239=a0["dashLength"];
-if(!(typeof v239==="number"))g18.commandRaise(g240,g19);
-v1.uniform1f(g238.location,v239);
-v242=a0["dashTexture"];
-if(v242&&v242._reglType==="framebuffer"){
-v242=v242.color[0];
-}
-if(!(typeof v242==="function"&&v242._reglType==="texture2d"))g18.commandRaise(g243,g19);
-v244=v242._texture;
-v1.uniform1i(g241.location,v244.bind());
-v246=a0["depth"];
-if(!(typeof v246==="number"))g18.commandRaise(g247,g19);
-v1.uniform1f(g245.location,v246);
-v249=a0["miterLimit"];
-if(!(typeof v249==="number"))g18.commandRaise(g250,g19);
-v1.uniform1f(g248.location,v249);
-v253=g252.call(this,v2,a0,0);
-if(!(typeof v253==="number"))g18.commandRaise(g254,g19);
-v1.uniform1f(g251.location,v253);
-v256=a0["opacity"];
-if(!(typeof v256==="number"))g18.commandRaise(g257,g19);
-v1.uniform1f(g255.location,v256);
-v259=a0["scale"];
-if(!(v17(v259)&&v259.length===2))g18.commandRaise(g260,g19);
-v261=v259[0];
-v262=v259[1];
-v1.uniform2f(g258.location,v261,v262);
-v264=a0["thickness"];
-if(!(typeof v264==="number"))g18.commandRaise(g265,g19);
-v1.uniform1f(g263.location,v264);
-v267=a0["translate"];
-if(!(v17(v267)&&v267.length===2))g18.commandRaise(g268,g19);
-v269=v267[0];
-v270=v267[1];
-v1.uniform2f(g266.location,v269,v270);
-v273=g272.call(this,v2,a0,0);
-if(!(v17(v273)&&v273.length===4))g18.commandRaise(g274,g19);
-v275=v273[0];
-v276=v273[1];
-v277=v273[2];
-v278=v273[3];
-v1.uniform4f(g271.location,v275,v276,v277,v278);
-v279=v6.elements;
-if(v279){
-v1.bindBuffer(34963,v279.buffer.buffer);
-}
-else if(v11.currentVAO){
-v279=v7.getElements(v11.currentVAO.elements);
-if(v279)v1.bindBuffer(34963,v279.buffer.buffer);
-}
-v280=a0["count"];
-if(v280>0){
-if(v279){
-v116.drawElementsInstancedANGLE(5,4,v279.type,0<<((v279.type-5121)>>1),v280);
-}
-else{
-v116.drawArraysInstancedANGLE(5,0,4,v280);
-}
-}
-else if(v280<0){
-if(v279){
-v1.drawElements(5,4,v279.type,0<<((v279.type-5121)>>1));
-}
-else{
-v1.drawArrays(5,0,4);
-}
-}
-v5.dirty=true;
-v11.setVAO(null);
-v2.viewportWidth=v97;
-v2.viewportHeight=v98;
-if(v113){
-g52.cpuTime+=performance.now()-v114;
-}
-if(v119){
-v8.destroyStream(v125);
-}
-if(v138){
-v8.destroyStream(v144);
-}
-if(v157){
-v8.destroyStream(v163);
-}
-if(v176){
-v8.destroyStream(v182);
-}
-if(v202){
-v8.destroyStream(v208);
-}
-if(v221){
-v8.destroyStream(v227);
-}
-v244.unbind();
-}
-,"scope":function(a0,a1,a2){
-var v281,v282,v283,v284,v285,v286,v287,v288,v289,v290,v291,v293,v295,v297,v299,v301,v303,v305,v307,v309,v311,v313,v315,v317,v318,v319,v320,v321,v322,v323,v324,v325,v326,v327,v328,v330,v332,v333,v334,v336,v338,v339,v340,v342,v343,v345,v346,v348,v349,v351,v352,v354,v355,v357,v358,v360,v361,v363,v364,v366,v367,v369,v370,v372,v373,v375,v376,v378,v379,v381,v382,v384,v386,v387,v388,v389,v390,v391,v392,v393,v394,v395,v396,v397,v399,v400,v401,v402,v403,v404,v405,v406,v407,v408,v409,v410,v411,v412,v413,v414,v415,v416,v417,v418,v419,v420,v421,v422,v423,v424,v426,v427,v428,v429,v430,v431,v432,v433,v434,v435,v436,v437,v438,v439,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v453,v454,v455,v456,v457,v458,v459,v460,v461,v462,v463,v464,v465,v466,v467,v468,v469,v470,v471,v472,v473,v474,v475,v476,v477,v478,v480,v481,v482,v483,v484,v485,v486,v487,v488,v489,v490,v491,v492,v493,v494,v495,v496,v497,v498,v499,v500,v501,v502,v503,v504,v505,v507,v508,v509,v510,v511,v512,v513,v514,v515,v516,v517,v518,v519,v520,v521,v522,v523,v524,v525,v526,v527,v528,v529,v530,v531,v532,v534,v535,v536,v537,v538,v539,v540,v541,v542,v543,v544,v545,v546,v547,v548,v549,v550,v551,v552,v553,v554,v555,v556,v557,v558,v559,v561,v562,v563,v564,v565,v566,v567,v568,v569,v570,v571,v572,v574,v576;
-v281=a0["viewport"];
-if(!(v281&&typeof v281==="object"))g18.commandRaise(g92,g19);
-v282=v281.x|0;
-v283=v281.y|0;
-v284="width" in v281?v281.width|0:(v2.framebufferWidth-v282);
-v285="height" in v281?v281.height|0:(v2.framebufferHeight-v283);
-if(!(v284>=0&&v285>=0))g18.commandRaise(g92,g19);
-v286=v2.viewportWidth;
-v2.viewportWidth=v284;
-v287=v2.viewportHeight;
-v2.viewportHeight=v285;
-v288=v42[0];
-v42[0]=v282;
-v289=v42[1];
-v42[1]=v283;
-v290=v42[2];
-v42[2]=v284;
-v291=v42[3];
-v42[3]=v285;
-v293=v20[0];
-v20[0]=g292;
-v295=v20[1];
-v20[1]=g294;
-v297=v20[2];
-v20[2]=g296;
-v299=v20[3];
-v20[3]=g298;
-v301=v4.blend_enable;
-v4.blend_enable=g300;
-v303=v22[0];
-v22[0]=g302;
-v305=v22[1];
-v22[1]=g304;
-v307=v24[0];
-v24[0]=g306;
-v309=v24[1];
-v24[1]=g308;
-v311=v24[2];
-v24[2]=g310;
-v313=v24[3];
-v24[3]=g312;
-v315=v4.cull_enable;
-v4.cull_enable=g314;
-v317=v4.cull_face;
-v4.cull_face=g316;
-v318=g102.call(this,v2,a0,a2);
-if(!(typeof v318==="boolean"))g18.commandRaise(g104,g19);
-v319=v4.depth_enable;
-v4.depth_enable=v318;
-v320=a0["viewport"];
-if(!(v320&&typeof v320==="object"))g18.commandRaise(g106,g19);
-v321=v320.x|0;
-v322=v320.y|0;
-v323="width" in v320?v320.width|0:(v2.framebufferWidth-v321);
-v324="height" in v320?v320.height|0:(v2.framebufferHeight-v322);
-if(!(v323>=0&&v324>=0))g18.commandRaise(g106,g19);
-v325=v40[0];
-v40[0]=v321;
-v326=v40[1];
-v40[1]=v322;
-v327=v40[2];
-v40[2]=v323;
-v328=v40[3];
-v40[3]=v324;
-v330=v4.scissor_enable;
-v4.scissor_enable=g329;
-v332=v4.stencil_enable;
-v4.stencil_enable=g331;
-v333=v5.profile;
-if(v333){
-v334=performance.now();
-g52.count++;
-}
-v336=v6.offset;
-v6.offset=g335;
-v338=v6.count;
-v6.count=g337;
-v339=a0["count"];
-v340=v6.instances;
-v6.instances=v339;
-v342=v6.primitive;
-v6.primitive=g341;
-v343=g252.call(this,v2,a0,a2);
-v345=v12[g344];
-v12[g344]=v343;
-v346=a0["miterLimit"];
-v348=v12[g347];
-v12[g347]=v346;
-v349=a0["scale"];
-v351=v12[g350];
-v12[g350]=v349;
-v352=a0["scaleFract"];
-v354=v12[g353];
-v12[g353]=v352;
-v355=a0["translateFract"];
-v357=v12[g356];
-v12[g356]=v355;
-v358=a0["translate"];
-v360=v12[g359];
-v12[g359]=v358;
-v361=a0["thickness"];
-v363=v12[g362];
-v12[g362]=v361;
-v364=a0["dashTexture"];
-v366=v12[g365];
-v12[g365]=v364;
-v367=a0["opacity"];
-v369=v12[g368];
-v12[g368]=v367;
-v370=v2["pixelRatio"];
-v372=v12[g371];
-v12[g371]=v370;
-v373=a0["id"];
-v375=v12[g374];
-v12[g374]=v373;
-v376=a0["dashLength"];
-v378=v12[g377];
-v12[g377]=v376;
-v379=g272.call(this,v2,a0,a2);
-v381=v12[g380];
-v12[g380]=v379;
-v382=a0["depth"];
-v384=v12[g383];
-v12[g383]=v382;
-v386=g385.state;
-g385.state=1;
-v387=g385.x;
-g385.x=0;
-v388=g385.y;
-g385.y=0;
-v389=g385.z;
-g385.z=0;
-v390=g385.w;
-g385.w=0;
-v391=g385.buffer;
-g385.buffer=g193;
-v392=g385.size;
-g385.size=0;
-v393=g385.normalized;
-g385.normalized=false;
-v394=g385.type;
-g385.type=5126;
-v395=g385.offset;
-g385.offset=0;
-v396=g385.stride;
-g385.stride=8;
-v397=g385.divisor;
-g385.divisor=0;
-v399=g398.state;
-g398.state=1;
-v400=g398.x;
-g398.x=0;
-v401=g398.y;
-g398.y=0;
-v402=g398.z;
-g398.z=0;
-v403=g398.w;
-g398.w=0;
-v404=g398.buffer;
-g398.buffer=g193;
-v405=g398.size;
-g398.size=0;
-v406=g398.normalized;
-g398.normalized=false;
-v407=g398.type;
-g398.type=5126;
-v408=g398.offset;
-g398.offset=4;
-v409=g398.stride;
-g398.stride=8;
-v410=g398.divisor;
-g398.divisor=0;
-v411=a0["colorBuffer"];
-v53.buffer=v411;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g118,g19);
-v412=false;
-v413=1;
-v414=0;
-v415=0;
-v416=0;
-v417=0;
-v418=null;
-v419=0;
-v420=false;
-v421=5126;
-v422=0;
-v423=0;
-v424=0;
-if(v16(v53)){
-v412=true;
-v418=v8.createStream(34962,v53);
-v421=v418.dtype;
-}
-else{
-v418=v8.getBuffer(v53);
-if(v418){
-v421=v418.dtype;
-}
-else if("constant" in v53){
-v413=2;
-if(typeof v53.constant === "number"){
-v414=v53.constant;
-v415=v416=v417=0;
-}
-else{
-v414=v53.constant.length>0?v53.constant[0]:0;
-v415=v53.constant.length>1?v53.constant[1]:0;
-v416=v53.constant.length>2?v53.constant[2]:0;
-v417=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v418=v8.createStream(34962,v53.buffer);
-}
-else{
-v418=v8.getBuffer(v53.buffer);
-}
-v421="type" in v53?v49[v53.type]:v418.dtype;
-v420=!!v53.normalized;
-v419=v53.size|0;
-v422=v53.offset|0;
-v423=v53.stride|0;
-v424=v53.divisor|0;
-}
-}
-v426=g425.state;
-g425.state=v413;
-v427=g425.x;
-g425.x=v414;
-v428=g425.y;
-g425.y=v415;
-v429=g425.z;
-g425.z=v416;
-v430=g425.w;
-g425.w=v417;
-v431=g425.buffer;
-g425.buffer=v418;
-v432=g425.size;
-g425.size=v419;
-v433=g425.normalized;
-g425.normalized=v420;
-v434=g425.type;
-g425.type=v421;
-v435=g425.offset;
-g425.offset=v422;
-v436=g425.stride;
-g425.stride=v423;
-v437=g425.divisor;
-g425.divisor=v424;
-v438=a0["colorBuffer"];
-v54.buffer=v438;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g156,g19);
-v439=false;
-v440=1;
-v441=0;
-v442=0;
-v443=0;
-v444=0;
-v445=null;
-v446=0;
-v447=false;
-v448=5126;
-v449=0;
-v450=0;
-v451=0;
-if(v16(v54)){
-v439=true;
-v445=v8.createStream(34962,v54);
-v448=v445.dtype;
-}
-else{
-v445=v8.getBuffer(v54);
-if(v445){
-v448=v445.dtype;
-}
-else if("constant" in v54){
-v440=2;
-if(typeof v54.constant === "number"){
-v441=v54.constant;
-v442=v443=v444=0;
-}
-else{
-v441=v54.constant.length>0?v54.constant[0]:0;
-v442=v54.constant.length>1?v54.constant[1]:0;
-v443=v54.constant.length>2?v54.constant[2]:0;
-v444=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v445=v8.createStream(34962,v54.buffer);
-}
-else{
-v445=v8.getBuffer(v54.buffer);
-}
-v448="type" in v54?v49[v54.type]:v445.dtype;
-v447=!!v54.normalized;
-v446=v54.size|0;
-v449=v54.offset|0;
-v450=v54.stride|0;
-v451=v54.divisor|0;
-}
-}
-v453=g452.state;
-g452.state=v440;
-v454=g452.x;
-g452.x=v441;
-v455=g452.y;
-g452.y=v442;
-v456=g452.z;
-g452.z=v443;
-v457=g452.w;
-g452.w=v444;
-v458=g452.buffer;
-g452.buffer=v445;
-v459=g452.size;
-g452.size=v446;
-v460=g452.normalized;
-g452.normalized=v447;
-v461=g452.type;
-g452.type=v448;
-v462=g452.offset;
-g452.offset=v449;
-v463=g452.stride;
-g452.stride=v450;
-v464=g452.divisor;
-g452.divisor=v451;
-v465=a0["positionBuffer"];
-v55.buffer=v465;
-if(!(v55&&(typeof v55==="object"||typeof v55==="function")&&(v16(v55)||v8.getBuffer(v55)||v8.getBuffer(v55.buffer)||v16(v55.buffer)||("constant" in v55&&(typeof v55.constant==="number"||v17(v55.constant))))))g18.commandRaise(g220,g19);
-v466=false;
-v467=1;
-v468=0;
-v469=0;
-v470=0;
-v471=0;
-v472=null;
-v473=0;
-v474=false;
-v475=5126;
-v476=0;
-v477=0;
-v478=0;
-if(v16(v55)){
-v466=true;
-v472=v8.createStream(34962,v55);
-v475=v472.dtype;
-}
-else{
-v472=v8.getBuffer(v55);
-if(v472){
-v475=v472.dtype;
-}
-else if("constant" in v55){
-v467=2;
-if(typeof v55.constant === "number"){
-v468=v55.constant;
-v469=v470=v471=0;
-}
-else{
-v468=v55.constant.length>0?v55.constant[0]:0;
-v469=v55.constant.length>1?v55.constant[1]:0;
-v470=v55.constant.length>2?v55.constant[2]:0;
-v471=v55.constant.length>3?v55.constant[3]:0;
-}
-}
-else{
-if(v16(v55.buffer)){
-v472=v8.createStream(34962,v55.buffer);
-}
-else{
-v472=v8.getBuffer(v55.buffer);
-}
-v475="type" in v55?v49[v55.type]:v472.dtype;
-v474=!!v55.normalized;
-v473=v55.size|0;
-v476=v55.offset|0;
-v477=v55.stride|0;
-v478=v55.divisor|0;
-}
-}
-v480=g479.state;
-g479.state=v467;
-v481=g479.x;
-g479.x=v468;
-v482=g479.y;
-g479.y=v469;
-v483=g479.z;
-g479.z=v470;
-v484=g479.w;
-g479.w=v471;
-v485=g479.buffer;
-g479.buffer=v472;
-v486=g479.size;
-g479.size=v473;
-v487=g479.normalized;
-g479.normalized=v474;
-v488=g479.type;
-g479.type=v475;
-v489=g479.offset;
-g479.offset=v476;
-v490=g479.stride;
-g479.stride=v477;
-v491=g479.divisor;
-g479.divisor=v478;
-v492=a0["positionBuffer"];
-v56.buffer=v492;
-if(!(v56&&(typeof v56==="object"||typeof v56==="function")&&(v16(v56)||v8.getBuffer(v56)||v8.getBuffer(v56.buffer)||v16(v56.buffer)||("constant" in v56&&(typeof v56.constant==="number"||v17(v56.constant))))))g18.commandRaise(g137,g19);
-v493=false;
-v494=1;
-v495=0;
-v496=0;
-v497=0;
-v498=0;
-v499=null;
-v500=0;
-v501=false;
-v502=5126;
-v503=0;
-v504=0;
-v505=0;
-if(v16(v56)){
-v493=true;
-v499=v8.createStream(34962,v56);
-v502=v499.dtype;
-}
-else{
-v499=v8.getBuffer(v56);
-if(v499){
-v502=v499.dtype;
-}
-else if("constant" in v56){
-v494=2;
-if(typeof v56.constant === "number"){
-v495=v56.constant;
-v496=v497=v498=0;
-}
-else{
-v495=v56.constant.length>0?v56.constant[0]:0;
-v496=v56.constant.length>1?v56.constant[1]:0;
-v497=v56.constant.length>2?v56.constant[2]:0;
-v498=v56.constant.length>3?v56.constant[3]:0;
-}
-}
-else{
-if(v16(v56.buffer)){
-v499=v8.createStream(34962,v56.buffer);
-}
-else{
-v499=v8.getBuffer(v56.buffer);
-}
-v502="type" in v56?v49[v56.type]:v499.dtype;
-v501=!!v56.normalized;
-v500=v56.size|0;
-v503=v56.offset|0;
-v504=v56.stride|0;
-v505=v56.divisor|0;
-}
-}
-v507=g506.state;
-g506.state=v494;
-v508=g506.x;
-g506.x=v495;
-v509=g506.y;
-g506.y=v496;
-v510=g506.z;
-g506.z=v497;
-v511=g506.w;
-g506.w=v498;
-v512=g506.buffer;
-g506.buffer=v499;
-v513=g506.size;
-g506.size=v500;
-v514=g506.normalized;
-g506.normalized=v501;
-v515=g506.type;
-g506.type=v502;
-v516=g506.offset;
-g506.offset=v503;
-v517=g506.stride;
-g506.stride=v504;
-v518=g506.divisor;
-g506.divisor=v505;
-v519=a0["positionBuffer"];
-v57.buffer=v519;
-if(!(v57&&(typeof v57==="object"||typeof v57==="function")&&(v16(v57)||v8.getBuffer(v57)||v8.getBuffer(v57.buffer)||v16(v57.buffer)||("constant" in v57&&(typeof v57.constant==="number"||v17(v57.constant))))))g18.commandRaise(g175,g19);
-v520=false;
-v521=1;
-v522=0;
-v523=0;
-v524=0;
-v525=0;
-v526=null;
-v527=0;
-v528=false;
-v529=5126;
-v530=0;
-v531=0;
-v532=0;
-if(v16(v57)){
-v520=true;
-v526=v8.createStream(34962,v57);
-v529=v526.dtype;
-}
-else{
-v526=v8.getBuffer(v57);
-if(v526){
-v529=v526.dtype;
-}
-else if("constant" in v57){
-v521=2;
-if(typeof v57.constant === "number"){
-v522=v57.constant;
-v523=v524=v525=0;
-}
-else{
-v522=v57.constant.length>0?v57.constant[0]:0;
-v523=v57.constant.length>1?v57.constant[1]:0;
-v524=v57.constant.length>2?v57.constant[2]:0;
-v525=v57.constant.length>3?v57.constant[3]:0;
-}
-}
-else{
-if(v16(v57.buffer)){
-v526=v8.createStream(34962,v57.buffer);
-}
-else{
-v526=v8.getBuffer(v57.buffer);
-}
-v529="type" in v57?v49[v57.type]:v526.dtype;
-v528=!!v57.normalized;
-v527=v57.size|0;
-v530=v57.offset|0;
-v531=v57.stride|0;
-v532=v57.divisor|0;
-}
-}
-v534=g533.state;
-g533.state=v521;
-v535=g533.x;
-g533.x=v522;
-v536=g533.y;
-g533.y=v523;
-v537=g533.z;
-g533.z=v524;
-v538=g533.w;
-g533.w=v525;
-v539=g533.buffer;
-g533.buffer=v526;
-v540=g533.size;
-g533.size=v527;
-v541=g533.normalized;
-g533.normalized=v528;
-v542=g533.type;
-g533.type=v529;
-v543=g533.offset;
-g533.offset=v530;
-v544=g533.stride;
-g533.stride=v531;
-v545=g533.divisor;
-g533.divisor=v532;
-v546=a0["positionBuffer"];
-v58.buffer=v546;
-if(!(v58&&(typeof v58==="object"||typeof v58==="function")&&(v16(v58)||v8.getBuffer(v58)||v8.getBuffer(v58.buffer)||v16(v58.buffer)||("constant" in v58&&(typeof v58.constant==="number"||v17(v58.constant))))))g18.commandRaise(g201,g19);
-v547=false;
-v548=1;
-v549=0;
-v550=0;
-v551=0;
-v552=0;
-v553=null;
-v554=0;
-v555=false;
-v556=5126;
-v557=0;
-v558=0;
-v559=0;
-if(v16(v58)){
-v547=true;
-v553=v8.createStream(34962,v58);
-v556=v553.dtype;
-}
-else{
-v553=v8.getBuffer(v58);
-if(v553){
-v556=v553.dtype;
-}
-else if("constant" in v58){
-v548=2;
-if(typeof v58.constant === "number"){
-v549=v58.constant;
-v550=v551=v552=0;
-}
-else{
-v549=v58.constant.length>0?v58.constant[0]:0;
-v550=v58.constant.length>1?v58.constant[1]:0;
-v551=v58.constant.length>2?v58.constant[2]:0;
-v552=v58.constant.length>3?v58.constant[3]:0;
-}
-}
-else{
-if(v16(v58.buffer)){
-v553=v8.createStream(34962,v58.buffer);
-}
-else{
-v553=v8.getBuffer(v58.buffer);
-}
-v556="type" in v58?v49[v58.type]:v553.dtype;
-v555=!!v58.normalized;
-v554=v58.size|0;
-v557=v58.offset|0;
-v558=v58.stride|0;
-v559=v58.divisor|0;
-}
-}
-v561=g560.state;
-g560.state=v548;
-v562=g560.x;
-g560.x=v549;
-v563=g560.y;
-g560.y=v550;
-v564=g560.z;
-g560.z=v551;
-v565=g560.w;
-g560.w=v552;
-v566=g560.buffer;
-g560.buffer=v553;
-v567=g560.size;
-g560.size=v554;
-v568=g560.normalized;
-g560.normalized=v555;
-v569=g560.type;
-g560.type=v556;
-v570=g560.offset;
-g560.offset=v557;
-v571=g560.stride;
-g560.stride=v558;
-v572=g560.divisor;
-g560.divisor=v559;
-v574=v9.vert;
-v9.vert=g573;
-v576=v9.frag;
-v9.frag=g575;
-v5.dirty=true;
-a1(v2,a0,a2);
-v2.viewportWidth=v286;
-v2.viewportHeight=v287;
-v42[0]=v288;
-v42[1]=v289;
-v42[2]=v290;
-v42[3]=v291;
-v20[0]=v293;
-v20[1]=v295;
-v20[2]=v297;
-v20[3]=v299;
-v4.blend_enable=v301;
-v22[0]=v303;
-v22[1]=v305;
-v24[0]=v307;
-v24[1]=v309;
-v24[2]=v311;
-v24[3]=v313;
-v4.cull_enable=v315;
-v4.cull_face=v317;
-v4.depth_enable=v319;
-v40[0]=v325;
-v40[1]=v326;
-v40[2]=v327;
-v40[3]=v328;
-v4.scissor_enable=v330;
-v4.stencil_enable=v332;
-if(v333){
-g52.cpuTime+=performance.now()-v334;
-}
-v6.offset=v336;
-v6.count=v338;
-v6.instances=v340;
-v6.primitive=v342;
-v12[g344]=v345;
-v12[g347]=v348;
-v12[g350]=v351;
-v12[g353]=v354;
-v12[g356]=v357;
-v12[g359]=v360;
-v12[g362]=v363;
-v12[g365]=v366;
-v12[g368]=v369;
-v12[g371]=v372;
-v12[g374]=v375;
-v12[g377]=v378;
-v12[g380]=v381;
-v12[g383]=v384;
-g385.state=v386;
-g385.x=v387;
-g385.y=v388;
-g385.z=v389;
-g385.w=v390;
-g385.buffer=v391;
-g385.size=v392;
-g385.normalized=v393;
-g385.type=v394;
-g385.offset=v395;
-g385.stride=v396;
-g385.divisor=v397;
-g398.state=v399;
-g398.x=v400;
-g398.y=v401;
-g398.z=v402;
-g398.w=v403;
-g398.buffer=v404;
-g398.size=v405;
-g398.normalized=v406;
-g398.type=v407;
-g398.offset=v408;
-g398.stride=v409;
-g398.divisor=v410;
-if(v412){
-v8.destroyStream(v418);
-}
-g425.state=v426;
-g425.x=v427;
-g425.y=v428;
-g425.z=v429;
-g425.w=v430;
-g425.buffer=v431;
-g425.size=v432;
-g425.normalized=v433;
-g425.type=v434;
-g425.offset=v435;
-g425.stride=v436;
-g425.divisor=v437;
-if(v439){
-v8.destroyStream(v445);
-}
-g452.state=v453;
-g452.x=v454;
-g452.y=v455;
-g452.z=v456;
-g452.w=v457;
-g452.buffer=v458;
-g452.size=v459;
-g452.normalized=v460;
-g452.type=v461;
-g452.offset=v462;
-g452.stride=v463;
-g452.divisor=v464;
-if(v466){
-v8.destroyStream(v472);
-}
-g479.state=v480;
-g479.x=v481;
-g479.y=v482;
-g479.z=v483;
-g479.w=v484;
-g479.buffer=v485;
-g479.size=v486;
-g479.normalized=v487;
-g479.type=v488;
-g479.offset=v489;
-g479.stride=v490;
-g479.divisor=v491;
-if(v493){
-v8.destroyStream(v499);
-}
-g506.state=v507;
-g506.x=v508;
-g506.y=v509;
-g506.z=v510;
-g506.w=v511;
-g506.buffer=v512;
-g506.size=v513;
-g506.normalized=v514;
-g506.type=v515;
-g506.offset=v516;
-g506.stride=v517;
-g506.divisor=v518;
-if(v520){
-v8.destroyStream(v526);
-}
-g533.state=v534;
-g533.x=v535;
-g533.y=v536;
-g533.z=v537;
-g533.w=v538;
-g533.buffer=v539;
-g533.size=v540;
-g533.normalized=v541;
-g533.type=v542;
-g533.offset=v543;
-g533.stride=v544;
-g533.divisor=v545;
-if(v547){
-v8.destroyStream(v553);
-}
-g560.state=v561;
-g560.x=v562;
-g560.y=v563;
-g560.z=v564;
-g560.w=v565;
-g560.buffer=v566;
-g560.size=v567;
-g560.normalized=v568;
-g560.type=v569;
-g560.offset=v570;
-g560.stride=v571;
-g560.divisor=v572;
-v9.vert=v574;
-v9.frag=v576;
-v5.dirty=true;
-}
-,"batch":function(a0,a1){
-var v577,v578,v614,v615,v616,v617,v618;
-v577=v14.angle_instanced_arrays;
-v578=v13.next;
-if(v578!==v13.cur){
-if(v578){
-v1.bindFramebuffer(36160,v578.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v578;
-}
-if(v5.dirty){
-var v579,v580,v581,v582,v583,v584,v585,v586,v587,v588,v589,v590,v591,v592,v593,v594,v595,v596,v597,v598,v599,v600,v601,v602,v603,v604,v605,v606,v607,v608;
-v579=v4.dither;
-if(v579!==v5.dither){
-if(v579){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v579;
-}
-v580=v4.depth_func;
-if(v580!==v5.depth_func){
-v1.depthFunc(v580);
-v5.depth_func=v580;
-}
-v581=v26[0];
-v582=v26[1];
-if(v581!==v27[0]||v582!==v27[1]){
-v1.depthRange(v581,v582);
-v27[0]=v581;
-v27[1]=v582;
-}
-v583=v4.depth_mask;
-if(v583!==v5.depth_mask){
-v1.depthMask(v583);
-v5.depth_mask=v583;
-}
-v584=v28[0];
-v585=v28[1];
-v586=v28[2];
-v587=v28[3];
-if(v584!==v29[0]||v585!==v29[1]||v586!==v29[2]||v587!==v29[3]){
-v1.colorMask(v584,v585,v586,v587);
-v29[0]=v584;
-v29[1]=v585;
-v29[2]=v586;
-v29[3]=v587;
-}
-v588=v4.frontFace;
-if(v588!==v5.frontFace){
-v1.frontFace(v588);
-v5.frontFace=v588;
-}
-v589=v4.lineWidth;
-if(v589!==v5.lineWidth){
-v1.lineWidth(v589);
-v5.lineWidth=v589;
-}
-v590=v4.polygonOffset_enable;
-if(v590!==v5.polygonOffset_enable){
-if(v590){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v590;
-}
-v591=v30[0];
-v592=v30[1];
-if(v591!==v31[0]||v592!==v31[1]){
-v1.polygonOffset(v591,v592);
-v31[0]=v591;
-v31[1]=v592;
-}
-v593=v4.sample_alpha;
-if(v593!==v5.sample_alpha){
-if(v593){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v593;
-}
-v594=v4.sample_enable;
-if(v594!==v5.sample_enable){
-if(v594){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v594;
-}
-v595=v32[0];
-v596=v32[1];
-if(v595!==v33[0]||v596!==v33[1]){
-v1.sampleCoverage(v595,v596);
-v33[0]=v595;
-v33[1]=v596;
-}
-v597=v4.stencil_mask;
-if(v597!==v5.stencil_mask){
-v1.stencilMask(v597);
-v5.stencil_mask=v597;
-}
-v598=v34[0];
-v599=v34[1];
-v600=v34[2];
-if(v598!==v35[0]||v599!==v35[1]||v600!==v35[2]){
-v1.stencilFunc(v598,v599,v600);
-v35[0]=v598;
-v35[1]=v599;
-v35[2]=v600;
-}
-v601=v36[0];
-v602=v36[1];
-v603=v36[2];
-v604=v36[3];
-if(v601!==v37[0]||v602!==v37[1]||v603!==v37[2]||v604!==v37[3]){
-v1.stencilOpSeparate(v601,v602,v603,v604);
-v37[0]=v601;
-v37[1]=v602;
-v37[2]=v603;
-v37[3]=v604;
-}
-v605=v38[0];
-v606=v38[1];
-v607=v38[2];
-v608=v38[3];
-if(v605!==v39[0]||v606!==v39[1]||v607!==v39[2]||v608!==v39[3]){
-v1.stencilOpSeparate(v605,v606,v607,v608);
-v39[0]=v605;
-v39[1]=v606;
-v39[2]=v607;
-v39[3]=v608;
-}
-}
-v1.blendColor(0,0,0,0);
-v21[0]=0;
-v21[1]=0;
-v21[2]=0;
-v21[3]=0;
-if(g609){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=g609;
-v1.blendEquationSeparate(32774,32774);
-v23[0]=32774;
-v23[1]=32774;
-v1.blendFuncSeparate(770,771,773,1);
-v25[0]=770;
-v25[1]=771;
-v25[2]=773;
-v25[3]=1;
-if(g610){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=g610;
-v1.cullFace(g611);
-v5.cull_face=g611;
-if(g612){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=g612;
-if(g613){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=g613;
-v614=v5.profile;
-if(v614){
-v615=performance.now();
-g52.count+=a1;
-}
-v1.useProgram(g115.program);
-v616=v14.angle_instanced_arrays;
-var v632,v633,v634,v635,v771;
-v11.setVAO(null);
-v632=g194.location;
-v633=v10[v632];
-if(!v633.buffer){
-v1.enableVertexAttribArray(v632);
-}
-if(v633.type!==5126||v633.size!==1||v633.buffer!==g193||v633.normalized!==false||v633.offset!==0||v633.stride!==8){
-v1.bindBuffer(34962,g193.buffer);
-v1.vertexAttribPointer(v632,1,5126,false,8,0);
-v633.type=5126;
-v633.size=1;
-v633.buffer=g193;
-v633.normalized=false;
-v633.offset=0;
-v633.stride=8;
-}
-if(v633.divisor!==0){
-v616.vertexAttribDivisorANGLE(v632,0);
-v633.divisor=0;
-}
-v634=g197.location;
-v635=v10[v634];
-if(!v635.buffer){
-v1.enableVertexAttribArray(v634);
-}
-if(v635.type!==5126||v635.size!==1||v635.buffer!==g193||v635.normalized!==false||v635.offset!==4||v635.stride!==8){
-v1.bindBuffer(34962,g193.buffer);
-v1.vertexAttribPointer(v634,1,5126,false,8,4);
-v635.type=5126;
-v635.size=1;
-v635.buffer=g193;
-v635.normalized=false;
-v635.offset=4;
-v635.stride=8;
-}
-if(v635.divisor!==0){
-v616.vertexAttribDivisorANGLE(v634,0);
-v635.divisor=0;
-}
-v771=v6.elements;
-if(v771){
-v1.bindBuffer(34963,v771.buffer.buffer);
-}
-else if(v11.currentVAO){
-v771=v7.getElements(v11.currentVAO.elements);
-if(v771)v1.bindBuffer(34963,v771.buffer.buffer);
-}
-for(v617=0;
-v617<a1;
-++v617){
-v618=a0[v617];
-var v619,v620,v621,v622,v623,v624,v625,v626,v627,v628,v629,v630,v631,v636,v637,v638,v639,v640,v641,v642,v643,v644,v645,v646,v647,v648,v649,v650,v651,v652,v653,v654,v655,v656,v657,v658,v659,v660,v661,v662,v663,v664,v665,v666,v667,v668,v669,v670,v671,v672,v673,v674,v675,v676,v677,v678,v679,v680,v681,v682,v683,v684,v685,v686,v687,v688,v689,v690,v691,v692,v693,v694,v695,v696,v697,v698,v699,v700,v701,v702,v703,v704,v705,v706,v707,v708,v709,v710,v711,v712,v713,v714,v715,v716,v717,v718,v719,v720,v721,v722,v723,v724,v725,v726,v727,v728,v729,v730,v731,v732,v733,v734,v735,v736,v737,v738,v739,v740,v741,v742,v743,v744,v745,v746,v747,v748,v749,v750,v751,v752,v753,v754,v755,v756,v757,v758,v759,v760,v761,v762,v763,v764,v765,v766,v767,v768,v769,v770,v772;
-v619=v618["viewport"];
-if(!(v619&&typeof v619==="object"))g18.commandRaise(g92,g19);
-v620=v619.x|0;
-v621=v619.y|0;
-v622="width" in v619?v619.width|0:(v2.framebufferWidth-v620);
-v623="height" in v619?v619.height|0:(v2.framebufferHeight-v621);
-if(!(v622>=0&&v623>=0))g18.commandRaise(g92,g19);
-v624=v2.viewportWidth;
-v2.viewportWidth=v622;
-v625=v2.viewportHeight;
-v2.viewportHeight=v623;
-v1.viewport(v620,v621,v622,v623);
-v43[0]=v620;
-v43[1]=v621;
-v43[2]=v622;
-v43[3]=v623;
-v626=g102.call(this,v2,v618,v617);
-if(!(typeof v626==="boolean"))g18.commandRaise(g104,g19);
-if(v626){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v626;
-v627=v618["viewport"];
-if(!(v627&&typeof v627==="object"))g18.commandRaise(g106,g19);
-v628=v627.x|0;
-v629=v627.y|0;
-v630="width" in v627?v627.width|0:(v2.framebufferWidth-v628);
-v631="height" in v627?v627.height|0:(v2.framebufferHeight-v629);
-if(!(v630>=0&&v631>=0))g18.commandRaise(g106,g19);
-v1.scissor(v628,v629,v630,v631);
-v41[0]=v628;
-v41[1]=v629;
-v41[2]=v630;
-v41[3]=v631;
-v636=v618["colorBuffer"];
-v53.buffer=v636;
-if(!(v53&&(typeof v53==="object"||typeof v53==="function")&&(v16(v53)||v8.getBuffer(v53)||v8.getBuffer(v53.buffer)||v16(v53.buffer)||("constant" in v53&&(typeof v53.constant==="number"||v17(v53.constant))))))g18.commandRaise(g118,g19);
-v637=false;
-v638=1;
-v639=0;
-v640=0;
-v641=0;
-v642=0;
-v643=null;
-v644=0;
-v645=false;
-v646=5126;
-v647=0;
-v648=0;
-v649=0;
-if(v16(v53)){
-v637=true;
-v643=v8.createStream(34962,v53);
-v646=v643.dtype;
-}
-else{
-v643=v8.getBuffer(v53);
-if(v643){
-v646=v643.dtype;
-}
-else if("constant" in v53){
-v638=2;
-if(typeof v53.constant === "number"){
-v639=v53.constant;
-v640=v641=v642=0;
-}
-else{
-v639=v53.constant.length>0?v53.constant[0]:0;
-v640=v53.constant.length>1?v53.constant[1]:0;
-v641=v53.constant.length>2?v53.constant[2]:0;
-v642=v53.constant.length>3?v53.constant[3]:0;
-}
-}
-else{
-if(v16(v53.buffer)){
-v643=v8.createStream(34962,v53.buffer);
-}
-else{
-v643=v8.getBuffer(v53.buffer);
-}
-v646="type" in v53?v49[v53.type]:v643.dtype;
-v645=!!v53.normalized;
-v644=v53.size|0;
-v647=v53.offset|0;
-v648=v53.stride|0;
-v649=v53.divisor|0;
-}
-}
-v650=g132.location;
-v651=v10[v650];
-if(v638===1){
-if(!v651.buffer){
-v1.enableVertexAttribArray(v650);
-}
-v652=v644||4;
-if(v651.type!==v646||v651.size!==v652||v651.buffer!==v643||v651.normalized!==v645||v651.offset!==v647||v651.stride!==v648){
-v1.bindBuffer(34962,v643.buffer);
-v1.vertexAttribPointer(v650,v652,v646,v645,v648,v647);
-v651.type=v646;
-v651.size=v652;
-v651.buffer=v643;
-v651.normalized=v645;
-v651.offset=v647;
-v651.stride=v648;
-}
-if(v651.divisor!==v649){
-v616.vertexAttribDivisorANGLE(v650,v649);
-v651.divisor=v649;
-}
-}
-else{
-if(v651.buffer){
-v1.disableVertexAttribArray(v650);
-v651.buffer=null;
-}
-if(v651.x!==v639||v651.y!==v640||v651.z!==v641||v651.w!==v642){
-v1.vertexAttrib4f(v650,v639,v640,v641,v642);
-v651.x=v639;
-v651.y=v640;
-v651.z=v641;
-v651.w=v642;
-}
-}
-v653=v618["positionBuffer"];
-v56.buffer=v653;
-if(!(v56&&(typeof v56==="object"||typeof v56==="function")&&(v16(v56)||v8.getBuffer(v56)||v8.getBuffer(v56.buffer)||v16(v56.buffer)||("constant" in v56&&(typeof v56.constant==="number"||v17(v56.constant))))))g18.commandRaise(g137,g19);
-v654=false;
-v655=1;
-v656=0;
-v657=0;
-v658=0;
-v659=0;
-v660=null;
-v661=0;
-v662=false;
-v663=5126;
-v664=0;
-v665=0;
-v666=0;
-if(v16(v56)){
-v654=true;
-v660=v8.createStream(34962,v56);
-v663=v660.dtype;
-}
-else{
-v660=v8.getBuffer(v56);
-if(v660){
-v663=v660.dtype;
-}
-else if("constant" in v56){
-v655=2;
-if(typeof v56.constant === "number"){
-v656=v56.constant;
-v657=v658=v659=0;
-}
-else{
-v656=v56.constant.length>0?v56.constant[0]:0;
-v657=v56.constant.length>1?v56.constant[1]:0;
-v658=v56.constant.length>2?v56.constant[2]:0;
-v659=v56.constant.length>3?v56.constant[3]:0;
-}
-}
-else{
-if(v16(v56.buffer)){
-v660=v8.createStream(34962,v56.buffer);
-}
-else{
-v660=v8.getBuffer(v56.buffer);
-}
-v663="type" in v56?v49[v56.type]:v660.dtype;
-v662=!!v56.normalized;
-v661=v56.size|0;
-v664=v56.offset|0;
-v665=v56.stride|0;
-v666=v56.divisor|0;
-}
-}
-v667=g151.location;
-v668=v10[v667];
-if(v655===1){
-if(!v668.buffer){
-v1.enableVertexAttribArray(v667);
-}
-v669=v661||2;
-if(v668.type!==v663||v668.size!==v669||v668.buffer!==v660||v668.normalized!==v662||v668.offset!==v664||v668.stride!==v665){
-v1.bindBuffer(34962,v660.buffer);
-v1.vertexAttribPointer(v667,v669,v663,v662,v665,v664);
-v668.type=v663;
-v668.size=v669;
-v668.buffer=v660;
-v668.normalized=v662;
-v668.offset=v664;
-v668.stride=v665;
-}
-if(v668.divisor!==v666){
-v616.vertexAttribDivisorANGLE(v667,v666);
-v668.divisor=v666;
-}
-}
-else{
-if(v668.buffer){
-v1.disableVertexAttribArray(v667);
-v668.buffer=null;
-}
-if(v668.x!==v656||v668.y!==v657||v668.z!==v658||v668.w!==v659){
-v1.vertexAttrib4f(v667,v656,v657,v658,v659);
-v668.x=v656;
-v668.y=v657;
-v668.z=v658;
-v668.w=v659;
-}
-}
-v670=v618["colorBuffer"];
-v54.buffer=v670;
-if(!(v54&&(typeof v54==="object"||typeof v54==="function")&&(v16(v54)||v8.getBuffer(v54)||v8.getBuffer(v54.buffer)||v16(v54.buffer)||("constant" in v54&&(typeof v54.constant==="number"||v17(v54.constant))))))g18.commandRaise(g156,g19);
-v671=false;
-v672=1;
-v673=0;
-v674=0;
-v675=0;
-v676=0;
-v677=null;
-v678=0;
-v679=false;
-v680=5126;
-v681=0;
-v682=0;
-v683=0;
-if(v16(v54)){
-v671=true;
-v677=v8.createStream(34962,v54);
-v680=v677.dtype;
-}
-else{
-v677=v8.getBuffer(v54);
-if(v677){
-v680=v677.dtype;
-}
-else if("constant" in v54){
-v672=2;
-if(typeof v54.constant === "number"){
-v673=v54.constant;
-v674=v675=v676=0;
-}
-else{
-v673=v54.constant.length>0?v54.constant[0]:0;
-v674=v54.constant.length>1?v54.constant[1]:0;
-v675=v54.constant.length>2?v54.constant[2]:0;
-v676=v54.constant.length>3?v54.constant[3]:0;
-}
-}
-else{
-if(v16(v54.buffer)){
-v677=v8.createStream(34962,v54.buffer);
-}
-else{
-v677=v8.getBuffer(v54.buffer);
-}
-v680="type" in v54?v49[v54.type]:v677.dtype;
-v679=!!v54.normalized;
-v678=v54.size|0;
-v681=v54.offset|0;
-v682=v54.stride|0;
-v683=v54.divisor|0;
-}
-}
-v684=g170.location;
-v685=v10[v684];
-if(v672===1){
-if(!v685.buffer){
-v1.enableVertexAttribArray(v684);
-}
-v686=v678||4;
-if(v685.type!==v680||v685.size!==v686||v685.buffer!==v677||v685.normalized!==v679||v685.offset!==v681||v685.stride!==v682){
-v1.bindBuffer(34962,v677.buffer);
-v1.vertexAttribPointer(v684,v686,v680,v679,v682,v681);
-v685.type=v680;
-v685.size=v686;
-v685.buffer=v677;
-v685.normalized=v679;
-v685.offset=v681;
-v685.stride=v682;
-}
-if(v685.divisor!==v683){
-v616.vertexAttribDivisorANGLE(v684,v683);
-v685.divisor=v683;
-}
-}
-else{
-if(v685.buffer){
-v1.disableVertexAttribArray(v684);
-v685.buffer=null;
-}
-if(v685.x!==v673||v685.y!==v674||v685.z!==v675||v685.w!==v676){
-v1.vertexAttrib4f(v684,v673,v674,v675,v676);
-v685.x=v673;
-v685.y=v674;
-v685.z=v675;
-v685.w=v676;
-}
-}
-v687=v618["positionBuffer"];
-v57.buffer=v687;
-if(!(v57&&(typeof v57==="object"||typeof v57==="function")&&(v16(v57)||v8.getBuffer(v57)||v8.getBuffer(v57.buffer)||v16(v57.buffer)||("constant" in v57&&(typeof v57.constant==="number"||v17(v57.constant))))))g18.commandRaise(g175,g19);
-v688=false;
-v689=1;
-v690=0;
-v691=0;
-v692=0;
-v693=0;
-v694=null;
-v695=0;
-v696=false;
-v697=5126;
-v698=0;
-v699=0;
-v700=0;
-if(v16(v57)){
-v688=true;
-v694=v8.createStream(34962,v57);
-v697=v694.dtype;
-}
-else{
-v694=v8.getBuffer(v57);
-if(v694){
-v697=v694.dtype;
-}
-else if("constant" in v57){
-v689=2;
-if(typeof v57.constant === "number"){
-v690=v57.constant;
-v691=v692=v693=0;
-}
-else{
-v690=v57.constant.length>0?v57.constant[0]:0;
-v691=v57.constant.length>1?v57.constant[1]:0;
-v692=v57.constant.length>2?v57.constant[2]:0;
-v693=v57.constant.length>3?v57.constant[3]:0;
-}
-}
-else{
-if(v16(v57.buffer)){
-v694=v8.createStream(34962,v57.buffer);
-}
-else{
-v694=v8.getBuffer(v57.buffer);
-}
-v697="type" in v57?v49[v57.type]:v694.dtype;
-v696=!!v57.normalized;
-v695=v57.size|0;
-v698=v57.offset|0;
-v699=v57.stride|0;
-v700=v57.divisor|0;
-}
-}
-v701=g189.location;
-v702=v10[v701];
-if(v689===1){
-if(!v702.buffer){
-v1.enableVertexAttribArray(v701);
-}
-v703=v695||2;
-if(v702.type!==v697||v702.size!==v703||v702.buffer!==v694||v702.normalized!==v696||v702.offset!==v698||v702.stride!==v699){
-v1.bindBuffer(34962,v694.buffer);
-v1.vertexAttribPointer(v701,v703,v697,v696,v699,v698);
-v702.type=v697;
-v702.size=v703;
-v702.buffer=v694;
-v702.normalized=v696;
-v702.offset=v698;
-v702.stride=v699;
-}
-if(v702.divisor!==v700){
-v616.vertexAttribDivisorANGLE(v701,v700);
-v702.divisor=v700;
-}
-}
-else{
-if(v702.buffer){
-v1.disableVertexAttribArray(v701);
-v702.buffer=null;
-}
-if(v702.x!==v690||v702.y!==v691||v702.z!==v692||v702.w!==v693){
-v1.vertexAttrib4f(v701,v690,v691,v692,v693);
-v702.x=v690;
-v702.y=v691;
-v702.z=v692;
-v702.w=v693;
-}
-}
-v704=v618["positionBuffer"];
-v58.buffer=v704;
-if(!(v58&&(typeof v58==="object"||typeof v58==="function")&&(v16(v58)||v8.getBuffer(v58)||v8.getBuffer(v58.buffer)||v16(v58.buffer)||("constant" in v58&&(typeof v58.constant==="number"||v17(v58.constant))))))g18.commandRaise(g201,g19);
-v705=false;
-v706=1;
-v707=0;
-v708=0;
-v709=0;
-v710=0;
-v711=null;
-v712=0;
-v713=false;
-v714=5126;
-v715=0;
-v716=0;
-v717=0;
-if(v16(v58)){
-v705=true;
-v711=v8.createStream(34962,v58);
-v714=v711.dtype;
-}
-else{
-v711=v8.getBuffer(v58);
-if(v711){
-v714=v711.dtype;
-}
-else if("constant" in v58){
-v706=2;
-if(typeof v58.constant === "number"){
-v707=v58.constant;
-v708=v709=v710=0;
-}
-else{
-v707=v58.constant.length>0?v58.constant[0]:0;
-v708=v58.constant.length>1?v58.constant[1]:0;
-v709=v58.constant.length>2?v58.constant[2]:0;
-v710=v58.constant.length>3?v58.constant[3]:0;
-}
-}
-else{
-if(v16(v58.buffer)){
-v711=v8.createStream(34962,v58.buffer);
-}
-else{
-v711=v8.getBuffer(v58.buffer);
-}
-v714="type" in v58?v49[v58.type]:v711.dtype;
-v713=!!v58.normalized;
-v712=v58.size|0;
-v715=v58.offset|0;
-v716=v58.stride|0;
-v717=v58.divisor|0;
-}
-}
-v718=g215.location;
-v719=v10[v718];
-if(v706===1){
-if(!v719.buffer){
-v1.enableVertexAttribArray(v718);
-}
-v720=v712||2;
-if(v719.type!==v714||v719.size!==v720||v719.buffer!==v711||v719.normalized!==v713||v719.offset!==v715||v719.stride!==v716){
-v1.bindBuffer(34962,v711.buffer);
-v1.vertexAttribPointer(v718,v720,v714,v713,v716,v715);
-v719.type=v714;
-v719.size=v720;
-v719.buffer=v711;
-v719.normalized=v713;
-v719.offset=v715;
-v719.stride=v716;
-}
-if(v719.divisor!==v717){
-v616.vertexAttribDivisorANGLE(v718,v717);
-v719.divisor=v717;
-}
-}
-else{
-if(v719.buffer){
-v1.disableVertexAttribArray(v718);
-v719.buffer=null;
-}
-if(v719.x!==v707||v719.y!==v708||v719.z!==v709||v719.w!==v710){
-v1.vertexAttrib4f(v718,v707,v708,v709,v710);
-v719.x=v707;
-v719.y=v708;
-v719.z=v709;
-v719.w=v710;
-}
-}
-v721=v618["positionBuffer"];
-v55.buffer=v721;
-if(!(v55&&(typeof v55==="object"||typeof v55==="function")&&(v16(v55)||v8.getBuffer(v55)||v8.getBuffer(v55.buffer)||v16(v55.buffer)||("constant" in v55&&(typeof v55.constant==="number"||v17(v55.constant))))))g18.commandRaise(g220,g19);
-v722=false;
-v723=1;
-v724=0;
-v725=0;
-v726=0;
-v727=0;
-v728=null;
-v729=0;
-v730=false;
-v731=5126;
-v732=0;
-v733=0;
-v734=0;
-if(v16(v55)){
-v722=true;
-v728=v8.createStream(34962,v55);
-v731=v728.dtype;
-}
-else{
-v728=v8.getBuffer(v55);
-if(v728){
-v731=v728.dtype;
-}
-else if("constant" in v55){
-v723=2;
-if(typeof v55.constant === "number"){
-v724=v55.constant;
-v725=v726=v727=0;
-}
-else{
-v724=v55.constant.length>0?v55.constant[0]:0;
-v725=v55.constant.length>1?v55.constant[1]:0;
-v726=v55.constant.length>2?v55.constant[2]:0;
-v727=v55.constant.length>3?v55.constant[3]:0;
-}
-}
-else{
-if(v16(v55.buffer)){
-v728=v8.createStream(34962,v55.buffer);
-}
-else{
-v728=v8.getBuffer(v55.buffer);
-}
-v731="type" in v55?v49[v55.type]:v728.dtype;
-v730=!!v55.normalized;
-v729=v55.size|0;
-v732=v55.offset|0;
-v733=v55.stride|0;
-v734=v55.divisor|0;
-}
-}
-v735=g234.location;
-v736=v10[v735];
-if(v723===1){
-if(!v736.buffer){
-v1.enableVertexAttribArray(v735);
-}
-v737=v729||2;
-if(v736.type!==v731||v736.size!==v737||v736.buffer!==v728||v736.normalized!==v730||v736.offset!==v732||v736.stride!==v733){
-v1.bindBuffer(34962,v728.buffer);
-v1.vertexAttribPointer(v735,v737,v731,v730,v733,v732);
-v736.type=v731;
-v736.size=v737;
-v736.buffer=v728;
-v736.normalized=v730;
-v736.offset=v732;
-v736.stride=v733;
-}
-if(v736.divisor!==v734){
-v616.vertexAttribDivisorANGLE(v735,v734);
-v736.divisor=v734;
-}
-}
-else{
-if(v736.buffer){
-v1.disableVertexAttribArray(v735);
-v736.buffer=null;
-}
-if(v736.x!==v724||v736.y!==v725||v736.z!==v726||v736.w!==v727){
-v1.vertexAttrib4f(v735,v724,v725,v726,v727);
-v736.x=v724;
-v736.y=v725;
-v736.z=v726;
-v736.w=v727;
-}
-}
-v738=v618["dashLength"];
-if(!(typeof v738==="number"))g18.commandRaise(g240,g19);
-if(!v617||v739!==v738){
-v739=v738;
-v1.uniform1f(g238.location,v738);
-}
-v740=v618["dashTexture"];
-if(v740&&v740._reglType==="framebuffer"){
-v740=v740.color[0];
-}
-if(!(typeof v740==="function"&&v740._reglType==="texture2d"))g18.commandRaise(g243,g19);
-v741=v740._texture;
-v1.uniform1i(g241.location,v741.bind());
-v742=v618["depth"];
-if(!(typeof v742==="number"))g18.commandRaise(g247,g19);
-if(!v617||v743!==v742){
-v743=v742;
-v1.uniform1f(g245.location,v742);
-}
-v744=v618["miterLimit"];
-if(!(typeof v744==="number"))g18.commandRaise(g250,g19);
-if(!v617||v745!==v744){
-v745=v744;
-v1.uniform1f(g248.location,v744);
-}
-v746=g252.call(this,v2,v618,v617);
-if(!(typeof v746==="number"))g18.commandRaise(g254,g19);
-if(!v617||v747!==v746){
-v747=v746;
-v1.uniform1f(g251.location,v746);
-}
-v748=v618["opacity"];
-if(!(typeof v748==="number"))g18.commandRaise(g257,g19);
-if(!v617||v749!==v748){
-v749=v748;
-v1.uniform1f(g255.location,v748);
-}
-v750=v618["scale"];
-if(!(v17(v750)&&v750.length===2))g18.commandRaise(g260,g19);
-v751=v750[0];
-v753=v750[1];
-if(!v617||v752!==v751||v754!==v753){
-v752=v751;
-v754=v753;
-v1.uniform2f(g258.location,v751,v753);
-}
-v755=v618["thickness"];
-if(!(typeof v755==="number"))g18.commandRaise(g265,g19);
-if(!v617||v756!==v755){
-v756=v755;
-v1.uniform1f(g263.location,v755);
-}
-v757=v618["translate"];
-if(!(v17(v757)&&v757.length===2))g18.commandRaise(g268,g19);
-v758=v757[0];
-v760=v757[1];
-if(!v617||v759!==v758||v761!==v760){
-v759=v758;
-v761=v760;
-v1.uniform2f(g266.location,v758,v760);
-}
-v762=g272.call(this,v2,v618,v617);
-if(!(v17(v762)&&v762.length===4))g18.commandRaise(g274,g19);
-v763=v762[0];
-v765=v762[1];
-v767=v762[2];
-v769=v762[3];
-if(!v617||v764!==v763||v766!==v765||v768!==v767||v770!==v769){
-v764=v763;
-v766=v765;
-v768=v767;
-v770=v769;
-v1.uniform4f(g271.location,v763,v765,v767,v769);
-}
-v772=v618["count"];
-if(v772>0){
-if(v771){
-v616.drawElementsInstancedANGLE(5,4,v771.type,0<<((v771.type-5121)>>1),v772);
-}
-else{
-v616.drawArraysInstancedANGLE(5,0,4,v772);
-}
-}
-else if(v772<0){
-if(v771){
-v1.drawElements(5,4,v771.type,0<<((v771.type-5121)>>1));
-}
-else{
-v1.drawArrays(5,0,4);
-}
-}
-v2.viewportWidth=v624;
-v2.viewportHeight=v625;
-if(v637){
-v8.destroyStream(v643);
-}
-if(v654){
-v8.destroyStream(v660);
-}
-if(v671){
-v8.destroyStream(v677);
-}
-if(v688){
-v8.destroyStream(v694);
-}
-if(v705){
-v8.destroyStream(v711);
-}
-if(v722){
-v8.destroyStream(v728);
-}
-v741.unbind();
-}
-v5.dirty=true;
-v11.setVAO(null);
-if(v614){
-g52.cpuTime+=performance.now()-v615;
-}
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7 b/src/generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7
new file mode 100644
index 00000000000..512db50ed02
--- /dev/null
+++ b/src/generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7
@@ -0,0 +1,2436 @@
+module.exports = function anonymous(g0,g48,g95,g96,g103,g104,g107,g123,g141,g159,g177,g195,g199,g200,g203,g206,g208,g211,g213,g215,g219,g223,g225,g229,g233,g234,g253,g255,g257,g259,g261,g263,g265,g267,g269,g271,g273,g286,g288,g292,g294,g298,g300,g302,g305,g308,g311,g314,g317,g320,g323,g326,g329,g332,g335,g338,g341,g343,g356,g383,g410,g437,g464,g491,g504,g506,g542,g543,g544
+) {
+"use strict";
+var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v49,v50,v51,v52,v53;
+v1=g0.gl;
+v2=g0.context;
+v3=g0.strings;
+v4=g0.next;
+v5=g0.current;
+v6=g0.draw;
+v7=g0.elements;
+v8=g0.buffer;
+v9=g0.shader;
+v10=g0.attributes;
+v11=g0.vao;
+v12=g0.uniforms;
+v13=g0.framebuffer;
+v14=g0.extensions;
+v15=g0.timer;
+v16=g0.isBufferArgs;
+v17=v4.blend_color;
+v18=v5.blend_color;
+v19=v4.blend_equation;
+v20=v5.blend_equation;
+v21=v4.blend_func;
+v22=v5.blend_func;
+v23=v4.depth_range;
+v24=v5.depth_range;
+v25=v4.colorMask;
+v26=v5.colorMask;
+v27=v4.polygonOffset_offset;
+v28=v5.polygonOffset_offset;
+v29=v4.sample_coverage;
+v30=v5.sample_coverage;
+v31=v4.stencil_func;
+v32=v5.stencil_func;
+v33=v4.stencil_opFront;
+v34=v5.stencil_opFront;
+v35=v4.stencil_opBack;
+v36=v5.stencil_opBack;
+v37=v4.scissor_box;
+v38=v5.scissor_box;
+v39=v4.viewport;
+v40=v5.viewport;
+v41={
+"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
+;
+v42={
+"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}
+;
+v43={
+"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,"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}
+;
+v44={
+"add":32774,"subtract":32778,"reverse subtract":32779}
+;
+v45={
+"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
+;
+v46={
+"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
+;
+v47={
+"cw":2304,"ccw":2305}
+;
+v49={
+}
+;
+v49.stride=8;
+v49.offset=8;
+v49.divisor=1;
+v50={
+}
+;
+v50.stride=8;
+v50.offset=16;
+v50.divisor=1;
+v51={
+}
+;
+v51.stride=8;
+v51.offset=8;
+v51.divisor=1;
+v52={
+}
+;
+v52.stride=8;
+v52.offset=16;
+v52.divisor=1;
+v53={
+}
+;
+v53.stride=4;
+v53.offset=0;
+v53.divisor=1;
+return {
+"draw":function(a0){
+var v54,v55,v88,v89,v90,v91,v92,v93,v94,v97,v98,v99,v100,v101,v102,v105,v106,v108,v109,v110,v111,v112,v113,v114,v115,v116,v117,v118,v119,v120,v121,v122,v124,v125,v126,v127,v128,v129,v130,v131,v132,v133,v134,v135,v136,v137,v138,v139,v140,v142,v143,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v174,v175,v176,v178,v179,v180,v181,v182,v183,v184,v185,v186,v187,v188,v189,v190,v191,v192,v193,v194,v196,v197,v198,v201,v202,v204,v205,v207,v209,v210,v212,v214,v216,v217,v218,v220,v221,v222,v224,v226,v227,v228,v230,v231,v232,v235,v236,v237,v238,v239,v240,v241;
+v54=v14.angle_instanced_arrays;
+v55=v13.next;
+if(v55!==v13.cur){
+if(v55){
+v1.bindFramebuffer(36160,v55.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v55;
+}
+if(v5.dirty){
+var v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87;
+v56=v4.dither;
+if(v56!==v5.dither){
+if(v56){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v56;
+}
+v57=v4.depth_func;
+if(v57!==v5.depth_func){
+v1.depthFunc(v57);
+v5.depth_func=v57;
+}
+v58=v23[0];
+v59=v23[1];
+if(v58!==v24[0]||v59!==v24[1]){
+v1.depthRange(v58,v59);
+v24[0]=v58;
+v24[1]=v59;
+}
+v60=v4.depth_mask;
+if(v60!==v5.depth_mask){
+v1.depthMask(v60);
+v5.depth_mask=v60;
+}
+v61=v25[0];
+v62=v25[1];
+v63=v25[2];
+v64=v25[3];
+if(v61!==v26[0]||v62!==v26[1]||v63!==v26[2]||v64!==v26[3]){
+v1.colorMask(v61,v62,v63,v64);
+v26[0]=v61;
+v26[1]=v62;
+v26[2]=v63;
+v26[3]=v64;
+}
+v65=v4.cull_enable;
+if(v65!==v5.cull_enable){
+if(v65){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v65;
+}
+v66=v4.cull_face;
+if(v66!==v5.cull_face){
+v1.cullFace(v66);
+v5.cull_face=v66;
+}
+v67=v4.frontFace;
+if(v67!==v5.frontFace){
+v1.frontFace(v67);
+v5.frontFace=v67;
+}
+v68=v4.lineWidth;
+if(v68!==v5.lineWidth){
+v1.lineWidth(v68);
+v5.lineWidth=v68;
+}
+v69=v4.polygonOffset_enable;
+if(v69!==v5.polygonOffset_enable){
+if(v69){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v69;
+}
+v70=v27[0];
+v71=v27[1];
+if(v70!==v28[0]||v71!==v28[1]){
+v1.polygonOffset(v70,v71);
+v28[0]=v70;
+v28[1]=v71;
+}
+v72=v4.sample_alpha;
+if(v72!==v5.sample_alpha){
+if(v72){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v72;
+}
+v73=v4.sample_enable;
+if(v73!==v5.sample_enable){
+if(v73){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v73;
+}
+v74=v29[0];
+v75=v29[1];
+if(v74!==v30[0]||v75!==v30[1]){
+v1.sampleCoverage(v74,v75);
+v30[0]=v74;
+v30[1]=v75;
+}
+v76=v4.stencil_mask;
+if(v76!==v5.stencil_mask){
+v1.stencilMask(v76);
+v5.stencil_mask=v76;
+}
+v77=v31[0];
+v78=v31[1];
+v79=v31[2];
+if(v77!==v32[0]||v78!==v32[1]||v79!==v32[2]){
+v1.stencilFunc(v77,v78,v79);
+v32[0]=v77;
+v32[1]=v78;
+v32[2]=v79;
+}
+v80=v33[0];
+v81=v33[1];
+v82=v33[2];
+v83=v33[3];
+if(v80!==v34[0]||v81!==v34[1]||v82!==v34[2]||v83!==v34[3]){
+v1.stencilOpSeparate(v80,v81,v82,v83);
+v34[0]=v80;
+v34[1]=v81;
+v34[2]=v82;
+v34[3]=v83;
+}
+v84=v35[0];
+v85=v35[1];
+v86=v35[2];
+v87=v35[3];
+if(v84!==v36[0]||v85!==v36[1]||v86!==v36[2]||v87!==v36[3]){
+v1.stencilOpSeparate(v84,v85,v86,v87);
+v36[0]=v84;
+v36[1]=v85;
+v36[2]=v86;
+v36[3]=v87;
+}
+}
+v88=a0["viewport"];
+v89=v88.x|0;
+v90=v88.y|0;
+v91="width" in v88?v88.width|0:(v2.framebufferWidth-v89);
+v92="height" in v88?v88.height|0:(v2.framebufferHeight-v90);
+v93=v2.viewportWidth;
+v2.viewportWidth=v91;
+v94=v2.viewportHeight;
+v2.viewportHeight=v92;
+v1.viewport(v89,v90,v91,v92);
+v40[0]=v89;
+v40[1]=v90;
+v40[2]=v91;
+v40[3]=v92;
+v1.blendColor(0,0,0,0);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=0;
+if(g95){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g95;
+v1.blendEquationSeparate(32774,32774);
+v20[0]=32774;
+v20[1]=32774;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+v97=g96.call(this,v2,a0,0);
+if(v97){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v97;
+v98=a0["viewport"];
+v99=v98.x|0;
+v100=v98.y|0;
+v101="width" in v98?v98.width|0:(v2.framebufferWidth-v99);
+v102="height" in v98?v98.height|0:(v2.framebufferHeight-v100);
+v1.scissor(v99,v100,v101,v102);
+v38[0]=v99;
+v38[1]=v100;
+v38[2]=v101;
+v38[3]=v102;
+if(g103){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g103;
+if(g104){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g104;
+v105=v5.profile;
+if(v105){
+v106=performance.now();
+g48.count++;
+}
+v1.useProgram(g107.program);
+v108=v14.angle_instanced_arrays;
+v11.setVAO(null);
+v109=a0["positionBuffer"];
+v49.buffer=v109;
+v110=false;
+v111=1;
+v112=0;
+v113=0;
+v114=0;
+v115=0;
+v116=null;
+v117=0;
+v118=false;
+v119=5126;
+v120=0;
+v121=0;
+v122=0;
+if(v16(v49)){
+v110=true;
+v116=v8.createStream(34962,v49);
+v119=v116.dtype;
+}
+else{
+v116=v8.getBuffer(v49);
+if(v116){
+v119=v116.dtype;
+}
+else if("constant" in v49){
+v111=2;
+if(typeof v49.constant === "number"){
+v112=v49.constant;
+v113=v114=v115=0;
+}
+else{
+v112=v49.constant.length>0?v49.constant[0]:0;
+v113=v49.constant.length>1?v49.constant[1]:0;
+v114=v49.constant.length>2?v49.constant[2]:0;
+v115=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v116=v8.createStream(34962,v49.buffer);
+}
+else{
+v116=v8.getBuffer(v49.buffer);
+}
+v119="type" in v49?v46[v49.type]:v116.dtype;
+v118=!!v49.normalized;
+v117=v49.size|0;
+v120=v49.offset|0;
+v121=v49.stride|0;
+v122=v49.divisor|0;
+}
+}
+v124=g123.location;
+v125=v10[v124];
+if(v111===1){
+if(!v125.buffer){
+v1.enableVertexAttribArray(v124);
+}
+v126=v117||2;
+if(v125.type!==v119||v125.size!==v126||v125.buffer!==v116||v125.normalized!==v118||v125.offset!==v120||v125.stride!==v121){
+v1.bindBuffer(34962,v116.buffer);
+v1.vertexAttribPointer(v124,v126,v119,v118,v121,v120);
+v125.type=v119;
+v125.size=v126;
+v125.buffer=v116;
+v125.normalized=v118;
+v125.offset=v120;
+v125.stride=v121;
+}
+if(v125.divisor!==v122){
+v108.vertexAttribDivisorANGLE(v124,v122);
+v125.divisor=v122;
+}
+}
+else{
+if(v125.buffer){
+v1.disableVertexAttribArray(v124);
+v125.buffer=null;
+}
+if(v125.x!==v112||v125.y!==v113||v125.z!==v114||v125.w!==v115){
+v1.vertexAttrib4f(v124,v112,v113,v114,v115);
+v125.x=v112;
+v125.y=v113;
+v125.z=v114;
+v125.w=v115;
+}
+}
+v127=a0["positionFractBuffer"];
+v51.buffer=v127;
+v128=false;
+v129=1;
+v130=0;
+v131=0;
+v132=0;
+v133=0;
+v134=null;
+v135=0;
+v136=false;
+v137=5126;
+v138=0;
+v139=0;
+v140=0;
+if(v16(v51)){
+v128=true;
+v134=v8.createStream(34962,v51);
+v137=v134.dtype;
+}
+else{
+v134=v8.getBuffer(v51);
+if(v134){
+v137=v134.dtype;
+}
+else if("constant" in v51){
+v129=2;
+if(typeof v51.constant === "number"){
+v130=v51.constant;
+v131=v132=v133=0;
+}
+else{
+v130=v51.constant.length>0?v51.constant[0]:0;
+v131=v51.constant.length>1?v51.constant[1]:0;
+v132=v51.constant.length>2?v51.constant[2]:0;
+v133=v51.constant.length>3?v51.constant[3]:0;
+}
+}
+else{
+if(v16(v51.buffer)){
+v134=v8.createStream(34962,v51.buffer);
+}
+else{
+v134=v8.getBuffer(v51.buffer);
+}
+v137="type" in v51?v46[v51.type]:v134.dtype;
+v136=!!v51.normalized;
+v135=v51.size|0;
+v138=v51.offset|0;
+v139=v51.stride|0;
+v140=v51.divisor|0;
+}
+}
+v142=g141.location;
+v143=v10[v142];
+if(v129===1){
+if(!v143.buffer){
+v1.enableVertexAttribArray(v142);
+}
+v144=v135||2;
+if(v143.type!==v137||v143.size!==v144||v143.buffer!==v134||v143.normalized!==v136||v143.offset!==v138||v143.stride!==v139){
+v1.bindBuffer(34962,v134.buffer);
+v1.vertexAttribPointer(v142,v144,v137,v136,v139,v138);
+v143.type=v137;
+v143.size=v144;
+v143.buffer=v134;
+v143.normalized=v136;
+v143.offset=v138;
+v143.stride=v139;
+}
+if(v143.divisor!==v140){
+v108.vertexAttribDivisorANGLE(v142,v140);
+v143.divisor=v140;
+}
+}
+else{
+if(v143.buffer){
+v1.disableVertexAttribArray(v142);
+v143.buffer=null;
+}
+if(v143.x!==v130||v143.y!==v131||v143.z!==v132||v143.w!==v133){
+v1.vertexAttrib4f(v142,v130,v131,v132,v133);
+v143.x=v130;
+v143.y=v131;
+v143.z=v132;
+v143.w=v133;
+}
+}
+v145=a0["positionBuffer"];
+v50.buffer=v145;
+v146=false;
+v147=1;
+v148=0;
+v149=0;
+v150=0;
+v151=0;
+v152=null;
+v153=0;
+v154=false;
+v155=5126;
+v156=0;
+v157=0;
+v158=0;
+if(v16(v50)){
+v146=true;
+v152=v8.createStream(34962,v50);
+v155=v152.dtype;
+}
+else{
+v152=v8.getBuffer(v50);
+if(v152){
+v155=v152.dtype;
+}
+else if("constant" in v50){
+v147=2;
+if(typeof v50.constant === "number"){
+v148=v50.constant;
+v149=v150=v151=0;
+}
+else{
+v148=v50.constant.length>0?v50.constant[0]:0;
+v149=v50.constant.length>1?v50.constant[1]:0;
+v150=v50.constant.length>2?v50.constant[2]:0;
+v151=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v152=v8.createStream(34962,v50.buffer);
+}
+else{
+v152=v8.getBuffer(v50.buffer);
+}
+v155="type" in v50?v46[v50.type]:v152.dtype;
+v154=!!v50.normalized;
+v153=v50.size|0;
+v156=v50.offset|0;
+v157=v50.stride|0;
+v158=v50.divisor|0;
+}
+}
+v160=g159.location;
+v161=v10[v160];
+if(v147===1){
+if(!v161.buffer){
+v1.enableVertexAttribArray(v160);
+}
+v162=v153||2;
+if(v161.type!==v155||v161.size!==v162||v161.buffer!==v152||v161.normalized!==v154||v161.offset!==v156||v161.stride!==v157){
+v1.bindBuffer(34962,v152.buffer);
+v1.vertexAttribPointer(v160,v162,v155,v154,v157,v156);
+v161.type=v155;
+v161.size=v162;
+v161.buffer=v152;
+v161.normalized=v154;
+v161.offset=v156;
+v161.stride=v157;
+}
+if(v161.divisor!==v158){
+v108.vertexAttribDivisorANGLE(v160,v158);
+v161.divisor=v158;
+}
+}
+else{
+if(v161.buffer){
+v1.disableVertexAttribArray(v160);
+v161.buffer=null;
+}
+if(v161.x!==v148||v161.y!==v149||v161.z!==v150||v161.w!==v151){
+v1.vertexAttrib4f(v160,v148,v149,v150,v151);
+v161.x=v148;
+v161.y=v149;
+v161.z=v150;
+v161.w=v151;
+}
+}
+v163=a0["positionFractBuffer"];
+v52.buffer=v163;
+v164=false;
+v165=1;
+v166=0;
+v167=0;
+v168=0;
+v169=0;
+v170=null;
+v171=0;
+v172=false;
+v173=5126;
+v174=0;
+v175=0;
+v176=0;
+if(v16(v52)){
+v164=true;
+v170=v8.createStream(34962,v52);
+v173=v170.dtype;
+}
+else{
+v170=v8.getBuffer(v52);
+if(v170){
+v173=v170.dtype;
+}
+else if("constant" in v52){
+v165=2;
+if(typeof v52.constant === "number"){
+v166=v52.constant;
+v167=v168=v169=0;
+}
+else{
+v166=v52.constant.length>0?v52.constant[0]:0;
+v167=v52.constant.length>1?v52.constant[1]:0;
+v168=v52.constant.length>2?v52.constant[2]:0;
+v169=v52.constant.length>3?v52.constant[3]:0;
+}
+}
+else{
+if(v16(v52.buffer)){
+v170=v8.createStream(34962,v52.buffer);
+}
+else{
+v170=v8.getBuffer(v52.buffer);
+}
+v173="type" in v52?v46[v52.type]:v170.dtype;
+v172=!!v52.normalized;
+v171=v52.size|0;
+v174=v52.offset|0;
+v175=v52.stride|0;
+v176=v52.divisor|0;
+}
+}
+v178=g177.location;
+v179=v10[v178];
+if(v165===1){
+if(!v179.buffer){
+v1.enableVertexAttribArray(v178);
+}
+v180=v171||2;
+if(v179.type!==v173||v179.size!==v180||v179.buffer!==v170||v179.normalized!==v172||v179.offset!==v174||v179.stride!==v175){
+v1.bindBuffer(34962,v170.buffer);
+v1.vertexAttribPointer(v178,v180,v173,v172,v175,v174);
+v179.type=v173;
+v179.size=v180;
+v179.buffer=v170;
+v179.normalized=v172;
+v179.offset=v174;
+v179.stride=v175;
+}
+if(v179.divisor!==v176){
+v108.vertexAttribDivisorANGLE(v178,v176);
+v179.divisor=v176;
+}
+}
+else{
+if(v179.buffer){
+v1.disableVertexAttribArray(v178);
+v179.buffer=null;
+}
+if(v179.x!==v166||v179.y!==v167||v179.z!==v168||v179.w!==v169){
+v1.vertexAttrib4f(v178,v166,v167,v168,v169);
+v179.x=v166;
+v179.y=v167;
+v179.z=v168;
+v179.w=v169;
+}
+}
+v181=a0["colorBuffer"];
+v53.buffer=v181;
+v182=false;
+v183=1;
+v184=0;
+v185=0;
+v186=0;
+v187=0;
+v188=null;
+v189=0;
+v190=false;
+v191=5126;
+v192=0;
+v193=0;
+v194=0;
+if(v16(v53)){
+v182=true;
+v188=v8.createStream(34962,v53);
+v191=v188.dtype;
+}
+else{
+v188=v8.getBuffer(v53);
+if(v188){
+v191=v188.dtype;
+}
+else if("constant" in v53){
+v183=2;
+if(typeof v53.constant === "number"){
+v184=v53.constant;
+v185=v186=v187=0;
+}
+else{
+v184=v53.constant.length>0?v53.constant[0]:0;
+v185=v53.constant.length>1?v53.constant[1]:0;
+v186=v53.constant.length>2?v53.constant[2]:0;
+v187=v53.constant.length>3?v53.constant[3]:0;
+}
+}
+else{
+if(v16(v53.buffer)){
+v188=v8.createStream(34962,v53.buffer);
+}
+else{
+v188=v8.getBuffer(v53.buffer);
+}
+v191="type" in v53?v46[v53.type]:v188.dtype;
+v190=!!v53.normalized;
+v189=v53.size|0;
+v192=v53.offset|0;
+v193=v53.stride|0;
+v194=v53.divisor|0;
+}
+}
+v196=g195.location;
+v197=v10[v196];
+if(v183===1){
+if(!v197.buffer){
+v1.enableVertexAttribArray(v196);
+}
+v198=v189||4;
+if(v197.type!==v191||v197.size!==v198||v197.buffer!==v188||v197.normalized!==v190||v197.offset!==v192||v197.stride!==v193){
+v1.bindBuffer(34962,v188.buffer);
+v1.vertexAttribPointer(v196,v198,v191,v190,v193,v192);
+v197.type=v191;
+v197.size=v198;
+v197.buffer=v188;
+v197.normalized=v190;
+v197.offset=v192;
+v197.stride=v193;
+}
+if(v197.divisor!==v194){
+v108.vertexAttribDivisorANGLE(v196,v194);
+v197.divisor=v194;
+}
+}
+else{
+if(v197.buffer){
+v1.disableVertexAttribArray(v196);
+v197.buffer=null;
+}
+if(v197.x!==v184||v197.y!==v185||v197.z!==v186||v197.w!==v187){
+v1.vertexAttrib4f(v196,v184,v185,v186,v187);
+v197.x=v184;
+v197.y=v185;
+v197.z=v186;
+v197.w=v187;
+}
+}
+v201=g200.location;
+v202=v10[v201];
+if(!v202.buffer){
+v1.enableVertexAttribArray(v201);
+}
+if(v202.type!==5126||v202.size!==1||v202.buffer!==g199||v202.normalized!==false||v202.offset!==0||v202.stride!==8){
+v1.bindBuffer(34962,g199.buffer);
+v1.vertexAttribPointer(v201,1,5126,false,8,0);
+v202.type=5126;
+v202.size=1;
+v202.buffer=g199;
+v202.normalized=false;
+v202.offset=0;
+v202.stride=8;
+}
+if(v202.divisor!==0){
+v108.vertexAttribDivisorANGLE(v201,0);
+v202.divisor=0;
+}
+v204=g203.location;
+v205=v10[v204];
+if(!v205.buffer){
+v1.enableVertexAttribArray(v204);
+}
+if(v205.type!==5126||v205.size!==1||v205.buffer!==g199||v205.normalized!==false||v205.offset!==4||v205.stride!==8){
+v1.bindBuffer(34962,g199.buffer);
+v1.vertexAttribPointer(v204,1,5126,false,8,4);
+v205.type=5126;
+v205.size=1;
+v205.buffer=g199;
+v205.normalized=false;
+v205.offset=4;
+v205.stride=8;
+}
+if(v205.divisor!==0){
+v108.vertexAttribDivisorANGLE(v204,0);
+v205.divisor=0;
+}
+v207=a0["dashLength"];
+v1.uniform1f(g206.location,v207);
+v209=a0["dashTexture"];
+if(v209&&v209._reglType==="framebuffer"){
+v209=v209.color[0];
+}
+v210=v209._texture;
+v1.uniform1i(g208.location,v210.bind());
+v212=a0["depth"];
+v1.uniform1f(g211.location,v212);
+v214=a0["opacity"];
+v1.uniform1f(g213.location,v214);
+v216=a0["scale"];
+v217=v216[0];
+v218=v216[1];
+v1.uniform2f(g215.location,v217,v218);
+v220=a0["scaleFract"];
+v221=v220[0];
+v222=v220[1];
+v1.uniform2f(g219.location,v221,v222);
+v224=a0["thickness"];
+v1.uniform1f(g223.location,v224);
+v226=a0["translate"];
+v227=v226[0];
+v228=v226[1];
+v1.uniform2f(g225.location,v227,v228);
+v230=a0["translateFract"];
+v231=v230[0];
+v232=v230[1];
+v1.uniform2f(g229.location,v231,v232);
+v235=g234.call(this,v2,a0,0);
+v236=v235[0];
+v237=v235[1];
+v238=v235[2];
+v239=v235[3];
+v1.uniform4f(g233.location,v236,v237,v238,v239);
+v240=v6.elements;
+if(v240){
+v1.bindBuffer(34963,v240.buffer.buffer);
+}
+else if(v11.currentVAO){
+v240=v7.getElements(v11.currentVAO.elements);
+if(v240)v1.bindBuffer(34963,v240.buffer.buffer);
+}
+v241=a0["count"];
+if(v241>0){
+if(v240){
+v108.drawElementsInstancedANGLE(5,4,v240.type,0<<((v240.type-5121)>>1),v241);
+}
+else{
+v108.drawArraysInstancedANGLE(5,0,4,v241);
+}
+}
+else if(v241<0){
+if(v240){
+v1.drawElements(5,4,v240.type,0<<((v240.type-5121)>>1));
+}
+else{
+v1.drawArrays(5,0,4);
+}
+}
+v5.dirty=true;
+v11.setVAO(null);
+v2.viewportWidth=v93;
+v2.viewportHeight=v94;
+if(v105){
+g48.cpuTime+=performance.now()-v106;
+}
+if(v110){
+v8.destroyStream(v116);
+}
+if(v128){
+v8.destroyStream(v134);
+}
+if(v146){
+v8.destroyStream(v152);
+}
+if(v164){
+v8.destroyStream(v170);
+}
+if(v182){
+v8.destroyStream(v188);
+}
+v210.unbind();
+}
+,"scope":function(a0,a1,a2){
+var v242,v243,v244,v245,v246,v247,v248,v249,v250,v251,v252,v254,v256,v258,v260,v262,v264,v266,v268,v270,v272,v274,v275,v276,v277,v278,v279,v280,v281,v282,v283,v284,v285,v287,v289,v290,v291,v293,v295,v296,v297,v299,v301,v303,v304,v306,v307,v309,v310,v312,v313,v315,v316,v318,v319,v321,v322,v324,v325,v327,v328,v330,v331,v333,v334,v336,v337,v339,v340,v342,v344,v345,v346,v347,v348,v349,v350,v351,v352,v353,v354,v355,v357,v358,v359,v360,v361,v362,v363,v364,v365,v366,v367,v368,v369,v370,v371,v372,v373,v374,v375,v376,v377,v378,v379,v380,v381,v382,v384,v385,v386,v387,v388,v389,v390,v391,v392,v393,v394,v395,v396,v397,v398,v399,v400,v401,v402,v403,v404,v405,v406,v407,v408,v409,v411,v412,v413,v414,v415,v416,v417,v418,v419,v420,v421,v422,v423,v424,v425,v426,v427,v428,v429,v430,v431,v432,v433,v434,v435,v436,v438,v439,v440,v441,v442,v443,v444,v445,v446,v447,v448,v449,v450,v451,v452,v453,v454,v455,v456,v457,v458,v459,v460,v461,v462,v463,v465,v466,v467,v468,v469,v470,v471,v472,v473,v474,v475,v476,v477,v478,v479,v480,v481,v482,v483,v484,v485,v486,v487,v488,v489,v490,v492,v493,v494,v495,v496,v497,v498,v499,v500,v501,v502,v503,v505,v507;
+v242=a0["viewport"];
+v243=v242.x|0;
+v244=v242.y|0;
+v245="width" in v242?v242.width|0:(v2.framebufferWidth-v243);
+v246="height" in v242?v242.height|0:(v2.framebufferHeight-v244);
+v247=v2.viewportWidth;
+v2.viewportWidth=v245;
+v248=v2.viewportHeight;
+v2.viewportHeight=v246;
+v249=v39[0];
+v39[0]=v243;
+v250=v39[1];
+v39[1]=v244;
+v251=v39[2];
+v39[2]=v245;
+v252=v39[3];
+v39[3]=v246;
+v254=v17[0];
+v17[0]=g253;
+v256=v17[1];
+v17[1]=g255;
+v258=v17[2];
+v17[2]=g257;
+v260=v17[3];
+v17[3]=g259;
+v262=v4.blend_enable;
+v4.blend_enable=g261;
+v264=v19[0];
+v19[0]=g263;
+v266=v19[1];
+v19[1]=g265;
+v268=v21[0];
+v21[0]=g267;
+v270=v21[1];
+v21[1]=g269;
+v272=v21[2];
+v21[2]=g271;
+v274=v21[3];
+v21[3]=g273;
+v275=g96.call(this,v2,a0,a2);
+v276=v4.depth_enable;
+v4.depth_enable=v275;
+v277=a0["viewport"];
+v278=v277.x|0;
+v279=v277.y|0;
+v280="width" in v277?v277.width|0:(v2.framebufferWidth-v278);
+v281="height" in v277?v277.height|0:(v2.framebufferHeight-v279);
+v282=v37[0];
+v37[0]=v278;
+v283=v37[1];
+v37[1]=v279;
+v284=v37[2];
+v37[2]=v280;
+v285=v37[3];
+v37[3]=v281;
+v287=v4.scissor_enable;
+v4.scissor_enable=g286;
+v289=v4.stencil_enable;
+v4.stencil_enable=g288;
+v290=v5.profile;
+if(v290){
+v291=performance.now();
+g48.count++;
+}
+v293=v6.offset;
+v6.offset=g292;
+v295=v6.count;
+v6.count=g294;
+v296=a0["count"];
+v297=v6.instances;
+v6.instances=v296;
+v299=v6.primitive;
+v6.primitive=g298;
+v301=g300.call(this,v2,a0,a2);
+v303=v12[g302];
+v12[g302]=v301;
+v304=a0["miterLimit"];
+v306=v12[g305];
+v12[g305]=v304;
+v307=a0["scale"];
+v309=v12[g308];
+v12[g308]=v307;
+v310=a0["scaleFract"];
+v312=v12[g311];
+v12[g311]=v310;
+v313=a0["translateFract"];
+v315=v12[g314];
+v12[g314]=v313;
+v316=a0["translate"];
+v318=v12[g317];
+v12[g317]=v316;
+v319=a0["thickness"];
+v321=v12[g320];
+v12[g320]=v319;
+v322=a0["dashTexture"];
+v324=v12[g323];
+v12[g323]=v322;
+v325=a0["opacity"];
+v327=v12[g326];
+v12[g326]=v325;
+v328=v2["pixelRatio"];
+v330=v12[g329];
+v12[g329]=v328;
+v331=a0["id"];
+v333=v12[g332];
+v12[g332]=v331;
+v334=a0["dashLength"];
+v336=v12[g335];
+v12[g335]=v334;
+v337=g234.call(this,v2,a0,a2);
+v339=v12[g338];
+v12[g338]=v337;
+v340=a0["depth"];
+v342=v12[g341];
+v12[g341]=v340;
+v344=g343.state;
+g343.state=1;
+v345=g343.x;
+g343.x=0;
+v346=g343.y;
+g343.y=0;
+v347=g343.z;
+g343.z=0;
+v348=g343.w;
+g343.w=0;
+v349=g343.buffer;
+g343.buffer=g199;
+v350=g343.size;
+g343.size=0;
+v351=g343.normalized;
+g343.normalized=false;
+v352=g343.type;
+g343.type=5126;
+v353=g343.offset;
+g343.offset=0;
+v354=g343.stride;
+g343.stride=8;
+v355=g343.divisor;
+g343.divisor=0;
+v357=g356.state;
+g356.state=1;
+v358=g356.x;
+g356.x=0;
+v359=g356.y;
+g356.y=0;
+v360=g356.z;
+g356.z=0;
+v361=g356.w;
+g356.w=0;
+v362=g356.buffer;
+g356.buffer=g199;
+v363=g356.size;
+g356.size=0;
+v364=g356.normalized;
+g356.normalized=false;
+v365=g356.type;
+g356.type=5126;
+v366=g356.offset;
+g356.offset=4;
+v367=g356.stride;
+g356.stride=8;
+v368=g356.divisor;
+g356.divisor=0;
+v369=a0["positionBuffer"];
+v49.buffer=v369;
+v370=false;
+v371=1;
+v372=0;
+v373=0;
+v374=0;
+v375=0;
+v376=null;
+v377=0;
+v378=false;
+v379=5126;
+v380=0;
+v381=0;
+v382=0;
+if(v16(v49)){
+v370=true;
+v376=v8.createStream(34962,v49);
+v379=v376.dtype;
+}
+else{
+v376=v8.getBuffer(v49);
+if(v376){
+v379=v376.dtype;
+}
+else if("constant" in v49){
+v371=2;
+if(typeof v49.constant === "number"){
+v372=v49.constant;
+v373=v374=v375=0;
+}
+else{
+v372=v49.constant.length>0?v49.constant[0]:0;
+v373=v49.constant.length>1?v49.constant[1]:0;
+v374=v49.constant.length>2?v49.constant[2]:0;
+v375=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v376=v8.createStream(34962,v49.buffer);
+}
+else{
+v376=v8.getBuffer(v49.buffer);
+}
+v379="type" in v49?v46[v49.type]:v376.dtype;
+v378=!!v49.normalized;
+v377=v49.size|0;
+v380=v49.offset|0;
+v381=v49.stride|0;
+v382=v49.divisor|0;
+}
+}
+v384=g383.state;
+g383.state=v371;
+v385=g383.x;
+g383.x=v372;
+v386=g383.y;
+g383.y=v373;
+v387=g383.z;
+g383.z=v374;
+v388=g383.w;
+g383.w=v375;
+v389=g383.buffer;
+g383.buffer=v376;
+v390=g383.size;
+g383.size=v377;
+v391=g383.normalized;
+g383.normalized=v378;
+v392=g383.type;
+g383.type=v379;
+v393=g383.offset;
+g383.offset=v380;
+v394=g383.stride;
+g383.stride=v381;
+v395=g383.divisor;
+g383.divisor=v382;
+v396=a0["positionBuffer"];
+v50.buffer=v396;
+v397=false;
+v398=1;
+v399=0;
+v400=0;
+v401=0;
+v402=0;
+v403=null;
+v404=0;
+v405=false;
+v406=5126;
+v407=0;
+v408=0;
+v409=0;
+if(v16(v50)){
+v397=true;
+v403=v8.createStream(34962,v50);
+v406=v403.dtype;
+}
+else{
+v403=v8.getBuffer(v50);
+if(v403){
+v406=v403.dtype;
+}
+else if("constant" in v50){
+v398=2;
+if(typeof v50.constant === "number"){
+v399=v50.constant;
+v400=v401=v402=0;
+}
+else{
+v399=v50.constant.length>0?v50.constant[0]:0;
+v400=v50.constant.length>1?v50.constant[1]:0;
+v401=v50.constant.length>2?v50.constant[2]:0;
+v402=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v403=v8.createStream(34962,v50.buffer);
+}
+else{
+v403=v8.getBuffer(v50.buffer);
+}
+v406="type" in v50?v46[v50.type]:v403.dtype;
+v405=!!v50.normalized;
+v404=v50.size|0;
+v407=v50.offset|0;
+v408=v50.stride|0;
+v409=v50.divisor|0;
+}
+}
+v411=g410.state;
+g410.state=v398;
+v412=g410.x;
+g410.x=v399;
+v413=g410.y;
+g410.y=v400;
+v414=g410.z;
+g410.z=v401;
+v415=g410.w;
+g410.w=v402;
+v416=g410.buffer;
+g410.buffer=v403;
+v417=g410.size;
+g410.size=v404;
+v418=g410.normalized;
+g410.normalized=v405;
+v419=g410.type;
+g410.type=v406;
+v420=g410.offset;
+g410.offset=v407;
+v421=g410.stride;
+g410.stride=v408;
+v422=g410.divisor;
+g410.divisor=v409;
+v423=a0["positionFractBuffer"];
+v51.buffer=v423;
+v424=false;
+v425=1;
+v426=0;
+v427=0;
+v428=0;
+v429=0;
+v430=null;
+v431=0;
+v432=false;
+v433=5126;
+v434=0;
+v435=0;
+v436=0;
+if(v16(v51)){
+v424=true;
+v430=v8.createStream(34962,v51);
+v433=v430.dtype;
+}
+else{
+v430=v8.getBuffer(v51);
+if(v430){
+v433=v430.dtype;
+}
+else if("constant" in v51){
+v425=2;
+if(typeof v51.constant === "number"){
+v426=v51.constant;
+v427=v428=v429=0;
+}
+else{
+v426=v51.constant.length>0?v51.constant[0]:0;
+v427=v51.constant.length>1?v51.constant[1]:0;
+v428=v51.constant.length>2?v51.constant[2]:0;
+v429=v51.constant.length>3?v51.constant[3]:0;
+}
+}
+else{
+if(v16(v51.buffer)){
+v430=v8.createStream(34962,v51.buffer);
+}
+else{
+v430=v8.getBuffer(v51.buffer);
+}
+v433="type" in v51?v46[v51.type]:v430.dtype;
+v432=!!v51.normalized;
+v431=v51.size|0;
+v434=v51.offset|0;
+v435=v51.stride|0;
+v436=v51.divisor|0;
+}
+}
+v438=g437.state;
+g437.state=v425;
+v439=g437.x;
+g437.x=v426;
+v440=g437.y;
+g437.y=v427;
+v441=g437.z;
+g437.z=v428;
+v442=g437.w;
+g437.w=v429;
+v443=g437.buffer;
+g437.buffer=v430;
+v444=g437.size;
+g437.size=v431;
+v445=g437.normalized;
+g437.normalized=v432;
+v446=g437.type;
+g437.type=v433;
+v447=g437.offset;
+g437.offset=v434;
+v448=g437.stride;
+g437.stride=v435;
+v449=g437.divisor;
+g437.divisor=v436;
+v450=a0["positionFractBuffer"];
+v52.buffer=v450;
+v451=false;
+v452=1;
+v453=0;
+v454=0;
+v455=0;
+v456=0;
+v457=null;
+v458=0;
+v459=false;
+v460=5126;
+v461=0;
+v462=0;
+v463=0;
+if(v16(v52)){
+v451=true;
+v457=v8.createStream(34962,v52);
+v460=v457.dtype;
+}
+else{
+v457=v8.getBuffer(v52);
+if(v457){
+v460=v457.dtype;
+}
+else if("constant" in v52){
+v452=2;
+if(typeof v52.constant === "number"){
+v453=v52.constant;
+v454=v455=v456=0;
+}
+else{
+v453=v52.constant.length>0?v52.constant[0]:0;
+v454=v52.constant.length>1?v52.constant[1]:0;
+v455=v52.constant.length>2?v52.constant[2]:0;
+v456=v52.constant.length>3?v52.constant[3]:0;
+}
+}
+else{
+if(v16(v52.buffer)){
+v457=v8.createStream(34962,v52.buffer);
+}
+else{
+v457=v8.getBuffer(v52.buffer);
+}
+v460="type" in v52?v46[v52.type]:v457.dtype;
+v459=!!v52.normalized;
+v458=v52.size|0;
+v461=v52.offset|0;
+v462=v52.stride|0;
+v463=v52.divisor|0;
+}
+}
+v465=g464.state;
+g464.state=v452;
+v466=g464.x;
+g464.x=v453;
+v467=g464.y;
+g464.y=v454;
+v468=g464.z;
+g464.z=v455;
+v469=g464.w;
+g464.w=v456;
+v470=g464.buffer;
+g464.buffer=v457;
+v471=g464.size;
+g464.size=v458;
+v472=g464.normalized;
+g464.normalized=v459;
+v473=g464.type;
+g464.type=v460;
+v474=g464.offset;
+g464.offset=v461;
+v475=g464.stride;
+g464.stride=v462;
+v476=g464.divisor;
+g464.divisor=v463;
+v477=a0["colorBuffer"];
+v53.buffer=v477;
+v478=false;
+v479=1;
+v480=0;
+v481=0;
+v482=0;
+v483=0;
+v484=null;
+v485=0;
+v486=false;
+v487=5126;
+v488=0;
+v489=0;
+v490=0;
+if(v16(v53)){
+v478=true;
+v484=v8.createStream(34962,v53);
+v487=v484.dtype;
+}
+else{
+v484=v8.getBuffer(v53);
+if(v484){
+v487=v484.dtype;
+}
+else if("constant" in v53){
+v479=2;
+if(typeof v53.constant === "number"){
+v480=v53.constant;
+v481=v482=v483=0;
+}
+else{
+v480=v53.constant.length>0?v53.constant[0]:0;
+v481=v53.constant.length>1?v53.constant[1]:0;
+v482=v53.constant.length>2?v53.constant[2]:0;
+v483=v53.constant.length>3?v53.constant[3]:0;
+}
+}
+else{
+if(v16(v53.buffer)){
+v484=v8.createStream(34962,v53.buffer);
+}
+else{
+v484=v8.getBuffer(v53.buffer);
+}
+v487="type" in v53?v46[v53.type]:v484.dtype;
+v486=!!v53.normalized;
+v485=v53.size|0;
+v488=v53.offset|0;
+v489=v53.stride|0;
+v490=v53.divisor|0;
+}
+}
+v492=g491.state;
+g491.state=v479;
+v493=g491.x;
+g491.x=v480;
+v494=g491.y;
+g491.y=v481;
+v495=g491.z;
+g491.z=v482;
+v496=g491.w;
+g491.w=v483;
+v497=g491.buffer;
+g491.buffer=v484;
+v498=g491.size;
+g491.size=v485;
+v499=g491.normalized;
+g491.normalized=v486;
+v500=g491.type;
+g491.type=v487;
+v501=g491.offset;
+g491.offset=v488;
+v502=g491.stride;
+g491.stride=v489;
+v503=g491.divisor;
+g491.divisor=v490;
+v505=v9.vert;
+v9.vert=g504;
+v507=v9.frag;
+v9.frag=g506;
+v5.dirty=true;
+a1(v2,a0,a2);
+v2.viewportWidth=v247;
+v2.viewportHeight=v248;
+v39[0]=v249;
+v39[1]=v250;
+v39[2]=v251;
+v39[3]=v252;
+v17[0]=v254;
+v17[1]=v256;
+v17[2]=v258;
+v17[3]=v260;
+v4.blend_enable=v262;
+v19[0]=v264;
+v19[1]=v266;
+v21[0]=v268;
+v21[1]=v270;
+v21[2]=v272;
+v21[3]=v274;
+v4.depth_enable=v276;
+v37[0]=v282;
+v37[1]=v283;
+v37[2]=v284;
+v37[3]=v285;
+v4.scissor_enable=v287;
+v4.stencil_enable=v289;
+if(v290){
+g48.cpuTime+=performance.now()-v291;
+}
+v6.offset=v293;
+v6.count=v295;
+v6.instances=v297;
+v6.primitive=v299;
+v12[g302]=v303;
+v12[g305]=v306;
+v12[g308]=v309;
+v12[g311]=v312;
+v12[g314]=v315;
+v12[g317]=v318;
+v12[g320]=v321;
+v12[g323]=v324;
+v12[g326]=v327;
+v12[g329]=v330;
+v12[g332]=v333;
+v12[g335]=v336;
+v12[g338]=v339;
+v12[g341]=v342;
+g343.state=v344;
+g343.x=v345;
+g343.y=v346;
+g343.z=v347;
+g343.w=v348;
+g343.buffer=v349;
+g343.size=v350;
+g343.normalized=v351;
+g343.type=v352;
+g343.offset=v353;
+g343.stride=v354;
+g343.divisor=v355;
+g356.state=v357;
+g356.x=v358;
+g356.y=v359;
+g356.z=v360;
+g356.w=v361;
+g356.buffer=v362;
+g356.size=v363;
+g356.normalized=v364;
+g356.type=v365;
+g356.offset=v366;
+g356.stride=v367;
+g356.divisor=v368;
+if(v370){
+v8.destroyStream(v376);
+}
+g383.state=v384;
+g383.x=v385;
+g383.y=v386;
+g383.z=v387;
+g383.w=v388;
+g383.buffer=v389;
+g383.size=v390;
+g383.normalized=v391;
+g383.type=v392;
+g383.offset=v393;
+g383.stride=v394;
+g383.divisor=v395;
+if(v397){
+v8.destroyStream(v403);
+}
+g410.state=v411;
+g410.x=v412;
+g410.y=v413;
+g410.z=v414;
+g410.w=v415;
+g410.buffer=v416;
+g410.size=v417;
+g410.normalized=v418;
+g410.type=v419;
+g410.offset=v420;
+g410.stride=v421;
+g410.divisor=v422;
+if(v424){
+v8.destroyStream(v430);
+}
+g437.state=v438;
+g437.x=v439;
+g437.y=v440;
+g437.z=v441;
+g437.w=v442;
+g437.buffer=v443;
+g437.size=v444;
+g437.normalized=v445;
+g437.type=v446;
+g437.offset=v447;
+g437.stride=v448;
+g437.divisor=v449;
+if(v451){
+v8.destroyStream(v457);
+}
+g464.state=v465;
+g464.x=v466;
+g464.y=v467;
+g464.z=v468;
+g464.w=v469;
+g464.buffer=v470;
+g464.size=v471;
+g464.normalized=v472;
+g464.type=v473;
+g464.offset=v474;
+g464.stride=v475;
+g464.divisor=v476;
+if(v478){
+v8.destroyStream(v484);
+}
+g491.state=v492;
+g491.x=v493;
+g491.y=v494;
+g491.z=v495;
+g491.w=v496;
+g491.buffer=v497;
+g491.size=v498;
+g491.normalized=v499;
+g491.type=v500;
+g491.offset=v501;
+g491.stride=v502;
+g491.divisor=v503;
+v9.vert=v505;
+v9.frag=v507;
+v5.dirty=true;
+}
+,"batch":function(a0,a1){
+var v508,v509,v545,v546,v547,v548,v549;
+v508=v14.angle_instanced_arrays;
+v509=v13.next;
+if(v509!==v13.cur){
+if(v509){
+v1.bindFramebuffer(36160,v509.framebuffer);
+}
+else{
+v1.bindFramebuffer(36160,null);
+}
+v13.cur=v509;
+}
+if(v5.dirty){
+var v510,v511,v512,v513,v514,v515,v516,v517,v518,v519,v520,v521,v522,v523,v524,v525,v526,v527,v528,v529,v530,v531,v532,v533,v534,v535,v536,v537,v538,v539,v540,v541;
+v510=v4.dither;
+if(v510!==v5.dither){
+if(v510){
+v1.enable(3024);
+}
+else{
+v1.disable(3024);
+}
+v5.dither=v510;
+}
+v511=v4.depth_func;
+if(v511!==v5.depth_func){
+v1.depthFunc(v511);
+v5.depth_func=v511;
+}
+v512=v23[0];
+v513=v23[1];
+if(v512!==v24[0]||v513!==v24[1]){
+v1.depthRange(v512,v513);
+v24[0]=v512;
+v24[1]=v513;
+}
+v514=v4.depth_mask;
+if(v514!==v5.depth_mask){
+v1.depthMask(v514);
+v5.depth_mask=v514;
+}
+v515=v25[0];
+v516=v25[1];
+v517=v25[2];
+v518=v25[3];
+if(v515!==v26[0]||v516!==v26[1]||v517!==v26[2]||v518!==v26[3]){
+v1.colorMask(v515,v516,v517,v518);
+v26[0]=v515;
+v26[1]=v516;
+v26[2]=v517;
+v26[3]=v518;
+}
+v519=v4.cull_enable;
+if(v519!==v5.cull_enable){
+if(v519){
+v1.enable(2884);
+}
+else{
+v1.disable(2884);
+}
+v5.cull_enable=v519;
+}
+v520=v4.cull_face;
+if(v520!==v5.cull_face){
+v1.cullFace(v520);
+v5.cull_face=v520;
+}
+v521=v4.frontFace;
+if(v521!==v5.frontFace){
+v1.frontFace(v521);
+v5.frontFace=v521;
+}
+v522=v4.lineWidth;
+if(v522!==v5.lineWidth){
+v1.lineWidth(v522);
+v5.lineWidth=v522;
+}
+v523=v4.polygonOffset_enable;
+if(v523!==v5.polygonOffset_enable){
+if(v523){
+v1.enable(32823);
+}
+else{
+v1.disable(32823);
+}
+v5.polygonOffset_enable=v523;
+}
+v524=v27[0];
+v525=v27[1];
+if(v524!==v28[0]||v525!==v28[1]){
+v1.polygonOffset(v524,v525);
+v28[0]=v524;
+v28[1]=v525;
+}
+v526=v4.sample_alpha;
+if(v526!==v5.sample_alpha){
+if(v526){
+v1.enable(32926);
+}
+else{
+v1.disable(32926);
+}
+v5.sample_alpha=v526;
+}
+v527=v4.sample_enable;
+if(v527!==v5.sample_enable){
+if(v527){
+v1.enable(32928);
+}
+else{
+v1.disable(32928);
+}
+v5.sample_enable=v527;
+}
+v528=v29[0];
+v529=v29[1];
+if(v528!==v30[0]||v529!==v30[1]){
+v1.sampleCoverage(v528,v529);
+v30[0]=v528;
+v30[1]=v529;
+}
+v530=v4.stencil_mask;
+if(v530!==v5.stencil_mask){
+v1.stencilMask(v530);
+v5.stencil_mask=v530;
+}
+v531=v31[0];
+v532=v31[1];
+v533=v31[2];
+if(v531!==v32[0]||v532!==v32[1]||v533!==v32[2]){
+v1.stencilFunc(v531,v532,v533);
+v32[0]=v531;
+v32[1]=v532;
+v32[2]=v533;
+}
+v534=v33[0];
+v535=v33[1];
+v536=v33[2];
+v537=v33[3];
+if(v534!==v34[0]||v535!==v34[1]||v536!==v34[2]||v537!==v34[3]){
+v1.stencilOpSeparate(v534,v535,v536,v537);
+v34[0]=v534;
+v34[1]=v535;
+v34[2]=v536;
+v34[3]=v537;
+}
+v538=v35[0];
+v539=v35[1];
+v540=v35[2];
+v541=v35[3];
+if(v538!==v36[0]||v539!==v36[1]||v540!==v36[2]||v541!==v36[3]){
+v1.stencilOpSeparate(v538,v539,v540,v541);
+v36[0]=v538;
+v36[1]=v539;
+v36[2]=v540;
+v36[3]=v541;
+}
+}
+v1.blendColor(0,0,0,0);
+v18[0]=0;
+v18[1]=0;
+v18[2]=0;
+v18[3]=0;
+if(g542){
+v1.enable(3042);
+}
+else{
+v1.disable(3042);
+}
+v5.blend_enable=g542;
+v1.blendEquationSeparate(32774,32774);
+v20[0]=32774;
+v20[1]=32774;
+v1.blendFuncSeparate(770,771,773,1);
+v22[0]=770;
+v22[1]=771;
+v22[2]=773;
+v22[3]=1;
+if(g543){
+v1.enable(3089);
+}
+else{
+v1.disable(3089);
+}
+v5.scissor_enable=g543;
+if(g544){
+v1.enable(2960);
+}
+else{
+v1.disable(2960);
+}
+v5.stencil_enable=g544;
+v545=v5.profile;
+if(v545){
+v546=performance.now();
+g48.count+=a1;
+}
+v1.useProgram(g107.program);
+v547=v14.angle_instanced_arrays;
+var v563,v564,v565,v566,v691;
+v11.setVAO(null);
+v563=g200.location;
+v564=v10[v563];
+if(!v564.buffer){
+v1.enableVertexAttribArray(v563);
+}
+if(v564.type!==5126||v564.size!==1||v564.buffer!==g199||v564.normalized!==false||v564.offset!==0||v564.stride!==8){
+v1.bindBuffer(34962,g199.buffer);
+v1.vertexAttribPointer(v563,1,5126,false,8,0);
+v564.type=5126;
+v564.size=1;
+v564.buffer=g199;
+v564.normalized=false;
+v564.offset=0;
+v564.stride=8;
+}
+if(v564.divisor!==0){
+v547.vertexAttribDivisorANGLE(v563,0);
+v564.divisor=0;
+}
+v565=g203.location;
+v566=v10[v565];
+if(!v566.buffer){
+v1.enableVertexAttribArray(v565);
+}
+if(v566.type!==5126||v566.size!==1||v566.buffer!==g199||v566.normalized!==false||v566.offset!==4||v566.stride!==8){
+v1.bindBuffer(34962,g199.buffer);
+v1.vertexAttribPointer(v565,1,5126,false,8,4);
+v566.type=5126;
+v566.size=1;
+v566.buffer=g199;
+v566.normalized=false;
+v566.offset=4;
+v566.stride=8;
+}
+if(v566.divisor!==0){
+v547.vertexAttribDivisorANGLE(v565,0);
+v566.divisor=0;
+}
+v691=v6.elements;
+if(v691){
+v1.bindBuffer(34963,v691.buffer.buffer);
+}
+else if(v11.currentVAO){
+v691=v7.getElements(v11.currentVAO.elements);
+if(v691)v1.bindBuffer(34963,v691.buffer.buffer);
+}
+for(v548=0;
+v548<a1;
+++v548){
+v549=a0[v548];
+var v550,v551,v552,v553,v554,v555,v556,v557,v558,v559,v560,v561,v562,v567,v568,v569,v570,v571,v572,v573,v574,v575,v576,v577,v578,v579,v580,v581,v582,v583,v584,v585,v586,v587,v588,v589,v590,v591,v592,v593,v594,v595,v596,v597,v598,v599,v600,v601,v602,v603,v604,v605,v606,v607,v608,v609,v610,v611,v612,v613,v614,v615,v616,v617,v618,v619,v620,v621,v622,v623,v624,v625,v626,v627,v628,v629,v630,v631,v632,v633,v634,v635,v636,v637,v638,v639,v640,v641,v642,v643,v644,v645,v646,v647,v648,v649,v650,v651,v652,v653,v654,v655,v656,v657,v658,v659,v660,v661,v662,v663,v664,v665,v666,v667,v668,v669,v670,v671,v672,v673,v674,v675,v676,v677,v678,v679,v680,v681,v682,v683,v684,v685,v686,v687,v688,v689,v690,v692;
+v550=v549["viewport"];
+v551=v550.x|0;
+v552=v550.y|0;
+v553="width" in v550?v550.width|0:(v2.framebufferWidth-v551);
+v554="height" in v550?v550.height|0:(v2.framebufferHeight-v552);
+v555=v2.viewportWidth;
+v2.viewportWidth=v553;
+v556=v2.viewportHeight;
+v2.viewportHeight=v554;
+v1.viewport(v551,v552,v553,v554);
+v40[0]=v551;
+v40[1]=v552;
+v40[2]=v553;
+v40[3]=v554;
+v557=g96.call(this,v2,v549,v548);
+if(v557){
+v1.enable(2929);
+}
+else{
+v1.disable(2929);
+}
+v5.depth_enable=v557;
+v558=v549["viewport"];
+v559=v558.x|0;
+v560=v558.y|0;
+v561="width" in v558?v558.width|0:(v2.framebufferWidth-v559);
+v562="height" in v558?v558.height|0:(v2.framebufferHeight-v560);
+v1.scissor(v559,v560,v561,v562);
+v38[0]=v559;
+v38[1]=v560;
+v38[2]=v561;
+v38[3]=v562;
+v567=v549["positionBuffer"];
+v49.buffer=v567;
+v568=false;
+v569=1;
+v570=0;
+v571=0;
+v572=0;
+v573=0;
+v574=null;
+v575=0;
+v576=false;
+v577=5126;
+v578=0;
+v579=0;
+v580=0;
+if(v16(v49)){
+v568=true;
+v574=v8.createStream(34962,v49);
+v577=v574.dtype;
+}
+else{
+v574=v8.getBuffer(v49);
+if(v574){
+v577=v574.dtype;
+}
+else if("constant" in v49){
+v569=2;
+if(typeof v49.constant === "number"){
+v570=v49.constant;
+v571=v572=v573=0;
+}
+else{
+v570=v49.constant.length>0?v49.constant[0]:0;
+v571=v49.constant.length>1?v49.constant[1]:0;
+v572=v49.constant.length>2?v49.constant[2]:0;
+v573=v49.constant.length>3?v49.constant[3]:0;
+}
+}
+else{
+if(v16(v49.buffer)){
+v574=v8.createStream(34962,v49.buffer);
+}
+else{
+v574=v8.getBuffer(v49.buffer);
+}
+v577="type" in v49?v46[v49.type]:v574.dtype;
+v576=!!v49.normalized;
+v575=v49.size|0;
+v578=v49.offset|0;
+v579=v49.stride|0;
+v580=v49.divisor|0;
+}
+}
+v581=g123.location;
+v582=v10[v581];
+if(v569===1){
+if(!v582.buffer){
+v1.enableVertexAttribArray(v581);
+}
+v583=v575||2;
+if(v582.type!==v577||v582.size!==v583||v582.buffer!==v574||v582.normalized!==v576||v582.offset!==v578||v582.stride!==v579){
+v1.bindBuffer(34962,v574.buffer);
+v1.vertexAttribPointer(v581,v583,v577,v576,v579,v578);
+v582.type=v577;
+v582.size=v583;
+v582.buffer=v574;
+v582.normalized=v576;
+v582.offset=v578;
+v582.stride=v579;
+}
+if(v582.divisor!==v580){
+v547.vertexAttribDivisorANGLE(v581,v580);
+v582.divisor=v580;
+}
+}
+else{
+if(v582.buffer){
+v1.disableVertexAttribArray(v581);
+v582.buffer=null;
+}
+if(v582.x!==v570||v582.y!==v571||v582.z!==v572||v582.w!==v573){
+v1.vertexAttrib4f(v581,v570,v571,v572,v573);
+v582.x=v570;
+v582.y=v571;
+v582.z=v572;
+v582.w=v573;
+}
+}
+v584=v549["positionFractBuffer"];
+v51.buffer=v584;
+v585=false;
+v586=1;
+v587=0;
+v588=0;
+v589=0;
+v590=0;
+v591=null;
+v592=0;
+v593=false;
+v594=5126;
+v595=0;
+v596=0;
+v597=0;
+if(v16(v51)){
+v585=true;
+v591=v8.createStream(34962,v51);
+v594=v591.dtype;
+}
+else{
+v591=v8.getBuffer(v51);
+if(v591){
+v594=v591.dtype;
+}
+else if("constant" in v51){
+v586=2;
+if(typeof v51.constant === "number"){
+v587=v51.constant;
+v588=v589=v590=0;
+}
+else{
+v587=v51.constant.length>0?v51.constant[0]:0;
+v588=v51.constant.length>1?v51.constant[1]:0;
+v589=v51.constant.length>2?v51.constant[2]:0;
+v590=v51.constant.length>3?v51.constant[3]:0;
+}
+}
+else{
+if(v16(v51.buffer)){
+v591=v8.createStream(34962,v51.buffer);
+}
+else{
+v591=v8.getBuffer(v51.buffer);
+}
+v594="type" in v51?v46[v51.type]:v591.dtype;
+v593=!!v51.normalized;
+v592=v51.size|0;
+v595=v51.offset|0;
+v596=v51.stride|0;
+v597=v51.divisor|0;
+}
+}
+v598=g141.location;
+v599=v10[v598];
+if(v586===1){
+if(!v599.buffer){
+v1.enableVertexAttribArray(v598);
+}
+v600=v592||2;
+if(v599.type!==v594||v599.size!==v600||v599.buffer!==v591||v599.normalized!==v593||v599.offset!==v595||v599.stride!==v596){
+v1.bindBuffer(34962,v591.buffer);
+v1.vertexAttribPointer(v598,v600,v594,v593,v596,v595);
+v599.type=v594;
+v599.size=v600;
+v599.buffer=v591;
+v599.normalized=v593;
+v599.offset=v595;
+v599.stride=v596;
+}
+if(v599.divisor!==v597){
+v547.vertexAttribDivisorANGLE(v598,v597);
+v599.divisor=v597;
+}
+}
+else{
+if(v599.buffer){
+v1.disableVertexAttribArray(v598);
+v599.buffer=null;
+}
+if(v599.x!==v587||v599.y!==v588||v599.z!==v589||v599.w!==v590){
+v1.vertexAttrib4f(v598,v587,v588,v589,v590);
+v599.x=v587;
+v599.y=v588;
+v599.z=v589;
+v599.w=v590;
+}
+}
+v601=v549["positionBuffer"];
+v50.buffer=v601;
+v602=false;
+v603=1;
+v604=0;
+v605=0;
+v606=0;
+v607=0;
+v608=null;
+v609=0;
+v610=false;
+v611=5126;
+v612=0;
+v613=0;
+v614=0;
+if(v16(v50)){
+v602=true;
+v608=v8.createStream(34962,v50);
+v611=v608.dtype;
+}
+else{
+v608=v8.getBuffer(v50);
+if(v608){
+v611=v608.dtype;
+}
+else if("constant" in v50){
+v603=2;
+if(typeof v50.constant === "number"){
+v604=v50.constant;
+v605=v606=v607=0;
+}
+else{
+v604=v50.constant.length>0?v50.constant[0]:0;
+v605=v50.constant.length>1?v50.constant[1]:0;
+v606=v50.constant.length>2?v50.constant[2]:0;
+v607=v50.constant.length>3?v50.constant[3]:0;
+}
+}
+else{
+if(v16(v50.buffer)){
+v608=v8.createStream(34962,v50.buffer);
+}
+else{
+v608=v8.getBuffer(v50.buffer);
+}
+v611="type" in v50?v46[v50.type]:v608.dtype;
+v610=!!v50.normalized;
+v609=v50.size|0;
+v612=v50.offset|0;
+v613=v50.stride|0;
+v614=v50.divisor|0;
+}
+}
+v615=g159.location;
+v616=v10[v615];
+if(v603===1){
+if(!v616.buffer){
+v1.enableVertexAttribArray(v615);
+}
+v617=v609||2;
+if(v616.type!==v611||v616.size!==v617||v616.buffer!==v608||v616.normalized!==v610||v616.offset!==v612||v616.stride!==v613){
+v1.bindBuffer(34962,v608.buffer);
+v1.vertexAttribPointer(v615,v617,v611,v610,v613,v612);
+v616.type=v611;
+v616.size=v617;
+v616.buffer=v608;
+v616.normalized=v610;
+v616.offset=v612;
+v616.stride=v613;
+}
+if(v616.divisor!==v614){
+v547.vertexAttribDivisorANGLE(v615,v614);
+v616.divisor=v614;
+}
+}
+else{
+if(v616.buffer){
+v1.disableVertexAttribArray(v615);
+v616.buffer=null;
+}
+if(v616.x!==v604||v616.y!==v605||v616.z!==v606||v616.w!==v607){
+v1.vertexAttrib4f(v615,v604,v605,v606,v607);
+v616.x=v604;
+v616.y=v605;
+v616.z=v606;
+v616.w=v607;
+}
+}
+v618=v549["positionFractBuffer"];
+v52.buffer=v618;
+v619=false;
+v620=1;
+v621=0;
+v622=0;
+v623=0;
+v624=0;
+v625=null;
+v626=0;
+v627=false;
+v628=5126;
+v629=0;
+v630=0;
+v631=0;
+if(v16(v52)){
+v619=true;
+v625=v8.createStream(34962,v52);
+v628=v625.dtype;
+}
+else{
+v625=v8.getBuffer(v52);
+if(v625){
+v628=v625.dtype;
+}
+else if("constant" in v52){
+v620=2;
+if(typeof v52.constant === "number"){
+v621=v52.constant;
+v622=v623=v624=0;
+}
+else{
+v621=v52.constant.length>0?v52.constant[0]:0;
+v622=v52.constant.length>1?v52.constant[1]:0;
+v623=v52.constant.length>2?v52.constant[2]:0;
+v624=v52.constant.length>3?v52.constant[3]:0;
+}
+}
+else{
+if(v16(v52.buffer)){
+v625=v8.createStream(34962,v52.buffer);
+}
+else{
+v625=v8.getBuffer(v52.buffer);
+}
+v628="type" in v52?v46[v52.type]:v625.dtype;
+v627=!!v52.normalized;
+v626=v52.size|0;
+v629=v52.offset|0;
+v630=v52.stride|0;
+v631=v52.divisor|0;
+}
+}
+v632=g177.location;
+v633=v10[v632];
+if(v620===1){
+if(!v633.buffer){
+v1.enableVertexAttribArray(v632);
+}
+v634=v626||2;
+if(v633.type!==v628||v633.size!==v634||v633.buffer!==v625||v633.normalized!==v627||v633.offset!==v629||v633.stride!==v630){
+v1.bindBuffer(34962,v625.buffer);
+v1.vertexAttribPointer(v632,v634,v628,v627,v630,v629);
+v633.type=v628;
+v633.size=v634;
+v633.buffer=v625;
+v633.normalized=v627;
+v633.offset=v629;
+v633.stride=v630;
+}
+if(v633.divisor!==v631){
+v547.vertexAttribDivisorANGLE(v632,v631);
+v633.divisor=v631;
+}
+}
+else{
+if(v633.buffer){
+v1.disableVertexAttribArray(v632);
+v633.buffer=null;
+}
+if(v633.x!==v621||v633.y!==v622||v633.z!==v623||v633.w!==v624){
+v1.vertexAttrib4f(v632,v621,v622,v623,v624);
+v633.x=v621;
+v633.y=v622;
+v633.z=v623;
+v633.w=v624;
+}
+}
+v635=v549["colorBuffer"];
+v53.buffer=v635;
+v636=false;
+v637=1;
+v638=0;
+v639=0;
+v640=0;
+v641=0;
+v642=null;
+v643=0;
+v644=false;
+v645=5126;
+v646=0;
+v647=0;
+v648=0;
+if(v16(v53)){
+v636=true;
+v642=v8.createStream(34962,v53);
+v645=v642.dtype;
+}
+else{
+v642=v8.getBuffer(v53);
+if(v642){
+v645=v642.dtype;
+}
+else if("constant" in v53){
+v637=2;
+if(typeof v53.constant === "number"){
+v638=v53.constant;
+v639=v640=v641=0;
+}
+else{
+v638=v53.constant.length>0?v53.constant[0]:0;
+v639=v53.constant.length>1?v53.constant[1]:0;
+v640=v53.constant.length>2?v53.constant[2]:0;
+v641=v53.constant.length>3?v53.constant[3]:0;
+}
+}
+else{
+if(v16(v53.buffer)){
+v642=v8.createStream(34962,v53.buffer);
+}
+else{
+v642=v8.getBuffer(v53.buffer);
+}
+v645="type" in v53?v46[v53.type]:v642.dtype;
+v644=!!v53.normalized;
+v643=v53.size|0;
+v646=v53.offset|0;
+v647=v53.stride|0;
+v648=v53.divisor|0;
+}
+}
+v649=g195.location;
+v650=v10[v649];
+if(v637===1){
+if(!v650.buffer){
+v1.enableVertexAttribArray(v649);
+}
+v651=v643||4;
+if(v650.type!==v645||v650.size!==v651||v650.buffer!==v642||v650.normalized!==v644||v650.offset!==v646||v650.stride!==v647){
+v1.bindBuffer(34962,v642.buffer);
+v1.vertexAttribPointer(v649,v651,v645,v644,v647,v646);
+v650.type=v645;
+v650.size=v651;
+v650.buffer=v642;
+v650.normalized=v644;
+v650.offset=v646;
+v650.stride=v647;
+}
+if(v650.divisor!==v648){
+v547.vertexAttribDivisorANGLE(v649,v648);
+v650.divisor=v648;
+}
+}
+else{
+if(v650.buffer){
+v1.disableVertexAttribArray(v649);
+v650.buffer=null;
+}
+if(v650.x!==v638||v650.y!==v639||v650.z!==v640||v650.w!==v641){
+v1.vertexAttrib4f(v649,v638,v639,v640,v641);
+v650.x=v638;
+v650.y=v639;
+v650.z=v640;
+v650.w=v641;
+}
+}
+v652=v549["dashLength"];
+if(!v548||v653!==v652){
+v653=v652;
+v1.uniform1f(g206.location,v652);
+}
+v654=v549["dashTexture"];
+if(v654&&v654._reglType==="framebuffer"){
+v654=v654.color[0];
+}
+v655=v654._texture;
+v1.uniform1i(g208.location,v655.bind());
+v656=v549["depth"];
+if(!v548||v657!==v656){
+v657=v656;
+v1.uniform1f(g211.location,v656);
+}
+v658=v549["opacity"];
+if(!v548||v659!==v658){
+v659=v658;
+v1.uniform1f(g213.location,v658);
+}
+v660=v549["scale"];
+v661=v660[0];
+v663=v660[1];
+if(!v548||v662!==v661||v664!==v663){
+v662=v661;
+v664=v663;
+v1.uniform2f(g215.location,v661,v663);
+}
+v665=v549["scaleFract"];
+v666=v665[0];
+v668=v665[1];
+if(!v548||v667!==v666||v669!==v668){
+v667=v666;
+v669=v668;
+v1.uniform2f(g219.location,v666,v668);
+}
+v670=v549["thickness"];
+if(!v548||v671!==v670){
+v671=v670;
+v1.uniform1f(g223.location,v670);
+}
+v672=v549["translate"];
+v673=v672[0];
+v675=v672[1];
+if(!v548||v674!==v673||v676!==v675){
+v674=v673;
+v676=v675;
+v1.uniform2f(g225.location,v673,v675);
+}
+v677=v549["translateFract"];
+v678=v677[0];
+v680=v677[1];
+if(!v548||v679!==v678||v681!==v680){
+v679=v678;
+v681=v680;
+v1.uniform2f(g229.location,v678,v680);
+}
+v682=g234.call(this,v2,v549,v548);
+v683=v682[0];
+v685=v682[1];
+v687=v682[2];
+v689=v682[3];
+if(!v548||v684!==v683||v686!==v685||v688!==v687||v690!==v689){
+v684=v683;
+v686=v685;
+v688=v687;
+v690=v689;
+v1.uniform4f(g233.location,v683,v685,v687,v689);
+}
+v692=v549["count"];
+if(v692>0){
+if(v691){
+v547.drawElementsInstancedANGLE(5,4,v691.type,0<<((v691.type-5121)>>1),v692);
+}
+else{
+v547.drawArraysInstancedANGLE(5,0,4,v692);
+}
+}
+else if(v692<0){
+if(v691){
+v1.drawElements(5,4,v691.type,0<<((v691.type-5121)>>1));
+}
+else{
+v1.drawArrays(5,0,4);
+}
+}
+v2.viewportWidth=v555;
+v2.viewportHeight=v556;
+if(v568){
+v8.destroyStream(v574);
+}
+if(v585){
+v8.destroyStream(v591);
+}
+if(v602){
+v8.destroyStream(v608);
+}
+if(v619){
+v8.destroyStream(v625);
+}
+if(v636){
+v8.destroyStream(v642);
+}
+v655.unbind();
+}
+v5.dirty=true;
+v11.setVAO(null);
+if(v545){
+g48.cpuTime+=performance.now()-v546;
+}
+}
+,}
+
+}
\ No newline at end of file
diff --git a/src/generated/regl-codegen/ff8495670417d5d0e4caa9942ad63b4dff0242a390ac1cb807c78ca326d6f3ce b/src/generated/regl-codegen/ff8495670417d5d0e4caa9942ad63b4dff0242a390ac1cb807c78ca326d6f3ce
deleted file mode 100644
index 30500c5291a..00000000000
--- a/src/generated/regl-codegen/ff8495670417d5d0e4caa9942ad63b4dff0242a390ac1cb807c78ca326d6f3ce
+++ /dev/null
@@ -1,639 +0,0 @@
-module.exports = function anonymous(g0,g18,g19,g52,g117,g184
-) {
-"use strict";
-var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v48,v49,v50,v51,v114,v181;
-v1=g0.gl;
-v2=g0.context;
-v3=g0.strings;
-v4=g0.next;
-v5=g0.current;
-v6=g0.draw;
-v7=g0.elements;
-v8=g0.buffer;
-v9=g0.shader;
-v10=g0.attributes;
-v11=g0.vao;
-v12=g0.uniforms;
-v13=g0.framebuffer;
-v14=g0.extensions;
-v15=g0.timer;
-v16=g0.isBufferArgs;
-v17=g0.isArrayLike;
-v20=v4.blend_color;
-v21=v5.blend_color;
-v22=v4.blend_equation;
-v23=v5.blend_equation;
-v24=v4.blend_func;
-v25=v5.blend_func;
-v26=v4.depth_range;
-v27=v5.depth_range;
-v28=v4.colorMask;
-v29=v5.colorMask;
-v30=v4.polygonOffset_offset;
-v31=v5.polygonOffset_offset;
-v32=v4.sample_coverage;
-v33=v5.sample_coverage;
-v34=v4.stencil_func;
-v35=v5.stencil_func;
-v36=v4.stencil_opFront;
-v37=v5.stencil_opFront;
-v38=v4.stencil_opBack;
-v39=v5.stencil_opBack;
-v40=v4.scissor_box;
-v41=v5.scissor_box;
-v42=v4.viewport;
-v43=v5.viewport;
-v44={
-"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6}
-;
-v45={
-"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}
-;
-v46={
-"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,"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}
-;
-v47={
-"add":32774,"subtract":32778,"reverse subtract":32779}
-;
-v48={
-"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386}
-;
-v49={
-"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126}
-;
-v50={
-"cw":2304,"ccw":2305}
-;
-v51=["constant color, constant alpha","one minus constant color, constant alpha","constant color, one minus constant alpha","one minus constant color, one minus constant alpha","constant alpha, constant color","constant alpha, one minus constant color","one minus constant alpha, constant color","one minus constant alpha, one minus constant color"];
-v114={
-}
-;
-v181={
-}
-;
-return {
-"draw":function(a0){
-var v53,v54,v109,v110,v111,v112,v113,v115,v116;
-v53=v14.angle_instanced_arrays;
-v54=v13.next;
-if(v54!==v13.cur){
-if(v54){
-v1.bindFramebuffer(36160,v54.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v54;
-}
-if(v5.dirty){
-var v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93,v94,v95,v96,v97,v98,v99,v100,v101,v102,v103,v104,v105,v106,v107,v108;
-v55=v4.dither;
-if(v55!==v5.dither){
-if(v55){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v55;
-}
-v56=v4.blend_enable;
-if(v56!==v5.blend_enable){
-if(v56){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=v56;
-}
-v57=v20[0];
-v58=v20[1];
-v59=v20[2];
-v60=v20[3];
-if(v57!==v21[0]||v58!==v21[1]||v59!==v21[2]||v60!==v21[3]){
-v1.blendColor(v57,v58,v59,v60);
-v21[0]=v57;
-v21[1]=v58;
-v21[2]=v59;
-v21[3]=v60;
-}
-v61=v22[0];
-v62=v22[1];
-if(v61!==v23[0]||v62!==v23[1]){
-v1.blendEquationSeparate(v61,v62);
-v23[0]=v61;
-v23[1]=v62;
-}
-v63=v24[0];
-v64=v24[1];
-v65=v24[2];
-v66=v24[3];
-if(v63!==v25[0]||v64!==v25[1]||v65!==v25[2]||v66!==v25[3]){
-v1.blendFuncSeparate(v63,v64,v65,v66);
-v25[0]=v63;
-v25[1]=v64;
-v25[2]=v65;
-v25[3]=v66;
-}
-v67=v4.depth_enable;
-if(v67!==v5.depth_enable){
-if(v67){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v67;
-}
-v68=v4.depth_func;
-if(v68!==v5.depth_func){
-v1.depthFunc(v68);
-v5.depth_func=v68;
-}
-v69=v26[0];
-v70=v26[1];
-if(v69!==v27[0]||v70!==v27[1]){
-v1.depthRange(v69,v70);
-v27[0]=v69;
-v27[1]=v70;
-}
-v71=v4.depth_mask;
-if(v71!==v5.depth_mask){
-v1.depthMask(v71);
-v5.depth_mask=v71;
-}
-v72=v28[0];
-v73=v28[1];
-v74=v28[2];
-v75=v28[3];
-if(v72!==v29[0]||v73!==v29[1]||v74!==v29[2]||v75!==v29[3]){
-v1.colorMask(v72,v73,v74,v75);
-v29[0]=v72;
-v29[1]=v73;
-v29[2]=v74;
-v29[3]=v75;
-}
-v76=v4.cull_enable;
-if(v76!==v5.cull_enable){
-if(v76){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v76;
-}
-v77=v4.cull_face;
-if(v77!==v5.cull_face){
-v1.cullFace(v77);
-v5.cull_face=v77;
-}
-v78=v4.frontFace;
-if(v78!==v5.frontFace){
-v1.frontFace(v78);
-v5.frontFace=v78;
-}
-v79=v4.lineWidth;
-if(v79!==v5.lineWidth){
-v1.lineWidth(v79);
-v5.lineWidth=v79;
-}
-v80=v4.polygonOffset_enable;
-if(v80!==v5.polygonOffset_enable){
-if(v80){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v80;
-}
-v81=v30[0];
-v82=v30[1];
-if(v81!==v31[0]||v82!==v31[1]){
-v1.polygonOffset(v81,v82);
-v31[0]=v81;
-v31[1]=v82;
-}
-v83=v4.sample_alpha;
-if(v83!==v5.sample_alpha){
-if(v83){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v83;
-}
-v84=v4.sample_enable;
-if(v84!==v5.sample_enable){
-if(v84){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v84;
-}
-v85=v32[0];
-v86=v32[1];
-if(v85!==v33[0]||v86!==v33[1]){
-v1.sampleCoverage(v85,v86);
-v33[0]=v85;
-v33[1]=v86;
-}
-v87=v4.stencil_enable;
-if(v87!==v5.stencil_enable){
-if(v87){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v87;
-}
-v88=v4.stencil_mask;
-if(v88!==v5.stencil_mask){
-v1.stencilMask(v88);
-v5.stencil_mask=v88;
-}
-v89=v34[0];
-v90=v34[1];
-v91=v34[2];
-if(v89!==v35[0]||v90!==v35[1]||v91!==v35[2]){
-v1.stencilFunc(v89,v90,v91);
-v35[0]=v89;
-v35[1]=v90;
-v35[2]=v91;
-}
-v92=v36[0];
-v93=v36[1];
-v94=v36[2];
-v95=v36[3];
-if(v92!==v37[0]||v93!==v37[1]||v94!==v37[2]||v95!==v37[3]){
-v1.stencilOpSeparate(v92,v93,v94,v95);
-v37[0]=v92;
-v37[1]=v93;
-v37[2]=v94;
-v37[3]=v95;
-}
-v96=v38[0];
-v97=v38[1];
-v98=v38[2];
-v99=v38[3];
-if(v96!==v39[0]||v97!==v39[1]||v98!==v39[2]||v99!==v39[3]){
-v1.stencilOpSeparate(v96,v97,v98,v99);
-v39[0]=v96;
-v39[1]=v97;
-v39[2]=v98;
-v39[3]=v99;
-}
-v100=v4.scissor_enable;
-if(v100!==v5.scissor_enable){
-if(v100){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=v100;
-}
-v101=v40[0];
-v102=v40[1];
-v103=v40[2];
-v104=v40[3];
-if(v101!==v41[0]||v102!==v41[1]||v103!==v41[2]||v104!==v41[3]){
-v1.scissor(v101,v102,v103,v104);
-v41[0]=v101;
-v41[1]=v102;
-v41[2]=v103;
-v41[3]=v104;
-}
-v105=v42[0];
-v106=v42[1];
-v107=v42[2];
-v108=v42[3];
-if(v105!==v43[0]||v106!==v43[1]||v107!==v43[2]||v108!==v43[3]){
-v1.viewport(v105,v106,v107,v108);
-v43[0]=v105;
-v43[1]=v106;
-v43[2]=v107;
-v43[3]=v108;
-}
-v5.dirty=false;
-}
-v109=v5.profile;
-if(v109){
-v110=performance.now();
-g52.count++;
-}
-v111=v9.frag;
-v112=v9.vert;
-v113=v9.program(v112,v111,g19);
-v1.useProgram(v113.program);
-v11.setVAO(null);
-v115=v113.id;
-v116=v114[v115];
-if(v116){
-v116.call(this,a0);
-}
-else{
-v116=v114[v115]=g117(v113);
-v116.call(this,a0);
-}
-v11.setVAO(null);
-if(v109){
-g52.cpuTime+=performance.now()-v110;
-}
-}
-,"scope":function(a0,a1,a2){
-var v118,v119;
-v118=v5.profile;
-if(v118){
-v119=performance.now();
-g52.count++;
-}
-a1(v2,a0,a2);
-if(v118){
-g52.cpuTime+=performance.now()-v119;
-}
-}
-,"batch":function(a0,a1){
-var v120,v121,v176,v177,v178,v179,v180,v182,v183;
-v120=v14.angle_instanced_arrays;
-v121=v13.next;
-if(v121!==v13.cur){
-if(v121){
-v1.bindFramebuffer(36160,v121.framebuffer);
-}
-else{
-v1.bindFramebuffer(36160,null);
-}
-v13.cur=v121;
-}
-if(v5.dirty){
-var v122,v123,v124,v125,v126,v127,v128,v129,v130,v131,v132,v133,v134,v135,v136,v137,v138,v139,v140,v141,v142,v143,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v174,v175;
-v122=v4.dither;
-if(v122!==v5.dither){
-if(v122){
-v1.enable(3024);
-}
-else{
-v1.disable(3024);
-}
-v5.dither=v122;
-}
-v123=v4.blend_enable;
-if(v123!==v5.blend_enable){
-if(v123){
-v1.enable(3042);
-}
-else{
-v1.disable(3042);
-}
-v5.blend_enable=v123;
-}
-v124=v20[0];
-v125=v20[1];
-v126=v20[2];
-v127=v20[3];
-if(v124!==v21[0]||v125!==v21[1]||v126!==v21[2]||v127!==v21[3]){
-v1.blendColor(v124,v125,v126,v127);
-v21[0]=v124;
-v21[1]=v125;
-v21[2]=v126;
-v21[3]=v127;
-}
-v128=v22[0];
-v129=v22[1];
-if(v128!==v23[0]||v129!==v23[1]){
-v1.blendEquationSeparate(v128,v129);
-v23[0]=v128;
-v23[1]=v129;
-}
-v130=v24[0];
-v131=v24[1];
-v132=v24[2];
-v133=v24[3];
-if(v130!==v25[0]||v131!==v25[1]||v132!==v25[2]||v133!==v25[3]){
-v1.blendFuncSeparate(v130,v131,v132,v133);
-v25[0]=v130;
-v25[1]=v131;
-v25[2]=v132;
-v25[3]=v133;
-}
-v134=v4.depth_enable;
-if(v134!==v5.depth_enable){
-if(v134){
-v1.enable(2929);
-}
-else{
-v1.disable(2929);
-}
-v5.depth_enable=v134;
-}
-v135=v4.depth_func;
-if(v135!==v5.depth_func){
-v1.depthFunc(v135);
-v5.depth_func=v135;
-}
-v136=v26[0];
-v137=v26[1];
-if(v136!==v27[0]||v137!==v27[1]){
-v1.depthRange(v136,v137);
-v27[0]=v136;
-v27[1]=v137;
-}
-v138=v4.depth_mask;
-if(v138!==v5.depth_mask){
-v1.depthMask(v138);
-v5.depth_mask=v138;
-}
-v139=v28[0];
-v140=v28[1];
-v141=v28[2];
-v142=v28[3];
-if(v139!==v29[0]||v140!==v29[1]||v141!==v29[2]||v142!==v29[3]){
-v1.colorMask(v139,v140,v141,v142);
-v29[0]=v139;
-v29[1]=v140;
-v29[2]=v141;
-v29[3]=v142;
-}
-v143=v4.cull_enable;
-if(v143!==v5.cull_enable){
-if(v143){
-v1.enable(2884);
-}
-else{
-v1.disable(2884);
-}
-v5.cull_enable=v143;
-}
-v144=v4.cull_face;
-if(v144!==v5.cull_face){
-v1.cullFace(v144);
-v5.cull_face=v144;
-}
-v145=v4.frontFace;
-if(v145!==v5.frontFace){
-v1.frontFace(v145);
-v5.frontFace=v145;
-}
-v146=v4.lineWidth;
-if(v146!==v5.lineWidth){
-v1.lineWidth(v146);
-v5.lineWidth=v146;
-}
-v147=v4.polygonOffset_enable;
-if(v147!==v5.polygonOffset_enable){
-if(v147){
-v1.enable(32823);
-}
-else{
-v1.disable(32823);
-}
-v5.polygonOffset_enable=v147;
-}
-v148=v30[0];
-v149=v30[1];
-if(v148!==v31[0]||v149!==v31[1]){
-v1.polygonOffset(v148,v149);
-v31[0]=v148;
-v31[1]=v149;
-}
-v150=v4.sample_alpha;
-if(v150!==v5.sample_alpha){
-if(v150){
-v1.enable(32926);
-}
-else{
-v1.disable(32926);
-}
-v5.sample_alpha=v150;
-}
-v151=v4.sample_enable;
-if(v151!==v5.sample_enable){
-if(v151){
-v1.enable(32928);
-}
-else{
-v1.disable(32928);
-}
-v5.sample_enable=v151;
-}
-v152=v32[0];
-v153=v32[1];
-if(v152!==v33[0]||v153!==v33[1]){
-v1.sampleCoverage(v152,v153);
-v33[0]=v152;
-v33[1]=v153;
-}
-v154=v4.stencil_enable;
-if(v154!==v5.stencil_enable){
-if(v154){
-v1.enable(2960);
-}
-else{
-v1.disable(2960);
-}
-v5.stencil_enable=v154;
-}
-v155=v4.stencil_mask;
-if(v155!==v5.stencil_mask){
-v1.stencilMask(v155);
-v5.stencil_mask=v155;
-}
-v156=v34[0];
-v157=v34[1];
-v158=v34[2];
-if(v156!==v35[0]||v157!==v35[1]||v158!==v35[2]){
-v1.stencilFunc(v156,v157,v158);
-v35[0]=v156;
-v35[1]=v157;
-v35[2]=v158;
-}
-v159=v36[0];
-v160=v36[1];
-v161=v36[2];
-v162=v36[3];
-if(v159!==v37[0]||v160!==v37[1]||v161!==v37[2]||v162!==v37[3]){
-v1.stencilOpSeparate(v159,v160,v161,v162);
-v37[0]=v159;
-v37[1]=v160;
-v37[2]=v161;
-v37[3]=v162;
-}
-v163=v38[0];
-v164=v38[1];
-v165=v38[2];
-v166=v38[3];
-if(v163!==v39[0]||v164!==v39[1]||v165!==v39[2]||v166!==v39[3]){
-v1.stencilOpSeparate(v163,v164,v165,v166);
-v39[0]=v163;
-v39[1]=v164;
-v39[2]=v165;
-v39[3]=v166;
-}
-v167=v4.scissor_enable;
-if(v167!==v5.scissor_enable){
-if(v167){
-v1.enable(3089);
-}
-else{
-v1.disable(3089);
-}
-v5.scissor_enable=v167;
-}
-v168=v40[0];
-v169=v40[1];
-v170=v40[2];
-v171=v40[3];
-if(v168!==v41[0]||v169!==v41[1]||v170!==v41[2]||v171!==v41[3]){
-v1.scissor(v168,v169,v170,v171);
-v41[0]=v168;
-v41[1]=v169;
-v41[2]=v170;
-v41[3]=v171;
-}
-v172=v42[0];
-v173=v42[1];
-v174=v42[2];
-v175=v42[3];
-if(v172!==v43[0]||v173!==v43[1]||v174!==v43[2]||v175!==v43[3]){
-v1.viewport(v172,v173,v174,v175);
-v43[0]=v172;
-v43[1]=v173;
-v43[2]=v174;
-v43[3]=v175;
-}
-v5.dirty=false;
-}
-v176=v5.profile;
-if(v176){
-v177=performance.now();
-g52.count+=a1;
-}
-v178=v9.frag;
-v179=v9.vert;
-v180=v9.program(v179,v178,g19);
-v1.useProgram(v180.program);
-v11.setVAO(null);
-v182=v180.id;
-v183=v181[v182];
-if(v183){
-v183.call(this,a0,a1);
-}
-else{
-v183=v181[v182]=g184(v180);
-v183.call(this,a0,a1);
-}
-v11.setVAO(null);
-if(v176){
-g52.cpuTime+=performance.now()-v177;
-}
-}
-,}
-
-}
\ No newline at end of file
diff --git a/src/traces/parcoords/regl_precompiled.js b/src/traces/parcoords/regl_precompiled.js
index fef255879bc..d830c8cd791 100644
--- a/src/traces/parcoords/regl_precompiled.js
+++ b/src/traces/parcoords/regl_precompiled.js
@@ -1,12 +1,12 @@
 'use strict';
-var v0 = require('../../generated/regl-codegen/909861c036d6f1ef40ba2dfcc33ef32489d2fe05fa7b7984d5ff315ddceb17b1');
-var v1 = require('../../generated/regl-codegen/4df455b48c9de7d9f1de4b9481b505c09613ba7f90d2b4e360e673839566688e');
-var v2 = require('../../generated/regl-codegen/59568c77bcbe6343ee6109df49ceeb78c8a8a8a81872e88fb077f9a3d6dc0567');
-var v3 = require('../../generated/regl-codegen/c759965c8d66b2b356ae7455825df829f2ba7d4e7e903236f8c8d3bc5f45bd44');
+var v0 = require('../../generated/regl-codegen/453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45');
+var v1 = require('../../generated/regl-codegen/30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0');
+var v2 = require('../../generated/regl-codegen/a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470');
+var v3 = require('../../generated/regl-codegen/3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d');
 
 module.exports = {
-    '909861c036d6f1ef40ba2dfcc33ef32489d2fe05fa7b7984d5ff315ddceb17b1': v0,
-    '4df455b48c9de7d9f1de4b9481b505c09613ba7f90d2b4e360e673839566688e': v1,
-    '59568c77bcbe6343ee6109df49ceeb78c8a8a8a81872e88fb077f9a3d6dc0567': v2,
-    'c759965c8d66b2b356ae7455825df829f2ba7d4e7e903236f8c8d3bc5f45bd44': v3
+    '453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45': v0,
+    '30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0': v1,
+    'a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470': v2,
+    '3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d': v3
 };
diff --git a/src/traces/scattergl/regl_precompiled.js b/src/traces/scattergl/regl_precompiled.js
index 107353f057b..42f259cbb1d 100644
--- a/src/traces/scattergl/regl_precompiled.js
+++ b/src/traces/scattergl/regl_precompiled.js
@@ -1,24 +1,24 @@
 'use strict';
-var v0 = require('../../generated/regl-codegen/53f2bf051e4ba66c90f343d29aa8da9e4029454c0d428f8e46e94dfddc97c8c6');
-var v1 = require('../../generated/regl-codegen/8a43b073e4f3e9c0e499c8ac9c253f2aa1e3d3de2febfccc6526b52295dbf770');
-var v2 = require('../../generated/regl-codegen/ff8495670417d5d0e4caa9942ad63b4dff0242a390ac1cb807c78ca326d6f3ce');
-var v3 = require('../../generated/regl-codegen/21cec01aa93887c70e86d7f1bc84d6837da0b1f5c1ff4cadd42ac6eb37f9f316');
-var v4 = require('../../generated/regl-codegen/f9448a214a3e3cd439b767559aa71a4d1ccf5a8f39b8b756973e71acd33ff956');
-var v5 = require('../../generated/regl-codegen/0919c57b995304312da30a5af7873a319bfb7b7e22ff6b4fa203ecbd5774ebfc');
-var v6 = require('../../generated/regl-codegen/13c0ae156483f2bcbd7ff29404f0abfd8689ff43f41791a6c7469868690a4260');
-var v7 = require('../../generated/regl-codegen/19769c875db736c08a744c0a6aabe28276ed06aa24fdb7c36506a9f4c1f56f13');
-var v8 = require('../../generated/regl-codegen/6c3ff5a68d2906faf59307b58a799389f916ebdd3f7732ce75967575041988fc');
-var v9 = require('../../generated/regl-codegen/7c8e7f36e693904898ece5f7f8b49b23c69d98397567c3915a45647209eb7da4');
+var v0 = require('../../generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b');
+var v1 = require('../../generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81');
+var v2 = require('../../generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623');
+var v3 = require('../../generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7');
+var v4 = require('../../generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d');
+var v5 = require('../../generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210');
+var v6 = require('../../generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5');
+var v7 = require('../../generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019');
+var v8 = require('../../generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923');
+var v9 = require('../../generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034');
 
 module.exports = {
-    '53f2bf051e4ba66c90f343d29aa8da9e4029454c0d428f8e46e94dfddc97c8c6': v0,
-    '8a43b073e4f3e9c0e499c8ac9c253f2aa1e3d3de2febfccc6526b52295dbf770': v1,
-    'ff8495670417d5d0e4caa9942ad63b4dff0242a390ac1cb807c78ca326d6f3ce': v2,
-    '21cec01aa93887c70e86d7f1bc84d6837da0b1f5c1ff4cadd42ac6eb37f9f316': v3,
-    'f9448a214a3e3cd439b767559aa71a4d1ccf5a8f39b8b756973e71acd33ff956': v4,
-    '0919c57b995304312da30a5af7873a319bfb7b7e22ff6b4fa203ecbd5774ebfc': v5,
-    '13c0ae156483f2bcbd7ff29404f0abfd8689ff43f41791a6c7469868690a4260': v6,
-    '19769c875db736c08a744c0a6aabe28276ed06aa24fdb7c36506a9f4c1f56f13': v7,
-    '6c3ff5a68d2906faf59307b58a799389f916ebdd3f7732ce75967575041988fc': v8,
-    '7c8e7f36e693904898ece5f7f8b49b23c69d98397567c3915a45647209eb7da4': v9
+    '3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b': v0,
+    'cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81': v1,
+    '8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623': v2,
+    'fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7': v3,
+    'db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d': v4,
+    '49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210': v5,
+    'dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5': v6,
+    'bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019': v7,
+    '6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923': v8,
+    '8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034': v9
 };
diff --git a/src/traces/scatterpolargl/regl_precompiled.js b/src/traces/scatterpolargl/regl_precompiled.js
index 107353f057b..42f259cbb1d 100644
--- a/src/traces/scatterpolargl/regl_precompiled.js
+++ b/src/traces/scatterpolargl/regl_precompiled.js
@@ -1,24 +1,24 @@
 'use strict';
-var v0 = require('../../generated/regl-codegen/53f2bf051e4ba66c90f343d29aa8da9e4029454c0d428f8e46e94dfddc97c8c6');
-var v1 = require('../../generated/regl-codegen/8a43b073e4f3e9c0e499c8ac9c253f2aa1e3d3de2febfccc6526b52295dbf770');
-var v2 = require('../../generated/regl-codegen/ff8495670417d5d0e4caa9942ad63b4dff0242a390ac1cb807c78ca326d6f3ce');
-var v3 = require('../../generated/regl-codegen/21cec01aa93887c70e86d7f1bc84d6837da0b1f5c1ff4cadd42ac6eb37f9f316');
-var v4 = require('../../generated/regl-codegen/f9448a214a3e3cd439b767559aa71a4d1ccf5a8f39b8b756973e71acd33ff956');
-var v5 = require('../../generated/regl-codegen/0919c57b995304312da30a5af7873a319bfb7b7e22ff6b4fa203ecbd5774ebfc');
-var v6 = require('../../generated/regl-codegen/13c0ae156483f2bcbd7ff29404f0abfd8689ff43f41791a6c7469868690a4260');
-var v7 = require('../../generated/regl-codegen/19769c875db736c08a744c0a6aabe28276ed06aa24fdb7c36506a9f4c1f56f13');
-var v8 = require('../../generated/regl-codegen/6c3ff5a68d2906faf59307b58a799389f916ebdd3f7732ce75967575041988fc');
-var v9 = require('../../generated/regl-codegen/7c8e7f36e693904898ece5f7f8b49b23c69d98397567c3915a45647209eb7da4');
+var v0 = require('../../generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b');
+var v1 = require('../../generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81');
+var v2 = require('../../generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623');
+var v3 = require('../../generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7');
+var v4 = require('../../generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d');
+var v5 = require('../../generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210');
+var v6 = require('../../generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5');
+var v7 = require('../../generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019');
+var v8 = require('../../generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923');
+var v9 = require('../../generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034');
 
 module.exports = {
-    '53f2bf051e4ba66c90f343d29aa8da9e4029454c0d428f8e46e94dfddc97c8c6': v0,
-    '8a43b073e4f3e9c0e499c8ac9c253f2aa1e3d3de2febfccc6526b52295dbf770': v1,
-    'ff8495670417d5d0e4caa9942ad63b4dff0242a390ac1cb807c78ca326d6f3ce': v2,
-    '21cec01aa93887c70e86d7f1bc84d6837da0b1f5c1ff4cadd42ac6eb37f9f316': v3,
-    'f9448a214a3e3cd439b767559aa71a4d1ccf5a8f39b8b756973e71acd33ff956': v4,
-    '0919c57b995304312da30a5af7873a319bfb7b7e22ff6b4fa203ecbd5774ebfc': v5,
-    '13c0ae156483f2bcbd7ff29404f0abfd8689ff43f41791a6c7469868690a4260': v6,
-    '19769c875db736c08a744c0a6aabe28276ed06aa24fdb7c36506a9f4c1f56f13': v7,
-    '6c3ff5a68d2906faf59307b58a799389f916ebdd3f7732ce75967575041988fc': v8,
-    '7c8e7f36e693904898ece5f7f8b49b23c69d98397567c3915a45647209eb7da4': v9
+    '3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b': v0,
+    'cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81': v1,
+    '8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623': v2,
+    'fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7': v3,
+    'db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d': v4,
+    '49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210': v5,
+    'dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5': v6,
+    'bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019': v7,
+    '6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923': v8,
+    '8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034': v9
 };
diff --git a/src/traces/splom/regl_precompiled.js b/src/traces/splom/regl_precompiled.js
index 6569be365ab..f4a68f2a93f 100644
--- a/src/traces/splom/regl_precompiled.js
+++ b/src/traces/splom/regl_precompiled.js
@@ -1,24 +1,24 @@
 'use strict';
-var v0 = require('../../generated/regl-codegen/53f2bf051e4ba66c90f343d29aa8da9e4029454c0d428f8e46e94dfddc97c8c6');
-var v1 = require('../../generated/regl-codegen/8a43b073e4f3e9c0e499c8ac9c253f2aa1e3d3de2febfccc6526b52295dbf770');
-var v2 = require('../../generated/regl-codegen/ff8495670417d5d0e4caa9942ad63b4dff0242a390ac1cb807c78ca326d6f3ce');
-var v3 = require('../../generated/regl-codegen/13c0ae156483f2bcbd7ff29404f0abfd8689ff43f41791a6c7469868690a4260');
-var v4 = require('../../generated/regl-codegen/19769c875db736c08a744c0a6aabe28276ed06aa24fdb7c36506a9f4c1f56f13');
-var v5 = require('../../generated/regl-codegen/21cec01aa93887c70e86d7f1bc84d6837da0b1f5c1ff4cadd42ac6eb37f9f316');
-var v6 = require('../../generated/regl-codegen/f9448a214a3e3cd439b767559aa71a4d1ccf5a8f39b8b756973e71acd33ff956');
-var v7 = require('../../generated/regl-codegen/0919c57b995304312da30a5af7873a319bfb7b7e22ff6b4fa203ecbd5774ebfc');
-var v8 = require('../../generated/regl-codegen/6c3ff5a68d2906faf59307b58a799389f916ebdd3f7732ce75967575041988fc');
-var v9 = require('../../generated/regl-codegen/7c8e7f36e693904898ece5f7f8b49b23c69d98397567c3915a45647209eb7da4');
+var v0 = require('../../generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b');
+var v1 = require('../../generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81');
+var v2 = require('../../generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623');
+var v3 = require('../../generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5');
+var v4 = require('../../generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019');
+var v5 = require('../../generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7');
+var v6 = require('../../generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d');
+var v7 = require('../../generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210');
+var v8 = require('../../generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923');
+var v9 = require('../../generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034');
 
 module.exports = {
-    '53f2bf051e4ba66c90f343d29aa8da9e4029454c0d428f8e46e94dfddc97c8c6': v0,
-    '8a43b073e4f3e9c0e499c8ac9c253f2aa1e3d3de2febfccc6526b52295dbf770': v1,
-    'ff8495670417d5d0e4caa9942ad63b4dff0242a390ac1cb807c78ca326d6f3ce': v2,
-    '13c0ae156483f2bcbd7ff29404f0abfd8689ff43f41791a6c7469868690a4260': v3,
-    '19769c875db736c08a744c0a6aabe28276ed06aa24fdb7c36506a9f4c1f56f13': v4,
-    '21cec01aa93887c70e86d7f1bc84d6837da0b1f5c1ff4cadd42ac6eb37f9f316': v5,
-    'f9448a214a3e3cd439b767559aa71a4d1ccf5a8f39b8b756973e71acd33ff956': v6,
-    '0919c57b995304312da30a5af7873a319bfb7b7e22ff6b4fa203ecbd5774ebfc': v7,
-    '6c3ff5a68d2906faf59307b58a799389f916ebdd3f7732ce75967575041988fc': v8,
-    '7c8e7f36e693904898ece5f7f8b49b23c69d98397567c3915a45647209eb7da4': v9
+    '3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b': v0,
+    'cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81': v1,
+    '8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623': v2,
+    'dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5': v3,
+    'bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019': v4,
+    'fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7': v5,
+    'db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d': v6,
+    '49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210': v7,
+    '6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923': v8,
+    '8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034': v9
 };
