canvasxpress-cli 64.1.0 → 64.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  *
3
- * CanvasXpress 64.1 - JavaScript Canvas Library
3
+ * CanvasXpress 64.2 - JavaScript Canvas Library
4
4
  *
5
5
  * Copyright (c) 2009-2026 - license@canvasxpress.org
6
6
  *
@@ -24,7 +24,7 @@
24
24
  * explicit permission from CanvasXpress.
25
25
  *
26
26
  */
27
- (function(b,a){if(typeof exports==="object"){a(exports)}else{(a((b.CanvasXpress=b.CanvasXpress||{})))}}(this,(function(){var a=(typeof CanvasXpress==="function")?CanvasXpress:null;CanvasXpress=function(w,x,v,c,u,o,f,k,s){var i=this;var t=1;var e=2;var m=4;var y=8;var l=16;var g=32;var n=0;var r=function(){var z=document.querySelector(".jp-Notebook, .notebook_app")!==null;return window.Jupyter||window.jupyterlab||window.__jupyter_config__||z};var d=function(){p()};var j=function(z){if(z){i.init(z);if(f){f(z)}}else{i.init(w,x,v,c,u,o,f,k)}};var q=function(z){if(CanvasXpress.maps.hasOwnProperty(z)){return"https://www.canvasxpress.org"+CanvasXpress.maps[z]}if(CanvasXpress.usa.hasOwnProperty(z)){return"https://www.canvasxpress.org/data/maps/"+z+".json"}if(CanvasXpress.countries.hasOwnProperty(z)){return"https://www.canvasxpress.org/data/maps/"+z+".json"}return null};var h=function(C,A){var z=C.toLowerCase();var B;for(B in CanvasXpress.usa){if(CanvasXpress.usa.hasOwnProperty(B)&&CanvasXpress.usa[B][0].toLowerCase()===z){A.mapId=B;return"https://www.canvasxpress.org/data/maps/"+B+".json"}}for(B in CanvasXpress.countries){if(CanvasXpress.countries.hasOwnProperty(B)&&CanvasXpress.countries[B][0].toLowerCase()===z){A.mapId=B;return"https://www.canvasxpress.org/data/maps/"+B+".json"}}return null};if(v&&typeof v==="string"){v={prompt:v,llmBehaviour:"update",view:"table"}}else{if(w&&w.config&&w.config.prompt&&w.config.isR){w.config.llmBehaviour="update";w.config.view="table"}}var p=function(){if(!(n&t)){var B=document.styleSheets;var A=false;var D;for(D=0;D<B.length;D++){if(B[D].href&&B[D].href.indexOf("canvasXpress.css")>-1){A=true;break}}if(!A){n|=t;var G=document.createElement("link");G.rel="stylesheet";G.type="text/css";G.href="https://www.canvasxpress.org/dist/canvasXpress.css";document.getElementsByTagName("head")[0].appendChild(G);G.onload=function(){p()};return}n|=t}if(!(n&e)){var I=(v&&v.fonts)||(w&&w.config&&w.config.fonts);if(I){n|=e;var F=(v&&v.fonts)?v.fonts:w.config.fonts;CanvasXpress.loadFonts(F,d);return}n|=e}if(!(n&m)){var J=(v&&v.fontsExternal)||(w&&w.config&&w.config.fontsExternal);if(J){n|=m;var K=(v&&v.fontsExternal)?v.fontsExternal:w.config.fontsExternal;CanvasXpress.loadFontsExternal(K,d);return}n|=m}if(!(n&y)){var z=(v&&v.topoJSON&&typeof v.topoJSON==="string")||(w&&w.config&&w.config.topoJSON&&typeof w.config.topoJSON==="string");var C=(v&&v.useLeaflet)||(w&&w.config&&w.config.useLeaflet);if(z||C){n|=y;if(C){CanvasXpress.loadLeaflet(function(){var L=v&&v.topoJSON;var M=w&&w.config&&w.config.topoJSON;if(L){CanvasXpress.loadTopoJSON(v.topoJSON,v.mapId,d)}else{if(M){CanvasXpress.loadTopoJSON(w.config.topoJSON,w.config.mapId,d)}else{d()}}},i)}else{if(v&&v.topoJSON){CanvasXpress.loadTopoJSON(v.topoJSON,v.mapId,d)}else{CanvasXpress.loadTopoJSON(w.config.topoJSON,w.config.mapId,d)}}return}n|=y}if(!(n&l)){var H=(x&&typeof x==="string")||(w&&w.data&&typeof w.data==="string");if(H){n|=l;if(x){CanvasXpress.loadRemoteData(w,x,v,c,j)}else{CanvasXpress.loadRemoteData(w.renderTo,w.data,w.config,w.events,j)}return}n|=l}if(!(n&g)){var E=(v&&v.graphType==="Map"&&v.mapId&&!v.topoJSON)||(w&&w.config&&w.config.graphType==="Map"&&w.config.mapId&&!w.config.topoJSON);if(E){n|=g;if(v&&v.graphType==="Map"&&v.mapId&&!v.topoJSON){v.topoJSON=q(v.mapId)||h(v.mapId,v)||CanvasXpress.geojson;CanvasXpress.loadTopoJSON(v.topoJSON,v.mapId,d)}else{w.config.topoJSON=q(w.config.mapId)||h(w.config.mapId,w.config)||CanvasXpress.geojson;CanvasXpress.loadTopoJSON(w.config.topoJSON,w.config.mapId,d)}return}n|=g}i.init(w,x,v,c,u,o,f,k)};if(s||r()){p()}else{setTimeout(p,0)}};if(a){CanvasXpress.prototype=a.prototype;for(var b in a){if(a.hasOwnProperty(b)&&!CanvasXpress.hasOwnProperty(b)){CanvasXpress[b]=a[b]}}}})));(function(b,a){if(typeof exports==="object"&&typeof module!=="undefined"){a(exports)}else{(a((b.cxplot=b.cxplot||{})))}}(this,(function(){cxplot=function(y,z,k,a){if(typeof(y)=="object"&&y.isGGPlot){var n=function(g){if(Array.isArray(g)&&!g.length){return{}}else{var f={};for(var m in g){if(g[m]&&typeof g[m]==="string"){f[m]=g[m].replace(/^"(.+)"$/,"$1")}else{f[m]=g[m]}}return f}};var l=function(){if(y.order){y.aes.meta={};for(var f in y.order){y.aes.meta[f]=y.order[f]}}if(!y.aes.hasOwnProperty("x")||(y.aes.hasOwnProperty("x")&&y.data[0]&&!y.data[0].includes(y.aes.x))){for(var f=0;f<o.length;f++){var m=o[f];if(y.layers[m]&&y.layers[m].hasOwnProperty("x")&&y.data[0].includes(y.layers[m].x)){y.aes.x=y.layers[m].x;break}}}if(!y.aes.hasOwnProperty("y")||(y.aes.hasOwnProperty("y")&&y.data[0]&&!y.data[0].includes(y.aes.y))){for(var f=0;f<o.length;f++){var m=o[f];if(y.layers[m]&&y.layers[m].hasOwnProperty("y")&&y.data[0].includes(y.layers[m].y)){y.aes.y=y.layers[m].y;break}}}if(y.hasOwnProperty("meta")){y.aes.metaData=y.meta}if(y.hasOwnProperty("mappings")){y.aes.mappings=y.mappings}if(y.hasOwnProperty("scales")&&y.scales.hasOwnProperty("sizes")){if(Array.isArray(y.scales.sizes)){y.aes.sizes=y.scales.sizes}}if(y.hasOwnProperty("isGGMatrix")){y.aes.isGGMatrix=y.isGGMatrix}return y.aes};var x=function(f){if(f&&f.hasOwnProperty("hoverTemplate")){f.hoverTemplate+="<br>"}return f};var j=function(f){if(f&&Array.isArray(f)&&f.length==0&&y.scales&&y.scales.hasOwnProperty("setMinX")&&y.scales.hasOwnProperty("setMaxX")&&y.scales.hasOwnProperty("setMinY")&&y.scales.hasOwnProperty("setMaxY")){f=[["min","max"],[y.scales.setMinX,y.scales.setMaxX],[y.scales.setMinY,y.scales.setMaxY]]}return f};delete (y.isGGPlot);var p=JSON.stringify(y);var o=Array.isArray(y.geoms)?y.geoms:[y.geoms];var s=aes(l());if(o.indexOf("GeomDensity")!==-1){s.cxGraphType="Scatter2D"}var d=new cxplot(y.renderTo,j(y.data),s,a);var e={};d.skipGeoms=false;d.meta.config.user.geoms=o;d.meta.config.user.layers=y.layers;d.meta.config.user.cxplot=p;for(var r=0;r<o.length;r++){var t=o[r];var q=e[t]?t+"."+e[t]:t;var u=t.toLowerCase().replace("geom","geom_").replace("2","_2").replace("filled","_filled").replace("_qql","_qq_l").replace("ridgesgradient","ridges_gradient").replace("ridges","_ridges").replace("repel","_repel").replace("npc","_npc").replace("pattern","_pattern");if(d[u]&&!d.skipGeoms){d[u](n(y.layers[q]))}e[t]=e[t]?e[t]+1:1}d.skipGeoms=false;d.oqd(n(y.labels));d.PlY(n(y.scales));d.Rl3(n(y.coords));d.u4B(n(y.theme));d.Mn8(n(y.facet));d.Ogc(x(y.config));d.skipRender=false;d.U4z();return d}else{if(k){var b=["x","y"];for(var r=0;r<b.length;r++){if(k[b[r]]&&k[b[r]].match(/\*/)){var h=k[b[r]].split("*");h[0]=h[0].replace(/\s*$/,"");h[1]=Number(h[1].replace(/^\s*/,""));k[b[r]]=h[0];if(!isNaN(h[1])){k[b[r]]=h[0];k[b[r]+"AxisFactorValue"]=h[1]}}if(k[b[r]]&&z&&z[0]&&!z[0].includes(k[b[r]])){if(k[b[r]].match(/^after_stat/)){k.after_stat=k[b[r]].replace(/^after_stat\(/,"")}delete k[b[r]]}}}var w={aes:(k||{}),theme:"GGPlot",shapes:["circle","equilateral","rect","plus","minus","diamond","hexagon","octagon","star","pentagon"],isCxplot:true,isGGMatrix:(k&&k.isGGMatrix?k.isGGMatrix:false),legendStyleGgplot:true,skipRender:(k&&k.isR?true:false)};if(k&&k.cxGraphType){w.graphType=k.cxGraphType;delete k.cxGraphType}if(k&&k.hasOwnProperty("sizes")){if(Array.isArray(k.sizes)){w.sizes=k.sizes;while(w.sizes.length<10){var v=(w.sizes[w.sizes.length-1]-w.sizes[w.sizes.length-2])/2;w.sizes.push(Math.ceil(v+w.sizes[w.sizes.length-1]))}if(w.sizes[0]<4){var v=4-w.sizes[0];for(var r=0;r<w.sizes.length;r++){w.sizes[r]+=v}}}}if(k&&k.hasOwnProperty("metaData")){w.metaData=k.metaData}if(k.hasOwnProperty("xAxisFactorValue")){w.xAxisFactorValue=k.xAxisFactorValue}if(k.hasOwnProperty("yAxisFactorValue")){w.yAxisFactorValue=k.yAxisFactorValue}var c=new CanvasXpress(y,z,w,a,false,false,false,false,true);c.meta.ggplot.aes=k||{};c.meta.ggplot.data=z[0];c.meta.ggplot.order=k&&k.order?k.order:{};return c}}})));(function(b,a){if(typeof exports==="object"&&typeof module!=="undefined"){a(exports)}else{(a((b.aes=b.aes||{})))}}(this,(function(){aes=function(){var b=arguments;var f={};var e=["x","y","z","fill","color","shape","size","pattern"];var a=function(){if(!f.stringSampleFactors){f.stringSampleFactors=[]}if(!f.stringVariableFactors){f.stringVariableFactors=[]}if(!f.asSampleFactors){f.asSampleFactors=[]}if(!f.asVariableFactors){f.asVariableFactors=[]}};for(var c=0;c<b.length;c++){if(Array.isArray(b[c])&&Array.isArray(b[c][0])){f.data=b[c]}else{if(b[c] instanceof Object){for(var d in b[c]){f[d]=b[c][d];if(d=="factor"){a();f.stringSampleFactors.push(b[c][d]);f.stringVariableFactors.push(b[c][d]);f.asSampleFactors.push(b[c][d]);f.asVariableFactors.push(b[c][d]);if(b.length>1){if(c==0){f.x=b[c][d]}else{if(c==1){f.y=b[c][d]}else{if(c==2){f.z=b[c][d]}}}}}else{if(e.includes(d)){if(b[c][d] instanceof Object&&b[c][d].factor){a();f.stringSampleFactors.push(b[c][d].factor);f.stringVariableFactors.push(b[c][d].factor);f.asSampleFactors.push(b[c][d].factor);f.asVariableFactors.push(b[c][d].factor);f[d]=b[c][d].factor}else{if(b[c][d].toString().match(/^factor\(.+\)/)){f[d]=b[c][d].replace(/^factor\(/,"").replace(/\)$/,"");a();f.stringSampleFactors.push(f[d]);f.stringVariableFactors.push(f[d]);f.asSampleFactors.push(f[d]);f.asVariableFactors.push(f[d])}else{if(b[c].mappings&&b[c].mappings[d]){a();f.stringSampleFactors.push(b[c][d]);f.stringVariableFactors.push(b[c][d]);f.asSampleFactors.push(b[c][d]);f.asVariableFactors.push(b[c][d])}}}}else{if(d=="sample"){f.x=b[c][d]}}}}}else{if(c==0){f.x=b[c]}else{if(c==1){f.y=b[c]}else{if(c==2){f.z=b[c]}}}f[b[c]]=b[c]}}}return f}})));(function(b,a){if(typeof exports==="object"&&typeof module!=="undefined"){a(exports)}else{(a((b.ggplot=b.ggplot||{})))}}(this,(function(){var b=["point","line","path","bar","col","area","boxplot","violin","sina","histogram","density","dotplot","jitter","smooth","tile","raster","hex","bin_2d","contour","errorbar","ribbon","step","text","label","segment","rect","polygon","qq","quantile","dumbbell","rug","count","density_ridges"];function e(h){for(var g=1;g<arguments.length;g++){var i=arguments[g];if(i){for(var f in i){if(i.hasOwnProperty(f)){h[f]=i[f]}}}}return h}function c(j){var h=j.split("_");var g="Geom";for(var f=0;f<h.length;f++){g+=h[f].charAt(0).toUpperCase()+h[f].slice(1)}return g}function d(g,f){this.dataFrame=g||null;this.plotAes=f?e({},f):{};this.geomTokens=[];this.geomLayers={};this.geomCounts={};this.facetSpec={};this.labelSpec={};this.scaleSpec={};this.coordSpec={};this.themeSpec={};this.configSpec={};this.orderSpec={};this.renderTarget=null}d.prototype.data=function(f){this.dataFrame=f;return this};d.prototype.aes=function(f){e(this.plotAes,f);return this};d.prototype.addGeom=function(j,f){var h=c(j);var i=this.geomCounts[h]||0;var g=i===0?h:h+"."+i;this.geomLayers[g]=e({},this.plotAes,f);this.geomTokens.push(h);this.geomCounts[h]=i+1;return this};d.prototype.facet_wrap=function(f,g){this.facetSpec=e({facet:f,facetType:"wrap"},g);return this};d.prototype.facet_grid=function(f){this.facetSpec=e({facetType:"grid"},f);return this};d.prototype.facet=function(f){this.facetSpec=e({},f);return this};d.prototype.labs=function(f){e(this.labelSpec,f);return this};d.prototype.ggtitle=function(f){this.labelSpec.title=f;return this};d.prototype.scales=function(f){e(this.scaleSpec,f);return this};d.prototype.coords=function(f){e(this.coordSpec,f);return this};d.prototype.coord_flip=function(){this.coordSpec.flip=true;return this};d.prototype.theme=function(f){e(this.themeSpec,f);return this};d.prototype.config=function(f){e(this.configSpec,f);return this};d.prototype.spec=function(g){var f={renderTo:g||this.renderTarget,data:this.dataFrame,aes:this.plotAes,layers:this.geomLayers,geoms:this.geomTokens.length===1?this.geomTokens[0]:this.geomTokens,isGGPlot:true};if(this.elc(this.facetSpec).length){f.facet=this.facetSpec}if(this.elc(this.labelSpec).length){f.labels=this.labelSpec}if(this.elc(this.scaleSpec).length){f.scales=this.scaleSpec}if(this.elc(this.coordSpec).length){f.coords=this.coordSpec}if(this.elc(this.themeSpec).length){f.theme=this.themeSpec}if(this.elc(this.configSpec).length){f.config=this.configSpec}if(this.elc(this.orderSpec).length){f.order=this.orderSpec}return f};d.prototype.getKeys=function(h){var g=[];for(var f in h){if(h.hasOwnProperty(f)){g.push(f)}}return g};d.prototype.render=function(g,f){return cxplot(this.spec(g),null,null,f)};for(var a=0;a<b.length;a++){(function(f){d.prototype["geom_"+f]=function(g){return this.addGeom(f,g)}})(b[a])}ggplot=function(g,f){return new d(g,f)};if(typeof cxplot!=="undefined"&&cxplot){cxplot.plot=ggplot}})));CanvasXpress.onReady=function(){var f=[];var a=false;var d=false;var c=function(){if(!a){var g=CanvasXpress.instances[0];if(g){g.aru("canvasXpress JS ready");a=true;for(var h=0;h<f.length;h++){f[h].fn.call(window,f[h].ctx)}f=[]}}};var b=function(){if(window.document.readyState==="complete"){c()}};var e=function(){c()};window.onReady=function(h,g){if(a){setTimeout(function(){h(g)},1);return}else{f.push({fn:h,ctx:g})}if(window.document.readyState==="complete"){setTimeout(c,1)}else{if(!d){if(window.document.addEventListener){window.document.addEventListener("DOMContentLoaded",c,false);window.addEventListener("load",e,false)}else{window.document.attachEvent("onreadystatechange",b);window.attachEvent("onload",e)}d=true}}};return true}();CanvasXpress.loadLeaflet=function(c,d){var b=document.createElement("script");b.type="text/javascript";b.src="https://www.canvasxpress.org/assets/leaflet/leaflet.js";b.crossOrigin="anonymous";var a=document.createElement("link");a.type="text/css";a.rel="stylesheet";a.href="https://www.canvasxpress.org/assets/leaflet/leaflet.css";a.crossOrigin="anonymous";if(window.L){if(c){if(typeof(c)=="function"){c.call(d)}}}else{CanvasXpress.loadScripts([a,b],c,d)}};CanvasXpress.loadScripts=function(){var i=0;return function(files,callback,scope){var head=window.document.getElementsByTagName("head")[0];var loadScript=function(s,c){var t=s.type;if(t.match(/javascript/i)){s.onreadystatechange=function(){if(s.readyState==="loaded"||s.readyState==="complete"){s.onreadystatechange=null;c()}};s.onload=function(){c()};head.appendChild(s)}else{head.appendChild(s);c()}};var count=function(){if(i===files.length){i=0;if(callback){if(typeof(callback)=="function"){callback.call(scope)}else{if(typeof(callback)=="string"){eval("var fn = "+callback);fn()}}}}else{CanvasXpress.loadScripts(files,callback,scope)}};i++;if(files[i-1]){loadScript(files[i-1],count)}}}();CanvasXpress.transferDatasetAttributes=function(e,a,f){var d=JSON.parse(JSON.stringify(e.dataset));for(var c in d){if(d.hasOwnProperty(c)){if(f){a[c.replace(/^data-/,"")]=d[c]}else{var b="data-"+c.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase();a.setAttribute(b,d[c])}}}};CanvasXpress.initCanvas=function(g){var e=document.querySelectorAll("canvas.CanvasXpress");for(var d=0;d<e.length;d++){var h=e[d];if(h.id){var f=false;var a={};var b=CanvasXpress.getObject(h.id);if(h.hasAttribute("data-src")&&!b){f=h.getAttribute("data-src");CanvasXpress.transferDatasetAttributes(h,a,true);if(Object.keys(a).length){new CanvasXpress(h.id,f,a)}else{new CanvasXpress(h.id,f,false,false,false,false,g)}}}}};CanvasXpress.initImage=function(h){var j=document.querySelectorAll("img.CanvasXpress");for(var f=0;f<j.length;f++){var c=j[f];if(c.id){var d=CanvasXpress.getObject(c.id);var g=c.parentNode;if(!d){var e=c.src;var a=c.id;var b=window.document.createElement("canvas");b.width=c.width;b.height=c.height;CanvasXpress.transferDatasetAttributes(c,b);g.removeChild(c);b.id=a;g.appendChild(b);if(!h){h=function(){window.dispatchEvent(new Event("resize"))}}else{h=(function(i){return function(){i();window.dispatchEvent(new Event("resize"))}})(h)}new CanvasXpress(a,e,false,false,false,false,h)}}}};CanvasXpress.initTable=function(g){var c=document.querySelectorAll("table.CanvasXpress");for(var b=0;b<c.length;b++){var e=c[b];if(e.id){var h=CanvasXpress.getObject(e.id);var d=e.parentNode;if(!h){var f=e.id;var a=window.document.createElement("canvas");a.id="temp-table-id-"+e.id;a.width=e.hasAttribute("data-width")?e.getAttribute("data-width"):500;a.height=e.hasAttribute("data-height")?e.getAttribute("data-height"):500;CanvasXpress.transferDatasetAttributes(e,a);d.appendChild(a);new CanvasXpress("temp-table-id-"+e.id,f,false,false,false,false,g)}}}};CanvasXpress.pivot=function(M,z,N,x){function O(v,h){var r=v.slice(1);var c=[];for(var l=0;l<r.length;l++){c.push(r[l][h])}var k=[];for(var l=0;l<c.length;l++){if(k.indexOf(c[l])===-1){k.push(c[l])}}var m=r.length;var j=k.length;if(j===m){return false}else{return true}}if(!M||!Array.isArray(M)||M.length<2||!Array.isArray(M[0])||M[0].length<3){return M}var L=M[0];var B=M.slice(1);if(z===undefined){z=L[0]}if(N===undefined){N=L[1]}if(x===undefined){x=L[2]}var y=L.indexOf(z);var w=L.indexOf(N);var Q=L.indexOf(x);if(y===-1||w===-1||Q===-1){throw new Error("One or more specified column headers not found.")}if(!O(M,y)){return M}var s=[];var n=[];for(var I=0;I<L.length;I++){if(I!==y&&I!==w&&I!==Q){s.push(L[I]);n.push(I)}}var g={};for(var I=0;I<B.length;I++){var t=B[I];var C=t[y];if(!g[C]){g[C]={};g[C][z]=C;for(var F=0;F<s.length;F++){g[C][s[F]]=[]}}for(var F=0;F<s.length;F++){g[C][s[F]].push(t[n[F]])}var o=t[w];var S=t[Q];if(!g[C][o]){g[C][o]=[]}g[C][o].push(S)}var f=B.map(function(c){return c[w]});var H=[];for(var G=0;G<f.length;G++){var S=f[G];if(H.indexOf(S)===-1){H.push(S)}}var P=Object.keys(g);for(var I=0;I<P.length;I++){var R=P[I];for(var F=0;F<s.length;F++){var A=s[F];var b=g[R][A];var u=[];for(var E=0;E<b.length;E++){if(u.indexOf(b[E])===-1){u.push(b[E])}}g[R][A]=u.join(", ")}for(var G=0;G<H.length;G++){var q=H[G];if(g[R][q]&&typeof g[R][q].length!=="undefined"){var K=g[R][q];var J=true;for(var D=0;D<K.length;D++){if(isNaN(parseFloat(K[D]))||!isFinite(K[D])){J=false;break}}if(J){var e=0;for(var D=0;D<K.length;D++){e+=parseFloat(K[D])}g[R][q]=e/K.length}else{g[R][q]=K.join(", ")}}}}var p=[z].concat(s).concat(H);var a=Object.keys(g).map(function(c){var d=g[c];return p.map(function(h){return d[h]||null})});return[p].concat(a)};CanvasXpress.melt=function(u,q,l,c,x){if(!u||!Array.isArray(u)||u.length<2||!Array.isArray(u[0])||u[0].length<2){return u}var s=u[0];var f=u.slice(1);var c=c||"variable";var g=x||"value";if(!l){l=[];for(var o=0;o<s.length;o++){if(q.indexOf(s[o])===-1){l.push(s[o])}}}var b=q.map(function(d){return s.indexOf(d)});var t=l.map(function(d){return s.indexOf(d)});var v=[];for(var o=0;o<f.length;o++){var a=f[o];var n=b.map(function(d){return a[d]});for(var p=0;p<t.length;p++){var w=n.slice();w.push(l[p]);w.push(a[t[p]]);v.push(w)}}var e=q.concat([c,g]);return[e].concat(v)};CanvasXpress.getSetCurrentObject=function(d){var e=null;if(d){var c=d.target||d.srcElement;var g=0;while(c&&!e&&g<8){var h=c.id;if(h){e=CanvasXpress.getObject(h);if(!e){var f=null;for(var b=0;b<CanvasXpress.instances.length;b++){var a=CanvasXpress.instances[b].target;if(h===a||h.indexOf(a+"-")===0||a.indexOf(h+"-")===0){if(!f||a.length>f.target.length){f=CanvasXpress.instances[b]}}}e=f}}c=c.parentNode;g++}}if(e){CanvasXpress.current=e;return e}if(CanvasXpress.current&&typeof(CanvasXpress.current)=="object"){return CanvasXpress.current}CanvasXpress.current=CanvasXpress.instances[0];return CanvasXpress.current};CanvasXpress.getObject=function(f,b){if(f){while(CanvasXpress.chain.hasOwnProperty(f)){f=CanvasXpress.chain[f]}for(var a=0;a<CanvasXpress.instances.length;a++){if(CanvasXpress.instances[a].target==f){return CanvasXpress.instances[a]}}}else{if(b){var d=window.document.getElementById(f);if(!d){var e=window.document.createElement("canvas");e.id=f;e.width=100;e.height=100;window.document.body.appendChild(e);d=new CanvasXpress({renderTo:f},false,false,false,false,false,false,false,true)}return d}else{if(CanvasXpress.instances.length){return CanvasXpress.instances[0]}}}};CanvasXpress.json=function(a,c){var b=new XMLHttpRequest();b.open("GET",a,true);b.responseType="json";b.onload=function(){var d=b.status;if(d==200){c(null,b.response)}else{c(d)}};b.send()};CanvasXpress.csv=function(a,c){var b=new XMLHttpRequest();b.open("GET",a,true);b.responseType="text";b.onload=function(){var d=b.status;if(d==200){c(null,b.response)}else{c(d)}};b.send()};CanvasXpress.svg=function(a,d,c){var b=new XMLHttpRequest();b.open("GET",a,true);b.responseType="text";b.onload=function(){var e=b.status;if(e==200){c(b.responseText,d)}else{c(e)}};b.send()};CanvasXpress.$=function(b,a){return CanvasXpress.getObject(b,a)};CanvasXpress.destroy=function(b,a){if(CanvasXpress.instances.length>0){CanvasXpress.instances[0].destroy(b,a)}};CanvasXpress.create=function(c,b,a){CanvasXpress.inject(c);return new CanvasXpress(c,b,a,false,false,false,false,false,true)};CanvasXpress.createObject=function(f,d,b,c,e,h,g,a){if(!f){throw new Error("No target provided")}else{if(typeof(f)=="object"&&f.renderTo){d=f.tracks?{tracks:f.tracks}:f.nodes?{nodes:f.nodes}:f.venn?{venn:f.venn}:f.data?f.data:false;b=f.config||false;if(f.version){b.createVersion=f.version}if(f.factory){b.createFactory=f.factory}c=f.events||false;e=f.info?f.info.replace(/'/g,"'").replace(/"/g,"'"):false;h=f.afterRender||false;g=f.callback||false;a=f.noValidate?f.noValidate:b&&b.noValidate?b.noValidate:false;f=f.renderTo;CanvasXpress.inject(f)}else{if(typeof f==="string"||f instanceof String){CanvasXpress.inject(f)}}}return{target:f,data:d,config:b,events:c,info:e,afterRender:h,callback:g,noValidate:a}};CanvasXpress.inject=function(c){if(typeof c==="string"||c instanceof String){var b=document.getElementById(c);if(b!==null){if(b.tagName.toLowerCase()=="canvas"){if(!b.width){b.width=500}if(!b.height){b.height=500}}else{if(b.tagName.toLowerCase()=="div"){b.id=c+"-div";var a=document.createElement("canvas");a.id=c;a.width=500;a.height=500;b.appendChild(a)}}}else{var a=document.createElement("canvas");a.id=c;a.width=500;a.height=500;document.body.appendChild(a)}}};CanvasXpress.loadFonts=function(d,c){if(d&&d.length&&c){var b=false;for(var a=0;a<d.length;a++){if(!CanvasXpress.fonts.hasOwnProperty(d[a])){b=true;break}}WebFontConfig={google:{families:d},timeout:2000};if(c){WebFontConfig.active=c}(function(h){if(window.navigator.onLine&&b){var e=h.createElement("script");var g=h.scripts[0];e.src="https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js";e.async=true;g.parentNode.insertBefore(e,g);for(var f=0;f<d.length;f++){CanvasXpress.fonts[d[f]]=true}}else{c()}})(document)}};CanvasXpress.loadFontsExternal=function(c,b){if(c&&c.length&&b){var a=false;if(!CanvasXpress.fonts.hasOwnProperty(c[0].name)){a=true}(function(f){if(window.navigator.onLine&&a){var e=new XMLHttpRequest();e.addEventListener("readystatechange",function(g){if(e.readyState==2&&e.status==200){}else{if(e.readyState==3){}else{if(e.readyState==4){var d=new FontFace(c[0].name,e.response);document.fonts.add(d);CanvasXpress.fonts[c[0].name]=true;b()}}}});e.responseType="arraybuffer";e.open("get",c[0].url);e.send()}else{b()}})(document)}};CanvasXpress.loadTopoJSON=function(a,b,d){if(a&&d){var c=false;if(!b){b="cXMap"}if(!window.hasOwnProperty(b)){c=true}(function(f){if(window.navigator.onLine&&c){var e=new XMLHttpRequest();e.addEventListener("readystatechange",function(g){if(e.readyState==2&&e.status==200){}else{if(e.readyState==3){}else{if(e.readyState==4){window[b]=JSON.parse(e.response);d()}}}});e.open("get",a);e.send()}else{d()}})(document)}};CanvasXpress.loadRemoteData=function(j,c,f,m,l){if(c&&l){if(!CanvasXpress.prototype.initIO){setTimeout(function(){CanvasXpress.loadRemoteData(j,c,f,m,l)},20);return}var n=CanvasXpress.prototype.initIO.apply(CanvasXpress);var d=function(r,s,e){if(!r.hasOwnProperty(s)){if(!r){r={}}if(!r.hasOwnProperty(s)){r[s]={}}r[s]=JSON.parse(JSON.stringify(e))}else{for(var q in e){r[s][q]=e[q]}}};var h=null;var g=window.document.getElementById(c);var o=n.isValidURL(c.replace(/^file:\/\//,""));var k=c.match(/\.pl$/)||c.match(/\.pl\?/)?true:false;if(g&&g.tagName.toLowerCase()=="table"&&g.classList.contains("CanvasXpress")&&g.id){h=n.HTMLTableToCX(g,f);h.renderTo=j||g.id;h.events=m;g.parentNode.removeChild(g);return l(h)}else{if(o){(function(p){if(window.navigator.onLine){if(!j){j="cX-data-url"}if(o==2&&!c.match(/^file:/)){if(c.match(/^\/.+/)){c=window.location.protocol+"//"+window.location.host+c}else{if(!c.match(/^\.\/.+/)){c=c.replace(/^\.\//,"/");c=window.location.protocol+"//"+window.location.host+"/"+c}else{c="file://"+c}}}var e=new XMLHttpRequest();e.open("get",c,true);e.onreadystatechange=function(){if(e.readyState==2&&e.status==200){}else{if(e.readyState==3){}else{if(e.readyState==4){if(c.match(/\.json$/)||k){h=n.parseJSON(e.response);if(Array.isArray(h)){var v=h[0][1];var u=[];for(var t=0;t<h.length;t++){u.push(h[t][0])}CanvasXpress.loadRemoteData(j,v,f,m,l)}else{h.renderTo=j||h.renderTo;h.events=m||h.events;d(h,"config",f);l(h)}}else{if(c.match(/\.parquet$/)){var w=n.WLt(e.response,f);h=n.arrayToCX(w.data,w.config);h.renderTo=j||h.renderTo;h.events=m||h.events;d(h,"config",f);l(h)}else{if(c.match(/\.png$/)){h=n.PNGtoCX(e.response);h.renderTo=j||h.renderTo;h.events=m||h.events;d(h,"config",f);l(h)}else{if(c.match(/\.txt$/)||c.match(/\.csv$/)||c.match(/\.tsv$/)||c.match(/\.tab$/)){h=n.parseDelimited(e.response);if(f&&f.graphType=="Network"){h=n.arrayToCXNetwork(h,j,f,m)}else{h=n.arrayToCX(h,f,f&&f.isR);h.renderTo=j||h.renderTo;h.events=m||h.events}d(h,"config",f);l(h)}else{if(c.match(/\.svg$/)){h=n.SVGtoCX(e.response);d(h,"config",f);l(h)}else{if(c.match(/ml$/)||c.match(/ml\.bz2$/)||c.match(/\.gexf$/)){var s=c.match(/ml\.bz2$/)?n.parseXML(n.bz2(e.response)):n.parseXML(e.response);var r=s.childNodes[0];var q=s.childNodes[2];if(r.tagName&&r.tagName.toLowerCase()=="gexf"){h=n.gexfToCX(s,j,f,m);l(h)}else{if(r.tagName&&r.tagName.toLowerCase()=="map"){h=n.metabaseToCX(s,j,f,m);l(h)}else{if(r.tagName&&r.tagName.toLowerCase()=="graph"){h=n.cytoscapeToCX(s,j,f,m);l(h)}else{if(r.tagName&&r.tagName.toLowerCase()=="pathway"){h=n.wikipathwayToCX(s,j,f,m);l(h)}else{if(q&&q.tagName&&q.tagName.toLowerCase()=="pathway"){n.keggToCX(s,j,f,m,l)}}}}}}else{l()}}}}}}}}}};if(c.match(/\.png$/)||c.match(/\.parquet$/)){e.responseType="arraybuffer"}else{if(c.match(/ml\.bz2$/)){e.responseType="binary"}else{e.responseType="text"}}e.send()}})(document)}else{try{h=JSON.parse(c);return l(h)}catch(i){h=null}var h=n.parseDelimited(c)||null;if(h){if(f&&f.graphType=="Network"){h=n.arrayToCXNetwork(h,j,f,m)}else{h=n.arrayToCX(h,f)}return l(h)}if(window.DOMParser){try{h=(new DOMParser()).parseFromString(c,"text/xml")}catch(i){h=null}}else{if(typeof window.ActiveXObject!="undefined"&&new window.ActiveXObject("Microsoft.XMLDOM")){try{h=new window.ActiveXObject("Microsoft.XMLDOM");h.async="false"}catch(i){h=null}}}if(h!=null&&h.getElementsByTagName("parsererror").length==0){var b=h.childNodes[0];var a=h.childNodes[2]||h.childNodes[1];if(b.tagName&&b.tagName.toLowerCase()=="gexf"){return l(n.gexfToCX(h,j,f,m))}else{if(b.tagName&&b.tagName.toLowerCase()=="map"){return l(n.metabaseToCX(h,j,f,m))}else{if(b.tagName&&b.tagName.toLowerCase()=="graph"){return l(n.cytoscapeToCX(h,j,f,m))}else{if(b.tagName&&b.tagName.toLowerCase()=="pathway"){return l(n.wikipathwayToCX(h,j,f,m))}else{if(a&&a.tagName&&a.tagName.toLowerCase()=="pathway"){return n.keggToCX(h,j,f,m,l)}}}}}}return null}}}};CanvasXpress.disableCSSTransitions=function(){CanvasXpress.cssTransitions=document.createElement("style");CanvasXpress.cssTransitions.type="text/css";CanvasXpress.cssTransitions.innerHTML="* { transition: none !important; -webkit-transition: none !important; }";document.getElementsByTagName("head")[0].appendChild(CanvasXpress.cssTransitions)};CanvasXpress.enableCSSTransitions=function(){if(CanvasXpress.cssTransitions){document.getElementsByTagName("head")[0].removeChild(CanvasXpress.cssTransitions);CanvasXpress.cssTransitions=null}};CanvasXpress.callbackPass=function(a){};CanvasXpress.callbackRDataset=function(d){event.stopPropagation();event.preventDefault();var f=d.split("/");var e=f[8];var b=f[9];var g=f[10].split(".")[0];var a=event.target.parentNode.parentNode.id.split("-cX-DataTable")[0];var c=CanvasXpress.getObject(a);if(e=="csv"){c.PQ5(d);c.Rdataset={library:b,dataset:g,url:c.RdatasetsURL+"json/"+b+"/"+g+"Info.json",info:false}}else{var h=function(k){var j={width:"500px",height:"500px",overflow:"auto",textWrap:"auto",position:"relative",zIndex:1000000,fontSize:"small"};var m="";for(var l in k.parameters){m+="<b>"+l+"</b>: "+k.parameters[l]+"<br><br>"}c.JDY({ac:{x:100,y:100}},m,a,j)};c.GDl(d,false,h,"json")}return false};CanvasXpress.parametersLLM=["llmServiceURL","llmTemperature","llmSelectFirst","llmBehaviour","llmPrompt","llmStack","llmHeader","llmUseAutocomplete","llmCodeExamples","llmCodeMaxSentences","disableChat"];CanvasXpress.callbackRateLLM=function(b){var c=function(){var f=document.getElementById(b.target+"-cX-ChatInterfaceRateScript");if(f){document.body.removeChild(f)}};if(b&&b.success){var a=CanvasXpress.getObject(b.target);if(a){var e=document.getElementById(b.target+"-cX-ChatInterfaceThumbUpImage");var d=document.getElementById(b.target+"-cX-ChatInterfaceThumbDownImage");if(b.rating===1){a.llc(e,"op_thumbup");a.llc(d,"op_thumbdown2");b.text="Rated: Thumbs Up"}else{if(b.rating===-1){a.llc(d,"op_thumbdown");a.llc(e,"op_thumbup2");b.text="Rated: Thumbs Down"}}a.FmO(100,100,b.text,3000)}else{alert("CanvasXpress Object: "+b.target+" - not found")}c()}else{alert(b.text)}};CanvasXpress.callbackLLM=function(a){var c=function(n,d){var h=document.createElement("canvas");h.width=n;h.height=d;h.id="cX-LLM-"+Date.now();return h};var u=function(r){var K=document.createElement("div");K.style.width=r+"px";K.style.height="100px";K.style.clear="both";K.style.position="relative";K.style.margin="auto";var n=document.createElement("span");n.innerHTML=a.datetime||"";n.style.cssFloat="right";var d=document.createElement("span");d.innerHTML=A||"";d.style.cssFloat="left";d.style.fontWeight="bold";var J=document.createElement("span");J.innerHTML=a.client||a.client_id||"";J.style.cssFloat="left";var s=document.createElement("br");var p=document.createElement("br");var h=document.createElement("br");K.appendChild(s);K.appendChild(J);K.appendChild(n);K.appendChild(p);K.appendChild(d);K.appendChild(h);return K};var f=function(h,d){var n=document.createElement("div");if(d){n.className=d}n.appendChild(h);return n};var t=function(p,h){var r=CanvasXpress.parametersLLM;h.LZK();var d={graphOrientation:true,graphType:true,isR:true,prompt:true};for(var n=0;n<r.length;n++){p.config[r[n]]=h[r[n]]}};var E=function(){var d=document.getElementById(a.target+"-cX-ChatInterfaceAskScript");if(d){document.body.removeChild(d)}};var k=function(){var d=CanvasXpress.getObject(a.target);if(d){d.Gqi();var h=document.getElementById(a.target+"-cX-ChatInterfaceThumbs");if(h){h.style.display="flex"}if(j==="select_canvasxpress_chart"&&a.html&&a.html.content){d.HJc(a.html.content)}d.tNa();d.isAskingLLM=false;d.a74()}E()};var q=function(h){var d=CanvasXpress.getObject(a.target);if(d){d.isAskingLLM=false;d.a74()}E();if(h){alert(h)}};if(!a){q("No response received from the LLM service.");return}var j=a.tool||"";var v=(j==="generate_canvasxpress_config"||j==="modify_canvasxpress_config"||j==="generate_km_config"||j==="autocomplete");CanvasXpress._selectResponse=CanvasXpress._selectResponse||{};delete CanvasXpress._selectResponse[a.target];if(j==="select_canvasxpress_chart"){if(a.top_recommendation&&a.top_recommendation.minimal_config){CanvasXpress._selectResponse[a.target]=a;a.config=a.top_recommendation.minimal_config;a.description=a.generate_hint||a.top_recommendation.graphType;v=true}}var l=(a.success===false||!!a.error||(v&&(!a.config||Object.keys(a.config).length===0)));if(l){var e;if(a.warnings&&a.warnings.length>0){e=a.warnings[0]}else{if(a.error){e=a.error}else{if(a.text){e=a.text}else{e="The LLM service ("+(j||"unknown")+") could not generate a valid configuration. Try rephrasing your description."}}}q(e);return}if(a.action||(a.actions&&a.actions.length)){var g=CanvasXpress.getObject(a.target);if(g){g.isAskingLLM=false;g.iVi(a.actions||[a.action]);if(a.html&&a.html.content){g.aFp(a.html.content)}g.a74()}E();return}if(!v){var i=CanvasXpress.getObject(a.target);if(i){i.isAskingLLM=false;if(a.html&&a.html.content){i.aFp(a.html.content)}i.a74()}E();return}var I=a.config;var i=CanvasXpress.getObject(a.target);if(i){var H=i.bZH();var F=i.H8L();var B=i.llmStack.length;var A=i.llmPrompt||"";var y=a.request_id||"";var x=JSON.parse(JSON.stringify(i.llmStack));x.push({header:F,prompt:A,n:B,requestId:y});a.config=I;t(a,i);var D=document.getElementById(a.target+"-cX-DOM");if(D){I.isGraphTime=i.isGraphTime;I.xAxisTime=i.xAxisTime;I.yAxisTime=i.yAxisTime;I.view="canvas";delete I.xAxisTickFormat;delete I.yAxisTickFormat;i.graphType=I.graphType;if(i.llmBehaviour&&i.llmBehaviour==="update"){i.Axj(i.target,true);var G={renderTo:a.target,data:H,config:I,callback:k};G.config.llmPrompt=A;G.config.llmStack=x;i=new CanvasXpress(G,false,false,false,false,false,false,false,true)}else{var w=D.parentNode;var b=w.className;var z=u(i.width);var C=c(i.width,i.height);var m=C.id;var o=document.createElement("div");o.style.width=i.width+"px";o.style.height="40px";o.style.clear="both";if(w.parentNode&&w.parentNode.tagName.toLowerCase()==="div"){C=f(C,b);w.after(o);o.after(z);z.after(C)}else{w.appendChild(o);w.appendChild(z);w.appendChild(C)}var G={renderTo:m,data:H,config:I,callback:k};G.config.llmPrompt=A;G.config.llmStack=x;i=new CanvasXpress(G,false,false,false,false,false,false,false,true);D=document.getElementById(a.target+"-cX-DOM");D.style.display="block"}E()}else{alert("CanvasXpress Container: "+a.target+"-cX-DOM - not found");E()}}else{alert("CanvasXpress Object: "+a.target+" - not found");E()}};CanvasXpress.applySelectConfig=function(f,c){var e=CanvasXpress.getObject(f);if(!e){alert("CanvasXpress Object: "+f+" - not found");return}var g=e.bZH();var i=CanvasXpress._selectResponse&&CanvasXpress._selectResponse[f];var b=0;var j=document.getElementById(f+"-cX-ChatInterfaceMessagesContainer");if(j){b=j.scrollTop}e.Axj(e.target,true);var k={renderTo:f,data:g,config:c};e=new CanvasXpress(k,false,false,false,false,false,false,false,true);if(i&&i.html&&i.html.content){var h=CanvasXpress.getObject(f);if(h){h.e1h();h.HJc(i.html.content);var a=document.getElementById(f+"-cX-ChatInterfaceMessagesContainer");if(a){a.scrollTop=b}}}};CanvasXpress.setColorSchemes=function(){CanvasXpress.colorSchemes={YlGn:{3:"f7fcb9addd8e31a354",4:"ffffccc2e69978c679238443",5:"ffffccc2e69978c67931a354006837",6:"ffffccd9f0a3addd8e78c67931a354006837",7:"ffffccd9f0a3addd8e78c67941ab5d238443005a32",8:"ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32",9:"ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529"},YlGnBu:{3:"edf8b17fcdbb2c7fb8",4:"ffffcca1dab441b6c4225ea8",5:"ffffcca1dab441b6c42c7fb8253494",6:"ffffccc7e9b47fcdbb41b6c42c7fb8253494",7:"ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84",8:"ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84",9:"ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58"},GnBu:{3:"e0f3dba8ddb543a2ca",4:"f0f9e8bae4bc7bccc42b8cbe",5:"f0f9e8bae4bc7bccc443a2ca0868ac",6:"f0f9e8ccebc5a8ddb57bccc443a2ca0868ac",7:"f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e",8:"f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e",9:"f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081"},BuGn:{3:"e5f5f999d8c92ca25f",4:"edf8fbb2e2e266c2a4238b45",5:"edf8fbb2e2e266c2a42ca25f006d2c",6:"edf8fbccece699d8c966c2a42ca25f006d2c",7:"edf8fbccece699d8c966c2a441ae76238b45005824",8:"f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824",9:"f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b"},PuBuGn:{3:"ece2f0a6bddb1c9099",4:"f6eff7bdc9e167a9cf02818a",5:"f6eff7bdc9e167a9cf1c9099016c59",6:"f6eff7d0d1e6a6bddb67a9cf1c9099016c59",7:"f6eff7d0d1e6a6bddb67a9cf3690c002818a016450",8:"fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450",9:"fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636"},PuBu:{3:"ece7f2a6bddb2b8cbe",4:"f1eef6bdc9e174a9cf0570b0",5:"f1eef6bdc9e174a9cf2b8cbe045a8d",6:"f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d",7:"f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b",8:"fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b",9:"fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858"},BuPu:{3:"e0ecf49ebcda8856a7",4:"edf8fbb3cde38c96c688419d",5:"edf8fbb3cde38c96c68856a7810f7c",6:"edf8fbbfd3e69ebcda8c96c68856a7810f7c",7:"edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b",8:"f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b",9:"f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b"},RdPu:{3:"fde0ddfa9fb5c51b8a",4:"feebe2fbb4b9f768a1ae017e",5:"feebe2fbb4b9f768a1c51b8a7a0177",6:"feebe2fcc5c0fa9fb5f768a1c51b8a7a0177",7:"feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177",8:"fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177",9:"fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a"},PuRd:{3:"e7e1efc994c7dd1c77",4:"f1eef6d7b5d8df65b0ce1256",5:"f1eef6d7b5d8df65b0dd1c77980043",6:"f1eef6d4b9dac994c7df65b0dd1c77980043",7:"f1eef6d4b9dac994c7df65b0e7298ace125691003f",8:"f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f",9:"f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f"},OrRd:{3:"fee8c8fdbb84e34a33",4:"fef0d9fdcc8afc8d59d7301f",5:"fef0d9fdcc8afc8d59e34a33b30000",6:"fef0d9fdd49efdbb84fc8d59e34a33b30000",7:"fef0d9fdd49efdbb84fc8d59ef6548d7301f990000",8:"fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000",9:"fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000"},YlOrRd:{3:"ffeda0feb24cf03b20",4:"ffffb2fecc5cfd8d3ce31a1c",5:"ffffb2fecc5cfd8d3cf03b20bd0026",6:"ffffb2fed976feb24cfd8d3cf03b20bd0026",7:"ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026",8:"ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026",9:"ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026"},YlOrBr:{3:"fff7bcfec44fd95f0e",4:"ffffd4fed98efe9929cc4c02",5:"ffffd4fed98efe9929d95f0e993404",6:"ffffd4fee391fec44ffe9929d95f0e993404",7:"ffffd4fee391fec44ffe9929ec7014cc4c028c2d04",8:"ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04",9:"ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506"},Purples:{3:"efedf5bcbddc756bb1",4:"f2f0f7cbc9e29e9ac86a51a3",5:"f2f0f7cbc9e29e9ac8756bb154278f",6:"f2f0f7dadaebbcbddc9e9ac8756bb154278f",7:"f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486",8:"fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486",9:"fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d"},Blues:{3:"deebf79ecae13182bd",4:"eff3ffbdd7e76baed62171b5",5:"eff3ffbdd7e76baed63182bd08519c",6:"eff3ffc6dbef9ecae16baed63182bd08519c",7:"eff3ffc6dbef9ecae16baed64292c62171b5084594",8:"f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594",9:"f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b"},BluesDark:{2:"132B4356B1F7"},Greens:{3:"e5f5e0a1d99b31a354",4:"edf8e9bae4b374c476238b45",5:"edf8e9bae4b374c47631a354006d2c",6:"edf8e9c7e9c0a1d99b74c47631a354006d2c",7:"edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32",8:"f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32",9:"f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b"},Oranges:{3:"fee6cefdae6be6550d",4:"feeddefdbe85fd8d3cd94701",5:"feeddefdbe85fd8d3ce6550da63603",6:"feeddefdd0a2fdae6bfd8d3ce6550da63603",7:"feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04",8:"fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04",9:"fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704"},Reds:{3:"fee0d2fc9272de2d26",4:"fee5d9fcae91fb6a4acb181d",5:"fee5d9fcae91fb6a4ade2d26a50f15",6:"fee5d9fcbba1fc9272fb6a4ade2d26a50f15",7:"fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d",8:"fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d",9:"fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d"},Greys:{3:"f0f0f0bdbdbd636363",4:"f7f7f7cccccc969696525252",5:"f7f7f7cccccc969696636363252525",6:"f7f7f7d9d9d9bdbdbd969696636363252525",7:"f7f7f7d9d9d9bdbdbd969696737373525252252525",8:"fffffff0f0f0d9d9d9bdbdbd969696737373525252252525",9:"fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000",256:"fffffffffffffefefefefefefdfdfdfdfdfdfcfcfcfcfcfcfbfbfbfbfbfbfafafafafafaf9f9f9f9f9f9f9f9f9f8f8f8f8f8f8f7f7f7f7f7f7f6f6f6f6f6f6f5f5f5f5f5f5f4f4f4f4f4f4f3f3f3f3f3f3f2f2f2f2f2f2f1f1f1f1f1f1f0f0f0f0f0f0efefefefefefeeeeeeeeeeeeededededededececececececebebebebebebeaeaeaeaeaeae9e9e9e9e9e9e8e8e8e8e8e8e7e7e7e7e7e7e6e6e6e6e6e6e5e5e5e5e5e5e4e4e4e4e4e4e3e3e3e3e3e3e2e2e2e2e2e2e1e1e1e1e1e1e0e0e0e0e0e0dfdfdfdfdfdfdedededddddddddddddcdcdcdcdcdcdbdbdbdbdbdbdadadadadadad9d9d9d9d9d9d8d8d8d7d7d7d7d7d7d6d6d6d6d6d6d5d5d5d5d5d5d4d4d4d4d4d4d3d3d3d2d2d2d2d2d2d1d1d1d1d1d1d0d0d0cfcfcfcfcfcfcececececececdcdcdcdcdcdcccccccbcbcbcbcbcbcacacacacacac9c9c9c8c8c8c8c8c8c7c7c7c7c7c7c6c6c6c5c5c5c5c5c5c4c4c4c3c3c3c3c3c3c2c2c2c2c2c2c1c1c1c0c0c0c0c0c0bfbfbfbebebebebebebdbdbdbcbcbcbcbcbcbbbbbbbabababababab9b9b9b8b8b8b8b8b8b7b7b7b6b6b6b6b6b6b5b5b5b4b4b4b4b4b4b3b3b3b2b2b2b2b2b2b1b1b1b0b0b0afafafafafafaeaeaeadadadadadadacacacabababaaaaaaaaaaaaa9a9a9a8a8a8a7a7a7a7a7a7a6a6a6a5a5a5a4a4a4a4a4a4a3a3a3a2a2a2a1a1a1a0a0a0a0a0a09f9f9f9e9e9e9d9d9d9c9c9c9c9c9c9b9b9b9a9a9a9999999898989797979797979696969595959494949393939292929191919090909090908f8f8f8e8e8e8d8d8d8c8c8c8b8b8b8a8a8a8989898888888787878686868585858484848383838282828181818080807f7f7f7e7e7e7d7d7d7c7c7c7b7b7b7a7a7a7878787777777676767575757474747373737272727070706f6f6f6e6e6e6d6d6d6b6b6b6a6a6a6969696767676666666565656363636262626060605f5f5f5d5d5d5c5c5c5a5a5a5959595757575555555454545252525050504e4e4e4c4c4c4a4a4a4848484646464444444242424040403d3d3d3b3b3b3838383535353232322e2e2e2b2b2b2727272222221c1c1c15151500000"},PuOr:{3:"f1a340f7f7f7998ec3",4:"e66101fdb863b2abd25e3c99",5:"e66101fdb863f7f7f7b2abd25e3c99",6:"b35806f1a340fee0b6d8daeb998ec3542788",7:"b35806f1a340fee0b6f7f7f7d8daeb998ec3542788",8:"b35806e08214fdb863fee0b6d8daebb2abd28073ac542788",9:"b35806e08214fdb863fee0b6f7f7f7d8daebb2abd28073ac542788",10:"7f3b08b35806e08214fdb863fee0b6d8daebb2abd28073ac5427882d004b",11:"7f3b08b35806e08214fdb863fee0b6f7f7f7d8daebb2abd28073ac5427882d004b"},BrBG:{3:"d8b365f5f5f55ab4ac",4:"a6611adfc27d80cdc1018571",5:"a6611adfc27df5f5f580cdc1018571",6:"8c510ad8b365f6e8c3c7eae55ab4ac01665e",7:"8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e",8:"8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e",9:"8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e",10:"5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30",11:"5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30"},PRGn:{3:"af8dc3f7f7f77fbf7b",4:"7b3294c2a5cfa6dba0008837",5:"7b3294c2a5cff7f7f7a6dba0008837",6:"762a83af8dc3e7d4e8d9f0d37fbf7b1b7837",7:"762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837",8:"762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837",9:"762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837",10:"40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b",11:"40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b"},PiYG:{3:"e9a3c9f7f7f7a1d76a",4:"d01c8bf1b6dab8e1864dac26",5:"d01c8bf1b6daf7f7f7b8e1864dac26",6:"c51b7de9a3c9fde0efe6f5d0a1d76a4d9221",7:"c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221",8:"c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221",9:"c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221",10:"8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419",11:"8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419"},RdBu:{3:"ef8a62f7f7f767a9cf",4:"ca0020f4a58292c5de0571b0",5:"ca0020f4a582f7f7f792c5de0571b0",6:"b2182bef8a62fddbc7d1e5f067a9cf2166ac",7:"b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac",8:"b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac",9:"b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac",10:"67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061",11:"67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061"},RdGy:{3:"ef8a62ffffff999999",4:"ca0020f4a582bababa404040",5:"ca0020f4a582ffffffbababa404040",6:"b2182bef8a62fddbc7e0e0e09999994d4d4d",7:"b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d",8:"b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d",9:"b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d",10:"67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a",11:"67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a"},RdYlBu:{3:"fc8d59ffffbf91bfdb",4:"d7191cfdae61abd9e92c7bb6",5:"d7191cfdae61ffffbfabd9e92c7bb6",6:"d73027fc8d59fee090e0f3f891bfdb4575b4",7:"d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4",8:"d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4",9:"d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4",10:"a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695",11:"a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695"},Spectral:{3:"fc8d59ffffbf99d594",4:"d7191cfdae61abdda42b83ba",5:"d7191cfdae61ffffbfabdda42b83ba",6:"d53e4ffc8d59fee08be6f59899d5943288bd",7:"d53e4ffc8d59fee08bffffbfe6f59899d5943288bd",8:"d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd",9:"d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd",10:"9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2",11:"9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2"},RdYlGn:{3:"fc8d59ffffbf91cf60",4:"d7191cfdae61a6d96a1a9641",5:"d7191cfdae61ffffbfa6d96a1a9641",6:"d73027fc8d59fee08bd9ef8b91cf601a9850",7:"d73027fc8d59fee08bffffbfd9ef8b91cf601a9850",8:"d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850",9:"d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850",10:"a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837",11:"a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837"},Accent:{3:"7fc97fbeaed4fdc086",4:"7fc97fbeaed4fdc086ffff99",5:"7fc97fbeaed4fdc086ffff99386cb0",6:"7fc97fbeaed4fdc086ffff99386cb0f0027f",7:"7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17",8:"7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"},Dark2:{3:"1b9e77d95f027570b3",4:"1b9e77d95f027570b3e7298a",5:"1b9e77d95f027570b3e7298a66a61e",6:"1b9e77d95f027570b3e7298a66a61ee6ab02",7:"1b9e77d95f027570b3e7298a66a61ee6ab02a6761d",8:"1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"},Paired:{3:"a6cee31f78b4b2df8a",4:"a6cee31f78b4b2df8a33a02c",5:"a6cee31f78b4b2df8a33a02cfb9a99",6:"a6cee31f78b4b2df8a33a02cfb9a99e31a1c",7:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6f",8:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00",9:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d6",10:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9a",11:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99",12:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"},Default:{20:"fe296c487eb6a7ce31f8cc03ff8c02699696b7784483acd0c2e076fadc5aff549fffaf549ab8b7d2a6833d699b87ac22cda908d02158d07300567676",36:"ff00000000ff00ff00ffff0000ffffff00ff993300000080808000ff6600008080660066ff99cc666699333300ffcc99ccffff9999ffff80803366ff339966ffcc0000ccffd020909933660066cc99cc00ff990033cccccc99ff800000333399008000ffffcc99ccff800080"},Basic:{24:"0000ffff004dffbf0074ff00a400ffff7400ffff0000ffffff0000ffd3003d00ff00ff00ff00ffff9200d3ff000090ff6d00ffff4900ffe80000ff92ff0090ffaa00aaff00004dff"},Light:{24:"6565ffff6593ffd865abff65c865ffffab65ffff6565ffffff6565ffe5658965ff65ff65ff65ffffbd65e5ff6565bcffa765ffff9165fff16565ffbdff65bcffcc65ccff656593ff"},Favorite:{1:"ff0000",2:"ff000000ffff",3:"ff000000ff000000ff",4:"ff000080ff0000ffff8000ff",5:"ff0000bfff0000ff800040ffff00ff",6:"ff0000ffff0000ff0000ffff0000ffff00ff",8:"ff0000ffbf0080ff0000ff4000ffff0040ff8000ffff00bf",10:"ff0000ff8000ffff0080ff0000ff0000ff8000ffff0080ff0000ff8000ff",12:"ff0000ff8000ffff0080ff0000ff0000ff8000ffff0080ff0000ff8000ffff00ffff0080",24:"ff0000ff4000ff8000ffbf00ffff00bfff0080ff0040ff0000ff0000ff4000ff8000ffbf00ffff00bfff0080ff0040ff0000ff4000ff8000ffbf00ffff00ffff00bfff0080ff0040"},Bootstrap:{1:"337ab7",2:"337ab7d9534f",3:"337ab75cb85cd9534f",4:"337ab75cb85cf0ad4ed9534f",5:"337ab75cb85c5bc0def0ad4ed9534f",6:"337ab75cb85c9370db5bc0def0ad4ed9534f",7:"337ab75cb85cd9534ff0ad4e5bc0de84fe83ff9976",8:"337ab75cb85cd9534ff0ad4e5bc0de84fe83ff9976c86727"},ColorSpectrum:{3:"ff000000ff000000ff",4:"ff000080ff0000ffff8000ff",5:"ff0000ccff0000ff660066ffcc00ff",6:"ff0000ffff0000ff0000ffff0000ffff00ff",7:"ff0000ffdb0049ff0000ff920092ff4900ffff00db",8:"ff0000ffbf0080ff0000ff4000ffff0040ff8000ffff00bf",9:"ff0000ffaa00aaff0000ff0000ffaa00aaff0000ffaa00ffff00aa",10:"ff0000ff9900ccff0033ff0000ff6600ffff0066ff3300ffcc00ffff0099",11:"ff0000ff8b00e8ff005dff0000ff2e00ffb900b9ff002eff5d00ffe800ffff008b",12:"ff0000ff8000ffff0080ff0000ff0000ff8000ffff0080ff0000ff8000ffff00ffff0080"},White:{1:"ffffff"},Grey:{1:"d3d3d3",2:"d3d3d3cbcbcb",3:"d3d3d3cbcbcbc3c3c3",4:"d3d3d3cbcbcbc3c3c3bbbbbb",5:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3",6:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3ababab",7:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a3",8:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b",9:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b939393",10:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b9393938b8b8b"},GreyHC:{4:"ffffffbbbbbb777777333333",6:"ffffffcccccc999999666666333333000000",13:"d3d3d3c3c3c3b3b3b3a3a3a3939393838383737373636363535353434343333333232323131313"},BlueGrey:{1:"0ab0db",2:"0ab0dbd3d3d3",3:"0ab0dbd3d3d3cbcbcb",4:"0ab0dbd3d3d3cbcbcbc3c3c3",5:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbb",6:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3",7:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3ababab",8:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a3",9:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b",10:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b939393",11:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b9393938b8b8b"},BlueRedGrey:{1:"0ab0db",2:"0ab0dbfe6969",3:"0ab0dbfe6969d3d3d3",4:"0ab0dbfe6969d3d3d3cbcbcb",5:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3",6:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbb",7:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3",8:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3ababab",9:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a3",10:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b",11:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b939393",12:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b9393938b8b8b"},Black:{1:"000000"},Diverging:{5:"f5841dedbb69d0d5e155b5d90c4487"},DivergingAlt:{5:"9e0418dd6c72d0d5e135a0c8042750"},Brand:{4:"cfe2f15eaccf0e76b0042751"},Complementary:{4:"f7d6d5ff8581e040439e0418"},Colorful:{5:"fcf6c4b1ca91718be67d53b0920148"},ColorfulAlt:{5:"fcf6c4edb681c77b7a7f50930e3587"},WHO:{6:"108dc98eca3affa16ae65550ffa3005bc2e7"},NPG:{10:"e64b354dbbd500a0873c5488f39b7f8491b491d1c2dc00007e6148b09c85"},AAAS:{10:"3b4992ee0000008b45631879008280bb00215f559ba200568081801b1919"},NEJM:{8:"bc3c290072b5e1872720854e7876b16f99adffdc91ee4c97"},Lancet:{9:"00468bed000042b5400099b4925e9ffdaf91ad002aadb6b61b1919"},Jama:{7:"374e55df8f4400a1d5b2474579af976a659980796b"},JCO:{10:"0073c2efc000868686cd534c7aa6dc003c678f77003b3b3ba730304a6990"},Economist:{12:"6794a7014d6476c0c101a2d97ad2f600887dadadad7bd3f67c260bee8f7176c0c1a18376"},EconomistBG:{5:"d5e4ebc3d6dfed111aebebebc9c9c9"},Excel:{7:"ff00ffffff0000ffff8000808000000080800000ff"},Excel2:{7:"993366ffffccccffff660066ff80800066ccccccff"},Excel3:{10:"365e9698333477973d5d437c36869fd1702f8197c5c47f80acc4849887b0"},GGPlot:{1:"595959",2:"f8766d00bfc4",3:"f8766d00ba38619cff",4:"f8766d7cae0000bfc4c77cff",5:"f8766da3a50000bf7d00b0f6e76bf3",6:"f8766db79f0000ba3800bfc4619cfff564e3",7:"f8766dc49a0053b40000c09400b6eba58afffb61d7",8:"f8766dcd96007cae0000be6700bfc400a9ffc77cffff61cc",9:"f8766dd3920093aa0000ba3800c19f00b9e3619cffdb72fbff61c3",10:"f8766dd89000a3a50039b60000bf7d00bfc400b0f69590ffe76bf3ff62bc",11:"f8766ddb8e00aea20064b20000bd5c00c1a700bade00a6ffb385ffef67ebff63b6",12:"f8766dde8c00b79f007cae0000ba3800c08b00bfc400b4f0619cffc77cfff564e3ff64b0",13:"f8766de18a00be9c008cab0024b70000be7000c1ab00bbda00acfc8b93ffd575fef962ddff65ac",14:"f8766de38900c49a0099a80053b40000bc5600c09400bfc400b6eb06a4ffa58affdf70f8fb61d7ff66a8",15:"f8766de58700c99800a3a5006bb10000ba3800bf7d00c0af00bcd800b0f6619cffb983ffe76bf3fd61d1ff67a4",16:"f8766de68613cd9600aba3007cae000cb70200be6700c19a00bfc400b8e700a9ff8494ffc77cffed68edff61ccff68a1",17:"f8766de7851ed09400b2a10089ac0045b50000bc5100c08700c0b200bcd600b3f229a3ff9c8dffd277fff166e8ff61c7ff689e",18:"f8766de88526d39200b79f0093aa005eb30000ba3800bf7400c19f00bfc400b9e300adfa619cffae87ffdb72fbf564e3ff61c3ff699c"},Solarized:{1:"b58900",2:"b58900859900",3:"b58900c671c4859900",4:"b58900dc322f268bd2859900",5:"b58900dc322f6c71c4268bd2859900",6:"b58900cb4b16d336826c71c42aa198859900",7:"b58900cb4b16dc322f6c71c4268bd22aa198859900",8:"b58900cb4b16dc322fd336826c71c4268bd22aa198859900"},SolarizedBase:{7:"002b36073642586e7583949693a1a1eee8d5fdf6e3",8:"002b36073642586e75657b8383949693a1a1eee8d5fdf6e3"},PaulTol:{1:"4477aa",2:"4477aacc6677",3:"4477aaddcc77cc6677",4:"4477aa117733ddcc77cc6677",5:"4477aa88ccee117733ddcc77cc6677",6:"4477aa88ccee117733ddcc77cc6677aa4499",7:"33228888ccee44aa99117733ddcc77cc6677aa4499",8:"33228888ccee44aa99117733999933ddcc77cc6677aa4499",9:"33228888ccee44aa99117733999933ddcc77cc6677882255aa4499",10:"33228888ccee44aa99117733999933ddcc77661100cc6677882255aa4499",11:"3322886699cc88ccee44aa99117733999933ddcc77661100cc6677882255aa4499",12:"3322886699cc88ccee44aa99117733999933ddcc77661100cc6677aa4466882255aa4499"},Highcharts:{1:"21b1f4",2:"21b1f44f52c1",3:"21b1f44f52c126e17b",4:"21b1f44f52c126e17bfe693d",5:"21b1f44f52c126e17bfe693d6a8bba",6:"21b1f44f52c126e17bfe693d6a8bbad26cf6",7:"21b1f44f52c126e17bfe693d6a8bbad26cf636e0cb",8:"21b1f44f52c126e17bfe693d6a8bbad26cf636e0cbf94b46",9:"21b1f44f52c126e17bfe693d6a8bbad26cf636e0cbf94b46ffb471",10:"21b1f44f52c126e17bfe693d6a8bbad26cf636e0cbf94b46ffb47192e8e1"},ColorBlind:{8:"000000e69f0056b4e9009e73f0e4420072b2d55e00cc79a7"},Tableau:{20:"1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5",10:"1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"},TableauMedium:{10:"729eceff9e4a67bf5ced665dad8bc9a8786eed97caa2a2a2cdcc5d6dccda"},TableauLight:{10:"aec7e8ffbb7898df8aff9896c5b0d5c49c94f7b6d2c7c7c7dbdb8d9edae5"},TableauGrey:{5:"60636aa5acaf4144518f8782cfcfcf"},TableauColorBlind:{10:"006ba4ff800eababab5959595f9ed1c85200898989a2c8ecffbc79cfcfcf"},TableauTrafficLight:{9:"b10318dba13a309343d82526ffc15669b764f26c64ffdd719fcd99"},TableauPurpleGrey:{12:"7b66d2a699e8dc5fbdffc0da5f5a41b4b19b995688d898baab6ad5d098ee8b7c6edbd4c5"},TableauBlueRed:{12:"2c69b0b5c8e2f02720ffb6b0ac613ce9c39b6ba3d6b5dffdac8763ddc9b4bd0a36f4737a"},TableauGreenOrange:{12:"32a251acd98dff7f0fffb9773cb7cc98d9e4b85a0dffd94a39737c86b4a982853bccc94d"},TableauCyclic:{20:"1f83b41696ac18a18829a03c54a33882a93fadb828d8bd35ffbd4cffb022ff9c0eff810ee75727d23e4ec94d8cc04aa7b446b39658b18061b46f63bb"},TableauPairSequential:{32:"bccfb49c0824bccfb409622ab4d4da26456ef0c2947b3014c3c3c31e1e1ee5e5e5ffb2b6e5e5e5b7e6a7e5e5e5c4d8f3e5e5e5ffcc9ef5cac7bd1100dbe8b43c8200f3e0c2bb5137feffd941b7c4f7e4c6bb5137efedf5807dbaf0f0f0737373"},TableauTripleDiverging:{48:"9c0824cacaca26456e9c0824cacaca09622a9c0824ffffff09622a9c0824cacaca1e1e1e9c0824ffffff1e1e1e09622acacaca26456e7b3014cacaca26456e7b3014ffffff26456effb2b6e5e5e5b7e6a7ffb2b6ffffffb7e6a7ffb2b6ffffffc6c6c6ffcc9ee5e5e5c4d8f3ffcc9effffffc4d8f3e0ad30e4e4e27492aaeda389cde1d35c8b70529985dbcf47c26b51"},WallStreetJournal:{4:"efefefe9f3ead4dee7f8f2e4"},WallStreetJournal2:{4:"d3ba68d5695d5d8ca865a479"},WallStreetJournalRedGreen:{2:"088158ba2f2a"},WallStreetJournalBlackGreen:{4:"00000059595959a77f008856"},WallStreetJournalDemRep:{3:"006a8eb1283aa8a6a7"},WallStreetJournal3:{6:"c72e29016392be9c2e098154fb832d000000"},Stata:{15:"1a476f90353b55752fe37e006e8e84c10534938dd2cac27ea0522d7b92a82d6d669c8847bfa19cffd200d9e6eb"},Stata2:{15:"ffff0000ff000080ffff00ffff7f00ff0000add8e6ffe47400ff80c0dcc0ff45000000ffff00806e8e84a0522d"},Stata3:{15:"006000ff45001a476f90353b6e8e84a0522dff7f00ff00ff00ffffff000000ff009c8847800080c0dcc0add8e6"},StataMono:{15:"606060a0a0a0808080404040000000e0e0e0202020707070909090b0b0b0d0d0d0f0f0f0303030c0c0c0505050"},BlackAndWhite:{3:"f0f0f0bdbdbd636363",4:"f7f7f7cccccc969696525252",5:"f7f7f7cccccc969696636363252525",6:"f7f7f7d9d9d9bdbdbd969696636363252525",7:"f7f7f7d9d9d9bdbdbd969696737373525252252525",8:"fffffff0f0f0d9d9d9bdbdbd969696737373525252252525",9:"fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000"},BehancePair:{2:"6b5dd3cec8ff",4:"6b5dd3cec8ffffa2c0ffc6db",6:"6b5dd3cec8ffffa2c0ffc6db3f8cffa0d7e7",8:"6b5dd3cec8ffffa2c0ffc6db3f8cffa0d7e7fece73ffa25f",10:"6b5dd3cec8ffffa2c0ffc6db3f8cffa0d7e7fece73ffa25f1b1d218d8e90"},BehanceTrio:{3:"6b5dd3cec8ff9d93e9",6:"6b5dd3cec8ff9d93e9ffa2c0ffc6dbff78a4",9:"6b5dd3cec8ff9d93e9ffa2c0ffc6dbff78a43f8cffa0d7e71b49c5",12:"6b5dd3cec8ff9d93e9ffa2c0ffc6dbff78a43f8cffa0d7e71b49c5fece73ffa25ffee2ab",15:"6b5dd3cec8ff9d93e9ffa2c0ffc6dbff78a43f8cffa0d7e71b49c5fece73ffa25ffee2ab1b1d218d8e90494a4d"},BehanceQuartet:{4:"6b5dd3cec8ff9d93e98072dc",8:"6b5dd3cec8ff9d93e98072dcffa2c0ffc6dbff78a4ffbed3",12:"6b5dd3cec8ff9d93e98072dcffa2c0ffc6dbff78a4ffbed33f8cffa0d7e71b49c5cdf4ff",16:"6b5dd3cec8ff9d93e98072dcffa2c0ffc6dbff78a4ffbed33f8cffa0d7e71b49c5cdf4fffece73ffa25ffee2abfedd9d",20:"6b5dd3cec8ff9d93e98072dcffa2c0ffc6dbff78a4ffbed33f8cffa0d7e71b49c5cdf4fffece73ffa25ffee2abfedd9d1b1d218d8e90494a4dfafafa"},Behance:{1:"6b5dd3",2:"6b5dd3ffa2c0",3:"6b5dd3ffa2c03f8cff",4:"6b5dd3ffa2c03f8cfffece73",5:"6b5dd33f8cffffa2c0fece731b1d21",6:"6b5dd3ffa2c03f8cff9d93e9ffc6dba0d7e7",7:"6b5dd33f8cffffa2c0fece731b1d21ffa25fcdf4ff",8:"6b5dd3ffa2c03f8cfffece739d93e9a0d7e7ffc6dbfee2ab",9:"6b5dd33f8cffffa2c0fece731b1d219d93e9a0d7e7ffc6dbfee2ab",10:"6b5dd33f8cffffa2c0fece731b1d219d93e9a0d7e7ffc6dbfee2ab8d8e90",15:"6b5dd33f8cffffa2c0fece731b1d219d93e9a0d7e7ffc6dbfee2ab8d8e90cec8ff1b49c5ff78a4ffa25f494a4d",20:"6b5dd33f8cffffa2c0fece731b1d219d93e9a0d7e7ffc6dbfee2ab8d8e90cec8ff1b49c5ff78a4ffa25f494a4d8072dccdf4ffffbed3fedd9dfafafa"},GGBlanket:{1:"357BA2",2:"0095A8FFA600",3:"003f5cbc5090ffa600",4:"003f5cbc5090ffa60050bc70",5:"003f5cbc5090ffa60050bc70005aff",6:"003f5cbc5090ffa60050bc70005affff9f5c",7:"003f5cbc5090ffa60050bc70005affff9f5c7a5195",8:"003f5cbc5090ffa60050bc70005affff9f5c7a5195ff6e00",12:"003f5cbc5090ffa600007f8cd075a8ffcc3300bfbfe59bc0fff56600ffffffb6c1ffff99"},Prism:{1:"1f7ff1",2:"1f7ff1814cff",3:"1f7ff1814cffff7d00",4:"1f7ff1814cffff7d0012c5ff",5:"1f7ff1814cffff7d0012c5fff4d4fe",6:"1f7ff1814cffff7d0012c5fff4d4fee9c505",7:"1f7ff1814cffff7d0012c5fff4d4fee9c505898790"},PrismPair:{2:"1f7ff112c5ff",4:"1f7ff112c5ff814cfff4d4fe",6:"1f7ff112c5ff814cfff4d4feff7d00e9c505",8:"1f7ff112c5ff814cfff4d4feff7d00e9c505042d710ccffe"},PrismTrio:{3:"61459939d4fbfe7d29"},BMS:{4:"be2bbb585454a59fa0ede7e8",9:"be2bbb585454a59fa0ede7e8ffeccdfedccad9c5c4c6ffe6c0f2fc"},BMSPrimary:{4:"BE2BBBA69F9F595454EEE7E7"},BMSSecondary:{5:"ffeccdfedccad9c5c4c6ffe6c0f2fc",6:"ffeccdfedccaead6c8e0cbc3d9c5c4d2cac9",8:"FFECCDFEDCCAEAD5C9DFCBC3DAC5C5D2CAC8C5FFE6C0F2FB"},BMSTertiary:{2:"c6ffe6c0f2fc"},BMSTertiaryLight:{5:"59FFB9FDA97D33D6F1CB7C78FFD186"},BMSTertiaryDark:{5:"1DCE9BDF603A009FBA772A28FFAC25"},BMSBackground:{3:"f0ebeaefe6e7f9f7fa"},BMSWheat:{4:"ffeccdfed187feac25c37901"},BMSPink:{4:"fedccafea97de0613cba4421"},BMSBrown:{4:"d9c5c4cb7c79782a28511515"},BMSGreen:{4:"c6ffe652e7bd1ecd9a138967"},BMSBlue:{4:"c0f2fc33d7f102a0baa0778a"},CanvasXpress:{1:"0ab0db",2:"0ab0dbfe6969",3:"0ab0dbfed385fe6969",4:"0ab0dbfed385fe696947db0a",5:"0ab0db9e0adbfed385fe696947db0a",6:"0ab0db9e0adbfed385fe696947db0aff7d00",7:"0ab0db9e0adbfed385fe696947db0aff7d00ffa2c0",8:"0ab0db9e0adbfed385fe696947db0aff7d00ffa2c0a0d7e7",16:"0ab0dbfe6969fed38547db0a9e0adbff7d00ffa2c0a0d7e763b5e5f9a7a7fef0c783e16fc763e5ffb347ffc1d3bfe2ed"},CanvasXpressTraditional:{1:"4575b4",2:"d730274575b4",3:"d7191cfdae612c7bb6",4:"d7191cfdae61abd9e92c7bb6",5:"d7191cfdae61ffffbfabd9e92c7bb6",6:"d73027fc8d59fee090e0f3f891bfdb4575b4",7:"d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4",8:"d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4",9:"d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4",10:"a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695",11:"a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695"},CanvasXpressOLD:{1:"f2000d",2:"f2000d000df2",3:"f2000d000df20df200",4:"f2000d000df20df200f2f20d",5:"f2000d000df20df200f2f20df20df2",6:"f2000d000df20df200f2f20df20df20df2f2",7:"f2000d000df20df200f2f20df20df20df2f2f2f2f2",8:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd3",9:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fe",10:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b",11:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d0016",12:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d",13:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00",14:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00080808",15:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00080808fed38b",16:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00080808fed38bd38bfe",17:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00080808fed38bd38bfe8bfed3",18:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00080808fed38bd38bfe8bfed3404040"},Matlab:{7:"0072bdd95319edb1207e2f8e77ac304dbeeea2142f"},Parula:{10:"352a870f5cdd127dd8079ccf15b1b459bd8ca5be6be1b952fcce2ef9fb0e"},Viridis:{3:"44015421908cfde725",4:"44015431688e35b779fde725",5:"4401543b528b21908c5dc863fde725",6:"4401544144872a788e22a8847ad151fde725",7:"440154443a8331688e21908c35b7798fd744fde725",8:"44015446337e365c8d277f8e1fa1874ac16d9fda3afde725",9:"440154472d7b3b528b2c728e21908c27ad815dc863aadc32fde725",10:"4401544828783e4a8931688e26828e1f9e8935b7796dcd59b4de2cfde725",11:"44015448257641448735608d2a788e21908c22a88443bf717ad151bbdf27fde725",12:"440154482173433e8538598c2d708e25858e1e9b8a2bb07f51c56a85d54ac2df23fde725",256:"44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725"},Magma:{3:"000004b63679fcfdbf",4:"000004721f81f1605dfcfdbf",5:"00000451127cb63679fb8861fcfdbf",6:"0000043b0f708c2981de4968fe9f6dfcfdbf",7:"0000042d1160721f81b63679f1605dfeaf77fcfdbf",8:"0000042311515f187f982d80d3436ef8765cfeba80fcfdbf",9:"0000041d114751127c822681b63679e65164fb8861fec287fcfdbf",10:"000004180f3e451077721f819f2f7fcd4071f1605dfd9567fec98dfcfdbf",11:"000004150e373b0f70641a808c2981b63679de4968f76f5cfe9f6dfece91fcfdbf",12:"000004120d323310685a167e7d2482a3307ec83e73e95562f97c5dfea873fed395fcfdbf",256:"00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf"},Plasma:{3:"0d0887cc4678f0f921",4:"0d08879c179eed7953f0f921",5:"0d08877e03a8cc4678f89441f0f921",6:"0d08876a00a8b12a90e16462fca636f0f921",7:"0d08875d01a69c179ecc4678ed7953fdb32ff0f921",8:"0d08875402a38b0aa5b93289db5c68f48849febc2af0f921",9:"0d08874c02a17e03a8a92395cc4678e56b5df89441fdc328f0f921",10:"0d088747039f7301a89c179ebd3786d8576bed7953fa9e3bfdc926f0f921",11:"0d088742049e6a00a8900da4b12a90cc4678e16462f1844bfca636fcce25f0f921",12:"0d08873e049c6300a78707a6a62098c03a83d5546ee76f5af58c46fdad32fcd225f0f921",256:"0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"},Inferno:{3:"000004bb3754fcffa4",4:"000004781c6ded6925fcffa4",5:"00000456106ebb3754f98c0afcffa4",6:"000004420a68932667dd513afca50afcffa4",7:"000004330a5f781c6dbb3754ed6925fcb519fcffa4",8:"000004280b5465156e9f2a63d44842f57d15fac127fcffa4",9:"000004210c4a56106e89226abb3754e35932f98c0af9c932fcffa4",10:"0000041b0c424b0c6b781c6da52c60cf4446ed6925fb9a06f7d03cfcffa4",11:"000004170c3a420a686b186e932667bb3754dd513af3771afca50af6d645fcffa4",12:"000004140b353a096360136e85216ba92e5ecb4149e65d2ff78311fcad12f5db4bfcffa4",256:"00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4"},Cividis:{3:"00204d7c7b78ffea46",4:"00204d575c6da69d75ffea46",5:"00204d414d6b7c7b78bcaf6fffea46",6:"00204d31446b666970958f78cbba69ffea46",7:"00204d233e6c575c6d7c7b78a69d75d3c164ffea46",8:"00204d16396d4b546c6c6e728e8a79b3a772dbc761ffea46",9:"00204d05366e414d6b61646f7c7b789b9477bcaf6fe0cb5effea46",10:"00204d00336f39486b575c6d7071738a8779a69d75c4b56ce4cf5bffea46",11:"00204d00326f31446b4e576c6669707c7b78958f78b0a473cbba69e7d159ffea46",12:"00204d00306f2a406c48526b5e626e7273748784799e9677b6a971d0be67ead357ffea46",256:"00204c00204e00215000225100235300235500245600255800265a00265b00275d00285f002861002963002a64002a66002b68002c6a002d6c002d6d002e6e002e6f002f6f002f6f00306f00316f00316f00326e00336e00346e00346e01356e06366e0a376d0e376d12386d15396d17396d1a3a6c1c3b6c1e3c6c203c6c223d6c243e6c263e6c273f6c29406b2b416b2c416b2e426b2f436b31446b32446b33456b35466b36466b37476b38486b3a496b3b496b3c4a6b3d4b6b3e4b6b404c6b414d6b424e6b434e6b444f6b45506b46506b47516b48526b49536b4a536b4b546b4c556b4d556b4e566b4f576c50586c51586c52596c535a6c545a6c555b6c565c6c575d6d585d6d595e6d5a5f6d5b5f6d5c606d5d616e5e626e5f626e5f636e60646e61656f62656f63666f64676f65676f666870676970686a70686a70696b716a6c716b6d716c6d726d6e726e6f726f6f726f70737071737172737272747373747474757575757575757676767777767878767978777a79777b7a777b7b787c7b787d7c787e7d787f7e78807e78817f788280788381788481788582788683788784788885788985788a86788b87788c88788d88788e89788f8a78908b78918c78928c78938d78948e78958f78968f779790779891779992779a93779b93779c94779d95779e96769f9776a09876a19876a29976a39a75a49b75a59c75a69c75a79d75a89e74a99f74aaa074aba174aca173ada273aea373afa473b0a572b1a672b2a672b4a771b5a871b6a971b7aa70b8ab70b9ab70baac6fbbad6fbcae6ebdaf6ebeb06ebfb16dc0b16dc1b26cc2b36cc3b46cc5b56bc6b66bc7b76ac8b86ac9b869cab969cbba68ccbb68cdbc67cebd67d0be66d1bf66d2c065d3c065d4c164d5c263d6c363d7c462d8c561d9c661dbc760dcc860ddc95fdeca5edfcb5de0cb5de1cc5ce3cd5be4ce5be5cf5ae6d059e7d158e8d257e9d356ebd456ecd555edd654eed753efd852f0d951f1da50f3db4ff4dc4ef5dd4df6de4cf7df4bf9e049fae048fbe147fce246fde345ffe443ffe542ffe642ffe743ffe844ffe945"},Rainbow:{3:"ff000000ff000000ff",4:"ff000080ff0000ffff8000ff",5:"ff0000ccff0000ff660066ffcc00ff",6:"ff0000ffff0000ff0000ffff0000ffff00ff",7:"ff0000ffdb0049ff0000ff920092ff4900ffff00db",8:"ff0000ffbf0080ff0000ff4000ffff0040ff8000ffff00bf",9:"ff0000ffaa00aaff0000ff0000ffaa00aaff0000ffaa00ffff00aa",10:"ff0000ff9900ccff0033ff0000ff6600ffff0066ff3300ffcc00ffff0099",11:"ff0000ff8b00e8ff005dff0000ff2e00ffb900b9ff002eff5d00ffe800ffff008b",12:"ff0000ff8000ffff0080ff0000ff0000ff8000ffff0080ff0000ff8000ffff00ffff0080"},Heat:{3:"ff0000ff8000ffff00",4:"ff0000ff8000ffff00ffff80",5:"ff0000ff5500ffaa00ffff00ffff80",6:"ff0000ff4000ff8000ffbf00ffff00ffff80",7:"ff0000ff3300ff6600ff9900ffcc00ffff00ffff80",8:"ff0000ff3300ff6600ff9900ffcc00ffff00ffff40ffffbf",9:"ff0000ff2a00ff5500ff8000ffaa00ffd500ffff00ffff40ffffbf",10:"ff0000ff2400ff4900ff6d00ff9200ffb600ffdb00ffff00ffff40ffffbf",11:"ff0000ff2000ff4000ff6000ff8000ff9f00ffbf00ffdf00ffff00ffff40ffffbf",12:"ff0000ff2000ff4000ff6000ff8000ff9f00ffbf00ffdf00ffff00ffff2affff80ffffd5"},LastAirBenderFire:{8:"ecb100a100007E605EFF45009948234B4C4E572530000000"},LastAirBenderAir:{7:"ff9933C24841FFFF338B5B4587AFD1EEB05ADBC5A0"},LastAirBenderEarth:{9:"015E05B1A8667A5C1264674225351C4C7022C7C45ED2CFABFEFED8"},LastAirBenderWater:{8:"0047ab1DB4D3A2CAEDAFB5B8120976fffafa174D79949BBC"},SpongeBob:{11:"C86925FDF56CC4433F989B46FC95765D57AFB2CE31FF2027000000B1D6C5AB8323"},Simpsons:{10:"fed90f424f46d1b271FB4122ABC67D0363C37A491E000000FC020946732E"},RickyAndMorty:{9:"01B4C697ce4cFFF874BEE5FDF675DA44281d3a4767F8D3ACE64358"},ParksAndRecreation:{10:"bdbdbda51209ffdb58ec70147A491EC24841005502f7fcb969983ab5651d"},KimPossible:{12:"FF8C0002466370D42389160402001F9CF6F7FFCE455D734DFEC3BB662C9Cfff9f5000000"},GravityFalls:{14:"417BA1ff1493ffff2e3456348b0000ff670093C0D58b45139248A71c88594747478fbc8fd2b48c000000"},GameOfThronesStark:{9:"cadde17B906F174D79fffafa898989D4CDB1708090120976000000"},GameOfThronesStannis:{7:"FF0000ff8d1aFFD700b20000cc6600FFFF66000000"},GameOfThronesLannister:{6:"89080AC5AA73FEDF25C248418B5B45000000"},GameOfThronesTyrell:{9:"068105F7DC27808000AB681BF9FE768DA08071749798FB983CB371"},GameOfThronesTargaryen:{5:"AC1F25272727ff993382878896804b"},GameOfThronesMartell:{8:"ff8000cc6600b81b1873110ff8fc23fafd7b4c2600a57642"},GameOfThronesTully:{6:"212250AE432FE4EDCA8B5B454682B4000000"},GameOfThronesGreyjoy:{6:"000000708090D4CDB1DCDCDCF7DC27808080"},GameOfThronesManderly:{7:"40e0d080808000ff00282828015202195953FFFFFF"},GameOfThronesArryn:{7:"007fff7fbfff0019334c4cffffefb2a89797FFFFFF"},Brooklyn99Regular:{10:"e7298a72bcd4e41a1cFCF40E49f149f16913525252F9FEFF000E33000000"},Brooklyn99Dark:{9:"6CA9C33A3533000E33800000CBCFD2175E78DAA520174D79000000"}};for(var e in CanvasXpress.colorSchemes){for(var f in CanvasXpress.colorSchemes[e]){var c=CanvasXpress.colorSchemes[e][f].match(/.{6}/g);CanvasXpress.colorSchemes[e][f]=c?c.map(function(a){return"#"+a}):[]}}var b=["Viridis","Magma","Plasma","Inferno","Cividis"];var b=["Viridis"];for(var d=0;d<b.length;d++){var e=JSON.parse(JSON.stringify(CanvasXpress.colorSchemes[b[d]]));CanvasXpress.colorSchemes[b[d]+"Inv"]={};for(var f in e){CanvasXpress.colorSchemes[b[d]+"Inv"][f]=e[f].reverse()}}}();CanvasXpress.instances=CanvasXpress.instances||[];CanvasXpress.config=CanvasXpress.config||[];CanvasXpress.freezeSourceData=typeof CanvasXpress.freezeSourceData==="boolean"?CanvasXpress.freezeSourceData:true;CanvasXpress.transitions=CanvasXpress.transitions||{};CanvasXpress.cacheImages=CanvasXpress.cacheImages||{};CanvasXpress.cacheImagesReady=CanvasXpress.cacheImagesReady||false;CanvasXpress.cachePatterns=CanvasXpress.cachePatterns||{};CanvasXpress.cacheText=CanvasXpress.cacheText||{};CanvasXpress.fonts=CanvasXpress.fonts||{"American Typewriter":true,"Andale Mono":true,Arial:true,Baskerville:true,"Bradley Hand":true,"Brush Script MT":true,"Comic Sans MS":true,Courier:true,Didot:true,Georgia:true,"Gill Sans":true,Helvetica:true,Impact:true,"Lucida Console":true,Luminari:true,Monaco:true,Optima:true,Palatino:true,Roboto:true,Tahoma:true,"Times New Roman":true,"Trebuchet MS":true,Verdana:true};CanvasXpress.selector=CanvasXpress.selector||{vars:{},smps:{},meta:{},comp:{},nodes:{},edges:{},mixed:{},selections:0,groups:{},graphType:false};CanvasXpress.hidden=CanvasXpress.hidden||{hiddenVars:{},hiddenSmps:{},hiddenGrps:{},hiddenMapFeatures:{},hiddenNodes:{},hiddenEdges:{}};CanvasXpress.stack=CanvasXpress.stack||{};CanvasXpress.current=CanvasXpress.current||false;CanvasXpress.chain=CanvasXpress.chain||{};CanvasXpress.registered="880538711812CAC819D535798C925504275BB55693";CanvasXpress.system=CanvasXpress.system||{};CanvasXpress.ready=CanvasXpress.ready||false;CanvasXpress.readyFonts=CanvasXpress.readyFonts||false;CanvasXpress.alias=CanvasXpress.alias||"";CanvasXpress.doc=CanvasXpress.doc||{P:{},M:{}};CanvasXpress.icons=CanvasXpress.icons||{symbols:{},use:{},gradients:{},classes:{}};CanvasXpress.png="data:image/png;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==";CanvasXpress.letters=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"];CanvasXpress.dates={Sun:1,Mon:2,Tue:3,Wed:4,Thu:5,Fri:6,Sat:7,Sunday:1,Monday:2,Tuesday:3,Wednesday:4,Thursday:5,Friday:6,Saturday:7,Jan:"01",Feb:"02",Mar:"03",Apr:"04",May:"05",Jun:"06",Jul:"07",Aug:"08",Sep:"09",Oct:"10",Nov:"11",Dec:"12",January:"01",February:"02",March:"03",April:"04",May:"05",June:"06",July:"07",August:"08",September:"09",October:"10",November:"11",December:"12"};CanvasXpress.countries={"-99":["Unknown","Unknown","Unknown","UNK",0,0,"UNK"],ABW:["Aruba","Americas","Caribbean","AW",12.515,-69.976,"ABW"],AFG:["Afghanistan","Asia","Southern Asia","AF",33.838,66.026,"AFG"],AGO:["Angola","Africa","Middle Africa","AO",-12.296,17.544,"AGO"],AIA:["Anguilla","Americas","Caribbean","AI",18.222,-63.061,"AIA"],ALA:["Aland Islands","Europe","Northern Europe","AX",60.205,19.953,"ALA"],ALB:["Albania","Europe","Southern Europe","AL",41.142,20.068,"ALB"],AND:["Andorra","Europe","Southern Europe","AD",42.548,1.576,"AND"],ANT:["Netherlands Antilles","Americas","Caribbean","AN",12.187,-68.694,"NLD"],ARE:["United Arab Emirates","Asia","Western Asia","AE",23.903,54.34,"ARE"],ARG:["Argentina","Americas","South America","AR",-35.377,-65.168,"ARG"],ARM:["Armenia","Asia","Western Asia","AM",40.286,44.946,"ARM"],ASM:["American Samoa","Oceania","Polynesia","AS",-14.305,-170.708,"ASM"],ATF:["French Southern and Antarctic Territories","Antarctica","Antartica","TF",-49.192,68.861,"FRA"],ATG:["Antigua & Barbuda","Americas","Caribbean","AG",17.279,-61.792,"ATG",["Antigua and Barbuda"]],AUS:["Australia","Oceania","Australia and New Zealand","AU",-25.735,134.489,"AUS"],AUT:["Austria","Europe","Western Europe","AT",47.592,14.14,"AUT"],AZE:["Azerbaijan","Asia","Western Asia","AZ",40.296,48.819,"AZE"],BDI:["Burundi","Africa","Eastern Africa","BI",-3.357,29.887,"BDI"],BEL:["Belgium","Europe","Western Europe","BE",50.642,4.663,"BEL"],BEN:["Benin","Africa","Western Africa","BJ",9.647,2.343,"BEN"],BFA:["Burkina Faso","Africa","Western Africa","BF",12.277,-1.741,"BFA"],BGD:["Bangladesh","Asia","Southern Asia","BD",23.843,90.268,"BGD"],BGR:["Bulgaria","Europe","Eastern Europe","BG",42.761,25.231,"BGR"],BHR:["Bahrain","Asia","Western Asia","BH",26.022,50.559,"BHR"],BHS:["Bahamas","Americas","Caribbean","BS",24.201,-76.547,"BHS"],BIH:["Bosnia & Herzegovina","Europe","Southern Europe","BA",44.168,17.786,"BIH",["Bosnia and Herzegovina"]],BLR:["Belarus","Europe","Eastern Europe","BY",53.539,28.046,"BLR"],BLZ:["Belize","Americas","Central America","BZ",17.217,-88.685,"BLZ"],BMU:["Bermuda","Americas","Northern America","BM",32.316,-64.74,"BMU"],BOL:["Bolivia","Americas","South America","BO",-16.715,-64.671,"BOL"],BRA:["Brazil","Americas","South America","BR",-10.774,-53.09,"BRA"],BRB:["Barbados","Americas","Caribbean","BB",13.178,-59.562,"BRB"],BRN:["Brunei Darussalam","Asia","South-Eastern Asia","BN",4.521,114.761,"BRN",["Brunei"]],BTN:["Bhutan","Asia","Southern Asia","BT",27.415,90.429,"BTN"],BVT:["Bouvet Island","Antarctica","Antartica","BV",-54.422,3.412,"NOR"],BWA:["Botswana","Africa","Southern Africa","BW",-22.183,23.815,"BWA"],CAF:["Central African Republic","Africa","Middle Africa","CF",6.571,20.482,"CAF"],CAN:["Canada","Americas","Northern America","CA",61.392,-98.266,"CAN"],CCK:["Cocos (Keeling) Islands","Asia","South-Eastern Asia","CC",-12.172,96.836,"AUS"],CHE:["Switzerland","Europe","Western Europe","CH",46.802,8.234,"CHE"],CHL:["Chile","Americas","South America","CL",-37.853,-71.374,"CHL"],CHN:["China","Asia","Eastern Asia","CN",36.567,103.904,"CHN"],CIV:["Cote d'Ivoire","Africa","Western Africa","CI",7.631,-5.556,"CIV"],CMR:["Cameroon","Africa","Middle Africa","CM",5.685,12.743,"CMR"],COD:["Democratic Republic of the Congo","Africa","Middle Africa","CD",-2.877,23.655,"COD",["Democratic Republic of Congo"]],COG:["Congo","Africa","Middle Africa","CG",-0.841,15.224,"COG"],COK:["Cook Islands","Oceania","Polynesia","CK",-20.935,-158.909,"NZL"],COL:["Colombia","Americas","South America","CO",3.901,-73.074,"COL"],COM:["Comoros","Africa","Eastern Africa","KM",-11.893,43.675,"COM"],CPV:["Cape Verde","Africa","Western Africa","CV",15.978,-23.968,"CPV"],CRI:["Costa Rica","Americas","Central America","CR",9.97,-84.188,"CRI"],CUB:["Cuba","Americas","Caribbean","CU",21.621,-79.037,"CUB"],CXR:["Christmas Island","Asia","South-Eastern Asia","CX",-10.445,105.703,"AUS"],CYM:["Cayman Islands","Americas","Caribbean","KY",19.308,-81.239,"GBR"],CYP:["Cyprus","Asia","Western Asia","CY",35.045,33.221,"CYP"],CZE:["Czech Republic","Europe","Eastern Europe","CZ",49.742,15.338,"CZE",["Czechia"]],DEU:["Germany","Europe","Western Europe","DE",51.106,10.393,"DEU"],DJI:["Djibouti","Africa","Eastern Africa","DJ",11.749,42.577,"DJI"],DMA:["Dominica","Americas","Caribbean","DM",15.435,-61.356,"DMA"],DNK:["Denmark","Europe","Northern Europe","DK",55.963,10.046,"DNK"],DOM:["Dominican Republic","Americas","Caribbean","DO",18.894,-70.485,"DOM"],DZA:["Algeria","Africa","Northern Africa","DZ",28.163,2.632,"DZA"],ECU:["Ecuador","Americas","South America","EC",-1.428,-78.768,"ECU"],EGY:["Egypt","Africa","Northern Africa","EG",26.553,29.79,"EGY"],EGY1:["Ma'tan al-Sarra","Africa","Northern Africa","EGY1",21.892,33.743,"EGY"],ERI:["Eritrea","Africa","Eastern Africa","ER",15.373,38.841,"ERI"],ESH:["Western Sahara","Africa","Northern Africa","EH",24.661,-13.137,"ESH"],ESP:["Spain","Europe","Southern Europe","ES",40.226,-3.65,"ESP"],EST:["Estonia","Europe","Northern Europe","EE",58.674,25.527,"EST"],ETH:["Ethiopia","Africa","Eastern Africa","ET",8.633,39.616,"ETH"],FIN:["Finland","Europe","Northern Europe","FI",64.5,26.266,"FIN"],FJI:["Fiji","Oceania","Melanesia","FJ",-17.454,171.983,"FJI"],FLK:["Falkland Islands (Malvinas)","Americas","South America","FK",-51.738,-59.364,"GBR",["Falkland Islands"]],FRA:["France","Europe","Western Europe","FR",46.564,2.551,"FRA"],FRA1:["Glorioso Islands","Africa","Eastern Africa","FRA1",-11.567,47.29,"FRA"],FRO:["Faroe Islands","Europe","Northern Europe","FO",62.031,-6.885,"DNK"],FSM:["Micronesia (Federated States of)","Oceania","Micronesia","FM",6.492,159.404,"FSM",["Federated States of Micronesia"]],GAB:["Gabon","Africa","Middle Africa","GA",-0.591,11.797,"GAB"],GBR:["United Kingdom of Great Britain and Northern Ireland","Europe","Northern Europe","GB",54.155,-2.896,"GBR",["United Kingdom"]],GBR1:["Jersey","Europe","Northern Europe","GBR1",49.219,-2.129,"GBR"],GBR2:["South Georgia & the South Sandwich Islands","Antarctica","Antartica","GBR2",-54.489,-36.383,"GBR"],GBR3:["Guernsey","Europe","Northern Europe","GBR3",49.458,-2.577,"GBR"],GEO:["Georgia","Asia","Western Asia","GE",42.176,43.517,"GEO"],GHA:["Ghana","Africa","Western Africa","GH",7.959,-1.208,"GHA"],GIB:["Gibraltar","Europe","Southern Europe","GI",36.138,-5.345,"GBR"],GIN:["Guinea","Africa","Western Africa","GN",10.438,-10.942,"GIN"],GLP:["Guadeloupe","Americas","Caribbean","GP",16.203,-61.537,"FRA"],GMB:["Gambia","Africa","Western Africa","GM",13.452,-15.387,"GMB",["The Gambia"]],GNB:["Guinea-Bissau","Africa","Western Africa","GW",12.03,-14.966,"GNB"],GNQ:["Equatorial Guinea","Africa","Middle Africa","GQ",1.712,10.341,"GNQ"],GRC:["Greece","Europe","Southern Europe","GR",39.068,22.959,"GRC"],GRD:["Grenada","Americas","Caribbean","GD",12.112,-61.68,"GRD"],GRL:["Greenland","Americas","Northern America","GL",74.72,-41.39,"DNK"],GTM:["Guatemala","Americas","Central America","GT",15.702,-90.357,"GTM"],GUF:["French Guiana","Americas","South America","GF",3.924,-53.242,"FRA"],GUM:["Guam","Oceania","Micronesia","GU",13.443,144.775,"GUM"],GUY:["Guyana","Americas","South America","GY",4.792,-58.975,"GUY"],HKG:["Hong Kong","Asia","Eastern Asia","HK",22.377,114.11,"CHN"],HMD:["Heard Island and McDonald Islands","Antarctica","Antartica","HM",-53.092,73.498,"AUS"],HND:["Honduras","Americas","Central America","HN",14.819,-86.62,"HND"],HRV:["Croatia","Europe","Southern Europe","HR",45.051,16.411,"HRV"],HTI:["Haiti","Americas","Caribbean","HT",18.941,-72.68,"HTI"],HUN:["Hungary","Europe","Eastern Europe","HU",47.166,19.413,"HUN"],IDN:["Indonesia","Asia","South-Eastern Asia","ID",-2.231,117.3,"IDN"],IMY:["Isle of Man","Europe","Northern Europe","IM",54.229,-4.526,"GBR"],IND:["India","Asia","Southern Asia","IN",22.326,79.386,"IND"],IND1:["Arunachal Pradesh","Asia","Eastern Asia","IND1",28.121,94.35,"IND"],IOT:["British Indian Ocean Territory","Africa","Eastern Africa","IO",-7.335,72.434,"IOT"],IRL:["Ireland","Europe","Northern Europe","IE",53.176,-8.151,"IRL"],IRN:["Iran (Islamic Republic of)","Asia","Southern Asia","IR",32.739,54.197,"IRN",["Iran","Islamic Republic of Iran"]],IRQ:["Iraq","Asia","Western Asia","IQ",33.048,43.772,"IRQ"],ISL:["Iceland","Europe","Northern Europe","IS",64.997,-18.606,"ISL"],ISR:["Israel","Asia","Western Asia","IL",31.358,34.965,"ISR"],ITA:["Italy","Europe","Southern Europe","IT",42.795,12.071,"ITA"],JAM:["Jamaica","Americas","Caribbean","JM",18.151,-77.32,"JAM"],JOR:["Jordan","Asia","Western Asia","JO",31.253,36.786,"JOR"],JPN:["Japan","Asia","Eastern Asia","JP",37.562,137.99,"JPN"],KAZ:["Kazakhstan","Asia","Central Asia","KZ",48.015,66.657,"KAZ",["Baikonur Cosmodrome"]],KAZ1:["Baikonur Cosmodrome","Asia","Central Asia","KAZ1",45.965,63.305,"KAZ"],KEN:["Kenya","Africa","Eastern Africa","KE",0.529,37.858,"KEN"],KGZ:["Kyrgyzstan","Asia","Central Asia","KG",41.465,74.555,"KGZ"],KHM:["Cambodia","Asia","South-Eastern Asia","KH",12.716,104.923,"KHM"],KIR:["Kiribati","Oceania","Micronesia","KI",1.834,-154.459,"KIR"],KNA:["Saint Kitts and Nevis","Americas","Caribbean","KN",17.326,-62.754,"KNA"],KOR:["Republic of Korea","Asia","Eastern Asia","KR",36.375,127.834,"KOR"],KSV:["Kosovo","Europe","Eastern Europe","KV",42.602,20.903,"KSV"],KWT:["Kuwait","Asia","Western Asia","KW",29.34,47.59,"KWT"],LAO:["Lao People's Democratic Republic","Asia","South-Eastern Asia","LA",18.502,103.763,"LAO",["Lao DPR","Laos"]],LBN:["Lebanon","Asia","Western Asia","LB",33.92,35.888,"LBN"],LBR:["Liberia","Africa","Western Africa","LR",6.448,-9.308,"LBR"],LBY:["Libyan Arab Jamahiriya","Africa","Northern Africa","LY",27.043,18.023,"LBY",["Libya"]],LCA:["Saint Lucia","Americas","Caribbean","LC",13.897,-60.969,"LCA"],LIE:["Liechtenstein","Europe","Western Europe","LI",47.151,9.554,"LIE"],LKA:["Sri Lanka","Asia","Southern Asia","LK",7.608,80.704,"LKA"],LSO:["Lesotho","Africa","Southern Africa","LS",-29.582,28.243,"LSO"],LTU:["Lithuania","Europe","Northern Europe","LT",55.335,23.898,"LTU"],LUX:["Luxembourg","Europe","Western Europe","LU",49.77,6.087,"LUX"],LVA:["Latvia","Europe","Northern Europe","LV",56.857,24.929,"LVA"],MAC:["Macao","Asia","Eastern Asia","MO",22.183,113.55,"CHN"],MAR:["Morocco","Africa","Northern Africa","MA",31.883,-6.318,"MAR"],MCO:["Monaco","Europe","Western Europe","MC",43.747,7.412,"MCO"],MDA:["Moldova","Europe","Eastern Europe","MD",47.193,28.473,"MDA",["Republic of Moldova"]],MDG:["Madagascar","Africa","Eastern Africa","MG",-19.374,46.706,"MDG"],MDV:["Maldives","Asia","Southern Asia","MV",3.216,73.252,"MDV"],MEX:["Mexico","Americas","Central America","MX",23.95,-102.533,"MEX"],MHL:["Marshall Islands","Oceania","Micronesia","MH",7.643,168.626,"MHL"],MKD:["The former Yugoslav Republic of Macedonia","Europe","Southern Europe","MK",41.599,21.697,"MKD",["Macedonia"]],MLI:["Mali","Africa","Western Africa","ML",17.35,-3.525,"MLI"],MLT:["Malta","Europe","Southern Europe","MT",35.89,14.441,"MLT"],MMR:["Myanmar","Asia","South-Eastern Asia","MM",21.154,96.506,"MMR"],MNE:["Montenegro","Europe","Southern Europe","ME",42.791,19.25,"MNE"],MNG:["Mongolia","Asia","Eastern Asia","MN",46.835,103.083,"MNG"],MNP:["Northern Mariana Islands","Oceania","Micronesia","MP",15.088,145.679,"USA"],MOZ:["Mozambique","Africa","Eastern Africa","MZ",-17.26,35.551,"MOZ"],MRT:["Mauritania","Africa","Western Africa","MR",20.259,-10.333,"MRT"],MSR:["Montserrat","Americas","Caribbean","MS",16.735,-62.187,"GBR"],MTQ:["Martinique","Americas","Caribbean","MQ",14.652,-61.022,"FRA"],MUS:["Mauritius","Africa","Eastern Africa","MU",-20.252,57.87,"MUS"],MWI:["Malawi","Africa","Eastern Africa","MW",-13.217,34.307,"MWI"],MYS:["Malaysia","Asia","South-Eastern Asia","MY",3.792,109.708,"MYS"],MYT:["Mayotte","Africa","Eastern Africa","YT",-12.819,45.138,"FRA"],NAM:["Namibia","Africa","Southern Africa","NA",-22.134,17.218,"NAM"],NCL:["New Caledonia","Oceania","Melanesia","NC",-21.317,165.715,"FRA"],NER:["Niger","Africa","Western Africa","NE",17.426,9.397,"NER"],NFK:["Norfolk Island","Oceania","Australia and New Zealand","NF",-29.038,167.952,"AUS"],NGA:["Nigeria","Africa","Western Africa","NG",9.593,8.105,"NGA"],NIC:["Nicaragua","Americas","Central America","NI",12.839,-85.035,"NIC"],NIU:["Niue","Oceania","Polynesia","NU",-19.053,-169.869,"NZL"],NLD:["Netherlands","Europe","Western Europe","NL",52.249,5.603,"NLD"],NOR:["Norway","Europe","Northern Europe","NO",64.448,14.084,"NOR"],NPL:["Nepal","Asia","Southern Asia","NP",28.253,83.938,"NPL"],NRU:["Nauru","Oceania","Micronesia","NR",-0.529,166.923,"NRU"],NZL:["New Zealand","Oceania","Australia and New Zealand","NZ",-41.839,171.779,"NZL"],OMN:["Oman","Asia","Western Asia","OM",20.597,56.111,"OMN"],PAK:["Pakistan","Asia","Southern Asia","PK",29.357,68.79,"PAK"],PAN:["Panama","Americas","Central America","PA",8.507,-80.103,"PAN"],PCN:["Pitcairn Island","Oceania","Polynesia","PN",-24.477,-128.594,"GBR"],PER:["Peru","Americas","South America","PE",-9.164,-74.376,"PER"],PHL:["Philippines","Asia","South-Eastern Asia","PH",11.741,122.878,"PHL"],PLW:["Palau","Oceania","Micronesia","PW",7.501,134.568,"PLW"],PNG:["Papua New Guinea","Oceania","Melanesia","PG",-6.479,145.241,"PNG"],POL:["Poland","Europe","Eastern Europe","PL",52.124,19.4,"POL"],PRI:["Puerto Rico","Americas","Caribbean","PR",18.221,-66.463,"USA"],PRK:["Democratic People's Republic of Korea","Asia","Eastern Asia","KP",40.143,127.181,"PRK",["Democratic Republic of Korea","Dem. Rep. of Korea"]],PRT:["Portugal","Europe","Southern Europe","PT",39.691,-7.963,"PRT"],PRT1:["Azores Islands","Europe","Southern Europe","PRT1",38.332,-27.304,"PRT"],PRT2:["Madeira Islands","Europe","Southern Europe","PRT2",32.747,-16.985,"PRT"],PRY:["Paraguay","Americas","South America","PY",-23.237,-58.392,"PRY"],PSE:["West Bank","Asia","Western Asia","PS",31.946,35.256,"XXX"],PSE:["Gaza Strip","Asia","Western Asia","PS",31.401,34.372,"XXX"],PYF:["French Polynesia","Oceania","Polynesia","PF",-14.855,-146.419,"FRA"],QAT:["Qatar","Asia","Western Asia","QA",25.297,51.188,"QAT"],REU:["Reunion","Africa","Eastern Africa","RE",-21.122,55.538,"FRA"],ROU:["Romania","Europe","Eastern Europe","RO",45.843,24.969,"ROU"],RUS:["Russian Federation","Europe","Eastern Europe","RU",61.949,96.568,"RUS",["Russia"]],RUS1:["Kuril Islands","Asia","Eastern Asia","RUS1",44.691,147.162,"RUS"],RWA:["Rwanda","Africa","Eastern Africa","RW",-1.998,29.917,"RWA"],SAU:["Saudi Arabia","Asia","Western Asia","SA",24.122,44.545,"SAU"],SDN:["Sudan","Africa","Northern Africa","SD",16.019,29.958,"SDN"],SDN1:["Abyei","Africa","Northern Africa","SDN1",9.767,28.398,"SDN"],SDN2:["Hala'ib Triangle","Africa","Northern Africa","SDN2",22.3,35.615,"SDN"],SDN3:["Ilemi Triangle","Africa","Northern Africa","SDN3",4.764,35.108,"SDN"],SEN:["Senegal","Africa","Western Africa","SN",14.366,-14.468,"SEN"],SGP:["Singapore","Asia","South-Eastern Asia","SG",1.351,103.808,"SGP"],SGS:["South Georgia & the South Sandwich Islands","Americas","South America","GS",-54.429,-36.587,"GBR"],SHN:["Saint Helena","Africa","Western Africa","SH",-15.965,-5.711,"GBR"],SJM:["Svalbard and Jan Mayen Islands","Europe","Northern Europe","SJ",78.828,18.363,"NOR"],SLB:["Solomon Islands","Oceania","Melanesia","SB",-8.919,159.634,"SLB"],SLE:["Sierra Leone","Africa","Western Africa","SL",8.56,-11.792,"SLE"],SLV:["El Salvador","Americas","Central America","SV",13.736,-88.867,"SLV"],SMR:["San Marino","Europe","Southern Europe","SM",43.943,12.458,"SMR"],SOM:["Somalia","Africa","Eastern Africa","SO",6.063,45.862,"SOM"],SPM:["Saint Pierre and Miquelon","Americas","Northern America","PM",46.946,-56.262,"FRA"],SRB:["Serbia","Europe","Southern Europe","RS",44.031,20.805,"SRB"],SSD:["South Sudan","Africa","Middle Africa","SS",7.295,30.315,"SSD"],STP:["Sao Tome and Principe","Africa","Middle Africa","ST",0.456,6.736,"STP"],SUR:["Suriname","Americas","South America","SR",4.126,-55.912,"SUR"],SVK:["Slovakia","Europe","Eastern Europe","SK",48.707,19.491,"SVK"],SVN:["Slovenia","Europe","Southern Europe","SI",46.123,14.826,"SVN"],SWE:["Sweden","Europe","Northern Europe","SE",62.789,16.739,"SWE"],SWZ:["Swaziland","Africa","Southern Africa","SZ",-26.563,31.497,"SWZ"],SYC:["Seychelles","Africa","Eastern Africa","SC",-6.355,52.229,"SYC"],SYR:["Syrian Arab Republic","Asia","Western Asia","SY",35.013,38.505,"SYR",["Syria"]],TCA:["Turks and Caicos Islands","Americas","Caribbean","TC",21.836,-71.813,"GBR"],TCD:["Chad","Africa","Middle Africa","TD",15.361,18.664,"TCD"],TGO:["Togo","Africa","Western Africa","TG",8.534,0.975,"TGO"],THA:["Thailand","Asia","South-Eastern Asia","TH",15.127,101.017,"THA"],TJK:["Tajikistan","Asia","Central Asia","TJ",38.528,71.042,"TJK"],TKL:["Tokelau","Oceania","Polynesia","TK",-9.196,-171.853,"TKL"],TKM:["Turkmenistan","Asia","Central Asia","TM",39.218,58.391,"TKM"],TLS:["Timor-Leste","Asia","South-Eastern Asia","TL",-8.823,125.853,"TLS"],TON:["Tonga","Oceania","Polynesia","TO",-20.403,-174.837,"TON"],TTO:["Trinidad and Tobago","Americas","Caribbean","TT",10.468,-61.254,"TTO"],TUN:["Tunisia","Africa","Northern Africa","TN",34.11,9.561,"TUN"],TUR:["Turkey","Asia","Western Asia","TR",39.06,35.179,"TUR"],TUV:["Tuvalu","Oceania","Polynesia","TV",-7.828,178.557,"TUV"],TWN:["Taiwan","Asia","Eastern Asia","TW",23.754,120.95,"CHN"],TZA:["United Republic of Tanzania","Africa","Eastern Africa","TZ",-6.271,34.823,"TZA",["Tanzania"]],UGA:["Uganda","Africa","Eastern Africa","UG",1.279,32.386,"UGA"],UKR:["Ukraine","Europe","Eastern Europe","UA",49.017,31.387,"UKR"],URY:["Uruguay","Americas","South America","UY",-32.8,-56.013,"URY"],USA:["United States of America","Americas","Northern America","US",45.695,-112.492,"USA",["United States"]],USA1:["Guantanamo","Americas","Caribbean","USA1",19.927,-75.143,"USA"],USA2:["Jarvis Island","Americas","Northern America","USA2",-0.387,-160.028,"USA"],USA3:["Midway Island","Americas","Northern America","USA3",28.205,-177.379,"USA"],UZB:["Uzbekistan","Asia","Central Asia","UZ",41.75,63.169,"UZB"],VAT:["Holy See","Europe","Southern Europe","VA",41.903,12.452,"VAT",["Vatican City"]],VCT:["Saint Vincent and the Grenadines","Americas","Caribbean","VC",13.254,-61.194,"VCT"],VEN:["Venezuela","Americas","South America","VE",7.122,-66.17,"VEN"],VGB:["British Virgin Islands","Americas","Caribbean","VG",18.444,-64.531,"GBR"],VIR:["United States Virgin Islands","Americas","Caribbean","VI",17.905,-64.808,"USA"],VNM:["Vietnam","Asia","South-Eastern Asia","VN",16.659,106.301,"VNM"],VUT:["Vanuatu","Oceania","Melanesia","VU",-16.256,167.718,"VUT"],WSM:["Samoa","Oceania","Polynesia","WS",-13.759,-172.16,"WSM"],XXX1:["Paracel Islands","Asia","South-Eastern Asia","XXX1",16.701,112.375,"XXX"],XXX2:["Spratly Islands","Asia","South-Eastern Asia","XXX2",10.562,115.597,"XXX"],XXY1:["Aksai Chin","Asia","Eastern Asia","XXY1",35.033,79.127,"XXY"],XXZ1:["Jammu-Kashmir","Asia","Eastern Asia","XXZ1",34.55,75.807,"XXZ"],YEM:["Yemen","Asia","Western Asia","YE",15.905,47.599,"YEM"],ZAF:["South Africa","Africa","Southern Africa","ZA",-28.994,25.088,"ZAF"],ZMB:["Zambia","Africa","Eastern Africa","ZM",-13.454,27.798,"ZMB"],ZWE:["Zimbabwe","Africa","Eastern Africa","ZW",-19.001,29.871,"ZWE"]};CanvasXpress.usa={AK:["Alaska",63.588753,-154.493062],AL:["Alabama",32.318231,-86.902298],AR:["Arkansas",35.20105,-91.831833],AZ:["Arizona",34.048928,-111.093731],CA:["California",36.778261,-119.417932],CO:["Colorado",39.550051,-105.782067],CT:["Connecticut",41.603221,-73.087749],DC:["District of Columbia",38.905985,-77.033418],DE:["Delaware",38.910832,-75.52767],FL:["Florida",27.664827,-81.515754],GA:["Georgia",32.157435,-82.907123],HI:["Hawaii",19.898682,-155.665857],IA:["Iowa",41.878003,-93.097702],ID:["Idaho",44.068202,-114.742041],IL:["Illinois",40.633125,-89.398528],IN:["Indiana",40.551217,-85.602364],KS:["Kansas",39.011902,-98.484246],KY:["Kentucky",37.839333,-84.270018],LA:["Louisiana",31.244823,-92.145024],MA:["Massachusetts",42.407211,-71.382437],MD:["Maryland",39.045755,-76.641271],ME:["Maine",45.253783,-69.445469],MI:["Michigan",44.314844,-85.602364],MN:["Minnesota",46.729553,-94.6859],MO:["Missouri",37.964253,-91.831833],MS:["Mississippi",32.354668,-89.398528],MT:["Montana",46.879682,-110.362566],NC:["North Carolina",35.759573,-79.0193],ND:["North Dakota",47.551493,-101.002012],NE:["Nebraska",41.492537,-99.901813],NH:["New Hampshire",43.193852,-71.572395],NJ:["New Jersey",40.058324,-74.405661],NM:["New Mexico",34.97273,-105.032363],NV:["Nevada",38.80261,-116.419389],NY:["New York",43.299428,-74.217933],OH:["Ohio",40.417287,-82.907123],OK:["Oklahoma",35.007752,-97.092877],OR:["Oregon",43.804133,-120.554201],PA:["Pennsylvania",41.203322,-77.194525],PR:["Puerto Rico",18.220833,-66.590149],RI:["Rhode Island",41.580095,-71.477429],SC:["South Carolina",33.836081,-81.163725],SD:["South Dakota",43.969515,-99.901813],TN:["Tennessee",35.517491,-86.580447],TX:["Texas",31.968599,-99.901813],UT:["Utah",39.32098,-111.093731],VA:["Virginia",37.431573,-78.656894],VT:["Vermont",44.558803,-72.577841],WA:["Washington",47.751074,-120.740139],WI:["Wisconsin",43.78444,-88.787868],WV:["West Virginia",38.597626,-80.454903],WY:["Wyoming",43.075968,-107.290284]};CanvasXpress.maps={Africa:"/data/maps/AFRICA.json",Asia:"/data/maps/ASIA.json",Europe:"/data/maps/EUROPE.json",NorthAmerica:"/data/maps/NORTHAMERICA.json",Oceania:"/data/maps/OCEANIA.json",SouthAmerica:"/data/maps/SOUTHAMERICA.json",USACounties:"/data/maps/USA-COUNTIES.json",USAContinental:"/data/maps/USA-CONTINENTAL.json",USAStates:"/data/maps/USA.json",WorldContinents:"/data/maps/WORLD.json",WorldAntarctica:"/data/maps/WORLD-ANTARCTICA.json",World:"/data/maps/WORLD.json",WorldLow:"/data/maps/WORLD-LOW.json"};CanvasXpress.example={y:{vars:["A","B","C"],smps:["X","Y","Z"],data:[[1,2,3],[4,5,6],[7,8,9]]}};CanvasXpress.geojson={type:"FeatureCollection",features:[{type:"Feature",properties:{name:"Dummy"},geometry:{type:"Polygon",coordinates:[[[-180,-90],[180,-90],[180,90],[-180,90],[-180,-90]]]}}]};CanvasXpress.chromosomes={hg38:{columns:["start","end","name","stain"],order:[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,"X","Y"],data:{1:[[0,2300000,"p36.33","gneg"],[2300000,5300000,"p36.32","gpos25"],[5300000,7100000,"p36.31","gneg"],[7100000,9100000,"p36.23","gpos25"],[9100000,12500000,"p36.22","gneg"],[12500000,15900000,"p36.21","gpos50"],[15900000,20100000,"p36.13","gneg"],[20100000,23600000,"p36.12","gpos25"],[23600000,27600000,"p36.11","gneg"],[27600000,29900000,"p35.3","gpos25"],[29900000,32300000,"p35.2","gneg"],[32300000,34300000,"p35.1","gpos25"],[34300000,39600000,"p34.3","gneg"],[39600000,43700000,"p34.2","gpos25"],[43700000,46300000,"p34.1","gneg"],[46300000,50200000,"p33","gpos75"],[50200000,55600000,"p32.3","gneg"],[55600000,58500000,"p32.2","gpos50"],[58500000,60800000,"p32.1","gneg"],[60800000,68500000,"p31.3","gpos50"],[68500000,69300000,"p31.2","gneg"],[69300000,84400000,"p31.1","gpos100"],[84400000,87900000,"p22.3","gneg"],[87900000,91500000,"p22.2","gpos75"],[91500000,94300000,"p22.1","gneg"],[94300000,99300000,"p21.3","gpos75"],[99300000,101800000,"p21.2","gneg"],[101800000,106700000,"p21.1","gpos100"],[106700000,111200000,"p13.3","gneg"],[111200000,115500000,"p13.2","gpos50"],[115500000,117200000,"p13.1","gneg"],[117200000,120400000,"p12","gpos50"],[120400000,121700000,"p11.2","gneg"],[121700000,123400000,"p11.1","acen"],[123400000,125100000,"q11","acen"],[125100000,143200000,"q12","gvar"],[143200000,147500000,"q21.1","gneg"],[147500000,150600000,"q21.2","gpos50"],[150600000,155100000,"q21.3","gneg"],[155100000,156600000,"q22","gpos50"],[156600000,159100000,"q23.1","gneg"],[159100000,160500000,"q23.2","gpos50"],[160500000,165500000,"q23.3","gneg"],[165500000,167200000,"q24.1","gpos50"],[167200000,170900000,"q24.2","gneg"],[170900000,173000000,"q24.3","gpos75"],[173000000,176100000,"q25.1","gneg"],[176100000,180300000,"q25.2","gpos50"],[180300000,185800000,"q25.3","gneg"],[185800000,190800000,"q31.1","gpos100"],[190800000,193800000,"q31.2","gneg"],[193800000,198700000,"q31.3","gpos100"],[198700000,207100000,"q32.1","gneg"],[207100000,211300000,"q32.2","gpos25"],[211300000,214400000,"q32.3","gneg"],[214400000,223900000,"q41","gpos100"],[223900000,224400000,"q42.11","gneg"],[224400000,226800000,"q42.12","gpos25"],[226800000,230500000,"q42.13","gneg"],[230500000,234600000,"q42.2","gpos50"],[234600000,236400000,"q42.3","gneg"],[236400000,243500000,"q43","gpos75"],[243500000,248956422,"q44","gneg"]],2:[[0,4400000,"p25.3","gneg"],[4400000,6900000,"p25.2","gpos50"],[6900000,12000000,"p25.1","gneg"],[12000000,16500000,"p24.3","gpos75"],[16500000,19000000,"p24.2","gneg"],[19000000,23800000,"p24.1","gpos75"],[23800000,27700000,"p23.3","gneg"],[27700000,29800000,"p23.2","gpos25"],[29800000,31800000,"p23.1","gneg"],[31800000,36300000,"p22.3","gpos75"],[36300000,38300000,"p22.2","gneg"],[38300000,41500000,"p22.1","gpos50"],[41500000,47500000,"p21","gneg"],[47500000,52600000,"p16.3","gpos100"],[52600000,54700000,"p16.2","gneg"],[54700000,61000000,"p16.1","gpos100"],[61000000,63900000,"p15","gneg"],[63900000,68400000,"p14","gpos50"],[68400000,71300000,"p13.3","gneg"],[71300000,73300000,"p13.2","gpos50"],[73300000,74800000,"p13.1","gneg"],[74800000,83100000,"p12","gpos100"],[83100000,91800000,"p11.2","gneg"],[91800000,93900000,"p11.1","acen"],[93900000,96000000,"q11.1","acen"],[96000000,102100000,"q11.2","gneg"],[102100000,105300000,"q12.1","gpos50"],[105300000,106700000,"q12.2","gneg"],[106700000,108700000,"q12.3","gpos25"],[108700000,112200000,"q13","gneg"],[112200000,118100000,"q14.1","gpos50"],[118100000,121600000,"q14.2","gneg"],[121600000,129100000,"q14.3","gpos50"],[129100000,131700000,"q21.1","gneg"],[131700000,134300000,"q21.2","gpos25"],[134300000,136100000,"q21.3","gneg"],[136100000,141500000,"q22.1","gpos100"],[141500000,143400000,"q22.2","gneg"],[143400000,147900000,"q22.3","gpos100"],[147900000,149000000,"q23.1","gneg"],[149000000,149600000,"q23.2","gpos25"],[149600000,154000000,"q23.3","gneg"],[154000000,158900000,"q24.1","gpos75"],[158900000,162900000,"q24.2","gneg"],[162900000,168900000,"q24.3","gpos75"],[168900000,177100000,"q31.1","gneg"],[177100000,179700000,"q31.2","gpos50"],[179700000,182100000,"q31.3","gneg"],[182100000,188500000,"q32.1","gpos75"],[188500000,191100000,"q32.2","gneg"],[191100000,196600000,"q32.3","gpos75"],[196600000,202500000,"q33.1","gneg"],[202500000,204100000,"q33.2","gpos50"],[204100000,208200000,"q33.3","gneg"],[208200000,214500000,"q34","gpos100"],[214500000,220700000,"q35","gneg"],[220700000,224300000,"q36.1","gpos75"],[224300000,225200000,"q36.2","gneg"],[225200000,230100000,"q36.3","gpos100"],[230100000,234700000,"q37.1","gneg"],[234700000,236400000,"q37.2","gpos50"],[236400000,242193529,"q37.3","gneg"]],3:[[0,2800000,"p26.3","gpos50"],[2800000,4000000,"p26.2","gneg"],[4000000,8100000,"p26.1","gpos50"],[8100000,11600000,"p25.3","gneg"],[11600000,13200000,"p25.2","gpos25"],[13200000,16300000,"p25.1","gneg"],[16300000,23800000,"p24.3","gpos100"],[23800000,26300000,"p24.2","gneg"],[26300000,30800000,"p24.1","gpos75"],[30800000,32000000,"p23","gneg"],[32000000,36400000,"p22.3","gpos50"],[36400000,39300000,"p22.2","gneg"],[39300000,43600000,"p22.1","gpos75"],[43600000,44100000,"p21.33","gneg"],[44100000,44200000,"p21.32","gpos50"],[44200000,50600000,"p21.31","gneg"],[50600000,52300000,"p21.2","gpos25"],[52300000,54400000,"p21.1","gneg"],[54400000,58600000,"p14.3","gpos50"],[58600000,63800000,"p14.2","gneg"],[63800000,69700000,"p14.1","gpos50"],[69700000,74100000,"p13","gneg"],[74100000,79800000,"p12.3","gpos75"],[79800000,83500000,"p12.2","gneg"],[83500000,87100000,"p12.1","gpos75"],[87100000,87800000,"p11.2","gneg"],[87800000,90900000,"p11.1","acen"],[90900000,94000000,"q11.1","acen"],[94000000,98600000,"q11.2","gvar"],[98600000,100300000,"q12.1","gneg"],[100300000,101200000,"q12.2","gpos25"],[101200000,103100000,"q12.3","gneg"],[103100000,106500000,"q13.11","gpos75"],[106500000,108200000,"q13.12","gneg"],[108200000,111600000,"q13.13","gpos50"],[111600000,113700000,"q13.2","gneg"],[113700000,117600000,"q13.31","gpos75"],[117600000,119300000,"q13.32","gneg"],[119300000,122200000,"q13.33","gpos75"],[122200000,124100000,"q21.1","gneg"],[124100000,126100000,"q21.2","gpos25"],[126100000,129500000,"q21.3","gneg"],[129500000,134000000,"q22.1","gpos25"],[134000000,136000000,"q22.2","gneg"],[136000000,139000000,"q22.3","gpos25"],[139000000,143100000,"q23","gneg"],[143100000,149200000,"q24","gpos100"],[149200000,152300000,"q25.1","gneg"],[152300000,155300000,"q25.2","gpos50"],[155300000,157300000,"q25.31","gneg"],[157300000,159300000,"q25.32","gpos50"],[159300000,161000000,"q25.33","gneg"],[161000000,167900000,"q26.1","gpos100"],[167900000,171200000,"q26.2","gneg"],[171200000,176000000,"q26.31","gpos75"],[176000000,179300000,"q26.32","gneg"],[179300000,183000000,"q26.33","gpos75"],[183000000,184800000,"q27.1","gneg"],[184800000,186300000,"q27.2","gpos25"],[186300000,188200000,"q27.3","gneg"],[188200000,192600000,"q28","gpos75"],[192600000,198295559,"q29","gneg"]],4:[[0,4500000,"p16.3","gneg"],[4500000,6000000,"p16.2","gpos25"],[6000000,11300000,"p16.1","gneg"],[11300000,15000000,"p15.33","gpos50"],[15000000,17700000,"p15.32","gneg"],[17700000,21300000,"p15.31","gpos75"],[21300000,27700000,"p15.2","gneg"],[27700000,35800000,"p15.1","gpos100"],[35800000,41200000,"p14","gneg"],[41200000,44600000,"p13","gpos50"],[44600000,48200000,"p12","gneg"],[48200000,50000000,"p11","acen"],[50000000,51800000,"q11","acen"],[51800000,58500000,"q12","gneg"],[58500000,65500000,"q13.1","gpos100"],[65500000,69400000,"q13.2","gneg"],[69400000,75300000,"q13.3","gpos75"],[75300000,78000000,"q21.1","gneg"],[78000000,81500000,"q21.21","gpos50"],[81500000,83200000,"q21.22","gneg"],[83200000,86000000,"q21.23","gpos25"],[86000000,87100000,"q21.3","gneg"],[87100000,92800000,"q22.1","gpos75"],[92800000,94200000,"q22.2","gneg"],[94200000,97900000,"q22.3","gpos75"],[97900000,100100000,"q23","gneg"],[100100000,106700000,"q24","gpos50"],[106700000,113200000,"q25","gneg"],[113200000,119900000,"q26","gpos75"],[119900000,122800000,"q27","gneg"],[122800000,127900000,"q28.1","gpos50"],[127900000,130100000,"q28.2","gneg"],[130100000,138500000,"q28.3","gpos100"],[138500000,140600000,"q31.1","gneg"],[140600000,145900000,"q31.21","gpos25"],[145900000,147500000,"q31.22","gneg"],[147500000,150200000,"q31.23","gpos25"],[150200000,154600000,"q31.3","gneg"],[154600000,160800000,"q32.1","gpos100"],[160800000,163600000,"q32.2","gneg"],[163600000,169200000,"q32.3","gpos100"],[169200000,171000000,"q33","gneg"],[171000000,175400000,"q34.1","gpos75"],[175400000,176600000,"q34.2","gneg"],[176600000,182300000,"q34.3","gpos100"],[182300000,186200000,"q35.1","gneg"],[186200000,190214555,"q35.2","gpos25"]],5:[[0,4400000,"p15.33","gneg"],[4400000,6300000,"p15.32","gpos25"],[6300000,9900000,"p15.31","gneg"],[9900000,15000000,"p15.2","gpos50"],[15000000,18400000,"p15.1","gneg"],[18400000,23300000,"p14.3","gpos100"],[23300000,24600000,"p14.2","gneg"],[24600000,28900000,"p14.1","gpos100"],[28900000,33800000,"p13.3","gneg"],[33800000,38400000,"p13.2","gpos25"],[38400000,42500000,"p13.1","gneg"],[42500000,46100000,"p12","gpos50"],[46100000,48800000,"p11","acen"],[48800000,51400000,"q11.1","acen"],[51400000,59600000,"q11.2","gneg"],[59600000,63600000,"q12.1","gpos75"],[63600000,63900000,"q12.2","gneg"],[63900000,67400000,"q12.3","gpos75"],[67400000,69100000,"q13.1","gneg"],[69100000,74000000,"q13.2","gpos50"],[74000000,77600000,"q13.3","gneg"],[77600000,82100000,"q14.1","gpos50"],[82100000,83500000,"q14.2","gneg"],[83500000,93000000,"q14.3","gpos100"],[93000000,98900000,"q15","gneg"],[98900000,103400000,"q21.1","gpos100"],[103400000,105100000,"q21.2","gneg"],[105100000,110200000,"q21.3","gpos100"],[110200000,112200000,"q22.1","gneg"],[112200000,113800000,"q22.2","gpos50"],[113800000,115900000,"q22.3","gneg"],[115900000,122100000,"q23.1","gpos100"],[122100000,127900000,"q23.2","gneg"],[127900000,131200000,"q23.3","gpos100"],[131200000,136900000,"q31.1","gneg"],[136900000,140100000,"q31.2","gpos25"],[140100000,145100000,"q31.3","gneg"],[145100000,150400000,"q32","gpos75"],[150400000,153300000,"q33.1","gneg"],[153300000,156300000,"q33.2","gpos50"],[156300000,160500000,"q33.3","gneg"],[160500000,169000000,"q34","gpos100"],[169000000,173300000,"q35.1","gneg"],[173300000,177100000,"q35.2","gpos25"],[177100000,181538259,"q35.3","gneg"]],6:[[0,2300000,"p25.3","gneg"],[2300000,4200000,"p25.2","gpos25"],[4200000,7100000,"p25.1","gneg"],[7100000,10600000,"p24.3","gpos50"],[10600000,11600000,"p24.2","gneg"],[11600000,13400000,"p24.1","gpos25"],[13400000,15200000,"p23","gneg"],[15200000,25200000,"p22.3","gpos75"],[25200000,27100000,"p22.2","gneg"],[27100000,30500000,"p22.1","gpos50"],[30500000,32100000,"p21.33","gneg"],[32100000,33500000,"p21.32","gpos25"],[33500000,36600000,"p21.31","gneg"],[36600000,40500000,"p21.2","gpos25"],[40500000,46200000,"p21.1","gneg"],[46200000,51800000,"p12.3","gpos100"],[51800000,53000000,"p12.2","gneg"],[53000000,57200000,"p12.1","gpos100"],[57200000,58500000,"p11.2","gneg"],[58500000,59800000,"p11.1","acen"],[59800000,62600000,"q11.1","acen"],[62600000,62700000,"q11.2","gneg"],[62700000,69200000,"q12","gpos100"],[69200000,75200000,"q13","gneg"],[75200000,83200000,"q14.1","gpos50"],[83200000,84200000,"q14.2","gneg"],[84200000,87300000,"q14.3","gpos50"],[87300000,92500000,"q15","gneg"],[92500000,98900000,"q16.1","gpos100"],[98900000,100000000,"q16.2","gneg"],[100000000,105000000,"q16.3","gpos100"],[105000000,114200000,"q21","gneg"],[114200000,117900000,"q22.1","gpos75"],[117900000,118100000,"q22.2","gneg"],[118100000,125800000,"q22.31","gpos100"],[125800000,126800000,"q22.32","gneg"],[126800000,130000000,"q22.33","gpos75"],[130000000,130900000,"q23.1","gneg"],[130900000,134700000,"q23.2","gpos50"],[134700000,138300000,"q23.3","gneg"],[138300000,142200000,"q24.1","gpos75"],[142200000,145100000,"q24.2","gneg"],[145100000,148500000,"q24.3","gpos75"],[148500000,152100000,"q25.1","gneg"],[152100000,155200000,"q25.2","gpos50"],[155200000,160600000,"q25.3","gneg"],[160600000,164100000,"q26","gpos50"],[164100000,170805979,"q27","gneg"]],7:[[0,2800000,"p22.3","gneg"],[2800000,4500000,"p22.2","gpos25"],[4500000,7200000,"p22.1","gneg"],[7200000,13700000,"p21.3","gpos100"],[13700000,16500000,"p21.2","gneg"],[16500000,20900000,"p21.1","gpos100"],[20900000,25500000,"p15.3","gneg"],[25500000,27900000,"p15.2","gpos50"],[27900000,28800000,"p15.1","gneg"],[28800000,34900000,"p14.3","gpos75"],[34900000,37100000,"p14.2","gneg"],[37100000,43300000,"p14.1","gpos75"],[43300000,45400000,"p13","gneg"],[45400000,49000000,"p12.3","gpos75"],[49000000,50500000,"p12.2","gneg"],[50500000,53900000,"p12.1","gpos75"],[53900000,58100000,"p11.2","gneg"],[58100000,60100000,"p11.1","acen"],[60100000,62100000,"q11.1","acen"],[62100000,67500000,"q11.21","gneg"],[67500000,72700000,"q11.22","gpos50"],[72700000,77900000,"q11.23","gneg"],[77900000,86700000,"q21.11","gpos100"],[86700000,88500000,"q21.12","gneg"],[88500000,91500000,"q21.13","gpos75"],[91500000,93300000,"q21.2","gneg"],[93300000,98400000,"q21.3","gpos75"],[98400000,104200000,"q22.1","gneg"],[104200000,104900000,"q22.2","gpos50"],[104900000,107800000,"q22.3","gneg"],[107800000,115000000,"q31.1","gpos75"],[115000000,117700000,"q31.2","gneg"],[117700000,121400000,"q31.31","gpos75"],[121400000,124100000,"q31.32","gneg"],[124100000,127500000,"q31.33","gpos75"],[127500000,129600000,"q32.1","gneg"],[129600000,130800000,"q32.2","gpos25"],[130800000,132900000,"q32.3","gneg"],[132900000,138500000,"q33","gpos50"],[138500000,143400000,"q34","gneg"],[143400000,148200000,"q35","gpos75"],[148200000,152800000,"q36.1","gneg"],[152800000,155200000,"q36.2","gpos25"],[155200000,159345973,"q36.3","gneg"]],8:[[0,2300000,"p23.3","gneg"],[2300000,6300000,"p23.2","gpos75"],[6300000,12800000,"p23.1","gneg"],[12800000,19200000,"p22","gpos100"],[19200000,23500000,"p21.3","gneg"],[23500000,27500000,"p21.2","gpos50"],[27500000,29000000,"p21.1","gneg"],[29000000,36700000,"p12","gpos75"],[36700000,38500000,"p11.23","gneg"],[38500000,39900000,"p11.22","gpos25"],[39900000,43200000,"p11.21","gneg"],[43200000,45200000,"p11.1","acen"],[45200000,47200000,"q11.1","acen"],[47200000,51300000,"q11.21","gneg"],[51300000,51700000,"q11.22","gpos75"],[51700000,54600000,"q11.23","gneg"],[54600000,60600000,"q12.1","gpos50"],[60600000,61300000,"q12.2","gneg"],[61300000,65100000,"q12.3","gpos50"],[65100000,67100000,"q13.1","gneg"],[67100000,69600000,"q13.2","gpos50"],[69600000,72000000,"q13.3","gneg"],[72000000,74600000,"q21.11","gpos100"],[74600000,74700000,"q21.12","gneg"],[74700000,83500000,"q21.13","gpos75"],[83500000,85900000,"q21.2","gneg"],[85900000,92300000,"q21.3","gpos100"],[92300000,97900000,"q22.1","gneg"],[97900000,100500000,"q22.2","gpos25"],[100500000,105100000,"q22.3","gneg"],[105100000,109500000,"q23.1","gpos75"],[109500000,111100000,"q23.2","gneg"],[111100000,116700000,"q23.3","gpos100"],[116700000,118300000,"q24.11","gneg"],[118300000,121500000,"q24.12","gpos50"],[121500000,126300000,"q24.13","gneg"],[126300000,130400000,"q24.21","gpos50"],[130400000,135400000,"q24.22","gneg"],[135400000,138900000,"q24.23","gpos75"],[138900000,145138636,"q24.3","gneg"]],9:[[0,2200000,"p24.3","gneg"],[2200000,4600000,"p24.2","gpos25"],[4600000,9000000,"p24.1","gneg"],[9000000,14200000,"p23","gpos75"],[14200000,16600000,"p22.3","gneg"],[16600000,18500000,"p22.2","gpos25"],[18500000,19900000,"p22.1","gneg"],[19900000,25600000,"p21.3","gpos100"],[25600000,28000000,"p21.2","gneg"],[28000000,33200000,"p21.1","gpos100"],[33200000,36300000,"p13.3","gneg"],[36300000,37900000,"p13.2","gpos25"],[37900000,39000000,"p13.1","gneg"],[39000000,40000000,"p12","gpos50"],[40000000,42200000,"p11.2","gneg"],[42200000,43000000,"p11.1","acen"],[43000000,45500000,"q11","acen"],[45500000,61500000,"q12","gvar"],[61500000,65000000,"q13","gneg"],[65000000,69300000,"q21.11","gpos25"],[69300000,71300000,"q21.12","gneg"],[71300000,76600000,"q21.13","gpos50"],[76600000,78500000,"q21.2","gneg"],[78500000,81500000,"q21.31","gpos50"],[81500000,84300000,"q21.32","gneg"],[84300000,87800000,"q21.33","gpos50"],[87800000,89200000,"q22.1","gneg"],[89200000,91200000,"q22.2","gpos25"],[91200000,93900000,"q22.31","gneg"],[93900000,96500000,"q22.32","gpos25"],[96500000,99800000,"q22.33","gneg"],[99800000,105400000,"q31.1","gpos100"],[105400000,108500000,"q31.2","gneg"],[108500000,112100000,"q31.3","gpos25"],[112100000,114900000,"q32","gneg"],[114900000,119800000,"q33.1","gpos75"],[119800000,123100000,"q33.2","gneg"],[123100000,127500000,"q33.3","gpos25"],[127500000,130600000,"q34.11","gneg"],[130600000,131100000,"q34.12","gpos25"],[131100000,133100000,"q34.13","gneg"],[133100000,134500000,"q34.2","gpos25"],[134500000,138394717,"q34.3","gneg"]],10:[[0,3000000,"p15.3","gneg"],[3000000,3800000,"p15.2","gpos25"],[3800000,6600000,"p15.1","gneg"],[6600000,12200000,"p14","gpos75"],[12200000,17300000,"p13","gneg"],[17300000,18300000,"p12.33","gpos75"],[18300000,18400000,"p12.32","gneg"],[18400000,22300000,"p12.31","gpos75"],[22300000,24300000,"p12.2","gneg"],[24300000,29300000,"p12.1","gpos50"],[29300000,31100000,"p11.23","gneg"],[31100000,34200000,"p11.22","gpos25"],[34200000,38000000,"p11.21","gneg"],[38000000,39800000,"p11.1","acen"],[39800000,41600000,"q11.1","acen"],[41600000,45500000,"q11.21","gneg"],[45500000,48600000,"q11.22","gpos25"],[48600000,51100000,"q11.23","gneg"],[51100000,59400000,"q21.1","gpos100"],[59400000,62800000,"q21.2","gneg"],[62800000,68800000,"q21.3","gpos100"],[68800000,73100000,"q22.1","gneg"],[73100000,75900000,"q22.2","gpos50"],[75900000,80300000,"q22.3","gneg"],[80300000,86100000,"q23.1","gpos100"],[86100000,87700000,"q23.2","gneg"],[87700000,91100000,"q23.31","gpos75"],[91100000,92300000,"q23.32","gneg"],[92300000,95300000,"q23.33","gpos50"],[95300000,97500000,"q24.1","gneg"],[97500000,100100000,"q24.2","gpos50"],[100100000,101200000,"q24.31","gneg"],[101200000,103100000,"q24.32","gpos25"],[103100000,104000000,"q24.33","gneg"],[104000000,110100000,"q25.1","gpos100"],[110100000,113100000,"q25.2","gneg"],[113100000,117300000,"q25.3","gpos75"],[117300000,119900000,"q26.11","gneg"],[119900000,121400000,"q26.12","gpos50"],[121400000,125700000,"q26.13","gneg"],[125700000,128800000,"q26.2","gpos50"],[128800000,133797422,"q26.3","gneg"]],11:[[0,2800000,"p15.5","gneg"],[2800000,11700000,"p15.4","gpos50"],[11700000,13800000,"p15.3","gneg"],[13800000,16900000,"p15.2","gpos50"],[16900000,22000000,"p15.1","gneg"],[22000000,26200000,"p14.3","gpos100"],[26200000,27200000,"p14.2","gneg"],[27200000,31000000,"p14.1","gpos75"],[31000000,36400000,"p13","gneg"],[36400000,43400000,"p12","gpos100"],[43400000,48800000,"p11.2","gneg"],[48800000,51000000,"p11.12","gpos75"],[51000000,53400000,"p11.11","acen"],[53400000,55800000,"q11","acen"],[55800000,60100000,"q12.1","gpos75"],[60100000,61900000,"q12.2","gneg"],[61900000,63600000,"q12.3","gpos25"],[63600000,66100000,"q13.1","gneg"],[66100000,68700000,"q13.2","gpos25"],[68700000,70500000,"q13.3","gneg"],[70500000,75500000,"q13.4","gpos50"],[75500000,77400000,"q13.5","gneg"],[77400000,85900000,"q14.1","gpos100"],[85900000,88600000,"q14.2","gneg"],[88600000,93000000,"q14.3","gpos100"],[93000000,97400000,"q21","gneg"],[97400000,102300000,"q22.1","gpos100"],[102300000,103000000,"q22.2","gneg"],[103000000,110600000,"q22.3","gpos100"],[110600000,112700000,"q23.1","gneg"],[112700000,114600000,"q23.2","gpos50"],[114600000,121300000,"q23.3","gneg"],[121300000,124000000,"q24.1","gpos50"],[124000000,127900000,"q24.2","gneg"],[127900000,130900000,"q24.3","gpos50"],[130900000,135086622,"q25","gneg"]],12:[[0,3200000,"p13.33","gneg"],[3200000,5300000,"p13.32","gpos25"],[5300000,10000000,"p13.31","gneg"],[10000000,12600000,"p13.2","gpos75"],[12600000,14600000,"p13.1","gneg"],[14600000,19800000,"p12.3","gpos100"],[19800000,21100000,"p12.2","gneg"],[21100000,26300000,"p12.1","gpos100"],[26300000,27600000,"p11.23","gneg"],[27600000,30500000,"p11.22","gpos50"],[30500000,33200000,"p11.21","gneg"],[33200000,35500000,"p11.1","acen"],[35500000,37800000,"q11","acen"],[37800000,46000000,"q12","gpos100"],[46000000,48700000,"q13.11","gneg"],[48700000,51100000,"q13.12","gpos25"],[51100000,54500000,"q13.13","gneg"],[54500000,56200000,"q13.2","gpos25"],[56200000,57700000,"q13.3","gneg"],[57700000,62700000,"q14.1","gpos75"],[62700000,64700000,"q14.2","gneg"],[64700000,67300000,"q14.3","gpos50"],[67300000,71100000,"q15","gneg"],[71100000,75300000,"q21.1","gpos75"],[75300000,79900000,"q21.2","gneg"],[79900000,86300000,"q21.31","gpos100"],[86300000,88600000,"q21.32","gneg"],[88600000,92200000,"q21.33","gpos100"],[92200000,95800000,"q22","gneg"],[95800000,101200000,"q23.1","gpos75"],[101200000,103500000,"q23.2","gneg"],[103500000,108600000,"q23.3","gpos50"],[108600000,111300000,"q24.11","gneg"],[111300000,111900000,"q24.12","gpos25"],[111900000,113900000,"q24.13","gneg"],[113900000,116400000,"q24.21","gpos50"],[116400000,117700000,"q24.22","gneg"],[117700000,120300000,"q24.23","gpos50"],[120300000,125400000,"q24.31","gneg"],[125400000,128700000,"q24.32","gpos50"],[128700000,133275309,"q24.33","gneg"]],13:[[0,4600000,"p13","gvar"],[4600000,10100000,"p12","stalk"],[10100000,16500000,"p11.2","gvar"],[16500000,17700000,"p11.1","acen"],[17700000,18900000,"q11","acen"],[18900000,22600000,"q12.11","gneg"],[22600000,24900000,"q12.12","gpos25"],[24900000,27200000,"q12.13","gneg"],[27200000,28300000,"q12.2","gpos25"],[28300000,31600000,"q12.3","gneg"],[31600000,33400000,"q13.1","gpos50"],[33400000,34900000,"q13.2","gneg"],[34900000,39500000,"q13.3","gpos75"],[39500000,44600000,"q14.11","gneg"],[44600000,45200000,"q14.12","gpos25"],[45200000,46700000,"q14.13","gneg"],[46700000,50300000,"q14.2","gpos50"],[50300000,54700000,"q14.3","gneg"],[54700000,59000000,"q21.1","gpos100"],[59000000,61800000,"q21.2","gneg"],[61800000,65200000,"q21.31","gpos75"],[65200000,68100000,"q21.32","gneg"],[68100000,72800000,"q21.33","gpos100"],[72800000,74900000,"q22.1","gneg"],[74900000,76700000,"q22.2","gpos50"],[76700000,78500000,"q22.3","gneg"],[78500000,87100000,"q31.1","gpos100"],[87100000,89400000,"q31.2","gneg"],[89400000,94400000,"q31.3","gpos100"],[94400000,97500000,"q32.1","gneg"],[97500000,98700000,"q32.2","gpos25"],[98700000,101100000,"q32.3","gneg"],[101100000,104200000,"q33.1","gpos100"],[104200000,106400000,"q33.2","gneg"],[106400000,109600000,"q33.3","gpos100"],[109600000,114364328,"q34","gneg"]],14:[[0,3600000,"p13","gvar"],[3600000,8000000,"p12","stalk"],[8000000,16100000,"p11.2","gvar"],[16100000,17200000,"p11.1","acen"],[17200000,18200000,"q11.1","acen"],[18200000,24100000,"q11.2","gneg"],[24100000,32900000,"q12","gpos100"],[32900000,34800000,"q13.1","gneg"],[34800000,36100000,"q13.2","gpos50"],[36100000,37400000,"q13.3","gneg"],[37400000,43000000,"q21.1","gpos100"],[43000000,46700000,"q21.2","gneg"],[46700000,50400000,"q21.3","gpos100"],[50400000,53600000,"q22.1","gneg"],[53600000,55000000,"q22.2","gpos25"],[55000000,57600000,"q22.3","gneg"],[57600000,61600000,"q23.1","gpos75"],[61600000,64300000,"q23.2","gneg"],[64300000,67400000,"q23.3","gpos50"],[67400000,69800000,"q24.1","gneg"],[69800000,73300000,"q24.2","gpos50"],[73300000,78800000,"q24.3","gneg"],[78800000,83100000,"q31.1","gpos100"],[83100000,84400000,"q31.2","gneg"],[84400000,89300000,"q31.3","gpos100"],[89300000,91400000,"q32.11","gneg"],[91400000,94200000,"q32.12","gpos25"],[94200000,95800000,"q32.13","gneg"],[95800000,100900000,"q32.2","gpos50"],[100900000,102700000,"q32.31","gneg"],[102700000,103500000,"q32.32","gpos50"],[103500000,107043718,"q32.33","gneg"]],15:[[0,4200000,"p13","gvar"],[4200000,9700000,"p12","stalk"],[9700000,17500000,"p11.2","gvar"],[17500000,19000000,"p11.1","acen"],[19000000,20500000,"q11.1","acen"],[20500000,25500000,"q11.2","gneg"],[25500000,27800000,"q12","gpos50"],[27800000,30000000,"q13.1","gneg"],[30000000,30900000,"q13.2","gpos50"],[30900000,33400000,"q13.3","gneg"],[33400000,39800000,"q14","gpos75"],[39800000,42500000,"q15.1","gneg"],[42500000,43300000,"q15.2","gpos25"],[43300000,44500000,"q15.3","gneg"],[44500000,49200000,"q21.1","gpos75"],[49200000,52600000,"q21.2","gneg"],[52600000,58800000,"q21.3","gpos75"],[58800000,59000000,"q22.1","gneg"],[59000000,63400000,"q22.2","gpos25"],[63400000,66900000,"q22.31","gneg"],[66900000,67000000,"q22.32","gpos25"],[67000000,67200000,"q22.33","gneg"],[67200000,72400000,"q23","gpos25"],[72400000,74900000,"q24.1","gneg"],[74900000,76300000,"q24.2","gpos25"],[76300000,78000000,"q24.3","gneg"],[78000000,81400000,"q25.1","gpos50"],[81400000,84700000,"q25.2","gneg"],[84700000,88500000,"q25.3","gpos50"],[88500000,93800000,"q26.1","gneg"],[93800000,98000000,"q26.2","gpos50"],[98000000,101991189,"q26.3","gneg"]],16:[[0,7800000,"p13.3","gneg"],[7800000,10400000,"p13.2","gpos50"],[10400000,12500000,"p13.13","gneg"],[12500000,14700000,"p13.12","gpos50"],[14700000,16700000,"p13.11","gneg"],[16700000,21200000,"p12.3","gpos50"],[21200000,24200000,"p12.2","gneg"],[24200000,28500000,"p12.1","gpos50"],[28500000,35300000,"p11.2","gneg"],[35300000,36800000,"p11.1","acen"],[36800000,38400000,"q11.1","acen"],[38400000,47000000,"q11.2","gvar"],[47000000,52600000,"q12.1","gneg"],[52600000,56000000,"q12.2","gpos50"],[56000000,57300000,"q13","gneg"],[57300000,66600000,"q21","gpos100"],[66600000,70800000,"q22.1","gneg"],[70800000,72800000,"q22.2","gpos50"],[72800000,74100000,"q22.3","gneg"],[74100000,79200000,"q23.1","gpos75"],[79200000,81600000,"q23.2","gneg"],[81600000,84100000,"q23.3","gpos50"],[84100000,87000000,"q24.1","gneg"],[87000000,88700000,"q24.2","gpos25"],[88700000,90338345,"q24.3","gneg"]],17:[[0,3400000,"p13.3","gneg"],[3400000,6500000,"p13.2","gpos50"],[6500000,10800000,"p13.1","gneg"],[10800000,16100000,"p12","gpos75"],[16100000,22700000,"p11.2","gneg"],[22700000,25100000,"p11.1","acen"],[25100000,27400000,"q11.1","acen"],[27400000,33500000,"q11.2","gneg"],[33500000,39800000,"q12","gpos50"],[39800000,40200000,"q21.1","gneg"],[40200000,42800000,"q21.2","gpos25"],[42800000,46800000,"q21.31","gneg"],[46800000,49300000,"q21.32","gpos25"],[49300000,52100000,"q21.33","gneg"],[52100000,59500000,"q22","gpos75"],[59500000,60200000,"q23.1","gneg"],[60200000,63100000,"q23.2","gpos75"],[63100000,64600000,"q23.3","gneg"],[64600000,66200000,"q24.1","gpos50"],[66200000,69100000,"q24.2","gneg"],[69100000,72900000,"q24.3","gpos75"],[72900000,76800000,"q25.1","gneg"],[76800000,77200000,"q25.2","gpos25"],[77200000,83257441,"q25.3","gneg"]],18:[[0,2900000,"p11.32","gneg"],[2900000,7200000,"p11.31","gpos50"],[7200000,8500000,"p11.23","gneg"],[8500000,10900000,"p11.22","gpos25"],[10900000,15400000,"p11.21","gneg"],[15400000,18500000,"p11.1","acen"],[18500000,21500000,"q11.1","acen"],[21500000,27500000,"q11.2","gneg"],[27500000,35100000,"q12.1","gpos100"],[35100000,39500000,"q12.2","gneg"],[39500000,45900000,"q12.3","gpos75"],[45900000,50700000,"q21.1","gneg"],[50700000,56200000,"q21.2","gpos75"],[56200000,58600000,"q21.31","gneg"],[58600000,61300000,"q21.32","gpos50"],[61300000,63900000,"q21.33","gneg"],[63900000,69100000,"q22.1","gpos100"],[69100000,71000000,"q22.2","gneg"],[71000000,75400000,"q22.3","gpos25"],[75400000,80373285,"q23","gneg"]],19:[[0,6900000,"p13.3","gneg"],[6900000,12600000,"p13.2","gpos25"],[12600000,13800000,"p13.13","gneg"],[13800000,16100000,"p13.12","gpos25"],[16100000,19900000,"p13.11","gneg"],[19900000,24200000,"p12","gvar"],[24200000,26200000,"p11","acen"],[26200000,28100000,"q11","acen"],[28100000,31900000,"q12","gvar"],[31900000,35100000,"q13.11","gneg"],[35100000,37800000,"q13.12","gpos25"],[37800000,38200000,"q13.13","gneg"],[38200000,42900000,"q13.2","gpos25"],[42900000,44700000,"q13.31","gneg"],[44700000,47500000,"q13.32","gpos25"],[47500000,50900000,"q13.33","gneg"],[50900000,53100000,"q13.41","gpos25"],[53100000,55800000,"q13.42","gneg"],[55800000,58617616,"q13.43","gpos25"]],20:[[0,5100000,"p13","gneg"],[5100000,9200000,"p12.3","gpos75"],[9200000,12000000,"p12.2","gneg"],[12000000,17900000,"p12.1","gpos75"],[17900000,21300000,"p11.23","gneg"],[21300000,22300000,"p11.22","gpos25"],[22300000,25700000,"p11.21","gneg"],[25700000,28100000,"p11.1","acen"],[28100000,30400000,"q11.1","acen"],[30400000,33500000,"q11.21","gneg"],[33500000,35800000,"q11.22","gpos25"],[35800000,39000000,"q11.23","gneg"],[39000000,43100000,"q12","gpos75"],[43100000,43500000,"q13.11","gneg"],[43500000,47800000,"q13.12","gpos25"],[47800000,51200000,"q13.13","gneg"],[51200000,56400000,"q13.2","gpos75"],[56400000,57800000,"q13.31","gneg"],[57800000,59700000,"q13.32","gpos50"],[59700000,64444167,"q13.33","gneg"]],21:[[0,3100000,"p13","gvar"],[3100000,7000000,"p12","stalk"],[7000000,10900000,"p11.2","gvar"],[10900000,12000000,"p11.1","acen"],[12000000,13000000,"q11.1","acen"],[13000000,15000000,"q11.2","gneg"],[15000000,22600000,"q21.1","gpos100"],[22600000,25500000,"q21.2","gneg"],[25500000,30200000,"q21.3","gpos75"],[30200000,34400000,"q22.11","gneg"],[34400000,36400000,"q22.12","gpos50"],[36400000,38300000,"q22.13","gneg"],[38300000,41200000,"q22.2","gpos50"],[41200000,46709983,"q22.3","gneg"]],22:[[0,4300000,"p13","gvar"],[4300000,9400000,"p12","stalk"],[9400000,13700000,"p11.2","gvar"],[13700000,15000000,"p11.1","acen"],[15000000,17400000,"q11.1","acen"],[17400000,21700000,"q11.21","gneg"],[21700000,23100000,"q11.22","gpos25"],[23100000,25500000,"q11.23","gneg"],[25500000,29200000,"q12.1","gpos50"],[29200000,31800000,"q12.2","gneg"],[31800000,37200000,"q12.3","gpos50"],[37200000,40600000,"q13.1","gneg"],[40600000,43800000,"q13.2","gpos50"],[43800000,48100000,"q13.31","gneg"],[48100000,49100000,"q13.32","gpos50"],[49100000,50818468,"q13.33","gneg"]],X:[[0,4400000,"p22.33","gneg"],[4400000,6100000,"p22.32","gpos50"],[6100000,9600000,"p22.31","gneg"],[9600000,17400000,"p22.2","gpos50"],[17400000,19200000,"p22.13","gneg"],[19200000,21900000,"p22.12","gpos50"],[21900000,24900000,"p22.11","gneg"],[24900000,29300000,"p21.3","gpos100"],[29300000,31500000,"p21.2","gneg"],[31500000,37800000,"p21.1","gpos100"],[37800000,42500000,"p11.4","gneg"],[42500000,47600000,"p11.3","gpos75"],[47600000,50100000,"p11.23","gneg"],[50100000,54800000,"p11.22","gpos25"],[54800000,58100000,"p11.21","gneg"],[58100000,61000000,"p11.1","acen"],[61000000,63800000,"q11.1","acen"],[63800000,65400000,"q11.2","gneg"],[65400000,68500000,"q12","gpos50"],[68500000,73000000,"q13.1","gneg"],[73000000,74700000,"q13.2","gpos50"],[74700000,76800000,"q13.3","gneg"],[76800000,85400000,"q21.1","gpos100"],[85400000,87000000,"q21.2","gneg"],[87000000,92700000,"q21.31","gpos100"],[92700000,94300000,"q21.32","gneg"],[94300000,99100000,"q21.33","gpos75"],[99100000,103300000,"q22.1","gneg"],[103300000,104500000,"q22.2","gpos50"],[104500000,109400000,"q22.3","gneg"],[109400000,117400000,"q23","gpos75"],[117400000,121800000,"q24","gneg"],[121800000,129500000,"q25","gpos100"],[129500000,131300000,"q26.1","gneg"],[131300000,134500000,"q26.2","gpos25"],[134500000,138900000,"q26.3","gneg"],[138900000,141200000,"q27.1","gpos75"],[141200000,143000000,"q27.2","gneg"],[143000000,148000000,"q27.3","gpos100"],[148000000,156040895,"q28","gneg"]],Y:[[0,300000,"p11.32","gneg"],[300000,600000,"p11.31","gpos50"],[600000,10300000,"p11.2","gneg"],[10300000,10400000,"p11.1","acen"],[10400000,10600000,"q11.1","acen"],[10600000,12400000,"q11.21","gneg"],[12400000,17100000,"q11.221","gpos50"],[17100000,19600000,"q11.222","gneg"],[19600000,23800000,"q11.223","gpos50"],[23800000,26600000,"q11.23","gneg"],[26600000,57227415,"q12","gvar"]]}}};CanvasXpress.graphTypes={Alluvial:["Alluvial"],Area:["Area"],AreaLine:["AreaLine"],Bar:["Bar"],BarLine:["BarLine"],Boxplot:["Boxplot"],Bin:["Bin","Scatter2D"],Binplot:["Binplot"],Bubble:["Bubble"],Bullet:["Bullet"],Bump:["Bump"],CDF:["CDF"],Chord:["Chord"],Circular:["Circular"],Cleveland:["Cleveland"],Contour:["Contour"],Correlation:["Correlation"],Density:["Density"],Distribution:["Distribution"],Donut:["Donut"],DotLine:["DotLine"],Dotplot:["Dotplot"],Dumbbell:["Dumbbell"],Fish:["Fish"],Gantt:["Gantt"],Genome:["Genome"],Heatmap:["Heatmap"],Hex:["Hex"],Hexplot:["Hexplot"],Histogram:["Histogram"],KaplanMeier:["KaplanMeier"],Line:["Line"],Lollipop:["Lollipop"],Map:["Map"],Meter:["Meter"],Network:["Network"],ParallelCoordinates:["ParallelCoordinates"],Pareto:["Pareto"],Pie:["Pie"],QQ:["QQ"],Quantile:["Quantile"],Radar:["Radar"],Ribbon:["Ribbon"],Ridgeline:["Ridgeline","Scatter2D"],Sankey:["Sankey"],Scatter2D:["Scatter2D"],Scatter3D:["Scatter3D"],ScatterBubble2D:["ScatterBubble2D"],Spaghetti:["Spaghetti"],SPLOM:["SPLOM"],Stacked:["Stacked"],StackedLine:["StackedLine"],StackedPercent:["StackedPercent"],StackedPercentLine:["StackedPercentLine"],Streamgraph:["Streamgraph"],Sunburst:["Sunburst"],TagCloud:["TagCloud"],TimeSeries:["TimeSeries"],Tornado:["Tornado"],Tree:["Tree"],TreeBracket:["TreeBracket"],Treemap:["Treemap"],Upset:["Upset"],Violin:["Violin"],Volcano:["Volcano"],Venn:["Venn"],Waterfall:["Waterfall"],WordCloud:["WordCloud"],AllGraphs:["Alluvial","Area","AreaLine","Bar","BarLine","Boxplot","Bin","Binplot","Bubble","Bullet","Bump","CDF","Chord","Circular","Cleveland","Contour","Correlation","Density","Distribution","Donut","DotLine","Dotplot","Dumbbell","Fish","Gantt","Genome","Heatmap","Hex","Hexplot","Histogram","KaplanMeier","Line","Lollipop","Map","Meter","Network","ParallelCoordinates","Pareto","Pie","QQ","Quantile","Radar","Ribbon","Ridgeline","Sankey","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Stacked","StackedLine","StackedPercent","StackedPercentLine","Streamgraph","Sunburst","TagCloud","TimeSeries","Tornado","Tree","TreeBracket","Treemap","Upset","Violin","Volcano","Venn","Waterfall","WordCloud"],AllGraphsCol:["Alluvial","Area","AreaLine","Bar","BarLine","Boxplot","Bullet","Bubble","Bump","CDF","Circular","Cleveland","Density","Distribution","DotLine","Dotplot","Dumbbell","Gantt","Histogram","KaplanMeier","Line","Lollipop","Map","Network","ParallelCoordinates","Pareto","QQ","Quantile","Radar","Ribbon","Ridgeline","Sankey","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Sunburst","TagCloud","TimeSeries","Tree","TreeBracket","Treemap","Violin","Volcano","Waterfall","WordCloud"],AllGraphsNH:["Area","AreaLine","Bar","BarLine","Boxplot","Bin","Binplot","Bubble","Bullet","Bump","CDF","Chord","Circular","Cleveland","Contour","Correlation","Density","Distribution","Donut","DotLine","Dotplot","Dumbbell","Fish","Gantt","Genome","Hex","Hexplot","Histogram","KaplanMeier","Line","Lollipop","Meter","Network","ParallelCoordinates","Pareto","Pie","QQ","Quantile","Radar","Ridgeline","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Stacked","StackedLine","StackedPercent","StackedPercentLine","Streamgraph","Sunburst","TagCloud","Tornado","TimeSeries","Tree","TreeBracket","Treemap","Violin","Volcano","Venn","Waterfall","WordCloud"],AllGraphsNL:["Area","AreaLine","Bar","BarLine","Boxplot","Bin","Binplot","Bubble","Bullet","Bump","CDF","Chord","Circular","Cleveland","Contour","Correlation","Density","Distribution","Donut","DotLine","Dotplot","Dumbbell","Fish","Gantt","Genome","Heatmap","Hex","Hexplot","Histogram","KaplanMeier","Line","Lollipop","Map","Meter","Network","ParallelCoordinates","Pareto","Pie","QQ","Quantile","Radar","Ridgeline","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Stacked","StackedLine","StackedPercent","StackedPercentLine","Streamgraph","Sunburst","TagCloud","Tornado","TimeSeries","Tree","TreeBracket","Treemap","Upset","Violin","Volcano","Venn","Waterfall","WordCloud"],AllGraphsShpSiz:["Boxplot","Bump","Cleveland","DotLine","Dotplot","Dumbbell","Network","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","TimeSeries","Tree","TreeBracket","Violin","Volcano"],AllGraphsLin:["Bump","Line","Scatter2D"],AreaGraphs:["Area","AreaLine"],AttGraphs:["Bar","BarLine","Boxplot","Cleveland","DotLine","Dotplot","Dumbbell","Gantt","Heatmap","Line","Lollipop","ParallelCoordinates","Pareto","Stacked","StackedLine","StackedPercent","StackedPercentLine","TagCloud","Tornado","Tree","TreeBracket","Treemap","Upset","Violin","Venn","Waterfall","WordCloud"],BarGraphs:["Bar","BarLine","Bullet","Lollipop","Pareto","Waterfall"],BinHexPlots:["Bin","Binplot","Hex","Hexplot","Scatter2D"],BoxplotViolinGraphs:["Boxplot","Violin"],ClusterGraphs:["Area","AreaLine","Bar","BarLine","Boxplot","Circular","Cleveland","Correlation","DotLine","Dotplot","Dumbbell","Heatmap","Line","Stacked","StackedLine","StackedPercent","StackedPercentLine","Tornado","Tree","TreeBracket","Treemap"],CombinationLineGraphs:["AreaLine","BarLine","DotLine","Pareto","StackedLine","StackedPercentLine"],ContourGraphs:["Pareto","Heatmap","Scatter2D"],DecorationGraphs:["Area","AreaLine","Bar","BarLine","Boxplot","Bin","Binplot","Bullet","CDF","Cleveland","Contour","Density","Distribution","DotLine","Dotplot","Dumbbell","Hex","Hexplot","Histogram","KaplanMeier","Line","Lollipop","Network","Pareto","QQ","Quantile","Ridgeline","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Stacked","StackedLine","StackedPercent","StackedPercentLine","TimeSeries","Tornado","Violin","Volcano","Waterfall"],DensityGraphs:["Density","Distribution","Histogram","Ridgeline","Violin"],DotGraphs:["Boxplot","Cleveland","DotLine","Dotplot","Dumbbell","Violin"],EllipseGraphs:["Scatter2D","Scatter3D"],HierarchicalGraphs:["Bubble","Circular","Sunburst","Tree","TreeBracket","TreeBracket"],IdeogramGraphs:["Circular","Genome"],JitterGraphs:["Boxplot","Dotplot","Violin"],LineGraphs:["Area","AreaLine","BarLine","DotLine","Line","ParallelCoordinates","Pareto","StackedLine","StackedPercentLine"],LinkGraphs:["Alluvial","Chord","Ribbon","Sankey"],NonSegregatable:["Alluvial","Bubble","Chord","Circular","Fish","Gantt","Genome","Map","Network","Radar","Ribbon","Sankey","Sunburst","TagCloud","Tree","TreeBracket","Treemap","Venn","WordCloud"],OneDGraphs:["Area","AreaLine","Bar","BarLine","Boxplot","Bullet","Cleveland","DotLine","Dotplot","Dumbbell","Gantt","Heatmap","Line","Lollipop","Meter","ParallelCoordinates","Pareto","Stacked","StackedLine","StackedPercent","StackedPercentLine","TagCloud","Tornado","Tree","TreeBracket","Treemap","Upset","Violin","Waterfall","WordCloud"],OneDGraphsGrp:["Bar","BarLine","Boxplot","Cleveland","DotLine","Dotplot","Dumbbell","Line","Pareto","Treemap","Violin","Waterfall"],OneDGraphsNR:["Area","AreaLine","Bar","BarLine","Boxplot","Bullet","Cleveland","DotLine","Dotplot","Dumbbell","Line","Lollipop","ParallelCoordinates","Pareto","Waterfall"],OneTwoThreeeDGraphs:["Alluvial","Area","AreaLine","Bar","BarLine","Boxplot","Bin","Binplot","Bubble","Bullet","CDF","Chord","Circular","Cleveland","Contour","Correlation","Density","Distribution","Donut","DotLine","Dotplot","Dumbbell","Fish","Gantt","Heatmap","Hex","Hexplot","Histogram","KaplanMeier","Line","Lollipop","Map","Meter","ParallelCoordinates","Pareto","Pie","QQ","Quantile","Radar","Ribbon","Ridgeline","Sankey","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Stacked","StackedLine","StackedPercent","StackedPercentLine","Streamgraph","Sunburst","TagCloud","Tornado","TimeSeries","Tree","TreeBracket","Treemap","Upset","Violin","Volcano","Waterfall","WordCloud"],OverlayGraphs:["Bar","BarLine","Boxplot","Bullet","Cleveland","DotLine","Dotplot","Dumbbell","Heatmap","Line","Lollipop","Pareto","Stacked","StackedLine","StackedPercent","StackedPercentLine","Tornado","Violin","Waterfall"],RangeGraphs:["Bar","Bullet","Meter"],SankeyGraphs:["Alluvial","Ribbon","Sankey"],ScatterGraphs:["Bin","Binplot","Bump","CDF","Contour","Density","Distribution","Hex","Hexplot","Histogram","KaplanMeier","QQ","Quantile","Ridgeline","Scatter2D","ScatterBubble2D","Scatter3D","Spaghetti","SPLOM","Streamgraph","TimeSeries","Volcano"],ScatterGraphsND:["Bin","Binplot","Hex","Hexplot","Scatter2D","ScatterBubble2D","Scatter3D","Spaghetti","SPLOM","TimeSeries","Volcano"],Scatter2Graphs:["Bin","Binplot","Bump","CDF","Contour","Density","Distribution","Hex","Hexplot","Histogram","KaplanMeier","QQ","Quantile","Ridgeline","Scatter2D","ScatterBubble2D","Spaghetti","SPLOM","Streamgraph","TimeSeries","Volcano"],Scatter2GraphsPlus:["Bin","Binplot","Bump","CDF","Contour","Density","Distribution","Donut","Hex","Hexplot","Histogram","KaplanMeier","QQ","Quantile","Ridgeline","Scatter2D","ScatterBubble2D","Spaghetti","SPLOM","Streamgraph","TimeSeries","Volcano"],Scatter2Bump:["Bump","Scatter2D"],Scatter3DGraphs:["Bar","Network","Scatter3D"],Scatter3DGraphsNB:["Network","Scatter3D"],Scatter3DGraphsNN:["Bar","Scatter3D"],SortGraphs:["Area","AreaLine","Bar","BarLine","Boxplot","Bullet","Cleveland","DotLine","Dotplot","Dumbbell","Line","Lollipop","Pareto","Stacked","StackedLine","StackedPercent","StackedPercentLine","Tornado","Violin","Waterfall"],StackedGraphs:["Stacked","StackedLine","StackedPercent","StackedPercentLine","Tornado"],SquareOneDGraphs:["Bar","BarLine","Boxplot","Bullet","Pareto","Stacked","StackedLine","StackedPercent","StackedPercentLine","Tornado","Waterfall"],ThreeDGraphs:["ScatterBubble2D","Scatter3D"],TwoThreeeDGraphs:["Bin","Binplot","CDF","Contour","Density","Distribution","Hex","Hexplot","Histogram","KaplanMeier","QQ","Quantile","Ridgeline","Scatter2D","ScatterBubble2D","Scatter3D","Spaghetti","SPLOM","Streamgraph","TimeSeries","Volcano"],VolcanoPlus:["Volcano","Scatter2D"]};CanvasXpress.Rdatasets=false;CanvasXpress.colorNames={aliceblue:"f0f8ff",antiquewhite1:"ffefdb",antiquewhite2:"eedfcc",antiquewhite3:"cdc0b0",antiquewhite4:"8b8378",antiquewhite:"faebd7",aqua:"00ffff",aquamarine1:"7fffd4",aquamarine2:"76eec6",aquamarine4:"458b74",aquamarine:"7fffd4",azure1:"f0ffff",azure2:"e0eeee",azure3:"c1cdcd",azure4:"838b8b",azure:"f0ffff",beige:"f5f5dc",bisque1:"ffe4c4",bisque2:"eed5b7",bisque3:"cdb79e",bisque4:"8b7d6b",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blue1:"0000ff",blue2:"0000ee",blue3:"1874cd",blue4:"00008b",blueviolet:"8a2be2",brown1:"ff4040",brown2:"ee3b3b",brown3:"cd3333",brown4:"8b2323",brown:"a52a2a",burlywood1:"ffd39b",burlywood2:"eec591",burlywood3:"cdaa7d",burlywood4:"8b7355",burlywood:"deb887",cadetblue1:"98f5ff",cadetblue2:"8ee5ee",cadetblue3:"7ac5cd",cadetblue4:"53868b",cadetblue:"5f9ea0",chartreuse1:"7fff00",chartreuse2:"76ee00",chartreuse3:"66cd00",chartreuse4:"458b00",chartreuse:"7fff00",chocolate1:"ff7f24",chocolate2:"ee7621",chocolate3:"cd661d",chocolate:"d2691e",coral1:"ff7256",coral2:"ee6a50",coral3:"cd5b45",coral4:"8b3e2f",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk1:"fff8dc",cornsilk2:"eee8cd",cornsilk3:"cdc8b1",cornsilk4:"8b8878",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",cyan1:"00ffff",cyan2:"00eeee",cyan3:"00cdcd",cyan4:"008b8b",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod1:"ffb90f",darkgoldenrod2:"eead0e",darkgoldenrod3:"cd950c",darkgoldenrod4:"8b6508",darkgoldenrod4:"8b6508",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen1:"caff70",darkolivegreen2:"bcee68",darkolivegreen3:"a2cd5a",darkolivegreen4:"6e8b3d",darkolivegreen:"556b2f",darkorange1:"ff7f00",darkorange2:"ee7600",darkorange3:"cd6600",darkorange4:"8b4500",darkorange:"ff8c00",darkorchid1:"bf3eff",darkorchid2:"b23aee",darkorchid3:"9a32cd",darkorchid4:"68228b",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen1:"c1ffc1",darkseagreen2:"b4eeb4",darkseagreen3:"9bcd9b",darkseagreen4:"698b69",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray1:"97ffff",darkslategray2:"8deeee",darkslategray:"2f4f4f",darkslategray3:"79cdcd",darkslategray4:"528b8b",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink1:"ff1493",deeppink2:"ee1289",deeppink3:"cd1076",deeppink4:"8b0a50",deeppink:"ff1493",deepskyblue:"00bfff",deepskyblue1:"00bfff",deepskyblue2:"00b2ee",deepskyblue3:"009acd",deepskyblue4:"00688b",dimgray:"696969",dimgrey:"696969",dodgerblue1:"1e90ff",dodgerblue:"1e90ff",dodgerblue2:"1c86ee",dodgerblue3:"1874cd",dodgerblue4:"104e8b",firebrick1:"ff3030",firebrick2:"ee2c2c",firebrick3:"cd2626",firebrick4:"8b1a1a",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold1:"ffd700",gold2:"eec900",gold3:"cdad00",gold4:"8b7500",goldenrod1:"ffc125",goldenrod2:"eeb422",goldenrod3:"cd9b1d",goldenrod4:"8b6914",goldenrod:"daa520",goldenrod:"daa520",gold:"ffd700",gray10:"1a1a1a",gray1:"030303",gray11:"1c1c1c",gray12:"1f1f1f",gray13:"212121",gray14:"242424",gray15:"262626",gray16:"292929",gray17:"2b2b2b",gray18:"2e2e2e",gray19:"303030",gray20:"333333",gray2:"050505",gray21:"363636",gray22:"383838",gray23:"3b3b3b",gray24:"3d3d3d",gray25:"404040",gray26:"424242",gray27:"454545",gray28:"474747",gray29:"4a4a4a",gray30:"4d4d4d",gray3:"080808",gray31:"4f4f4f",gray32:"525252",gray33:"545454",gray34:"575757",gray35:"595959",gray36:"5c5c5c",gray37:"5e5e5e",gray38:"616161",gray39:"636363",gray40:"666666",gray4:"0a0a0a",gray41:"696969",gray42:"6b6b6b",gray43:"6e6e6e",gray44:"707070",gray45:"737373",gray46:"757575",gray47:"787878",gray48:"7a7a7a",gray49:"7d7d7d",gray50:"7f7f7f",gray5:"0d0d0d",gray51:"828282",gray52:"858585",gray53:"878787",gray54:"8a8a8a",gray55:"8c8c8c",gray56:"8f8f8f",gray57:"919191",gray58:"949494",gray59:"969696",gray60:"999999",gray6:"0f0f0f",gray61:"9c9c9c",gray62:"9e9e9e",gray63:"a1a1a1",gray64:"a3a3a3",gray65:"a6a6a6",gray66:"a8a8a8",gray67:"ababab",gray68:"adadad",gray69:"b0b0b0",gray70:"b3b3b3",gray7:"121212",gray71:"b5b5b5",gray72:"b8b8b8",gray73:"bababa",gray74:"bdbdbd",gray75:"bfbfbf",gray76:"c2c2c2",gray77:"c4c4c4",gray78:"c7c7c7",gray79:"c9c9c9",gray:"808080",gray80:"cccccc",gray8:"141414",gray81:"cfcfcf",gray82:"d1d1d1",gray83:"d4d4d4",gray84:"d6d6d6",gray85:"d9d9d9",gray86:"dbdbdb",gray87:"dedede",gray88:"e0e0e0",gray89:"e3e3e3",gray90:"e5e5e5",gray9:"171717",gray91:"e8e8e8",gray92:"ebebeb",gray93:"ededed",gray94:"f0f0f0",gray95:"f2f2f2",gray97:"f7f7f7",gray98:"fafafa",gray99:"fcfcfc",gray:"bebebe",green:"008000",green1:"00ff00",green2:"00ee00",green3:"00cd00",green4:"008b00",greenyellow:"adff2f",grey10:"1a1a1a",grey1:"030303",grey11:"1c1c1c",grey12:"1f1f1f",grey13:"212121",grey14:"242424",grey15:"262626",grey16:"292929",grey17:"2b2b2b",grey18:"2e2e2e",grey19:"303030",grey20:"333333",grey2:"050505",grey21:"363636",grey22:"383838",grey23:"3b3b3b",grey24:"3d3d3d",grey25:"404040",grey26:"424242",grey27:"454545",grey28:"474747",grey29:"4a4a4a",grey30:"4d4d4d",grey3:"080808",grey31:"4f4f4f",grey32:"525252",grey33:"545454",grey34:"575757",grey35:"595959",grey36:"5c5c5c",grey37:"5e5e5e",grey38:"616161",grey39:"636363",grey40:"666666",grey4:"0a0a0a",grey41:"696969",grey42:"6b6b6b",grey43:"6e6e6e",grey44:"707070",grey45:"737373",grey46:"757575",grey47:"787878",grey48:"7a7a7a",grey49:"7d7d7d",grey50:"7f7f7f",grey5:"0d0d0d",grey51:"828282",grey52:"858585",grey53:"878787",grey54:"8a8a8a",grey55:"8c8c8c",grey56:"8f8f8f",grey57:"919191",grey58:"949494",grey59:"969696",grey60:"999999",grey6:"0f0f0f",grey61:"9c9c9c",grey62:"9e9e9e",grey63:"a1a1a1",grey64:"a3a3a3",grey65:"a6a6a6",grey66:"a8a8a8",grey67:"ababab",grey68:"adadad",grey69:"b0b0b0",grey70:"b3b3b3",grey7:"121212",grey71:"b5b5b5",grey72:"b8b8b8",grey73:"bababa",grey74:"bdbdbd",grey75:"bfbfbf",grey76:"c2c2c2",grey77:"c4c4c4",grey78:"c7c7c7",grey79:"c9c9c9",grey:"808080",grey80:"cccccc",grey8:"141414",grey81:"cfcfcf",grey82:"d1d1d1",grey83:"d4d4d4",grey84:"d6d6d6",grey85:"d9d9d9",grey86:"dbdbdb",grey87:"dedede",grey88:"e0e0e0",grey89:"e3e3e3",grey90:"e5e5e5",grey9:"171717",grey91:"e8e8e8",grey92:"ebebeb",grey93:"ededed",grey94:"f0f0f0",grey95:"f2f2f2",grey97:"f7f7f7",grey98:"fafafa",grey99:"fcfcfc",grey:"808080",honeydew1:"f0fff0",honeydew2:"e0eee0",honeydew3:"c1cdc1",honeydew4:"838b83",honeydew:"f0fff0",hotpink1:"ff6eb4",hotpink2:"ee6aa7",hotpink3:"cd6090",hotpink4:"8b3a62",hotpink:"ff69b4",indianred1:"ff6a6a",indianred2:"ee6363",indianred3:"cd5555",indianred4:"8b3a3a",indianred:"cd5c5c",indigo:"4b0082",ivory1:"fffff0",ivory2:"eeeee0",ivory3:"cdcdc1",ivory4:"8b8b83",ivory:"fffff0",khaki1:"fff68f",khaki2:"eee685",khaki3:"cdc673",khaki4:"8b864e",khaki:"f0e68c",lavenderblush1:"fff0f5",lavenderblush2:"eee0e5",lavenderblush3:"cdc1c5",lavenderblush4:"8b8386",lavenderblush:"fff0f5",lavender:"e6e6fa",lawngreen:"7cfc00",lemonchiffon1:"fffacd",lemonchiffon2:"eee9bf",lemonchiffon3:"cdc9a5",lemonchiffon4:"8b8970",lemonchiffon:"fffacd",lightblue1:"bfefff",lightblue2:"b2dfee",lightblue3:"9ac0cd",lightblue4:"68838b",lightblue:"add8e6",lightcoral:"f08080",lightcyan1:"e0ffff",lightcyan2:"d1eeee",lightcyan3:"b4cdcd",lightcyan4:"7a8b8b",lightcyan:"e0ffff",light:"eedd82",lightgoldenrod1:"ffec8b",lightgoldenrod2:"eedc82",lightgoldenrod3:"cdbe70",lightgoldenrod4:"8b814c",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink1:"ffaeb9",lightpink2:"eea2ad",lightpink3:"cd8c95",lightpink4:"8b5f65",lightpink:"ffb6c1",lightsalmon1:"ffa07a",lightsalmon2:"ee9572",lightsalmon3:"cd8162",lightsalmon4:"8b5742",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue1:"b0e2ff",lightskyblue2:"a4d3ee",lightskyblue3:"8db6cd",lightskyblue4:"607b8b",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightslategrey:"778899",lightsteelblue1:"cae1ff",lightsteelblue2:"bcd2ee",lightsteelblue3:"a2b5cd",lightsteelblue4:"6e7b8b",lightsteelblue:"b0c4de",lightyellow1:"ffffe0",lightyellow2:"eeeed1",lightyellow3:"cdcdb4",lightyellow4:"8b8b7a",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta2:"ee00ee",magenta3:"cd00cd",magenta4:"8b008b",magenta:"ff00ff",maroon1:"ff34b3",maroon2:"ee30a7",maroon3:"cd2990",maroon4:"8b1c62",maroon:"800000",maroon:"b03060",medium:"66cdaa",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid1:"e066ff",mediumorchid2:"d15fee",mediumorchid3:"b452cd",mediumorchid4:"7a378b",mediumorchid:"ba55d3",mediumpurple1:"ab82ff",mediumpurple2:"9f79ee",mediumpurple3:"8968cd",mediumpurple4:"5d478b",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose1:"ffe4e1",mistyrose2:"eed5d2",mistyrose3:"cdb7b5",mistyrose4:"8b7d7b",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite1:"ffdead",navajowhite2:"eecfa1",navajowhite3:"cdb38b",navajowhite4:"8b795e",navajowhite:"ffdead",navy:"000080",navyblue:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab1:"c0ff3e",olivedrab2:"b3ee3a",olivedrab4:"698b22",olivedrab:"6b8e23",orange1:"ffa500",orange2:"ee9a00",orange3:"cd8500",orange4:"8b5a00",orange:"ffa500",orangered1:"ff4500",orangered2:"ee4000",orangered3:"cd3700",orangered4:"8b2500",orangered:"ff4500",orchid1:"ff83fa",orchid2:"ee7ae9",orchid3:"cd69c9",orchid4:"8b4789",orchid:"da70d6",pale:"db7093",palegoldenrod:"eee8aa",palegreen1:"9aff9a",palegreen2:"90ee90",palegreen3:"7ccd7c",palegreen4:"548b54",palegreen:"98fb98",paleturquoise1:"bbffff",paleturquoise2:"aeeeee",paleturquoise3:"96cdcd",paleturquoise4:"668b8b",paleturquoise:"afeeee",palevioletred1:"ff82ab",palevioletred2:"ee799f",palevioletred3:"cd6889",palevioletred4:"8b475d",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff1:"ffdab9",peachpuff2:"eecbad",peachpuff3:"cdaf95",peachpuff4:"8b7765",peachpuff:"ffdab9",peru:"cd853f",pink1:"ffb5c5",pink2:"eea9b8",pink3:"cd919e",pink4:"8b636c",pink:"ffc0cb",plum1:"ffbbff",plum2:"eeaeee",plum3:"cd96cd",plum4:"8b668b",plum:"dda0dd",powderblue:"b0e0e6",purple1:"9b30ff",purple2:"912cee",purple3:"7d26cd",purple4:"551a8b",purple:"800080",purple:"a020f0",rebeccapurple:"663399",red1:"ff0000",red2:"ee0000",red3:"cd0000",red4:"8b0000",red:"ff0000",rosybrown1:"ffc1c1",rosybrown2:"eeb4b4",rosybrown3:"cd9b9b",rosybrown4:"8b6969",rosybrown:"bc8f8f",royalblue1:"4876ff",royalblue2:"436eee",royalblue3:"3a5fcd",royalblue:"4169e1",royalblue4:"27408b",saddlebrown:"8b4513",salmon1:"ff8c69",salmon2:"ee8262",salmon3:"cd7054",salmon4:"8b4c39",salmon:"fa8072",sandybrown:"f4a460",seagreen1:"54ff9f",seagreen2:"4eee94",seagreen:"2e8b57",seagreen3:"43cd80",seagreen4:"2e8b57",seashell1:"fff5ee",seashell2:"eee5de",seashell3:"cdc5bf",seashell4:"8b8682",seashell:"fff5ee",sienna1:"ff8247",sienna2:"ee7942",sienna3:"cd6839",sienna4:"8b4726",sienna:"a0522d",silver:"c0c0c0",skyblue1:"87ceff",skyblue2:"7ec0ee",skyblue3:"6ca6cd",skyblue4:"4a708b",skyblue:"87ceeb",slateblue1:"836fff",slateblue2:"7a67ee",slateblue3:"6959cd",slateblue4:"473c8b",slateblue:"6a5acd",slategray1:"c6e2ff",slategray2:"b9d3ee",slategray3:"9fb6cd",slategray4:"6c7b8b",slategray:"708090",slategrey:"708090",snow1:"fffafa",snow2:"eee9e9",snow3:"cdc9c9",snow4:"8b8989",snow:"fffafa",springgreen:"00ff7f",springgreen1:"00ff7f",springgreen2:"00ee76",springgreen3:"00cd66",springgreen4:"008b45",steelblue1:"63b8ff",steelblue2:"5cacee",steelblue3:"4f94cd",steelblue4:"36648b",steelblue:"4682b4",tan1:"ffa54f",tan2:"ee9a49",tan3:"cd853f",tan4:"8b5a2b",tan:"d2b48c",teal:"008080",thistle1:"ffe1ff",thistle2:"eed2ee",thistle3:"cdb5cd",thistle4:"8b7b8b",thistle:"d8bfd8",tomato1:"ff6347",tomato2:"ee5c42",tomato3:"cd4f39",tomato4:"8b3626",tomato:"ff6347",turquoise1:"00f5ff",turquoise2:"00e5ee",turquoise3:"00c5cd",turquoise4:"00868b",turquoise:"40e0d0",violet:"ee82ee",violetred1:"ff3e96",violetred2:"ee3a8c",violetred3:"cd3278",violetred4:"8b2252",violetred:"d02090",wheat1:"ffe7ba",wheat2:"eed8ae",wheat3:"cdba96",wheat4:"8b7e66",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow1:"ffff00",yellow2:"eeee00",yellow3:"cdcd00",yellow4:"8b8b00",yellow:"ffff00",yellowgreen:"9acd32"};CanvasXpress.colorWords=["4627f67737371607","465647365647f62705028607162774","475707e6944627f67737371605d28536d2","271656c636","465677f6c6c6160247f6e6022756767657265644","4627f677373716070216028647967702e4f435a402371602566716370247f6e6e61634","d65647379737","27567676572656443796","373756270785371667e61634","4707972736e656","47079727365646","374627f67527f6c6f636","5346d6","47c61637","473756769646","465686361636","4627f67737371607021602864796770274653502371602566716370247f6e6e61634","74e405d6f62764164716445637271607","56c696644616f6c6","56671637","74653556671637","47e6962707","0742","850742","8642","6742","7742","27563777f6272456a796c616964796e696","4642","472756c616","56079747f647f62707","56c6f637e6f636","76f6c6","2756767657265646","5636e616d627f666275607","37569647275607f6270556e696665646","e6f696471636f6c6","56d616e64737f686","473656a626f4","57e656d647875647e6f636","57e656d647875647e6f636e6f6","07f64737","0476e696274735f647","27f6272754","4787564577162746","27f6c6f63447e6f666","5646f6e43796","373756c6461656843796","47361656253796","46562756473796765627"];CanvasXpress.salt="7A64D88308227186991C253EA";CanvasXpress.ambiguityCodes={"-":["-"],A:["A"],C:["C"],G:["G"],T:["T"],M:["A","C"],R:["A","G"],W:["A","T"],S:["C","G"],Y:["C","T"],K:["G","T"],V:["A","C","G"],H:["A","C","T"],D:["A","G","T"],B:["C","G","T"],N:["A","C","G","T"],X:["A","C","G","T"]};CanvasXpress.codon={TTT:["F","Phe","Phenylalanine"],TCT:["S","Ser","Serine"],TAT:["Y","Tyr","Tyrosine"],TGT:["C","Cys","Cysteine"],TTC:["F","Phe","Phenylalanine"],TCC:["S","Ser","Serine"],TAC:["Y","Tyr","Tyrosine"],TGC:["C","Cys","Cysteine"],TTA:["L","Leu","Leucine"],TCA:["S","Ser","Serine"],TAA:["*","Stop","Ochre"],TGA:["*","Stop","Opal"],TTG:["L","Leu","Leucine"],TCG:["S","Ser","Serine"],TAG:["*","Stop","Amber"],TGG:["W","Trp","Tryptophan"],CTT:["L","Leu","Leucine"],CCT:["P","Pro","Proline"],CAT:["H","His","Histidine"],CGT:["R","Arg","Arginine"],CTC:["L","Leu","Leucine"],CCC:["P","Pro","Proline"],CAC:["H","His","Histidine"],CGC:["R","Arg","Arginine"],CTA:["L","Leu","Leucine"],CCA:["P","Pro","Proline"],CAA:["Q","Gln","Glutamine"],CGA:["R","Arg","Arginine"],CTG:["L","Leu","Leucine"],CCG:["P","Pro","Proline"],CAG:["Q","Gln","Glutamine"],CGG:["R","Arg","Arginine"],ATT:["I","Ile","Isoleucine"],ACT:["T","Thr","Threonine"],AAT:["N","Asn","Asparagine"],AGT:["S","Ser","Serine"],ATC:["I","Ile","Isoleucine"],ACC:["T","Thr","Threonine"],AAC:["N","Asn","Asparagine"],AGC:["S","Ser","Serine"],ATA:["I","Ile","Isoleucine"],ACA:["T","Thr","Threonine"],AAA:["K","Lys","Lysine"],AGA:["R","Arg","Arginine"],ATG:["M","Met","Methionine"],ACG:["T","Thr","Threonine"],AAG:["K","Lys","Lysine"],AGG:["R","Arg","Arginine"],GTT:["V","Val","Valine"],GCT:["A","Ala","Alanine"],GAT:["D","Asp","Aspartic acid"],GGT:["G","Gly","Glycine"],GTC:["V","Val","Valine"],GCC:["A","Ala","Alanine"],GAC:["D","Asp","Aspartic acid"],GGC:["G","Gly","Glycine"],GTA:["V","Val","Valine"],GCA:["A","Ala","Alanine"],GAA:["E","Glu","Glutamic acid"],GGA:["G","Gly","Glycine"],GTG:["V","Val","Valine"],GCG:["A","Ala","Alanine"],GAG:["E","Glu","Glutamic acid"],GGG:["G","Gly","Glycine"]};CanvasXpress.reverseComplement={A:"T",C:"G",G:"C",T:"A",U:"A",Y:"R",R:"Y",W:"W",S:"S",K:"M",M:"K",B:"V",V:"B",D:"H",H:"D",X:"X",N:"N",a:"t",c:"g",g:"c",t:"a",u:"a",y:"r",r:"y",w:"w",s:"s",k:"m",m:"k",b:"v",v:"b",d:"h",h:"d",x:"x",n:"n"," ":" ","-":"-","/":"/","[":"[","]":"]"};CanvasXpress.themeParams=["backgroundType","citationAlign","citationColor","citationFontStyle","citationScaleFontFactor","colorScheme","fitLineColor","guidesShow","guidesColor","layoutSpacing","legendBackgroundBorderColor","legendBackgroundColor","legendColumns","legendHorizontalJustification","legendInside","legendKeyBackgroundBorderColor","legendKeyBackgroundColor","legendPosition","legendTextColor","legendTextFontStyle","legendTextScaleFontFactor","legendTitleColor","legendTitleFontStyle","legendTitleScaleFontFactor","lineDecoration","mapOutlineColor","objectBorderColor","panelBackgroundBorderColor","panelBackgroundColor","plotBackgroundBorderColor","plotBackgroundColor","showLegend","showLegendTitle","smpTextRotate","stripBackgroundBorderColor","stripBackgroundColor","stripTextColor","stripTextFontStyle","stripTextScaleFontFactor","subtitleAlign","subtitleColor","subtitleFontStyle","subtitleScaleFontFactor","titleAlign","titleColor","titleFontStyle","titleScaleFontFactor","varTextRotate","rAxisGridMajorColor","rAxisGridMajorLineType","rAxisGridMajorShow","rAxisGridMajorWidth","rAxisGridMinorColor","rAxisGridMinorLineType","rAxisGridMinorShow","rAxisGridMinorWidth","rAxisLineBottomColor","rAxisLineBottomLineType","rAxisLineBottomShow","rAxisLineBottomWidth","rAxisLineTopColor","rAxisLineTopLineType","rAxisLineTopShow","rAxisLineTopWidth","rAxisTextColor","rAxisTextFontStyle","rAxisTextScaleFontFactor","rAxisTicksColor","rAxisTicksLength","rAxisTicksShow","rAxisTitleColor","rAxisTitleFontStyle","rAxisTitleScaleFontFactor","xAxisGridMajorColor","xAxisGridMajorLineType","xAxisGridMajorShow","xAxisGridMajorWidth","xAxisGridMinorColor","xAxisGridMinorLineType","xAxisGridMinorShow","xAxisGridMinorWidth","xAxisLineBottomColor","xAxisLineBottomLineType","xAxisLineBottomShow","xAxisLineBottomWidth","xAxisLineTopColor","xAxisLineTopLineType","xAxisLineTopShow","xAxisLineTopWidth","xAxisTextColor","xAxisTextFontStyle","xAxisTextScaleFontFactor","xAxisTicksColor","xAxisTicksLength","xAxisTicksShow","xAxisTitleColor","xAxisTitleFontStyle","xAxisTitleScaleFontFactor","widthFactor","yAxisGridMajorColor","yAxisGridMajorLineType","yAxisGridMajorShow","yAxisGridMajorWidth","yAxisGridMinorColor","yAxisGridMinorLineType","yAxisGridMinorShow","yAxisGridMinorWidth","yAxisLineLeftColor","yAxisLineLeftLineType","yAxisLineLeftShow","yAxisLineLeftWidth","yAxisLineRightColor","yAxisLineRightLineType","yAxisLineRightShow","yAxisLineRightWidth","yAxisTextColor","yAxisTextFontStyle","yAxisTextScaleFontFactor","yAxisTicksColor","yAxisTicksLength","yAxisTicksShow","yAxisTitleColor","yAxisTitleFontStyle","yAxisTitleScaleFontFactor","zAxisGridMajorColor","zAxisGridMajorLineType","zAxisGridMajorShow","zAxisGridMajorWidth","zAxisGridMinorColor","zAxisGridMinorLineType","zAxisGridMinorShow","zAxisGridMinorWidth","zAxisLineBottomColor","zAxisLineBottomLineType","zAxisLineBottomShow","zAxisLineBottomWidth","zAxisLineTopColor","zAxisLineTopLineType","zAxisLineTopShow","zAxisLineTopWidth","zAxisTextColor","zAxisTextFontStyle","zAxisTextScaleFontFactor","zAxisTicksColor","zAxisTicksLength","zAxisTicksShow","zAxisTitleColor","zAxisTitleFontStyle","zAxisTitleScaleFontFactor"].reduce(function(a,b){a[b]=true;return a},{});CanvasXpress.setThemeDefinitions=function(){var b=[["bw","classic","cx","cxdark","dark","economist","excel","ggblanket","grey","highcharts","light","linedraw","minimal","ptol","solarized","stata","tableau","void0","wsj"],["axis.line","element_blank",,,,"element_blank",,"element_blank",,"element_blank",,"element_blank","element_blank","element_blank","element_blank",,,"element_blank",],["axis.line.arrow",,false,,,,false,,,,,,,,,false,false,,,false],["axis.line.colour",,"#000000",,,,,,,,"#999999",,,,,"#93a1a1",,,],["axis.line.linetype",,,,,,,,,,,,,,,1,,,],["axis.line.linewidth",,1,,,,0.8,,,,1,,,,,,,,],["axis.line.y",,,,,,"element_blank",,,,,,,,,,,,,"element_blank"],["axis.line.y.left",,,"element_blank","element_blank",,,,"element_blank",,,,,,,,,,],["axis.line.y.right",,,"element_blank","element_blank",,,,"element_blank",,,,,,,,,,],["axis.minor.ticks.length",0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0,0.75],["axis.minor.ticks.y.left",,,,,,,,"element_blank",,,,,,,,,,],["axis.minor.ticks.y.right",,,,,,,,"element_blank",,,,,,,,,,],["axis.text",,,,,,,,,,,,,,,,,,"element_blank"],["axis.text.colour","#4d4d4d","#4d4d4d",,,"#4d4d4d",,"#4d4d4d",,"#4d4d4d","#4d4d4d","#4d4d4d","#000000","#4d4d4d","#4d4d4d","#4d4d4d",,"#4d4d4d",],["axis.text.face",,,,,,,,,,,,,,,,,,,"bold"],["axis.text.r.hjust",0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,,0.5],["axis.text.r.margin",2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.4,2.4,2.2,,2.4],["axis.text.size",12,12,,,12,11,12,,12,12,12,12,12,12,12,12,12,,12],["axis.text.x.colour",,,,,,,,,,,,,,,,"#000000",,],["axis.text.x.margin",2.2,2.2,11,11,2.2,10,2.2,11,2.2,2.2,2.2,2.2,2.2,2.2,2.4,2.4,2.2,,2.4],["axis.text.x.top.margin",2.2,2.2,3.3,3.3,2.2,10,2.2,3.3,2.2,2.2,2.2,2.2,2.2,2.2,2.4,2.4,2.2,,2.4],["axis.text.x.top.vjust",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,0],["axis.text.x.vjust",1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,,1],["axis.text.y.angle",,,,,,,,,,,,,,,,90,,],["axis.text.y.colour",,,,,,,,,,,,,,,,"#000000",,],["axis.text.y.hjust",1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,,1],["axis.text.y.margin",2.2,2.2,2.75,2.75,2.2,10,2.2,2.75,2.2,2.2,2.2,2.2,2.2,2.2,2.4,2.4,2.2,,2.4],["axis.text.y.right.hjust",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,0],["axis.text.y.right.margin",2.2,2.2,2.75,2.75,2.2,2.2,2.2,2.75,2.2,2.2,2.2,2.2,2.2,2.2,2.4,2.4,2.2,,2.4],["axis.text.y.vjust",,,,,,,,,,,,,,,,0.5,,],["axis.ticks",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["axis.ticks.arrow",false,false,,,false,false,false,,false,,false,false,,,false,false,false,,false],["axis.ticks.colour","#333333","#333333",,,"#333333",,"#333333",,"#333333",,"#b3b3b3","#000000",,,"#93a1a1",,"#333333",],["axis.ticks.length",2.75,2.75,2.75,2.75,2.75,-5,2.75,2.75,2.75,2.75,2.75,2.75,2.75,2.75,3,2.75,2.75,0,3],["axis.ticks.length.x",,,3.66,3.66,,,,3.66,,,,,,,,,,],["axis.ticks.length.y",,,2.75,2.75,,,,2.75,,,,,,,,,,],["axis.ticks.linewidth",,,,,0.5,,,,,,0.5,0.5,,,,,,],["axis.ticks.x.arrow",,,,,,,,,,,,,,,,false,,,false],["axis.ticks.x.colour",,,,,,,,,,,,,,,,"#000000",,],["axis.ticks.y",,,,,,"element_blank",,,,,,,,,,,,,"element_blank"],["axis.ticks.y.arrow",,,,,,,,,,,,,,,,false,,],["axis.ticks.y.colour",,,,,,,,,,,,,,,,"#000000",,],["axis.ticks.y.left",,,"element_blank","element_blank",,,,"element_blank",,,,,,,,,,],["axis.ticks.y.right",,,"element_blank","element_blank",,,,"element_blank",,,,,,,,,,],["axis.title",,,,,,,,,,,,,,,,,,"element_blank","element_blank"],["axis.title.colour",,,,,,,,,,,,,,,,"#000000",,],["axis.title.size",,,,,,12,,,,,,,,,,12,,],["axis.title.x.margin",2.75,2.75,8.25,8.25,2.75,,2.75,8.25,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,,3],["axis.title.x.top.margin",2.75,2.75,11,11,2.75,2.75,2.75,11,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,,3],["axis.title.x.top.vjust",0,0,,,0,0,0,,0,0,0,0,0,0,0,0,0,,0],["axis.title.x.vjust",1,1,,,1,,1,,1,1,1,1,1,1,1,1,1,,1],["axis.title.y.angle",90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,,90],["axis.title.y.margin",2.75,2.75,11,11,2.75,,2.75,11,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,,3],["axis.title.y.right.angle",-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,,-90],["axis.title.y.right.margin",2.75,2.75,11,11,2.75,2.75,2.75,11,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,,3],["axis.title.y.right.vjust",1,1,,,1,1,1,,1,5.5,1,1,5.5,5.5,1,1,1,,1],["axis.title.y.vjust",1,1,,,1,,1,,1,1,1,1,1,1,1,0,1,,1],["legend.background",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["legend.background.colour",null,null,null,null,null,,"#000000",null,null,,null,null,,,null,"#000000",null,,null],["legend.background.linetype",,,,,,0,1,,,,,,,,,1,,],["legend.background.linewidth",5.5,5.5,0,0,5.5,null,null,0,5.5,,5.5,5.5,,,null,null,5.5,,6],["legend.box",,,,,,,,,,,,,,,,"vertical",,,"vertical"],["legend.box.background","element_blank","element_blank",,,"element_blank","element_blank","element_blank",,"element_blank","element_blank","element_blank","element_blank","element_blank","element_blank","element_blank","element_blank","element_blank",,"element_blank"],["legend.box.margin",null,null,0,0,null,null,null,0,null,null,null,null,null,null,null,null,null,,null],["legend.box.spacing",11,11,,,11,11,11,,11,11,11,11,11,11,12,12,11,,12],["legend.byrow",,,false,false,,,,false,,,,,,,,,,],["legend.direction",,,"vertical","vertical",,,,"vertical",,,,,,,,,,,"horizontal"],["legend.justification","center","center","center","center","center","center","center",[0,1],"center","center","center","center","center","center","center","center","center",,"center"],["legend.key",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["legend.key.colour",,,"#FFFFFF","#000000",,,null,"#FFFFFF",,,,,,,,null,,],["legend.key.fill",,,"#FFFFFF","#000000",,,,"#FFFFFF",,,,,,,,"#ffffff",,],["legend.key.linetype",,,,,,0,,,,,,,,,0,0,,],["legend.key.linewidth",,,8.25,8.25,,5.5,5.5,8.25,,,,,,,6,6,,],["legend.key.size",12,12,19.25,19.25,12,12,12,19.25,12,12,12,12,12,12,12,12,12,12,12],["legend.key.spacing",5.5,5.5,,,5.5,5.5,5.5,,5.5,5.5,5.5,5.5,5.5,5.5,6,6,5.5,5.5,6],["legend.key.spacing.x",,,3.6,3.6,,,,3.6,,,,,,,,,,],["legend.key.spacing.y",,,3.6,3.6,,,,3.6,,,,,,,,,,],["legend.location",,,"panel","panel",,,,"panel",,,,,,,,,,],["legend.margin",5.5,5.5,8.25,8.25,5.5,5.5,5.5,8.25,5.5,5.5,5.5,5.5,5.5,5.5,6,6,5.5,,6],["legend.position","right","right","right","right","right","top","right","right","right","right","right","right","right","right","right","bottom","right","right","top"],["legend.spacing",11,11,11,11,11,15,11,11,11,11,11,11,11,11,12,0.25,11,,12],["legend.text.margin",,,5.5,5.5,,,,5.5,,,,,,,,,,],["legend.text.size",12,12,,,12,16,12,,12,12,12,12,12,12,12,12,12,12,12],["legend.ticks.length",0.2,0.2,3.4,3.4,0.2,0.2,0.2,3.4,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2],["legend.title.hjust",0,0,,,0,0,0,,0,0,0,0,0,0,0,0.5,0,0,0],["legend.title.margin",,,5.5,5.5,,,,5.5,,,,,,,,,,],["legend.title.position",,,"top","top",,,,"top",,,,,,,,,,],["legend.title.size",,,,,,12,,,,,,,,,,14,,],["line",,,,,,,,,,,,,,,,,,"element_blank"],["line.arrow",false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,,false],["line.colour","#000000","#000000","#121B24","#FFFFFF","#000000","#000000","#000000","#121B24","#000000","#000000","#000000","#000000","#000000","#000000","#93a1a1","#000000","#000000",,"#000000"],["line.lineend","butt","butt","square","square","butt",,"butt","square","butt","butt","butt","butt","butt","butt","butt","butt","butt",,"butt"],["line.linetype",1,1,1,1,1,,1,1,1,1,1,1,1,1,1,1,1,,1],["line.linewidth",0.5,0.5,0.33,0.33,0.5,,0.5,0.33,0.5,0.5,0.5,0.5,0.5,0.5,0.55,0.5,0.5,,0.55],["panel.background",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["panel.background.colour",null,null,"#FFFFFF","#000000",null,,null,"#FFFFFF",null,,null,null,,,"#93a1a1",null,null,],["panel.background.fill","#ffffff","#ffffff","#FFFFFF","#000000","#7f7f7f",,"#C0C0C0","#FFFFFF","#ebebeb",,"#ffffff","#ffffff",,,"#fdf6e3","#ffffff","#ebebeb",],["panel.background.linetype",,,,,,0,,,,,,,,,,1,,],["panel.border",,"element_blank","element_blank","element_blank","element_blank","element_blank",,"element_blank","element_blank","element_blank",,,"element_blank","element_blank","element_blank","element_blank","element_blank",],["panel.border.colour","#333333",,,,,,"#000000",,,,"#b3b3b3","#000000",,,,,,],["panel.border.fill",null,,,,,,null,,,,null,null,,,,,,,null],["panel.border.linetype",,,,,,,1,,,,,,,,,,,],["panel.border.linewidth",,,,,,,,,,,1,1,,,,,,],["panel.grid.arrow",false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,,false],["panel.grid.colour","#ebebeb","#ebebeb","#F6F8FA","#F6F8FA","#6b6b6b","#ffffff","#ebebeb","#F6F8FA","#ffffff","#ebebeb","#dedede","#000000","#ebebeb","#ebebeb","#eee8d5",,"#ffffff",],["panel.grid.linetype",,,,,,,,,,,,,,,,,,,3],["panel.grid.linewidth",,,1,1,,,,4,,,,,,,,,,],["panel.grid.major",,"element_blank",,,,,,,,,,,,,,,,],["panel.grid.major.arrow",,,,,false,false,false,,,,false,false,,,false,false,,,false],["panel.grid.major.colour",,,,,,"#ffffff","#000000",,,,,,,,"#eee8d5","#eaf2f3",,,"#000000"],["panel.grid.major.linewidth",,,,,0.5,1.75,,,,,0.5,0.1,,,,,,],["panel.grid.major.x",,,,,,"element_blank","element_blank","element_blank",,,,,,,,"element_blank",,,"element_blank"],["panel.grid.minor",,"element_blank","element_blank","element_blank",,"element_blank","element_blank","element_blank",,,,,,,,"element_blank",,,"element_blank"],["panel.grid.minor.arrow",false,,,,false,,,,false,false,false,false,false,false,false,,false,],["panel.grid.minor.colour",,,,,,,,,,,,,,,"#eee8d5",,,],["panel.grid.minor.linewidth",0.5,,,,0.25,,,,0.5,0.5,0.25,0.05,0.5,0.5,0.5,,0.5,],["panel.grid.minor.x",,,"element_blank","element_blank",,,,"element_blank",,,,,,,,,,],["panel.ontop",false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],["panel.spacing",5.5,5.5,22,22,5.5,5.5,5.5,22,5.5,5.5,5.5,5.5,5.5,5.5,6,5.5,5.5,5.5,6],["plot.background",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["plot.background.colour","#ffffff","#ffffff",,"#000000","#ffffff",null,"#ffffff",,"#ffffff",,"#ffffff","#ffffff",,,null,null,"#ffffff",],["plot.background.fill",,,,"#000000",,"#d5e4eb",,,,,,,,,,"#eaf2f3",,],["plot.background.linetype",,,,,,,,,,,,,,,0,0,,],["plot.caption.colour",,,"#121B24","#FFFFFF",,,,"#121B24",,,,,,,,,,],["plot.caption.hjust",1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,0,1,1,1],["plot.caption.margin",5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,6,6,5.5,5.5,6],["plot.caption.position","panel","panel","plot","plot","panel","panel","panel","plot","panel","panel","panel","panel","panel","panel","panel","panel","panel","panel","panel"],["plot.caption.size",12,12,10,10,12,12,12,10,12,12,12,12,12,12,12,10,12,12,12],["plot.caption.vjust",5.5,5.5,22,22,5.5,12,5.5,22,5.5,5.5,5.5,5.5,5.5,5.5,6,null,5.5,null,null],["plot.margin",5.5,5.5,22,22,5.5,12,5.5,22,5.5,5.5,5.5,5.5,5.5,5.5,6,null,5.5,null,null],["plot.subtitle.hjust",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.5,0,0,0],["plot.subtitle.margin",5.5,5.5,22,22,5.5,5.5,5.5,22,5.5,5.5,5.5,5.5,5.5,5.5,6,6,5.5,5.5,6],["plot.subtitle.size",,,,,,,,,,,,,,,,12,,],["plot.subtitle.vjust",1,1,,,1,1,1,,1,1,1,1,1,1,1,1,1,1,1],["plot.tag.hjust",0.5,0.5,0,0,0.5,0.5,0.5,0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5],["plot.tag.position","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft"],["plot.tag.size",14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14],["plot.tag.vjust",0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5],["plot.title.face",,,"bold","bold",,"bold",,"bold",,,,,,,,,,,"bold"],["plot.title.hjust",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.5,0,0,0],["plot.title.margin",5.5,5.5,27.5,27.5,5.5,,5.5,27.5,5.5,5.5,5.5,5.5,5.5,5.5,6,6,5.5,5.5,6],["plot.title.position","panel","panel","plot","plot","panel","panel","panel","plot","panel","panel","plot","panel","panel","panel","panel","panel","panel","panel","panel"],["plot.title.size",12,12,14,14,12,20,12,14,12,12,12,12,12,12,12,12,12,12,12],["plot.title.vjust",1,1,,,1,,1,,1,1,1,1,1,1,1,1,1,1,1],["rect",,,,,,,,,,,,,,,,,,"element_blank"],["rect.colour","#000000","#000000","#FFFFFF","#FFFFFF","#000000",null,"#000000","#FFFFFF","#000000","#000000","#000000","#000000","#000000","#000000","#93a1a1","#000000","#000000",,null],["rect.fill","#ffffff","#ffffff","#FFFFFF","#FFFFFF","#ffffff",null,"#ffffff","#FFFFFF","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#fdf6e3","#ffffff","#ffffff",,"#f8f2e4"],["rect.linetype",1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,,0],["rect.linewidth",0.5,0.5,0.33,0.33,0.5,,0.5,0.33,0.5,0.5,0.5,0.5,0.5,0.5,0.55,0.5,0.5,,0.55],["strip.background",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["strip.background.colour","#333333","#000000",null,null,null,null,null,null,null,,null,,,,"#333333",null,null,],["strip.background.fill","#d9d9d9","#ffffff",null,null,"#262626",null,"#ffffff",null,"#d9d9d9",,"#b3b3b3","#000000",,,"#d9d9d9","#d9e6eb","#d9d9d9",],["strip.background.linetype",,,,,,0,0,,,,,,,,,1,,],["strip.background.linewidth",,2,,,,,,,,,,,,,,,,],["strip.clip","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit"],["strip.placement","inside","inside","outside","outside","inside","inside","inside","outside","inside","inside","inside","inside","inside","inside","inside","inside","inside",,"inside"],["strip.switch.pad.grid",2.75,2.75,0.15,0.15,2.75,2.75,2.75,0.15,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,2.75,3],["strip.switch.pad.wrap",2.75,2.75,0.15,0.15,2.75,2.75,2.75,0.15,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,2.75,3],["strip.text.colour","#1a1a1a","#1a1a1a",,,"#e5e5e5",,"#1a1a1a",,"#1a1a1a","#1a1a1a","#ffffff","#ffffff","#1a1a1a","#1a1a1a","#1a1a1a",,"#1a1a1a",],["strip.text.margin",4.4,4.4,7.26,7.26,4.4,,4.4,7.26,4.4,4.4,4.4,4.4,4.4,4.4,4.8,4.8,4.4,,4.8],["strip.text.size",12,12,,,12,16,12,,12,12,12,12,12,12,12,12,12,12,12],["strip.text.x.bottom.margin",,,11,11,,,,11,,,,,,,,,,],["strip.text.x.vjust",,,,,,,,,,,,,,,,0.5,,],["strip.text.y.angle",-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,,-90],["strip.text.y.left.angle",90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,,90],["strip.text.y.left.margin",,,7.3333,7.3333,,,,7.3333,,,,,,,,,,],["strip.text.y.margin",,,7.3333,7.3333,,,,7.3333,,,,,,,,,,],["text.angle",0,0,0,0,0,,0,0,0,0,0,0,0,0,0,0,0,0,0],["text.colour","#000000","#000000","#121B24","#FFFFFF","#000000","#000000","#000000","#121B24","#000000","#000000","#000000","#000000","#000000","#000000","#93a1a1","#000000","#000000","#000000","#000000"],["text.debug",false,false,false,false,false,,false,false,false,false,false,false,false,false,false,false,false,false,false],["text.face","plain","plain","plain","plain","plain",,"plain","plain","plain","plain","plain","plain","plain","plain","plain","plain","plain","plain","plain"],["text.family",,,,,,,,,,,,,,,,"sans",,,"sans"],["text.hjust",0.5,0.5,0.5,0.5,0.5,,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5],["text.lineheight",0.9,0.9,0.9,0.9,0.9,,0.9,0.9,0.9,0.9,0.9,0.9,0.9,0.9,0.9,1,0.9,0.9,0.9],["text.margin",0,0,0,0,0,,0,0,0,0,0,0,0,0,0,0,0,0,0],["text.size",12,12,12,12,12,,12,12,12,12,12,12,12,12,12,12,12,12,12],["text.vjust",0.5,0.5,0.5,0.5,0.5,,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1,0.5,0.5,0.5],["title.colour",,,,,,,,,,,,,,,"#657b83","#1e2d53",,],["title.family",,,,,,,,,,,,,,,,,,,"mono"],["title.size",,,,,,,,,,,,,,,,,,,24]];CanvasXpress.themeDef={};var a=b[0];for(var e=0;e<a.length;e++){CanvasXpress.themeDef[a[e]]={}}for(var e=1;e<b.length;e++){var c=b[e];var f=c[0];for(var d=1;d<c.length;d++){if(c[d]!==undefined){CanvasXpress.themeDef[a[d-1]][f]=c[d]}}}}();CanvasXpress.styleParams=["backgroundWidgetsColor","baseWidgetsColor","hoverWidgetsColor","accentWidgetsColor","contrastWidgetsColor","widgetsStripedColor","toggleSwitchBackgroundColor","scrollbarBackgroundColor","scrollbarAltBackgroundColor","scrollbarThumbColor","scrollbarThumbHoverColor","fontWidgetsSize","fontWidgetsColor","iconClsA","iconClsB","iconClsC","iconClsX","contextMenuBackgroundColor","contextMenuBorderColor","contextMenuTextColor","contextMenuHoverColor","workflowTextColor","workflowHoverColor","workflowActiveColor","workflowSliderTrackColor","workflowSliderFillColor","workflowSliderThumbColor","workflowSliderThumbBorderColor","workflowListTextColor","workflowListTickColor","workflowButtonBackgroundColor","workflowButtonBorderColor","workflowTimelineBorderColor","dataFilterBackgroundColor","dataFilterBorderColor","dataFilterToolbarBackgroundColor","dataFilterTextColor","dataFilterHoverColor","customizerBackgroundColor","customizerBorderColor","customizerTextColor","customizerFontSize","customizerHoverColor","dataTableAccentColor","dataTableBackgroundColor","dataTableBorderColor","dataTableBannerImage","dataTableBannerBorderColor","dataTableBannerBackgroundColor","dataTableBannerTextColor","dataTableToolbarBackgroundColor","dataTableToolbarBorderColor","dataTableHeaderBackgroundColor","dataTableHeaderTextColor","dataTableCellBackgroundColor","dataTableOddCellBackgroundColor","dataTableCellBorderColor","dataTableCellTextColor","dataTableActiveCellBorderColor","dataTableStatusBackgroundColor","dataTableStatusBorderColor","dataTableStatusTextColor","dataTablePaginationBackgroundColor","dataTablePaginationBorderColor","dataTablePaginationTextColor","dataTableCellHoverBackgroundColor","dataTableRowHoverBackgroundColor","workflowBackgroundColor","workflowBorderColor"].reduce(function(a,b){a[b]=true;return a},{});CanvasXpress.setStyleDefinitions=function(){var b=[["cx","modern","stripped","old","bms","rdc","ngs360"],["toggleSwitchBackgroundColor","#999999","#536aff","#999999","#999999","#bf2bff","#999999","#7b7b7b"],["fontWidgetsSize","12px","12px","12px","12px","12px","12px","12px"],["fontWidgetsColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["backgroundWidgetsColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["baseWidgetsColor","#cccccc","#536aff","#cccccc","#cccccc","#bdb8b8","#ffffff","#f0f0f0"],["hoverWidgetsColor","rgba(204, 204, 204, 0.6)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["accentWidgetsColor","rgba(204, 204, 204, 0.4)","rgba(83, 105, 255, 0.1)","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgba(42,106,220,0.1)","#ebebeb"],["contrastWidgetsColor","#7b7b7b","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["iconClsA","#000000","#5369ff","#000000","#000000","#BE2BBB","#2A6ADC","#000000"],["iconClsB","#454545","#292929","#454545","#454545","#595454","#292929","#454545"],["iconClsC","#999999","#999999","#999999","#999999","#999999","#999999","#999999"],["iconClsX","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#2A6ADC","#ffffff"],["widgetsStripedColor","#f2f2f2","#f6f8ff","#f2f2f2","#f2f2f2","#f2f2f2","#e3f2fd","#f2f2f2"],["scrollbarBackgroundColor","rgb(255, 255, 255)","rgb(255, 255, 255)","rgb(255, 255, 255)","rgb(255, 255, 255)","rgb(255, 255, 255)","rgb(255, 255, 255)","rgb(255, 255, 255)"],["scrollbarAltBackgroundColor","rgb(245, 245, 245)","rgb(245, 245, 245)","rgb(245, 245, 245)","rgb(245, 245, 245)","rgb(245, 245, 245)","rgb(245, 245, 245)","rgb(245, 245, 245)"],["scrollbarThumbColor","#cccccc","#536aff","#cccccc","#cccccc","#bdb8b8","#ffffff","#f0f0f0"],["scrollbarThumbHoverColor","#aaaaaa","#3d58ff","#aaaaaa","#aaaaaa","#a79f9f","#e6e6e6","#d9d9d9"],["contextMenuBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["contextMenuBorderColor","#087ad1","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["contextMenuTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["contextMenuHoverColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["workflowBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["workflowBorderColor","rgb(215, 226, 230)","rgb(215, 226, 230)","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgb(42, 106, 220)","#ebebeb"],["workflowTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["workflowHoverColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["workflowActiveColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["workflowSliderTrackColor","rgb(215, 226, 230)","rgb(215, 226, 230)","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgb(42, 106, 220)","#ebebeb"],["workflowSliderFillColor","rgb(8, 122, 209)","rgb(83, 105, 255)","#7b7b7b","#7b7b7b","rgb(191, 43, 255)","rgb(42, 106, 220)","#7b7b7b"],["workflowSliderThumbColor","rgb(8, 122, 209)","rgb(83, 105, 255)","#7b7b7b","#7b7b7b","rgb(191, 43, 255)","rgb(42, 106, 220)","#7b7b7b"],["workflowSliderThumbBorderColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["workflowListTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["workflowListTickColor","rgb(215, 226, 230)","rgb(215, 226, 230)","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgb(42, 106, 220)","#ebebeb"],["workflowButtonBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["workflowButtonBorderColor","rgb(215, 226, 230)","rgb(215, 226, 230)","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgb(42, 106, 220)","#ebebeb"],["workflowTimelineBorderColor","rgb(215, 226, 230)","#536aff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgb(42, 106, 220)","#ebebeb"],["dataFilterBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataFilterBorderColor","#087ad1","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["dataFilterToolbarBackgroundColor","#cccccc","#536aff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataFilterTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["dataFilterHoverColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["customizerCloseBackgroundColor","#cccccc","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["customizerCloseTextColor","#555b62","#ffffff","#222222","#222222","#222222","#222222","#222222"],["customizerBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["customizerBorderColor","#087ad1","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["customizerTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["customizerHoverColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["dataTableBannerImage",false,false,false,false,"https://www.canvasxpress.org/assets/images/BMS.png","https://www.canvasxpress.org/assets/images/RDC.png","https://www.canvasxpress.org/assets/images/NGS360.png"],["dataTableAccentColor","#087ad1","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["dataTableBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableBorderColor","#087ad1","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["dataTableBannerBorderColor","#087ad1","#536aff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","#2a6bdc","#ebebeb"],["dataTableBannerBackgroundColor","#cccccc","#536aff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableBannerTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["dataTableToolbarBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableToolbarBorderColor","#087ad1","#536aff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","#2a6bdc","#ebebeb"],["dataTableHeaderBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableHeaderTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["dataTableCellBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableOddCellBackgroundColor","#f7f8f9","#dce2ff","#f7f8f9","#f7f8f9","#f7f8f9","#e3f2fd","#f7f8f9"],["dataTableCellBorderColor","#d7e2e6","#536aff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgba(42,106,220,0.1)","#ebebeb"],["dataTableCellTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["dataTableActiveCellBorderColor","#7cb6e2","#dce2ff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["dataTableStatusBackgroundColor","#ffffff","#536aff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableStatusBorderColor","#087ad1","#ffffff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","#2a6bdc","#ebebeb"],["dataTableStatusTextColor","#555b62","#ffffff","#222222","#222222","#222222","#222222","#222222"],["dataTablePaginationBackgroundColor","#ffffff","#536aff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTablePaginationBorderColor","#087ad1","#ffffff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","#2a6bdc","#ebebeb"],["dataTablePaginationTextColor","#555b62","#ffffff","#222222","#222222","#222222","#222222","#222222"],["dataTablePaginationSelectTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["dataTableCellHoverBackgroundColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["dataTableRowHoverBackgroundColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"]];CanvasXpress.styleDef={};var d=b[0];for(var e=0;e<d.length;e++){CanvasXpress.styleDef[d[e]]={}}for(var e=1;e<b.length;e++){var a=b[e];var f=a[0];for(var c=1;c<a.length;c++){if(a[c]!==undefined){CanvasXpress.styleDef[d[c-1]][f]=a[c]}}}}();CanvasXpress.datasets={data:[["Id","Col1","Col2","Col3","Col4","Col5","CI-Lower","CI-Higher","YearFact","NumFact","SeqD","R50","R75","R100","Neg","Diff","FC","LOD","Year","Time","Survival","Start","End","Set","Group","Type","Category","Final","8th","4th","Semifinal"],["Row00",5,80,30,2,16,4,7,2019,4,0.5,50,75,100,-10,120,1.5,1.2,1980,5,1,20140221,20140520,"Set1","GroupA","TypeX","Cat1","I","A","A","A"],["Row01",10,25,32,4,18,7,12,2020,1,1.5,50,75,100,-5,-20,0.1,0.5,1981,5,1,20140521,20140820,"Set2","GroupA","TypeX","Cat1","I","A","A","A"],["Row02",85,67,55,1,33,81,89,2021,2,2.5,50,75,100,-30,40,1,1,1982,8,1,20140821,20141120,"Set1","GroupB","TypeY","Cat1","I","C","A","A"],["Row03",22,45,65,5,35,19,24,2022,3,3.5,50,75,100,-20,60,0.6,0.8,1983,8,1,20141121,20150220,"Set1","GroupA","TypeZ","Cat1","I","C","A","A"],["Row04",45,30,38,10,24,40,47,2019,3,4.5,50,75,100,-15,-30,1.8,2.3,1984,12,1,20150221,20150520,"Set2","GroupC","TypeX","Cat2","I","E","G","A"],["Row05",60,15,12,3,8,58,63,2020,2,5.5,50,75,100,-25,-30,4.1,1.9,1985,16,0,20150521,20150820,"Set1","GroupB","TypeY","Cat2","I","E","G","A"],["Row06",75,80,90,3,46,73,77,2021,1,6.5,50,75,100,-35,20,1.6,3.1,1986,23,1,20150821,20151120,"Set1","GroupA","TypeZ","Cat2","I","G","G","A"],["Row07",33,28,15,12,14,30,36,2022,4,7.5,50,75,100,-40,15,2,1.5,1987,27,1,20151121,20160220,"Set2","GroupC","TypeY","Cat2","I","G","G","A"],["Row08",58,44,22,6,13,52,62,2019,3,8.5,50,75,100,-50,20,-2.1,2.1,1988,30,1,20160221,20160520,"Set1","GroupB","TypeX","Cat3","I","I","I","I"],["Row09",92,76,55,6,30,89,95,2020,4,9.5,50,75,100,-60,-20,-0.3,0.8,1989,33,1,20160521,20160820,"Set2","GroupA","TypeZ","Cat3","I","I","I","I"],["Row10",17,39,61,14,38,13,22,2021,1,10.5,50,75,100,-22,40,-0.1,0.2,1990,43,1,20160821,20161120,"Set2","GroupC","TypeX","Cat3","I","K","I","I"],["Row11",41,53,77,9,43,39,55,2022,2,11.5,50,75,100,-12,50,0,0,1991,45,1,20171121,20180220,"Set2","GroupB","TypeY","Cat3","I","K","I","I"],["Row12",66,79,93,5,49,61,70,2019,1,12.5,50,75,100,-8,-20,-0.2,0,1992,46,1,20180221,20180520,"Set1","GroupA","TypeX","Cat4","I","N","N","I"],["Row13",81,94,29,8,19,75,82,2020,3,13.5,50,75,100,-18,30,-3.5,2.1,1993,47,0,20180521,20180820,"Set1","GroupC","TypeZ","Cat4","I","N","N","I"],["Row14",96,81,46,11,29,91,98,2021,4,14.5,50,75,100,-28,-40,-2.1,2.5,1994,48,1,20180821,20181120,"Set2","GroupB","TypeY","Cat4","I","O","N","I"],["Row15",12,27,55,12,39,10,15,2022,2,15.5,50,75,100,-38,0,-0.6,1.1,1995,49,1,20190221,20190220,"Set2","GroupA","TypeZ","Cat4","I","O","N","I"]],chord:[["Id","A","B","C","D"],["A",11975,5871,8916,2868],["B",1951,10048,2060,6171],["C",8010,16145,8090,8045],["D",1013,990,940,6907]],venn:[["Id","Value"],["A",340],["AB",639],["ABC",552],["ABCD",148],["ABD",578],["AC",456],["ACD",298],["AD",257],["B",562],["BC",915],["BCD",613],["BD",354],["C",620],["CD",143],["D",592]],usa:[["Id","Value","Risk"],["AL",42,"Medium"],["AK",87,"High"],["AZ",15,"Low"],["AR",63,"High"],["CA",91,"Low"],["CO",28,"Medium"],["CT",55,"Low"],["DE",76,"High"],["FL",34,"Medium"],["GA",89,"Medium"],["HI",12,"High"],["ID",47,"Low"],["IL",81,"Medium"],["IN",23,"High"],["IA",68,"Low"],["KS",94,"Medium"],["KY",5,"Low"],["LA",39,"High"],["ME",72,"Medium"],["MD",58,"Low"],["MA",19,"High"],["MI",84,"Medium"],["MN",46,"Low"],["MS",31,"High"],["MO",77,"Medium"],["MT",11,"High"],["NE",65,"Low"],["NV",99,"Medium"],["NH",51,"High"],["NJ",27,"Low"],["NM",73,"Medium"],["NY",8,"High"],["NC",62,"Low"],["ND",88,"High"],["OH",17,"Medium"],["OK",43,"High"],["OR",95,"Low"],["PA",53,"Medium"],["RI",21,"Low"],["SC",79,"High"],["SD",36,"Medium"],["TN",92,"High"],["TX",48,"Low"],["UT",14,"Medium"],["VT",67,"High"],["VA",83,"Low"],["WA",29,"Medium"],["WV",54,"High"],["WI",71,"Low"],["WY",9,"Medium"]],world:[["Id","Value","Risk"],["AFG",42,"Low"],["ALB",87,"Medium"],["DZA",15,"High"],["AND",63,"Low"],["AGO",91,"Medium"],["ARG",28,"High"],["ARM",55,"Low"],["AUS",76,"Medium"],["AUT",34,"High"],["AZE",89,"Low"],["BHS",12,"Medium"],["BHR",47,"High"],["BGD",81,"Low"],["BLR",23,"Medium"],["BEL",68,"High"],["BLZ",94,"Low"],["BOL",5,"Medium"],["BIH",39,"High"],["BWA",72,"Low"],["BRA",58,"Medium"],["BGR",19,"High"],["CMR",84,"Low"],["CAN",46,"Medium"],["CHL",31,"High"],["CHN",77,"Low"],["COL",11,"Medium"],["CRI",65,"High"],["HRV",99,"Low"],["CUB",51,"Medium"],["CYP",27,"High"],["CZE",73,"Low"],["DNK",8,"Medium"],["DOM",62,"High"],["ECU",88,"Low"],["EGY",17,"Medium"],["SLV",43,"High"],["EST",95,"Low"],["ETH",53,"Medium"],["FIN",21,"High"],["FRA",79,"Low"],["GEO",36,"Medium"],["DEU",92,"High"],["GHA",48,"Low"],["GRC",14,"Medium"],["GTM",67,"High"],["HND",83,"Low"],["HUN",29,"Medium"],["ISL",54,"High"],["IND",71,"Low"],["IDN",9,"Medium"],["IRN",37,"High"],["IRQ",64,"Low"],["IRL",82,"Medium"],["ISR",16,"High"],["ITA",59,"Low"],["JAM",93,"Medium"],["JPN",25,"High"],["JOR",70,"Low"],["KAZ",41,"Medium"],["KEN",86,"High"],["KWT",13,"Low"],["LBN",57,"Medium"],["LBY",32,"High"],["LTU",90,"Low"],["LUX",20,"Medium"],["MYS",49,"High"],["MEX",75,"Low"],["MAR",38,"Medium"],["NLD",85,"High"],["NZL",18,"Low"],["NGA",74,"Medium"],["NOR",61,"High"],["PAK",26,"Low"],["PAN",96,"Medium"],["PER",44,"High"],["PHL",80,"Low"],["POL",24,"Medium"],["PRT",69,"High"],["QAT",33,"Low"],["ROU",50,"Medium"],["RUS",97,"High"],["SAU",60,"Low"],["SRB",10,"Medium"],["SGP",56,"High"],["SVK",45,"Low"],["SVN",78,"Medium"],["ZAF",22,"High"],["KOR",98,"Low"],["ESP",66,"Medium"],["LKA",30,"High"],["SWE",88,"Low"],["CHE",52,"Medium"],["SYR",7,"High"],["TWN",40,"Low"],["TZA",6,"Medium"],["THA",35,"High"],["TUN",19,"Low"],["TUR",84,"Medium"],["UGA",2,"High"],["UKR",99,"Low"],["ARE",15,"Medium"],["GBR",73,"High"],["USA",31,"Low"],["URY",46,"Medium"],["VEN",82,"High"],["VNM",27,"Low"],["ZMB",61,"Medium"],["ZWE",55,"High"]]};CanvasXpress.graphTypeDatasets=(function(){var b=[["Col1"],["Col2"],["Col3"],["Col4"],["Col5"]];var o=[["Col2"],["Col3"],["Col4"],["Col5"],["Col1"]];var m=[["Col3"],["Col4"],["Col5"],["Col1"],["Col2"]];var k=[["Col1","Col2"],["Col3","Col4"],["Col1","Col5"]];var d=[["Col3","Col4"],["Col1","Col5"],["Col2","Col3"]];var c=[["Col1","Col2","Col3"],["Col1","Col3","Col4"],["Col1","Col2","Col5"]];var g=[["Col1"],["Col1","Col3"],["Col2"]];var n=[["Col3"],["Col2","Col4"],["Col2","Col5"]];var l=[["Col1"],["Col1","Col2"],["Col1","Col2","Col3"]];var j=[["Col1"],["Col2"],["Col3"]];var h=[["Col4"],["Col5"],["Col1"]];var e=["Category","Set","Group","Type"];var a=[["Category","Set"],["Group","Type"],["Category","Group"]];var p=[["Category","Set","Group"],["Set","Group","Type"],["Category","Group","Type"]];var i=[["Category"],["Set","Group"],["Type"]];var f=[["Category","Set"],["Category","Type"],["Category","Set","Group"]];return{Alluvial:{data:"data",xAxis:b,sankeyAxes:p},Area:{data:"data",xAxis:c,areaType:[false,"overlapping",false,"stacked","percent","overlapping","stacked"],areaStyle:[false,false,"solid","translucent","outlined","translucent","translucent"]},AreaLine:{data:"data",xAxis:g,xAxis2:n},Bar:{data:"data",xAxis:l},BarLine:{data:"data",xAxis:g,xAxis2:n},Bin:{data:"data",xAxis:j,yAxis:h},Binplot:{data:"data",xAxis:j,yAxis:h},Boxplot:{data:"data",xAxis:l,groupingFactors:i},Bubble:{data:"data",xAxis:b,hierarchy:a},Bullet:{data:"data",xAxis:j,bulletTargetVarName:["Col4","Col5","Col4"],rangeStack:[false,["R50","R75","R100"],["R50","R75","R100"]]},Bump:{data:"data",xAxis:[["YearFact"]],yAxis:[["NumFact"]],lineBy:e},CDF:{data:"data",xAxis:b},Chord:{data:"chord",xAxis:[["A","B","C","D"]]},Circular:{data:"data",xAxis:[["Col1","Col2","Col3"],["Col1","Col2","Col3"],["SeqD","Col1","Col2","Col3"],["Col1","Col2","Col3"],["Col1","Col2","Col3"],["SeqD","Col1","Col2","Col3"]],circularTrackName:[false,false,["","A","B","B"],false,false,["","A","B","C"]]},Cleveland:{data:"data",xAxis:k},Contour:{data:"data",xAxis:j,yAxis:h},Correlation:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]]},Density:{data:"data",xAxis:g},Distribution:{data:"data",xAxis:g},Dumbbell:{data:"data",xAxis:k},Donut:{data:"data",xAxis:b},DotLine:{data:"data",xAxis:g,xAxis2:n},Dotplot:{data:"data",xAxis:l},Gantt:{data:"data",xAxis:[["Start","End"]]},Heatmap:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]]},Hex:{data:"data",xAxis:j,yAxis:h},Hexplot:{data:"data",xAxis:j,yAxis:h},Histogram:{data:"data",xAxis:g},KaplanMeier:{data:"data",xAxis:[["Time"]],yAxis:[["Survival"]]},Line:{data:"data",xAxis:l},Lollipop:{data:"data",xAxis:b,dataPointSizeScaleFactor:[4,6]},Map:{data:false,mapId:["World","USA","Canada","France","World","Colombia","USA","Italy","Spain","Argentina"],colorBy:["Risk","Value",false,false,"Value","variable","Risk","variable",false,"variable"]},Meter:{data:"data",xAxis:b},ParallelCoordinates:{data:"data",xAxis:c},Pareto:{data:"data",xAxis:g,xAxis2:n},Pie:{data:"data",xAxis:e},QQ:{data:"data",xAxis:b},Quantile:{data:"data",xAxis:b},Radar:{data:"data",xAxis:l},Ribbon:{data:"data",xAxis:b,sankeyAxes:p},Ridgeline:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]],ridgeBy:e},Sankey:{data:"data",xAxis:b,sankeyAxes:p},Scatter2D:{data:"data",xAxis:b,yAxis:o},Scatter3D:{data:"data",xAxis:b,yAxis:o,zAxis:m},ScatterBubble2D:{data:"data",xAxis:b,yAxis:o,zAxis:m},Spaghetti:{data:"data",xAxis:b,yAxis:o,colorBy:e},SPLOM:{data:"data",xAxis:c,yAxis:c},Stacked:{data:"data",xAxis:c},StackedLine:{data:"data",xAxis:k,xAxis2:d},StackedPercent:{data:"data",xAxis:c},StackedPercentLine:{data:"data",xAxis:k,xAxis2:d},Streamgraph:{data:"data",xAxis:[["Year"]],yAxis:c},Sunburst:{data:"data",hierarchy:f},TagCloud:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]],colorBy:e},TimeSeries:{data:"data",xAxis:[["Year"]],yAxis:b},Tornado:{data:"data",xAxis:[["Col1","Neg"]]},Tree:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]],hierarchy:f},TreeBracket:{data:"data",xAxis:b,hierarchy:[["Final","Semifinal","4th","8th"]]},Treemap:{data:"data",xAxis:b,groupingFactors:i},Upset:{},Venn:{data:"venn",xAxis:[["A","AB","ABC","ABCD","ABD","AC","ACD","AD","B","BC","BCD","BD","C","CD","D"]],vennGroups:[4,3,2]},Violin:{data:"data",xAxis:l,groupingFactors:i},Volcano:{data:"data",xAxis:[["FC"]],yAxis:[["LOD"]]},Waterfall:{data:"data",xAxis:[["Diff"]]},WordCloud:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]],colorBy:e}}})();CanvasXpress.R={lty:[[0,0],[],[8,6],[1,3],[1,3,5,3],[14,6],[4,3,8,3]],ltyNames:["blank","solid","dashed","dotted","dotdash","longdash","twodash"]};CanvasXpress.factory=CanvasXpress.factory||{version:64.1,buildDate:"07-08-2026",client:"",siteSrc:false,valid:typeof window.cX=="string"?window.cX:undefined,href:window.location.href,llmService:typeof window.cXLLMService=="string"?window.cXLLMService:undefined};CanvasXpress.factory.services="https://www.canvasxpress.org/cgi-bin/services.py";CanvasXpress.prototype.init=function(f,d,b,c,e,h,g,a){this.HwI=function(j){try{CanvasXpress}catch(i){return false}CanvasXpress.instances.push(this);this.dataVersion=0;this.specVersion=0;this.derivedCache={};this.initActionCatalog();this.initStart();this.initData();this.initAesthetics();this.initScale();this.initGeometry();this.initStatistics();this.initFacets();this.initCoordinates();this.initTheme();this.initRender();this.initUI();this.layoutValid=false;this.layoutComb=false;this.isDOE=false;this.isGroupedData=false;this.groupingFactors=[];this.grpIndices=null;this.hiddenGrps=null;this.smpIndices=null;this.varIndices=null;this.isRawData=false;this.wrangleBuildTarget=false;this.initProcess(j)};if(!f){throw new Error("No target provided")}else{if(typeof(f)=="object"&&f.isGGPlot){return new cxplot(f)}else{this.HwI(CanvasXpress.createObject(f,d,b,c,e,h,g,a))}}};CanvasXpress.prototype.initProcess=function(o){this.Ajo=function(o){this.target=o.target;this.events=o.events;this.info=o.info;this.userId=1;this.url={};this.meta={ids:{},time:{start:parseInt(performance.timeOrigin),current:0,end:null,elapsed:[]},data:false,canvas:{},config:{user:o.config,orig:{},vals:{},remote:false},ggplot:{aes:{},config:[],coords:[],data:[],facet:[],geoms:[],labels:{},layers:{},order:{},scales:[],theme:[],map:{}},cxplot:{data:function(){return false},dataPipeline:function(){return[]},mapping:function(){return{}},layers:function(){return[]},scales:function(){return false},coord:function(){return false},facet:function(){return false}},render:{objects:[],groups:{},types:{},order:[],map:{},origin:[],transition:false},console:[],events:{},stack:[],def:{},dom:{},layout:{}};this.config={};this.legend={color:{},shape:{},size:{},sample:{},variable:{},line:{},pattern:{},outline:{},connect:{},contour:{},bin2d:{},decoration:{},oncoprint:{},overlays:{},colorNode:{},shapeNode:{},sizeNode:{},patternNode:{},colorEdge:{},sizeEdge:{},colorLabel:{},sizeLabel:{}};this.scales={};this.panel={};this.plot={}};this.tI1=function(t){var c=this.meta.time.current||performance.now();if(!t){t=""}var n=performance.now();this.meta.time.elapsed.push([t,parseInt(n-c),parseInt(n)]);this.meta.time.current=n};this.sU9=function(o){this.xq5(o);this.Zm6(o);this.DI5(o);this.xcf(o);this.ykP(o)};this.xq5=function(o){if(typeof(o.data)=="function"){try{o.data=o.data.call(this)}catch(e){alert("Not a valid Data object:\n"+e)}}else{if(!o.noValidate){try{JSON.stringify(o.data)}catch(e){alert("Data object malformed:\n"+e)}if(o instanceof Object&&o.hasOwnProperty("data")&&o.data.hasOwnProperty("y")&&o.data.y.hasOwnProperty("data")&&o.data.hasOwnProperty("x")&&o.data.hasOwnProperty("z")){if(o.data.y.data instanceof Array&&o.data.y.data[0] instanceof Array&&o.data.y.hasOwnProperty("vars")&&o.data.y.hasOwnProperty("smps")&&o.data.x==null&&o.data.z==null){for(var i=0;i<o.data.y.data.length;i++){for(var j=0;j<o.data.y.data[i].length;j++){var v=o.data.y.data[i][j];var n=v===null||v===undefined?true:!isNaN(parseFloat(v))&&isFinite(v);if(!n){for(var ii=0;ii<o.data.y.data.length;ii++){o.data.y.data[ii].unshift(o.data.y.vars[ii])}o.data.y.data.unshift(o.data.y.smps);o.data.y.data[0].unshift("");o.data=o.data.y.data;if(o.hasOwnProperty("config")){o.config.isDataFrame=true}return o}}}}}}}};this.Zm6=function(o){if(o.config){if(typeof(o.config)=="function"){try{o.config=o.config.call(this)}catch(e){alert("Not a valid Data object:\n"+e)}}else{if(!o.noValidate){try{JSON.stringify(o.config)}catch(e){alert("Config object malformed:\n"+e)}}}}};this.DI5=function(o){if(o.events){for(var t in o.events){var v=o.events[t];if(typeof v==="string"&&v.startsWith&&v.startsWith("/Function(")&&v.endsWith&&v.endsWith(")/")){v=v.substring(10,v.length-2).replace(/&quot;/g,'"');v=eval("("+v+")");o.events[t]=v}}}};this.xcf=function(o){if(!o.info){o.info=""}};this.ykP=function(o){if(o.afterRender){try{JSON.stringify(o.afterRender)}catch(e){alert("AfterRender object malformed:\n"+e)}}};this.JE1=function(c){if(!c){c=this}if(c.transposeData){return true}if(c.transformData){}if(c.asSampleFactors&&c.asSampleFactors.length){return true}if(c.asVariableFactors&&c.asVariableFactors.length){return true}if(c.stringSampleFactors&&c.stringSampleFactors.length){return true}if(c.stringVariableFactors&&c.stringVariableFactors.length){return true}if(c.stringNodeAttributes&&c.stringNodeAttributes.length){return true}if(c.stringEdgeAttributes&&c.stringEdgeAttributes.length){return true}if(c.showHistogram){return true}if(c.ridgeBy){return true}if(c.sortData&&c.sortData.length){return true}if(c.filterData&&c.filterData.length){return true}if(c.asDOE){}return false};this.ZLh=function(c){var afterRender=[];if(c.showHistogram||c.ridgeBy){if(c.showHistogram===true&&c.colorBy){afterRender.unshift(["createHistogram",[false,true],{}])}else{afterRender.unshift(["createHistogram",[c.ridgeBy||c.showHistogram||c.colorBy,true],{}])}}if(c.stringVariableFactors&&c.stringVariableFactors.length){for(var i=0;i<c.stringVariableFactors.length;i++){afterRender.unshift(["switchNumericToString",[c.stringVariableFactors[i]],{}])}}if(c.stringSampleFactors&&c.stringSampleFactors.length){for(var i=0;i<c.stringSampleFactors.length;i++){afterRender.unshift(["switchNumericToString",[c.stringSampleFactors[i],true],{}])}}if(c.stringNodeAttributes&&c.stringNodeAttributes.length){for(var i=0;i<c.stringNodeAttributes.length;i++){afterRender.unshift(["switchNumericToString",[c.stringNodeAttributes[i],false],{}])}}if(c.stringEdgeAttributes&&c.stringEdgeAttributes.length){for(var i=0;i<c.stringEdgeAttributes.length;i++){afterRender.unshift(["switchNumericToString",[c.stringEdgeAttributes[i],true],{}])}}if(c.asVariableFactors&&c.asVariableFactors.length){for(var i=0;i<c.asVariableFactors.length;i++){afterRender.unshift(["switchVarToAnnotation",[c.asVariableFactors[i]],{}])}}if(c.asSampleFactors&&c.asSampleFactors.length){for(var i=0;i<c.asSampleFactors.length;i++){afterRender.unshift(["switchSmpToAnnotation",[c.asSampleFactors[i]],{}])}}if(c.transposeData){afterRender.unshift(["transpose",[false,true],{}])}if(c.transformData){afterRender.unshift(["transform",[c.transformData,c.transformAxis,false,true],{}])}if(c.sortData&&c.sortData.length){for(var i=0;i<c.sortData.length;i++){afterRender.push(["modifySort",[c.sortData[i][0],c.sortData[i][1],c.sortData[i][2],false,i==c.sortData.length-1?true:false],{}])}}if(c.filterData&&c.filterData.length){for(var i=0;i<c.filterData.length;i++){afterRender.push(["modifyFilter",[c.filterData[i][0],c.filterData[i][1],c.filterData[i][2],c.filterData[i][3],i==c.filterData.length-1?true:false],{}])}}if(c.asDOE){afterRender.push(["createDOE",[],{}])}return afterRender};this.hju=function(){if(this.isCxplot&&this.meta.config.user.aes){var aes=this.meta.config.user.aes;if(aes.stringVariableFactors){this.stringVariableFactors=this.QWl(aes.stringVariableFactors)}if(aes.stringSampleFactors){this.stringSampleFactors=this.QWl(aes.stringSampleFactors)}if(aes.asVariableFactors){this.asVariableFactors=this.QWl(this.asVariableFactors)}if(aes.asSampleFactors){this.asSampleFactors=this.QWl(aes.asSampleFactors)}}};this.alk=function(arr,t){var cx=this;if(cx.showHistogram||cx.ridgeBy){if(cx.showHistogram===true){arr.push(["createHistogram",[false],{},t,true])}else{arr.push(["createHistogram",[cx.ridgeBy||cx.showHistogram],{},t,true])}}var conversions=[{prop:"stringVariableFactors",fn:"switchNumericToString",flag:false},{prop:"stringSampleFactors",fn:"switchNumericToString",flag:true},{prop:"stringNodeAttributes",fn:"switchNumericToString",flag:false},{prop:"stringEdgeAttributes",fn:"switchNumericToString",flag:true},{prop:"asVariableFactors",fn:"switchVarToAnnotation",flag:false},{prop:"asSampleFactors",fn:"switchSmpToAnnotation",flag:false}];for(var k=0;k<conversions.length;k++){var conv=conversions[k];var list=cx[conv.prop];if(list&&list.length){for(var j=0;j<list.length;j++){arr.unshift([conv.fn,[list[j],conv.flag],{},t,true])}cx[conv.prop]=[];cx.layoutRestore=false}}if(cx.transposeData){arr.unshift(["transpose",[false,cx.sortData.length||cx.selectedDataPoints.length],{},t,true]);cx.transposeData=false;delete (CanvasXpress.stack[cx.target].config.transposeData)}if(cx.pivotBy&&!cx.isPivot){arr.push(["pivotX",[cx.pivotBy],{},t,true])}if(cx.sortData){for(var s=0;s<cx.sortData.length;s++){arr.push(["modifySort",[cx.sortData[s][0],cx.sortData[s][1],cx.sortData[s][2],false,s==cx.sortData.length-1?false:true],{},t,true])}cx.sortData=[];delete (CanvasXpress.stack[cx.target].config.sortData)}if(cx.filterData){for(var f=0;f<cx.filterData.length;f++){arr.push(["modifyFilter",[cx.filterData[f][0],cx.filterData[f][1],cx.filterData[f][2],cx.filterData[f][3],f==cx.filterData.length-1?false:true],{}])}cx.filterData=[];delete (CanvasXpress.stack[cx.target].config.filterData)}};this.tFl=function(fn,i,lastIndex,arr,hasPWC,hasDecoration,videoMode){var nextIsDrag=arr[i+1]&&arr[i+1][0]&&arr[i+1][0].match(/drag/i)?true:false;var skip;if(fn=="createDOE"||fn=="createHistogram"||fn=="modifyColorScheme"||fn.match(/segregate/)||nextIsDrag){skip=false}else{if(!this.showTransition&&i<lastIndex){skip=true}else{skip=false}}if(fn.match(/switch/)){skip=i<lastIndex?true:false}if(fn.match(/updateConfig/)){skip=false}if(hasPWC&&fn.match(/geom_boxplot|geom_bar/)){skip=false}if(this.graphType=="Sankey"&&i==0){skip=false}if(this.debug||hasDecoration){skip=false}if(videoMode){skip=false}return skip};this.XPG=function(arr){var cx=this;var reselectDataPoints=function(){if(cx.selectedDataPoints.length&&!CanvasXpress.selector.selections){var draw=false;var x=cx.xAxisIndices&&cx.xAxisIndices.length?cx.xAxisIndices[0]:0;var y=cx.yAxisIndices&&cx.yAxisIndices.length?cx.yAxisIndices[0]:1;for(var i=0;i<cx.selectedDataPoints.length;i++){var vi=cx.mlX(cx.selectedDataPoints[i]);var si=cx.OKx(cx.selectedDataPoints[i]);if(vi>=0){cx.bDR([vi,x,y]);draw=true}if(si>=0){cx.bDR([cx.varIndices[0],si]);draw=true}}if(draw){cx.Siv()}}};var hasPWCAction=function(){for(var i=0;i<arr.length;i++){if(arr[i][0]=="geom_pwc"){return true}}return false};var hasDecorationAction=function(){for(var i=0;i<arr.length;i++){if(arr[i][0].match(/marker/i)){return true}}return false};cx.afterRendering=true;if(!arr){arr=[]}var startTime=cx.meta.time.start;var isVisium=cx.graphType=="Scatter2D"&&cx.scatterType=="visium";cx.hju();cx.alk(arr,startTime);var lastIndex=arr.length-1;var visiumReload=false;var hasPWC=hasPWCAction();var hasDecoration=hasDecorationAction();var videoMode=cx.reproduceVideoMode;if(videoMode){cx.skipRender=false;cx.U4z()}for(var i=0;i<arr.length;i++){var entry=arr[i];var fn=entry.shift();if(!fn){continue}var params=entry.length>0?entry.shift():[];var configOverrides=entry.length>0?entry.shift():{};if(cx.view=="table"&&fn=="setDimensions"){continue}if(fn=="setDimensions"&&cx.width==params[0]&&cx.height==params[1]){continue}cx.skipRender=cx.tFl(fn,i,lastIndex,arr,hasPWC,hasDecoration,videoMode);for(var c in configOverrides){cx[c]=configOverrides[c]}if(fn.match(/switch/)&&isVisium&&i==lastIndex){visiumReload=true}if(cx[fn]){if(fn=="modifySort"&&cx.groupingFactors.length&&i==lastIndex){cx.U4z()}cx.F7e();cx[fn].apply(cx,params)}if(fn.match(/^switch/)&&i==lastIndex&&!visiumReload){cx.U4z()}if(visiumReload){cx.Beq()}else{if(i==lastIndex){cx.lrV(false,true)}}}if(cx.asDOE&&cx.eYT()){cx.dgC(cx.asDOE)}reselectDataPoints();cx.Ebp("afterRender");cx.afterRendering=false;cx.stackInitial=arr.length};this.xcS=function(){if(this.toDoPivot){this.c8U(this.toDoPivot);this.toDoPivot=false}else{if(this.prompt){this.hvv()}}};this.k7i=function(){if(window.location.search!=""){var p=location.search.substring(1).split("&");for(var i=0;i<p.length;i++){var v=p[i].split("=");if(!v[0]){continue}if(v[0].match(/^cX/)){this.url[v[0]]=v[1]||true}else{this.url[v[0]]=v[1]=="false"?false:v[1]=="true"?true:v[1]}}}};this.H4w=function(){if(!CanvasXpress.alias){return}var arr=CanvasXpress.alias.split("#");var t0=arr.pop().split("");var t1=arr.shift().split("");var t={};for(var i=0;i<t0.length;i++){t[t1[i]]=t0[i]}for(var i=0;i<arr.length;i++){var w=arr[i].split("");var n=w.length;var f="";for(var j=0;j<n-3;j++){f+=t[w[j]]}var g=w[n-3]+w[n-2]+w[n-1];if(this[g]){this[f]=this[g]}}};this.xcq=function(){if(this.url.hasOwnProperty("cXprint")||this.printThumbnail){this.printThumbnail=false;var f=this.url.cXprint!==true&&this.url.cXprint!=="true"?this.url.cXprint:this.saveFilename?this.saveFilename:this.target+".png";var t=this;var c=function(blb,fn){t.eMT(blb,fn);setTimeout(function(){window.close()},4000)};t.print(false,f,c)}else{if(this.url.hasOwnProperty("cXprintBase64")||this.cacheBase64){this.cacheBase64=false;var c=function(){return};if(CanvasXpress.$(this.target)){this.print(false,false,c)}}}};this.aru=function(o,e){var t=this;var w=window;var q=t.$w;if(this.verbose){w[q(8)][q(31)][q(32)](o)}};this.Ebp=function(cllr,scope){var that=this;var runCallback=function(){var t=scope||that;if(t.graphType=="Map"&&t.mapId&&!window[t.mapId]){return}if(t.fonts&&t.fonts.length>0&&!CanvasXpress.readyFonts){CanvasXpress.readyFonts=true;return}t.aru("canvasXpress data ready - "+cllr);t.xcq();CanvasXpress.ready=true};if(CanvasXpress.cacheImagesReady){if(cllr=="afterRender"){if(!this.isAnimation&&!this.isTransitionOn&&!this.isUpdateRemoteData){runCallback()}}else{if(this.graphType=="Network"){if(!this.isAnimation&&!this.isUpdateRemoteData){runCallback()}}else{if(!this.isTransitionOn){runCallback()}}}}};this.NED=function(e){if(this.view=="table"){this.viewLast="table";this.view="canvas";this.Bsn(e,"table")}else{if(this.view=="layout"){this.viewLast="layout";this.view="canvas";this.Bsn(e,"layout")}else{if(this.view=="explore"){this.viewLast="explore";this.view="canvas";this.Fjc(e)}else{if(this.view=="customize"){this.viewLast="customize";this.view="canvas";this.hN5(e)}else{if(this.view.match(/chat/i)){if(this.view==="tableChat"){this.viewLast="table";this.view="canvas";this.Bsn(e,"table")}else{this.viewLast="chat";this.view="canvas"}this.Gqi(e)}}}}}};this.lzn=function(f){var s=CanvasXpress.stack[this.target];var b=this.JE1();this.Jiz(false,false,false,false,false,false,b);this.XPG(this.QWl(s.afterRender));CanvasXpress.current=this;this.NED();this.meta.time.end=parseInt(performance.now());this.xcS();this.a74();if(f){f.call(this)}};this.SF6=function(f){if(!this.lazyLoad||(!this.loaded&&this.jpr(this.meta.canvas.ctx.canvas))){this.lzn(f)}};this.s0q=function(o){var t=this;t.Ajo(o);t.tI1("init");t.k7i();t.sU9(o);t.q5L();t.H4w();t.PmM();t.bVV();t.CTW(o.config);t.Bji();t.Nwi();t.smP();t.CzN(o.data);t.tI1("initData");if(t.meta.config.user&&t.meta.config.user.gogSpec&&typeof t.installSpec==="function"){t.meq(t.meta.config.user.gogSpec)}t.IyW();t.ExU();t.FSW();t.kI0(o.data,o.config,o.events,o.info,o.afterRender);t.BET();t.H4w();t.SF6(o.callback)};this.s0q(o)};CanvasXpress.prototype.initActionCatalog=function(){if(!CanvasXpress.ACTION_CATALOG){var a={};var c=function(f,d){for(var e=0;e<d.length;e++){a[d[e]]=f}};c("UPDATE_DATA",["updateData"]);c("UPDATE_CONFIG",["changeAttribute","changeAttributeNoDraw","toggleAttribute","setConfig","updateConfig","changeTheme","modifyColorScheme"]);c("UPDATE_FILTER",["filterUserData","filterSamples","filterVariables","modifyFilter","updateDataFilter","resetDataFilter","showHideSelectedData","filterSelected","setAllSamplesVisible","setAllVariablesVisible"]);c("UPDATE_GROUPING",["groupSamples","ungroupSamples","regroupSamples"]);c("UPDATE_SORT",["modifySort","sortSamples","sortSamplesByCategory","sortSamplesByVariable","sortVariables","sortVariablesByCategory","sortVariablesBySample","resetSorting"]);c("UPDATE_FACETS",["segregate","segregateSamples","segregateVariables","segregateSamplesVariables","desegregate","desegregateSamples","desegregateVariables"]);c("UPDATE_TRANSFORMS",["transform","transformData","transformReset","modifyTransform","modifyTransformRatio"]);c("UPDATE_PIVOT",["pivot","pivotX","removePivot","transpose","transposeDataSet"]);c("UPDATE_CLUSTERING",["clusterSamples","clusterVariables","kmeansSamples","kmeansVariables"]);c("UPDATE_SELECTION",["modifyHighlights","toggleSelectedData","addRemoveToSelected","selectVarsSmpsWithAnnotationValue"]);c("UPDATE_VIEWPORT",["zoonIn","zoonOut","handlePanning","handleWheelEvent","handleDragEventOneDimension","drawIndicesAfterWheelEvent","drawRangesAfterWheelEvent","drawIndicesAfterPannEvent"]);c("UPDATE_UI",["modifyLabelCoordinates","changeView","setDimensions"]);CanvasXpress.ACTION_CATALOG=a;CanvasXpress.TRANSIENT_ACTION_TYPES={UPDATE_SELECTION:true,UPDATE_VIEWPORT:true,UPDATE_UI:true};CanvasXpress.ACTION_LABELS={INIT_STATE:"Initial",UPDATE_DATA:"Data",UPDATE_CONFIG:"Configure",UPDATE_FILTER:"Filter",UPDATE_GROUPING:"Group",UPDATE_SORT:"Sort",UPDATE_FACETS:"Segregate",UPDATE_TRANSFORMS:"Transform",UPDATE_PIVOT:"Pivot",UPDATE_CLUSTERING:"Cluster",UPDATE_SELECTION:"Select",UPDATE_VIEWPORT:"Zoom / Pan",UPDATE_UI:"View"}}this.K25=function(d){if(!d){return"UNKNOWN"}return CanvasXpress.ACTION_CATALOG[d]||"UNKNOWN"};this.lAB=function(e){if(!e){return"Action"}var d=CanvasXpress.ACTION_LABELS[this.K25(e)];return d||e};this.P1r=function(d){return CanvasXpress.TRANSIENT_ACTION_TYPES[d]===true};this.ksk=function(){var h=[];var g=CanvasXpress.stack&&CanvasXpress.stack[this.target];var j=g&&g.afterRender?g.afterRender:[];for(var d=0;d<j.length;d++){var f=j[d];var e=f[0];h.push({type:d===0&&e==="setDimensions"?"INIT_STATE":this.K25(e),func:e,par:f[1]||[],timestamp:f[4]})}return h};var b={UPDATE_CONFIG:function(d,f){var e=f.config||f;d.v03(e);return{func:"setConfig",par:[e]}},UPDATE_DATA:function(d,e){d.updateData(e.data,false,false,e.config||null);return{func:"updateData",par:[e.data,false,false,e.config||null]}},UPDATE_GROUPING:function(d,f){var e=f.factors||f.grouping||[];d.ev3(e,false,false,false,true);return{func:"groupSamples",par:[e]}},UPDATE_FACETS:function(d,g){var e=g.annotation||g.by;var f=d.Zuk(e)?e:[e];d.yQV(f,true);return{func:"segregateSamples",par:[f]}},UPDATE_TRANSFORMS:function(d,e){d.u1u(e.type,e.axis,false,true);return{func:"transform",par:[e.type,e.axis]}},UPDATE_PIVOT:function(d,e){d.U8i(e.by,true);return{func:"pivot",par:[e.by]}}};this.TVU=function(e,f){if(!e||this.P1r(e)){return false}var d=b[e];if(typeof d!=="function"){return false}var g=d(this,f||{});this.U4z(g?{func:g.func,par:g.par}:{func:e});return true};this.iVi=function(g){if(!g||!g.length){return false}var f=false;for(var d=0;d<g.length;d++){var e=g[d]||{};if(this.TVU(e.type,e.payload)){f=true}}return f}};CanvasXpress.prototype.initStart=function(){this.initIO();this.initCrypt();this.initDOM();this.initViewport();this.initConfig()};CanvasXpress.prototype.initDataset=function(){this.Bf0=function(){var d=this.meta.data?this.otE():undefined;var c=this.meta.data?this.Skj():undefined;var e=this.meta.data?this.MQp():undefined;var b=this.meta.data?this.ARK():undefined;var f=this.meta.data?this.uHa():undefined;var a=this.meta.data?this.meta.data.derived:undefined;delete (this.meta.data);this.UiE(false,false,false,true);if(d!==undefined&&this.meta.data){this.meta.data.wrangled=d}if(c!==undefined&&this.meta.data){this.meta.data.gantt=c}if(e!==undefined&&this.meta.data){this.meta.data.sankey=e}if(b!==undefined&&this.meta.data){this.meta.data.tree=b}if(f!==undefined&&this.meta.data){this.meta.data.bubble=f}if(a!==undefined&&this.meta.data){this.meta.data.derived=a;if(this.graphType=="Network"&&this.nodes){this.Mdc()}}};this.otE=function(a){if(a&&a.wrangled){return a.wrangled}if(this.wrangleBuildTarget){return this.wrangleBuildTarget}if(this.cellWrangled){return this.cellWrangled}return this.meta.data?this.meta.data.wrangled:undefined};this.Dug=function(a){return this.isGroupedData?this.otE(a):this.data.y};this.Rpc=function(){return this.isGroupedData?this.grpIndices:this.smpIndices};this.j45=function(){return this.isGroupedData?this.hiddenGrps:this.hiddenSmps};this.LY3=function(){return this.isGroupedData&&this.otE()?this.otE().factors:this.data.x};this.WtS=function(a){if(!a||!this.layoutValid||!this.layoutGlobalGroups){return undefined}return this.meta.data?this.meta.data.wrangled:undefined};this.feu=function(b){var a=b||this.Dug();return this.isTransformedData&&a.trans&&a.trans.length?a.trans:a.data};this.khQ=function(b){if(!b||!this.isRawData||this.isGroupedData){return null}var a=this.wTq();return a?a:this.feu()};this.wTq=function(){if(this.tidyRenderSource===false||this.isGroupedData||this.isTransformedData||!this.isRawData){return null}var c=this.wni();var b=this.dataVersion+"|"+(c.length?JSON.stringify(c):"");if(this.simpleRenderMatrixKey===b&&this.simpleRenderMatrix!==undefined){return this.simpleRenderMatrix}if(c.length){this.simpleRenderMatrix=this.YdP()}else{var a=this.Fp6();this.simpleRenderMatrix=a.skipped?null:a.data}this.simpleRenderMatrixKey=b;return this.simpleRenderMatrix};this.Skj=function(){return this.meta.data?this.meta.data.gantt:undefined};this.MQp=function(){return this.meta.data?this.meta.data.sankey:undefined};this.ARK=function(){return this.meta.data?this.meta.data.tree:undefined};this.uHa=function(){return this.meta.data?this.meta.data.bubble:undefined};this.Rl9=function(w,s,f,u,c,r){var q={};var p,m,d;var l=this.meta.config.user;if(this.legendOrder&&this.legendOrder[w]){for(p=0;p<this.legendOrder[w].length;p++){q[this.legendOrder[w][p]]=p}m=this.legendOrder[w].length;var v=s?this.elc(s):f;for(p=0;p<v.length;p++){if(!q.hasOwnProperty(v[p])){q[v[p]]=m++}}return q}if(this.isCxplot&&l.aes&&l.aes.meta&&l.aes.meta[w]){var a={};m=0;for(p=0;p<l.aes.meta[w].length;p++){var k=l.aes.meta[w][p];if(s.hasOwnProperty(k)||s.hasOwnProperty(k+"\x00")){a[k]=m++}}return a}if(u){var t={};var g=this;d=this.elc(s).sort(function(n,i){return new Date(g.dateFormat(n)).getTime()-new Date(g.dateFormat(i)).getTime()});for(p=0;p<d.length;p++){if(!t.hasOwnProperty(d[p])){t[d[p]]=p}}return t}if(c){d=this.elc(s).sort(function(n,i){return parseInt(CanvasXpress.dates[n])-parseInt(CanvasXpress.dates[i])});var j={};for(p=0;p<d.length;p++){j[d[p]]=p}return j}if(r){var o={};m=0;for(p=0;p<r.length;p++){if(!o.hasOwnProperty(r[p])){o[r[p]]=m++}}return o}var h=this.elc(s);var b=true;for(p=0;p<h.length;p++){if(!h[p].match("\x00")){b=false;break}}if(b){d=h.sort(function(n,i){return Number(n.replace("\x00",""))-Number(i.replace("\x00",""))});var e={};for(p=0;p<d.length;p++){e[d[p]]=p}return e}return false};this.UCy=function(d,e,r,u,g){var f=this[d+"Key"];var a=f?f[u]:null;var l=CanvasXpress.colorSchemes;if(a){if(this.kgc(a)){r[d+"By"]=a;r[d+"s"]=[];for(var q=0;q<g.length;q++){var b=g[q];if(!r[d+"By"].hasOwnProperty(b)){var v=Number(b.replace("\x00",""));if(r[d+"By"].hasOwnProperty(v)){r[d+"By"][b]=r[d+"By"][v]}else{r[d+"By"][b]=e[q%e.length]}}else{if(d==="color"){r[d+"By"][b]=this.RwK(r[d+"By"][b])}}r[d+"s"][q]=r[d+"By"][b]}}else{if(this.Zuk(a)){r[d+"s"]=a}else{if(d==="color"){var p=g.length;var m=l[a];if(!m[p]){var c=this.elc(m).sort(function(n,j){return n-j});if(p>c[c.length-1]){p=c[c.length-1]}else{if(p<c[0]){p=c[0]}else{var i=p;while(!m[i]&&i<c[c.length-1]){i++}if(!m[i]){i=p;while(!m[i]&&i>c[0]){i--}}p=i}}}r[d+"s"]=[];for(var q=0;q<m[p].length;q++){r[d+"s"][q]=this.RwK(m[p][q])}}}}}else{r[d+"s"]=[];if(d==="color"&&g.length>e.length&&e.length===1&&this.graphType==="Map"){var o=l[this.colorScheme];var h=g.length;var t=this.elc(o).sort(function(n,j){return n-j});if(h>t[t.length-1]){h=t[t.length-1]}else{if(h<t[0]){h=t[0]}}var k=o[h]||o[t[t.length-1]];for(var q=0;q<k.length;q++){r[d+"s"][q]=this.RwK(k[q])}}else{for(var q=0;q<g.length;q++){var s=e[q%e.length];r[d+"s"].push(d==="color"?this.RwK(s):s)}}}};this.SYn=function(c,i,k,q){var m=this.colorSpectrum;var l=this[c+"Key"];var o=l?l[q]:null;var r=CanvasXpress.colorSchemes;if(o){if(this.kgc(o)){i[c+"By"]=o;for(var f=0;f<k.length;f++){var e=k[f].toString();if(!i[c+"By"].hasOwnProperty(e)){i[c+"By"][e]=this[c+"s"][f%this[c+"s"].length]}}i.orderS=this.Rl9(q,false,k)}else{if(c==="color"){if(this.Zuk(o)){m=o}else{var d=r[o];var b=this.elc(d).sort(function(s,j){return s-j});m=d.hasOwnProperty(8)?d[8]:d[b[0]]}}}}if(c==="color"){i.colorBrew=this.qJM(m,i.rmin,i.rmax,this.colorSpectrumZeroValue,this.colorSpectrumBreaks,true);var p=["min","max","zero","vals","incr","decs"];var n=this.Jhz(k).sort(function(s,j){return s-j});for(var f=0;f<p.length;f++){i[p[f]]=i.colorBrew[p[f]]}i.levels=n.length<i.colorBrew.vals.length?i.colorBrew.vals:(n.length>10?i.colorBrew.vals:n);i.order={};i.maxLevLen=0;i.maxLevChr=0;i.maxLevStr="";for(var f=0;f<i.levels.length;f++){var a=i.levels[f];i.order[a]=f;var g=a.toString();var h=this.eUk(g,this.font);if(h>i.maxLevLen){i.maxLevLen=h;i.maxLevChr=g.length;i.maxLevStr=g}}}else{i[c+"s"]=c==="connect"?this.colors:this[c+"s"]}};this.n9f=function(ac,o,f,N,E){var U=this.meta.data;var C=this.data;var H=["x","z","w"];var V=this.font;if(!ac||H.indexOf(ac)!==-1){if(ac&&f){if(!o){delete U[ac]}else{if(U[ac]&&U[ac][o]){delete U[ac][o]}}}for(var T=0;T<H.length;T++){var aa=H[T];if(ac&&ac!==aa){continue}V=aa==="z"?this.varTextFont:this.smpTextFont;var w=aa==="w"?this.otE():C[aa];if(!w){continue}for(var t in w){if(o&&o!==t){continue}if(aa==="w"&&t!=="smps"&&t!=="grps"){continue}if(aa==="w"&&t==="grps"){U[aa].smps={};for(var R=0;R<w.smps.length;R++){U[aa].smps[w.smps[R]]=R}continue}var G={origin:aa,len:this.eUk(t,V)};var W=w[t];var y=this.XmW(W)&&!this.b3e(W)&&!this.AkC(W);G.type=y?"Numeric":"String";if(G.type==="String"&&this.ZP1(W)){var Q=[];for(var R=0;R<W.length;R++){var d=new Date(this.dateFormat(W[R])).getTime();Q.push(isNaN(d)?null:d)}if(this.XmW(Q)){G.type="Numeric";W=Q}}if(G.type==="String"){this.t18(aa,t);G.unique=this.HJq(W);G["boolean"]=this.Vmy(W);G.date=this.ZP1(W);G.monthDay=this.eLp(W);G.geo=this.QP2(W)||this.u86(W);G.priority=this.Ms4(W);G.image=this.XJ7(W);if(G["boolean"]&&this.isR){for(var R=0;R<W.length;R++){if(W[R]!=null&&typeof W[R]==="string"){if(W[R].toLowerCase()==="true"){W[R]=true}else{if(W[R].toLowerCase()==="false"){W[R]=false}else{W[R]=null}}}}}if(G.image){for(var R=0;R<W.length;R++){if(this.images.indexOf(W[R])===-1){this.images.push(W[R]);W[R]=this.AmM(W[R])}}}var Y=this.m0E(W);var I=this.Jr3(W);var ab=this.Rl9(t,Y,false,G.date,G.monthDay,G.priority);var B=this.Djc(this.elc(Y));G.levels=ab?B.sort(function(k,i){var r=ab[k]!==undefined?ab[k]:(ab[k.replace("\x00","")]!==undefined?ab[k.replace("\x00","")]:Infinity);var j=ab[i]!==undefined?ab[i]:(ab[i.replace("\x00","")]!==undefined?ab[i.replace("\x00","")]:Infinity);return r-j}):B;G.clicked={};for(var R=0;R<G.levels.length;R++){G.clicked[G.levels[R]]=true}G.n=[];for(var R=0;R<G.levels.length;R++){G.n.push(Y[G.levels[R]])}G.unordered=I;G.order={};G.maxLevLen=0;G.maxLevChr=0;G.maxLevStr="";for(var R=0;R<B.length;R++){var e=B[R];G.order[e]=ab&&ab.hasOwnProperty(e)?ab[e]:R;var u=this.eUk(e,V);if(u>G.maxLevLen){G.maxLevLen=u;G.maxLevChr=e.length;G.maxLevStr=e}}this.UCy("color",this.colors,G,t,G.levels);this.UCy("shape",this.shapes,G,t,G.levels);this.UCy("size",this.ni5(G.levels.length),G,t,G.levels);this.UCy("pattern",this.patterns,G,t,G.levels);this.UCy("linePattern",this.linePatterns,G,t,G.levels);this.UCy("connect",this.colors,G,t,G.levels)}else{G.unique=false;G.date=this.ctw(W);G["boolean"]=false;var h=[];for(var R=0;R<W.length;R++){h.push(W[R]==null||W[R]===this.missingDataValue?Number.NaN:Number(W[R]))}var l=this.Npb(h);G.rmin=l[0]+(G.date?86400000:0);G.rmax=l[1]+(G.date?86400000:0);G.n=h.length;this.SYn("color",G,h,t);this.SYn("shape",G,h,t);this.SYn("size",G,h,t);this.SYn("pattern",G,h,t);this.SYn("linePattern",G,h,t);this.SYn("connect",G,h,t)}U[aa][t]=G;if(!U.m[aa]){U.m[aa]={}}if(!U.m[aa].maxFacLen||G.len>U.m[aa].maxFacLen){U.m[aa].maxFacLen=G.len;U.m[aa].maxFacChr=t.length;U.m[aa].maxFacStr=t}}}if(N){return}for(var T=0;T<H.length;T++){var aa=H[T];if(ac&&ac!==aa){continue}V=aa==="z"?this.varTextFont:this.smpTextFont;var A;if(aa==="z"){A={lev:"y",prp:"vars",lab:"Var"}}if(aa==="x"||aa==="q"){A={lev:"y",prp:"smps",lab:"Smp"}}if(aa==="w"){A={lev:"w",prp:"smps",lab:"Smp"}}var S=A?(A.lev==="w"?this.otE():C[A.lev]):false;if(A&&S){var a=0,b=0,p="";var n=S[A.prp];if(n.length<=2000){for(var R=0;R<n.length;R++){if(n[R]!=null){var s=n[R].toString();var u=this.eUk(s,V);if(u>a){a=u;b=s.length;p=s}}}}else{var X=0;for(var R=0;R<n.length;R++){if(n[R]!=null){var v=n[R].toString().length;if(v>X){X=v}}}var g=0;for(var R=0;R<n.length&&g<256;R++){if(n[R]!=null){var s=n[R].toString();if(s.length>=X){var u=this.eUk(s,V);g++;if(u>a){a=u;b=s.length;p=s}}}}}U[A.lev]["max"+A.lab+"Len"]=a;U[A.lev]["max"+A.lab+"Chr"]=b;U[A.lev]["max"+A.lab+"Str"]=p;U[A.lev].vars=this.QP2(C.y.vars)?"World":this.u86(C.y.vars)?"USA":this.ZP1(C.y.vars)?"Date":"String";U[A.lev].smps=this.QP2(C.y.smps)?"World":this.u86(C.y.smps)?"USA":this.ZP1(C.y.smps,true)?"Date":"String";if(U[A.lev].smps==="Date"){U[A.lev].date=this.Yaf(C.y.smps)}var J={};var Z={};if(aa==="x"){var O=C.y.smps;for(var R=0;R<O.length;R++){var M=this.Npb(this.akl(R));J[O[R]]={min:M[0],max:M[1],type:"Numeric",date:this.ctw(this.akl(R))};Z[O[R]]=true;if(E){J[O[R]].time=E[R]}}}else{if(aa==="z"){var L=C.y.vars;for(var R=0;R<C.y.data.length;R++){var M=this.Npb(C.y.data[R]);J[L[R]]={min:M[0],max:M[1],type:"Numeric",date:this.ctw(C.y.data[R])};Z[L[R]]=true}}else{if(aa==="w"){var e=this.Dug();var c=(this.layoutValid&&this.meta.data.layout&&this.meta.data.layout.smps)?this.meta.data.layout.smps.map(function(j,i){return i}):(this.isGroupedData&&this.grpIndices?this.grpIndices:this.smpIndices);for(var R=0;R<c.length;R++){var M=this.Npb(this.dZz(R));J[e.smps[R]]={min:M[0],max:M[1],type:"Numeric",date:this.ctw(this.dZz(R))}}}}}if(!U[A.lev].clicked){U[A.lev].clicked={}}if(!U[A.lev]["range"]){U[A.lev]["range"]={}}this.Tqg(U[A.lev]["range"],J);this.Tqg(U[A.lev].clicked,Z)}}this.gcs(ac&&o?this.meta.data[ac][o]:false)}else{if(ac==="y"&&C.y){var a=0,b=0,p="";for(var R=0;R<C.y.vars.length;R++){if(C.y.vars[R]!=null){var s=C.y.vars[R].toString();var u=this.eUk(s,V);if(u>a){a=u;b=s.length;p=s}}}U.y.maxVarLen=a;U.y.maxVarChr=b;U.y.maxVarStr=p;U.y.vars=this.QP2(C.y.vars)?"World":this.u86(C.y.vars)?"USA":this.ZP1(C.y.vars)?"Date":"String";if(!U.y.range){U.y.range={}}for(var R=0;R<C.y.data.length;R++){var M=this.Npb(C.y.data[R]);U.y.range[C.y.vars[R]]={min:M[0],max:M[1],type:"Numeric"}}}else{if(C.y&&C.y[ac]){U[ac]={};var x=0,z=0,F="";var K=C.y[ac];if(this.wD5(K)){for(var R=0;R<K.length;R++){for(var P=0;P<K[R].length;P++){K[R][P]=K[R][P]!=null?Number(K[R][P]):Number.NaN}}var l=this.deg(K);U[ac].rmin=l[0];U[ac].rmax=l[1];U[ac].n=K.length*(K[0]?K[0].length:0);U[ac].type="Numeric";U[ac].colorBrew=this.qJM(this.colorSpectrum,l[0],l[1],null,false,true);var m=["min","max","zero","vals","incr","decs"];for(var R=0;R<m.length;R++){U[ac][m[R]]=U[ac].colorBrew[m[R]]}U[ac].levels=U[ac].colorBrew.vals;U[ac].order={};for(var R=0;R<U[ac].levels.length;R++){var e=U[ac].levels[R];U[ac].order[e]=R;var D=e.toString();var u=this.eUk(D,V);if(u>x){x=u;z=D.length;F=D}}U[ac].maxLevLen=x;U[ac].maxLevChr=z;U[ac].maxLevStr=F;U[ac].shapes=this.shapes;U[ac].sizes=this.sizes;U[ac].patterns=this.patterns}else{var q={};for(var R=0;R<K.length;R++){for(var P=0;P<K[R].length;P++){if(K[R][P]!=null){q[K[R][P]]=true}else{K[R][P]=""}}}var B=this.Djc(this.elc(q));U[ac].levels=B;U[ac].order={};for(var R=0;R<B.length;R++){var e=B[R];U[ac].order[e]=R;var u=this.eUk(e,V);if(u>x){x=u;z=e.length;F=e}}U[ac].maxLevLen=x;U[ac].maxLevChr=z;U[ac].maxLevStr=F;U[ac].type="String";U[ac].colors=[];for(var R=0;R<B.length;R++){U[ac].colors.push(this.colors[R%this.colors.length])}}}}}};this.Oen=function(){if(!this.meta.data){if(!this.graphType.match(/(Scatter)/)&&this.data.y&&this.data.y.smps&&this.ZP1(this.data.y.smps,true)){this.fT6(this.data)}if(this.graphType=="Network"){this.meta.data={nodes:{},edges:{},decorations:{}};this.lE7();this.tA8()}else{if(this.graphType=="Genome"){this.meta.data={tracks:[]};this.slp()}else{if(this.graphType=="Venn"){this.meta.data={}}else{this.meta.data={w:{},x:{},y:{},z:{},m:{},l:[],q:{l:{},g:[],b:false,o:false},bin:{l:[],g:false,c:false},cor:{z:{},s:{},p:[]},ydensity:{m:{},v:[],g:[],s:{},a:{},l:[],q:null,x:{},y:{},z:{},d:{}},cdf:null,km:null,qq:null,stream:null,area:null,density:null,loess:null,regression:null,quantile:null};if(this.data.y){var J=/(^\d{1,4}?[\.|\\/|-]\d{1,2}?[\.|\\/|-]\d{1,4})(\s*(?:0?[1-9]:[0-5]|1(?=[012])\d:[0-5])\d\s*[ap]m)?$/;var L=this.data.y;var B=L.data;var x=new Array(L.smps.length).fill(true);var o=[];if(this.isRawData){var I=this.xAxisTime;var u=this.yAxisTime;var N=this.xAxis[0];var c=this.yAxis[0];var K=this.missingDataValue;for(var F=0,G=L.smps.length;F<G;F++){if((I&&N==L.smps[F])||(u&&c==L.smps[F])){o.push(F)}}for(var F=0,G=o.length;F<G;F++){for(var E=0,h=B.length;E<h;E++){var a=B[E][o[F]];if(a!=null&&toString.call(a)!=="[object Date]"&&J.test(a)){B[E][o[F]]=new Date(a).getTime()}}}var G=B.length;for(var F=0;F<G;F++){if(B[F]!=null){var h=B[F].length;for(var E=0;E<h;E++){var H=B[F][E];if(H!=null){if(x[E]&&!this.ZP1([H])){x[E]=false}B[F][E]=H==K?Number.NaN:Number(H)}else{B[F][E]=Number.NaN}}}else{if(this.graphType=="Map"){B[F]=[]}}}}else{var w=this.summaryType=="iqr"?["iqr1","iqr3","median","qtl1","qtl3","out"]:[this.summaryType];var s=w.length;var K=this.missingDataValue;var b=this.summaryType;for(var F=0;F<s;F++){var v=w[F];if(L.hasOwnProperty(v)){var z=L[v];var p=z.length;for(var E=0;E<p;E++){var r=z[E];var g=r.length;for(var D=0;D<g;D++){if(v=="out"){var e=r[D];var y=e.length;for(var C=0;C<y;C++){if(e[C]!=null){e[C]=e[C]==K?Number.NaN:Number(e[C])}else{B[F][E]=Number.NaN}}}else{if(r[D]!=null){r[D]=r[D]==K?Number.NaN:Number(r[D])}else{r[D]=Number.NaN}}}}}else{if(v){L[v]=[];var O=b=="iqr"?"median":b;var M=L[O];var n=M.length;for(var E=0;E<n;E++){var r=L[v][E]=[];var q=M[E];var A=q.length;for(var D=0;D<A;D++){r[D]=[]}}}}}var v=b=="iqr"?"median":b;var z=L[v];var p=z?z.length:0;L.data=[];if(v){for(var F=0;F<p;F++){L.data.push(z[F])}}}}this.n9f(false,false,false,false,x)}}}}if(!this.meta.data){this.meta.data={}}};this.deg=function(g){var d=Number.POSITIVE_INFINITY;var a=Number.NEGATIVE_INFINITY;var e=this.varIndices.length;for(var c=0;c<e;c++){var f=this.smpIndices.length;for(var b=0;b<f;b++){if(this.varIndices[c]!=null&&this.smpIndices[b]!=null&&g[this.varIndices[c]]!=null){var h=g[this.varIndices[c]][this.smpIndices[b]];if(!isNaN(h)){d=Math.min(h,d);a=Math.max(h,a)}}}}d=d==Number.POSITIVE_INFINITY||d==Number.NEGATIVE_INFINITY?-1:d;a=a==Number.NEGATIVE_INFINITY||a==Number.POSITIVE_INFINITY?1:a;return[d,a]};this.cTp=function(e){var q=this;var p=["color","shape","size","line","pattern","outline","connect","workflow","ellipse","ridge","stack","pie"];var b=this.mWg();var c="";var n=function(){if(q.graphType.match(/Scatter/)){if(q.meta.data.hasOwnProperty("z")&&q.meta.data.z.hasOwnProperty("variable")){return"variable"}else{return false}}else{if(q.meta.data.hasOwnProperty("x")&&q.meta.data.x.hasOwnProperty("variable")){return"variable"}else{return false}}};for(var h=0;h<p.length;h++){var t=this[p[h]+"By"];if(this.Zuk(t)){t=t[0]}var r=this[t+"Data"];if(t){if(this.isMultidimensionalData){if(r&&!this.data.y[r]){this[p[h]+"By"]=false;this[t+"Data"]=false}}else{if(t=="variable"){continue}else{if(t=="data"&&this.ridgeBy){continue}else{if(this.data.x&&this.data.x.hasOwnProperty(t)){continue}else{if(this.data.z&&this.data.z.hasOwnProperty(t)){if(p[h].match(/ellipse|ridge/)&&this.meta.data.z[t].type=="Numeric"){this[p[h]+"By"]=false}continue}else{if(this.OKx(t)!=-1||this.OKx(t,true)!=-1){continue}else{if(this.OOg()&&t=="sample"&&(p[h]=="shape"||p[h]=="color")){continue}else{this[p[h]+"By"]=false}}}}}}}}}if(this.treemapBy.length>0){var k=[];var g=[];for(var h=0;h<this.treemapBy.length;h++){if(this.treemapBy[h]=="sample"){g.push("sample")}else{if(!this.data.x||!this.data.x.hasOwnProperty(this.treemapBy[h])){g.push("sample")}else{if(this.data.x&&this.data.x.hasOwnProperty(this.treemapBy[h])){k.push(this.treemapBy[h])}}}}if(g.length>0){}this.treemapBy=k}var o=this.graphType.match(/Boxplot|Dotplot|Gantt|Scatter|Map|Circular/)||this.graphType=="Tree";if(this.shapeBy&&!this.isMultidimensionalData&&!o){c+="shapeBy changed to false (shapeBy not support in"+this.graphType+")\n";this.shapeBy=false}else{if(this.shapeBy&&this.groupingFactors.length>1&&!o){c+="shapeBy changed to variable (multiple grouping factors not allowed)\n";this.shapeBy="variable"}else{if(this.shapeBy&&this.groupingFactors.length==1&&this.shapeBy!=this.groupingFactors[0]&&!o){c+="shapeBy changed to variable (grouping factor should the same as shapeBy)\n";this.shapeBy="variable"}}}if(this.sizeBy&&!this.isMultidimensionalData&&!o){c+="sizeBy changed to false (sizeBy not support in"+this.graphType+")\n";this.sizeBy=false}else{if(this.sizeBy&&this.groupingFactors.length>1&&!o){c+="sizeBy changed to variable (multiple grouping factors not allowed)\n";this.sizeBy="variable"}else{if(this.sizeBy&&this.groupingFactors.length==1&&this.sizeBy!=this.groupingFactors[0]&&!o){c+="sizeBy changed to variable (grouping factor should the same as sizeBy)\n";this.sizeBy="variable"}}}if(this.colorBy&&this.graphType=="Heatmap"&&!this.isMultidimensionalData){this.GrX(this.colorBy)}else{if(this.graphType=="Heatmap"&&this.heatmapType=="split"&&b){this.ZgC()}else{if(this.colorBy&&this.groupingFactors.length>1&&!this.graphType.match(/Boxplot|Dotplot|Gantt|Scatter|Stacked|Treemap/)&&!this.isCxplot){c+="colorBy changed to variable (multiple grouping factors not allowed)\n";this.colorBy="variable"}else{if(this.colorBy&&this.groupingFactors.length==1&&this.colorBy!=this.groupingFactors[0]&&!this.graphType.match(/Boxplot|Dotplot|Gantt|Scatter|Stacked|Treemap|Line/)&&this.barType!="swimmer"){if(this.toDoPivot){this.colorBy=false}else{c+="colorBy changed to variable (grouping factor should the same as colorBy)\n";this.colorBy="variable"}}}}}if((this.shapeBy||this.sizeBy||this.patternBy||this.outlineBy)&&!this.colorBy&&!this.isMultidimensionalData&&!this.graphType=="Heatmap"&&!this.isCxplot){this.colorBy="variable"}else{if(!this.shapeBy&&!this.sizeBy&&!this.patternBy&&this.colorBy=="variable"&&this.graphType!="Map"){this.colorBy=n()}}if(this.shapeBy=="variable"&&!this.colorBy&&!this.OOg()){this.colorBy="variable"}if(this.sizeBy=="variable"&&!this.colorBy&&!this.OOg()){this.colorBy="variable"}if(this.patternBy=="variable"&&!this.colorBy&&!this.OOg()){this.colorBy="variable"}if(this.stackBy&&!this.colorBy){this.colorBy=this.stackBy}else{if(this.stackBy&&this.colorBy&&this.stackBy!=this.colorBy){c+="colorBy changed to stackBy (remove stackBy to color by different factor)\n";this.colorBy=this.stackBy}}if(this.dodgeBy&&!this.colorBy){this.colorBy=this.dodgeBy}else{if(this.dodgeBy&&this.colorBy&&this.dodgeBy!=this.colorBy){c+="colorBy changed to dodgeBy (remove dodgeBy to color by different factor)\n";this.colorBy=this.dodgeBy}}if(this.lineBy&&!this.colorBy&&this.isGroupedData){}else{if(this.lineBy&&this.colorBy&&this.lineBy!=this.colorBy&&this.isGroupedData){c+="colorBy changed to lineBy (remove lineBy to color by different factor)\n";this.colorBy=this.lineBy}else{if(this.lineBy&&!this.isGroupedData&&this.graphType!="Scatter2D"){c+="Data needs to be grouped";this.lineBy=false}}}if(c!=""){console.warn("[CanvasXpress] validatePropertyValues: "+c);this.FmO(10,10,c,3000)}if(this.colorBy||this.shapeBy||this.sizeBy||this.lineBy){var p=["colorBy","shapeBy","lineBy"];var s=[];for(var h=0;h<p.length;h++){if(this[p[h]]){s.push(p[h])}}var u=[];for(var f=0;f<s.length;f++){if(u.indexOf(this[s[f]])===-1){u.push(this[s[f]])}}if(u.length===1){this.legendCombine=s}}if(e){this.XSd()}};this.UJi=function(a,t){var s=this.meta.data;var d=this.data;var u=this.graphType=="Network"?["nodes","edges"]:["x","z"];if(a&&t){t.colors=a;t.connects=a}else{for(var p=0;p<u.length;p++){var f=u[p];if(d[f]){if(this.graphType=="Network"){this.decorationsTextColors=[];return}else{var b=d[f]||s[f];for(var h in b){if(s[f][h]&&s[f][h].type=="String"){var r=b[h];var q=this.Jr3(d[f]?r:r.levels);var c=this.Djc(q);var e=c.length;if((!this.colorKey&&this.graphType!="Map")||(this.colorKey&&!this.colorKey.hasOwnProperty(h))){s[f][h].colors=[];var v=0;if(e!=a.length&&this.colorScheme){var g=this.kYX(e,this.colorScheme);for(var l=0;l<c.length;l++){s[f][h].colors.push(g[v%g.length]);v++}}else{for(var l=0;l<c.length;l++){s[f][h].colors.push(a[v%a.length]);v++}}}}}}}}}};this.M6X=function(){var d=this.data.y;if(this.isGroupedData){if(!this.wrangleBuildTarget){this.meta.data.wrangled={}}d=this.otE()}var b=["vars","smps","labs","glab","desc","data","mean","median","stdev","n","qtl1","qtl3","iqr1","iqr3","out","conf","nfac","trans","tstdev","cor","min","max","sum","count","grps","grpIdxs","factors","scale"];var c=b.length;for(var a=0;a<c;a++){if(!d[b[a]]){if(b[a]=="factors"){d[b[a]]={}}else{d[b[a]]=[]}}}d.iqr=d.median};this.Doz=function(a){var c=["mean","median","stdev","n","qtl1","qtl3","iqr1","iqr3","out","conf","nfac","cor","min","max","sum","count","grps","grpIdxs","factors","scale"];var d=c.length;if(this.isGroupedData){if(!this.isTransformedData){c.push("trans");c.push("tstdev")}d=c.length;for(var b=0;b<d;b++){delete (this.data.y[c[b]])}if(this.data){delete this.otE()}}else{if(!this.isTransformedData){c.push("trans");c.push("tstdev")}d=c.length;if(this.isRawData){for(var b=0;b<d;b++){delete (this.data.y[c[b]])}}else{}}if(a&&this.isRawData){this.M6X()}};this.rvP=function(h,g,m,d,f,n,p,l,b,a,o){var c=Number.NaN;if(a===undefined){a=this.Dug()}if(l){c=this.data.y[l][h][g]}else{if(this.isGroupedData||!this.isRawData){if(this.isTransformedData){if(!m){c=a.trans[h][g]}else{if(m=="stdev"){c=a.tstdev[h][g]}else{if(a.hasOwnProperty(m)){c=a[m][h][g]}}}}else{m=m?m:this.summaryType;if(a.hasOwnProperty(m)){c=a[m][h]?a[m][h][g]:NaN}else{c=0}}}else{if(o===undefined){o=this.wTq()}if(m){if(a[m]&&a[m][h]){c=a[m][h][g]}else{if(m=="sum"&&!this.isGroupedData){c=o&&o[h]?o[h][g]:a.data[h][g]}}}else{if(this.isTransformedData&&a.trans&&a.trans.length){c=a.trans[h][g]}else{c=o&&o[h]?o[h][g]:a.data[h][g]}if(b){c=b-c}}}}if(d!="percentile"&&((f!=null||n!=null||p))){if(p){if(m=="out"){for(var e=0;e<c.length;e++){c[e]*=p}}else{c*=p}}if(f!=null&&f!=false&&f!=undefined){if(m=="out"){for(var e=0;e<c.length;e++){c[e]=Math.max(f,c[e])}}else{c=Math.max(f,c)}}if(n!=null&&n!=false&&n!=undefined){if(m=="out"){for(var e=0;e<c.length;e++){c[e]=Math.min(n,c[e])}}else{c=Math.min(n,c)}}}if(d){if(!isNaN(c)){if(d=="log2"){c=Math.log(c)/Math.LN2}else{if(d=="log10"){c=Math.log(c)/Math.LN10}else{if(d=="-log2"){c=-Math.log(c)/Math.LN2}else{if(d=="-log10"){c=-Math.log(c)/Math.LN10}else{if(d=="exp2"){c=Math.pow(2,c)}else{if(d=="exp10"){c=Math.pow(10,c)}else{if(d=="sqrt"){c=Math.sqrt(c)}else{if(d=="percentile"){c=this.Amv(f,n,c)}}}}}}}}}}return c==null?Number.NaN:c};this.TQ3=function(n,h,t,d,g,q,u){var b=this.Dug();var s=this.wTq();var o=d&&d!=="percentile"&&(g!=null||q!=null||u);var r=d==="percentile";var l=[];for(var f=0;f<t.length;f++){var p=t[f];var c=Number.NaN;if(this.isGroupedData||!this.isRawData){if(this.isTransformedData){if(!p){c=b.trans[n][h]}else{if(p==="stdev"){c=b.tstdev[n][h]}else{if(b.hasOwnProperty(p)){c=b[p][n][h]}}}}else{var a=p?p:this.summaryType;if(b.hasOwnProperty(a)){c=b[a][n]?b[a][n][h]:NaN}else{c=0}}}else{if(p){if(b[p]&&b[p][n]){c=b[p][n][h]}else{if(p==="sum"&&!this.isGroupedData){c=s&&s[n]?s[n][h]:b.data[n][h]}}}else{if(this.isTransformedData&&b.trans&&b.trans.length){c=b.trans[n][h]}else{c=s&&s[n]?s[n][h]:b.data[n][h]}}}if(o){if(u){if(p==="out"){for(var e=0;e<c.length;e++){c[e]*=u}}else{c*=u}}if(g!=null&&g!==false&&g!==undefined){if(p==="out"){for(var e=0;e<c.length;e++){c[e]=Math.max(g,c[e])}}else{c=Math.max(g,c)}}if(q!=null&&q!==false&&q!==undefined){if(p==="out"){for(var e=0;e<c.length;e++){c[e]=Math.min(q,c[e])}}else{c=Math.min(q,c)}}}if(d&&!isNaN(c)){if(d==="log2"){c=Math.log(c)/Math.LN2}else{if(d==="log10"){c=Math.log(c)/Math.LN10}else{if(d==="-log2"){c=-Math.log(c)/Math.LN2}else{if(d==="-log10"){c=-Math.log(c)/Math.LN10}else{if(d==="exp2"){c=Math.pow(2,c)}else{if(d==="exp10"){c=Math.pow(10,c)}else{if(d==="sqrt"){c=Math.sqrt(c)}else{if(r){c=this.Amv(g,q,c)}}}}}}}}}l.push(c==null?Number.NaN:c)}return l};this.akl=function(b){var a=[];var d=this.data.y.data.length;for(var c=0;c<d;c++){a.push(this.data.y.data[c][b])}return a};this.dZz=function(k,m,j,d){var h=[];if(!m){m=this.varIndices}if(this.isGroupedData||!this.isRawData){var b=this.Dug();if(this.isTransformedData){if(b.trans[0]&&b.trans[0][k]){h.push(b.trans[0][k])}}else{j=this.summaryType=="iqr"?"median":this.summaryType;if(b.hasOwnProperty(j)&&b[j].length){var c=this.isDOE&&this.isDOE==1?this.data.y.vars.length:m.length;for(var g=0;g<c;g++){var l=m[g];if(b[j][l]){h.push(b[j][l][k])}}}}}else{var f=j?this.data.y[j]:this.data.y.data;var c=this.isDOE&&this.isDOE==1?this.data.y.vars.length:m.length;var a=this.xAxisIndices||[];var o=this.yAxisIndices||[];var e=a.includes(k)?"x":o.includes(k)?"y":false;if(this.isTransformedData){for(var g=0;g<c;g++){var l=m[g];if(this.data.y.trans[l]){h.push(this.data.y.trans[l][k])}}}else{if(d){for(var g=0;g<c;g++){var l=m[g];if(l==undefined){continue}h.push(this.rvP(l,k,false,d,this[e+"AxisFloorValue"],this[e+"AxisCeilValue"],this[e+"AxisFactorValue"]))}}else{for(var g=0;g<c;g++){var l=m[g];if(f[l]){if(e){h.push(this.rvP(l,k,false,d,this[e+"AxisFloorValue"],this[e+"AxisCeilValue"],this[e+"AxisFactorValue"]))}else{h.push(f[l][k])}}}}}}return h};this.UPc=function(b){var a=[];var e=this.smpIndices.length;if(this.isTransformedData){for(var c=0;c<e;c++){var d=this.smpIndices[c];a.push(this.data.y.trans[b][d])}}else{for(var c=0;c<e;c++){var d=this.smpIndices[c];a.push(this.data.y.data[b][d])}}return a};this.dfh=function(a){var c={};if(this.data.z){for(var b in this.data.z){c[b]=this.dl6(a,"z",b)}}c[name]=this.data.y.vars[a];return c};this.cuI=function(a){if(this.isGroupedData){return this.OhZ(a)}else{return this.o2C(a)}};this.o2C=function(a){var c={};if(this.data.x){for(var b in this.data.x){c[b]=this.dl6(a,"x",b)}}c.name=this.data.y.vars[a];return c};this.OhZ=function(a){var d=[];var e=this.otE().grps[a].length;for(var b=0;b<e;b++){var c=this.otE().grps[a][b];d.push(this.getMetaDataForSmpAtIndex[c])}return d};this.UkJ=function(e,d){var a=[];if(this.meta.data[e]){for(var b in this.meta.data[e]){if(d&&this.meta.data[e][b].type==d){a.push(b)}else{if(!d){a.push(b)}}}}return a};this.G9W=function(d,f,c,k,e){var l=d.vals.length-1;var g;if((k[e]=="shapes"&&!this.shapeByContinuous)||(k[e]=="sizes"&&!this.sizeByContinuous)){for(var j=0;j<d.vals.length;j++){if(f<=d.vals[j]){g=j;break}}}else{g=Math.min(Math.max(Math.floor(f*(d.vals.length+1)/d.vals[l])-1,0),l)}return c?g:parseInt(this[k[e]][g%this[k[e]].length])};this.ifw=function(b,d,c){var e=b.vals?b.vals.length-1:b.values.length-1;return parseFloat((((d-b.min)/(b.max-b.min))*(this[c][e]-this[c][0])))+parseInt(this[c][0])};this.dl6=function(a,d,e,c){var f=d=="x"?this.data.x:d=="z"?this.data.z:false;if(this.isGroupedData&&!c&&d!="z"){var b=this.otE();return b&&b.factors.hasOwnProperty(e)?b.factors[e][a]:"NoCatFound"}else{if(f&&f.hasOwnProperty(e)){return f[e][a]}else{return undefined}}};this.aestheticChannelKeys={colorBy:"color",sizeBy:"size",shapeBy:"shape",patternBy:"pattern",xAxis:"x",yAxis:"y",lineBy:"line",linePatternBy:"linetype"};this.zB1=function(c){var b=this.aestheticChannelKeys[c];if(b&&this.activeLayerMapping&&this.activeLayerMapping.hasOwnProperty(b)){return this.activeLayerMapping[b]}if(this.specDriven&&this.aestheticChannelKeys.hasOwnProperty(c)&&this.meta&&this.meta.cxplot&&this.meta.cxplot.mapping){var a=this.meta.cxplot.mapping();if(a&&a.hasOwnProperty(b)){var e=a[b];var d=(b==="x"||b==="y");if(!d||(e!=null&&!(e.length===0))){return e}}}return this[c]};this.BwU=function(f,e,d,c,g){return this.JiA(d,f,e,c,g)};this.YhK=function(b,a){if(this.specDriven&&a&&this.meta&&this.meta.cxplot&&this.meta.cxplot.scales){var c=this.meta.cxplot.scales();if(c&&c.hasOwnProperty(a)&&c[a]){return c[a]}}return this[a]};this.aNQ=function(c,b){if(this.specDriven&&this.meta&&this.meta.cxplot&&this.meta.cxplot.scales){var a=this.aestheticChannelKeys[c];if(a){var d=this.meta.cxplot.scales();return d?d[a+b]:undefined}}return undefined};this.iWE=function(c,a,d){var b=this.aNQ(c,"Manual");if(b&&b.hasOwnProperty(d)){return b[d]}return a[c][d]};this.sQA=function(c,b,d){var a=this.aNQ(c,"Continuous");if(typeof a==="function"){return a(b)}return d()};this.JiA=function(H,F,D,f,u){var E=H;var C=f;var e=this;var x,w,j,A,k;var r=C||this.zB1(E);var B=this.aF4();var z=this.groupingFactors&&this.groupingFactors.length==1;var n=this.data;var G=this.meta.data;var y={colorVarDendrogramBy:"colors",colorSmpDendrogramBy:"colors",colorBy:"colors",colorLabelBy:"colors",colorByData:"colors",outlineBy:"colors",outlineByData:"colors",markerBy:"colors",shapeBy:"shapes",shapeByData:"shapes",sizeBy:"sizes",sizeLabelBy:"sizes",sizeByData:"sizes",patternBy:"patterns",patternByData:"patterns",stackBy:"colors",dodgeBy:"colors",lineBy:"colors",linePatternBy:"linePatterns",confidenceBy:"colors"};var v=this.YhK(E,y[E]);var d=function(){var b={};var h=0;if(D>=0&&e.otE().grps[D]){for(var g=0;g<e.otE().grps[D].length;g++){var c=G.x[r].type;var a=n.x[r][e.otE().grps[D][g]];if(!b.hasOwnProperty(a)){b[a]=true;h++}if(h>1){return false}}}return true};var i=function(){if(!e.patternBy){if(F>e.colors.length-1&&!e.colorBy){return v[Math.floor(F/e.colors.length)]}else{return v[0]}}else{return v[0]}};var o=E&&v?v.length:false;if(F!=null&&D!=null&&r&&n.y.hasOwnProperty(r)){x=n.y[r][F][D];w=G[r];j=w.type}else{if(D!=null&&r&&n.x&&n.x.hasOwnProperty(r)){w=G.x[r];if(B||!this.isGroupedData){j=w.type;x=this.graphType=="Gantt"?n.x[r][D]:this.isGroupedData?this.otE().smps[D]:n.x[r][D];if(w[E]&&w[E].hasOwnProperty(x)){return this.iWE(E,w,x)}else{if(E=="colorSmpDendrogramBy"&&w.colorBy&&w.colorBy.hasOwnProperty(x)){return w.colorBy[x]}}}else{if((z&&(this.groupingFactors[0]==r||d()))||(!z&&this.isGroupedData&&this.isCxplot&&this.groupingFactors.length>1)){j=w.type;x=D!==false&&D>=0&&this.otE().grps[D]?n.x[r][this.otE().grps[D][0]]:false;if(x&&E.match(/color|patternBy/)){if(w[E]&&w[E].hasOwnProperty(x)){return this.iWE(E,w,x)}else{if(w[y[E]]){return w[y[E]][w.order[x]%o]}else{return v[w.order[x]%o]}}}else{return w[y[E]]?w[y[E]][0]:E.match(/color/)?v[0]:E=="patternBy"?i():v[0]}}else{return F!=null&&E.match(/color/)?v[F%o]:E=="patternBy"?i():v[0]}}}else{if(F!=null&&r&&n.z&&n.z.hasOwnProperty(r)){w=G.z[r];j=w.type;x=n.z[r][F];if(w[E]&&(w[E].hasOwnProperty(x)||w[E][x])){return this.iWE(E,w,x)}else{if(w[E]&&(w[E].hasOwnProperty(x+"\x00")||w[E][x+"\x00"])){return w[E][x+"\x00"]}else{if(w[E]&&w[E][x.replace("\x00","")]){return w[E][x.replace("\x00","")]}else{if(E=="colorVarDendrogramBy"&&w.colorBy&&w.colorBy.hasOwnProperty(x)){return w.colorBy[x]}else{if(w[E]&&E=="linePatterns"&&w.order&&w.order.hasOwnProperty(x)){return w[E][w.order[x]%this.YhK(E,E).length]}}}}}}else{if(F!=null&&D!=null&&E&&((this.isGroupedData&&G.w.smps.hasOwnProperty(E))||(!this.isGroupedData&&G.y.range.hasOwnProperty(E)))){x=n.y.data[F][D];w=G.y.range[E];j=G.y.type}else{if(F!=null&&!this.isGroupedData&&r&&G.y.range.hasOwnProperty(r)){w=G.y.range[r];j=w.type;k=D!=null?false:this.OKx(r);x=D!=null?n.y.data[F][D]:n.y.data[F]?n.y.data[F][k>=0?k:0]:0;if(G.modified&&G.modified.z&&G.modified.z[r]){return v[x%o]}else{if(!w.colorBrew){w.colorBrew=this.qJM(false,w.min,w.max);w.vals=w.colorBrew.vals}}}else{if(F!=null){if(r){return v[F%o]}else{return !r&&E.match(/color/)?v[F%o]:E=="patternBy"?i():v[0]}}else{return v[0]}}}}}}if(j=="Numeric"){if(E.match(/color|outlineBy/)){return !isNaN(x)&&x!==null?this.sQA(E,Number(x),function(){return e.w7m(w.colorBrew,Number(x))}):this.missingDataColor}else{if(E.match(/shapeBy/)){if(!isNaN(x)){return this.shapeByContinuous?"pie"+this.G9W(w,x,true,y,E):v[this.G9W(w,x,true,y,E)]}else{return"sphere"}}else{if(E.match(/sizeBy/)){if(!isNaN(x)){return this.sizeByContinuous?this.ifw(w,x,y[E]):this.G9W(w,x,false,y,E)}else{return v[0]}}else{if(E.match(/patternBy/)){if(!isNaN(x)){return this.G9W(w,x,false,y,E)}else{return"closed"}}}}}}else{if(j=="String"){if(w[y[E]]){if(u){if(E=="sizeLabelBy"){return this.t5v([5,9,13,17,21],this.Amv(w[y[E]][0],w[y[E]][w[y[E]].length-1],w[y[E]][w.order[x]%w[y[E]].length])/100)}else{return this.Amv(w[y[E]][0],w[y[E]][w[y[E]].length-1],w[y[E]][w.order[x]%w[y[E]].length])}}else{return E=="sizeBy"?parseInt(w[y[E]][w.order[x]%w[y[E]].length]):w[y[E]][w.order[x]%w[y[E]].length]}}else{return E=="sizeBy"?parseInt(v[w.order[x]%v.length]):v[w.order[x]%v.length]}}}};this.ItU=function(p,d,n,h,b){var j=[];var r={};var e=this.data[n];var g=this.meta.data[n];if(e&&p&&e[p]){g=g[p];for(var k=0;k<d.length;k++){var q=d[k];var f=this.dl6(q,n,p,h)||"";if(!r.hasOwnProperty(f)){j.push(f)}r[f]=true}if(g&&b){if(g.monthDay){j=j.sort(function(i,c){return parseInt(CanvasXpress.dates[i])-parseInt(CanvasXpress.dates[c])})}else{if(this.scatterPlotMatrix){j=j.sort(function(i,c){return i.toLowerCase().localeCompare(c.toLowerCase())})}else{j=j.sort(function(i,c){return g.n[g.order[c]]-g.n[g.order[i]]||c>i})}}}}return j};this.OKx=function(b,e,d,f,c){if(!f){f=this.isGroupedData&&!e?this.otE().smps:this.data.y.smps;c=this.C8j(f)}return this.KnJ(b,f,c)};this.U4o=function(){var c=[];var g=this.Dug().smps;var h=this.Dug();var e=this.j45();var f=this.Rpc();for(var d=0;d<g.length;d++){var a=-1;for(var b=0;b<f.length;b++){if(f[b]==d){a=b;break}}c.push({name:g[d],hidden:e[d],index:a})}return c};this.aAF=function(b){return this[b]||[]};this.Iop=function(c,b,d){return this.tAP(c,b,d||this.smpIndices,"x",this.hiddenSmps)};this.WJr=function(b,c){return this.ItU(b,c||this.smpIndices,"x",true)};this.F2A=function(b,e,d,c){return this.hdU(b,e,d,c,"x")};this.mlX=function(b,e,d,c){if(!d){d=this.data.y.vars;c=this.C8j(d)}return this.KnJ(b,d,c)};this.YkM=function(){var d=[];for(var c=0;c<this.data.y.vars.length;c++){var a=-1;for(var b=0;b<this.varIndices.length;b++){if(this.varIndices[b]==c){a=b;break}}d.push({name:this.data.y.vars[c],hidden:this.hiddenVars[c],index:a})}return d};this.W8o=function(b){return this[b+"VarIndices"]};this.ctV=function(c,b,d){return this.tAP(c,b,d||this.varIndices,"z",this.hiddenVars)};this.fqb=function(b,c){return this.ItU(b,c||this.varIndices,"z")};this.Trd=function(b,e,d,c){return this.hdU(b,e,d,c,"z")};this.KnJ=function(b,f,c){if(b!=null&&f){if(!c){c=this.C8j(f)}var e=[];if(this.Zuk(b)){if(this.Zuk(f)){var g=b.length;for(var d=0;d<g;d++){if(c.hasOwnProperty(b[d])){e.push(c[b[d]])}}return e}else{return c.hasOwnProperty(f)?c[f[d]]:-1}}else{return f.indexOf(b.toString())}}};this.tAP=function(k,e,b,j,g){var p=[];var d=this.data[j];if(d&&k&&d[k]){if(e){for(var f=0;f<b.length;f++){var n=b[f];var m=this.dl6(n,j,k);if(m==e){if(g&&!g[n]){p.push(n)}else{p.push(n)}}}}else{for(var f=0;f<b.length;f++){var n=b[f];var m=this.dl6(n,j,k);if(!m){if(g&&!g[n]){p.push(n)}else{p.push(n)}}}}}return p};this.hdU=function(m,d,l,g,k){var b={};var h=[];var j=false;var e=this.data[k];if(!d){d=k=="x"?this.smpIndices:this.varIndices}if(e&&e.hasOwnProperty(m)){for(var f=0;f<d.length;f++){var p=d[f];var n=this.dl6(p,k,m);if(n!=null){b[n]=true;h.push(n)}else{j=true}}if(j){h.push("")}if(g){return l?h.join("+"):h}else{h=[]}for(var f in b){h.push(f)}if(j){h.push("")}return l?h.join("+"):h}};this.ZJf=function(f,a,b,e){var d=this.pcR(f||0);if(!a){a=d.varIndices}if(!b){b=this.isGroupedData?d.grpIndices:d.smpIndices}if(e||!d.startingVarIndices||d.startingVarIndices.length==0){d.startingVarIndices=this.QWl(a)}if(this.isGroupedData){if(e||!d.startingGrpIndices||d.startingGrpIndices.length==0){d.startingGrpIndices=this.QWl(b)}}else{if(e||!d.startingSmpIndices||d.startingSmpIndices.length==0){d.startingSmpIndices=this.QWl(b)}}};this.XME=function(c,a,b){if(this.graphType=="Network"){this.imI()}else{if(this.graphType!="Genome"&&this.graphType!="Venn"){this.Tyt(c,b);this.UFP(a,b)}}};this.FB7=function(c){if(this.isGroupedData&&this.grpIndices&&this.otE()){if(c&&this.grpIndices.length){var a=[];for(var b=0;b<this.grpIndices.length;b++){var d=this.otE().grps[this.grpIndices[b]];if(d){a=a.concat(d)}}this.smpIndices=a}else{this.XME()}}};this.Tyt=function(g,h){var j=this.data;if(j.y){var c=j.y.vars;if(!c){c=[];if(j.y.data){for(var f=0;f<j.y.data.length;f++){c.push("var"+(f+1))}}else{c=[];j.y.data=null}j.y.vars=c}var a=[];var b=[];if(!this.isDOE&&this.xAxis.length&&this.CgJ()){g=this.xAxis2.length?this.mlX(this.zB1("xAxis")).concat(this.mlX(this.xAxis2)):this.mlX(this.zB1("xAxis"));if(this.Zuk(g)){if(!g.length&&(this.isPivot||this.graphType=="Pie"||this.graphType=="Map")){for(var f=0;f<j.y.data.length;f++){g.push(f)}}}else{if(g>=0){g=[g]}else{g=false}}}if(g&&g.length){for(var f=0;f<g.length;f++){a.push(g[f]);b.push(false)}}else{for(var f=0;f<c.length;f++){a.push(f);b.push(false)}}if(!h&&this.smpIndices&&!this.inAfterDoFilter){this.inAfterDoFilter=true;this.Dct();this.inAfterDoFilter=false}if(this.layoutComb&&this.layoutParams){for(var f=0;f<this.layoutParams.length;f++){var e=this.layoutParams[f];if(e&&e.startingVarIndices){e.varIndices=e.startingVarIndices;e.varIndicesStart=-1}}}this.varIndices=a;this.hiddenVars=b}};this.uZu=function(b){this.varIndices=[];for(var c=0;c<b.length;c++){this.varIndices.push(b[c])}};this.g1B=function(c,b){var d=this[c+"VarIndices"];d=[];for(var e=0;e<b.length;e++){d.push(b[e])}};this.UFP=function(a,c,b){var f=this.data;if(f.y){var k=f.y.smps;if(!k&&f.y.vars){if(!f.y.data){alert("Missing data object")}k=[];for(var e=0;e<f.y.data[0].length;e++){k.push("smp"+(e+1))}f.y.smps=k}var h=[];var g=[];if(a){for(var e=0;e<a.length;e++){h.push(a[e]);g.push(false)}}else{for(var e=0;e<k.length;e++){h.push(e);g.push(false)}}if(!c&&this.varIndices&&!this.inAfterDoFilter){this.inAfterDoFilter=true;this.Dct();this.inAfterDoFilter=false}this.smpIndices=this.sortDir=="descending"?h.reverse():h;this.hiddenSmps=this.sortDir=="descending"?g.reverse():g}if(this.meta.data&&this.otE()&&this.otE().smps){h=[];g=[];this.hiddenGrps=[];for(var e=0;e<this.otE().smps.length;e++){h.push(e);g.push(false)}this.grpIndices=this.sortDir=="descending"?h.reverse():h;this.hiddenGrps=this.sortDir=="descending"?g.reverse():g}if(this.layoutComb&&this.layoutParams&&!b){for(var e=0;e<this.layoutParams.length;e++){var j=this.layoutParams[e];if(j){if(j.startingSmpIndices){j.smpIndices=j.startingSmpIndices;j.smpIndicesStart=-1}if(this.isGroupedData&&j.startingGrpIndices){j.grpIndices=j.startingGrpIndices;j.grpIndicesStart=-1}}}}};this.dbt=function(b,e){if(this.isGroupedData&&!this.otE()){this.grpIndices=[];for(var d=0;d<b.length;d++){this.grpIndices.push(b[d])}}else{this.smpIndices=[];for(var d=0;d<b.length;d++){this.smpIndices.push(b[d])}}if(e){var c=this.EBF(b);var g=this.Dug();var f=this.j45();for(var d=0;d<g.smps.length;d++){if(c.hasOwnProperty(d)){f[d]=false}else{f[d]=true}}}};this.vDf=function(g){if(this.ql8()){return}if(g){var b=this.Dug();var e=this.j45();var f=[];if(this.Zuk(g)){for(var d=0;d<g.length;d++){for(var c=0;c<b.smps.length;c++){if(b.smps[c]==g[d]){if(e[c]){e[c]=false}else{e[c]=true}break}}}}else{for(var d=0;d<b.smps.length;d++){if(b.smps[d]==g){if(e[d]){e[d]=false}else{e[d]=true}break}}}var a=[];for(var d=0;d<b.smps.length;d++){if(!e[d]){a.push(d)}}this.dbt(a);this.U4z({func:"hideUnhideSmps",par:[g]})}};this.gh4=function(f){if(this.ql8()){return}var e=this.data.y;var d=this.hiddenVars;if(f){if(this.Zuk(f)){for(var c=0;c<f.length;c++){for(var b=0;b<e.vars.length;b++){if(e.vars[b]==f[c]){if(d[b]){d[b]=false}else{d[b]=true}break}}}}else{for(var c=0;c<e.vars.length;c++){if(e.vars[c]==f){if(d[c]){d[c]=false}else{d[c]=true}break}}}var a=[];for(var c=0;c<e.vars.length;c++){if(!d[c]){a.push(c)}}this.uZu(a);this.U4z({func:"hideUnhideVars",par:[f]})}};this.bjP=function(c,b,d){var e=this.meta.map.geojson.features;if(d){for(var a=0;a<e.length;a++){e[a].hidden=d}}for(var a=0;a<c.length;a++){e[c[a]].hidden=b}};this.N9Z=function(){if(this.meta.map&&this.meta.map.geojson&&this.meta.map.geojson.features){for(var a=0;a<this.meta.map.geojson.features.length;a++){this.meta.map.geojson.features[a].hidden=false}}};this.UiE=function(j,b,f,e){var d=this.graphType;var a=["colorByData","outlineByData","shapeByData","sizeByData","patternByData"];var h=["data2","data3","data4","data5","data6"];if(!e){this.XME(j,b,f)}if(d=="Network"||d=="Genome"||d=="Venn"){this.Oen()}else{this.Oen();for(var c=0;c<a.length;c++){if(this[a[c]]&&this.data.y.hasOwnProperty(this[a[c]])){this.n9f(this[a[c]])}else{this[a[c]]=false}}if(this.oncoprintCNA&&this.data.y.hasOwnProperty(this.oncoprintCNA)){this.n9f(this.oncoprintCNA);this.isOncoprint=true}if(this.oncoprintMUT&&this.data.y.hasOwnProperty(this.oncoprintMUT)){this.n9f(this.oncoprintMUT)}if(this.heatmapType=="upset"){this.isUpSet=true}for(var c=0;c<h.length;c++){if(this.data.y.hasOwnProperty(h[c])){this.n9f(h[c])}}}};this.CzN=function(b,f,j){var c=this;var g=false;var h=function(m){if(c.isJupyter&&m.hasOwnProperty("y")&&!m.hasOwnProperty("x")&&!m.hasOwnProperty("z")){var e=c.QWl(m.y.vars);var l=c.QWl(m.y.smps);l.unshift("Id");m=m.y.data;for(var k=0;k<m.length;k++){m[k].unshift(e[k])}m.unshift(l)}return m};if(b&&typeof b=="string"){try{b=JSON.parse(b)}catch(d){}}b=h(b);this.data=b||CanvasXpress.example;this.isExample=b?false:true;if(this.isExample){this.$(this.target).style.display="none"}this.nodesData=false;this.edgesData=false;this.featuresData=false;if(f){delete this.meta.data;this.dataVersion=(this.dataVersion||0)+1}this.validGraphTypes=[];if(Array.isArray(b)&&Array.isArray(b[0])){var a=this.arrayToCX(this.QWl(b),this.meta.config.user);this.data=a.data;if(a.config&&a.config.summaryType){this.summaryType=a.config.summaryType;this.dataTableZeroHeader=a.config.dataTableZeroHeader||"";this.dataTableColOrder=a.config.dataTableColsOrder||[];this.dataTableColHide=a.config.dataTableColsHide||[]}this.VCd();if(a.config&&a.config.graphType=="Scatter2D"){this.P45()}if(a.config.isGraphTime){this.isGraphTime=true;this.xAxisTime=a.config.xAxisTime;this.yAxisTime=a.config.yAxisTime}}else{if(this.isDataFrame&&Array.isArray(b)&&Array.isArray(b[0])){var a=this.sXj(b,this.meta.config.user);this.data=a.data;this.VCd();if(a.config&&a.config.graphType=="Scatter2D"){this.P45()}if(a.config.isGraphTime){this.isGraphTime=true;this.xAxisTime=a.config.xAxisTime;this.yAxisTime=a.config.yAxisTime}}else{this.fVf()}}if(CanvasXpress.graphTypes.OneDGraphs.includes(this.graphType)){if(this.yAxis.length){if(this.data.y.vars.includes(this.yAxis[0])){this.graphOrientation="vertical";if(this.xAxisTitle){this.smpTitle=this.xAxisTitle}if(this.yAxisTitle){this.xAxisTitle=this.yAxisTitle}}else{if(this.data.y.smps.includes(this.yAxis[0])){this.graphOrientation="horizontal";if(this.yAxisTitle){this.smpTitle=this.yAxisTitle}}}}else{if(this.yAxisTitle){this.smpTitle=this.yAxisTitle}}}if(this.data&&(this.data.y||this.data.venn||this.data.nodes||this.data.tracks||this.data.fx)){if(this.data.fx){this.cqd()}if(this.data.venn){if(this.graphType=="Venn"){this.summaryType="venn"}this.validGraphTypes.push("Venn")}if(this.data.nodes){if(this.graphType=="Network"){this.summaryType="network"}this.validGraphTypes.push("Network")}if(this.data.tracks){if(this.graphType=="Genome"){this.summaryType="genome"}this.validGraphTypes.push("Genome")}if(this.data.y){this.llmHeader=this.H8L();if(!this.data.y&&!this.data.y.cor&&!this.data.y.close){alert("Dude! there is not a valid data structure");return}else{if(this.data.y.data){this.isRawData=true;this.summaryType=this.summaryType&&this.summaryType.match(/iqr|median|mean|cor|sum|max|min|count|gantt/)?this.summaryType:"raw";if(this.summaryType=="cor"){this.graphType="Correlation"}else{if(this.summaryType=="iqr"){this.graphType="Boxplot"}else{if(this.summaryType=="gantt"){this.graphType="Gantt"}else{if(this.data.y[this.summaryType]){if(this.Fvn(this.data.y[this.summaryType],this.data.y.data)){this.isRawData=false}}}}}if(this.graphType=="Gantt"){var i=this.mlX(this.ganttStart?this.ganttStart:this.xAxis[0]?this.xAxis[0]:this.data.y.vars[0]);this.ganttStart=this.data.y.vars[i];i=this.mlX(this.ganttEnd?this.ganttEnd:this.xAxis[1]?this.xAxis[1]:this.data.y.vars[1]?this.data.y.vars[1]:this.data.y.vars[0]);this.ganttEnd=this.data.y.vars[i]||this.data.y.vars[0];g=true}else{if(this.graphType=="Scatter2D"&&this.scatterType&&this.scatterType.match(/manhattan/)){this.Oai()}}}else{this.isRawData=false;if(this.data.y.iqr1&&this.data.y.qtl1&&this.data.y.median&&this.data.y.qtl3&&this.data.y.iqr3){this.summaryType="iqr"}else{if(this.data.y.median){this.summaryType="median"}else{if(this.data.y.mean){this.summaryType="mean"}else{if(this.data.y.cor){this.summaryType="cor"}else{if(this.data.y.sum){this.summaryType="sum"}else{if(this.data.y.max){this.summaryType="max"}else{if(this.data.y.min){this.summaryType="min"}else{if(this.data.y.count){this.summaryType="count"}else{this.summaryType=false}}}}}}}}}}this.validGraphTypes.push("Bar");this.validGraphTypes.push("Line");this.validGraphTypes.push("Area");this.validGraphTypes.push("AreaLine");this.validGraphTypes.push("BarLine");this.validGraphTypes.push("Boxplot");this.validGraphTypes.push("Dotplot");this.validGraphTypes.push("DotLine");this.validGraphTypes.push("Heatmap");this.validGraphTypes.push("Stacked");this.validGraphTypes.push("StackedLine");this.validGraphTypes.push("StackedPercent");this.validGraphTypes.push("StackedPercentLine");this.validGraphTypes.push("Pie");this.validGraphTypes.push("Correlation");this.validGraphTypes.push("Circular");if(this.data.y.smps||this.isDOE){if(this.data.y.smps.length>2||this.isDOE){this.validGraphTypes.push("Scatter2D");this.validGraphTypes.push("ScatterBubble2D");this.validGraphTypes.push("Scatter3D")}else{if(this.data.y.smps.length>1||this.isDOE){this.validGraphTypes.push("Scatter2D")}}}}this.validGraphTypes.sort();this.UiE(false,false,j);if(g){this.soq()}}}};CanvasXpress.prototype.initDatasetRange=function(){this.ZZ3=function(aw,f,P,ag,H){var V=this;var o=this.isDOE?this.meta.data.layout.data[this.layoutCurrent||0]:false;var q=this.isGroupedData&&!f&&this.otE()?this.otE():this.data.y;var ah=this.graphType=="Scatter2D"&&this.scatterType=="visium"?CanvasXpress.cacheImages[this.backgroundImageMD5||this.AmM(this.backgroundImage)]:false;var t=this.jN3(true);var at=Number.POSITIVE_INFINITY;var I=Number.NEGATIVE_INFINITY;var x=Number.POSITIVE_INFINITY;var ac=Number.NEGATIVE_INFINITY;if(this.setMin!=null&&this.setMax!=null){this.minData=Number(this.setMin);this.maxData=Number(this.setMax);return}if(this.isGroupedData&&!aw&&!o){aw=this.graphType=="Boxplot"?"iqr":this.summaryType;if(this.graphType=="Boxplot"&&!this.isBoxplotCalc){this.ev3(this.groupingFactors,false,false,false,true);q=this.otE()}}if(this.isGroupedData&&!f&&this.otE()&&!ag&&!o&&!this.layoutCurrent){for(var ak=0;ak<q.min.length;ak++){if(q.min[ak]){for(var aj=0;aj<q.min[ak].length;aj++){if(!isNaN(q.min[ak][aj])){at=Math.min(at,q.min[ak][aj])}if(!isNaN(q.max[ak][aj])){I=Math.max(I,q.max[ak][aj])}}}}}else{if(this.graphType=="Meter"){var E;if(this.layoutValid&&this.segregateVariablesBy.length&&this.segregateSamplesBy.length){E=this.meta.data.layout.comp[this.layoutCurrent||0][0][0]}else{if(this.layoutValid&&this.segregateVariablesBy.length&&!this.segregateSamplesBy.length){E=this.layoutCurrent||0}else{if(this.layoutValid&&this.segregateSamplesBy.length){E=this.xAxis.length?this.mlX(this.xAxis[0]):0}else{E=this.layoutValid?(this.layoutCurrent||0):this.xAxis.length?this.mlX(this.xAxis[0]):0}}}this.meterIndex=E>=0?E:0;var Z=this.data.y.data[this.meterIndex];at=0;I=this.max(Z,true)}else{if(t){var D=this.varIndices.length;for(var ak=0;ak<D;ak++){var R=this.varIndices[ak];var B=this.smpIndices.length;var L=0;at=0;for(var aj=0;aj<B;aj++){var z=this.smpIndices[aj];var N=this.data.y.data[R][z];if(!isNaN(N)){L+=N;at=Math.min(L,at);I=Math.max(L,I)}}}}else{if(aw=="fish"){if(H=="xAxis"){at=this.fishTimepoints[0]-((this.fishTimepoints[this.fishTimepoints.length-1]-this.fishTimepoints[0])/5);I=this.fishTimepoints[this.fishTimepoints.length-1]}else{at=0;I=100}}else{if(aw=="genome"){var R=this.YnW().length;for(var ak=0;ak<R;ak++){var z=this.YnW()[ak].data.length;for(var aj=0;aj<z;aj++){if(this.YnW()[ak].type=="box"){var au=this.YnW()[ak].data[aj].data.length;for(var ai=0;ai<au;ai++){Z=this.YnW()[ak].data[aj].data[ai];I=Math.max(I,Math.max(Z[0],Z[1]));at=Math.min(at,Math.min(Z[0],Z[1]))}}else{if(this.YnW()[ak].type=="sequence"){Z=this.YnW()[ak].data[aj].offset;I=Math.max(I,Z+this.YnW()[ak].data[aj].sequence.length);at=Math.min(at,Z)}else{if(this.YnW()[ak].type.match(/bar|heatmap/)){Z=this.YnW()[ak].data[aj].offset;I=this.YnW()[ak].autowidth?Math.max(I,Z+this.YnW()[ak].data[aj].data.length):Math.max(I,Z);at=Math.min(at,Z)}else{if(this.YnW()[ak].type=="dataframe"){var au=this.YnW()[ak].data[0].data.length;for(var ai=0;ai<au;ai++){Z=this.YnW()[ak].dataframe[this.YnW()[ak].data[0].data[ai].xAxis];I=Math.max(I,Z[Z.length-1]);at=Math.min(at,Z[0])}}else{if(this.YnW()[ak].type=="marker"){var au=this.YnW()[ak].data[aj].data.length;for(var ai=0;ai<au;ai++){Z=this.YnW()[ak].data[aj].data[ai];I=Math.max(I,Z[Z.length-1]);at=Math.min(at,Z[0])}}else{Z=this.YnW()[ak].data[aj].offset;I=Math.max(I,Z);at=Math.min(at,Z)}}}}}}}}else{if(aw=="circular"){if(this.circularType=="chord"){this.circularChord=this.qRI();at=0;I=this.circularChord.total}else{var ap=H&&this[H].length?this.mlX(this[H]):this.mlX();if(ap>=0){var ae=this.Npb(this.data.y.data[ap]);at=ae[0];I=ae[1]}else{at=0;I=1}}}else{if(aw=="gantt"){if(!this.Skj()){this.isGanttDataFormated=false;this.soq()}var ak=this.mlX(this.ganttStart?this.ganttStart:this.xAxis[0]?this.xAxis[0]:this.data.y.vars[0]);this.ganttStart=this.data.y.vars[ak];var aj=this.mlX(this.ganttEnd?this.ganttEnd:this.xAxis[1]?this.xAxis[1]:this.data.y.vars[1]?this.data.y.vars[1]:this.data.y.vars[0]);this.ganttEnd=this.data.y.vars[aj]||this.data.y.vars[0];var ar=this.vBI(this.Skj());at=ar[ak].sort(function(d,c){return d-c})[0];I=ar[aj].sort(function(d,c){return c-d})[0]}else{if(aw=="km"&&!f){if(!this.layoutValid){this.oOM()}if(H=="y"){at=0;I=1}else{if(!this.meta.data.km){this.irv(true)}var ad=this.layoutValid&&this.meta.data.km.l.length?this.meta.data.km.l:this.meta.data.km.g;if(this.layoutValid&&this.meta.data.km.l.length){for(var ak=0;ak<ad.length;ak++){for(var aj=0;aj<ad[ak].length;aj++){at=Math.min(at,ad[ak][aj].data.time[0]);I=Math.max(I,ad[ak][aj].data.time[ad[ak][aj].data.time.length-1])}}}else{for(var ak=0;ak<ad.length;ak++){at=Math.min(at,ad[ak].data.time[0]);I=Math.max(I,ad[ak].data.time[ad[ak].data.time.length-1])}}}}else{if(aw=="qq"||aw=="cdf"){if(aw=="qq"){this.XrI()}else{this.gF6()}var m=aw=="cdf"?this.meta.data.cdf:this.meta.data.qq;if(!m){if(aw=="cdf"){this.wBa(true);m=this.meta.data.cdf}else{this.XUU(true);m=this.meta.data.qq}}var ad=this.layoutValid?m.l:m.g;if(this.layoutValid){for(var ak=0;ak<ad.length;ak++){for(var aj=0;aj<ad[ak].length;aj++){at=Math.min(at,ad[ak][aj].data[H][0]);I=Math.max(I,ad[ak][aj].data[H][ad[ak][aj].data[H].length-1])}}}else{for(var ak=0;ak<ad.length;ak++){at=Math.min(at,ad[ak].data[H][0]);I=Math.max(I,ad[ak].data[H][ad[ak].data[H].length-1])}}}else{if(aw=="density"&&q.density){var O=function(d){for(var c=1;c<V.meta.data.layout.name.length;c++){if(V.meta.data.layout.name[c]==d){return c-1}}return 0};if(H=="xAxis"){var ap=this.layoutCurrent||0;at=q.density[ap].histogram.breaks[0];I=q.density[ap].histogram.breaks[q.density[ap].histogram.breaks.length-1]}else{if(this.histogramAsDotplot&&H=="yAxis"){if(this.histogramStackDir!="down"){at=-0.5;I=0.5}else{at=0;I=1}}else{if(this.densityPosition.match(/filled|stacked/)){if(this.histogramStat=="count"){if(this.densityPosition=="filled"){I=q.global.maxY}else{if(this.densityPosition=="stacked"){I=q.global.maxY}}}else{if(this.densityPosition=="filled"){I=1}else{if(this.densityPosition=="stacked"){I=q.position.max}}}at=0}else{if(this.histogramType=="stacked"&&this.histogramStat=="count"){if(this.layoutValid&&this.meta.data.layout){for(var ak=0;ak<this.meta.data.layout.axes.length;ak++){var r=[];var l=0;for(var aj=0;aj<this.meta.data.layout.axes[ak].yAxis.length;aj++){var ap=O(this.meta.data.layout.axes[ak].yAxis[aj]);l+=q.density[ap].histogram.maxY}I=Math.max(I,l)}}else{I=q.global.maxY}at=0}else{if(this.histogramType=="stacked"){I=0}for(var ak=0;ak<this.smpIndices.length;ak++){if(this.histogramType=="stacked"){I+=q.density[this.smpIndices[ak]-1].globalMaxY}else{I=Math.max(I,q.density[this.smpIndices[ak]-1].globalMaxY)}}at=0}}}}}else{if(aw=="percentile"&&!f&&!ag){at=0;I=100}else{if((aw=="mean"||aw=="median"||aw=="sum"||aw=="max"||aw=="min"||aw=="count")&&!f){if(ag){if(this.dodgeBy){var aq=this.dodgeBy;this.dodgeBy=false;this.groupingFactors.push(aq);this.ev3(this.groupingFactors,false,false,false,true);I=this.maxData;at=this.minData;this.groupingFactors.pop();this.ev3(this.groupingFactors,false,false,false,true);this.dodgeBy=aq}else{I=0;at=0;ac=0;x=0;var h=this.Rpc();var ao=this.isTransformedData?q.trans:q[this.summaryType];var U=this.graphType=="Circular"&&this.showIdeogram;var C=U?[this.varIndices,h]:[h,this.varIndices];var v=C[0].length;for(var ak=0;ak<v;ak++){var R=C[0][ak];var e=0;var g=0;var w=C[1].length;for(var aj=0;aj<w;aj++){var z=this.isGroupedData?aj:C[1][aj];var N=U?ao[R][z]:ao[z][R];if(!isNaN(N)){x=Math.min(N,x);ac=Math.max(N,ac);if(N>0){e+=N}else{if(N<0){g+=N}}}}I=Math.max(e,I);at=Math.min(g,at)}}}else{var D=this.isDOE&&this.isDOE==1?this.data.y.vars.length:this.varIndices.length;for(var ak=0;ak<D;ak++){var R=this.varIndices[ak];if(R==undefined){continue}var Z;var af;if(this.isTransformedData){Z=q.trans[R]||q.trans[ak];af=q.tstdev?(q.tstdev[R]||q.tstdev[ak]):false}else{if(this.summaryType=="mean"){Z=q.mean[R]||q.mean[ak]}else{if(this.summaryType=="median"){Z=q.median[R]||q.median[ak]}else{if(this.summaryType=="sum"){Z=q.sum[R]||q.sum[ak]}else{if(this.summaryType=="max"){Z=q.max[R]||q.max[ak]}else{if(this.summaryType=="min"){Z=q.min[R]||q.min[ak]}else{if(this.summaryType=="count"){Z=q.count[R]||q.count[ak]}}}}}}af=q.stdev?(q.stdev[R]||q.stdev[ak]):false}if(Z){var am=Z.length;for(var aj=0;aj<am;aj++){var aa;var N=Z[aj];if(af){aa=af[aj]/2}else{aa=Number.NaN}if(!isNaN(N)){if(!isNaN(aa)){if(P){if(N>0){at=Math.min(N-aa,at);I=Math.max(N+aa,I)}}else{at=Math.min(N-aa,at);I=Math.max(N+aa,I)}}else{if(P){if(N>0){at=Math.min(N,at);I=Math.max(N,I)}}else{at=Math.min(N,at);I=Math.max(N,I)}}}}}}}}else{if(this.summaryType=="mean"&&!this.isRawData){var R=this.isDOE&&this.isDOE==1?this.data.y.vars.length:this.varIndices.length;for(var ak=0;ak<R;ak++){if(this.varIndices[ak]==undefined){continue}var z=this.smpIndices.length;for(var aj=0;aj<z;aj++){var N=q.mean[this.varIndices[ak]][this.smpIndices[aj]];var al=q.stdev&&q.stdev[this.varIndices[ak]]&&q.stdev[this.varIndices[ak]][this.smpIndices[aj]]/2?q.stdev[this.varIndices[ak]][this.smpIndices[aj]]/2:0;if(!isNaN(N)){if(!isNaN(al)){at=Math.min(N-al,at);I=Math.max(N+al,I)}else{at=Math.min(N,at);I=Math.max(N,I)}}}}}else{if((aw=="iqr"&&!f&&this.grpIndices)||(this.summaryType=="iqr"&&!this.isRawData)){var D=this.isDOE&&this.isDOE==1?this.data.y.vars.length:this.varIndices.length;for(var ak=0;ak<D;ak++){var R=this.varIndices[ak];var K=this.grpIndices?this.grpIndices:this.smpIndices;var av=K.length;if(q.iqr1[R]){for(var aj=0;aj<av;aj++){var z=K[aj];var A=q.iqr1[R][z];var y=q.iqr3[R][z];var X=q.out[R][z];if(!isNaN(A)&&!isNaN(y)){if(P){if(A>0&&y>0){at=Math.min(A,at);I=Math.max(y,I)}}else{at=Math.min(A,at);I=Math.max(y,I)}}if(X){var S=X.length;for(var ai=0;ai<S;ai++){if(!isNaN(X[ai])){if(P){if(X[ai]>0){at=Math.min(X[ai],at);I=Math.max(X[ai],I)}}else{at=Math.min(X[ai],at);I=Math.max(X[ai],I)}}}}}}}}else{if(aw=="cor"){var h=this.correlationAxis=="variables"?this.varIndices:this.Rpc();var R=h.length;for(var ak=0;ak<R;ak++){var z=h.length;for(var aj=0;aj<z;aj++){var N=this.isTransformedData&&q.trans?q.trans[ak][aj]:q.cor[ak][aj];if(!isNaN(N)){if(P){if(N>0){at=Math.min(N,at);I=Math.max(N,I)}}else{at=Math.min(N,at);I=Math.max(N,I)}}}}}else{if(o){var z=H=="xAxis"?0:1;if(this.graphType=="Scatter2D"){for(var ak=0;ak<o.y.data.length;ak++){var N=o.y.data[ak][z];if(!isNaN(N)){at=Math.min(N,at);I=Math.max(N,I)}}}else{for(var ak=0;ak<o.y.data[z].length;ak++){var N=o.y.data[z][ak];if(!isNaN(N)){at=Math.min(N,at);I=Math.max(N,I)}}}}else{var ao=this.isTransformedData&&q.trans?q.trans:q.data;var a=ah?ah.height:false;if(ao&&ao.length>0){if(ag){var U=this.graphType=="Circular"&&this.showIdeogram;var C=U?[this.varIndices,this.smpIndices]:[this.smpIndices,this.varIndices];var v=C[0].length;I=0;at=0;ac=0;x=0;for(var ak=0;ak<v;ak++){var e=0;var g=0;var w=C[1].length;for(var aj=0;aj<w;aj++){var N=U?ao[C[0][ak]][C[1][aj]]:ao[C[1][aj]][C[0][ak]];if(!isNaN(N)){x=Math.min(N,x);ac=Math.max(N,ac);if(N>0){e+=N}else{if(N<0){g+=N}}}}I=Math.max(e,I);at=Math.min(g,at)}}else{var R=this.workflowBy||(this.isDOE&&this.isDOE==1)?this.data.y.vars.length:this.varIndices.length;for(var ak=0;ak<R;ak++){if(this.varIndices[ak]==undefined){continue}var z=this.smpIndices.length;for(var aj=0;aj<z;aj++){var J=this.workflowBy?ak:this.varIndices[ak];if(ao[J]){var N=a?a-ao[J][this.smpIndices[aj]]:ao[J][this.smpIndices[aj]];if(!isNaN(N)){if(P){if(N>0){at=Math.min(N,at);I=Math.max(N,I)}}else{at=Math.min(N,at);I=Math.max(N,I)}}}}}if(this[H+"Transform"]=="sqrt"){at=Math.sqrt(at);I=Math.sqrt(I)}}}}}}}}}}}}}}}}}}}if(this.graphType=="Boxplot"&&this.showViolinBoxplot&&!this.violinTrim){var u=this.meta.data.ydensity;if(this.isGroupedData){u=u.g;var R=u.length;for(var ak=0;ak<R;ak++){var z=u[ak].length;for(var aj=0;aj<z;aj++){var an=u[ak][aj].density.xy;if(an.length){if(!isNaN(an[0][0])){at=Math.min(at,an[0][0])}if(!isNaN(an[an.length-1][0])){I=Math.max(I,an[an.length-1][0])}}}}if(aw.match(/log/)){if(at<=0){at=Math.max(Number.MIN_VALUE,at)}if(I<=0){I=Math.max(Number.MIN_VALUE,I)}}}else{u=u.v;var R=u.length;for(var ak=0;ak<R;ak++){var an=u[ak].density.xy;if(an.length){if(!isNaN(an[0][0])){at=Math.min(at,an[0][0])}if(!isNaN(an[an.length-1][0])){I=Math.max(I,an[an.length-1][0])}}}}}else{if(this.graphType=="Scatter2D"&&this.scatterType=="visium"){var Q=CanvasXpress.cacheImages[this.backgroundImageMD5||this.AmM(this.backgroundImage)];at=0;I=H.match(/y/i)?Q.height:Q.width}else{if(this.graphType=="Scatter2D"&&this.ribbonBy){var ao=this.isTransformedData&&q.trans?q.trans:q.data;var u=this.meta.data;if(this.Zuk(this.ribbonBy)){if(this.Zuk(this.ribbonBy[0])&&this.Zuk(this.ribbonBy[1])&&H=="yAxis"){for(var ak=0;ak<this.ribbonBy[0].length;ak++){var n=this.ribbonBy[0][ak];var b=this.ribbonBy[1][ak];if(!isNaN(n)){at=Math.min(n,at)}if(!isNaN(b)){I=Math.max(b,I)}}}else{if(u.z&&u.z.hasOwnProperty(this.ribbonBy[0])&&u.z[this.ribbonBy[0]].type=="Numeric"&&u.z.hasOwnProperty(this.ribbonBy[1])&&u.z[this.ribbonBy[1]].type=="Numeric"){for(var ak=0;ak<this.varIndices.length;ak++){var b=this.data.z[this.ribbonBy[0]][this.varIndices[ak]];var n=this.data.z[this.ribbonBy[1]][this.varIndices[ak]];if(!isNaN(b)){at=Math.min(b,at);I=Math.max(b,I)}if(!isNaN(n)){at=Math.min(n,at);I=Math.max(n,I)}}}else{var T=this.OKx(this.ribbonBy);if(this.Zuk(T)&&H=="yAxis"){for(var ak=0;ak<this.varIndices.length;ak++){for(var aj=0;aj<this.smpIndices.length;aj++){var b=ao[this.varIndices[ak]][T[0]];var n=ao[this.varIndices[ak]][T[1]];if(!isNaN(b)){at=Math.min(b,at);I=Math.max(b,I)}if(!isNaN(n)){at=Math.min(n,at);I=Math.max(n,I)}}}}}}}else{if(u.z&&u.z.hasOwnProperty(this.ribbonBy)&&u.z[this.ribbonBy].type=="Numeric"){for(var ak=0;ak<this.varIndices.length;ak++){var aa=this.data.z[this.ribbonBy][this.varIndices[ak]];for(var aj=0;aj<this.smpIndices.length;aj++){var N=ao[this.varIndices[ak]][this.smpIndices[aj]];if(!isNaN(N)&&!isNaN(aa)){at=Math.min(N-aa,at);I=Math.max(N+aa,I)}}}}else{for(var ak=0;ak<this.varIndices.length;ak++){for(var aj=0;aj<this.smpIndices.length;aj++){var N=ao[this.varIndices[ak]][this.smpIndices[aj]];var aa=ao[this.varIndices[ak]][T];if(!isNaN(N)&&!isNaN(aa)){at=Math.min(N-aa,at);I=Math.max(N+aa,I)}}}}}}else{if(this.showHistogram||this.isDOE){var ab=this.k2q();if(ab){if(this.isDOE){if(this.isDOE&&this.layoutCurrent&&this.meta.data.layout.data&&this.meta.data.layout.data[this.layoutCurrent]&&this.meta.data.layout.params&&!this.meta.data.layout.params[this.layoutCurrent].showHistogram){}else{if(H=="xAxis"){at=ab.histogram?ab.histogram.breaks[0]:ab.density.histogram.breaks[0];I=ab.histogram?ab.histogram.breaks[ab.histogram.breaks.length-1]:ab.density.histogram.breaks[ab.density.histogram.breaks.length-1]}else{if(H=="yAxis"){switch(this.densityPosition){case"filled":at=0;I=ab.density?ab.density.histogram.maxY:ab.histogram.maxY;break;case"stacked":at=0;I=ab.density?ab.density.histogram.maxY:ab.histogram.maxY;break;default:at=0;I=this.histogramType=="stacked"&&ab.density?ab.density.histogram.maxY:this.histogramType=="stacked"?ab.histogram.maxY:this.layoutCurrent?ab.histogram.maxY:this.max(ab.summary.cols);break}}}}}else{if(H=="xAxis"){at=ab.density.minData;I=ab.density.maxData}else{if(H=="yAxis"){if(this.histogramStat=="count"){switch(this.densityPosition){case"filled":at=0;I=this.layoutValid?ab.summary.globalMaxCount:ab.density.histogram.maxY;break;case"stacked":at=0;I=this.layoutValid?ab.summary.globalMaxCount:ab.density.histogram.maxY;break;default:at=0;I=this.layoutValid&&this.histogramType=="stacked"?ab.summary.globalMaxCount:this.histogramType=="stacked"?ab.density.histogram.maxY:this.max(ab.summary.cols);break}}else{if(this.histogramStat=="density"){switch(this.densityPosition){case"filled":at=0;I=1;break;case"stacked":at=0;I=ab.summary.position.max;break;default:at=0;I=ab.summary.globalMaxY;break}}}}}}}}else{if(this.graphType=="Scatter2D"&&this.colorBy&&this.scatterType=="area"&&H=="yAxis"){this.zVg();if(this.meta.data.area){var ab=this.layoutValid?this.meta.data.area.layout[this.layoutCurrent||0]:this.meta.data.area;at=0;I=ab.maxY}}else{if(this.graphType=="Scatter2D"&&(this.colorBy||this.yAxis.length>1)&&!this.dataPointSizeScaleFactor&&this.scatterType=="stream"){if(H=="xAxis"){var G=(I-at)*this.scatterStreamExtraSpan;at-=G;I+=G}else{if(H=="yAxis"){this.krH();if(this.meta.data.stream){var ab=this.layoutValid?this.meta.data.stream.layout[this.layoutCurrent||0]:this.meta.data.stream;switch(this.scatterStreamType){case"mirror":at=-ab.maxY;I=ab.maxY;break;case"ridge":at=0;I=ab.maxY*2;break;case"proportional":at=0;I=1;break;default:at=ab.minY;I=ab.maxY;break}}}}}else{if(this.graphType=="Scatter2D"&&H=="yAxis"&&(this.showLoessFit||this.showRegressionFit||this.showQuantileRegressionFit)){if(this.showLoessFit){this.vI9()}if(this.showRegressionFit){this.N5e()}if(this.showQuantileRegressionFit){this.b3E()}var Y=Number.POSITIVE_INFINITY;var F=Number.NEGATIVE_INFINITY;var M=[this.meta.data.loess,this.meta.data.regression,this.meta.data.quantile];for(var S=0;S<M.length;S++){var W=M[S];if(W&&W.minY!=null&&W.minY<Number.POSITIVE_INFINITY){Y=Math.min(Y,W.minY)}if(W&&W.maxY!=null&&W.maxY>Number.NEGATIVE_INFINITY){F=Math.max(F,W.maxY)}}if(Y<Number.POSITIVE_INFINITY&&F>Number.NEGATIVE_INFINITY){if(this.dataPointSizeScaleFactor){at=Math.min(at,Y);I=Math.max(I,F)}else{at=Y;I=F}}}}}}}}}if(this.decorations){if(this.decorations.error){for(var ak=0;ak<this.decorations.error.length;ak++){if(this.graphType=="Scatter2D"){}else{at=Math.min(at,this.decorations.error[ak].min);I=Math.max(I,this.decorations.error[ak].max)}}}if(this.decorations.marker){for(var ak=0;ak<this.decorations.marker.length;ak++){if(this.decorations.marker[ak].type=="pwc"){I=Math.max(I,this.decorations.marker[ak].ymax)}}}if(this.decorations.text){for(var ak=0;ak<this.decorations.text.length;ak++){if(this.decorations.text[ak].value!=null){at=Math.min(at,this.decorations.text[ak].value);I=Math.max(I,this.decorations.text[ak].value)}}}}this.minData=this.setMin!=null?this.setMin:at==Number.POSITIVE_INFINITY||at==Number.NEGATIVE_INFINITY?0:at;this.maxData=this.setMax!=null?this.setMax:I==Number.NEGATIVE_INFINITY||I==Number.POSITIVE_INFINITY?1:I;if(ag&&aw!="percentile"){this.minDataStacked=x;this.maxDataStacked=ac}};this.JtO=function(r,a,j,f){this.filterFitIndices=[];for(var l=0;l<this.varIndices.length;l++){this.filterFitIndices.push(false)}var p=r!=null?(this.layoutParams?this.layoutParams[r].setMinX:null):this.setMinX;var o=r!=null?(this.layoutParams?this.layoutParams[r].setMaxX:null):this.setMaxX;var n=r!=null?(this.layoutParams?this.layoutParams[r].setMinY:null):this.setMinY;var m=r!=null?(this.layoutParams?this.layoutParams[r].setMaxY:null):this.setMaxY;var c=this.Mr8(this.scatterPlotMatrix?a:this.xAxisIndices[a],"x",f);var b=this.Mr8(this.scatterPlotMatrix?j:this.yAxisIndices[j],"y",f);for(var l=0;l<c.length;l++){var d=this.varIndices[l];var k=c[l];var h=b[l];if(k==null||h==null||isNaN(k)||isNaN(h)){if(f){this.filterFitIndices[f[l]]=true}else{this.filterFitIndices[d]=true}}else{var s=(p===null||k>=p)&&(o===null||k<=o);var e=(n===null||h>=n)&&(m===null||h<=m);if(s&&e){}else{if(f){this.filterFitIndices[f[l]]=true}else{this.filterFitIndices[d]=true}}}}for(var l=0;l<c.length;l++){if(c[l]==null||b[l]==null||isNaN(c[l])||isNaN(b[l])){c.splice(l,1);b.splice(l,1);l--}}if(this.skipFilterFit&&(p===null||p<=o)&&(n===null||n<=m)){return[c,b]}this.skipFilterFit=false;var g=[];var q=[];for(let l=0;l<c.length;l++){var k=c[l];var h=b[l];var s=(p===null||k>=p)&&(o===null||k<=o);var e=(n===null||h>=n)&&(m===null||h<=m);if(s&&e){g.push(k);q.push(h)}}return[g,q]}};CanvasXpress.prototype.initDatasetReshape=function(){this.U8i=function(e,h){this.onX();this.F7e();if(this.ql8()){return}var b=this.Urb();this.isPivot=true;this.colorBy=false;var f={y:{data:[],vars:[],smps:[]}};this.qPC(true);if(this.isGroupedData){this.iBN(true)}var g=e.shift();for(var d=0;d<e.length;d++){f.y.vars.push(e[d][0]);var a=[];for(var c=1;c<g.length;c++){a.push(e[d][c])}f.y.data.push(a)}g.shift();f.y.smps=g;this.CzN(f,true);this.data.y.unpivoted=b;if(b.config.segregateVariablesBy.length||b.config.segregateSamplesBy.length){this.OYP(b.config.segregateVariablesBy,b.config.segregateSamplesBy,true)}this.Doz();if(b.config.groupingFactors.length){this.groupingFactors=this.QWl(b.config.groupingFactors);this.zA5([cat],true,"groupingFactors")}if(!h){this.U4z({func:"pivot",par:[e,h]})}};this.c8U=function(e,f){this.onX();this.F7e();if(this.ql8()){return}if(this.isPivot||!this.hxz()){return}var y=this.Urb();var N={y:{vars:[],smps:[],data:[]}};var b=function(c){var d=[];for(var k=0;k<h.length;k++){if(h[k]!=e){var j=L.x[h[k]][c];if(j===false){j="false"}else{if(j===null){j="null"}else{if(j===true){j="true"}}}d.push(j.toString().replace("\x00",""))}}return d.length?d.join("\x00"):"x"+c};var G=this.meta.data.x[e];this.qPC(true);if(this.isGroupedData){this.iBN(true)}var h=this.NtX(this.data.x);G=this.meta.data.x[e]||G;var L=this.data;var r=G?G.levels:undefined;r=(r||[]).map(function(c){if(c===null){return"null"}if(c===true){return"true"}if(c===false){return"false"}return String(c)});var H=r.length;var B=[];var A={};for(var K=0;K<H;K++){B[K]={};for(var J=0;J<L.y.smps.length;J++){var s=L.x[e][J];if(s===false){s="false"}else{if(s===null){s="null"}else{if(s===true){s="true"}}}if(s==r[K]){var M=b(J);if(!B[K][M]){B[K][M]=[]}B[K][M].push(J)}if(M!=null){A[M]=true}}}for(var M in A){var g=0;for(var K=0;K<H;K++){if(B[K].hasOwnProperty(M)){g=Math.max(g,B[K][M].length)}}A[M]=g}for(var K=0;K<H;K++){for(J=0;J<L.y.vars.length;J++){N.y.data[K+J]=[];if(L.y.vars.length==1){N.y.vars.push(r[K].replace("\x00",""))}else{N.y.vars.push(L.y.vars[J]+"::"+r[K].replace("\x00",""))}for(var M in A){var F=this.elc(B[K]);for(var I=0;I<A[M];I++){if(K==0&&J==0){N.y.smps.push(M);var E=M.split("\x00");var D=0;for(var C=0;C<h.length;C++){if(h[C]!=e){if(!N.x){N.x={}}if(!N.x.hasOwnProperty(h[C])){N.x[h[C]]=[]}N.x[h[C]].push(E[D++])}}}if(B[K].hasOwnProperty(M)&&B[K][M][I]!=null){N.y.data[K+J].push(L.y.data[J][B[K][M][I]])}else{N.y.data[K+J].push(null)}}}}}for(var M in N.x){if(this.HJq(N.x[M])){N.y.smps=N.x[M];delete (N.x[M]);break}}if(N.y.data.length!=N.y.vars.length||N.y.data[0].length!=N.y.smps.length){if(y.config.segregateVariablesBy.length||y.config.segregateSamplesBy.length){this.OYP(N.config.segregateVariablesBy,N.config.segregateSamplesBy)}this.Doz();if(y.config.groupingFactors.length){this.groupingFactors=this.QWl(y.config.groupingFactors)}if(!this.isCxplot){alert("Invalid Pivoting")}return}else{this.isPivot=true;this.colorBy=false;y.factor=e}if(N.y.vars.includes("null")){var a=null;for(var K=0;K<N.y.vars.length;K++){if(N.y.vars[K]=="null"){a=K;break}}if(a!=null){N.y.vars.splice(a,1);N.y.data.splice(a,1)}}this.CzN(N,true);this.data.y.unpivoted=y;this.Doz();if(y.config.groupingFactors.length){this.groupingFactors=this.QWl(y.config.groupingFactors);this.zA5([e],true,"groupingFactors")}if(y.config.segregateVariablesBy.length||y.config.segregateSamplesBy.length){this.OYP(y.config.segregateVariablesBy,y.config.segregateSamplesBy,true)}if(!f){this.U4z({func:"pivotX",par:[e,f]})}};this.XL7=function(h,a,g){var c=[];var f=this.data;for(var b=0;b<f.y.smps.length;b++){c.push([f.x[h][b],f.x[a][b],f.y.data[0][b]])}var e=this.JhB(c,0,1,2);return this.U8i(e,g)};this.RbD=function(m,a,f,c){var e=[];var k;var h=this.data;if(h.x.hasOwnProperty(m)){for(var g=0;g<h.y.smps.length;g++){e.push([h.x[m][g],h.y.data[0][g],h.y.data[1][g]])}if(h.y.vars[0]==a){k=this.JhB(e,0,1,2)}else{if(h.y.vars[1]==a){k=this.JhB(e,0,2,1)}}}else{if(h.x.hasOwnProperty(a)){for(var g=0;g<h.y.smps.length;g++){e.push([h.x[a][g],h.y.data[0][g],h.y.data[1][g]])}if(h.y.vars[0]==m){k=this.JhB(e,1,0,2)}else{if(h.y.vars[1]==m){k=this.JhB(e,2,0,1)}}}}if(f){var l=this.QWl(k[0]);l.shift();l.unshift(0);e=[];for(var g=0;g<k.length;g++){e[g]=[];for(var b=0;b<l.length;b++){e[g][l[b]]=k[g][b]}}for(var g=0;g<f.length;g++){e[0][g+1]=f[g]}k=e}return this.U8i(k,c)};this.cHn=function(e,a,d){var c;e=this.mlX(e);a=this.mlX(a);for(var b=0;b<this.data.y.vars.length;b++){if(b!=e&&b!=a){c=b;break}}return this.U8i(this.JhB(this.J4e(this.data.y.data),e,a,c),d)};this.RPW=function(f){var h=f.x;var g=f.z;if(h){f.z=h}else{delete (f.z)}if(g){f.x=g}else{delete (f.x)}var l=f.y.smps;f.y.smps=f.y.vars;f.y.vars=l;var k=f.y.data;f.y.data=[];var b=f.y.vars.length;for(var c=0;c<b;c++){f.y.data[c]=[];var e=f.y.smps.length;for(var a=0;a<e;a++){f.y.data[c][a]=k[a][c]}}return f};this.Urb=function(){var a={data:this.vBI(this.data),config:this.ZlV()};if(this.toDoPivot){a.config.colorBy=this.toDoPivot;a.config.groupingFactors.push(this.toDoPivot)}a.config.groupingFactors=this.QWl(this.groupingFactors);a.config.segregateVariablesBy=this.QWl(this.segregateVariablesBy);a.config.segregateSamplesBy=this.QWl(this.segregateSamplesBy);return a};this.WVh=function(b){this.onX();if(this.ql8()){return}if(this.isPivot){var a=this.vBI(this.data.y.unpivoted);this.colorBy=a.config.colorBy;this.qPC(true);if(this.isGroupedData){this.iBN(true)}this.CzN(a.data,true);if(a.config.groupingFactors.length){this.ev3(a.config.groupingFactors,false,false,false,true)}this.isPivot=false;if(a.config.segregateVariablesBy.length||a.config.segregateSamplesBy.length){this.OYP(a.config.segregateVariablesBy,a.config.segregateSamplesBy,true)}if(!b){this.U4z({func:"removePivot",par:[b]})}}};this.c2i=function(y,f,a){if(this.ql8()){return}this.onX();if(this.graphType.match(/Gantt/)){this.FmO(100,100,"Data transpose not allowed for Gantt graphs",5000);return}if(this.graphType=="Bar"&&this.barType=="lollipop"&&!a){this.FmO(100,100,"Data transpose not allowed for Lollipops",5000);return}this.F7e();var v=this.data;var r=this.meta.data;if(y){return this.J4e(y)}else{this.iBN(true);this.u1u("reset",false,false,true);if(this.meta.data.layout){delete this.meta.data.layout}var e=["varOverlays","varOverlayInfo","varOverlayProperties","varOverlaysStrLength","varOverlaysThicknessBottom","varOverlaysThicknessTop","varDendrogramNewick","colorVarDendrogramBy","heatmapVarSeparateBy","variablesClustered","segregateVariablesBy"];var g=["smpOverlays","smpOverlayInfo","smpOverlayProperties","smpOverlaysStrLength","smpOverlaysThicknessBottom","smpOverlaysThicknessTop","smpDendrogramNewick","colorSmpDendrogramBy","heatmapSmpSeparateBy","samplesClustered","segregateSamplesBy"];for(var u=0;u<e.length;u++){if(this[e[u]]||this[g[u]]){var n=this[e[u]];var o=this[g[u]];this[e[u]]=o;this[g[u]]=n}}var l=v.x;var k=v.z;if(l){v.z=l}else{delete (v.z)}if(k){v.x=k}else{delete (v.x)}var p=r.x;var c=r.z;r.x=c;r.z=p;for(var u in r.x){r.x[u].origin="x"}for(var u in r.z){r.z[u].origin="z"}var h=r.y.maxSmpChr;var b=r.y.maxSmpLen;var A=r.y.maxSmpStr;r.y.maxSmpChr=r.y.maxVarChr;r.y.maxSmpLen=r.y.maxVarLen;r.y.maxSmpStr=r.y.maxVarStr;r.y.maxVarChr=h;r.y.maxVarLen=b;r.y.maxVarStr=A;var q=v.y.smps;v.y.smps=v.y.vars;v.y.vars=q;var w=v.y.data;v.y.data=[];for(var u=0;u<v.y.vars.length;u++){v.y.data[u]=[];for(var t=0;t<v.y.smps.length;t++){v.y.data[u][t]=w[t][u]}}this.xAxis=[];this.yAxis=[];this.zAxis=[];this.CzN(this.data);this.Doz();this.ZJf(false,false,false,true);this.dataTableTransposed=!this.dataTableTransposed;if(!f){this.U4z({func:"transpose",par:[y,f]})}}};this.owt=function(m){var j=m||this.data;var l=[];if(!j||!j.y||!j.y.data){return l}var p=j.y.vars||[];var d=j.y.smps||[];var q=j.y.data;var h=j.x||{};var i=j.z||{};var k=[];for(var c in h){if(h.hasOwnProperty(c)){k.push(c)}}var r=[];for(var e in i){if(i.hasOwnProperty(e)){r.push(e)}}for(var n=0;n<p.length;n++){var f=q[n]||[];for(var o=0;o<d.length;o++){var g={};for(var u=0;u<k.length;u++){g[k[u]]=h[k[u]]?h[k[u]][o]:undefined}for(var t=0;t<r.length;t++){g[r[t]]=i[r[t]]?i[r[t]][n]:undefined}g["var"]=p[n];g.smp=d[o];g.value=f[o];l.push(g)}}return l};this.se7=function(){var a=this;return this.LjN("tidy",[],function(){return a.owt(a.data)})};this.yux=function(a){var b=a.col,d=a.op,c=a.value;return function(f){var e=f[b];switch(d){case"==":return e==c;case"===":return e===c;case"!=":return e!=c;case">":return e>c;case">=":return e>=c;case"<":return e<c;case"<=":return e<=c;case"in":return c&&c.indexOf(e)!==-1;default:return true}}};this.kxn=function(d,a){var e=typeof a==="function"?a:this.yux(a);var b=[];for(var c=0;c<d.length;c++){if(e(d[c],c)){b.push(d[c])}}return b};this.d8k=function(e,f){var c=[];for(var d=0;d<e.length;d++){var g=e[d];var a={};for(var b=0;b<f.length;b++){if(g.hasOwnProperty(f[b])){a[f[b]]=g[f[b]]}}c.push(a)}return c};this.Hel=function(k,g,f){var h=(typeof g==="string")?[g]:(g||[]);var e=(typeof f==="boolean")?[f]:(f||[]);var a=[];for(var d=0;d<k.length;d++){a.push({row:k[d],i:d})}a.sort(function(j,i){for(var l=0;l<h.length;l++){var o=j.row[h[l]],m=i.row[h[l]];var n=o<m?-1:(o>m?1:0);if(e[l]){n=-n}if(n!==0){return n}}return j.i-i.i});var c=[];for(var b=0;b<a.length;b++){c.push(a[b].row)}return c};this.Y61=function(f,b,e){var a=[];for(var d=0;d<f.length;d++){var g=f[d];var h={};for(var c in g){if(g.hasOwnProperty(c)){h[c]=g[c]}}h[b]=e(g,d);a.push(h)}return a};this.OEY=function(j,h){var a=h.col||"value";var e=[];for(var b=0;b<j.length;b++){var g=j[b][a];if(typeof g==="number"&&!isNaN(g)){e.push(g)}}var c=0;for(var k=0;k<e.length;k++){c+=e[k]}switch(h.agg){case"n":return j.length;case"sum":return c;case"mean":return e.length?c/e.length:NaN;case"min":return e.length?Math.min.apply(null,e):NaN;case"max":return e.length?Math.max.apply(null,e):NaN;case"median":if(!e.length){return NaN}var d=e.slice().sort(function(l,i){return l-i});var f=Math.floor(d.length/2);return d.length%2?d[f]:(d[f-1]+d[f])/2;case"first":return j.length?j[0][a]:undefined;default:return NaN}};this.JP8=function(t,n,d){var p=(typeof n==="string")?[n]:(n||[]);var b={};var e=[];for(var k=0;k<t.length;k++){var j=[];for(var o=0;o<p.length;o++){j.push(String(t[k][p[o]]))}var s=j.join("\x00");if(!b.hasOwnProperty(s)){b[s]=[];e.push(s)}b[s].push(t[k])}var h=[];for(var l=0;l<e.length;l++){var r=b[e[l]];var m={};for(var f=0;f<p.length;f++){m[p[f]]=r[0][p[f]]}for(var q=0;q<(d||[]).length;q++){m[d[q].name]=this.OEY(r,d[q])}h.push(m)}return h};this.Yo3=function(h,o,p,e){o=o||"smp";p=p||"value";e=e||["var"];var l=[];var d={};var u=[];var x={};var a={};for(var w=0;w<h.length;w++){var g=h[w];var b=g[o];if(!d.hasOwnProperty(b)){d[b]=true;l.push(b)}var y=[];for(var z=0;z<e.length;z++){y.push(String(g[e[z]]))}var B=y.join("\x00");if(!x.hasOwnProperty(B)){x[B]=true;var k={};for(var s=0;s<e.length;s++){k[e[s]]=g[e[s]]}u.push(k);a[B]={}}a[B][b]=g[p]}var A=[];for(var m=0;m<u.length;m++){var v=[];for(var q=0;q<e.length;q++){v.push(String(u[m][e[q]]))}var f=a[v.join("\x00")];var j=[];for(var t=0;t<l.length;t++){j.push(f.hasOwnProperty(l[t])?f[l[t]]:undefined)}A.push(j)}return{ids:u,names:l,data:A}};this.OqB=function(c,d){var a=c;for(var b=0;b<(d||[]).length;b++){var e=d[b];switch(e.op){case"filter":a=this.kxn(a,{col:e.col,op:e.cmp,value:e.value});break;case"select":a=this.d8k(a,e.cols);break;case"arrange":a=this.Hel(a,e.by,e.desc);break;case"mutate":a=this.Y61(a,e.col,e.fn);break;case"summarize":a=this.JP8(a,e.by,e.aggs);break;case"pivotWider":a=this.Yo3(a,e.namesFrom,e.valuesFrom,e.idCols);break;default:break}}return a};this.i4r=function(){var a=this.summaryType;if(a=="mean"){return"mean"}if(a=="median"||a=="iqr"){return"median"}if(a=="sum"){return"sum"}if(a=="max"){return"max"}if(a=="min"){return"min"}if(a=="count"){return"count"}return null};this.iwu=function(a,b){if(b=="mean"){return this.pjH(a,false)[0]}if(b=="median"){return this.rhA(a,false)[0]}if(b=="sum"){return this.sum(a,false)}if(b=="max"){return this.max(a,false)}if(b=="min"){return this.min(a,false)}if(b=="count"){return a.length}return Number.NaN};this.WEJ=function(){return[this.isGroupedData?1:0,this.isTransformedData?1:0,this.summaryType||"",(this.groupingFactors||[]).join("\x00")]};this.RtN=function(){var l=this.se7();if(!this.isGroupedData){if(!this.HJq(this.data.y.smps)||!this.HJq(this.data.y.vars)){return{mode:"ungrouped",skipped:true,data:null,names:null,vars:null}}var q=this.Yo3(l,"smp","value",["var"]);var o=[];for(var m=0;m<q.ids.length;m++){o.push(q.ids[m]["var"])}return{mode:"ungrouped",skipped:false,data:q.data,names:q.names,vars:o}}var h=this.i4r();var a=this.otE();if(!h||this.isTransformedData||!a||!a.grps){return{mode:"grouped",skipped:true,data:null,names:null,vars:null}}var g=this.data.y.smps;var f=g.length;var b=a.grps;var e=b.length;var w=[];for(var t=0;t<this.varIndices.length;t++){var n=this.varIndices[t];if(n==undefined){continue}var p=n*f;w[n]=[];for(var s=0;s<e;s++){var u=[];var c=b[s];var d=c?c.length:0;for(var r=0;r<d;r++){u.push(l[p+c[r]].value)}w[n][s]=this.iwu(u,h)}}return{mode:"grouped",skipped:false,data:w,names:a.smps,vars:this.data.y.vars}};this.Fp6=function(){var a=this;return this.LjN("wrangledDataProjection",this.WEJ(),function(){return a.RtN()})};this.gSI=function(h){if(!this.isGroupedData){return null}var c=this.otE();var e=h||(c?c.grps:null);if(!e){return null}var t=this.data;if(!t.x){return{}}var j=e.length;var n=this.meta.data.x;var l={};for(var y in t.x){if(!t.x.hasOwnProperty(y)){continue}var o=t.x[y];var r=n[y].type=="Numeric";var i=l[y]=[];for(var s=0;s<j;s++){var u=e[s];var v=u?u.length:0;var f;if(r){var q=[];for(var p=0;p<v;p++){var k=o[u[p]];if(!isNaN(k)){q.push(k)}}f=this.viJ(q)}else{var a={};for(var p=0;p<v;p++){var x=o[u[p]];if(x!=null&&x!==""){a[x]=true}}f=this.elc(a).join(" + ")}i.push(f)}if(n[y]["boolean"]){for(var w=0;w<i.length;w++){i[w]=i[w]!=="false"}}}return l};this.ALh=function(h){var o=this.summaryType;var m={mean:1,median:1,iqr:1,sum:1,min:1,max:1,count:1};if(!this.isGroupedData||!m[o]){return{skipped:true,type:o,stats:null}}var O=this.isTransformedData&&this.transformData&&this.dKT();var f=this.transformData;var a=this.otE();var b=h||(a?a.grps:null);if(!b){return{skipped:true,type:o,stats:null}}var u=this.KBZ();var E={};for(var A=0;A<u.length;A++){E[u[A]["var"]+"\x00"+u[A].smp]=u[A].value}var B=this.data.y.vars;var e=this.data.y.smps;var n=b.length;var N={};var d=function(i,k,g,r){if(!N[i]){N[i]=[]}if(!N[i][k]){N[i][k]=[]}N[i][k][g]=r};for(var G=0;G<this.varIndices.length;G++){var x=this.varIndices[G];if(x==undefined){continue}var q=B[x];for(var F=0;F<n;F++){var L=[];var c=b[F];var l=c?c.length:0;for(var D=0;D<l;D++){L.push(E[q+"\x00"+e[c[D]]])}if(O){for(var y=0;y<L.length;y++){L[y]=this.TWS(f,L[y])}}if(o=="iqr"){var z=this.Yim(L);d("mean",x,F,z[0]);d("median",x,F,z[2]);d("qtl1",x,F,z[1]);d("qtl3",x,F,z[3]);d("iqr1",x,F,z[4]);d("iqr3",x,F,z[5]);d("out",x,F,z[6]);d("n",x,F,z[7]);d("conf",x,F,z[8]?z[8]:[]);d("min",x,F,z[9]?z[9][0]:Number.NaN);d("max",x,F,z[9]?z[9][1]:Number.NaN);d("semean",x,F,this.tQR(L));if(O){d("trans",x,F,z[1])}}else{if(o=="median"){var I=this.rhA(L,false);d("min",x,F,this.min(L,false));d("max",x,F,this.max(L,false));d("median",x,F,I[0]);d("n",x,F,I[1]);if(O){d("trans",x,F,I[1])}}else{if(o=="mean"){var J=this.pjH(L,false);d("min",x,F,this.min(L,false));d("max",x,F,this.max(L,false));d("mean",x,F,J[0]);d("stdev",x,F,J[1]);d("n",x,F,J[2]);if(O){d("trans",x,F,J[0]);d("tstdev",x,F,J[1])}}else{if(o=="min"||o=="max"){var C=this.max(L,false);d("min",x,F,this.min(L,false));d("max",x,F,C);d("n",x,F,L.length);if(O){d("trans",x,F,C)}}else{if(o=="sum"){var K=this.sum(L,false);d("min",x,F,0);d("max",x,F,K);d("sum",x,F,K);d("n",x,F,L.length);if(O){d("trans",x,F,K)}}else{if(o=="count"){var s=L.length;d("min",x,F,0);d("max",x,F,s);d("count",x,F,s);d("n",x,F,s);if(O){d("trans",x,F,s)}}}}}}}}}if(o=="iqr"&&N.n){var p=this.smpIndices.length;for(var w=0;w<this.varIndices.length;w++){var M=this.varIndices[w];if(M==undefined||!N.n[M]){continue}for(var H=0;H<N.n[M].length;H++){d("nfac",M,H,Math.sqrt(N.n[M][H]/p)*2)}}}return{skipped:false,type:o,stats:N}};this.lIE=function(){var b=this.groupingFactors||[];if(this.isCxplot){return false}if(!this.wrangleBuildTarget&&this.segregateSamplesBy&&this.segregateSamplesBy.length){return false}return true};this.Kao=function(h){if(!this.isGroupedData||!this.lIE()){return{skipped:true,grps:null,grpIdxs:null,labs:null,smps:null,glab:null}}var D=this.groupingFactors||[];var A=this.data;if(!D.length||!A.x){return{skipped:true,grps:null,grpIdxs:null,labs:null,smps:null,glab:null}}var q=this.meta.data.x;var F=this.EBF(this.smpOverlays);var e=h||this.smpIndices;var C={};var o={};var w=[];for(var v=0;v<e.length;v++){var l=e[v];var n=[];var B=[];for(var u=0;u<D.length;u++){var p=D[u];var G=A.x[p]?A.x[p][l]:undefined;if(q[p]&&q[p].type=="Numeric"){G=G||"null"}else{G=G===false?"false":(G||"null")}n.push(G);if(!F.hasOwnProperty(p)){B.push(G)}}var z=n.join(" :: ");var k=B.length>0?B.join(" :: "):"";if(!C.hasOwnProperty(z)){C[z]=[];o[z]=k;w.push(z)}C[z].push(l)}if(D.length==1&&q[D[0]]&&q[D[0]].priority&&q[D[0]].levels){w=this.QWl(q[D[0]].levels)}var s=this.legendOrder;if(s&&s.hasOwnProperty(D[0])){var t=s[D[0]];w.sort(function(d,a){return t.indexOf(d.split(" :: ")[0])-t.indexOf(a.split(" :: ")[0])})}else{if(this.numericGroupSort){w.sort(function(M,L){var Q=M.split(" :: ");var i=L.split(" :: ");var J=Math.min(Q.length,i.length);for(var j=0;j<J;j++){var H=Q[j];var d=i[j];var I,f,P,g,O,N;I=Number(H);P=H!==""&&!isNaN(I);f=Number(d);g=d!==""&&!isNaN(f);if(!P){O=H.match(/^>(\d+(?:\.\d+)?)/);if(O){I=Number(O[1])+1e-8;P=true}}if(!P){O=H.match(/^<(\d+(?:\.\d+)?)/);if(O){I=Number(O[1])-1e-8;P=true}}if(!P){O=H.match(/^(\d+(?:\.\d+)?)/);if(O){I=Number(O[1]);P=true}}if(!g){N=d.match(/^>(\d+(?:\.\d+)?)/);if(N){f=Number(N[1])+1e-8;g=true}}if(!g){N=d.match(/^<(\d+(?:\.\d+)?)/);if(N){f=Number(N[1])-1e-8;g=true}}if(!g){N=d.match(/^(\d+(?:\.\d+)?)/);if(N){f=Number(N[1]);g=true}}var K=(P&&g)?(I-f):(H<d?-1:(H>d?1:0));if(K!==0){return K}}return Q.length-i.length})}else{w.sort()}}var c=this.groupingFactorLevelsOrder;var E=false;if(c&&typeof c==="object"){for(var y=0;y<D.length;y++){if(c.hasOwnProperty(D[y])){E=true;break}}}if(E){w.sort(function(j,g){var I=j.split(" :: ");var f=g.split(" :: ");for(var i=0;i<D.length;i++){if(c.hasOwnProperty(D[i])){var H=c[D[i]];var d=H.indexOf(String(I[i]));var a=H.indexOf(String(f[i]));if(d===-1){d=H.length}if(a===-1){a=H.length}if(d!==a){return d-a}}else{if(I[i]<f[i]){return -1}if(I[i]>f[i]){return 1}}}return 0})}var b=[];var m=[];var r=[];for(var x=0;x<w.length;x++){b.push(C[w[x]]);r.push(o[w[x]]);m.push(x)}return{skipped:false,grps:b,grpIdxs:m,labs:r,smps:w,glab:[]}};this.jhv=function(){var a=this.Kao(this.KON());if(a.skipped){return null}var d={grps:a.grps,grpIdxs:a.grpIdxs,labs:a.labs,smps:a.smps,glab:a.glab,vars:this.data.y.vars};var e=this.gSI(a.grps);d.factors=e||{};var b=this.ALh(a.grps);if(!b.skipped&&b.stats){for(var c in b.stats){if(b.stats.hasOwnProperty(c)){d[c]=b.stats[c]}}if(d.median){d.iqr=d.median}}return d};this.ZYw=function(b,d){if(this.tidyWrangleSource===false){return false}if(typeof CanvasXpress!=="undefined"&&CanvasXpress.tidyWrangleSource===false){return false}if(d||!b||!b.length||!this.isRawData||(this.layoutComb&&!this.wrangleBuildTarget)){return false}if(!this.data.x||!this.lIE()){return false}var c=this.coL();return{mean:1,median:1,iqr:1,sum:1,min:1,max:1,count:1}[c]?true:false};this.dKT=function(){var a=this.transformData;if(!a){return true}return{log2:1,log10:1,"-log2":1,"-log10":1,exp2:1,exp10:1,sqrt:1}[a]?true:false};this.coL=function(){return this.graphType=="Boxplot"?"iqr":this.graphType.match(/Stacked/i)?"sum":this.summaryType?this.summaryType:"mean"};this.f0W=function(r,p,d,q){this.summaryType=q;this.isBoxplotCalc=q=="iqr";var l=this.otE();var m=this.jhv();if(!l||!m){return false}l.grps=m.grps;l.grpIdxs=m.grpIdxs;l.labs=m.labs;l.smps=m.smps;l.glab=m.glab;l.factors=m.factors;var c=["mean","median","stdev","n","qtl1","qtl3","iqr1","iqr3","out","conf","nfac","min","max","sum","count","trans","tstdev"];for(var e=0;e<c.length;e++){if(m[c[e]]){l[c[e]]=m[c[e]]}}var u=["trans","tstdev","mean","median","stdev","qtl1","qtl3","iqr1","iqr3","out","conf","nfac","n","min","max","sum","count"];for(var o=0;o<u.length;o++){var t=u[o];if(!l[t]){l[t]=[]}for(var g=0;g<this.varIndices.length;g++){var b=this.varIndices[g];if(b!=undefined&&!l[t][b]){l[t][b]=[]}}}l.iqr=l.median;l.vars=[];for(var h=0;h<this.varIndices.length;h++){l.vars.push(this.data.y.vars[this.varIndices[h]])}this.grpIndices=[];if(p){for(var h=0;h<p.length;h++){this.grpIndices.push(p[h]);if(!d){this.hiddenGrps.push(false)}}}else{for(var h=0;h<l.grps.length;h++){this.grpIndices.push(h);if(!d){this.hiddenGrps.push(false)}}}var s=Number.POSITIVE_INFINITY;var n=Number.NEGATIVE_INFINITY;for(var h=0;h<l.min.length;h++){if(l.min[h]){for(var f=0;f<l.min[h].length;f++){s=Math.min(s,l.min[h][f]);n=Math.max(n,l.max[h][f])}}}l.scale=this[this.axisAlgorithm](s,n,this.xAxisTicks,this.isGraphTime,this.axisWilkinsonLoose);return true};this.FO7=function(){var e=this.wni();var a=this;var d=[];for(var f=0;f<e.length;f++){var g=e[f];if(g&&g.op==="mutate"&&typeof g.fn==="string"){var c=g.col||"value";var b=g.fn;d.push({op:"mutate",col:c,fn:(function(i,h){return function(j){return a.TWS(h,j[i])}})(c,b)})}else{d.push(g)}}return d};this.wni=function(){var a=this.Zuk(this.dataPipeline)?this.dataPipeline:[];var b=this.Zuk(this.tidyDataOps)?this.tidyDataOps:[];return a.concat(b)};this.KBZ=function(){var a=this;var b=this.FO7();return this.LjN("pipelineRows",[JSON.stringify(this.wni())],function(){return a.OqB(a.se7(),b)})};this.IlY=function(){var b=this.wni();for(var a=0;a<b.length;a++){if(b[a].op==="filter"){return true}}return false};this.KON=function(){if(!this.IlY()){return null}var f=this.KBZ();var a={};for(var e=0;e<f.length;e++){a[f[e].smp]=true}var g=this.data.y.smps;var d=[];var c=this.smpIndices;for(var b=0;b<c.length;b++){if(a.hasOwnProperty(g[c[b]])){d.push(c[b])}}return d};this.jxh=function(){if(this.tidyWrangleSource===false){return null}if(typeof CanvasXpress!=="undefined"&&CanvasXpress.tidyWrangleSource===false){return null}if(this.isTransformedData||this.isGroupedData){return null}var k=this.KBZ();var A={};for(var q=0;q<k.length;q++){A[k[q]["var"]+"\x00"+k[q].smp]=k[q].value}var t=this.data.y.vars;var d=this.data.y.smps;var e=[];var y=Number.POSITIVE_INFINITY;var u=Number.NEGATIVE_INFINITY;if(this.correlationAxis=="samples"){if((this.xAxisIndices&&this.xAxisIndices.length)||(this.yAxisIndices&&this.yAxisIndices.length)){return null}var h=this.Rpc();var g={};for(var m=0;m<h.length;m++){var I=h[m];var G=[];for(var n=0;n<this.varIndices.length;n++){var l=this.varIndices[n];if(l!=undefined){G.push(A[t[l]+"\x00"+d[I]])}}g[I]=G}for(var D=0;D<h.length;D++){var o=h[D];if(!e[o]){e[o]=[]}for(var B=D;B<h.length;B++){var F=h[B];if(!e[F]){e[F]=[]}if(D==B){e[o][F]=1}else{e[o][F]=this.m6v(g[o],g[F]);e[F][o]=e[o][F]}y=Math.min(y,e[o][F]);u=Math.max(u,e[o][F])}}}else{var f=this.isGroupedData?false:true;var E={};for(var z=0;z<this.varIndices.length;z++){var H=this.varIndices[z];var b=[];for(var p=0;p<d.length;p++){b.push(A[t[H]+"\x00"+d[p]])}E[H]=b}for(var x=0;x<this.varIndices.length;x++){var C=this.varIndices[x];if(!e[C]){e[C]=[]}for(var a=x;a<this.varIndices.length;a++){var w=this.varIndices[a];if(!e[w]){e[w]=[]}if(x==a){e[C][w]=1}else{e[C][w]=this.m6v(E[C],E[w],f);e[w][C]=e[C][w]}y=Math.min(y,e[C][w]);u=Math.max(u,e[C][w])}}}return{cor:e,min:[y],max:[u],scale:this[this.axisAlgorithm](y,u,5,this.isGraphTime,this.axisWilkinsonLoose)}};this.YdP=function(){if(!this.HJq(this.data.y.smps)||!this.HJq(this.data.y.vars)){return null}var h=this.KBZ();var l={};for(var a=0;a<h.length;a++){l[h[a]["var"]+"\x00"+h[a].smp]=h[a].value}var e=this.data.y.vars;var f=this.data.y.smps;var c=[];for(var d=0;d<e.length;d++){var k=[];for(var b=0;b<f.length;b++){var g=e[d]+"\x00"+f[b];k.push(l.hasOwnProperty(g)?l[g]:Number.NaN)}c.push(k)}return c}};CanvasXpress.prototype.initDatasetTransform=function(){this.TWS=function(b,c,a){switch(b){case"log2":return a?Math.pow(2,c):Math.log(c)/Math.LN2;case"log10":return a?Math.pow(10,c):Math.log(c)/Math.LN10;case"-log2":return a?-Math.pow(2,c):-Math.log(c)/Math.LN2;case"-log10":return a?-Math.pow(10,c):-Math.log(c)/Math.LN10;case"exp2":return a?Math.log(c)/Math.LN2:Math.pow(2,c);case"exp10":return a?Math.log(c)/Math.LN10:Math.pow(10,c);case"sqrt":return a?c*c:Math.sqrt(c);default:return c}};this.u1u=function(e,d,a,c){if(this.ql8()||this.graphType.match(/Area/)){return}this.F7e();this.dataVersion=(this.dataVersion||0)+1;if(!this.isGroupedData){this.M6X()}var b=this.transformData;this.transformData=e;this.transformAxis=d;this.xAxisMaxStrLength=false;this.xAxis2MaxStrLength=false;this.yAxisMaxStrLength=false;this.zAxisMaxStrLength=false;if(e=="reset"||e=="undo"){this.ZbD();this.transformData=false;this.isTransformedData=false;if(this.tempIndices){if(this.isGroupedData){this.grpIndices=this.tempIndices}else{this.smpIndices=this.tempIndices}this.tempIndices=false}}else{if(e=="save"){this.GKi();this.transformData=false;this.isTransformedData=false}else{if(e=="log2"||e=="log10"||e=="-log2"||e=="-log10"||e=="exp2"||e=="exp10"||e=="sqrt"){if(this.qeI(e)){this.isTransformedData=e}else{this.transformData=b;return}}else{if(e=="ratio2"||e=="ratio10"){this.hDu(e,a);this.isTransformedData=e}else{this.ShF(e,d,!this.isRawData||this.isGroupedData?this.EqB():0);this.isTransformedData=e}}}}delete (this.meta.def.colorBrew);if(this.graphType=="Boxplot"){this.summarizeBoxplot=true}this.Ef0();if(!c){this.U4z({func:"transform",par:[e,d,a,c]})}};this.ZbD=function(){var d=this.data.y;for(var b=0;b<this.varIndices.length;b++){var c=this.varIndices[b];for(var a=0;a<d.data[c].length;a++){if(d.trans&&d.trans[c]&&!isNaN(d.data[c][a])){d.trans[c][a]=d.data[c][a]}}}if(this.isGroupedData){this.isTransformedData=false;this.ev3(this.groupingFactors,false,false,false,true)}};this.GKi=function(){var a=this.isGroupedData?this.groupingFactors:false;var e=this.data.y;if(e.trans&&e.trans.length>0){this.iBN();for(var c=0;c<this.varIndices.length;c++){var d=this.varIndices[c];for(var b=0;b<e.data[d].length;b++){if(!isNaN(e.data[d][b])){e.data[d][b]=e.trans[d][b]}}}if(a){this.isTransformedData=false;this.ev3(a,false,false,false,true)}}};this.qeI=function(e){var g=this.data.y;var a=this.Hq7(g.data);if(e.match(/log/)){if(a[0]<=0){if(!this.nanOmit){alert("Cannot log transform values <= 0");return false}else{this.aru("Dropping values <= 0");alert("Dropping values <= 0")}}e=e=="log2"?"log2":e=="-log2"?"-log2":e=="-log10"?"-log10":"log10"}else{if(e.match(/exp/)){if(a[1]>=1000){alert("Cannot exp transform values > 1000");return false}e=e=="exp2"?"exp2":"exp10"}}if(!g.trans){g.trans=[]}if(!g.tstdev){g.tstdev=[]}var f=this.workflowBy?this.data.y.vars.length:this.isGroupedData?this.data.y.vars.length:!this.isDOE?this.data.y.vars.length:this.varIndices.length;for(var c=0;c<f;c++){var d=this.workflowBy||!this.isDOE?c:this.varIndices[c];if(!g.trans[d]){g.trans[d]=[]}if(!g.tstdev[d]){g.tstdev[d]=[]}for(var b=0;b<g.data[d].length;b++){if(!isNaN(g.data[d][b])){if(e=="log2"){this.transformBase=2;g.trans[d][b]=Math.log(g.data[d][b])/Math.LN2}else{if(e=="log10"){this.transformBase=10;g.trans[d][b]=Math.log(g.data[d][b])/Math.LN10}else{if(e=="-log2"){this.transformBase=2;g.trans[d][b]=-Math.log(g.data[d][b])/Math.LN2}else{if(e=="-log10"){this.transformBase=10;g.trans[d][b]=-Math.log(g.data[d][b])/Math.LN10}else{if(e=="exp2"){this.transformBase=2;g.trans[d][b]=Math.pow(2,g.data[d][b])}else{if(e=="exp10"){this.transformBase=10;g.trans[d][b]=Math.pow(10,g.data[d][b])}else{if(e=="sqrt"){g.trans[d][b]=Math.sqrt(g.data[d][b])}}}}}}}}}}if(this.isGroupedData){this.isTransformedData=e;this.ev3(this.groupingFactors,false,false,true,true)}return true};this.hDu=function(){var h=[];var n=this.data;var a=this.isGroupedData&&!this.graphType.match(/dotplot|boxplot/i)?this.otE():n.y;if(this.isGroupedData&&this.ratioGroupReference&&n.x.hasOwnProperty(this.ratioGroupReference)){if(!this.ratioLevelReference){for(var s=0;s<n.x[this.ratioGroupReference].length;s++){if(n.x[this.ratioGroupReference][s]!=null){this.ratioLevelReference=n.x[this.ratioGroupReference][s];break}}}if(this.groupingFactors.length==1){this.ratioReference=this.OKx(this.ratioLevelReference);if(this.ratioReference<0){this.ratioLevelReference=this.otE().smps[0];this.ratioReference=0}h=[this.ratioReference]}else{var f=[];for(var s=0;s<this.groupingFactors.length;s++){if(this.groupingFactors[s]!=this.ratioGroupReference){f.push(this.groupingFactors[s])}}var b={};var u=[];var r=0;for(var s=0;s<this.smpIndices.length;s++){var k=this.smpIndices[s];var m=[];var x;for(var q=0;q<f.length;q++){var t=f[q];x=n.x[t][k];if(!x){x="NA"}m.push(x)}x=m.join(" - ");if(!b.hasOwnProperty(x)){this.otE().smps.push(x);u[r]=x;b[x]=[];b[x].push(k);r++}else{b[x].push(k)}}h=this.Iop(this.ratioGroupReference,this.ratioLevelReference);this.ratioReference=[];for(var s=0;s<this.otE().grps.length;s++){var g=this.otE().grps[s][0];var o=false;for(var p in b){for(var q=0;q<b[p].length;q++){if(g==b[p][q]){o=this.EBF(b[p]);break}}if(o){break}}for(var q=0;q<h.length;q++){if(o.hasOwnProperty(h[q])){this.ratioReference.push(h[q]);break}}}}}else{if(this.ratioSampleReference){var v=this.isGroupedData&&this.graphType.match(/dotplot|boxplot/i);if(v){this.isGroupedData=false;this.ratioReference=this.OKx(this.ratioSampleReference);this.isGroupedData=true}else{this.ratioReference=this.OKx(this.ratioSampleReference)}}if(this.ratioReference<0){this.ratioSampleReference=n.y.smps[0];this.ratioReference=0}h=[this.ratioReference]}for(var s=0;s<this.varIndices.length;s++){var k=this.varIndices[s];if(!a.trans){a.trans=[]}if(!a.stdev){a.stdev=[]}if(!a.trans[k]){a.trans[k]=[]}if(!a.stdev[k]){a.stdev[k]=[]}for(var q=0;q<a.data[k].length;q++){var e;if(this.isGroupedData&&this.ratioGroupReference&&n.x.hasOwnProperty(this.ratioGroupReference)){if(this.groupingFactors.length==1){e=this.otE().mean[k][this.ratioReference]}else{e=this.otE().mean[k][this.ratioReference[q]]}}else{e=a.data[k][this.ratioReference]}if(!isNaN(a.data[k][q])&&!isNaN(e)&&e>0){var c=this.transformBase==2?"ratio2":"ratio10";var w=a.data[k][q]/e;var d=a.stdev[k][q];if(c=="ratio2"){a.trans[k][q]=Math.log(w)/Math.LN2;if(d&&d>0){a.tstdev[k][q]=Math.log(d)/Math.LN2}}else{if(c=="ratio10"){a.trans[k][q]=Math.log(w)/Math.LN10;if(d&&d>0){a.tstdev[k][q]=Math.log(d)/Math.LN10}}}}}}};this.ShF=function(q,n,m){var c=this.isGroupedData&&!this.graphType.match(/dotplot|boxplot/i)?this.otE():this.data.y;var k=this.isGroupedData?false:true;var o;n=n?n:this.transformAxis;if(n=="samples"){for(var g=0;g<c.data[m].length;g++){var b=[];for(var d=0;d<this.varIndices.length;d++){var h=this.varIndices[d];b.push(c.data[h][g])}if(q=="percentile"){o=this.Npb(b)}else{if(q=="zscore"){o=this.pjH(b,k)}}for(var d=0;d<this.varIndices.length;d++){var h=this.varIndices[d];if(!c.trans){c.trans=[]}if(!c.trans[h]){c.trans[h]=[]}if(!isNaN(c.data[h][g])){if(q=="percentile"){c.trans[h][g]=this.Amv(o[0],o[1],c.data[h][g])}else{if(q=="zscore"){c.trans[h][g]=(c.data[h][g]-o[0])/o[1]}}}}}}else{for(var g=0;g<this.varIndices.length;g++){var p=this.varIndices[g];if(!c.trans){c.trans=[]}if(!c.trans[p]){c.trans[p]=[]}var b=c.data[p];if(q=="percentile"){o=this.Npb(b)}else{if(q=="zscore"){o=this.pjH(b,k)}}for(var d=0;d<b.length;d++){if(!isNaN(c.data[p][d])){if(q=="percentile"){c.trans[p][d]=this.Amv(o[0],o[1],c.data[p][d])}else{if(q=="zscore"){c.trans[p][d]=(c.data[p][d]-o[0])/o[1]}}}}}}}};CanvasXpress.prototype.initDatasetGrouping=function(){this.kMO=function(c){var d=this.QWl(this.segregateSamplesBy);var b=this.QWl(this.segregateVariablesBy);this.qPC(true);this.ev3(c,false,false,true,true,true);this.OYP(b,d,true)};this.ev3=function(aj,T,r,ae,c,C,ak){var N=this;if(this.ql8()){return}if(!this.isRawData){return}var ah=this.data;var B=this.otE()?this.otE():false;var K=this.meta.data.layout?this.meta.data.layout:false;if(!this.Zuk(aj)){aj=[aj]}else{aj=this.Jhz(aj)}if(!aj||aj.length<1||!ah.x){return this.iBN()}if(aj.length>1&&aj.includes("__FACTOR__")){aj=aj.filter(function(a){return a!="__FACTOR__"})}for(var aa=0;aa<aj.length;aa++){if(!aj||!ah.x[aj[aa]]){return this.iBN()}}if(!this.isDOE&&this.layoutComb&&K&&!this.Fvn(K.group,aj)){this.kMO(aj);K.group=aj;if(!c){this.U4z({func:"groupSamples",par:[aj,T,r,ae,c,C,ak]})}return}if(K&&K.group){K.group=aj}var v={};var R={};var g=this.EBF(this.smpOverlays);var y=B&&B.smps?B.smps:false;var D=this.QWl(this.hiddenGrps);if(!this.isDOE&&!ae){this.FB7(true)}if(!ae){this.FB7()}this.isGroupedData=true;this.groupingFactors=aj;this.Doz(true);this.hiddenGrps=ak?D:[];this.isGroupedData=false;B=this.otE()?this.otE():false;if(this.ZYw(aj,T)){this.isGroupedData=true;if(this.f0W(aj,r,ak,this.coL())){this.AzP();this.ZJf(false,false,false,!this.layoutComb);if(!C){this.xAxisValues=[];this.xAxis2Values=[];this.yAxisValues=[];this.zAxisValues=[];if(!this.layoutComb||!this.layoutAdjust){if(typeof(this.setAxes)=="function"){this.y5s()}}}if(!c){this.U4z({func:"groupSamples",par:[aj,T,r,ae,c,C,ak]})}return}}var an=this.smpIndices.length;for(var aa=0;aa<an;aa++){var x=this.smpIndices[aa];var G=[];var q=[];var A;var W;for(var Z=0;Z<aj.length;Z++){var O=aj[Z];A=this.dl6(x,"x",O);if(this.meta.data.x[O].type=="Numeric"){A=A||"null"}else{A=A===false?"false":(A||"null")}G.push(A);if(!g.hasOwnProperty(O)){q.push(A)}}A=G.join(" :: ");W=q.length>0?q.join(" :: "):"";if(!v.hasOwnProperty(A)){B.smps.push(A);R[A]=W;v[A]=[]}v[A].push(x)}this.isGroupedData=true;if(B.smps.length<1){B.smps=y;this.U4z({func:"groupSamples",par:[aj,T,r,ae,c,C,ak]});return}if(this.isCxplot&&aj.length==1&&this.meta.data.x&&this.meta.data.x.hasOwnProperty(aj[0])&&this.meta.data.x[aj[0]].levels&&this.meta.data.x[aj[0]].type!="Numeric"){if(this.sortIncludeEmpty){if(this.meta.config.user.aes.hasOwnProperty("meta")){if(aj[0]==this.meta.config.user.aes.x&&this.meta.config.user.aes.meta.hasOwnProperty("xLabels")){var ab=this.QWl(this.meta.config.user.aes.meta.xLabels);var ad=false;for(var aa=0;aa<ab.length;aa++){if(this.meta.data.x[aj[0]].levels.includes(ab[aa])){continue}else{ad=true}}B.smps=ad?this.QWl(this.meta.data.x[aj[0]].levels):ab}else{if(aj[0]==this.meta.config.user.aes.y&&this.meta.config.user.aes.meta.hasOwnProperty("yLabels")){var ab=this.QWl(this.meta.config.user.aes.meta.yLabels);var ad=false;for(var aa=0;aa<ab.length;aa++){if(this.meta.data.x[aj[0]].levels.includes(ab[aa])){continue}else{ad=true}}B.smps=ad?this.QWl(this.meta.data.x[aj[0]].levels):ab}else{B.smps=this.QWl(this.meta.data.x[aj[0]].levels)}}}else{B.smps=this.QWl(this.meta.data.x[aj[0]].levels)}}}else{if(this.isCxplot&&aj.length==2&&this.meta.data.x&&this.meta.data.x.hasOwnProperty(aj[0])&&this.meta.data.x[aj[0]].levels&&this.meta.data.x[aj[0]].type!="Numeric"&&this.meta.data.x.hasOwnProperty(aj[1])&&this.meta.data.x[aj[1]].levels&&this.meta.data.x[aj[1]].type!="Numeric"){if(this.sortIncludeEmpty){var n=this.meta.data.x;B.smps=this.QWl(B.smps.sort(function(k,j){var s=k.split(" :: ");var i=j.split(" :: ");var d=n[aj[0]].levels.indexOf(s[0]);var a=n[aj[0]].levels.indexOf(i[0]);if(d==a){d=n[aj[1]].levels.indexOf(s[1]);a=n[aj[1]].levels.indexOf(i[1])}return d-a}))}}else{if(this.sortOnGrouping){if(this.sortOnGrouping=="size"){B.smps.sort(function(i,d){return v[i].length-v[d].length})}else{if(this.sortOnGrouping=="descending"){B.smps.sort().reverse()}else{B.smps.sort()}}}}}if(this.groupingFactors.length==1&&this.meta.data.x&&this.meta.data.x.hasOwnProperty(this.groupingFactors[0])&&this.meta.data.x[this.groupingFactors[0]].priority){B.smps=this.QWl(this.meta.data.x[this.groupingFactors[0]].levels)}var an=B.smps.length;if(this.legendOrder&&this.legendOrder.hasOwnProperty(this.groupingFactors[0])){var M=this.legendOrder[this.groupingFactors[0]];B.smps=B.smps.sort(function(i,d){var k=i.split(" :: ")[0];var j=d.split(" :: ")[0];i=k;d=j;return M.indexOf(i)-M.indexOf(d)})}else{if(this.numericGroupSort){B.smps=B.smps.sort(function(av,au){var az=av.split(" :: ");var s=au.split(" :: ");var ar=Math.min(az.length,s.length);for(var t=0;t<ar;t++){var ao=az[t];var d=s[t];var aq,i,ay,j,ax,aw;aq=Number(ao);ay=ao!==""&&!isNaN(aq);i=Number(d);j=d!==""&&!isNaN(i);if(!ay){ax=ao.match(/^>(\d+(?:\.\d+)?)/);if(ax){aq=Number(ax[1])+1e-8;ay=true}}if(!ay){ax=ao.match(/^<(\d+(?:\.\d+)?)/);if(ax){aq=Number(ax[1])-1e-8;ay=true}}if(!ay){ax=ao.match(/^(\d+(?:\.\d+)?)/);if(ax){aq=Number(ax[1]);ay=true}}if(!j){aw=d.match(/^>(\d+(?:\.\d+)?)/);if(aw){i=Number(aw[1])+1e-8;j=true}}if(!j){aw=d.match(/^<(\d+(?:\.\d+)?)/);if(aw){i=Number(aw[1])-1e-8;j=true}}if(!j){aw=d.match(/^(\d+(?:\.\d+)?)/);if(aw){i=Number(aw[1]);j=true}}var at;if(ay&&j){at=aq-i}else{at=ao<d?-1:(ao>d?1:0)}if(at!==0){return at}}return az.length-s.length})}else{B.smps=B.smps.sort()}}if(this.groupingFactorLevelsOrder&&typeof this.groupingFactorLevelsOrder==="object"){var e=this.groupingFactorLevelsOrder;var m=false;for(var aa=0;aa<aj.length;aa++){if(e.hasOwnProperty(aj[aa])){m=true;break}}if(m){B.smps=B.smps.sort(function(s,k){var ap=s.split(" :: ");var j=k.split(" :: ");for(var t=0;t<aj.length;t++){if(e.hasOwnProperty(aj[t])){var ao=e[aj[t]];var d=ao.indexOf(String(ap[t]));var a=ao.indexOf(String(j[t]));if(d===-1){d=ao.length}if(a===-1){a=ao.length}if(d!==a){return d-a}}else{if(ap[t]<j[t]){return -1}if(ap[t]>j[t]){return 1}}}return 0})}}for(var aa=0;aa<an;aa++){var A=B.smps[aa];B.labs.push(R[A]);B.grps.push(v[A]);B.grpIdxs.push(aa)}this.grpIndices=[];if(r){var an=r.length;for(var aa=0;aa<an;aa++){this.grpIndices.push(r[aa]);if(!ak){this.hiddenGrps.push(false)}}}else{var an=B.grps.length;for(var aa=0;aa<an;aa++){this.grpIndices.push(aa);if(!ak){this.hiddenGrps.push(false)}}}var an=this.varIndices.length;var V=B.vars;for(var aa=0;aa<an;aa++){V.push(ah.y.vars[this.varIndices[aa]])}var U={};var l=this.meta.data.x;for(var A in ah.x){U[A]=l[A].type=="Numeric"}var an=B.grps.length;for(var aa=0;aa<an;aa++){var E=B.grps[aa];var al=E?E.length:0;for(var A in ah.x){var h=ah.x[A];var af=B.factors[A];if(!af){af=B.factors[A]=[]}var J;if(U[A]){J=[];for(var Z=0;Z<al;Z++){var H=h[E[Z]];if(!isNaN(H)){J.push(H)}}af.push(this.viJ(J))}else{J={};for(var Z=0;Z<al;Z++){var H=h[E[Z]];if(H!=null&&H!==""){J[H]=true}}var z=this.elc(J);af.push(z.join(" + "))}}}var ac=this.meta.data.x;for(var A in ah.x){if(ac[A]["boolean"]){var af=B.factors[A];var w=af.length;for(var aa=0;aa<w;aa++){af[aa]=af[aa]!=="false"}}}var U=[];if(T){U=this.Zuk(T)?T:[T]}else{T=this.graphType=="Boxplot"?"iqr":this.graphType.match(/Stacked/i)?"sum":this.summaryType?this.summaryType:"mean";U.push(T)}var F=this.isTransformedData;var u=this.summaryType;var f=ah.y;for(var S=0,I=U.length;S<I;S++){var o=[];var am=U[S];var X=F?f.trans:true;var ag;if(F&&f.trans){ag=f.trans?f.trans:this.data.y.trans}else{if(this.isRawData){ag=f.data}else{ag=f[u]||f[this.summaryType]}}var an=this.isDOE&&this.isDOE==1?this.data.y.vars.length:this.varIndices.length;for(var aa=0;aa<an;aa++){var L=this.varIndices[aa];if(L==undefined){continue}var Q=o[L]=[];var p=B.grps;var al=p.length;for(var Z=0;Z<al;Z++){var b=Q[Z]=[];var P=p[Z];var ai=P?P.length:0;for(var Y=0;Y<ai;Y++){b.push(ag[L][P[Y]])}}}this.p7A(am,o)}this.AzP();this.ZJf(false,false,false,!this.layoutComb);if(!C){this.xAxisValues=[];this.xAxis2Values=[];this.yAxisValues=[];this.zAxisValues=[];if(!this.layoutComb||!this.layoutAdjust){if(typeof(this.setAxes)=="function"){this.y5s()}}}if(!X){this.qeI(this.isTransformedData)}if(!c){this.U4z({func:"groupSamples",par:[aj,T,r,ae,c,C,ak]})}};this.iBN=function(h,f,a){if(this.ql8()){return}var e=this.groupingFactors.length==1&&this.groupingFactors[0]=="__FACTOR__";if(!this.isGroupedData&&!this.groupingFactors.length){return}this.FB7(true);this.isGroupedData=false;var g=this.data;var c=this.otE()?this.otE():false;var b=this.meta.data.layout?this.meta.data.layout:false;if(b){delete (b.group)}if(c&&!a){delete (c)}this.groupingFactors=[];this.hiddenGrps=[];this.n9f("w");if(!f){this.ZJf(false,false,false,true)}if(this.summaryType=="iqr"&&e){this.summaryType="raw";this.graphType="Bar"}if(!h){this.U4z({func:"ungroupSamples",par:[h,f,a]})}return};this.CL2=function(){this.isGroupedData=false;this.ev3(this.groupingFactors,false,false,false,true)};this.AzP=function(){if(this.groupingFactors.length){var e=true;if(e){if(this.otE()&&this.otE().glab.length==this.otE().smps.length){this.otE().smps=this.QWl(this.otE().glab)}}}if(this.otE()&&this.otE().smps&&this.groupingFactors.length){for(var c=0;c<this.segregateSamplesBy.length;c++){var a=this.groupingFactors.indexOf(this.segregateSamplesBy[c]);for(var b=0;b<this.otE().smps.length;b++){if(this.otE().smps[b].length){if(!this.otE().glab[b]){this.otE().glab[b]=this.QWl(this.otE().smps[b])}var d=this.otE().glab[b].split(" :: ");if(a>=0){d.splice(a,1).join(" :: ")}else{d=d.join(" :: ")}this.otE().smps[b]=d}}}}if(this.otE()){this.n9f("w")}};this.TgR=function(b){if(this.graphType=="Sankey"||(this.graphType=="Circular"&&(this.circularType=="sunburst"||this.circularType=="bubble"))){this.xAxisIndices[0]=this.mlX(this.xAxis[0])}if(this.hierarchy.length>0){if(!this.meta.data[b]||(this.meta.data[b].hierarchy&&!this.Fvn(this.meta.data[b].hierarchy,this.hierarchy))){this.meta.data[b]={};this.meta.data[b]["data"]={name:this.hierarchy[0],children:[]};for(var f=0;f<this.smpIndices.length;f++){var l=this.smpIndices[f];var a=this.meta.data[b]["data"].children;for(var e=0;e<this.hierarchy.length;e++){var c=this.hierarchy[e];var h=-1;for(var d=0;d<a.length;d++){if(this.dl6(l,"x",c)==a[d].name){h=d}}if(h==-1){var g=this.dl6(l,"x",c);if(g!=null){a.push({name:g,children:[]});h=a.length-1}else{if(e==this.hierarchy.length-1){a.push({name:this.data.y.smps[l],size:this.data.y.data[this.xAxisIndices[0]][l],idx:l});continue}else{continue}}}a=a[h].children;if(e===this.hierarchy.length-1){a.push({name:this.data.y.smps[l],size:this.data.y.data[this.xAxisIndices[0]][l],idx:l})}}}}}else{this.meta.data[b]={};this.meta.data[b]["data"]={name:"Samples",children:[]};for(var f=0;f<this.smpIndices.length;f++){var l=this.smpIndices[f];var a=this.meta.data[b]["data"].children;a.push({name:this.data.y.smps[l],size:this.data.y.data[this.xAxisIndices[0]][l],idx:l})}}}};CanvasXpress.prototype.initDatasetSummarize=function(){this.p7A=function(f,G){this.F7e();var b=this.Dug();var h=this.isGroupedData?false:true;var y=Number.POSITIVE_INFINITY;var x=Number.NEGATIVE_INFINITY;if(!this.isGroupedData){this.M6X()}var d=["trans","tstdev","mean","median","stdev","qtl1","qtl3","iqr1","iqr3","out","conf","nfac","n","min","max","sum","count","scale"];var C=function(i,c){if(!b[i][c]){b[i][c]=[]}};if(f=="cor"){var w=this.jxh();if(w){this.isBoxplotCalc=false;b.cor=w.cor;b.min=w.min;b.max=w.max;b.scale=w.scale;return}}if(f=="gantt"){if(!this.Skj()){this.isGanttDataFormated=false;this.soq()}var E=this.mlX(this.ganttStart?this.ganttStart:this.xAxis[0]?this.xAxis[0]:this.data.y.vars[0]);this.ganttStart=this.data.y.vars[E];var D=this.mlX(this.ganttEnd?this.ganttEnd:this.xAxis[1]?this.xAxis[1]:this.data.y.vars[1]?this.data.y.vars[1]:this.data.y.vars[0]);this.ganttEnd=this.data.y.vars[D]||this.data.y.vars[0];var I=this.vBI(this.Skj());y=I[E].sort(function(i,c){return i-c})[0];x=I[D].sort(function(i,c){return c-i})[0];b.min=[[y]];b.max=[[x]];b.scale=this[this.axisAlgorithm](y,x,5,this.isGraphTime,this.axisWilkinsonLoose)}else{if(f=="cor"){this.isBoxplotCalc=false;if(this.correlationAxis=="samples"){if(this.isGroupedData&&b.cor.length==0){this.iBN(true,true,true)}var p=this.Rpc();var l=p.length;for(var E=0;E<l;E++){var t=p[E];var q=this.dZz(t);if(!b.cor[t]){b.cor[t]=[]}var g=p.length;for(var D=E;D<g;D++){var F=p[D];if(!b.cor[F]){b.cor[F]=[]}var o=this.dZz(F);if(E==D){if(this.isTransformedData){b.trans[t][F]=1}b.cor[t][F]=1}else{b.cor[t][F]=this.m6v(q,o);b.cor[F][t]=b.cor[t][F];if(this.isTransformedData){b.trans[t][F]=b.cor[t][F];b.trans[F][t]=b.cor[F][t]}}y=Math.min(y,b.cor[t][F]);x=Math.max(x,b.cor[t][F])}}}else{var l=this.varIndices.length;for(var E=0;E<l;E++){var t=this.varIndices[E];if(!b.cor[t]){b.cor[t]=[]}var g=this.varIndices.length;for(var D=E;D<g;D++){var F=this.varIndices[D];if(!b.cor[F]){b.cor[F]=[]}if(E==D){b.cor[t][F]=1;if(this.isTransformedData){b.trans[t][F]=1}}else{b.cor[t][F]=this.m6v(b.data[t],b.data[F],h);b.cor[F][t]=b.cor[t][F];if(this.isTransformedData){b.trans[t][F]=b.cor[t][F];b.trans[F][t]=b.cor[F][t]}}y=Math.min(y,b.cor[t][F]);x=Math.max(x,b.cor[t][F])}}}b.min=[y];b.max=[x];b.scale=this[this.axisAlgorithm](y,x,5,this.isGraphTime,this.axisWilkinsonLoose)}else{this.isBoxplotCalc=f=="iqr"?true:false;var l=this.isDOE&&this.isDOE==1?this.data.y.vars.length:this.varIndices.length;for(var E=0;E<l;E++){var a;var t=this.varIndices[E];if(t==undefined){continue}var s=d.length;for(var D=0;D<s;D++){C(d[D],t)}if(this.isGroupedData){if(!G){var v=this.isTransformedData?this.data.y.trans:this.data.y.data;a=[];var n=this.otE().grps.length;for(var D=0;D<n;D++){a[D]=[];var m=this.otE().grps[D].length;for(var B=0;B<m;B++){var e=this.otE().grps[D][B];a[D].push(v[t][e])}}}else{a=G[t]}}else{b.grps=[];a=[];var g=this.smpIndices.length;for(var D=0;D<g;D++){var F=this.smpIndices[D];b.grps[D]=[];b.grps[D].push(F);a[D]=[this.isTransformedData&&b.trans?b.trans[t][F]:b.data[t][F]]}}if(f=="iqr"){this.summaryType="iqr";if(this.isRawData){if(!this.isGroupedData){var g=this.smpIndices.length;for(var D=0;D<g;D++){var F=this.smpIndices[D];if(this.isTransformedData){b.trans[t][D]=a[D][0]}b.mean[t][F]=a[D][0];b.median[t][F]=a[D][0];b.qtl1[t][F]=a[D][0];b.qtl3[t][F]=a[D][0];b.iqr1[t][F]=a[D][0];b.iqr3[t][F]=a[D][0];b.out[t][F]=[];b.n[t][F]=1;b.conf[t][F]=[];b.min[t][F]=a[D][0];b.max[t][F]=a[D][0]}}else{var s=a.length;for(var D=0;D<s;D++){var u=this.Yim(a[D]);if(this.isTransformedData){b.trans[t][D]=u[1]}b.mean[t][D]=u[0];b.median[t][D]=u[2];b.qtl1[t][D]=u[1];b.qtl3[t][D]=u[3];b.iqr1[t][D]=u[4];b.iqr3[t][D]=u[5];b.out[t][D]=u[6];b.n[t][D]=u[7];b.conf[t][D]=u[8]?u[8]:[];b.min[t][D]=u[9]?u[9][0]:NaN;b.max[t][D]=u[9]?u[9][1]:NaN}}}b.iqr=b.median}else{if(f=="median"){this.summaryType="median";if(this.isRawData){var s=a.length;for(var D=0;D<s;D++){var A=this.min(a[D],h);var z=this.max(a[D],h);var u=this.rhA(a[D],h);if(this.isTransformedData){b.trans[t][D]=u[1]}b.min[t][D]=A;b.max[t][D]=z;b.median[t][D]=u[0];b.n[t][D]=u[1]}}}else{if(f=="mean"||f=="raw"){this.summaryType="mean";if(this.isRawData){var s=a.length;for(var D=0;D<s;D++){var A=this.min(a[D],h);var z=this.max(a[D],h);var u=this.pjH(a[D],h);if(this.isTransformedData){b.trans[t][D]=u[0];b.tstdev[t][D]=u[1]}b.min[t][D]=A;b.max[t][D]=z;b.mean[t][D]=u[0];b.stdev[t][D]=u[1];b.n[t][D]=u[2]}}}else{if(f=="min"||f=="max"){this.summaryType=f;if(this.isRawData){var s=a.length;for(var D=0;D<s;D++){var A=this.min(a[D],h);var z=this.max(a[D],h);if(this.isTransformedData){b.trans[t][D]=z}b.min[t][D]=A;b.max[t][D]=z;b.n[t][D]=a[D].length}}}else{if(f=="sum"){this.summaryType="sum";if(this.isRawData){var s=a.length;for(var D=0;D<s;D++){var H=this.sum(a[D],h);if(this.isTransformedData){b.trans[t][D]=H}b.min[t][D]=0;b.max[t][D]=H;b.sum[t][D]=H;b.n[t][D]=a[D].length}}}else{if(f=="count"){this.summaryType="count";if(this.isRawData){var s=a.length;for(var D=0;D<s;D++){var r=a[D].length;if(this.isTransformedData){b.trans[t][D]=r}b.min[t][D]=0;b.max[t][D]=r;b.count[t][D]=r;b.n[t][D]=r}}}}}}}}}if(f=="iqr"){for(var E=0;E<b.n.length;E++){if(b.n[E]){for(var D=0;D<b.n[E].length;D++){b.nfac[E][D]=Math.sqrt((b.n[E][D])/(this.smpIndices.length))*2}}}}for(var E=0;E<b.min.length;E++){if(b.min[E]){for(var D=0;D<b.min[E].length;D++){y=Math.min(y,b.min[E][D]);x=Math.max(x,b.max[E][D])}}}b.scale=this[this.axisAlgorithm](y,x,this.xAxisTicks,this.isGraphTime,this.axisWilkinsonLoose)}}};this.EqB=function(){var e=this.Dug();var d;for(var b=0;b<this.varIndices.length;b++){var c=this.varIndices[b];e.data[c]=[];e.trans[c]=[];if(this.summaryType=="mean"){for(var a=0;a<e.mean[c].length;a++){e.data[c][a]=e.mean[c][a]}}else{if(this.summaryType=="median"||this.summaryType=="iqr"){for(var a=0;a<e.median[c].length;a++){e.data[c][a]=e.median[c][a]}}else{if(this.summaryType=="sum"){for(var a=0;a<e.sum[c].length;a++){e.data[c][a]=e.sum[c][a]}}else{if(this.summaryType=="max"){for(var a=0;a<e.max[c].length;a++){e.data[c][a]=e.max[c][a]}}else{if(this.summaryType=="min"){for(var a=0;a<e.min[c].length;a++){e.data[c][a]=e.min[c][a]}}else{if(this.summaryType=="count"){for(var a=0;a<e.count[c].length;a++){e.data[c][a]=e.count[c][a]}}}}}}}if(!d){d=c}}return d};this.PKS=function(){var b=[];for(var a=0;a<this.data.y.smps.length;a++){b.push(" ")}if(!this.data.x){this.data.x={}}this.data.x.__FACTOR__=b;this.n9f("x","__FACTOR__",false,true);this.ev3(["__FACTOR__"],false,false,false,true)};this.caj=function(b,e){if(b){this.data.y.smps.push("__COUNT__");for(var a=0;a<this.data.y.vars.length;a++){this.data.y.data[a].push(1)}}else{this.data.y.vars.push("__COUNT__");var c=[];for(var a=0;a<this.data.y.smps.length;a++){c.push(1)}this.data.y.data.push(c)}this.n9f("y");this.eGJ(true,true);this.nLY();if(!e){this.U4z({func:"countData",par:[]})}};this.tQu=function(b,c){if(b){var a=this.OKx("__COUNT__");if(a>=0){this.data.y.smps.splice(a,1);for(var a=0;a<this.data.y.vars.length;a++){this.data.y.data[a].splice(a,1)}}}else{var a=this.mlX("__COUNT__");if(a>=0){this.data.y.vars.splice(a,1);this.data.y.data.splice(a,1)}this.n9f("y");this.eGJ(true,true);this.nLY()}if(!c){this.U4z({func:"uncountData",par:[]})}};this.aS1=function(b,e){if(b){this.data.y.smps.push("__SEQ__");for(var a=0;a<this.data.y.vars.length;a++){this.data.y.data[a].push(a+1)}}else{this.data.y.vars.push("__SEQ__");var c=[];for(var a=0;a<this.data.y.smps.length;a++){c.push(a+1)}this.data.y.data.push(c)}this.n9f("y");this.eGJ(true,true);this.nLY();if(!e){this.U4z({func:"sequenceData",par:[]})}};this.OKv=function(b,c){if(b){var a=this.OKx("__SEQ__");if(a>=0){this.data.y.smps.splice(a,1);for(var a=0;a<this.data.y.vars.length;a++){this.data.y.data[a].splice(a,1)}}}else{var a=this.mlX("__SEQ__");if(a>=0){this.data.y.vars.splice(a,1);this.data.y.data.splice(a,1)}}this.n9f("y");this.eGJ(true,true);this.nLY();if(!c){this.U4z({func:"unsequenceData",par:[]})}}};CanvasXpress.prototype.initDatasetGenome=function(){this.ffI=function(){var d=this.data.tracks;if(!d){return}var c=this.YnW();for(var h=0;h<d.length;h++){var g=d[h];g.hide=false;var b=c?c[h]:null;if(b){b.hide=false}var a=g.data;if(a){for(var f=0;f<a.length;f++){var e=a[f];e.hide=false;if(b&&b.data&&b.data[f]){b.data[f].hide=false}}}}};this.IIB=function(b,o){var g=this.Npb(o);var f=this[this.axisAlgorithm](g[0],g[1],5,this.isGraphTime,this.axisWilkinsonLoose);var a=[];for(var d=0;d<f.length;d++){a.push(f[d].toString())}var c=this.sXv(a);var n=this.eUk(c,this.xAxisTextFont);var m=Math.min(g[0],f[0]);var q=Math.max(g[1],f[f.length-1]);var l=b.height||this.featureTypeDefault;var h=l/((q-m)*1.05);var k=b.colorSpectrum||this.colorSpectrum;var e=b.colorSpectrumZeroValue||this.colorSpectrumZeroValue;var j=b.colorSpectrumBreaks||this.colorSpectrumBreaks;var p=this.qJM(k,m,q,e,j,true);return{type:"Numeric",range:g,values:f,valuesStr:a,maxValueStrLen:n,min:m,max:q,units:h,brew:p}};this.MQc=function(e,k,p){var m={};for(var h=0;h<p.length;h++){m[p[h]]=true}var a=this.NtX(m);var d={};var c=0;var o=0;var j="";for(var n=0;n<a.length;n++){var b=a[n];d[b]=n;var q=this.eUk(b,this.xAxisTextFont);if(q>c){c=q;o=b.length;j=b}}var f=[];var g=[];var l=e.meta&&e.meta.hasOwnProperty(k);for(var n=0;n<a.length;n++){var b=a[n];if(l&&e.meta[k].hasOwnProperty("color")&&e.meta[k].color.hasOwnProperty(b)){f.push(e.meta[k].color[b])}else{f.push(this.colors[n%this.colors.length])}if(l&&e.meta[k].hasOwnProperty("shape")&&e.meta[k].shape.hasOwnProperty(b)){g.push(e.meta[k].shape[b])}else{g.push(this.shapes[n%this.shapes.length])}}return{type:"String",levels:a,order:d,maxLevLen:c,maxLevChr:o,maxLevStr:j,colors:f,shapes:g,sizes:this.ni5(a.length)}};this.slp=function(k){if(k){this.meta.data={tracks:[]}}var j=this.data.tracks?this.data.tracks.length:0;for(var g=0;g<j;g++){var c=this.data.tracks[g];var l={};if(c.type=="dataframe"){for(var h in c.dataframe){var b=c.dataframe[h];if(this.XmW(b)){l[h]=this.IIB(c,b)}else{l[h]=this.MQc(c,h,b)}}}else{if(c.type&&c.type.match(/bar|heatmap/)){var m=[];var d=c.data||[];for(var a=0;a<d.length;a++){var e=d[a].data||[];for(var f=0;f<e.length;f++){m.push(e[f])}}l=this.IIB(c,m);delete l.type}}this.meta.data.tracks.push(l)}this.QnG()};this.QnG=function(){if(!this.data.tracks){return}if(!this.meta.data.derived){this.meta.data.derived={}}this.meta.data.derived.tracks=JSON.parse(JSON.stringify(this.data.tracks))};this.YnW=function(){return(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.tracks)||this.data.tracks}};CanvasXpress.prototype.initDatasetNetwork=function(){this.giM=function(h,b){var a=this.meta.data.nodes;var l=this[b];var d={colorNodeBy:"colors",shapeNodeBy:"shapes",sizeNodeBy:"sizes",patternNodeBy:"patterns"};if(l&&a.hasOwnProperty(l)&&h.hasOwnProperty(l)&&h[l]!=null){var f=a[l];var j=h[l];if(f.type==="Numeric"&&b!=="shapeNodeBy"){var o=Number(j);switch(b){case"colorNodeBy":return isNaN(o)?false:this.w7m(f.colorBrew,o);case"sizeNodeBy":var m=0.5;var i=f.max-f.min;var g=i<=10?100:(i<=100?50:20);var n=parseInt(this.Amv(f.min,f.max,o),10)/g;return Math.pow(m+n,2);case"patternNodeBy":return"closed"}}else{if(f.type==="Numeric"&&b==="shapeNodeBy"){var e=parseInt(this.Amv(f.min,f.max,Number(j))/10,10);return e===10?"circle":"pie"+e}else{if(d[b]){var k=d[b];var c=f.order[j];return f[k][c]}else{console.warn("Unhandled node property conversion.")}}}}else{var p=b.replace("NodeBy","");if(h.hasOwnProperty(p)){return h[p]}else{switch(p){case"color":return this.nodeColor;case"shape":return"circle";case"size":return 1;case"pattern":return"closed";default:return null}}}};this.jx2=function(h,d){var b=this.meta.data.edges;var k=this[d];var e={colorEdgeBy:"colors",sizeEdgeBy:"sizes"};if(k&&b.hasOwnProperty(k)&&h.hasOwnProperty(k)){var i=b[k];var l=h[k];if(d==="colorEdgeBy"){if(i.type==="Numeric"){return this.w7m(i.colorBrew,Number(l))}else{if(e[d]){var f=i.order[l];return i[e[d]][f]}else{console.warn("Unhandled edge color property conversion.")}}}else{if(d==="sizeEdgeBy"){if(i.type==="Numeric"){var g=Math.min(this.minEdgeSize,this.edgeThickness);var c=Number(l||i.min);var j=parseInt(this.Amv(i.min,i.max,c),10);var a=(j/100)*this.maxEdgeSize*this.edgeThickness;return g+(isNaN(a)?g:a)}else{if(e[d]){var f=i.order[l];return f*this.edgeThickness}else{console.warn("Unhandled edge size property conversion.")}}}else{console.warn("Unsupported edge visual mapping: "+d)}}}else{if(d==="colorEdgeBy"){return h.color||this.edgeColor}else{if(d==="sizeEdgeBy"){return h.thickness||this.edgeThickness}else{console.warn("Unsupported static edge visual mapping: "+d)}}}};this.KEL=function(c,a,b){if(c){return this.giM(c,b)}return this.jx2(a,b)};this.lE7=function(T,H,m){var i=this;var V=this.meta.data;var t=this.data;var o=["nodes","edges"];var h=this.nodeFont;var q={x:true,y:true,z:true,width:true,height:true,eventless:true,color:true,hideLabel:true,imagePath:true,size:true,shape:true,endArrow:true,startArrow:true,elbows:true};var S=function(ac){for(var af in ac){if(ac[af].type==="Numeric"){var ae=i.elc(ac[af].values);var ad=ac[af].values.hasOwnProperty("true");var g=ac[af].values.hasOwnProperty("false");var ab=ac[af].values.hasOwnProperty("");if((ae.length===2&&ad&&g)||(ae.length===1&&(ad||g||ab))){ac[af].type="String"}}}return ac};var z=function(ab){var ac={};var ag=t[ab];for(var ad=0;ad<ag.length;ad++){var ae=ag[ad];for(var af in ae){if(q.hasOwnProperty(af)){continue}var g=ae[af]===null?false:ae[af];if(typeof g!=="object"){if(ac.hasOwnProperty(af)){if(!ac[af].values.hasOwnProperty(g)){ac[af].values[g]=true}if(isNaN(g)){ac[af].type="String"}}else{ac[af]={values:{},type:isNaN(g)?"String":"Numeric"};ac[af].values[g]=true}}else{if(!ac.hasOwnProperty(af)){ac[af]={values:{}}}ac[af].type="Object";for(var ah in g){ac[af].values[ah]=true}}}}return S(ac)};var a=function(ad,ac){var ab=i.NtX(ac[ad].values);if(i.legendOrder&&i.legendOrder[ad]){var ae=i.QWl(i.legendOrder[ad]);for(var g=0;g<ab.length;g++){if(!ae.includes(ab[g])){ae.push(ab[g])}}return ae}return ab};var C=function(ae,ac,g,ab){if(g&&g.hasOwnProperty(ac)){for(var ad in g[ac]){if(ae.order.hasOwnProperty(ad)){ae[ab][ae.order[ad]]=g[ac][ad]}}}};if(!T||T==="nodes"||T==="edges"){if(T&&m&&V[T][H]){delete V[T][H]}for(var X=0;X<o.length;X++){var U=o[X];if(T&&T!==U){continue}if(!t[U]){continue}if(U==="edges"){for(var c=0;c<t.edges.length;c++){var M=t.edges[c];if(!M.hasOwnProperty("id")){M.id=M.id1+" -> "+M.id2}}}var j=z(U);for(var K in j){if(H&&H!==K){continue}var J={len:i.eUk(K,h),type:j[K].type};var L=0;var A=0;var B="";var x=(i.colorKey&&i.colorKey.hasOwnProperty(K))||(i.legendOrder&&i.legendOrder.hasOwnProperty(K));if(x){J.type="String"}if(J.type==="String"||J.type==="Object"){var O=a(K,j);J.unique=i.HJq(O);J.levels=O;J.order={};J.clicked={};for(var v=0;v<O.length;v++){var P=O[v];J.order[P]=v;J.clicked[P]=true;var Y=i.eUk(P,h);if(Y>L){L=Y;A=P.length;B=P}}J.maxLevLen=L;J.maxLevChr=A;J.maxLevStr=B;J.colors=[];J.shapes=[];J.sizes=i.ni5(O.length,U==="edges");J.patterns=[];for(var d=0;d<O.length;d++){J.colors.push(i.colors[d%i.colors.length]);J.shapes.push(i.shapes[d%i.shapes.length]);J.patterns.push(i.patterns[d%i.patterns.length])}C(J,K,i.colorKey,"colors");C(J,K,i.shapeKey,"shapes");C(J,K,i.sizeKey,"sizes");C(J,K,i.patternKey,"patterns")}else{J.unique=false;var y=i.NtX(j[K].values);var E=i.Npb(y);J.rmin=E[0];J.rmax=E[1];J.n=y.length;if(U==="edges"){J.colorBrew=i.qJM(i.colorSpectrum,E[0],E[1])}else{J.colorBrew=i.qJM(i.colorSpectrum,E[0],E[1],i.colorSpectrumZeroValue,i.colorSpectrumBreaks)}var R=J.colorBrew;J.min=R.min;J.max=R.max;J.zero=R.zero;J.vals=R.vals;J.incr=R.incr;J.decs=R.decs;J.levels=R.vals;J.order={};for(var Q=0;Q<J.levels.length;Q++){var I=J.levels[Q];J.order[I]=Q;var u=i.eUk(I,h);if(u>L){L=u;A=I.toString().length;B=I}}J.maxLevLen=L;J.maxLevChr=A;J.maxLevStr=B;J.shapes=i.shapes;J.sizes=i.sizes;J.patterns=i.patterns}V[U][K]=J}}}if(i.decorations.length&&i.decorationsType==="heatmap"){var N=[];V.decorations={unique:false,type:"Numeric",n:0};for(var G=0;G<i.decorations.length;G++){var n=i.decorations[G];var W=V.nodes[n];if(W&&W.type==="Numeric"){V.decorations.n+=W.n;N.push(W.rmin);N.push(W.rmax)}else{if(W&&W.type==="Object"){var F=W.levels;for(var aa=0;aa<F.length;aa++){var D=F[aa];for(var l=0;l<t.nodes.length;l++){var s=t.nodes[l];if(s[n]&&s[n].hasOwnProperty(D)&&s[n][D]&&!isNaN(s[n][D])){V.decorations.n++;N.push(s[n][D])}}}}}}if(N.length){var b=i.Npb(N);V.decorations.rmin=b[0];V.decorations.rmax=b[1];V.decorations.colorBrew=i.qJM(i.colorSpectrum,b[0],b[1],i.colorSpectrumZeroValue,i.colorSpectrumBreaks);var w=V.decorations.colorBrew;V.decorations.min=w.min;V.decorations.max=w.max;V.decorations.zero=w.zero;V.decorations.vals=w.vals;V.decorations.incr=w.incr;V.decorations.decs=w.decs;V.decorations.levels=w.vals;V.decorations.order={};var k=0;var e=0;var Z="";for(var p=0;p<V.decorations.levels.length;p++){var r=V.decorations.levels[p];V.decorations.order[r]=p;var f=i.eUk(r,h);if(f>k){k=f;e=r.toString().length;Z=r}}V.decorations.maxLevLen=k;V.decorations.maxLevChr=e;V.decorations.maxLevStr=Z}}};this.TSp=function(m){var l=["colorNodeBy","shapeNodeBy","sizeNodeBy","patternNodeBy"];var a=["colorEdgeBy","SizeEdgeBy"];var b=this.meta.data;for(var g=0;g<l.length;g++){var n=this[l[g]];if(!b.nodes.hasOwnProperty(n)){this[l[g]]=false}}for(var f=0;f<a.length;f++){var c=this[a[f]];if(!b.edges.hasOwnProperty(c)){this[a[f]]=false}}if(this.decorations){var e=[];for(var k=0;k<this.decorations.length;k++){var h=this.decorations[k];if(b.nodes.hasOwnProperty(h)){e.push(h)}}this.decorations=e}if(m){this.XSd()}};this.Mdc=function(){var f=this.jj7();var e={};var d={};var a={};for(var b=0;b<f.length;b++){var c=f[b];e[c.id]=c;d[c.id]=b;a[c.id]=false}this.nodes=e;this.nodeIndices=d;this.nodeInitialCache=a;this.P51()};this.imI=function(){if(this.nodeIndices){var d=this.nodeIndices;var g=this.jj7();var f={};for(var b=0;b<g.length;b++){var c=g[b];f[c.id]=c}var a=[];for(var e in d){a[d[e]]=f[e]}this.Ywk(a);this.nodes=f;this.P51()}else{this.Mdc()}};this.lD0=function(b){this.nodes={};this.nodeIndices={};var f=this.jj7();for(var c=0;c<f.length;c++){var d=f[c];d.hide=false;this.nodes[d.id]=d;this.nodeIndices[d.id]=c}var e=this.n1Z();for(var a=0;a<e.length;a++){e[a].hide=false}this.P51();if(!b){this.Dct()}};this.P51=function(){this.hiddenNodes={};this.hiddenEdges={};var e=this.jj7();for(var b=0;b<e.length;b++){this.hiddenNodes[e[b].id]=false}var d=this.n1Z();for(var a=0;a<d.length;a++){var c=d[a].id1+":"+d[a].id2;this.hiddenEdges[c]=false}};this.Rtc=function(k,c){var b=c?true:false;this.isHiddenNodes=b;var g=this.jj7();var f=this.nodes;if(k){if(this.Zuk(k)){for(var e=0;e<k.length;e++){var l=k[e];var h=g[this.nodeIndices[l]];if(h){h.hide=b}if(f&&f[l]!=null){f[l].hide=b}}}}else{for(var d=0;d<g.length;d++){var a=g[d];a.hide=b;if(f&&f[a.id]!=null){f[a.id].hide=b}}this.onX();this.U4z({func:"hideUnhideNodes",par:[k,c]})}};this.tA8=function(){if(!this.meta.data){this.meta.data={}}if(!this.meta.data.derived){this.meta.data.derived={}}if(this.data.nodes){this.meta.data.derived.nodes=JSON.parse(JSON.stringify(this.data.nodes))}if(this.data.edges){this.meta.data.derived.edges=JSON.parse(JSON.stringify(this.data.edges))}if(this.data.groups){this.meta.data.derived.groups=JSON.parse(JSON.stringify(this.data.groups))}if(this.data.constraints){this.meta.data.derived.constraints=JSON.parse(JSON.stringify(this.data.constraints))}if(this.nodes){this.Mdc()}};this.jj7=function(){return(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.nodes)||this.data.nodes};this.n1Z=function(){return(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.edges)||this.data.edges};this.HQS=function(){return(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.groups)||this.data.groups};this.lpk=function(){return(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.constraints)||this.data.constraints};this.Ywk=function(a){if(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.nodes){this.meta.data.derived.nodes=a}else{this.data.nodes=a}};this.Esl=function(a){if(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.edges){this.meta.data.derived.edges=a}else{this.data.edges=a}};this.uAC=function(a){var d=["layout","nodeEdges","community","communityColor","labelXi","labelYi","decorationsXi","decorationsYi","hiddenParent"];for(var c=0;c<a.length;c++){for(var b=0;b<d.length;b++){delete a[c][d[b]]}}return a};this.Vtu=function(a){for(var b=0;b<a.length;b++){delete a[b].layout}return a}};CanvasXpress.prototype.initAesthetics=function(){this.initLegendUtils();this.initMarkerUtils()};CanvasXpress.prototype.initScale=function(){};CanvasXpress.prototype.initGeometry=function(){this.initPrimitives();this.initUtils();this.initDendrograms();this.initGeometryArea();this.initGeometryBar();this.initGeometryBin();this.initGeometryBoxplot();this.initGeometryCDF();this.initGeometryChord();this.initGeometryContour();this.initGeometryCorrelation();this.initGeometryFish();this.initGeometryGantt();this.initGeometryHeatmap();this.initGeometryDensity();this.initGeometryHistogram();this.initGeometryKaplanMeier();this.initGeometryManhattan();this.initGeometryLine();this.initGeometryLoess();this.initGeometryMeter();this.initGeometryPie();this.initGeometryPoint();this.initGeometryPolygon();this.initGeometryQQ();this.initGeometryQuantile();this.initGeometryRegression();this.initGeometrySankey();this.initGeometryStacked();this.initGeometryStream();this.initGeometryTagCloud();this.initGeometryTree();this.initGeometryTreemap();this.initGeometryViolin();this.initGeometryRegistry();this.initGraph();this.initPreRenderChecks()};CanvasXpress.prototype.initStatistics=function(){this.initNumeric();this.initjLouvain();this.initCola();this.initMathUtils();this.initSankeyUtils();this.initTreeUtils();this.initCirclePackUtils();this.initNetworkUtils();this.initFFT();this.initContour();this.initDensity();this.initHist();this.initLoess();this.initQuantreg();this.initLAPACK();this.initClusterUtils()};CanvasXpress.prototype.initFacets=function(){this.initLayout()};CanvasXpress.prototype.initCoordinates=function(){this.initAxes()};CanvasXpress.prototype.initTheme=function(){this.fzP=function(c){var a=c.toLowerCase().replace(/ /g,"");switch(a){case"grey":case"gray":case"igray":case"ggplot":return CanvasXpress.themeDef.grey;case"bw":case"blackandwhite":return CanvasXpress.themeDef.bw;case"linedraw":return CanvasXpress.themeDef.linedraw;case"light":return CanvasXpress.themeDef.light;case"dark":return CanvasXpress.themeDef.dark;case"minimal":return CanvasXpress.themeDef.minimal;case"classic":return CanvasXpress.themeDef.classic;case"void":case"void0":return CanvasXpress.themeDef.void0;case"economist":return CanvasXpress.themeDef.economist;case"excel":return CanvasXpress.themeDef.excel;case"solarized":return CanvasXpress.themeDef.solarized;case"paulTol":case"paultol":case"ptol":return CanvasXpress.themeDef.ptol;case"highcharts":return CanvasXpress.themeDef.highcharts;case"wallstreetjournal":case"wallstreet":case"wsj":return CanvasXpress.themeDef.wsj;case"tableau":return CanvasXpress.themeDef.tableau;case"stata":return CanvasXpress.themeDef.stata;case"ggblanket":return CanvasXpress.themeDef.ggblanket;case"cx":case"canvasxpress":return CanvasXpress.themeDef.cx;case"cxdark":case"canvasxpressdark":return CanvasXpress.themeDef.cxdark;case"cx2":case"canvasxpresstraditional":return CanvasXpress.themeDef.grey;default:var b=this.QWl(CanvasXpress.themeDef.light);b["panel.border.colour"]=null;return b}};this.TC5=function(b){if(!b){b="x"}var e=["AxisShow","Axis2Show","AxisTitleColor","AxisTitleScaleFontFactor","AxisTextColor","AxisTextScaleFontFactor","AxisTicksShow","AxisTicksColor","AxisTicksLength","AxisTicksWidth","AxisLineBottomShow","AxisLineBottomColor","AxisLineBottomLineType","AxisLineBottomWidth","AxisLineTopShow","AxisLineTopColor","AxisLineTopLineType","AxisLineTopWidth","AxisGridMajorShow","AxisGridMajorColor","AxisGridMajorLineType","AxisGridMajorWidth","AxisGridMinorShow","AxisGridMinorColor","AxisGridMinorLineType","AxisGridMinorWidth"];var f=["r","z"];for(var d=0;d<f.length;d++){for(var c=0;c<e.length;c++){this[f[d]+e[c]]=this[b+e[c]]}}};this.jnr=function(c){var b=c.toLowerCase().replace(/ /g,"");var a=CanvasXpress.graphTypes.OneDGraphs.includes(this.graphType);this.theme="none";this.backgroundType="panel";this.colorScheme="User";this.guidesShow=false;this.guidesColor="#cccccc";this.lineDecoration="symbol";this.mapOutlineColor="#cccccc";this.objectBorderColor="rgba(0,0,0,0)";this.fitLineColor="#FFD700";this.legendColumns=1;this.widthFactor=1;switch(b){case"grey":case"gray":case"igray":case"ggplot":this.guidesShow=true;this.guidesColor="#ffffff";this.mapOutlineColor="#ffffff";this.fitLineColor="#0000FF";this.objectBorderColor="rgba(0,0,0,0)";this.colorScheme="GGPlot";break;case"bw":case"blackandwhite":this.backgroundType="solid";this.lineDecoration="pattern";this.colorScheme="BlackAndWhite";break;case"linedraw":this.colorScheme="GGPlot";break;case"light":this.colorScheme="GGPlot";break;case"dark":this.colorScheme="GGPlot";break;case"minimal":this.colorScheme="GGPlot";break;case"classic":this.colorScheme="GGPlot";break;case"void":case"void0":this.colorScheme="GGPlot";break;case"economist":this.colorScheme="Economist";this.backgroundType="solid";this.mapOutlineColor="#D5E4EB";this.legendColumns=8;if(a){this.xAxisTicksMajorShow=true}break;case"excel":this.colorScheme="Excel";this.mapOutlineColor="#C0C0C0";if(a){this.xAxisTicksMajorShow=true}break;case"solarized":this.colorScheme="Solarized";this.backgroundType="solid";this.mapOutlineColor="#FDF6E3";break;case"paulTol":case"paultol":case"ptol":this.colorScheme="PaulTol";this.backgroundType="solid";this.mapOutlineColor="#ffffff";break;case"highcharts":this.colorScheme="Highcharts";this.backgroundType="solid";this.mapOutlineColor="#ffffff";this.objectBorderColor="rgba(0,0,0,0)";this.widthFactor=0.75;break;case"wallstreetjournal":case"wsj":this.colorScheme="WallStreetJournal3";this.backgroundType="solid";this.mapOutlineColor="#F8F2E4";this.legendColumns=4;if(a){this.xAxisTicksMajorShow=true}break;case"tableau":this.colorScheme="TableauMedium";this.mapOutlineColor="#E5E5E5";break;case"stata":this.colorScheme="Stata";this.mapOutlineColor="#EAF2F3";this.legendColumns=4;if(a){this.xAxisTicksMajorShow=true}break;case"ggblanket":this.colorScheme="GGBlanket";break;case"cx":case"canvasxpress":this.colorScheme="CanvasXpress";this.stripBackgroundColor="rgba(0,0,0,0)";this.stripBackgroundBorderColor="rgba(0,0,0,0)";this.objectBorderColor="rgba(0,0,0,0)";this.xAxisLineBottomShow=true;this.xAxisTicksShow=true;break;case"cx2":case"canvasxpresstraditional":this.colorScheme="CanvasXpressTraditional";this.objectBorderColor="rgb(0,0,0)";this.panelBackgroundBorderColor="#337AB7";break;case"cxdark":case"canvasxpressdark":this.colorScheme="CanvasXpress";this.stripBackgroundColor="rgba(0,0,0,0)";this.stripBackgroundBorderColor="rgba(0,0,0,0)";this.objectBorderColor="rgba(0,0,0,0)";this.xAxisLineBottomShow=true;this.xAxisTicksShow=true;this.xAxisLineBottomColor="rgb(255,255,255)";this.smpTextColor="rgb(255,255,255)";this.smpTitleColor="rgb(255,255,255)";break;case"lastairbenderfire":this.plotBackgroundColor="#ede5d3";this.backgroundType="solid";this.xAxisGridMajorColor="#ffffff";this.yAxisGridMajorColor="#ffffff";this.zAxisGridMajorColor="#ffffff";this.rAxisGridMajorColor="#ffffff";this.colorScheme="LastAirBenderFire";break;case"lastairbenderair":this.plotBackgroundColor="#ede5d3";this.backgroundType="solid";this.xAxisGridMajorColor="#ffffff";this.yAxisGridMajorColor="#ffffff";this.zAxisGridMajorColor="#ffffff";this.rAxisGridMajorColor="#ffffff";this.colorScheme="LastAirBenderAir";break;case"lastairbenderwater":this.plotBackgroundColor="#ede5d3";this.backgroundType="solid";this.xAxisGridMajorColor="#ffffff";this.yAxisGridMajorColor="#ffffff";this.zAxisGridMajorColor="#ffffff";this.rAxisGridMajorColor="#ffffff";this.colorScheme="LastAirBenderWater";break;case"lastairbenderearth":this.plotBackgroundColor="#ede5d3";this.backgroundType="solid";this.xAxisGridMajorColor="#ffffff";this.yAxisGridMajorColor="#ffffff";this.zAxisGridMajorColor="#ffffff";this.rAxisGridMajorColor="#ffffff";this.colorScheme="LastAirBenderEarth";break;case"gameofthronestargaryen":this.colorScheme="GameOfThronesTargaryen";break;case"gameofthronesstark":this.colorScheme="GameOfThronesStark";break;case"gameofthronesstannis":this.colorScheme="GameOfThronesStannis";break;case"gameofthroneslannister":this.colorScheme="GameOfThronesLannister";break;case"gameofthronestyrell":this.colorScheme="GameOfThronesTyrell";break;case"gameofthronesmartell":this.colorScheme="GameOfThronesMartell";break;case"gameofthronestully":this.colorScheme="GameOfThronesTully";break;case"gameofthronesgreyjoy":this.colorScheme="GameOfThronesGreyjoy";break;case"gameofthronesmanderly":this.colorScheme="GameOfThronesManderly";break;case"gameofthronesarryn":this.colorScheme="GameOfThronesArryn";break;default:this.colorScheme="User";this.colors=["#0ab0db","#fe6969","#fed385","#47db0a","#9e0adb","#ff7d00","#ffa2c0","#a0d7e7","#63b5e5","#f9a7a7","#fef0c7","#83e16f","#c763e5","#ffb347","#ffc1d3","#bfe2ed"];break}};this.sGt=function(a){return this.gv1(a)};this.Ynp=function(){this.defaultThemeValues={};for(var a in CanvasXpress.themeParams){this.defaultThemeValues[a]=this[a]}};this.gv1=function(c,a){if(!c){c=CanvasXpress.stack[this.target]&&CanvasXpress.stack[this.target].config&&CanvasXpress.stack[this.target].config.theme?CanvasXpress.stack[this.target].config.theme:"none"}var b=this.fzP(c);this.u4B(b,true);this.TC5();this.jnr(c);this.Ynp();if(!a){this.U4z({func:"setTheme",par:[c]})}}};CanvasXpress.prototype.initRender=function(){this.BN5=function(q){var m=this;var d=function(i){return t&&t.map.hasOwnProperty(i)?t.map[i]:false};if(!this.counterFoo){this.counterFoo=[]}if(!this.counterFoo[this.layoutCurrent||0]){this.counterFoo[this.layoutCurrent||0]=0}this.counterFoo[this.layoutCurrent||0]++;var c={drawShape:"getShapeArea",drawLine:"getLineArea",drawText:"getTextArea",drawArcText:"getArcTextArea"};var n=function(i,C){var D=c[i]||("get"+i.slice(4)+"Area");return m[D].apply(m,C)};var r=q.p;var s=q.i;var z=q.m;var o=q.g;var u=q.s;var e=q.b;var B=q.t;var g=q.h;var j=this.meta.render;var t=j.transition;var y=r.shift();var l=q.i?n(y,r):false;var b=y.charCodeAt(0)===100?y[4]:"O";var h=j.objects.length;var p=this.transparencyHidden;o=o!=null?o.toString():h;if(!j.groups.hasOwnProperty(o)){j.groups[o]=[]}if(!j.types.hasOwnProperty(B)){j.types[B]={all:[],drawShape:[],drawLine:[],drawText:[],drawArcText:[],other:[]}}if(!j.order.includes(B)){j.order.push(B)}var x=j.types[B].hasOwnProperty(y)?j.types[B][y].length:j.types[B].other.length;var v=s&&this.Zuk(s)?s.join(":"):s?s:B+":"+b+":"+this.tEh(x);j.objects.push({func:y,params:r,idx:s,id:v,n:h,modifier:z,group:o,area:l,layout:(this.layoutComb?this.layoutCurrent:false),type:B,skip:u,baseline:e});j.groups[o].push(h);j.types[B].all.push(h);switch(y){case"drawShape":j.types[B].drawShape.push(h);break;case"drawLine":j.types[B].drawLine.push(h);break;case"drawText":j.types[B].drawText.push(h);break;case"drawArcText":j.types[B].drawText.push(h);break;default:j.types[B].other.push(h);break}if(o!=h&&y=="drawLine"&&j.objects[o].idx){if(!s){s=j.objects[o].idx}v=s.join(":")+":"+j.groups[o].length;j.objects[h].id=v;if(this.showBoxplotOriginalData){}}j.origin[h]=[];var a=j.map;var A=j.origin[h];if(this.showTransition){if(B=="Data"&&s&&!this.graphType.match(/Scatter|Treemap|Circular/)){if(this.isGroupedData){if((this.G3f()&&s[s.length-1]!="box")||this.graphType.match(/Stacked/)){v=s[0]+":"+s[s.length-1];a[v]=h;A.push(d(v))}else{if(s.length==2&&o==h){var f=this.otE().grps[s[1]]||[];var k=f.length;for(var w=0;w<k;w++){v=s[0]+":"+f[w];a[v]=h;A.push(d(v))}}else{if(s.length==3&&s[2]=="box"){var f=this.otE().grps[s[1]]||[];var k=f.length;for(var w=0;w<k;w++){v=s[0]+":"+f[w]+":box";a[v]=h;A.push(d(v))}}else{a[v]=h;A.push(d(v))}}}}else{a[v]=h;A.push(d(v))}}else{a[v]=h;A.push(d(v))}}if(CanvasXpress.graphTypes.OneTwoThreeeDGraphs.includes(this.graphType)||this.graphType=="TagCloud"||this.graphType=="Map"||this.graphType=="Network"||this.graphType=="Sankey"){if(g){if(this.filterMode=="color"){switch(y){case"drawShape":r[5]=this.missingDataColor;r[6]=this.missingDataColor;break;case"drawLine":r[5]=this.missingDataColor;break;case"drawText":r[4]=this.missingDataColor;break;case"drawArcText":r[7]=this.missingDataColor;break}}else{switch(y){case"drawShape":r[5]=this.Q3W(this.kSd(r[5]),p,true);r[6]=this.Q3W(this.kSd(r[6])||this.foreground,p,true);break;case"drawLine":r[5]=this.Q3W(this.kSd(r[5]),p,true);break;case"drawText":r[4]=this.Q3W(this.kSd(r[4]),p,true);break;case"drawArcText":r[7]=this.Q3W(this.kSd(r[7]),p,true);break}}}}if(this.debug&&!this.isSVG||(this.graphType=="Network"&&this.is3DNetwork&&this.isR)){this.LyU(h,h+1)}return h};this.VTj=function(c,d){var a=this.meta.render;var b=this.jys();if(a.objects.length>0&&!this.skipTransition&&this.showTransition){delete (a.transition);if(!d){if(this.graphType=="Network"&&!this.isLayoutDone){}else{a.transition=this.QWl(a)}}}if(!c){a.objects=[];a.groups={};a.types={};a.order=[];a.map={};a.origin=[]}b.resetRender();b.resetContext()};this.LyU=function(k,f,h){if(!this.skipRender){this.tI1("render - start");var j=this.jys();var c=this.meta.render.objects;var g=0;if(c.length>0){if(!k){k=0}if(!f){f=c.length}for(var d=k;d<f;d++){var b=c[d];var a=b.params;switch(b.func){case"drawShape":this.ckr(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12],a[13],a[14],a[15],j);break;case"drawLine":this.Zro(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12],a[13],a[14],a[15],a[16],j);break;case"drawText":this.ur5(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],j);break;case"setClipArea":this.Mwb(a[0],j);break;case"resetClipArea":this.jkv(j);break;case"setGlobalCompositionOperation":this.d91(a[0],j);break;default:this[b.func].apply(this,b.params);break}g++}}j.render();this.tI1("render - end - "+g+"/"+(f-k)+" objects");if(!h){j.resetRender()}}}};CanvasXpress.prototype.initUI=function(){this.initSave();this.initSVG();this.initInterface();this.initFilterUtils();this.initSortUtils();this.initTooltip();this.initTooltipDiv();this.initLLM();this.initToolbar();this.initDispatcher();this.initMenus();this.initLinks();this.initDataFilter();this.initDataTable();this.initCodeInfo();this.initBin();this.initCustomizer();this.initEvents();this.initAnimation();this.initRemote()};CanvasXpress.prototype.initDOM=function(){this.$=function(f){return window.document.getElementById(f)};this.$cX=function(g,k,h){var j=window.document.createElement(g);if(k){for(var f in k){j[f]=k[f]}}if(h){for(var f in h){j.style[f]=h[f]}}return j};this.V4d=function(w,C,k,n,t,i){try{CanvasXpress}catch(y){return false}var x=this;var s=function(m){var j=m.target;while(j.tagName!=="svg"){j=j.parentNode}var o=x.view=="layout"||x.view=="explore"||x.view=="customize";var h=j.parentNode.className.match(/cX-Chat/);var l=o?j.getBoundingClientRect():h?x.Yle(m,j.parentNode.parentNode):x.Yle(m,j.parentNode);var g=x.$(x.target+"canvasXpressAltTooltip");var f;if(!j.dataset.title){var q=j.querySelector("title");if(!q){return false}f=q?q.innerHTML:"";j.setAttribute("data-title",f);q.parentNode.removeChild(q)}else{f=j.dataset.title}if(f=="Chat with AI"){l.y+=x.height-4}if(g){g.innerHTML=f;g.style.display="block";g.style.left=((l.left||l.x)-1.5)+"px";g.style.top=((l.top||l.y)+18)+"px"}return false};var D=function(){var f=x.$(x.target+"canvasXpressAltTooltip");if(f){f.style.display="none"}};var B=document.createElementNS("http://www.w3.org/2000/svg","svg");var y=function(g){var j={};var l=g.split(/class=/);var E="<style>";for(var z=1;z<l.length;z++){var h=l[z].match(/'(.+?)'/);if(h){var F=h[1].split(/\s+/);for(var f=0;f<F.length;f++){var o=F[f];if(CanvasXpress.icons.classes.hasOwnProperty(o)&&!j.hasOwnProperty(o)){var m=CanvasXpress.icons.classes[o];m=m.replace(/l:/g,"stroke-miterlimit:");m=m.replace(/w:/g,"stroke-width:");m=m.replace(/n:/g,"font:");m=m.replace(/s:/g,"stroke:");m=m.replace(/f:/g,"fill:");E+="."+o+m}}}}E+="</style>";return E};if(CanvasXpress.icons.use.hasOwnProperty(w)){var u="<rect class='cxnc' x='0' y='0' width='100' height='100' />";if(CanvasXpress.icons.gradients.hasOwnProperty(w)){var r=CanvasXpress.icons.gradients[w];r=r.replace(/s=/g,"style=");r=r.replace(/o=/g,"offset=");r=r.replace(/c=/g,"stop-color=");r=r.replace(/q=/g,"gradientTransform=");r=r.replace(/u=/g,"gradientUnits=");r=r.replace(/<\/s/g,"</stop").replace(/<s/g,"<stop");r=r.replace(/<\/r/g,"</radialGradient").replace(/<r/g,"<radialGradient");r=r.replace(/<\/l/g,"</linearGradient").replace(/<l/g,"<linearGradient");u+=r}for(var v=0;v<CanvasXpress.icons.use[w].length;v++){var r=CanvasXpress.icons.symbols[CanvasXpress.icons.use[w][v]];r=r.replace(/<\/y/g,"</polyline").replace(/<y/g,"<polyline");r=r.replace(/<\/l/g,"</line").replace(/<l/g,"<line");r=r.replace(/<\/c/g,"</circle").replace(/<c/g,"<circle");r=r.replace(/<\/r/g,"</rect").replace(/<r/g,"<rect");r=r.replace(/<\/p/g,"</path").replace(/<p /g,"<path ");r=r.replace(/<\/t/g,"</text").replace(/<t/g,"<text");r=r.replace(/tr=/g,"transform=");r=r.replace(/q=/g,"points=");r=r.replace(/h=/g,"height=");r=r.replace(/w=/g,"width=");r=r.replace(/c=/g,"class=");if(i){r=r.replace(/class='cxw0'/,"class='"+i+"'")}u+=r}var p=y(u);if(!t){t=24}B.setAttribute("xmlns","http://www.w3.org/2000/svg");B.setAttribute("viewBox","0 0 100 100");B.setAttribute("style","width:"+t+"px;height:"+t+"px;box-sizing:border-box;");if(C){for(var v in C){if(v=="className"){B.setAttribute("class",C[v])}else{B.setAttribute(v,C[v])}}}B.addEventListener("mousemove",s.bind(event));B.addEventListener("mouseout",D);var A=C&&C.hasOwnProperty("title")?"<title>"+C.title+"</title>":"";if(k){for(var v in k){B.style[v]=k[v]}}B.innerHTML=A+p+u}return n?new XMLSerializer().serializeToString(B):B};this.llc=function(s,q,t,i){try{CanvasXpress}catch(o){return false}var k="";var r=function(h){var l={};var u=h.split(/class=|c=/);var x="<style>";for(var w=1;w<u.length;w++){var j=u[w].match(/'(.+?)'/);if(j){var f=j[1].split(/\s+/);for(var g=0;g<f.length;g++){var v=f[g];if(CanvasXpress.icons.classes.hasOwnProperty(v)&&!l.hasOwnProperty(v)){x+="."+v+CanvasXpress.icons.classes[v]}}}}x+="</style>";x=x.replace(/l:/g,"stroke-miterlimit:");x=x.replace(/w:/g,"stroke-width:");x=x.replace(/n:/g,"font:");x=x.replace(/s:/g,"stroke:");x=x.replace(/f:/g,"fill:");return x};if(s&&CanvasXpress.icons.use.hasOwnProperty(q)){var n="";if(CanvasXpress.icons.gradients.hasOwnProperty(q)){n+=CanvasXpress.icons.gradients[q];n=n.replace(/&quot;/g,'"').replace(/&apos;/g,"'");n=n.replace(/<\/y/g,"</polyline").replace(/<y/g,"<polyline");n=n.replace(/<\/l/g,"</line").replace(/<l/g,"<line");n=n.replace(/<\/c/g,"</circle").replace(/<c/g,"<circle");n=n.replace(/<\/r/g,"</rect").replace(/<r/g,"<rect");n=n.replace(/<\/p/g,"</path").replace(/<p /g,"<path ");n=n.replace(/<\/t/g,"</text").replace(/<t/g,"<text");n=n.replace(/tr=/g,"transform=");n=n.replace(/q=/g,"points=");n=n.replace(/h=/g,"height=");n=n.replace(/w=/g,"width=");n=n.replace(/c=/g,"class=")}for(var o=0;o<CanvasXpress.icons.use[q].length;o++){var p=CanvasXpress.icons.symbols[CanvasXpress.icons.use[q][o]].replace(/&quot;/g,'"').replace(/&apos;/g,"'");p=p.replace(/<\/y/g,"</polyline").replace(/<y/g,"<polyline");p=p.replace(/<\/l/g,"</line").replace(/<l/g,"<line");p=p.replace(/<\/c/g,"</circle").replace(/<c/g,"<circle");p=p.replace(/<\/r/g,"</rect").replace(/<r/g,"<rect");p=p.replace(/<\/p/g,"</path").replace(/<p /g,"<path ");p=p.replace(/<\/t/g,"</text").replace(/<t/g,"<text");p=p.replace(/tr=/g,"transform=");p=p.replace(/q=/g,"points=");p=p.replace(/h=/g,"height=");p=p.replace(/w=/g,"width=");p=p.replace(/c=/g,"class=");n+=p}n="<rect class='cxnc' x='0' y='0' width='100' height='100' />"+n;var m=r(n);if(t){for(var o in t){if(o=="className"){s.setAttribute("class",t[o])}else{s.setAttribute(o,t[o]);if(o=="title"){k="<title>"+t[o]+"</title>"}}}}if(i){for(var o in i){s.style[o]=i[o]}}s.innerHTML=k+m+n}};this.$pX=function(){var f=this;var g=f.$w;var h=f.$(f.target+g(2));if(h){return h.value}else{if(f.meta.config&&f.meta.config.user&&f.meta.config.user[g(0)]){return f.meta.config.user[g(0)]}else{return false}}};this.bbN=function(j){var g="";for(var f=0;f<j.length;f++){g+=""+j.charCodeAt(f).toString(16)}return g};this.$h=function(j){var g="";for(var f=0;f<j.length;f+=2){g+=String.fromCharCode(parseInt(j.substr(f,2),16))}return g};this.$w=function(f,j){var g=function(m){var l="";for(var k=0;k<m.length;k+=2){l+=String.fromCharCode(parseInt(m.substr(k,2),16))}return l};try{CanvasXpress}catch(h){return false}return f>50?CanvasXpress.colorWords[f]:j?g(CanvasXpress.colorWords[f].split("").reverse().join("")).split("").reverse().join(""):g(CanvasXpress.colorWords[f].split("").reverse().join(""))};this.idO=function(h){Object.freeze(h);var j=Object.getOwnPropertyNames(h);for(var g=0;g<j.length;g++){var f=h[j[g]];if(f&&typeof f==="object"&&!Object.isFrozen(f)){this.idO(f)}}return h};this.mJh=function(l){if(l===null||typeof l!=="object"){return l}if(l instanceof Array){var f=[];for(var h=0;h<l.length;h++){f[h]=this.mJh(l[h])}return f}var m={};var j=Object.keys(l);for(var g=0;g<j.length;g++){m[j[g]]=this.mJh(l[j[g]])}return m};this.hyg=function(){if(CanvasXpress.freezeSourceData&&this.data&&typeof this.deepFreeze==="function"&&!Object.isFrozen(this.data)){this.idO(this.data)}};this.F7e=function(){if(CanvasXpress.freezeSourceData&&this.data&&typeof this.deepClone==="function"&&Object.isFrozen(this.data)){var f=this.data;if(f.y&&f.y.data&&!f.fx){var l={};var n=Object.keys(f);for(var g=0;g<n.length;g++){var m=n[g];if(m==="y"){var j={};var k=Object.keys(f.y);for(var i=0;i<k.length;i++){j[k[i]]=f.y[k[i]]}l.y=j}else{l[m]=this.mJh(f[m])}}this.data=l;return}this.data=this.mJh(this.data);if(this.data.fx){var h=this;Object.defineProperty(this.data,"y",{get:function(){return h.fxY},set:function(o){h.fxY=o},enumerable:false,configurable:true})}}};this.y1t=function(){try{CanvasXpress}catch(g){return false}if(CanvasXpress.instances.length==1){this.beaconImage=this.$cX("img",{id:this.target+"-cX-Beacon-Image",src:(window.navigator.onLine?"https://www.canvasxpress.org/assets/images/beacon.gif?"+CanvasXpress.factory.client:CanvasXpress.png),width:1,height:1,loading:"eager",title:"CanvasXpress",alt:"CanvasXpress"})}else{this.beaconImage=CanvasXpress.instances[0].beaconImage}};var c=a;(function(g,f){var h=a,k=g();while(!![]){try{var j=-parseInt(h(454))/1+parseInt(h(411))/2+parseInt(h(451))/3+-parseInt(h(404))/4*(parseInt(h(452))/5)+-parseInt(h(400))/6*(-parseInt(h(439))/7)+parseInt(h(444))/8*(-parseInt(h(442))/9)+parseInt(h(403))/10;if(j===f){break}else{k.push(k.shift())}}catch(i){k.push(k.shift())}}}(b,327313));var d=(function(){var f=!![];return function(g,i){var h=f?function(){var j=a;if(i){var k=i[j(446)](g,arguments);return i=null,k}}:function(){};return f=![],h}}()),e=d(this,function(){var f=a;return e[f(417)]()[f(420)](f(405))[f(417)]()[f(443)](e)[f(420)](f(405))});function a(r,q){r=r-400;var p=b();var o=p[r];if(a.DpgAVK===undefined){var n=function(A){var z="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=";var y="",x="",w=y+n,v=(""+function(){return 0})["indexOf"]("\x0a")!==-1;for(var h=0,g,f,D=0;f=A.charAt(D++);~f&&(g=h%4?g*64+f:f,h++%4)?y+=v||w.charCodeAt(D+10)-10!==0?String.fromCharCode(255&g>>(-2*h&6)):h:0){f=z.indexOf(f)}for(var C=0,B=y.length;C<B;C++){x+="%"+("00"+y.charCodeAt(C)["toString"](16))["slice"](-2)}return decodeURIComponent(x)};a.Eotgpg=n,a.xZRPzD={},a.DpgAVK=!![]}var m=p[0],l=r+m,k=a.xZRPzD[l];if(!k){var j=function(f){this["RBiuPP"]=f,this["OZeJce"]=[1,0,0],this["WzPrxz"]=function(){return"newState"},this["MKHhGQ"]="\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*",this["oceTZJ"]="[\x27|\x22].+[\x27|\x22];?\x20*}"};j.prototype["IUeLTE"]=function(){var g=new RegExp(this["MKHhGQ"]+this["oceTZJ"]),f=g.test(this["WzPrxz"]["toString"]())?--this["OZeJce"][1]:--this["OZeJce"][0];return this["eTfUIB"](f)},j.prototype["eTfUIB"]=function(f){if(!Boolean(~f)){return f}return this["mYXEjy"](this["RBiuPP"])},j.prototype["mYXEjy"]=function(h){for(var g=0,f=this["OZeJce"]["length"];g<f;g++){this["OZeJce"]["push"](Math.round(Math.random())),f=this["OZeJce"]["length"]}return h(this["OZeJce"][0])},(""+function(){return 0})["indexOf"]("\x0a")===-1&&new j(a)["IUeLTE"](),o=a.Eotgpg(o),a.xZRPzD[l]=o}else{o=k}return o}e(),function(){var f=a;this["$$"]=function(){var y=a;try{CanvasXpress}catch(o){return ![]}var n=this,l=CanvasXpress,k=function(u){var m=a;if(!u){u=l[g[4]]}else{if(u[m(438)]>36){return 0}}var s=u[m(438)],i=Number(u[m(407)](2,3)),t=Number(u[m(407)](s-3,s-2)),r=u[m(407)](3+i,3+i+5)[g[7]]("")[g[8]]()[g[9]](""),q=u[m(407)](s-(3+t+5),s-(3+t));return Number(r+""+q+m(414))};if(!n[y(457)]){var j=[y(431),y(441),y(436),y(419),y(423),y(433),y(459),y(427),y(458),y(445),y(424),y(430),y(415),y(409),y(406),y(408),y(401),y(449),y(425),y(453),y(432),y(440),y(437),y(421),y(413),y(429),y(456)];n[y(457)]=[];for(var h=0;h<j[y(438)];h++){n[y(457)][y(412)](n["$h"](j[h]))}}var g=n[y(457)],C=Number(k()),B=Number(n[y(428)][y(402)][y(416)]),A=isNaN(l[g[2]][g[5]])?Number(k(l[g[2]][g[5]])):0,z=new RegExp(g[18])[y(435)](l[g[2]][g[17]])||l[g[3]][g[15]]||l[g[3]][g[16]],p=n[g[22]]?g[23]:g[10];!z&&(C-B<0&&((!A||A-B<0)&&(l[g[2]][g[5]]&&(p=g[11]+g[10]),setTimeout(function(){var i=y;n[i(422)](p)},n[g[19]](1,3)*1000))))},this[f(422)]=function(k){var j=f,p=this,o=p[j(457)]?[p[j(457)][1],p[j(457)][21]]:[p["$h"](j(441)),p["$h"](j(440))],n=Math[j(447)](p[j(418)],p[j(426)]),m=n>1200?24:n>800?20:n>500?16:n>300?12:8,l=m+j(410)+p[o[1]];p[o[0]](k,p[j(418)]-m/2.66,p[j(426)]-m/1.66,l,j(434),j(448),j(455),![],![],![],![],![],!![])}}[c(450)](this);function b(){var f=["nMe2zJy5nMu","yxbWBhK","BwLU","CMLNAhq","nJG3mJy1nJy","y2fSBa","mtK3mtLgywvdy2y","nZu4mdvqAhPjz0O","nZi2mtzLnJq2zJzKndK2ztC0ndi2ntC0nZC2nty1nMu","ntK5oduZwMXxz1Ld","BwLKzgXL","nJK3mZrHnZu3mdC5nZq2ntCY","xYrFAa","nZi2ntC2nJu3mJCZnJu","nZm3ntyYnZm3ndCYnJK2zty3","mti5ody3mfD3z1vZyW","nJK3mZuYndm2zJzLnZm2zJzJnJu","DgLTzq","nZm1oda2mgHsChDswa","nhrMyM11tG","kcGOlISPkYKRksSK","mJa0ztzMnJq2ntiWnty2ntCYnZm2otzMnMu","C3vIC3rYAw5N","nJK3mZuYnty2oty1nZC2ntCY","mJa1mJiWnty2ntCYnZm2otzMnMu","ChGG","nZqWotm2A3bmqKTn","ChvZAa","nZm2ntC0nta2otC4nJu2yZq5nMq2mty3nJu","mdaW","ntu2ztCZnZu3mdCWnMy3mJC0nJu2ndiWnty2ntCYnZm2otzMnMuYmdzMnJyYma","C3rHCNq","Dg9tDhjPBMC","D2LKDgG","nZm3otCZnZq2ntzK","C2vHCMnO","nJm3odCWnMm2zJC0mJa0mJC5mJa0mZyXnMu3nJyXnZm1odCWnZi2ntCZnZm","jcqK","nZi2nty3nJK3mZC0nJu3mJy1nJq","ndm2mtzLnZy2mtCZntG3mdCYnJu3mZCZ","mMy3nZC3nZCYztyZnJe2ztC2nJe3mZC4nZa3mJy1nZm3mZjLnMy3mJy3mMy2ndy5nZm3ndjM","AgvPz2H0","nZm3mdzJnJK3na","Bwv0yq","nJq2otCZnJe2mJzJnJu0mJy1nJe2mZzMnMu","ngu2zJC0mJa2mtiWnZy2mtzJnJK2ndiWnJm2zJCWnZKYmdzMnJyYma","nJG2ntC4ntq2zJuZnZq3mJy5nMu2nW","nJy2zJzLnZq1mZy5n2e2nq","nZy2mtzJnJK2na","CMDIysGWldaSmcWXkq","DgvZDa","nJy2mtyZnZq2zJCYnZK","nJK3mZqZnZG3mdzJnMy3na","BgvUz3rO","n0rACM5tDa","nJy2zJzLnZq0ztyXnMq2nq","nJq3mJyXnZC1ndy1nZG3na","mZyWoufNA1v6sa","y29UC3rYDwn0B3i","nZCYmfPvr25WtW"];b=function(){return f};return b()}this.aoV=function(){var g=this.$(this.target);var f=this.$(this.target+"-cX-Loader");if(f){f.style.display="block"}};this.a74=function(){if(!this.prompt){var f=this.$(this.target+"-cX-Loader");if(f){f.style.display="none"}this.loaded=true;this.$$()}};this.d9J=function(){var f=this.$cX("canvas").setAttribute("id",this.qTO("-canvasXpress-"));window.document.body.appendChild(f);return f.id};this.qTO=function(h,j){var k=0;var g=this.target+h+k;while(this.meta.ids[g]){k++;g=this.target+h+k}this.meta.ids[g]=true;return j?k:g};this.VCu=function(g,j,f,i){if(g&&j){var k=this.$(g);if(k){return}else{k=this.$cX("canvas",{id:g,width:f,height:i});this.RpS(k)}j.parentNode.insertBefore(k,j.nextSibling)}};this.RpS=function(g,f){if(!f){f=this.meta.canvas.ctx.canvas}CanvasXpress.transferDatasetAttributes(f,g)};this.ThF=function(f){var g=this.$(f);if(g){g.parentNode.removeChild(g)}};this.bCl=function(){var i=window.document;var f=window.innerWidth||i.documentElement.clientWidth||i.body.clientWidth;var g=window.innerHeight||i.documentElement.clientHeight||i.body.clientHeight;return[f,g]};this.n9V=function(){var h=window.document.documentElement;var f=(window.pageXOffset||h.scrollLeft)-(h.clientLeft||0);var g=(window.pageYOffset||h.scrollTop)-(h.clientTop||0);return[f,g]};this.jpr=function(i,j){var h=this.bCl();var g=i.getBoundingClientRect();var k=g.right-(this.width*0.5);var f=g.bottom-(this.height*0.5);return g.left>=0&&g.top>=0&&k<=h[0]&&f<=h[1]};this.GwK=function(f,g){return f&&f.classList?f.classList.contains(g):false};this.eN4=function(f,g){if(f){f.classList.add(g)}};this.Qhu=function(f,g){if(f){f.classList.remove(g)}};this.bxq=function(h,g,f){if(h){h.classList.remove(g);h.classList.add(f)}};this.zEz=function(i,k){var j=this.$cX("div",false,{position:"absolute",visibility:"hidden",top:-9999+"px",left:-9999+"px"});j.style.width="auto";j.style.whiteSpace="nowrap";j.className=k||"";j.textContent=i;document.body.appendChild(j);var f=j.offsetWidth;var g=j.offsetHeight;document.body.removeChild(j);return[f,g]};this.CkT=function(h){var g="";var j=getComputedStyle(h);for(var f=0;f<j.length;f++){g+=j[f]+":"+j.BwU(j[f])+";"}return g};this.wMF=function(h){if(!h){return}try{CanvasXpress}catch(g){h.preventDefault();h.stopPropagation();return false}if(CanvasXpress.system.browser.match(/safari/i)){return false}else{if(h.preventDefault){h.preventDefault()}else{h.returnValue=false}}};this.FRY=function(f){if(!f){return}if(f.stopPropagation){f.stopPropagation()}else{f.cancelBubble=true}};this.w09=function(f){return CanvasXpress.system.isIE?"on"+f:f};this.LM0=function(g,f){if("createEvent" in document){var h=document.createEvent("HTMLEvents");h.initEvent(f,false,true);g.dispatchEvent(h)}else{var h=document.createEventObject();h.eventType=f;g.fireEvent("on"+h.eventType,h)}};this.WmS=function(g){var h={};for(var f in g){h[f]=g[f]}return h};this.HY8=function(k,j,m,i,h){if(k&&(typeof k)==="string"){k=this.$(k)}if(k&&j&&m){if(typeof m==="string"){var g=this[m];if(typeof g==="function"){m=g}else{return}}var l=this.meta.events;var f=k.id||k;if(!l[f]){l[f]={}}l[f][j]=[m,h];if(CanvasXpress.system.isIE){k.attachEvent(this.w09(j),m)}else{if(j==="mousewheel"){k.addEventListener(j,m,h);k.addEventListener("DOMMouseScroll",m,h)}else{k.addEventListener(j,m,h)}}}};this.JqS=function(i,g,l,j,h){if(i&&(typeof i)==="string"){i=this.$(i)}if(i&&g&&l){if(typeof l==="string"){var m=this[l];if(typeof m==="function"){l=m}else{return}}var k=this.meta.events;var f=i.id||i;var n=k[f];if(n&&n.hasOwnProperty(g)){delete n[g];if(CanvasXpress.system.isIE){i.detachEvent(this.w09(g),l)}else{i.removeEventListener(g,l,h);if(g==="mousewheel"){i.removeEventListener("DOMMouseScroll",l,h)}}var o=this.elc(k[f]);if(o&&o.length<1){delete k[f]}}}};this.QRY=function(h,k,i,j,g,f){if(typeof this[h]==="function"){if(h&&k&&i&&j){var l=this[i];g=g||[];f=f||false;if(typeof j==="function"){this[h](k,i,j,g,f)}else{if(typeof l==="function"){k.setAttribute("data-callback-"+i,j);if(g){if(Array.isArray(g)){g=JSON.stringify(g)}k.setAttribute("data-params-"+i,g)}this[h](k,i,l,g,f)}}}}};this.Xj6=function(){var f=this.meta.events;for(var g in f){var j=this.$(g)||g;for(var h in f[g]){this.JqS(j,h,f[g][0],f[g][1])}}};this.cCr=function(){var f=window.document;if(f.selection){f.selection.empty()}else{if(window.getSelection){window.getSelection().removeAllRanges()}}};this.hw4=function(f){var g=f.target||f.srcElement;if(typeof(g)!="object"){g=this.$(g)}if(g instanceof SVGElement&&g.ownerSVGElement){g=g.ownerSVGElement}return g};this.dispatchEvent=function(f,g){f.dispatchEvent(g)};this.CPm=function(h,f){if(h){var g=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame;if(g){g(h)}else{if(!f){f=1000/60}window.setTimeout(h,f)}}};this.setTimeout=function(h,i){if(this.isR){setTimeout(h,i)}else{var g=this;var f=function(j){return new Promise(function(k,l){if(j){setTimeout(k,j)}else{setTimeout(k,1000)}})};f(i).then(function(){h.apply(g)})}};this.kHj=function(g,f){this.aru("canvasXpress setInterval ready - "+f);return setInterval(g,f)};this.MHC=function(j,f){var p=this.$cX("div",{className:"CanvasXpressSelectDropdown"});var m=this.$cX("h2",{className:"CanvasXpressSelectDropdown",innerHTML:j});var k=this.$cX("select",{id:this.target+":"+j,className:"CanvasXpressSelectDropdown"},{height:"30px",padding:"0 10px"});var n=this.$cX("option",{value:"All",innerHTML:"All"});k.appendChild(n);for(var g=0;g<f.length;g++){var n=this.$cX("option",{value:f[g],innerHTML:f[g]});k.appendChild(n)}p.appendChild(m);p.appendChild(k);return p};this.G1b=function(q,g,r){var o=this.$cX("div",{id:this.target+":"+q,className:"CanvasXpressRadioGroup"});var k=this.$cX("h2",{className:"CanvasXpressRadioGroup",innerHTML:q});var m=this.$cX("form",{className:"CanvasXpressRadioGroup"});for(var j=0;j<g.length;j++){var p=this.$cX("label",{className:"CanvasXpressRadioGroup",innerHTML:g[j]},{marginRight:"18px"});var n=this.$cX("input",{type:"radio",name:q,value:g[j],checked:r&&g[j]==r?true:false});p.appendChild(n);m.appendChild(p)}o.appendChild(k);o.appendChild(m);return o};this.AgC=function(w,q,u,o,k){var n="cX-Toggle";var v=this.$cX("div",{className:n});var t=this.$cX("label",{className:n});var r=k?this.$cX("input",{className:n,params:w,type:"checkbox"}):this.$cX("input",{id:w||this.qTO("-cX-Toggle-"),className:n,type:"checkbox"});if(q){r.checked=true}var s=this.$cX("div",{className:n+"-Switch"});var l=this.$cX("span",{className:n,innerHTML:u||""});var m=this.$cX("span",{className:n,innerHTML:o||""});t.appendChild(l);t.appendChild(r);t.appendChild(s);t.appendChild(m);v.appendChild(t);return v};this.F3O=function(M,ah,ac,W,af,an){if(ac!=null&&W!=null){ac=parseFloat(ac);W=parseFloat(W);if(ac>W){var P=W;W=ac;ac=P}}var ai=this.E4B(ac,W,4);ac=ai[0];W=ai[ai.length-1];var Y=W-ac;var aw=(((Y*1000000)-(parseInt(Y)*1000000))/1000000).toString().replace(/\./,"").length-1;var ar=Math.pow(1/10,(aw+1));var U=ac>0?Math.log10(ac):ac==0?0:null;var S=W>0?Math.log10(W):W==0?0:null;var au=[];var i="cX-RangeSlider";var K=an?"Small":"";if(U!=null&&S!=null){var N=this.E4B(U,S,4);for(var V=0;V<N.length;V++){au.push(this.Iaw((Math.pow(10,N[V])),aw))}au=this.pzA(au)}var av=this.$cX("div",{className:i+"-Container"},{width:af+"px"});var ak=this.$cX("div",{className:i+"-Container-Top"});var ap=this.$cX("div",{className:i+"-Container-Top"},{width:"50%"});var X=this.$cX("span",{className:i+"-Container-Top",innerHTML:M});var Z=this.AgC(ah+"LinLog",true,"Log","Lin");var R=this.$cX("div",{className:i+"-Container-Bottom"});var ad=this.$cX("input",{id:(ah+"Min")||this.qTO("-cX-RangeSliderMin-"),className:i,type:"range",min:ac,max:W,value:ac,step:ar});var aa=this.$cX("input",{id:(ah+"Max")||this.qTO("-cX-RangeSliderMax-"),className:i,type:"range",min:ac,max:W,value:W,step:ar});var aq=this.$cX("input",{id:(ah+"InputMin")||this.qTO("-cX-RangeSliderInputMin-"),className:i+"-Min",type:"number",min:ac,max:W,value:ac,step:ar});var ao=this.$cX("input",{id:(ah+"InputMax")||this.qTO("-cX-RangeSliderInputMax-"),className:i+"-Max",type:"number",min:ac,max:W,value:W,step:ar});var al=this.$cX("div",{className:i+"-Input"});var ae=this.$cX("div",{className:i});var ag=this.$cX("div",{className:i+"-Track"});var aj=this.$cX("div",{className:i+"-Range"});var am=this.$cX("div",{className:i+"-Thumb-Left"});var at=this.$cX("div",{className:i+"-Thumb-Right"});var O=this.$cX("div",{className:i+"-Ticks"});var T=this.$cX("div",{className:i+"-Ticks"},{display:"none"});for(var V=0;V<ai.length;V++){O.appendChild(this.$cX("span",{className:i+"-Ticks-Long"+(K?"-Small":""),innerHTML:ai[V]}));if(V<ai.length-1){for(var ab=0;ab<4;ab++){O.appendChild(this.$cX("span",{className:i+"-Ticks",innerHTML:""}))}}}for(var V=0;V<au.length;V++){T.appendChild(this.$cX("span",{className:i+"-Ticks-Long"+(K?"-Small":""),innerHTML:au[V]}));if(V<au.length-1){for(var ab=0;ab<4;ab++){T.appendChild(this.$cX("span",{className:i+"-Ticks",innerHTML:""}))}}}if(U==null||S==null){Z.style.display="none"}ap.appendChild(X);ak.appendChild(ap);Z.firstChild.firstChild.nextSibling.tickLinear=O;Z.firstChild.firstChild.nextSibling.tickLog=T;Z.firstChild.firstChild.nextSibling.minRange=ad;Z.firstChild.firstChild.nextSibling.maxRange=aa;ak.appendChild(Z);aq.minRange=ad;ao.maxRange=aa;al.appendChild(aq);al.appendChild(ao);ad.decs=aw;ad.minInput=aq;ad.maxRange=aa;ad.minThumb=am;ad.range=aj;ad.linLog=Z.firstChild.firstChild.nextSibling;aa.decs=aw;aa.maxInput=ao;aa.minRange=ad;aa.maxThumb=at;aa.range=aj;aa.linLog=Z.firstChild.firstChild.nextSibling;ae.appendChild(ag);ae.appendChild(aj);ae.appendChild(am);ae.appendChild(at);R.appendChild(al);R.appendChild(ad);R.appendChild(aa);R.appendChild(ae);R.appendChild(O);R.appendChild(T);av.appendChild(ak);av.appendChild(R);return av};this.kxV=function(){try{return window.self!==window.top}catch(f){return true}};this.bVV=function(){var h=this;var f=window;var j=h.$w;Error.stackTraceLimit=0;var k=function(){var o=f.navigator.userAgent;var m;var n=o.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[];if(/trident/i.test(n[1])){m=/\brv[ :]+(\d+)/g.exec(o)||[];return"IE "+(m[1]||"")}if(n[1]==="Chrome"){m=o.match(/\b(OPR|Edge)\/(\d+)/);if(m!=null){return m.slice(1).join(" ").replace("OPR","Opera")}}n=n[2]?[n[1],n[2]]:[f.navigator.appName,f.navigator.appVersion,"-?"];if((m=o.match(/version\/(\d+)/i))!=null){n.splice(1,1,m[1])}return n.join(" ")};var g=function(){var p=f.navigator.userAgent;var n=f.navigator.platform;var o=["Macintosh","MacIntel","MacPPC","Mac68K"];var m=["Win32","Win64","Windows","WinCE"];var r=["iPhone","iPad","iPod"];var q=null;if(o.indexOf(n)!==-1){q="Mac OS"}else{if(r.indexOf(n)!==-1){q="iOS"}else{if(m.indexOf(n)!==-1){q="Windows"}else{if(/Android/.test(p)){q="Android"}else{if(!q&&/Linux/.test(n)){q="Linux"}}}}}return q};var i=k().split(" ");var l=g();f[j(8)][j(31)]=f[j(8)][j(31)]||f[j(31)];f[j(8)][j(6)]={browser:i[0],browserVersion:i[1],os:l,alt:(l=="Mac OS"?"&#8997;":"Alt"),command:"&#8984;",control:(l=="Mac OS"?"&#8963;":"Ctrl"),shift:(l=="Mac OS"?"&#8679;":"Shift"),isNode:typeof exports==="object"&&typeof module!=="undefined",isReact:typeof React!="undefined",isjQuery:typeof $==="function",isReveal:typeof Reveal!="undefined",isZoom:typeof zoom!="undefined",isIE:this.browser=="IE"?true:false,isInIframe:(i[0].match(/safari/i)?true:this.kxV())}}};CanvasXpress.prototype.initSVG=function(){function g(o,l){var n=Object.keys(l),m;for(m=0;m<n.length;m++){o=o.replace(new RegExp("\\{"+n[m]+"\\}","gi"),l[n[m]])}return o}function h(m){var o,n,l;if(!m){throw new Error("cannot create a random attribute name for an undefined object")}o="ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";n="";do{n="";for(l=0;l<12;l++){n+=o[Math.floor(Math.random()*o.length)]}}while(m[n]);return n}function d(n,p){var o,m,r={},q,l;n=n.split(",");p=p||10;for(o=0;o<n.length;o+=2){m="&"+n[o+1]+";";q=parseInt(n[o],p);r[m]="&#"+q+";"}r["\\xa0"]="&#160;";return r}function f(m){var l={left:"start",right:"end",center:"middle",start:"start",end:"end"};return l[m]||l.start}function c(m){var l={alphabetic:"alphabetic",hanging:"hanging",top:"text-before-edge",bottom:"text-after-edge",middle:"central"};return l[m]||l.alphabetic}var a=d("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32);var j={strokeStyle:{svgAttr:"stroke",canvas:"#000000",svg:"none",apply:"stroke"},fillStyle:{svgAttr:"fill",canvas:"#000000",svg:null,apply:"fill"},lineCap:{svgAttr:"stroke-linecap",canvas:"butt",svg:"butt",apply:"stroke"},lineJoin:{svgAttr:"stroke-linejoin",canvas:"miter",svg:"miter",apply:"stroke"},miterLimit:{svgAttr:"stroke-miterlimit",canvas:10,svg:4,apply:"stroke"},lineWidth:{svgAttr:"stroke-width",canvas:1,svg:1,apply:"stroke"},globalAlpha:{svgAttr:"opacity",canvas:1,svg:1,apply:"fill stroke"},font:{canvas:"10px sans-serif"},shadowColor:{canvas:"#000000"},shadowOffsetX:{canvas:0},shadowOffsetY:{canvas:0},shadowBlur:{canvas:0},textAlign:{canvas:"start"},textBaseline:{canvas:"alphabetic"},lineDash:{svgAttr:"stroke-dasharray",canvas:[],svg:null,apply:"stroke"}};var i=function(m,l){this.__root=m;this.__ctx=l};i.prototype.addColorStop=function(p,l){var m=this.__ctx.__createElement("stop"),n,o;m.setAttribute("offset",p);if(l.indexOf("rgba")!==-1){n=/rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi;o=n.exec(l);m.setAttribute("stop-color",g("rgb({r},{g},{b})",{r:o[1],g:o[2],b:o[3]}));m.setAttribute("stop-opacity",o[4])}else{m.setAttribute("stop-color",l)}this.__root.appendChild(m)};var e=function(m,l){this.__root=m;this.__ctx=l};var k=function(n){var l={width:500,height:500,desc:"",enableMirroring:false},m;if(arguments.length>1){m=l;m.width=arguments[0];m.height=arguments[1]}else{if(!n){m=l}else{m=n}}if(!(this instanceof k)){return new k(m)}this.width=m.width||l.width;this.height=m.height||l.height;this.desc=m.desc||l.desc;this.enableMirroring=m.enableMirroring!==undefined?m.enableMirroring:l.enableMirroring;this.canvas=this;this.__document=m.document||document;if(m.ctx){this.__ctx=m.ctx}else{this.__canvas=this.__document.createElement("canvas");this.__ctx=this.__canvas.getContext("2d")}this.__setDefaultStyles();this.__stack=[this.__getStyleState()];this.__groupStack=[];this.__root=this.__document.createElementNS("http://www.w3.org/2000/svg","svg");this.__root.setAttribute("version",1.1);this.__root.setAttribute("xmlns","http://www.w3.org/2000/svg");this.__root.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink");this.__root.setAttribute("width",this.width);this.__root.setAttribute("height",this.height);this.__root.setAttribute("desc",this.desc);this.__ids={};this.__defs=this.__document.createElementNS("http://www.w3.org/2000/svg","defs");this.__root.appendChild(this.__defs);this.__currentElement=this.__document.createElementNS("http://www.w3.org/2000/svg","g");this.__root.appendChild(this.__currentElement)};k.prototype.__createElement=function(l,p,r){if(typeof p==="undefined"){p={}}var o=this.__document.createElementNS("http://www.w3.org/2000/svg",l),q=Object.keys(p),n,m;if(r){o.setAttribute("fill","none");o.setAttribute("stroke","none")}for(n=0;n<q.length;n++){m=q[n];o.setAttribute(m,p[m])}return o};k.prototype.__setDefaultStyles=function(){var n=Object.keys(j),m,l;for(m=0;m<n.length;m++){l=n[m];this[l]=j[l].canvas}};k.prototype.__applyStyleState=function(l){if(!l){return}var o=Object.keys(l),n,m;for(n=0;n<o.length;n++){m=o[n];this[m]=l[m]}};k.prototype.__getStyleState=function(){var n,l={},o=Object.keys(j),m;for(n=0;n<o.length;n++){m=o[n];l[m]=this[m]}return l};k.prototype.__applyStyleToCurrentElement=function(u){var q=this.__currentElement;var n=this.__currentElementsToStyle;if(n){q.setAttribute(u,"");q=n.element;n.children.forEach(function(y){y.setAttribute(u,"")})}var x=Object.keys(j),o,l,w,m,v,p;for(o=0;o<x.length;o++){l=j[x[o]];w=this[x[o]];if(l.apply){if(w instanceof e){if(w.__ctx){while(w.__ctx.__defs.childNodes.length){m=w.__ctx.__defs.childNodes[0].getAttribute("id");this.__ids[m]=m;this.__defs.appendChild(w.__ctx.__defs.childNodes[0])}}q.setAttribute(l.apply,g("url(#{id})",{id:w.__root.getAttribute("id")}))}else{if(w instanceof i){q.setAttribute(l.apply,g("url(#{id})",{id:w.__root.getAttribute("id")}))}else{if(l.apply.indexOf(u)!==-1&&l.svg!==w){if((l.svgAttr==="stroke"||l.svgAttr==="fill")&&w.indexOf&&w.indexOf("rgba")!==-1){v=/rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi;p=v.exec(w);q.setAttribute(l.svgAttr,g("rgb({r},{g},{b})",{r:p[1],g:p[2],b:p[3]}));var r=p[4];var t=this.globalAlpha;if(t!=null){r*=t}q.setAttribute(l.svgAttr+"-opacity",r)}else{var s=l.svgAttr;if(x[o]==="globalAlpha"){s=u+"-"+l.svgAttr;if(q.getAttribute(s)){continue}}q.setAttribute(s,w)}}}}}}};k.prototype.__closestGroupOrSvg=function(l){l=l||this.__currentElement;if(l.nodeName==="g"||l.nodeName==="svg"){return l}else{return this.__closestGroupOrSvg(l.parentNode)}};k.prototype.getSerializedSvg=function(s){var q=new XMLSerializer().serializeToString(this.__root),n,m,l,p,o,r;r=/xmlns="http:\/\/www\.w3\.org\/2000\/svg".+xmlns="http:\/\/www\.w3\.org\/2000\/svg/gi;if(r.test(q)){q=q.replace('xmlns="http://www.w3.org/2000/svg','xmlns:xlink="http://www.w3.org/1999/xlink')}if(s){n=Object.keys(a);for(m=0;m<n.length;m++){l=n[m];p=a[l];o=new RegExp(l,"gi");if(o.test(q)){q=q.replace(o,p)}}}return q};k.prototype.getSvg=function(){return this.__root};k.prototype.save=function(){var m=this.__createElement("g");var l=this.__closestGroupOrSvg();this.__groupStack.push(l);l.appendChild(m);this.__currentElement=m;this.__stack.push(this.__getStyleState())};k.prototype.restore=function(){this.__currentElement=this.__groupStack.pop();this.__currentElementsToStyle=null;if(!this.__currentElement){this.__currentElement=this.__root.childNodes[1]}var l=this.__stack.pop();this.__applyStyleState(l)};k.prototype.__addTransform=function(m){var n=this.__closestGroupOrSvg();if(n.childNodes.length>0){if(this.__currentElement.nodeName==="path"){if(!this.__currentElementsToStyle){this.__currentElementsToStyle={element:n,children:[]}}this.__currentElementsToStyle.children.push(this.__currentElement);this.__applyCurrentDefaultPath()}var o=this.__createElement("g");n.appendChild(o);this.__currentElement=o}var l=this.__currentElement.getAttribute("transform");if(l){l+=" "}else{l=""}l+=m;this.__currentElement.setAttribute("transform",l)};k.prototype.scale=function(l,m){if(m===undefined){m=l}this.__addTransform(g("scale({x},{y})",{x:l,y:m}))};k.prototype.rotate=function(m){var l=(m*180/Math.PI);this.__addTransform(g("rotate({angle},{cx},{cy})",{angle:l,cx:0,cy:0}))};k.prototype.translate=function(l,m){this.__addTransform(g("translate({x},{y})",{x:l,y:m}))};k.prototype.transform=function(m,l,q,p,o,n){this.__addTransform(g("matrix({a},{b},{c},{d},{e},{f})",{a:m,b:l,c:q,d:p,e:o,f:n}))};k.prototype.beginPath=function(){var m,l;this.__currentDefaultPath="";this.__currentPosition={};m=this.__createElement("path",{},true);l=this.__closestGroupOrSvg();l.appendChild(m);this.__currentElement=m};k.prototype.__applyCurrentDefaultPath=function(){var l=this.__currentElement;if(l.nodeName==="path"){l.setAttribute("d",this.__currentDefaultPath)}else{console.error("Attempted to apply path command to node",l.nodeName)}};k.prototype.__addPathCommand=function(l){this.__currentDefaultPath+=" ";this.__currentDefaultPath+=l};k.prototype.moveTo=function(l,m){if(this.__currentElement.nodeName!=="path"){this.beginPath()}this.__currentPosition={x:l,y:m};this.__addPathCommand(g("M {x} {y}",{x:l,y:m}))};k.prototype.closePath=function(){if(this.__currentDefaultPath){this.__addPathCommand("Z")}};k.prototype.lineTo=function(l,m){this.__currentPosition={x:l,y:m};if(this.__currentDefaultPath.indexOf("M")>-1){this.__addPathCommand(g("L {x} {y}",{x:l,y:m}))}else{this.__addPathCommand(g("M {x} {y}",{x:l,y:m}))}};k.prototype.bezierCurveTo=function(n,m,p,o,l,q){this.__currentPosition={x:l,y:q};this.__addPathCommand(g("C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}",{cp1x:n,cp1y:m,cp2x:p,cp2y:o,x:l,y:q}))};k.prototype.quadraticCurveTo=function(n,m,l,o){this.__currentPosition={x:l,y:o};this.__addPathCommand(g("Q {cpx} {cpy} {x} {y}",{cpx:n,cpy:m,x:l,y:o}))};var b=function(m){var l=Math.sqrt(m[0]*m[0]+m[1]*m[1]);return[m[0]/l,m[1]/l]};k.prototype.arcTo=function(F,o,E,n,q){var G=this.__currentPosition&&this.__currentPosition.x;var p=this.__currentPosition&&this.__currentPosition.y;if(typeof G=="undefined"||typeof p=="undefined"){return}if(q<0){throw new Error("IndexSizeError: The radius provided ("+q+") is negative.")}if(((G===F)&&(p===o))||((F===E)&&(o===n))||(q===0)){this.lineTo(F,o);return}var u=b([G-F,p-o]);var t=b([E-F,n-o]);if(u[0]*t[1]===u[1]*t[0]){this.lineTo(F,o);return}var m=(u[0]*t[0]+u[1]*t[1]);var v=Math.acos(Math.abs(m));var B=b([u[0]+t[0],u[1]+t[1]]);var r=q/Math.sin(v/2);var A=F+r*B[0];var z=o+r*B[1];var l=[-u[1],u[0]];var w=[t[1],-t[0]];var s=function(I){var H=I[0];var J=I[1];if(J>=0){return Math.acos(H)}else{return -Math.acos(H)}};var D=s(l);var C=s(w);this.lineTo(A+l[0]*q,z+l[1]*q);this.arc(A,z,q,D,C)};k.prototype.stroke=function(){if(this.__currentElement.nodeName==="path"){this.__currentElement.setAttribute("paint-order","fill stroke markers")}this.__applyCurrentDefaultPath();this.__applyStyleToCurrentElement("stroke")};k.prototype.fill=function(){if(this.__currentElement.nodeName==="path"){this.__currentElement.setAttribute("paint-order","stroke fill markers")}this.__applyCurrentDefaultPath();this.__applyStyleToCurrentElement("fill")};k.prototype.rect=function(m,o,n,l){if(this.__currentElement.nodeName!=="path"){this.beginPath()}this.moveTo(m,o);this.lineTo(m+n,o);this.lineTo(m+n,o+l);this.lineTo(m,o+l);this.lineTo(m,o);this.closePath()};k.prototype.fillRect=function(m,q,o,l){var p,n;p=this.__createElement("rect",{x:m,y:q,width:o,height:l},true);n=this.__closestGroupOrSvg();n.appendChild(p);this.__currentElement=p;this.__applyStyleToCurrentElement("fill")};k.prototype.strokeRect=function(m,q,o,l){var p,n;p=this.__createElement("rect",{x:m,y:q,width:o,height:l},true);n=this.__closestGroupOrSvg();n.appendChild(p);this.__currentElement=p;this.__applyStyleToCurrentElement("stroke")};k.prototype.__clearCanvas=function(){var o=this.__closestGroupOrSvg(),l=o.getAttribute("transform");var n=this.__root.childNodes[1];var p=n.childNodes;for(var m=p.length-1;m>=0;m--){if(p[m]){n.removeChild(p[m])}}this.__currentElement=n;this.__groupStack=[];if(l){this.__addTransform(l)}};k.prototype.clearRect=function(m,q,o,l){if(m===0&&q===0&&o===this.width&&l===this.height){this.__clearCanvas();return}var p,n=this.__closestGroupOrSvg();p=this.__createElement("rect",{x:m,y:q,width:o,height:l,fill:"#FFFFFF"},true);n.appendChild(p)};k.prototype.createLinearGradient=function(m,o,l,n){var p=this.__createElement("linearGradient",{id:h(this.__ids),x1:m+"px",x2:l+"px",y1:o+"px",y2:n+"px",gradientUnits:"userSpaceOnUse"},false);this.__defs.appendChild(p);return new i(p,this)};k.prototype.createRadialGradient=function(o,q,n,m,p,l){var r=this.__createElement("radialGradient",{id:h(this.__ids),cx:m+"px",cy:p+"px",r:l+"px",fx:o+"px",fy:q+"px",gradientUnits:"userSpaceOnUse"},false);this.__defs.appendChild(r);return new i(r,this)};k.prototype.__parseFont=function(){var m=/^\s*(?=(?:(?:[-a-z]+\s*){0,2}(italic|oblique))?)(?=(?:(?:[-a-z]+\s*){0,2}(small-caps))?)(?=(?:(?:[-a-z]+\s*){0,2}(bold(?:er)?|lighter|[1-9]00))?)(?:(?:normal|\1|\2|\3)\s*){0,3}((?:xx?-)?(?:small|large)|medium|smaller|larger|[.\d]+(?:\%|in|[cem]m|ex|p[ctx]))(?:\s*\/\s*(normal|[.\d]+(?:\%|in|[cem]m|ex|p[ctx])))?\s*([-,\'\"\sa-z0-9]+?)\s*$/i;var l=m.exec(this.font);var n={style:l[1]||"normal",size:l[4]||"10px",family:l[6]||"sans-serif",weight:l[3]||"normal",decoration:l[2]||"normal",href:null};if(this.__fontUnderline==="underline"){n.decoration="underline"}if(this.__fontHref){n.href=this.__fontHref}return n};k.prototype.__wrapTextLink=function(m,n){if(m.href){var l=this.__createElement("a");l.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",m.href);l.appendChild(n);return l}return n};k.prototype.__applyText=function(q,l,r,p){var n=this.__parseFont(),o=this.__closestGroupOrSvg(),m=this.__createElement("text",{"font-family":n.family,"font-size":n.size,"font-style":n.style,"font-weight":n.weight,"text-decoration":n.decoration,x:l,y:r,"text-anchor":f(this.textAlign),"dominant-baseline":c(this.textBaseline)},true);m.appendChild(this.__document.createTextNode(q));this.__currentElement=m;this.__applyStyleToCurrentElement(p);o.appendChild(this.__wrapTextLink(n,m))};k.prototype.fillText=function(m,l,n){this.__applyText(m,l,n,"fill")};k.prototype.strokeText=function(m,l,n){this.__applyText(m,l,n,"stroke")};k.prototype.measureText=function(l){this.__ctx.font=this.font;return this.__ctx.measureText(l)};k.prototype.arc=function(t,s,q,r,m,v){if(r===m){return}r=r%(2*Math.PI);m=m%(2*Math.PI);if(r===m){m=((m+(2*Math.PI))-0.001*(v?-1:1))%(2*Math.PI)}var z=t+q*Math.cos(m),w=s+q*Math.sin(m),p=t+q*Math.cos(r),o=s+q*Math.sin(r),n=v?0:1,l=0,u=m-r;if(u<0){u+=2*Math.PI}if(v){l=u>Math.PI?0:1}else{l=u>Math.PI?1:0}this.lineTo(p,o);this.__addPathCommand(g("A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}",{rx:q,ry:q,xAxisRotation:0,largeArcFlag:l,sweepFlag:n,endX:z,endY:w}));this.__currentPosition={x:z,y:w}};k.prototype.clip=function(){var m=this.__closestGroupOrSvg(),l=this.__createElement("clipPath"),o=h(this.__ids),n=this.__createElement("g");this.__applyCurrentDefaultPath();m.removeChild(this.__currentElement);l.setAttribute("id",o);l.appendChild(this.__currentElement);this.__defs.appendChild(l);m.setAttribute("clip-path",g("url(#{id})",{id:o}));m.appendChild(n);this.__currentElement=n};k.prototype.drawImage=function(){var n=Array.prototype.slice.call(arguments),z=n[0],u,t,v,F,x=0,w=0,C,G,s,y,l,q,o,D,p,m,B;if(n.length===3){u=n[1];t=n[2];C=z.width;G=z.height;v=C;F=G}else{if(n.length===5){u=n[1];t=n[2];v=n[3];F=n[4];C=z.width;G=z.height}else{if(n.length===9){x=n[1];w=n[2];C=n[3];G=n[4];u=n[5];t=n[6];v=n[7];F=n[8]}else{throw new Error("Inavlid number of arguments passed to drawImage: "+arguments.length)}}}s=this.__closestGroupOrSvg();o=this.__currentElement;var r="translate("+u+", "+t+")";if(z instanceof k){y=z.getSvg().cloneNode(true);if(y.childNodes&&y.childNodes.length>1){l=y.childNodes[0];while(l.childNodes.length){B=l.childNodes[0].getAttribute("id");this.__ids[B]=B;this.__defs.appendChild(l.childNodes[0])}q=y.childNodes[1];if(q){var E=q.getAttribute("transform");var A;if(E){A=E+" "+r}else{A=r}q.setAttribute("transform",A);s.appendChild(q)}}}else{if(z.nodeName==="CANVAS"||z.nodeName==="IMG"){D=this.__createElement("image");D.setAttribute("width",v);D.setAttribute("height",F);D.setAttribute("preserveAspectRatio","none");if(x||w||C!==z.width||G!==z.height){p=this.__document.createElement("canvas");p.width=v;p.height=F;m=p.getContext("2d");m.drawImage(z,x,w,C,G,0,0,v,F);z=p}D.setAttribute("transform",r);D.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",z.nodeName==="CANVAS"?z.toDataURL():z.getAttribute("src"));s.appendChild(D)}}};k.prototype.createPattern=function(o,m){var n=this.__document.createElementNS("http://www.w3.org/2000/svg","pattern"),p=h(this.__ids),l;n.setAttribute("id",p);n.setAttribute("width",o.width);n.setAttribute("height",o.height);if(o.nodeName==="CANVAS"||o.nodeName==="IMG"){l=this.__document.createElementNS("http://www.w3.org/2000/svg","image");l.setAttribute("width",o.width);l.setAttribute("height",o.height);l.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",o.nodeName==="CANVAS"?o.toDataURL():o.getAttribute("src"));n.appendChild(l);this.__defs.appendChild(n)}else{if(o instanceof k){n.appendChild(o.__root.childNodes[1]);this.__defs.appendChild(n)}}return new e(n,this)};k.prototype.setLineDash=function(l){if(l&&l.length>0){this.lineDash=l.join(",")}else{this.lineDash=null}};k.prototype.drawFocusRing=function(){};k.prototype.createImageData=function(){};k.prototype.getImageData=function(){};k.prototype.putImageData=function(){};k.prototype.globalCompositeOperation=function(){};k.prototype.setTransform=function(){};this.dFw=k};CanvasXpress.prototype.initInterface=function(){this.yRc=function(c){var b=this;b.onX();b.aoV();var a=new XMLHttpRequest();a.open("GET",c,true);a.onreadystatechange=function(){if(a.readyState==4){if(a.status==200){var e=b.parseJSON(a.responseText);if(e){window.cXMap=e;b.updateData({data:false,config:{graphType:"Map",topoJSON:e,mapId:"cXMap"}});b.a74()}else{b.a74();alert("Oooops! Not a valid CanvasXpress json map file")}}else{b.a74();alert("Oooops! Not a valid CanvasXpress json map file")}}};a.send()};this.Vq0=function(h){this.onX();var i=h.target.files[0];var j=i.name.split(".");var a=new FileReader();var g=j.pop();if(g=="json"){a.onload=function(){try{var b=this.parseJSON(a.result);this.N8o();this.layoutValid=false;for(var p in b.config){this[p]=b.config[p]}if(b.afterRender){for(var d=0;d<b.afterRender.length;d++){var e=b.afterRender[d];var c=e[0];var f=e[1]||[];this[c].apply(this,f)}}else{this.U4z({func:"loadParamsFile",par:(r)})}}catch(r){alert("Oooops! Not a valid CanvasXpress json parameter file")}};a.readAsText(i)}else{alert("Oooops! Not a valid CanvasXpress json parameter file")}};this.ZYg=function(d){var g=[];var f=[];var h=[];var c=[];for(var b=0;b<d.links.length;b++){var a=d.links[b];if(a.source&&a.target&&a.value){h.push(a.source);c.push(a.target);f.push(a.value);g.push("Smp"+(b+1))}}var e={y:{vars:["Weight"],smps:g,data:[f]},x:{Source:h,Target:c}};return{renderTo:"newSankey",data:e,config:{graphType:"Sankey",sankeySource:"Source",sankeyTarget:"Target"}}};this.RHu=function(a){var b=this;var c=function(k){var w=0;var g=[];var q=[];var e={};var C=function(f,j,l,i){return Array.prototype.concat.apply(f.map(function(p){if(!e.hasOwnProperty(p.name)){e[p.name]=0}e[p.name]++;if(e[p.name]>1){p.name+=e[p.name]}var s=b.QWl(p);s.level=l||1;s.parent=i||null;return s}),f.map(function(p){w=Math.max(w,(l||1)+1);if(!p.children){g.push(p.name);q.push(p.value||1)}return C(j(p)||[],j,(l||1)+1,p.name)}))};var d=function d(f){return f.children||null};var h=C(d(k),d).map(function(f){f.n=f.children?f.children.length:0;return delete f.children&&f});var B={y:{vars:["Dummy"],smps:g,data:[q]},x:{}};for(var x=0;x<B.y.smps.length;x++){for(var v=0;v<h.length;v++){if(!h[v].n&&B.y.smps[x]==h[v].name){h[v].smp=x;break}}}var n=[];var z=a.name;B.x[z]=[];n.push(z);for(var x=2;x<w-1;x++){B.x[z+x]=[];n.push(z+x)}var A={};for(var x=0;x<h.length;x++){A[h[x].name]=x}for(var x=0;x<n.length;x++){for(var v=0;v<B.y.smps.length;v++){B.x[n[x]][v]=null}}for(var x=0;x<h.length;x++){if(h[x].parent){var r=h[x].parent;var t=A[r];var o=h[x].smp;var u=h[x].level-1;var y=h[t].parent;B.x[z+(u>1?u:"")][o]=h[t].name;while(y){t=A[y];u=h[t].level;B.x[z+(u>1?u:"")][o]=h[t].name;y=h[t].parent}}}return{renderTo:"newTree",data:B,config:{graphType:"Tree",hierarchy:n}}};return c(a)};this.xZT=function(a,c,h,b,f){var d=b?b:(a.target?a.target.files[0]:a.files[0]);if(!d){return}var i=d.type;var e=d.name.split(".");var g=e[e.length-1].toLowerCase();this.FRY(a);this.onX();this.aoV();if(i==="image/png"){this.yMr(d,h)}else{if(i==="application/x-bzip2"){this.ei0(d,e)}else{if(g==="parquet"){this.iiy(d,e,h)}else{if(g==="json"){this.heA(d,a,c,h,b)}else{if(g==="geojson"){this.Gx3(d)}else{if(g==="svg"){this.t7Y(d,h)}else{if(["txt","csv","tsv","tab","lsk","sql"].indexOf(g)>-1){this.fXj(d,e,g,f,h)}else{if(g==="esv"){this.xrk(d,e,h)}else{if(g==="gml"){this.yt8(d,e,h)}else{if(g.match(/ml$/)||g==="gexf"){this.YuN(d,e,g,h)}else{this.a74()}}}}}}}}}}};this.K7J=function(d){if(d.features&&Array.isArray(d.features)){for(var b=0;b<d.features.length;b++){for(var a=0;a<this.mapZipCodeIds.length;a++){var c=this.mapZipCodeIds[a];if(c&&d.features[b].properties&&d.features[b].properties[c]){var e=d.features[b].properties[c];if(!isNaN(e)&&e.toString().length<5){e=e.toString().padStart(5,"0");d.features[b].properties[c]=e}}}}}return d};this.ZR4=function(c){var b=c.config;if(b&&b.backgroundImage){if(!Array.isArray(b.backgroundImage)&&b.backgroundImage.match(/^javascript:\/\//)&&b.backgroundImageSrc){var a=new Image();a.id=b.backgroundImage.split("//")[1];a.style.display="none";a.src="data:image/png;base64,"+atob(b.backgroundImageSrc);document.body.appendChild(a);CanvasXpress.cacheImages[this.AmM(a.src)]=a}else{if(Array.isArray(b.backgroundImage)){b.backgroundImageMD5=this.BSV(b.backgroundImage);var a=new Image();a.onload=function(){CanvasXpress.cacheImages[b.backgroundImageMD5]=this};a.crossOrigin="anonymous";a.src=this.RuI(b.backgroundImage)}}}};this.yMr=function(d,f){var e=this;var a=new FileReader();var c=function(h,k){var g="";for(var j=0;j<4;j++){g+=String.fromCharCode(h.getUint8(k+j))}return g==="tEXt"};var b=function(g,l,k){var j="";for(var h=0;h<k;h++){j+=String.fromCharCode(g.getUint8(l+h))}return j.match(/CanvasXpress/)};a.onload=function(){var q=new DataView(this.result);var j=q.getUint32(8);var o=q.getUint32(8+4+4+j+4);if(c(q,8+4+4+j+4+4)&&b(q,8+4+4+j+4+4+4,o)){var g=q.getUint32(8+4+4+j+4+4+4+o+4);var r=8+4+4+j+4+4+4+o+4+4+4;var h="";for(var k=0;k<g;k++){h+=String.fromCharCode(q.getUint8(r+k))}h=h.replace("ReproducibleResearch\0","");var p;try{p=e.parseJSON(decodeURIComponent(h))}catch(l){p=e.parseJSON(h)}e.ZR4(p);var n=e.$w;if(p.config[n(0)]){e.a74();e.a4g(p)}else{e.p9p(p,f);e.a74()}}else{e.a74();e.backgroundImage="data:image/png;base64, "+e.kEJ(this.result);e.xmv({func:"changeAttribute",par:["backgroundImage",e.backgroundImage]});e.backgroundType="image";e.xmv({func:"changeAttribute",par:["backgroundType","image"]});e.skipStack=true;e.U4z();e.skipStack=false;alert("Oooops! Not a valid CanvasXpress Image\nUsing image as background!")}};a.readAsArrayBuffer(d)};this.ei0=function(c,b){var d=this;var a=new FileReader();a.onload=function(){var f=d.bz2(this.result);if(b[1].match(/ml$/)){try{CanvasXpress.loadRemoteData(b[0],f,false,false,d.updateRemoteData)}catch(g){d.a74();alert("Oooops! Not a valid bz2 file for CanvasXpress")}}else{d.a74();alert("Oooops! Not a valid bz2 file for CanvasXpress")}};a.readAsBinaryString(c)};this.iiy=function(c,b,e){var d=this;var a=new FileReader();a.onload=function(){try{var h=d.WLt(a.result);var f=d.arrayToCX(h.data,h.config);f.renderTo=b[0];d.p9p(f,e);d.a74()}catch(g){d.a74();alert("Oooops! Not a valid parquet file for CanvasXpress")}};a.readAsArrayBuffer(c)};this.heA=function(d,f,c,g,b){var e=this;var a=new FileReader();a.onload=function(){try{var n=e.parseJSON(a.result);e.ZR4(n);var l=e.$w;if(n.config&&n.config[l(0)]){e.a74();e.a4g(n)}else{if(n.data||(n&&n.config&&n.config.graphType==="Map")){if(n.config.topoJSON){if(n.config.mapId){delete window[n.config.mapId];delete e.meta.map;delete e.topoJSON}}else{if(e.graphType==="Map"&&e.y9v(n)){e.U4z();e.a74();return}}e.p9p(n,g);e.a74()}else{if(n.config){e.N8o();e.layoutValid=false;for(var j in n.config){e[j]=n.config[j]}if(n.afterRender){for(var h=0;h<n.afterRender.length;h++){var k=n.afterRender[h];e[k[0]].apply(e,k[1]||[])}}else{e.U4z({func:"loadFile",par:[f,c,g,b]})}}else{if(n.children&&n.children.length){n=e.RHu(n);e.p9p(n,g);e.a74()}else{if(n.nodes&&n.links){n=e.ZYg(n);e.p9p(n,g);e.a74()}else{if(n.type&&n.type.match(/FeatureCollection|Topology/)){var p={data:false,config:{graphType:"Map",topoJSON:e.K7J(n),mapId:"cXMap"}};window.cXMap=n;e.updateData(p);e.a74()}}}}}}}catch(o){e.a74();alert("Oooops! Not a valid CanvasXpress json file")}};a.readAsText(d)};this.Gx3=function(b){var c=this;var a=new FileReader();a.onload=function(){try{var d=c.K7J(c.parseJSON(a.result));c.hgA(c.QWl(c.data.y.vars),true);var g=c.QWl(c.data);for(var f=0;f<d.features.length;f++){g.y.vars[f]="Id"+(f+1);g.y.data[f]=[0]}if(d.type&&d.type.match(/FeatureCollection|Topology/)){var j={data:g,config:{graphType:"Map",topoJSON:d,mapId:"cXMap"}};window.cXMap=d;c.updateData(j);c.a74()}}catch(h){c.a74();alert("Oooops! Not a valid geojson file")}};a.readAsText(b)};this.t7Y=function(b,d){var c=this;var a=new FileReader();a.onload=function(){try{var g=c.SVGtoCX(a.result);var f=c.$w;if(g.config[f(0)]){c.a74();c.a4g(g)}else{c.p9p(g,d);c.a74()}}catch(h){c.a74();alert("Oooops! Not a valid CanvasXpress json file")}};a.readAsText(b)};this.fXj=function(c,b,g,e,f){var d=this;var a=new FileReader();a.onload=function(){try{var i=a.result;var h;if(d.graphType==="Network"){h=d.arrayToCXNetwork(d.parseDelimited(i),false,false,false,d.data);if(h&&!d.Zuk(h)){var k=h.fail>0?h.fail+" records couldn't be mapped to network data":"";alert(h.rows+" "+h.type+" records added to network data\n"+k);if(h.type==="node"){d.xJG(h.data)}else{d.E32(h.data)}d.a74();return}else{h=d.arrayToCX(d.parseDelimited(i))}}else{h=d.qPL(d.parseDelimited(i),d.graphType==="Map");if(h&&!d.Zuk(h)){alert(h.recs+(h.addt?" records added as an additional data set\n":" records added to meta data\n"));d.XKH(h.data,h.addt);d.a74();return}else{if(g==="lsk"||g==="sql"){h=d.arrayToCX(CanvasXpress.U8i(d.parseDelimited(i)))}else{h=d.arrayToCX(d.parseDelimited(i))}}}h.renderTo=b[0].replace(/\s/g,"").replace(/\(/g,"").replace(/\)/g,"");if(e){h.config.view="table"}d.p9p(h,f);d.a74()}catch(j){d.a74();alert("Oooops! Not a valid CanvasXpress delimited file")}};a.readAsText(c)};this.xrk=function(c,b,e){var d=this;var a=new FileReader();a.onload=function(){try{var f=d.arrayToCXNetwork(d.parseDelimited(a.result),false,false,false,d.data,"edge");f.renderTo=b[0];d.p9p(f,e);d.a74()}catch(g){d.a74();alert("Oooops! Not a valid CanvasXpress delimited file")}};a.readAsText(c)};this.yt8=function(c,b,e){var d=this;var a=new FileReader();a.onload=function(){try{var f=d.xIp(a.result);f.renderTo=b[0];d.p9p(f,e);d.a74()}catch(g){d.a74();alert("Oooops! Not a valid gml file for CanvasXpress")}};a.readAsText(c)};this.YuN=function(c,b,f,e){var d=this;var a=new FileReader();a.onload=function(){try{CanvasXpress.loadRemoteData(b[0],a.result,false,false,d.updateRemoteData)}catch(g){d.a74();alert("Oooops! Not a valid "+f+" file for CanvasXpress")}};a.readAsText(c)};this.oXW=function(h,g){if(this.isEditable||g){var a=this.WI1();var j="<link rel='stylesheet' href='https://www.canvasxpress.org/dist/canvasXpress.css' type='text/css'/>\n";j+="<script type='text/javascript' src='https://www.canvasxpress.org/dist/canvasXpress.min.js'><\/script>\n\n";j+="<canvas id='"+this.target+"' width='"+this.width+"' height='"+this.height+"'></canvas>";var b=this.$cX("form",{id:"submitToJSFiddle",method:"post",action:"https://jsfiddle.net/api/post/library/pure/",target:"check"},{display:"none"});document.body.appendChild(b);var d=this.$cX("textarea",{name:"title",value:(this.title||"CanvasXpress")});var i=this.$cX("textarea",{name:"html",value:j});var k=this.$cX("textarea",{name:"js",value:a});var c=this.$cX("button",{type:"submit"});b.appendChild(d);b.appendChild(i);b.appendChild(k);b.appendChild(c);c.click();document.body.appendChild(b)}};this.ac5=function(i,h){if(this.isEditable||h){this.onX();var a=this.WI1().replace(/\'/g,"");var k='<link rel="stylesheet" href="https://www.canvasxpress.org/dist/canvasXpress.css" type="text/css"/>\n';k+='<script type="text/javascript" src="https://www.canvasxpress.org/dist/canvasXpress.min.js"><\/script>\n\n';k+='<canvas id="'+this.target+'" width="'+this.width+'" height="'+this.height+'"></canvas>';var c="https://www.canvasxpress.org/dist/canvasXpress.css;https://www.canvasxpress.org/dist/canvasXpress.min.js";var g='{"title": "'+(this.title||"CanvasXpress")+'", "html": "'+k+'" js: "'+a+'" js_external: "'+c+'"}';g='{"title": "CanvasXpress", "html": "'+k.replace(/"/g,"'")+'", "js": "'+a.replace(/"/g,"'")+'", "js_external": "'+c.replace(/"/g,"'")+'"}';var b=this.$cX("form",{id:"submitToCodePen",method:"post",action:"https://codepen.io/pen/define",target:"_blank"},{display:"none"});document.body.appendChild(b);var j=this.$cX("input",{type:"hidden",name:"data",value:g});var d=this.$cX("button",{type:"submit"});b.appendChild(j);b.appendChild(d);d.click();document.body.appendChild(b)}};this.dJL=function(){this.suI();var e=CanvasXpress.stack[this.target];var b=e.afterRender;var c=[];for(var d=0;d<b.length;d++){if(b[d][0].match(/^sort/)){c.push(this.QWl(b[d]))}}return{renderTo:e.renderTo,data:this.UO2(),config:this.ZlV(),afterRender:c,factory:e.factory,system:e.system,version:e.version}};this.jTD=function(){var a=CanvasXpress.stack[this.target]||{};return{version:1,timestamp:(new Date()).getTime(),renderTo:a.renderTo||this.target,data:this.QWl(a.data),config:this.QWl(a.config),afterRender:this.QWl(a.afterRender||[]),cxVersion:a.version}};this.tGf=function(b){if(!b||!b.data){return false}var a={renderTo:b.renderTo||this.target,data:b.data,config:b.config||{},afterRender:b.afterRender||[]};this.Axj(this.target,true);new CanvasXpress(a,null,null,null,null,null,null,null,true);return true};this.fti=function(){return this.gfi(this.jTD())};this.aDU=function(c){var a=c;if(typeof c==="string"){try{a=this.parseJSON(c)}catch(b){return false}}return this.tGf(a)};this.UO2=function(){if(this.graphType!="Network"){return this.data}var b={};for(var a in this.data){if(this.data.hasOwnProperty(a)&&a!="nodes"&&a!="edges"){b[a]=this.data[a]}}b.nodes=this.uAC(JSON.parse(JSON.stringify(this.jj7())));b.edges=this.Vtu(JSON.parse(JSON.stringify(this.n1Z())));return b};this.save=function(i,h,c,d){var b=this.$w;var k=this.$pX();this.onX();var j=h?h+".json":this.saveFilename?this.saveFilename+".json":"cX-"+this.target+".json";j=j.replace(/.json.json$/,".json");CanvasXpress.stack[this.target].factory=CanvasXpress.factory;CanvasXpress.stack[this.target].system=CanvasXpress.system;if(k){CanvasXpress.stack[this.target].data=that[b(9)](this.gfi(CanvasXpress.stack[this.target].data),k);CanvasXpress.stack[this.target].config[b(0)]=true}var g;if(c){g=this.Bm7({config:CanvasXpress.stack[this.target].config,afterRender:CanvasXpress.stack[this.target].afterRender||[]})}else{if(d||(i&&(i.ctrlKey||i.altKey))){g=this.dJL()}else{g=this.zVl(this.hiU(CanvasXpress.stack[this.target]))}}var a=new Blob([this.Bm7(g)],{type:"text/plain"});this.eMT(a,j)};this.saveSVG=function(i,h){var d=this.$pX();var b=this.$w;this.onX();CanvasXpress.stack[this.target].factory=CanvasXpress.factory;CanvasXpress.stack[this.target].system=CanvasXpress.system;this.isSVG=true;var k=this.showTransition;var c=this.zVl(this.hiU(CanvasXpress.stack[this.target]));if(d){c.data=that[b(9)](this.gfi(c.data),d);c.config[b(0)]=true}c=this.isReproducibleResearch?this.gfi(c):"";this.showTransition=false;this.meta.canvas.SVG=new this.dFw({width:this.width,height:this.height,desc:c});this.meta.canvas.SVG.render=function(){var f=this.o.length;for(var q=0;q<f;q++){var s=this.o[q];var n=s.funcs;for(var j in s){if(j!=="funcs"){this[j]=s[j]}}if(n){var r=n.length;for(var j=0;j<r;j++){var e=n[j];var p=e[0];if(this[p]){this[p].apply(this,e[1])}}}}};this.meta.canvas.SVG.resetRender=function(){this.o=[]};this.meta.canvas.SVG.resetContext=function(){this.direction="ltr";this.fillStyle="#000000";this.filter="none";this.font="10px sans-serif";this.fontKerning="auto";this.fontStretch="normal";this.fontVariantCaps="normal";this.globalAlpha=1;this.globalCompositeOperation="source-over";this.imageSmoothingEnabled=true;this.imageSmoothingQuality="low";this.letterSpacing="0px";this.lineCap="butt";this.lineDashOffset=0;this.lineJoin="miter";this.lineWidth=1;this.miterLimit=10;this.shadowBlur=0;this.shadowColor="rgba(0, 0, 0, 0)";this.shadowOffsetX=0;this.shadowOffsetY=0;this.strokeStyle="#000000";this.textAlign="start";this.textBaseline="alphabetic";this.textRendering="auto";this.wordSpacing="0px"};this.J78(true);var g=this.meta.canvas.SVG.getSerializedSvg();if(this.isReproducibleResearch){this.FmO(100,100,"<h2>Please be aware <br>the actual data is stored<br>inside the downloaded image</h2>",5000)}var l=h?h+".svg":this.saveFilename?this.saveFilename+".svg":"cX-"+this.target+".svg";l=l.replace(/.svg.svg$/,".svg");var a=new Blob([g],{type:"image/svg+xml"});this.eMT(a,l);this.showTransition=k;delete (this.meta.canvas.SVG);this.isSVG=false};this.kEJ=function(c){var e="";var b=new Uint8Array(c);var a=b.byteLength;for(var d=0;d<a;d++){e+=String.fromCharCode(b[d])}return window.btoa(e)};this.xpE=function(c){var d=window.atob(c);var a=d.length;var b=new Uint8Array(a);for(var e=0;e<a;e++){b[e]=d.charCodeAt(e)}return b.buffer};this.sdH=function(){if(this.useLeaflet){var b=this.$("leaflet-"+this.target);if(b){var a=this.meta.canvas.ctx.canvas;var h=this.$cX("canvas",{width:this.width,height:this.height});var c=h.getContext("2d");var e=b.getElementsByTagName("img");for(var d=0;d<e.length;d++){var f=e[d];var j=f._leaflet_pos.x;var g=f._leaflet_pos.y;c.t4Q(f,j,g,256,256)}c.t4Q(a,0,0,this.width,this.height);return h}}};this.print=function(p,n,e){var f=this;var d=window;var t=f.width;var k=f.height;var q=f.printMagnification;var g=f.autoScaleFont;var o=f.showTransition;var i=f.skipStack;var s=["outlineWidth","lineThickness","xAxisGridMajorWidth","yAxisGridMajorWidth","zAxisGridMajorWidth","xAxisGridMinorWidth","yAxisGridMinorWidth","zAxisGridMinorWidth","xAxisLineLeftWidth","xAxisLineRightWidth","yAxisLineTopWidth","yAxisLineBottomWidth","guidesWidth","boxplotMedianWidth","boxplotConnectWidth","treeLinkWidth","connectByWidth","histogramBarWidth","heatmapCellBoxWidth","heatmapCellBoxHighlightWidth","edgeThickness","maxTextSize","treemapBorderWidth","errorBarsThickness","ganttDependencyThickness"];var r=function(w){if(q===1){return}if(w){for(var v=0;v<s.length;v++){f[s[v]]/=q}f.autoScaleFont=g;f.showTransition=o;f.setDimensions(t,k,true);f.skipStack=i}else{f.skipStack=true;f.showTransition=false;for(var v=0;v<s.length;v++){f[s[v]]*=q}f.autoScaleFont=true;f.setDimensions(t*q,k*q,true)}};var b=function(){var y;var w=[];for(var x=0;x<256;x++){y=x;for(var v=0;v<8;v++){y=((y&1)?(3988292384^(y>>>1)):(y>>>1))}w[x]=y}return w};var j=function(y){var v=d.crcTable||(d.crcTable=b());var x=0^(-1);for(var w=0;w<y.length;w++){x=(x>>>8)^v[(x^y.charCodeAt(w))&255]}return(x^(-1))>>>0};var c=function(w,v){var x=new Uint8Array(w.byteLength+v.byteLength);x.set(new Uint8Array(w),0);x.set(new Uint8Array(v),w.byteLength);return x.buffer};var a=function(A){var y="tEXt";var z=A.length;var B=j(y+A);var w=new ArrayBuffer(12+z);var v=new DataView(w);v.setUint32(0,z);for(var x=0;x<y.length;x++){v.setUint8(4+x,y.charCodeAt(x))}for(var x=0;x<A.length;x++){v.setUint8(8+x,A.charCodeAt(x))}v.setUint32(8+z,B);return w};var u=function(){var v=false;var w=f.$pX();var x=f.$w;if(f.isReproducibleResearch){if(f.printMagnification!=1){delete (CanvasXpress.stack[f.target].config.showTransition)}if(p&&(p.ctrlKey||p.altKey)){v=f.dJL()}else{v=f.zVl(f.hiU(CanvasXpress.stack[f.target]))}}else{v=f.parseJSON(p.ctrlKey||p.altKey?f.dJL():f.gfi(CanvasXpress.stack[f.target]));v.afterRender=[v.afterRender[0]]}if(w){v.config[x(0)]=true;v.data=f[x(9)](f.gfi(v.data),w)}return encodeURIComponent(f.gfi(v))};var h=function(w){var v=new FileReader();var x=f.isReproducibleResearch?"<h2>Please be aware that the actual data is stored inside the image! Right click to save!</h2>":"<h2>Right click to save image</h2>";v.onload=function(y){x+="<img width="+f.width+" height="+f.height+' src="'+y.target.result+'"/>';f.JDY(p,x,f.hw4(p),{maxWidth:f.width+"px",whiteSpace:"normal"},40,40)};v.readAsDataURL(w)};r();this.onX();CanvasXpress.stack[f.target].factory=CanvasXpress.factory;CanvasXpress.stack[f.target].system=CanvasXpress.system;if(!CanvasXpress.factory.valid){this.$$$("CanvasXpress")}var l=this.useLeaflet?this.sdH():this.meta.canvas.ctx.canvas;l.toBlob(function(w){var v=new FileReader();var x=n?n+".png":(f.saveFilename?f.saveFilename+".png":"cX-"+f.target+".png");x=x.replace(/\.png\.png$/,".png");v.onloadend=function(){var D=new DataView(this.result);var A=D.getUint32(8);var y=8+4+4+A+4;var z=this.result.slice(0,y);var C=this.result.slice(y);var B=a("Software\0CanvasXpress Version: "+CanvasXpress.factory.version);var G=a("ReproducibleResearch\0"+u());var F=c(z,B);F=c(F,G);F=c(F,C);var E=new Blob([F],{type:"image/png"});f.meta.base64=f.kEJ(F);if(e){e(E,x)}else{if(f.printType==="download"){if(f.isReproducibleResearch){f.FmO(100,100,"<h2>Please be aware <br>the actual data is stored<br>inside the downloaded image</h2>",5000)}f.eMT(E,x)}else{h(E)}}r(true)};v.readAsArrayBuffer(w)},"image/png")};this.rtp=function(d){var a=this.meta.canvas.ctx;this.meta.canvas.ctx=new this.dFw({width:this.width,height:this.height});this.U4z({func:"exportToSVG",par:[d]});var b=this.Ycu(this.meta.canvas.ctx.getSerializedSvg());var c=window.open("",this.target+"-SVG");c.document.write(b);this.meta.canvas.ctx=a;this.U4z({func:"exportToSVG",par:[d]});return false};this.pMR=function(a){return this.Adn(a)};this.hVp=function(e,b){var c="<table>";for(var a=0;a<e.length;a++){c+="<tr><td>";c+=e[a].join("</td><td>");c+="</td></tr>"}c+="</table>";return b?c:window.open().document.write(c)};this.Adn=function(e){var c="";for(var a=0;a<e.length;a++){c+=e[a].join("\t")+"\n"}var b=this.$(this.target+"-cX-linkTab");if(!b){b=this.$cX("a",{id:this.target+"-cX-linkTab"},{display:"none"});window.document.body.appendChild(b)}b.download=this.target+".tsv";b.href="data:text/tab-separated-values;charset=UTF-8,"+encodeURIComponent(c);b.click()};this.BhE=function(e){if(!e||!e.data||!e.meta){return""}var d='<div class="cX-DataTable-Container">';d+='<table class="cX-DataTable-Tooltip">';d+="<tbody>";var c=e.data[0];d+='<tr class="cX-DataTable-Row">';for(var b=0;b<c.length;b++){d+='<th class="cX-DataTable-Cell-Head">';d+='<div class="cX-DataTable-Cell-Tooltip">'+c[b]+"</div>";d+="</th>"}d+="</tr>";for(var h=1;h<e.data.length;h++){var g=e.data[h];d+='<tr class="cX-DataTable-Row">';for(var b=0;b<c.length;b++){var f=g[b];if(b===0){d+='<th class="cX-DataTable-Cell-Head">';d+='<div class="cX-DataTable-Cell-Tooltip">'+f+"</div>";d+="</th>"}else{d+='<td class="cX-DataTable-Cell">';var a=(e.meta.colr&&e.meta.colr[h])?e.meta.colr[h][b]:undefined;if(a){d+='<div class="cX-DataTable-Cell-Tooltip" style="background-color:'+a+';">'+f+"</div>"}else{d+='<div class="cX-DataTable-Cell-Tooltip">'+f+"</div>"}d+="</td>"}}d+="</tr>"}d+="</tbody>";d+="</table>";d+="</div>";return d};this.mID=function(){var h=new Set(["xAxis","yAxis","zAxis","rAxis","xAxis2","graphType","dataTableTransposed","layoutAxis","showHistogram","showHistogramDensity","isContour","showTransition","showAnimation","scatterType","circularType","barType","ringOrder","showViolinBoxplot"]);var b=this.ZlV();var f=b.graphType;if(this.showHistogram){f=this.ridgeBy?"Ridgeline":this.showHistogramDensity?"Density":"Histogram"}else{if(this.isContour){f="Contour"}else{if(b.scatterType){f=this.W9g(b.scatterType);if(f=="Bin2d"){f="Binplot"}else{if(f=="Km"){f="Kaplan-Meier"}else{if(f=="Qq"){f="QQ"}}}}else{if(b.circularType){f=this.W9g(b.circularType)}else{if(b.barType){f=this.W9g(b.barType)}else{if(this.scatterPlotMatrix){f="SPLOM"}else{if(this.showViolinBoxplot){f="Violin"}}}}}}}var e=CanvasXpress.doc.P.graphType.L.replace("{_value_}",f)+(this.scatterPlotMatrix?". ":" of ");if(b.rAxis){e+=b.rAxis.join(", ")+" in the R axis";if(b.yAxis){e+=" and "+b.yAxis.join(", ")+" in the Y axis"}e+=". "}else{if(b.xAxis&&b.xAxis2){e+=b.xAxis.join(", ")+" in the X axis and "+b.xAxis2.join(", ")+" in the secondary X axis. "}else{if(b.xAxis&&b.yAxis&&b.zAxis){e+=b.xAxis.join(", ")+" in the X axis, "+b.yAxis.join(", ")+" in the Y axis and "+b.zAxis.join(", ")+" in the Z axis. "}else{if(b.xAxis&&b.yAxis){if(this.showHistogram||b.xAxis[0]==b.yAxis[0]){e+=b.xAxis.join(", ")+". "}else{e+=b.xAxis.join(", ")+" in the X axis and "+b.yAxis.join(", ")+" in the Y axis. "}}else{if(b.xAxis){e+=b.xAxis.join(", ")+". "}}}}}for(var a in b){if(!a.match(/^llm/)&&!h.has(a)){var c=CanvasXpress.doc.P[a].L;var j=CanvasXpress.doc.P[a].T;if(c.match(/^\{/)&&j=="boolean"){var k=c.match(/^\{(.+?)\|(.+?)\}/);if(b[a]){e+=c.replace(/\{.+?\}/,k[1])+". "}else{e+=c.replace(/\{.+?\}/,k[2])+". "}}else{if(a=="sortData"){var k=b[a][0];if(k.length&&k.length>2){e+=k[1]==="var"?"Sort variables by "+k[2]+". ":"Sort samples by "+k[2]+". "}}else{if(a.match(/^filter/)){var g=this.meta.config.user.filterData;if(g){for(var d=0;d<g.length;d++){e+="Filter data that is "+g[d][2]+" to "+g[d][3].join(", ")+". "}}}else{if(a.match(/ScaleFontFactor/)){var k=c.match(/^\{(.+?)\|(.+?)\}/);if(b[a]>1){e+=c.replace(/\{.+?\}/,k[1]).replace("{_value_}",b[a])+". "}else{e+=c.replace(/\{.+?\}/,k[2]).replace("{_value_}",b[a])+". "}}else{if(j=="array"){e+=c.replace("{_value_}",b[a].join(", "))+". "}else{if(j=="object"){}else{e+=c.replace("{_value_}",b[a])+". "}}}}}}}}return this.Pfe(e,60)};this.JpX=function(g){var h=[];var b=g.split(/\n(?=(?:(?:[^"]*"){2})*[^"]*$)/);var c=["header","quote","row.names","fill","check.names","stringsAsFactors"];var f=false;for(var e=0;e<b.length;e++){var a=b[e];if(a.match(/library\(canvasXpress\)/)){h.push(a.replace("library(canvasXpress)",'library(<span class="cX-Code-Value">canvasXpress</span>)'))}else{if(a.match(/canvasXpress\(/)){h.push(a.replace("canvasXpress(",'<span class="cX-Code-Value">canvasXpress</span>('));f=true}else{if(a.match(/\"http.+\"/)){a=a.replace(/(\"http.+?\")/,'<span class="cX-Code-String">$1</span>');for(var d=0;d<c.length;d++){a=a.replace(c[d],'<span class="cX-Code-Key">'+c[d]+"</span>")}a=a.replace('""','<span class="cX-Code-String">""</span>,');a=a.replace(/\"\t\"/,'<span class="cX-Code-String">"&#92;t"</span>');a=a.replace("=1,",'=<span class="cX-Code-Number">1</span>,');a=a.replace(/FALSE/g,'<span class="cX-Code-Boolean">FALSE</span>');a=a.replace(/TRUE/g,'<span class="cX-Code-Boolean">TRUE</span>');h.push(a)}else{if(f){if(a.match(/\".+?\"/)){a=a.replace(/(\".+?\")/g,'<span class="cX-Code-String">$1</span>')}else{if(a.match(/[^xis][\d\.]+/)){a=a.replace(/([\d\.]+)/,'<span class="cX-Code-Number">$1</span>')}}a=a.replace(/\n/,"&#92;n");a=a.replace(/(\w+)?=/,'<span class="cX-Code-Key">$1=</span>');a=a.replace(/FALSE/g,'<span class="cX-Code-Boolean">FALSE</span>');a=a.replace(/TRUE/g,'<span class="cX-Code-Boolean">TRUE</span>')}h.push(a)}}}}return'<pre class="cX-Code-Content">\n<code>'+h.join("</code>\n<code>")+"</code>\n</pre>"};this.LML=function(e,d,f,b){var a=this.gfi(e,d?d:null,2);if(a.length>10000){f=false}if(f){a=a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}a=a.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g,function(g){var c="Number";if(/^"/.test(g)){if(/:$/.test(g)){g=g.replace(":"," =");c="Key"}else{c="String"}}else{if(/true|false/.test(g)){g=g.replace("false","FALSE").replace("true","TRUE");c="Boolean"}else{if(/null/.test(g)){g=g.replace("null","NULL");c="Null"}}}return f?('<span class="cX-Code-'+c+'">'+g+"</span>"):g});if(b){return a.replace(/\[/g,"list(").replace(/]/g,")").replace(/{/g,"list(").replace(/}/g,")").replace(/^list\(\n/,"").replace(/\)$/,"")}else{return a.replace(/\[/g,"list(").replace(/]/g,")").replace(/{/g,"list(").replace(/}/g,")").replace(/^list\(\n/,"").replace(/\)$/,"")}};this.H0N=function(){var g=[];var n=[];var o,b,r,a,p,h;var k="";var f=CanvasXpress.stack[this.target].data;var q="<span class=cX-Code-Value>canvasXpress</span>(\n";if(this.meta.config.remote&&!this.kgc(this.meta.config.remote.data)){if(this.meta.config.remote.data===false){k+="data = FALSE\n"}else{k+='data = "'+this.meta.config.remote.data+'"\n'}q+=" <span class=cX-Code-Key>data</span> = data,\n"}else{if(this.graphType=="Map"&&!this.kgc(this.meta.config.remote.data)){k+="";q+=" <span class=cX-Code-Key>data</span> = <span class=cX-Code-Value>FALSE</span>,\n"}else{if(f.y){g=[];for(var e=0;e<f.y.vars.length;e++){var l=[];for(var d=0;d<f.y.smps.length;d++){l.push(f.y.data[e][d]!=null?f.y.data[e][d]:"NA")}g.push("<span class=cX-Code-Number>"+l.join("</span>,<span class=cX-Code-Number>")+"</span>,")}g[g.length-1]=g[g.length-1].replace(/,$/,"");b="vals = c("+g.join("\n")+")\n";r='vars = c(<span class=cX-Code-String>"'+f.y.vars.join('"</span>,\n<span class=cX-Code-String>"')+'"</span>)\n';a='smps = c(<span class=cX-Code-String>"'+f.y.smps.join('"</span>,\n<span class=cX-Code-String>"')+'"</span>)\n';p="data = as.data.frame(matrix(vals, <span class=cX-Code-Key>nrow</span> = <span class=cX-Code-Number>"+f.y.vars.length+"</span>, <span class=cX-Code-Key>ncol</span> = <span class=cX-Code-Number>"+f.y.smps.length+"</span>, <span class=cX-Code-Key>byrow</span> = <span class=cX-Code-Boolean>TRUE</span>, <span class=cX-Code-Key>dimnames</span> = list(vars, smps)))\n";k+=b+r+a+p;q+=" <span class=cX-Code-Key>data</span> = data,\n"}if(f.x){g=[];n=[];b="";for(var e in f.x){var c=this.meta.data.x&&this.meta.data.x[e]?this.meta.data.x[e].type:this.meta.data.z&&this.meta.data.z[e]?this.meta.data.z[e].type:"fail";if(c=="Numeric"){g.push("<span class=cX-Code-Number>"+f.x[e].join("</span>,\n<span class=cX-Code-Number>")+"</span>,")}else{g.push('<span class=cX-Code-String>"'+f.x[e].join('"</span>,\n<span class=cX-Code-String>"')+'"</span>,')}n.push(e)}g[g.length-1]=g[g.length-1].replace(/,$/,"");b="valx = c("+g.join("\n ")+")\n";if(this.graphType=="Tree"){b=b.replace(/\"\"/g,"NA")}r='varx = c(<span class=cX-Code-String>"'+n.join('"</span>,<span class=cX-Code-String>"')+'"</span>)\n';p="datx = as.data.frame(matrix(valx, <span class=cX-Code-Key>nrow</span> = <span class=cX-Code-Number>"+n.length+"</span>, <span class=cX-Code-Key>ncol</span> = <span class=cX-Code-Number>"+f.y.smps.length+"</span>, <span class=cX-Code-Key>byrow</span> = <span class=cX-Code-Boolean>TRUE</span>, <span class=cX-Code-Key>dimnames</span> = list(varx, smps)))\n";k+=b+r+p;q+=" <span class=cX-Code-Key>smpAnnot</span> = datx,\n"}if(f.z){g=[];n=[];b="";for(var e in f.z){var c=this.meta.data.z&&this.meta.data.z[e]?this.meta.data.z[e].type:this.meta.data.x&&this.meta.data.x[e]?this.meta.data.x[e].type:"fail";if(c=="Numeric"){g.push("<span class=cX-Code-Number>"+f.z[e].join("</span>,\n<span class=cX-Code-Number>")+"</span>,")}else{g.push('<span class=cX-Code-String>"'+f.z[e].join('"</span>,\n<span class=cX-Code-String>"')+'"</span>,')}n.push(e)}g[g.length-1]=g[g.length-1].replace(/,$/,"");b="valz = c("+g.join("\n ")+")\n";a='smpz = c(<span class=cX-Code-String>"'+n.join('"</span>,<span class=cX-Code-String>"')+'"</span>)\n';p="datz = as.data.frame(matrix(valz, <span class=cX-Code-Key>nrow</span> = <span class=cX-Code-Number>"+f.y.vars.length+"</span>, <span class=cX-Code-Key>ncol</span> = <span class=cX-Code-Number>"+n.length+"</span>, <span class=cX-Code-Key>byrow</span> = <span class=cX-Code-Boolean>FALSE</span>, <span class=cX-Code-Key>dimnames</span> = list(vars, smpz)))\n";k+=b+a+p;q+=" <span class=cX-Code-Key>varAnnot</span> = datz,\n"}if(f.nodes){k+="nodes = list(\n"+this.LML(f.nodes,function(j,i){if(j!="layout"){return i}},false,true)+")\n";q+=' <span class=cX-Code-Key>"nodeData"</span> = nodes,\n'}if(f.edges){k+="edges = list(\n"+this.LML(f.edges,false,false,true)+")\n";q+=' <span class=cX-Code-Key>"edgeData"</span> = edges,\n'}if(f.groups){k+="groups = list(\n"+this.LML(f.groups,false,false,true)+")\n";q+=' <span class=cX-Code-Key>"groupData"</span> = groups,\n'}if(f.constraints){k+="constraints = list(\n"+this.LML(f.constraints,false,false,true)+")\n";q+=' <span class=cX-Code-Key>"constraintData"</span> = constraints,\n'}if(f.venn){k+="venn = data.frame(\n"+this.LML(f.venn.data,false,true)+")\n";q+=" <span class=cX-Code-Key>vennData</span> = venn,\n";if(f.venn.legend){k+="legn = data.frame(\n"+this.LML(f.venn.legend,false,true)+")\n";q+=" <span class=cX-Code-Key>vennLegend</span> = legn,\n"}}if(f.tracks){q+=" <span class=cX-Code-Key>tracks</span> = genome,\n";k+="genome = list(\n"+this.LML(f.tracks,false,true)+")\n"}}}o=this.meta.config.remote?this.vBI(this.meta.config.remote.config):this.vBI(CanvasXpress.stack[this.target].config);if(CanvasXpress.stack[this.target].afterRender&&CanvasXpress.stack[this.target].afterRender.length>1){o.afterRender=this.QWl(CanvasXpress.stack[this.target].afterRender)}q+=this.LML(o,false,true)+")";h="library(<span class=cX-Code-Value>canvasXpress</span>)\n"+k+q;return"<code>"+h.replace(/\n/g,"</code>\n<code>")+"</code>"};this.Bm7=function(d,b,e,a){return e&&d?this.sIS(d,b):d?this.gfi(d,b,a||2):false};this.sIS=function(c,b){if(c){var a=this.gfi(c,b?b:null,2);if(a.length>10000){return a}else{a=a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}a=a.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g,function(e){var d="Number";if(/^"/.test(e)){if(/:$/.test(e)){d="Key"}else{d="String"}}else{if(/true|false/.test(e)){d="Boolean"}else{if(/null/.test(e)){d="Null"}}}return'<span class="cX-Code-'+d+'">'+e+"</span>"});return a}else{return false}};this.yMf=function(g,e){var d=function(h){return h.replace(/"/g,"&quot;").replace(/^\s*/g,"").replace(/'\s*\+\s*'/g,"' + '").replace(/'\s*\+\s*Math/g,"' + Math").replace(/\*/g," * ").replace(/\)\//g,") / ").replace(/<(.+?)>/g,"&lt;$1&gt;")};g=g.replace(/{/g,"{\n").replace(/}/g,"\n}");var b=g.split(/\n/);var a=[d(b[0])];var f=" ";if(!e){e=""}for(var c=1;c<b.length;c++){b[c]=d(b[c]);if(b[c].match(/[\w{}]/)){if(b[c].match(/}\s*else\s*\{\s*$/)){f=f.replace(" ","");a.push(e+f+b[c]);f+=" "}else{if(b[c].match(/\{\s*$/)){a.push(e+f+b[c]);f+=" "}else{if(b[c].match(/\}\s*;*\s*$/)){f=f.replace(" ","");a.push(e+f+b[c])}else{a.push(e+f+b[c])}}}}}return a.join("\n")};this.yIg=function(d,a){var c="{\n";if(!a){a=" "}for(var b in d){c+=a+'"'+b+'": '+d[b]+",\n"}a=a.replace(" ","");return c.replace(/,\n$/,"\n")+a+"}"};this.Ycu=function(o){var f=/(>)\s*(<)(\/*)/g;var u=/ *(.*) +\n/g;var e=/(<.+>)(.+\n)/g;var d=o.replace(f,"$1\n$2$3").replace(u,"$1\n").replace(e,"$1\n$2");var s=0;var b="";var a=d.split("\n");var k=0;var r="other";var w={"single->single":0,"single->closing":-1,"single->opening":0,"single->other":0,"closing->single":0,"closing->closing":-1,"closing->opening":0,"closing->other":0,"opening->single":1,"opening->closing":0,"opening->opening":1,"opening->other":1,"other->single":0,"other->closing":-1,"other->opening":0,"other->other":0};for(var q=0;q<a.length;q++){var h=a[q];var v=Boolean(h.match(/<.+\/>/));var g=Boolean(h.match(/<\/.+>/));var n=Boolean(h.match(/<[^!].*>/));var c=v?"single":g?"closing":n?"opening":"other";var t=r+"->"+c;r=c;var l="";k+=w[t];for(var p=0;p<k;p++){l+=" "}b+=l+h+"\n"}return b};this.kX5=function(d,h,b){var a=h?" ":b?" ":" ";var c=this.lXm(true).replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None");var g=this.Dbt(true).replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None");var f=this.hj8(true);var e=this.yxv(true);var i="";if(h){i+="<span class=cX-Code-Key>import</span> streamlit <span class=cX-Code-Key>as</span> st\n\n"}else{if(b){i+="<span class=cX-Code-Key>from</span> shiny <span class=cX-Code-Key>import</span> App, ui, render, reactive\n\n"}}i+="<span class=cX-Code-Key>from</span> canvasxpress.canvas <span class=cX-Code-Key>import</span> CanvasXpress\n";if(d||h||b){i+="<span class=cX-Code-Key>from</span> canvasxpress.plot <span class=cX-Code-Key>import</span> graph\n\n"}else{i+="<span class=cX-Code-Key>from</span> canvasxpress.plot <span class=cX-Code-Key>import</span> show_in_browser\n\n"}if(d){i+="graph(\n";i+=" CanvasXpress(\n";i+=" data = "+c+",\n";i+=" config = "+g+",\n";if(f){i+=" events = "+f.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}if(e){i+=" after_render = "+e.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}i+=" width = <span class=cX-Code-Number>"+this.width+"</span>,\n";i+=" height = <span class=cX-Code-Number>"+this.height+"</span>\n";i+=" )\n";i+=")\n\n"}else{if(h){i+="chord_chart = CanvasXpress(\n";i+=" config = "+g+",\n";if(f){i+=" events = "+f.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}if(e){i+=" after_render = "+e.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}i+=" width = <span class=cX-Code-Number>"+this.width+"</span>,\n";i+=" height = <span class=cX-Code-Number>"+this.height+"</span>\n";i+=")\n\n";i+="<span class=cX-Code-Comment># Write the UI to the browser</span>\n";i+="<span class=cX-Code-Comment># This code will be re-executed with each click of the button</span>\n\n";i+="<span class=cX-Code-Comment># Name the theme</span>\n";i+='st.title(<span class=cX-Code-Key>"CanvasXpress in Streamlit!"</span>)\n\n';i+="<span class=cX-Code-Comment># Some columns to organize the button and chart</span>\n";i+="column1, column2 = st.columns(2)\n\n";i+="<span class=cX-Code-Comment># A column with our data generator button</span>\n";i+="column1.write(\n";i+=" <span class=cX-Code-Comment># This has no associated action, so by default</span>\n";i+=" <span class=cX-Code-Comment># it triggers a redraw of the UI.</span>\n";i+=' st.button(<span class=cX-Code-Key>"Generate New Data"</span>)\n';i+=")\n\n";i+="<span class=cX-Code-Comment># Another column with the chart displayed</span>\n";i+="<span class=cX-Code-Comment># With each redraw generate new random values</span>\n";c=c.replace(/\n /g,"\n");i+="chord_chart.data = "+c+"\n";i+="column2.write(\n";i+=" <span class=cX-Code-Comment># This plots the CanvasXpress chart into the UI.</span>\n";i+=" graph(chord_chart)\n";i+=")\n\n";i+="<span class=cX-Code-Comment># On the command line, execute:</span>\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># </span> streamlit run app.py\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># And output similar to the following will be provided:</span>\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># </span> Running on http://localhost:8501/ (Press CTRL+C to quit)\n"}else{if(b){i+="app_ui = ui.page_fluid(\n";i+=" ui.row(\n";i+=" <span class=cX-Code-Comment># Define widgets here - for example:</span>\n";i+=" ui.input_slider(\n";i+=' <span class=cX-Code-Key>"points_desired"</span>,\n';i+=' <span class=cX-Code-Key>"Points"</span>,\n';i+=" min = <span class=cX-Code-Number>"+this.minData+"</span>,\n";i+=" max = <span class=cX-Code-Number>"+this.maxData+"</span>,\n";i+=" value = <span class=cX-Code-Number>"+this.minData+"</span>\n";i+=" )\n";i+=" )\n";i+=" ui.row(\n";i+=' ui.output_ui(<span class=cX-Code-Key>"chart_view"</span>),\n';i+=" )\n";i+=")\n\n";i+="def server(input, output, session):\n";i+=" @render.ui\n";i+=" @reactive.event(input.points_desired)\n";i+=" def chart_view():\n";i+=" return graph(\n";i+=" CanvasXpress(\n";i+=" data = "+c+",\n";i+=" config = "+g+",\n";if(f){i+=" events = "+f.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}if(e){i+=" after_render = "+e.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}i+=" width = <span class=cX-Code-Number>"+this.width+"</span>,\n";i+=" height = <span class=cX-Code-Number>"+this.height+"</span>\n";i+=" )\n";i+=" )\n\n";i+="app = App(app_ui, server)\n\n";i+="<span class=cX-Code-Comment># On the command line, execute:</span>\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># </span> shiny run --reload --launch-browser app.py\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># And output similar to the following will be provided:</span>\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># </span> Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)\n"}else{i+='<span class=cX-Code-Key>if</span> __name__ == <span class=cX-Code-Key>"__main__"</span>:\n';i+=" <span class=cX-Code-Comment># Define a CX bar chart with some basic data</span>\n";i+=" chart: CanvasXpress = CanvasXpress(\n";i+=" render_to = "+this.target+",\n";i+=" data = "+c+",\n";i+=" config = "+g+",\n";if(f){i+=" events = "+f.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}if(e){i+=" after_render = "+e.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}i+=" width = <span class=cX-Code-Number>"+this.width+"</span>,\n";i+=" height = <span class=cX-Code-Number>"+this.height+"</span>\n";i+=" )\n\n";i+=" <span class=cX-Code-Comment># Display the chart in its own Web page</span>\n";i+=" show_in_browser(chart)\n"}}}return"<code>"+i.replace(/\n/g,"</code>\n<code>")+"</code>"};this.qLk=function(){var k=JSON.parse(this.meta.config.user.cxplot);var l=JSON.stringify(k.data).replace(/\],/g,"],\n ");var c=this.Zuk(k.geoms)?k.geoms:[k.geoms];var a={};var h="";if(k.aes&&k.order){k.aes.meta={};Object.assign(k.aes.meta,k.order);if(!k.aes.hasOwnProperty("x")){for(var b=0;b<c.length;b++){var d=c[b];if(k.layers[d]&&k.layers[d].hasOwnProperty("x")){k.aes.x=k.layers[d].x;break}}}if(!k.aes.hasOwnProperty("y")){for(var b=0;b<c.length;b++){var d=c[b];if(k.layers[d]&&k.layers[d].hasOwnProperty("y")){k.aes.y=k.layers[d].y;break}}}}var n=JSON.stringify(k.aes);var j=["labels","scales","colors","coordinates","theme","facet","config"];h+="<span class=cX-Code-Key>var</span> data = "+l+";\n\n";h+='<span class=cX-Code-Key>var</span> cxp = <span class=cX-Code-Value>new</span> cxplot("canvas", data, aes('+n+"));\n";for(var b=0;b<c.length;b++){var d=a[c[b]]?c[b]+"."+a[c[b]]:c[b];var e=c[b].toLowerCase().replace("geom","geom_").replace("2","_2").replace("filled","_filled").replace("_qql","_qq_l").replace("ridgesgradient","ridges_gradient").replace("ridges","_ridges");if(this[e]&&!this.skipGeoms){h+="cxp.<span class=cX-Code-Key>"+e+"</span>("+JSON.stringify(k.layers[d])+");\n"}a[d]=a[d]?a[d]+1:1}for(var b=0;b<j.length;b++){if(k[j[b]]){var e="gg_"+j[b];if(this.Zuk(k[j[b]])){if(k[j[b]].length>0){h+="cxp.<span class=cX-Code-Key>"+e+"</span>("+JSON.stringify(k[j[b]])+");\n"}}else{h+="cxp.<span class=cX-Code-Key>"+e+"</span>("+JSON.stringify(k[j[b]])+");\n"}}}return"<code>"+h.replace(/\n/g,"</code>\n<code>")+"</code>"};this.juN=function(g,f){var a=[["Id"]];for(var e=0;e<this.data.y.vars.length;e++){a[e+1]=[];a[e+1][0]=this.data.y.vars[e]}for(var e=0;e<this.data.y.smps.length;e++){a[0][e+1]=this.data.y.smps[e];for(var d=0;d<this.data.y.vars.length;d++){a[d+1][e+1]=this.data.y.data[d][e]}}if(g&&this.data[g]){if(g=="x"){for(var e in this.data.x){var b=a.length;a[b]=[];a[b][0]=e;for(var d=0;d<this.data.y.smps.length;d++){a[b][d+1]=this.data.x[e][d]}}}else{if(g=="z"){for(var e in this.data.z){var b=a[0].length;a[0][b]=e;for(var d=0;d<this.data.y.vars.length;d++){a[d+1][b]=this.data.z[e][d]}}}}}return f?this.J4e(a):a};this.y9v=function(d){if(d){var g={};for(var e=0;e<this.data.y.vars.length;e++){g[this.data.y.vars[e]]=e}var c=0;for(var e=0;e<d.data.y.vars.length;e++){if(g.hasOwnProperty(d.data.y.vars[e])){c++}}var f=0;for(var e=0;e<d.data.y.smps.length;e++){if(g.hasOwnProperty(d.data.y.smps[e])){f++}}if(c>0||f>0){if(c>f){}else{for(var e=0;e<d.data.y.vars.length;e++){this.data.z[d.data.y.vars[e]]=[];for(var b=0;b<d.data.y.smps.length;b++){if(g.hasOwnProperty(d.data.y.smps[b])){var a=g[d.data.y.smps[b]];this.data.z[d.data.y.vars[e]][a]=d.data.y.data[e][b]}}}if(d.data.hasOwnProperty("x")){for(var e in d.data.x){this.data.z[e]=[];for(var b=0;b<d.data.y.smps.length;b++){if(g.hasOwnProperty(d.data.y.smps[b])){var a=g[d.data.y.smps[b]];this.data.z[e][a]=d.data.x[e][b]}}}}}this.colorBy=d.data.y.vars[0];this.n9f("z",false,false,true);return true}}return false};this.qPL=function(a,b){if(this.varIndices.length&&this.smpIndices.length){var g=this;var B=function(i){if(i=="s"){return{y:{smps:g.QWl(g.data.y.smps)},x:{}}}else{return{y:{vars:g.QWl(g.data.y.vars)},z:{}}}};var C={};if(b&&this.data.z&&this.data.z.hasOwnProperty("cXId")){for(var x=0;x<this.data.z.cXId.length;x++){C[this.data.z.cXId[x]]=x}}var k={s:[],v:[]};var l={s:[],v:[]};var s;var v=2;var r=false;for(var x=1;x<a.length;x++){s=this.OKx(a[x][0]);if(s>-1){k.s.push([x,s]);continue}s=b&&C.hasOwnProperty(a[x][0])?C[a[x][0]]:this.mlX(a[x][0]);if(s>-1){k.v.push([x,s]);continue}}for(var x=1;x<a[0].length;x++){s=b&&C.hasOwnProperty(a[x][0])?C[a[x][0]]:this.mlX(a[0][x]);if(s>-1){l.v.push([x,s]);continue}s=this.OKx(a[0][x]);if(s>-1){l.s.push([x,s]);continue}}var h=k.s.length>v?k.s.length:0;var f=k.v.length>v?k.v.length:0;var e=l.s.length>v?l.s.length:0;var d=l.v.length>v?l.v.length:0;var z=this.data.y.smps.length;var A=this.data.y.vars.length;if(h||f||e||d){var t=0;if(h==z&&d==A){var D=[];for(var x=0;x<l.v.length;x++){var o=l.v[x][0];var c=l.v[x][1];D[c]=[];for(var w=0;w<k.s.length;w++){var y=k.s[w][0];var q=k.s[w][1];D[c][q]=a[y][o];t++}}r=true}else{if(e==z&&f==A){var D=[];for(var x=0;x<k.v.length;x++){var o=k.v[x][0];var c=k.v[x][1];D[c]=[];for(var w=0;w<l.s.length;w++){var y=l.s[w][0];var q=l.s[w][1];D[c][q]=a[o][y];t++}}r=true}else{if(h>=f&&h>=e&&h>=d){var D=B("s");for(var x=1;x<a[0].length;x++){D.x[a[0][x]]=[];var u=0;for(var w=0;w<k.s.length;w++){var y=k.s[w][0];var q=k.s[w][1];D.x[a[0][x]][q]=a[y][x];t++;u=a[y][x]?u+1:u}if(!u){delete D.x[a[0][x]]}}}else{if(f>=h&&f>=e&&f>=d){var D=B("v");for(var x=1;x<a[0].length;x++){D.z[a[0][x]]=[];var u=0;for(var w=0;w<k.v.length;w++){var y=k.v[w][0];var q=k.v[w][1];D.z[a[0][x]][q]=a[y][x];t++;u=a[y][x]?u+1:u}if(!u){delete D.z[a[0][x]]}}}else{if(e>h&&e>=f&&e>=d){var D=B("s");for(var x=0;x<l.s.length;x++){var o=l.s[x][0];var c=l.s[x][1];var u=0;for(var w=1;w<a.length;w++){if(x==0){D.x[a[w][0]]=[]}D.x[a[w][0]][c]=a[w][o];t++;u=a[w][o]?u+1:u}if(!u){delete D.x[a[w][0]]}}}else{if(d>h&&d>=f&&d>=e){var D=B("v");for(var x=0;x<k.s.length;x++){var o=k.s[x][0];var c=k.s[x][1];var u=0;for(var w=1;w<a.length;w++){if(x==0){D.z[a[w][0]]=[]}D.z[a[w][0]][c]=a[w][o];t++;u=a[w][o]?u+1:u}if(!u){delete D.z[a[w][0]]}}}}}}}}return{data:D,recs:t,addt:r}}else{if(b){var D=this.arrayToCX(a);this.data.x=D.data.x;this.data.y.smps=D.data.y.smps;this.data.y.vars=this.QWl(this.data.z.id);this.updateData(this.data);var p=this.meta.map.geojson.features;for(var x=0;x<p.length;x++){p[x].properties.key=this.data.y.vars[x];p[x].properties.varId=[x]}return{data:false,recs:this.data.y.smps.length,addt:false}}else{return a}}}return a};this.xAS=function(a){var b=window.location.origin;var d={};var c=[];for(m in CanvasXpress.countries){var e=CanvasXpress.countries[m][0];d[m]=[e,b+"/data/maps/"+m+".json"];c.push(e)}for(m in CanvasXpress.usa){var e=CanvasXpress.usa[m][0];d[m]=[e,b+"/data/maps/"+m+".json"];c.push(e)}for(m in CanvasXpress.maps){d[m]=[m,CanvasXpress.maps[m]];c.push(m)}return a?c:d};this.rPR=function(c){if(!c){c="png"}var b=window.location.origin+"/data/flags"+(c=="svg"?"/svg/3x2/":"/png/");var a={};for(m in CanvasXpress.countries){var e=CanvasXpress.countries[m][0];var d=c=="svg"?CanvasXpress.countries[m][3]:CanvasXpress.countries[m][3].toLowerCase();a[m]=[e,b+d+"."+c]}return a};this.E1L=function(){var c=this;var b=function(d){CanvasXpress.Rdatasets=c.parseJSON(d)};var a=this.RdatasetsURL+"datasets.json";this.GDl(a,false,b);this.onX()};this.ywS=function(a,b){this.PQ5(this.RdatasetsURL+"csv/"+a+"/"+b+".csv");this.Rdataset={library:a,dataset:b,url:this.RdatasetsURL+"json/"+a+"/"+b+"Info.json",info:false}};this.a0Q=function(a,b){this.PQ5(this.RdatasetsURL+"datasetsCX.csv")};this.N8Z=function(){var f=this;var b=this.appendNetworkData.length>0?this.appendNetworkData.shift():false;var d=function(o){var l=function(A){var z={};var C=A[0];var s=0;var x=0;var v=0;var r={};var B=false;for(var y=1;y<A.length;y++){var t=A[y][0];var u=A[y][1];if(f.nodeIndices.hasOwnProperty(t)&&f.nodeIndices.hasOwnProperty(u)){x++}else{if(f.nodeIndices.hasOwnProperty(t)){s++}else{v++}}r[t]=y}if(!s&&!x){for(var y=0;y<f.data.nodes.length;y++){var t=f.data.nodes[y];if(t.hasOwnProperty("extId")&&r.hasOwnProperty(t.extId)){A[r[t.extId]][0]=t.id;s++}}}if(x>s){s=0;x=0;v=0;B="edge";for(var y=1;y<A.length;y++){var t=A[y][0];var u=A[y][1];if(f.nodeIndices.hasOwnProperty(t)&&f.nodeIndices.hasOwnProperty(u)){x++;z[t+":"+u]={};for(var w=2;w<C.length;w++){z[t+":"+u][C[w]]=A[y][w]}}else{v++}}}else{if(s>8){s=0;x=0;v=0;B="node";for(var y=1;y<A.length;y++){var t=A[y][0];if(f.nodeIndices.hasOwnProperty(t)){s++;z[t]={};for(var w=1;w<C.length;w++){z[t][C[w]]=A[y][w]}}else{v++}}}else{return A}}if((B=="edge"&&(x>5||x>=A.length-1))||(B=="node"&&(s>5||s>=A.length-1))){return{data:z,rows:Math.max(s,x),fail:v,type:B}}else{return A}};var p=l(f.parseDelimited(o));if(p&&!f.Zuk(p)){var k="";if(p.fail>0){k=p.fail+" records couldn't be mapped to network data"}f.FmO(100,150,p.rows+" "+p.type+" records added to network data\n"+k,5000);var q=f.meta.config.user;var e=["colorNodeBy","shapeNodeBy","sizeNodeBy","patternNodeBy","colorEdgeBy","SizeEdgeBy","decorations"];for(var n=0;n<e.length;n++){var j=e[n];if(q.hasOwnProperty(j)){f[j]=q[j]}}if(p.type=="node"){f.xJG(p.data)}else{f.E32(p.data)}if(f.appendNetworkData.length>0){f.N8Z()}else{f.U4z({func:"appendNetworkDataFromURL"});f.a74()}}};var c=function(e){if(e.type=="node"){f.xJG(e.data)}else{f.E32(e.data)}if(f.appendNetworkData.length>0){f.N8Z()}else{f.U4z({func:"appendNetworkDataFromURL"});f.a74()}};var a=function(e){return function(i){if(b.match(/\.txt$/)||b.match(/\.csv$/)||b.match(/\.tsv$/)||b.match(/\.tab$/)){d(i)}else{f.a74();alert("Oooops! Not a CanvasXpress Network delimited file")}}};if(b){if(typeof(b)=="string"){var g=null;try{g=JSON.parse(b);return c(g)}catch(h){g=null}g=this.parseDelimited(b)||null;if(g){return d(b)}if(this.isValidURL(b)){return this.GDl(b,false,a)}}else{c(b)}}};this.PQ5=function(a){this.GDl(a,false,this.setDataSetFromURL,"text")};this.eqk=function(g){var d=CanvasXpress.getSetCurrentObject();var c=function(i){d.Rdataset.info=d.parseJSON(i)};var f=d.arrayToCX(d.parseDelimited(g));var h=d.$(d.target+"-cX-DOM").parentNode;if(h.parentNode){h=h.parentNode}var b=d.qTO("-cX-data-sets-");var e=d.$cX("canvas",{id:b,width:d.originalWidth,height:d.originalHeight});d.RpS(e);h.appendChild(e);f.renderTo=b;f.config.view="table";var a=new CanvasXpress(f,null,null,null,null,null,null,null,true);a.Rdataset=d.Rdataset;a.GDl(a.Rdataset.url,false,c,false,false,a);a.Axj(d.target);a.svL()};this.kI0=function(e,d,i,c,f){if(!CanvasXpress.stack){CanvasXpress.stack={}}var b=this.$(this.target);var g=this.QWl(d)||false;if(g&&this.graphName){for(var a in this.graphName){g[a]=this.graphName[a]}}if(g&&this.scatterContext){g.graphType=this.scatterContext}var h=this.isCxplot&&this.Zuk(e)?this.QWl(this.data):e?this.vBI(e):false;if(this.isGraphTime){g.isGraphTime=true}if(this.xAxisTime){g.xAxisTime=this.xAxisTime}if(this.yAxisTime){g.yAxisTime=this.yAxisTime}if(b){CanvasXpress.stack[this.target]={version:CanvasXpress.factory.version,renderTo:this.target,data:h,config:g,events:i?i:false,info:c?c.toString().replace(/'/g,"'").replace(/"/g,"'"):false,afterRender:f,noValidate:true}}};this.UMp=function(d){if(d.data){if(d.config.stringSampleFactors){for(var b=0;b<d.config.stringSampleFactors.length;b++){var c=d.config.stringSampleFactors[b];if(d.data.x&&d.data.x[c]){for(var a=0;a<d.data.x[c].length;a++){d.data.x[c][a]=d.data.x[c][a]}}}}if(d.config.stringVariableFactors){for(var b=0;b<d.config.stringVariableFactors.length;b++){var c=d.config.stringVariableFactors[b];if(d.data.z&&d.data.z[c]){for(var a=0;a<d.data.z[c].length;a++){d.data.z[c][a]=d.data.z[c][a]}}}}CanvasXpress.stack[this.target].data=d.data}};this.e2f=function(){return CanvasXpress.stack[this.target].afterRender};this.xmv=function(f){if(this.skipStack||!f||this.afterRendering){return}var i=f.func;var c=f.par?this.SCR(f.par):[];var j=f.prop?this.QWl(f.prop):{};var k=f.video!==undefined?true:false;var h=new Date().getTime();var d=CanvasXpress.stack[this.target];if(!i||!d){return}if(i==="clickWorkflowPlay"){return}if(!this.reproduceVideoMode&&k){return}var g=d.afterRender;if(!g){g=d.afterRender=[["setDimensions",[this.width,this.height,true]]]}var a=g.length;switch(i){case"setDimensions":if(c&&c[0]===this.width&&c[1]===this.height){return}g.push([i,c,{},k,h]);break;case"broadcastDraw":i=c[0].func;c=c[0]&&c[0].par?this.SCR(c[0].par):[];j=c[0]&&c[0].prop||{};if(i){g.push([i,c,j,k,h])}break;case"drawIndicesAfterPannEvent":case"drawIndicesAfterWheelEvent":case"drawRangesAfterWheelEvent":case"updateDragCircular":case"updateDragScatter":case"updateDragNetwork":case"updateDragGenome":case"updateDragMap":case"updateDragMarker":var e=(i!=="updateDragNetwork"||!c[0].shiftKey);if(a>1&&g[a-1][0]===i&&e){var b=h-g[a-1][4];if(b<1000){g.pop()}}g.push([i,c,j,k,h]);break;case"handleWheelEvent":g.push([i,c,j,k,h]);break;default:g.push([i,c,j,k,h]);break}this.meta.stack.push([i,this.meta.time.start,this.meta.time.elapsed]);if(typeof this.workflowResetUndoSession==="function"){this.lIO()}};this.LZl=function(a){this.WGX(a,true)};this.WGX=function(b,a){if(this.workflowBy){return}this.skipStack=true;this.reproducing=true;this.Bub();this.viZ();this.OZC(b,true);this.meta.ids={};this.ZIr(b);if((b&&b.shiftKey)||a){this.s6G();this.P0u(b)}};this.maI=function(a){this.Pzf(a,true)};this.Pzf=function(h,b,k){var j=this.hiU(CanvasXpress.stack[this.target]);if(!this.isRawData){if(j.data.y){delete j.data.y.data}}this.isQQ=false;this.isCDF=false;j.config.showTransition=b?true:false;if(k){var f=this.QWl(j.afterRender);j.afterRender=[];for(var g=0;g<f.length;g++){var l=f[g];if(l[0]=="addCDFPlot"&&j.config.decorations){delete j.config.decorations.cdf}if(l&&l[4]){j.afterRender.push(l)}}}this.Axj(this.target,true);new CanvasXpress(j,null,null,null,null,null,null,null,true)}};CanvasXpress.prototype.initSave=function(){
27
+ (function(b,a){if(typeof exports==="object"){a(exports)}else{(a((b.CanvasXpress=b.CanvasXpress||{})))}}(this,(function(){var a=(typeof CanvasXpress==="function")?CanvasXpress:null;CanvasXpress=function(w,x,v,c,u,o,f,k,s){var i=this;var t=1;var e=2;var m=4;var y=8;var l=16;var g=32;var n=0;var r=function(){var z=document.querySelector(".jp-Notebook, .notebook_app")!==null;return window.Jupyter||window.jupyterlab||window.__jupyter_config__||z};var d=function(){p()};var j=function(z){if(z){i.init(z);if(f){f(z)}}else{i.init(w,x,v,c,u,o,f,k)}};var q=function(z){if(CanvasXpress.maps.hasOwnProperty(z)){return"https://www.canvasxpress.org"+CanvasXpress.maps[z]}if(CanvasXpress.usa.hasOwnProperty(z)){return"https://www.canvasxpress.org/data/maps/"+z+".json"}if(CanvasXpress.countries.hasOwnProperty(z)){return"https://www.canvasxpress.org/data/maps/"+z+".json"}return null};var h=function(C,A){var z=C.toLowerCase();var B;for(B in CanvasXpress.usa){if(CanvasXpress.usa.hasOwnProperty(B)&&CanvasXpress.usa[B][0].toLowerCase()===z){A.mapId=B;return"https://www.canvasxpress.org/data/maps/"+B+".json"}}for(B in CanvasXpress.countries){if(CanvasXpress.countries.hasOwnProperty(B)&&CanvasXpress.countries[B][0].toLowerCase()===z){A.mapId=B;return"https://www.canvasxpress.org/data/maps/"+B+".json"}}return null};if(v&&typeof v==="string"){v={prompt:v,llmBehaviour:"update",view:"table"}}else{if(w&&w.config&&w.config.prompt&&w.config.isR){w.config.llmBehaviour="update";w.config.view="table"}}var p=function(){if(!(n&t)){var B=document.styleSheets;var A=false;var D;for(D=0;D<B.length;D++){if(B[D].href&&B[D].href.indexOf("canvasXpress.css")>-1){A=true;break}}if(!A){n|=t;var G=document.createElement("link");G.rel="stylesheet";G.type="text/css";G.href="https://www.canvasxpress.org/dist/canvasXpress.css";document.getElementsByTagName("head")[0].appendChild(G);G.onload=function(){p()};return}n|=t}if(!(n&e)){var I=(v&&v.fonts)||(w&&w.config&&w.config.fonts);if(I){n|=e;var F=(v&&v.fonts)?v.fonts:w.config.fonts;CanvasXpress.loadFonts(F,d);return}n|=e}if(!(n&m)){var J=(v&&v.fontsExternal)||(w&&w.config&&w.config.fontsExternal);if(J){n|=m;var K=(v&&v.fontsExternal)?v.fontsExternal:w.config.fontsExternal;CanvasXpress.loadFontsExternal(K,d);return}n|=m}if(!(n&y)){var z=(v&&v.topoJSON&&typeof v.topoJSON==="string")||(w&&w.config&&w.config.topoJSON&&typeof w.config.topoJSON==="string");var C=(v&&v.useLeaflet)||(w&&w.config&&w.config.useLeaflet);if(z||C){n|=y;if(C){CanvasXpress.loadLeaflet(function(){var L=v&&v.topoJSON;var M=w&&w.config&&w.config.topoJSON;if(L){CanvasXpress.loadTopoJSON(v.topoJSON,v.mapId,d)}else{if(M){CanvasXpress.loadTopoJSON(w.config.topoJSON,w.config.mapId,d)}else{d()}}},i)}else{if(v&&v.topoJSON){CanvasXpress.loadTopoJSON(v.topoJSON,v.mapId,d)}else{CanvasXpress.loadTopoJSON(w.config.topoJSON,w.config.mapId,d)}}return}n|=y}if(!(n&l)){var H=(x&&typeof x==="string")||(w&&w.data&&typeof w.data==="string");if(H){n|=l;if(x){CanvasXpress.loadRemoteData(w,x,v,c,j)}else{CanvasXpress.loadRemoteData(w.renderTo,w.data,w.config,w.events,j)}return}n|=l}if(!(n&g)){var E=(v&&v.graphType==="Map"&&v.mapId&&!v.topoJSON)||(w&&w.config&&w.config.graphType==="Map"&&w.config.mapId&&!w.config.topoJSON);if(E){n|=g;if(v&&v.graphType==="Map"&&v.mapId&&!v.topoJSON){v.topoJSON=q(v.mapId)||h(v.mapId,v)||CanvasXpress.geojson;CanvasXpress.loadTopoJSON(v.topoJSON,v.mapId,d)}else{w.config.topoJSON=q(w.config.mapId)||h(w.config.mapId,w.config)||CanvasXpress.geojson;CanvasXpress.loadTopoJSON(w.config.topoJSON,w.config.mapId,d)}return}n|=g}i.init(w,x,v,c,u,o,f,k)};if(s||r()){p()}else{setTimeout(p,0)}};if(a){CanvasXpress.prototype=a.prototype;for(var b in a){if(a.hasOwnProperty(b)&&!CanvasXpress.hasOwnProperty(b)){CanvasXpress[b]=a[b]}}}})));(function(b,a){if(typeof exports==="object"&&typeof module!=="undefined"){a(exports)}else{(a((b.cxplot=b.cxplot||{})))}}(this,(function(){cxplot=function(y,z,k,a){if(typeof(y)=="object"&&y.isGGPlot){var n=function(g){if(Array.isArray(g)&&!g.length){return{}}else{var f={};for(var m in g){if(g[m]&&typeof g[m]==="string"){f[m]=g[m].replace(/^"(.+)"$/,"$1")}else{f[m]=g[m]}}return f}};var l=function(){if(y.order){y.aes.meta={};for(var f in y.order){y.aes.meta[f]=y.order[f]}}if(!y.aes.hasOwnProperty("x")||(y.aes.hasOwnProperty("x")&&y.data[0]&&!y.data[0].includes(y.aes.x))){for(var f=0;f<o.length;f++){var m=o[f];if(y.layers[m]&&y.layers[m].hasOwnProperty("x")&&y.data[0].includes(y.layers[m].x)){y.aes.x=y.layers[m].x;break}}}if(!y.aes.hasOwnProperty("y")||(y.aes.hasOwnProperty("y")&&y.data[0]&&!y.data[0].includes(y.aes.y))){for(var f=0;f<o.length;f++){var m=o[f];if(y.layers[m]&&y.layers[m].hasOwnProperty("y")&&y.data[0].includes(y.layers[m].y)){y.aes.y=y.layers[m].y;break}}}if(y.hasOwnProperty("meta")){y.aes.metaData=y.meta}if(y.hasOwnProperty("mappings")){y.aes.mappings=y.mappings}if(y.hasOwnProperty("scales")&&y.scales.hasOwnProperty("sizes")){if(Array.isArray(y.scales.sizes)){y.aes.sizes=y.scales.sizes}}if(y.hasOwnProperty("isGGMatrix")){y.aes.isGGMatrix=y.isGGMatrix}return y.aes};var x=function(f){if(f&&f.hasOwnProperty("hoverTemplate")){f.hoverTemplate+="<br>"}return f};var j=function(f){if(f&&Array.isArray(f)&&f.length==0&&y.scales&&y.scales.hasOwnProperty("setMinX")&&y.scales.hasOwnProperty("setMaxX")&&y.scales.hasOwnProperty("setMinY")&&y.scales.hasOwnProperty("setMaxY")){f=[["min","max"],[y.scales.setMinX,y.scales.setMaxX],[y.scales.setMinY,y.scales.setMaxY]]}return f};delete (y.isGGPlot);var p=JSON.stringify(y);var o=Array.isArray(y.geoms)?y.geoms:[y.geoms];var s=aes(l());if(o.indexOf("GeomDensity")!==-1){s.cxGraphType="Scatter2D"}var d=new cxplot(y.renderTo,j(y.data),s,a);var e={};d.skipGeoms=false;d.meta.config.user.geoms=o;d.meta.config.user.layers=y.layers;d.meta.config.user.cxplot=p;for(var r=0;r<o.length;r++){var t=o[r];var q=e[t]?t+"."+e[t]:t;var u=t.toLowerCase().replace("geom","geom_").replace("2","_2").replace("filled","_filled").replace("_qql","_qq_l").replace("ridgesgradient","ridges_gradient").replace("ridges","_ridges").replace("repel","_repel").replace("npc","_npc").replace("pattern","_pattern");if(d[u]&&!d.skipGeoms){d[u](n(y.layers[q]))}e[t]=e[t]?e[t]+1:1}d.skipGeoms=false;d.oqd(n(y.labels));d.PlY(n(y.scales));d.Rl3(n(y.coords));d.u4B(n(y.theme));d.Mn8(n(y.facet));d.Ogc(x(y.config));d.skipRender=false;d.U4z();return d}else{if(k){var b=["x","y"];for(var r=0;r<b.length;r++){if(k[b[r]]&&k[b[r]].match(/\*/)){var h=k[b[r]].split("*");h[0]=h[0].replace(/\s*$/,"");h[1]=Number(h[1].replace(/^\s*/,""));k[b[r]]=h[0];if(!isNaN(h[1])){k[b[r]]=h[0];k[b[r]+"AxisFactorValue"]=h[1]}}if(k[b[r]]&&z&&z[0]&&!z[0].includes(k[b[r]])){if(k[b[r]].match(/^after_stat/)){k.after_stat=k[b[r]].replace(/^after_stat\(/,"")}delete k[b[r]]}}}var w={aes:(k||{}),theme:"GGPlot",shapes:["circle","equilateral","rect","plus","minus","diamond","hexagon","octagon","star","pentagon"],isCxplot:true,isGGMatrix:(k&&k.isGGMatrix?k.isGGMatrix:false),legendStyleGgplot:true,skipRender:(k&&k.isR?true:false)};if(k&&k.cxGraphType){w.graphType=k.cxGraphType;delete k.cxGraphType}if(k&&k.hasOwnProperty("sizes")){if(Array.isArray(k.sizes)){w.sizes=k.sizes;while(w.sizes.length<10){var v=(w.sizes[w.sizes.length-1]-w.sizes[w.sizes.length-2])/2;w.sizes.push(Math.ceil(v+w.sizes[w.sizes.length-1]))}if(w.sizes[0]<4){var v=4-w.sizes[0];for(var r=0;r<w.sizes.length;r++){w.sizes[r]+=v}}}}if(k&&k.hasOwnProperty("metaData")){w.metaData=k.metaData}if(k.hasOwnProperty("xAxisFactorValue")){w.xAxisFactorValue=k.xAxisFactorValue}if(k.hasOwnProperty("yAxisFactorValue")){w.yAxisFactorValue=k.yAxisFactorValue}var c=new CanvasXpress(y,z,w,a,false,false,false,false,true);c.meta.ggplot.aes=k||{};c.meta.ggplot.data=z[0];c.meta.ggplot.order=k&&k.order?k.order:{};return c}}})));(function(b,a){if(typeof exports==="object"&&typeof module!=="undefined"){a(exports)}else{(a((b.aes=b.aes||{})))}}(this,(function(){aes=function(){var b=arguments;var f={};var e=["x","y","z","fill","color","shape","size","pattern"];var a=function(){if(!f.stringSampleFactors){f.stringSampleFactors=[]}if(!f.stringVariableFactors){f.stringVariableFactors=[]}if(!f.asSampleFactors){f.asSampleFactors=[]}if(!f.asVariableFactors){f.asVariableFactors=[]}};for(var c=0;c<b.length;c++){if(Array.isArray(b[c])&&Array.isArray(b[c][0])){f.data=b[c]}else{if(b[c] instanceof Object){for(var d in b[c]){f[d]=b[c][d];if(d=="factor"){a();f.stringSampleFactors.push(b[c][d]);f.stringVariableFactors.push(b[c][d]);f.asSampleFactors.push(b[c][d]);f.asVariableFactors.push(b[c][d]);if(b.length>1){if(c==0){f.x=b[c][d]}else{if(c==1){f.y=b[c][d]}else{if(c==2){f.z=b[c][d]}}}}}else{if(e.includes(d)){if(b[c][d] instanceof Object&&b[c][d].factor){a();f.stringSampleFactors.push(b[c][d].factor);f.stringVariableFactors.push(b[c][d].factor);f.asSampleFactors.push(b[c][d].factor);f.asVariableFactors.push(b[c][d].factor);f[d]=b[c][d].factor}else{if(b[c][d].toString().match(/^factor\(.+\)/)){f[d]=b[c][d].replace(/^factor\(/,"").replace(/\)$/,"");a();f.stringSampleFactors.push(f[d]);f.stringVariableFactors.push(f[d]);f.asSampleFactors.push(f[d]);f.asVariableFactors.push(f[d])}else{if(b[c].mappings&&b[c].mappings[d]){a();f.stringSampleFactors.push(b[c][d]);f.stringVariableFactors.push(b[c][d]);f.asSampleFactors.push(b[c][d]);f.asVariableFactors.push(b[c][d])}}}}else{if(d=="sample"){f.x=b[c][d]}}}}}else{if(c==0){f.x=b[c]}else{if(c==1){f.y=b[c]}else{if(c==2){f.z=b[c]}}}f[b[c]]=b[c]}}}return f}})));(function(b,a){if(typeof exports==="object"&&typeof module!=="undefined"){a(exports)}else{(a((b.ggplot=b.ggplot||{})))}}(this,(function(){var b=["point","line","path","bar","col","area","boxplot","violin","sina","histogram","density","dotplot","jitter","smooth","tile","raster","hex","bin_2d","contour","errorbar","ribbon","step","text","label","segment","rect","polygon","qq","quantile","dumbbell","rug","count","density_ridges"];function e(h){for(var g=1;g<arguments.length;g++){var i=arguments[g];if(i){for(var f in i){if(i.hasOwnProperty(f)){h[f]=i[f]}}}}return h}function c(j){var h=j.split("_");var g="Geom";for(var f=0;f<h.length;f++){g+=h[f].charAt(0).toUpperCase()+h[f].slice(1)}return g}function d(g,f){this.dataFrame=g||null;this.plotAes=f?e({},f):{};this.geomTokens=[];this.geomLayers={};this.geomCounts={};this.facetSpec={};this.labelSpec={};this.scaleSpec={};this.coordSpec={};this.themeSpec={};this.configSpec={};this.orderSpec={};this.renderTarget=null}d.prototype.data=function(f){this.dataFrame=f;return this};d.prototype.aes=function(f){e(this.plotAes,f);return this};d.prototype.addGeom=function(j,f){var h=c(j);var i=this.geomCounts[h]||0;var g=i===0?h:h+"."+i;this.geomLayers[g]=e({},this.plotAes,f);this.geomTokens.push(h);this.geomCounts[h]=i+1;return this};d.prototype.facet_wrap=function(f,g){this.facetSpec=e({facet:f,facetType:"wrap"},g);return this};d.prototype.facet_grid=function(f){this.facetSpec=e({facetType:"grid"},f);return this};d.prototype.facet=function(f){this.facetSpec=e({},f);return this};d.prototype.labs=function(f){e(this.labelSpec,f);return this};d.prototype.ggtitle=function(f){this.labelSpec.title=f;return this};d.prototype.scales=function(f){e(this.scaleSpec,f);return this};d.prototype.coords=function(f){e(this.coordSpec,f);return this};d.prototype.coord_flip=function(){this.coordSpec.flip=true;return this};d.prototype.theme=function(f){e(this.themeSpec,f);return this};d.prototype.config=function(f){e(this.configSpec,f);return this};d.prototype.spec=function(g){var f={renderTo:g||this.renderTarget,data:this.dataFrame,aes:this.plotAes,layers:this.geomLayers,geoms:this.geomTokens.length===1?this.geomTokens[0]:this.geomTokens,isGGPlot:true};if(this.elc(this.facetSpec).length){f.facet=this.facetSpec}if(this.elc(this.labelSpec).length){f.labels=this.labelSpec}if(this.elc(this.scaleSpec).length){f.scales=this.scaleSpec}if(this.elc(this.coordSpec).length){f.coords=this.coordSpec}if(this.elc(this.themeSpec).length){f.theme=this.themeSpec}if(this.elc(this.configSpec).length){f.config=this.configSpec}if(this.elc(this.orderSpec).length){f.order=this.orderSpec}return f};d.prototype.getKeys=function(h){var g=[];for(var f in h){if(h.hasOwnProperty(f)){g.push(f)}}return g};d.prototype.render=function(g,f){return cxplot(this.spec(g),null,null,f)};for(var a=0;a<b.length;a++){(function(f){d.prototype["geom_"+f]=function(g){return this.addGeom(f,g)}})(b[a])}ggplot=function(g,f){return new d(g,f)};if(typeof cxplot!=="undefined"&&cxplot){cxplot.plot=ggplot}})));CanvasXpress.onReady=function(){var f=[];var a=false;var d=false;var c=function(){if(!a){var g=CanvasXpress.instances[0];if(g){g.aru("canvasXpress JS ready");a=true;for(var h=0;h<f.length;h++){f[h].fn.call(window,f[h].ctx)}f=[]}}};var b=function(){if(window.document.readyState==="complete"){c()}};var e=function(){c()};window.onReady=function(h,g){if(a){setTimeout(function(){h(g)},1);return}else{f.push({fn:h,ctx:g})}if(window.document.readyState==="complete"){setTimeout(c,1)}else{if(!d){if(window.document.addEventListener){window.document.addEventListener("DOMContentLoaded",c,false);window.addEventListener("load",e,false)}else{window.document.attachEvent("onreadystatechange",b);window.attachEvent("onload",e)}d=true}}};return true}();CanvasXpress.loadLeaflet=function(c,d){var b=document.createElement("script");b.type="text/javascript";b.src="https://www.canvasxpress.org/assets/leaflet/leaflet.js";b.crossOrigin="anonymous";var a=document.createElement("link");a.type="text/css";a.rel="stylesheet";a.href="https://www.canvasxpress.org/assets/leaflet/leaflet.css";a.crossOrigin="anonymous";if(window.L){if(c){if(typeof(c)=="function"){c.call(d)}}}else{CanvasXpress.loadScripts([a,b],c,d)}};CanvasXpress.loadScripts=function(){var i=0;return function(files,callback,scope){var head=window.document.getElementsByTagName("head")[0];var loadScript=function(s,c){var t=s.type;if(t.match(/javascript/i)){s.onreadystatechange=function(){if(s.readyState==="loaded"||s.readyState==="complete"){s.onreadystatechange=null;c()}};s.onload=function(){c()};head.appendChild(s)}else{head.appendChild(s);c()}};var count=function(){if(i===files.length){i=0;if(callback){if(typeof(callback)=="function"){callback.call(scope)}else{if(typeof(callback)=="string"){eval("var fn = "+callback);fn()}}}}else{CanvasXpress.loadScripts(files,callback,scope)}};i++;if(files[i-1]){loadScript(files[i-1],count)}}}();CanvasXpress.transferDatasetAttributes=function(e,a,f){var d=JSON.parse(JSON.stringify(e.dataset));for(var c in d){if(d.hasOwnProperty(c)){if(f){a[c.replace(/^data-/,"")]=d[c]}else{var b="data-"+c.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase();a.setAttribute(b,d[c])}}}};CanvasXpress.initCanvas=function(g){var e=document.querySelectorAll("canvas.CanvasXpress");for(var d=0;d<e.length;d++){var h=e[d];if(h.id){var f=false;var a={};var b=CanvasXpress.getObject(h.id);if(h.hasAttribute("data-src")&&!b){f=h.getAttribute("data-src");CanvasXpress.transferDatasetAttributes(h,a,true);if(Object.keys(a).length){new CanvasXpress(h.id,f,a)}else{new CanvasXpress(h.id,f,false,false,false,false,g)}}}}};CanvasXpress.initImage=function(h){var j=document.querySelectorAll("img.CanvasXpress");for(var f=0;f<j.length;f++){var c=j[f];if(c.id){var d=CanvasXpress.getObject(c.id);var g=c.parentNode;if(!d){var e=c.src;var a=c.id;var b=window.document.createElement("canvas");b.width=c.width;b.height=c.height;CanvasXpress.transferDatasetAttributes(c,b);g.removeChild(c);b.id=a;g.appendChild(b);if(!h){h=function(){window.dispatchEvent(new Event("resize"))}}else{h=(function(i){return function(){i();window.dispatchEvent(new Event("resize"))}})(h)}new CanvasXpress(a,e,false,false,false,false,h)}}}};CanvasXpress.initTable=function(g){var c=document.querySelectorAll("table.CanvasXpress");for(var b=0;b<c.length;b++){var e=c[b];if(e.id){var h=CanvasXpress.getObject(e.id);var d=e.parentNode;if(!h){var f=e.id;var a=window.document.createElement("canvas");a.id="temp-table-id-"+e.id;a.width=e.hasAttribute("data-width")?e.getAttribute("data-width"):500;a.height=e.hasAttribute("data-height")?e.getAttribute("data-height"):500;CanvasXpress.transferDatasetAttributes(e,a);d.appendChild(a);new CanvasXpress("temp-table-id-"+e.id,f,false,false,false,false,g)}}}};CanvasXpress.pivot=function(M,z,N,x){function O(v,h){var r=v.slice(1);var c=[];for(var l=0;l<r.length;l++){c.push(r[l][h])}var k=[];for(var l=0;l<c.length;l++){if(k.indexOf(c[l])===-1){k.push(c[l])}}var m=r.length;var j=k.length;if(j===m){return false}else{return true}}if(!M||!Array.isArray(M)||M.length<2||!Array.isArray(M[0])||M[0].length<3){return M}var L=M[0];var B=M.slice(1);if(z===undefined){z=L[0]}if(N===undefined){N=L[1]}if(x===undefined){x=L[2]}var y=L.indexOf(z);var w=L.indexOf(N);var Q=L.indexOf(x);if(y===-1||w===-1||Q===-1){throw new Error("One or more specified column headers not found.")}if(!O(M,y)){return M}var s=[];var n=[];for(var I=0;I<L.length;I++){if(I!==y&&I!==w&&I!==Q){s.push(L[I]);n.push(I)}}var g={};for(var I=0;I<B.length;I++){var t=B[I];var C=t[y];if(!g[C]){g[C]={};g[C][z]=C;for(var F=0;F<s.length;F++){g[C][s[F]]=[]}}for(var F=0;F<s.length;F++){g[C][s[F]].push(t[n[F]])}var o=t[w];var S=t[Q];if(!g[C][o]){g[C][o]=[]}g[C][o].push(S)}var f=B.map(function(c){return c[w]});var H=[];for(var G=0;G<f.length;G++){var S=f[G];if(H.indexOf(S)===-1){H.push(S)}}var P=Object.keys(g);for(var I=0;I<P.length;I++){var R=P[I];for(var F=0;F<s.length;F++){var A=s[F];var b=g[R][A];var u=[];for(var E=0;E<b.length;E++){if(u.indexOf(b[E])===-1){u.push(b[E])}}g[R][A]=u.join(", ")}for(var G=0;G<H.length;G++){var q=H[G];if(g[R][q]&&typeof g[R][q].length!=="undefined"){var K=g[R][q];var J=true;for(var D=0;D<K.length;D++){if(isNaN(parseFloat(K[D]))||!isFinite(K[D])){J=false;break}}if(J){var e=0;for(var D=0;D<K.length;D++){e+=parseFloat(K[D])}g[R][q]=e/K.length}else{g[R][q]=K.join(", ")}}}}var p=[z].concat(s).concat(H);var a=Object.keys(g).map(function(c){var d=g[c];return p.map(function(h){return d[h]||null})});return[p].concat(a)};CanvasXpress.melt=function(u,q,l,c,x){if(!u||!Array.isArray(u)||u.length<2||!Array.isArray(u[0])||u[0].length<2){return u}var s=u[0];var f=u.slice(1);var c=c||"variable";var g=x||"value";if(!l){l=[];for(var o=0;o<s.length;o++){if(q.indexOf(s[o])===-1){l.push(s[o])}}}var b=q.map(function(d){return s.indexOf(d)});var t=l.map(function(d){return s.indexOf(d)});var v=[];for(var o=0;o<f.length;o++){var a=f[o];var n=b.map(function(d){return a[d]});for(var p=0;p<t.length;p++){var w=n.slice();w.push(l[p]);w.push(a[t[p]]);v.push(w)}}var e=q.concat([c,g]);return[e].concat(v)};CanvasXpress.getSetCurrentObject=function(d){var e=null;if(d){var c=d.target||d.srcElement;var g=0;while(c&&!e&&g<8){var h=c.id;if(h){e=CanvasXpress.getObject(h);if(!e){var f=null;for(var b=0;b<CanvasXpress.instances.length;b++){var a=CanvasXpress.instances[b].target;if(h===a||h.indexOf(a+"-")===0||a.indexOf(h+"-")===0){if(!f||a.length>f.target.length){f=CanvasXpress.instances[b]}}}e=f}}c=c.parentNode;g++}}if(e){CanvasXpress.current=e;return e}if(CanvasXpress.current&&typeof(CanvasXpress.current)=="object"){return CanvasXpress.current}CanvasXpress.current=CanvasXpress.instances[0];return CanvasXpress.current};CanvasXpress.getObject=function(f,b){if(f){while(CanvasXpress.chain.hasOwnProperty(f)){f=CanvasXpress.chain[f]}for(var a=0;a<CanvasXpress.instances.length;a++){if(CanvasXpress.instances[a].target==f){return CanvasXpress.instances[a]}}}else{if(b){var d=window.document.getElementById(f);if(!d){var e=window.document.createElement("canvas");e.id=f;e.width=100;e.height=100;window.document.body.appendChild(e);d=new CanvasXpress({renderTo:f},false,false,false,false,false,false,false,true)}return d}else{if(CanvasXpress.instances.length){return CanvasXpress.instances[0]}}}};CanvasXpress.json=function(a,c){var b=new XMLHttpRequest();b.open("GET",a,true);b.responseType="json";b.onload=function(){var d=b.status;if(d==200){c(null,b.response)}else{c(d)}};b.send()};CanvasXpress.csv=function(a,c){var b=new XMLHttpRequest();b.open("GET",a,true);b.responseType="text";b.onload=function(){var d=b.status;if(d==200){c(null,b.response)}else{c(d)}};b.send()};CanvasXpress.svg=function(a,d,c){var b=new XMLHttpRequest();b.open("GET",a,true);b.responseType="text";b.onload=function(){var e=b.status;if(e==200){c(b.responseText,d)}else{c(e)}};b.send()};CanvasXpress.$=function(b,a){return CanvasXpress.getObject(b,a)};CanvasXpress.destroy=function(b,a){if(CanvasXpress.instances.length>0){CanvasXpress.instances[0].destroy(b,a)}};CanvasXpress.create=function(c,b,a){CanvasXpress.inject(c);return new CanvasXpress(c,b,a,false,false,false,false,false,true)};CanvasXpress.createObject=function(f,d,b,c,e,h,g,a){if(!f){throw new Error("No target provided")}else{if(typeof(f)=="object"&&f.renderTo){d=f.tracks?{tracks:f.tracks}:f.nodes?{nodes:f.nodes}:f.venn?{venn:f.venn}:f.data?f.data:false;b=f.config||false;if(f.version){b.createVersion=f.version}if(f.factory){b.createFactory=f.factory}c=f.events||false;e=f.info?f.info.replace(/'/g,"'").replace(/"/g,"'"):false;h=f.afterRender||false;g=f.callback||false;a=f.noValidate?f.noValidate:b&&b.noValidate?b.noValidate:false;f=f.renderTo;CanvasXpress.inject(f)}else{if(typeof f==="string"||f instanceof String){CanvasXpress.inject(f)}}}return{target:f,data:d,config:b,events:c,info:e,afterRender:h,callback:g,noValidate:a}};CanvasXpress.inject=function(c){if(typeof c==="string"||c instanceof String){var b=document.getElementById(c);if(b!==null){if(b.tagName.toLowerCase()=="canvas"){if(!b.width){b.width=500}if(!b.height){b.height=500}}else{if(b.tagName.toLowerCase()=="div"){b.id=c+"-div";var a=document.createElement("canvas");a.id=c;a.width=500;a.height=500;b.appendChild(a)}}}else{var a=document.createElement("canvas");a.id=c;a.width=500;a.height=500;document.body.appendChild(a)}}};CanvasXpress.loadFonts=function(d,c){if(d&&d.length&&c){var b=false;for(var a=0;a<d.length;a++){if(!CanvasXpress.fonts.hasOwnProperty(d[a])){b=true;break}}WebFontConfig={google:{families:d},timeout:2000};if(c){WebFontConfig.active=c}(function(h){if(window.navigator.onLine&&b){var e=h.createElement("script");var g=h.scripts[0];e.src="https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js";e.async=true;g.parentNode.insertBefore(e,g);for(var f=0;f<d.length;f++){CanvasXpress.fonts[d[f]]=true}}else{c()}})(document)}};CanvasXpress.loadFontsExternal=function(c,b){if(c&&c.length&&b){var a=false;if(!CanvasXpress.fonts.hasOwnProperty(c[0].name)){a=true}(function(f){if(window.navigator.onLine&&a){var e=new XMLHttpRequest();e.addEventListener("readystatechange",function(g){if(e.readyState==2&&e.status==200){}else{if(e.readyState==3){}else{if(e.readyState==4){var d=new FontFace(c[0].name,e.response);document.fonts.add(d);CanvasXpress.fonts[c[0].name]=true;b()}}}});e.responseType="arraybuffer";e.open("get",c[0].url);e.send()}else{b()}})(document)}};CanvasXpress.loadTopoJSON=function(a,b,d){if(a&&d){var c=false;if(!b){b="cXMap"}if(!window.hasOwnProperty(b)){c=true}(function(f){if(window.navigator.onLine&&c){var e=new XMLHttpRequest();e.addEventListener("readystatechange",function(g){if(e.readyState==2&&e.status==200){}else{if(e.readyState==3){}else{if(e.readyState==4){window[b]=JSON.parse(e.response);d()}}}});e.open("get",a);e.send()}else{d()}})(document)}};CanvasXpress.loadRemoteData=function(j,c,f,m,l){if(c&&l){if(!CanvasXpress.prototype.initIO){setTimeout(function(){CanvasXpress.loadRemoteData(j,c,f,m,l)},20);return}var n=CanvasXpress.prototype.initIO.apply(CanvasXpress);var d=function(r,s,e){if(!r.hasOwnProperty(s)){if(!r){r={}}if(!r.hasOwnProperty(s)){r[s]={}}r[s]=JSON.parse(JSON.stringify(e))}else{for(var q in e){r[s][q]=e[q]}}};var h=null;var g=window.document.getElementById(c);var o=n.isValidURL(c.replace(/^file:\/\//,""));var k=c.match(/\.pl$/)||c.match(/\.pl\?/)?true:false;if(g&&g.tagName.toLowerCase()=="table"&&g.classList.contains("CanvasXpress")&&g.id){h=n.HTMLTableToCX(g,f);h.renderTo=j||g.id;h.events=m;g.parentNode.removeChild(g);return l(h)}else{if(o){(function(p){if(window.navigator.onLine){if(!j){j="cX-data-url"}if(o==2&&!c.match(/^file:/)){if(c.match(/^\/.+/)){c=window.location.protocol+"//"+window.location.host+c}else{if(!c.match(/^\.\/.+/)){c=c.replace(/^\.\//,"/");c=window.location.protocol+"//"+window.location.host+"/"+c}else{c="file://"+c}}}var e=new XMLHttpRequest();e.open("get",c,true);e.onreadystatechange=function(){if(e.readyState==2&&e.status==200){}else{if(e.readyState==3){}else{if(e.readyState==4){if(c.match(/\.json$/)||k){h=n.parseJSON(e.response);if(Array.isArray(h)){var v=h[0][1];var u=[];for(var t=0;t<h.length;t++){u.push(h[t][0])}CanvasXpress.loadRemoteData(j,v,f,m,l)}else{h.renderTo=j||h.renderTo;h.events=m||h.events;d(h,"config",f);l(h)}}else{if(c.match(/\.parquet$/)){var w=n.WLt(e.response,f);h=n.arrayToCX(w.data,w.config);h.renderTo=j||h.renderTo;h.events=m||h.events;d(h,"config",f);l(h)}else{if(c.match(/\.png$/)){h=n.PNGtoCX(e.response);h.renderTo=j||h.renderTo;h.events=m||h.events;d(h,"config",f);l(h)}else{if(c.match(/\.txt$/)||c.match(/\.csv$/)||c.match(/\.tsv$/)||c.match(/\.tab$/)){h=n.parseDelimited(e.response);if(f&&f.graphType=="Network"){h=n.arrayToCXNetwork(h,j,f,m)}else{h=n.arrayToCX(h,f,f&&f.isR);h.renderTo=j||h.renderTo;h.events=m||h.events}d(h,"config",f);l(h)}else{if(c.match(/\.svg$/)){h=n.SVGtoCX(e.response);d(h,"config",f);l(h)}else{if(c.match(/ml$/)||c.match(/ml\.bz2$/)||c.match(/\.gexf$/)){var s=c.match(/ml\.bz2$/)?n.parseXML(n.bz2(e.response)):n.parseXML(e.response);var r=s.childNodes[0];var q=s.childNodes[2];if(r.tagName&&r.tagName.toLowerCase()=="gexf"){h=n.gexfToCX(s,j,f,m);l(h)}else{if(r.tagName&&r.tagName.toLowerCase()=="map"){h=n.metabaseToCX(s,j,f,m);l(h)}else{if(r.tagName&&r.tagName.toLowerCase()=="graph"){h=n.cytoscapeToCX(s,j,f,m);l(h)}else{if(r.tagName&&r.tagName.toLowerCase()=="pathway"){h=n.wikipathwayToCX(s,j,f,m);l(h)}else{if(q&&q.tagName&&q.tagName.toLowerCase()=="pathway"){n.keggToCX(s,j,f,m,l)}}}}}}else{l()}}}}}}}}}};if(c.match(/\.png$/)||c.match(/\.parquet$/)){e.responseType="arraybuffer"}else{if(c.match(/ml\.bz2$/)){e.responseType="binary"}else{e.responseType="text"}}e.send()}})(document)}else{try{h=JSON.parse(c);return l(h)}catch(i){h=null}var h=n.parseDelimited(c)||null;if(h){if(f&&f.graphType=="Network"){h=n.arrayToCXNetwork(h,j,f,m)}else{h=n.arrayToCX(h,f)}return l(h)}if(window.DOMParser){try{h=(new DOMParser()).parseFromString(c,"text/xml")}catch(i){h=null}}else{if(typeof window.ActiveXObject!="undefined"&&new window.ActiveXObject("Microsoft.XMLDOM")){try{h=new window.ActiveXObject("Microsoft.XMLDOM");h.async="false"}catch(i){h=null}}}if(h!=null&&h.getElementsByTagName("parsererror").length==0){var b=h.childNodes[0];var a=h.childNodes[2]||h.childNodes[1];if(b.tagName&&b.tagName.toLowerCase()=="gexf"){return l(n.gexfToCX(h,j,f,m))}else{if(b.tagName&&b.tagName.toLowerCase()=="map"){return l(n.metabaseToCX(h,j,f,m))}else{if(b.tagName&&b.tagName.toLowerCase()=="graph"){return l(n.cytoscapeToCX(h,j,f,m))}else{if(b.tagName&&b.tagName.toLowerCase()=="pathway"){return l(n.wikipathwayToCX(h,j,f,m))}else{if(a&&a.tagName&&a.tagName.toLowerCase()=="pathway"){return n.keggToCX(h,j,f,m,l)}}}}}}return null}}}};CanvasXpress.disableCSSTransitions=function(){CanvasXpress.cssTransitions=document.createElement("style");CanvasXpress.cssTransitions.type="text/css";CanvasXpress.cssTransitions.innerHTML="* { transition: none !important; -webkit-transition: none !important; }";document.getElementsByTagName("head")[0].appendChild(CanvasXpress.cssTransitions)};CanvasXpress.enableCSSTransitions=function(){if(CanvasXpress.cssTransitions){document.getElementsByTagName("head")[0].removeChild(CanvasXpress.cssTransitions);CanvasXpress.cssTransitions=null}};CanvasXpress.callbackPass=function(a){};CanvasXpress.callbackRDataset=function(d){event.stopPropagation();event.preventDefault();var f=d.split("/");var e=f[8];var b=f[9];var g=f[10].split(".")[0];var a=event.target.parentNode.parentNode.id.split("-cX-DataTable")[0];var c=CanvasXpress.getObject(a);if(e=="csv"){c.PQ5(d);c.Rdataset={library:b,dataset:g,url:c.RdatasetsURL+"json/"+b+"/"+g+"Info.json",info:false}}else{var h=function(k){var j={width:"500px",height:"500px",overflow:"auto",textWrap:"auto",position:"relative",zIndex:1000000,fontSize:"small"};var m="";for(var l in k.parameters){m+="<b>"+l+"</b>: "+k.parameters[l]+"<br><br>"}c.JDY({ac:{x:100,y:100}},m,a,j)};c.GDl(d,false,h,"json")}return false};CanvasXpress.parametersLLM=["llmServiceURL","llmTemperature","llmSelectFirst","llmBehaviour","llmPrompt","llmStack","llmHeader","llmUseAutocomplete","llmCodeExamples","llmCodeMaxSentences","disableChat"];CanvasXpress.callbackRateLLM=function(b){var c=function(){var f=document.getElementById(b.target+"-cX-ChatInterfaceRateScript");if(f){document.body.removeChild(f)}};if(b&&b.success){var a=CanvasXpress.getObject(b.target);if(a){var e=document.getElementById(b.target+"-cX-ChatInterfaceThumbUpImage");var d=document.getElementById(b.target+"-cX-ChatInterfaceThumbDownImage");if(b.rating===1){a.llc(e,"op_thumbup");a.llc(d,"op_thumbdown2");b.text="Rated: Thumbs Up"}else{if(b.rating===-1){a.llc(d,"op_thumbdown");a.llc(e,"op_thumbup2");b.text="Rated: Thumbs Down"}}a.FmO(100,100,b.text,3000)}else{alert("CanvasXpress Object: "+b.target+" - not found")}c()}else{alert(b.text)}};CanvasXpress.callbackLLM=function(a){var c=function(n,d){var h=document.createElement("canvas");h.width=n;h.height=d;h.id="cX-LLM-"+Date.now();return h};var u=function(r){var K=document.createElement("div");K.style.width=r+"px";K.style.height="100px";K.style.clear="both";K.style.position="relative";K.style.margin="auto";var n=document.createElement("span");n.innerHTML=a.datetime||"";n.style.cssFloat="right";var d=document.createElement("span");d.innerHTML=A||"";d.style.cssFloat="left";d.style.fontWeight="bold";var J=document.createElement("span");J.innerHTML=a.client||a.client_id||"";J.style.cssFloat="left";var s=document.createElement("br");var p=document.createElement("br");var h=document.createElement("br");K.appendChild(s);K.appendChild(J);K.appendChild(n);K.appendChild(p);K.appendChild(d);K.appendChild(h);return K};var f=function(h,d){var n=document.createElement("div");if(d){n.className=d}n.appendChild(h);return n};var t=function(p,h){var r=CanvasXpress.parametersLLM;h.LZK();var d={graphOrientation:true,graphType:true,isR:true,prompt:true};for(var n=0;n<r.length;n++){p.config[r[n]]=h[r[n]]}};var E=function(){var d=document.getElementById(a.target+"-cX-ChatInterfaceAskScript");if(d){document.body.removeChild(d)}};var k=function(){var d=CanvasXpress.getObject(a.target);if(d){d.Gqi();var h=document.getElementById(a.target+"-cX-ChatInterfaceThumbs");if(h){h.style.display="flex"}if(j==="select_canvasxpress_chart"&&a.html&&a.html.content){d.HJc(a.html.content)}d.tNa();d.isAskingLLM=false;d.a74()}E()};var q=function(h){var d=CanvasXpress.getObject(a.target);if(d){d.isAskingLLM=false;d.a74()}E();if(h){alert(h)}};if(!a){q("No response received from the LLM service.");return}var j=a.tool||"";var v=(j==="generate_canvasxpress_config"||j==="modify_canvasxpress_config"||j==="generate_km_config"||j==="autocomplete");CanvasXpress._selectResponse=CanvasXpress._selectResponse||{};delete CanvasXpress._selectResponse[a.target];if(j==="select_canvasxpress_chart"){if(a.top_recommendation&&a.top_recommendation.minimal_config){CanvasXpress._selectResponse[a.target]=a;a.config=a.top_recommendation.minimal_config;a.description=a.generate_hint||a.top_recommendation.graphType;v=true}}var l=(a.success===false||!!a.error||(v&&(!a.config||Object.keys(a.config).length===0)));if(l){var e;if(a.warnings&&a.warnings.length>0){e=a.warnings[0]}else{if(a.error){e=a.error}else{if(a.text){e=a.text}else{e="The LLM service ("+(j||"unknown")+") could not generate a valid configuration. Try rephrasing your description."}}}q(e);return}if(a.action||(a.actions&&a.actions.length)){var g=CanvasXpress.getObject(a.target);if(g){g.isAskingLLM=false;g.iVi(a.actions||[a.action]);if(a.html&&a.html.content){g.aFp(a.html.content)}g.a74()}E();return}if(!v){var i=CanvasXpress.getObject(a.target);if(i){i.isAskingLLM=false;if(a.html&&a.html.content){i.aFp(a.html.content)}i.a74()}E();return}var I=a.config;var i=CanvasXpress.getObject(a.target);if(i){var H=i.bZH();var F=i.H8L();var B=i.llmStack.length;var A=i.llmPrompt||"";var y=a.request_id||"";var x=JSON.parse(JSON.stringify(i.llmStack));x.push({header:F,prompt:A,n:B,requestId:y});a.config=I;t(a,i);var D=document.getElementById(a.target+"-cX-DOM");if(D){I.isGraphTime=i.isGraphTime;I.xAxisTime=i.xAxisTime;I.yAxisTime=i.yAxisTime;I.view="canvas";delete I.xAxisTickFormat;delete I.yAxisTickFormat;i.graphType=I.graphType;if(i.llmBehaviour&&i.llmBehaviour==="update"){i.Axj(i.target,true);var G={renderTo:a.target,data:H,config:I,callback:k};G.config.llmPrompt=A;G.config.llmStack=x;i=new CanvasXpress(G,false,false,false,false,false,false,false,true)}else{var w=D.parentNode;var b=w.className;var z=u(i.width);var C=c(i.width,i.height);var m=C.id;var o=document.createElement("div");o.style.width=i.width+"px";o.style.height="40px";o.style.clear="both";if(w.parentNode&&w.parentNode.tagName.toLowerCase()==="div"){C=f(C,b);w.after(o);o.after(z);z.after(C)}else{w.appendChild(o);w.appendChild(z);w.appendChild(C)}var G={renderTo:m,data:H,config:I,callback:k};G.config.llmPrompt=A;G.config.llmStack=x;i=new CanvasXpress(G,false,false,false,false,false,false,false,true);D=document.getElementById(a.target+"-cX-DOM");D.style.display="block"}E()}else{alert("CanvasXpress Container: "+a.target+"-cX-DOM - not found");E()}}else{alert("CanvasXpress Object: "+a.target+" - not found");E()}};CanvasXpress.applySelectConfig=function(f,c){var e=CanvasXpress.getObject(f);if(!e){alert("CanvasXpress Object: "+f+" - not found");return}var g=e.bZH();var i=CanvasXpress._selectResponse&&CanvasXpress._selectResponse[f];var b=0;var j=document.getElementById(f+"-cX-ChatInterfaceMessagesContainer");if(j){b=j.scrollTop}e.Axj(e.target,true);var k={renderTo:f,data:g,config:c};e=new CanvasXpress(k,false,false,false,false,false,false,false,true);if(i&&i.html&&i.html.content){var h=CanvasXpress.getObject(f);if(h){h.e1h();h.HJc(i.html.content);var a=document.getElementById(f+"-cX-ChatInterfaceMessagesContainer");if(a){a.scrollTop=b}}}};CanvasXpress.setColorSchemes=function(){CanvasXpress.colorSchemes={YlGn:{3:"f7fcb9addd8e31a354",4:"ffffccc2e69978c679238443",5:"ffffccc2e69978c67931a354006837",6:"ffffccd9f0a3addd8e78c67931a354006837",7:"ffffccd9f0a3addd8e78c67941ab5d238443005a32",8:"ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32",9:"ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529"},YlGnBu:{3:"edf8b17fcdbb2c7fb8",4:"ffffcca1dab441b6c4225ea8",5:"ffffcca1dab441b6c42c7fb8253494",6:"ffffccc7e9b47fcdbb41b6c42c7fb8253494",7:"ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84",8:"ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84",9:"ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58"},GnBu:{3:"e0f3dba8ddb543a2ca",4:"f0f9e8bae4bc7bccc42b8cbe",5:"f0f9e8bae4bc7bccc443a2ca0868ac",6:"f0f9e8ccebc5a8ddb57bccc443a2ca0868ac",7:"f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e",8:"f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e",9:"f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081"},BuGn:{3:"e5f5f999d8c92ca25f",4:"edf8fbb2e2e266c2a4238b45",5:"edf8fbb2e2e266c2a42ca25f006d2c",6:"edf8fbccece699d8c966c2a42ca25f006d2c",7:"edf8fbccece699d8c966c2a441ae76238b45005824",8:"f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824",9:"f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b"},PuBuGn:{3:"ece2f0a6bddb1c9099",4:"f6eff7bdc9e167a9cf02818a",5:"f6eff7bdc9e167a9cf1c9099016c59",6:"f6eff7d0d1e6a6bddb67a9cf1c9099016c59",7:"f6eff7d0d1e6a6bddb67a9cf3690c002818a016450",8:"fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450",9:"fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636"},PuBu:{3:"ece7f2a6bddb2b8cbe",4:"f1eef6bdc9e174a9cf0570b0",5:"f1eef6bdc9e174a9cf2b8cbe045a8d",6:"f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d",7:"f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b",8:"fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b",9:"fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858"},BuPu:{3:"e0ecf49ebcda8856a7",4:"edf8fbb3cde38c96c688419d",5:"edf8fbb3cde38c96c68856a7810f7c",6:"edf8fbbfd3e69ebcda8c96c68856a7810f7c",7:"edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b",8:"f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b",9:"f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b"},RdPu:{3:"fde0ddfa9fb5c51b8a",4:"feebe2fbb4b9f768a1ae017e",5:"feebe2fbb4b9f768a1c51b8a7a0177",6:"feebe2fcc5c0fa9fb5f768a1c51b8a7a0177",7:"feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177",8:"fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177",9:"fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a"},PuRd:{3:"e7e1efc994c7dd1c77",4:"f1eef6d7b5d8df65b0ce1256",5:"f1eef6d7b5d8df65b0dd1c77980043",6:"f1eef6d4b9dac994c7df65b0dd1c77980043",7:"f1eef6d4b9dac994c7df65b0e7298ace125691003f",8:"f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f",9:"f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f"},OrRd:{3:"fee8c8fdbb84e34a33",4:"fef0d9fdcc8afc8d59d7301f",5:"fef0d9fdcc8afc8d59e34a33b30000",6:"fef0d9fdd49efdbb84fc8d59e34a33b30000",7:"fef0d9fdd49efdbb84fc8d59ef6548d7301f990000",8:"fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000",9:"fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000"},YlOrRd:{3:"ffeda0feb24cf03b20",4:"ffffb2fecc5cfd8d3ce31a1c",5:"ffffb2fecc5cfd8d3cf03b20bd0026",6:"ffffb2fed976feb24cfd8d3cf03b20bd0026",7:"ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026",8:"ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026",9:"ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026"},YlOrBr:{3:"fff7bcfec44fd95f0e",4:"ffffd4fed98efe9929cc4c02",5:"ffffd4fed98efe9929d95f0e993404",6:"ffffd4fee391fec44ffe9929d95f0e993404",7:"ffffd4fee391fec44ffe9929ec7014cc4c028c2d04",8:"ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04",9:"ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506"},Purples:{3:"efedf5bcbddc756bb1",4:"f2f0f7cbc9e29e9ac86a51a3",5:"f2f0f7cbc9e29e9ac8756bb154278f",6:"f2f0f7dadaebbcbddc9e9ac8756bb154278f",7:"f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486",8:"fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486",9:"fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d"},Blues:{3:"deebf79ecae13182bd",4:"eff3ffbdd7e76baed62171b5",5:"eff3ffbdd7e76baed63182bd08519c",6:"eff3ffc6dbef9ecae16baed63182bd08519c",7:"eff3ffc6dbef9ecae16baed64292c62171b5084594",8:"f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594",9:"f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b"},BluesDark:{2:"132B4356B1F7"},Greens:{3:"e5f5e0a1d99b31a354",4:"edf8e9bae4b374c476238b45",5:"edf8e9bae4b374c47631a354006d2c",6:"edf8e9c7e9c0a1d99b74c47631a354006d2c",7:"edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32",8:"f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32",9:"f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b"},Oranges:{3:"fee6cefdae6be6550d",4:"feeddefdbe85fd8d3cd94701",5:"feeddefdbe85fd8d3ce6550da63603",6:"feeddefdd0a2fdae6bfd8d3ce6550da63603",7:"feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04",8:"fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04",9:"fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704"},Reds:{3:"fee0d2fc9272de2d26",4:"fee5d9fcae91fb6a4acb181d",5:"fee5d9fcae91fb6a4ade2d26a50f15",6:"fee5d9fcbba1fc9272fb6a4ade2d26a50f15",7:"fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d",8:"fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d",9:"fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d"},Greys:{3:"f0f0f0bdbdbd636363",4:"f7f7f7cccccc969696525252",5:"f7f7f7cccccc969696636363252525",6:"f7f7f7d9d9d9bdbdbd969696636363252525",7:"f7f7f7d9d9d9bdbdbd969696737373525252252525",8:"fffffff0f0f0d9d9d9bdbdbd969696737373525252252525",9:"fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000",256:"fffffffffffffefefefefefefdfdfdfdfdfdfcfcfcfcfcfcfbfbfbfbfbfbfafafafafafaf9f9f9f9f9f9f9f9f9f8f8f8f8f8f8f7f7f7f7f7f7f6f6f6f6f6f6f5f5f5f5f5f5f4f4f4f4f4f4f3f3f3f3f3f3f2f2f2f2f2f2f1f1f1f1f1f1f0f0f0f0f0f0efefefefefefeeeeeeeeeeeeededededededececececececebebebebebebeaeaeaeaeaeae9e9e9e9e9e9e8e8e8e8e8e8e7e7e7e7e7e7e6e6e6e6e6e6e5e5e5e5e5e5e4e4e4e4e4e4e3e3e3e3e3e3e2e2e2e2e2e2e1e1e1e1e1e1e0e0e0e0e0e0dfdfdfdfdfdfdedededddddddddddddcdcdcdcdcdcdbdbdbdbdbdbdadadadadadad9d9d9d9d9d9d8d8d8d7d7d7d7d7d7d6d6d6d6d6d6d5d5d5d5d5d5d4d4d4d4d4d4d3d3d3d2d2d2d2d2d2d1d1d1d1d1d1d0d0d0cfcfcfcfcfcfcececececececdcdcdcdcdcdcccccccbcbcbcbcbcbcacacacacacac9c9c9c8c8c8c8c8c8c7c7c7c7c7c7c6c6c6c5c5c5c5c5c5c4c4c4c3c3c3c3c3c3c2c2c2c2c2c2c1c1c1c0c0c0c0c0c0bfbfbfbebebebebebebdbdbdbcbcbcbcbcbcbbbbbbbabababababab9b9b9b8b8b8b8b8b8b7b7b7b6b6b6b6b6b6b5b5b5b4b4b4b4b4b4b3b3b3b2b2b2b2b2b2b1b1b1b0b0b0afafafafafafaeaeaeadadadadadadacacacabababaaaaaaaaaaaaa9a9a9a8a8a8a7a7a7a7a7a7a6a6a6a5a5a5a4a4a4a4a4a4a3a3a3a2a2a2a1a1a1a0a0a0a0a0a09f9f9f9e9e9e9d9d9d9c9c9c9c9c9c9b9b9b9a9a9a9999999898989797979797979696969595959494949393939292929191919090909090908f8f8f8e8e8e8d8d8d8c8c8c8b8b8b8a8a8a8989898888888787878686868585858484848383838282828181818080807f7f7f7e7e7e7d7d7d7c7c7c7b7b7b7a7a7a7878787777777676767575757474747373737272727070706f6f6f6e6e6e6d6d6d6b6b6b6a6a6a6969696767676666666565656363636262626060605f5f5f5d5d5d5c5c5c5a5a5a5959595757575555555454545252525050504e4e4e4c4c4c4a4a4a4848484646464444444242424040403d3d3d3b3b3b3838383535353232322e2e2e2b2b2b2727272222221c1c1c15151500000"},PuOr:{3:"f1a340f7f7f7998ec3",4:"e66101fdb863b2abd25e3c99",5:"e66101fdb863f7f7f7b2abd25e3c99",6:"b35806f1a340fee0b6d8daeb998ec3542788",7:"b35806f1a340fee0b6f7f7f7d8daeb998ec3542788",8:"b35806e08214fdb863fee0b6d8daebb2abd28073ac542788",9:"b35806e08214fdb863fee0b6f7f7f7d8daebb2abd28073ac542788",10:"7f3b08b35806e08214fdb863fee0b6d8daebb2abd28073ac5427882d004b",11:"7f3b08b35806e08214fdb863fee0b6f7f7f7d8daebb2abd28073ac5427882d004b"},BrBG:{3:"d8b365f5f5f55ab4ac",4:"a6611adfc27d80cdc1018571",5:"a6611adfc27df5f5f580cdc1018571",6:"8c510ad8b365f6e8c3c7eae55ab4ac01665e",7:"8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e",8:"8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e",9:"8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e",10:"5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30",11:"5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30"},PRGn:{3:"af8dc3f7f7f77fbf7b",4:"7b3294c2a5cfa6dba0008837",5:"7b3294c2a5cff7f7f7a6dba0008837",6:"762a83af8dc3e7d4e8d9f0d37fbf7b1b7837",7:"762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837",8:"762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837",9:"762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837",10:"40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b",11:"40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b"},PiYG:{3:"e9a3c9f7f7f7a1d76a",4:"d01c8bf1b6dab8e1864dac26",5:"d01c8bf1b6daf7f7f7b8e1864dac26",6:"c51b7de9a3c9fde0efe6f5d0a1d76a4d9221",7:"c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221",8:"c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221",9:"c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221",10:"8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419",11:"8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419"},RdBu:{3:"ef8a62f7f7f767a9cf",4:"ca0020f4a58292c5de0571b0",5:"ca0020f4a582f7f7f792c5de0571b0",6:"b2182bef8a62fddbc7d1e5f067a9cf2166ac",7:"b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac",8:"b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac",9:"b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac",10:"67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061",11:"67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061"},RdGy:{3:"ef8a62ffffff999999",4:"ca0020f4a582bababa404040",5:"ca0020f4a582ffffffbababa404040",6:"b2182bef8a62fddbc7e0e0e09999994d4d4d",7:"b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d",8:"b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d",9:"b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d",10:"67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a",11:"67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a"},RdYlBu:{3:"fc8d59ffffbf91bfdb",4:"d7191cfdae61abd9e92c7bb6",5:"d7191cfdae61ffffbfabd9e92c7bb6",6:"d73027fc8d59fee090e0f3f891bfdb4575b4",7:"d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4",8:"d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4",9:"d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4",10:"a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695",11:"a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695"},Spectral:{3:"fc8d59ffffbf99d594",4:"d7191cfdae61abdda42b83ba",5:"d7191cfdae61ffffbfabdda42b83ba",6:"d53e4ffc8d59fee08be6f59899d5943288bd",7:"d53e4ffc8d59fee08bffffbfe6f59899d5943288bd",8:"d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd",9:"d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd",10:"9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2",11:"9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2"},RdYlGn:{3:"fc8d59ffffbf91cf60",4:"d7191cfdae61a6d96a1a9641",5:"d7191cfdae61ffffbfa6d96a1a9641",6:"d73027fc8d59fee08bd9ef8b91cf601a9850",7:"d73027fc8d59fee08bffffbfd9ef8b91cf601a9850",8:"d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850",9:"d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850",10:"a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837",11:"a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837"},Accent:{3:"7fc97fbeaed4fdc086",4:"7fc97fbeaed4fdc086ffff99",5:"7fc97fbeaed4fdc086ffff99386cb0",6:"7fc97fbeaed4fdc086ffff99386cb0f0027f",7:"7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17",8:"7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"},Dark2:{3:"1b9e77d95f027570b3",4:"1b9e77d95f027570b3e7298a",5:"1b9e77d95f027570b3e7298a66a61e",6:"1b9e77d95f027570b3e7298a66a61ee6ab02",7:"1b9e77d95f027570b3e7298a66a61ee6ab02a6761d",8:"1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"},Paired:{3:"a6cee31f78b4b2df8a",4:"a6cee31f78b4b2df8a33a02c",5:"a6cee31f78b4b2df8a33a02cfb9a99",6:"a6cee31f78b4b2df8a33a02cfb9a99e31a1c",7:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6f",8:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00",9:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d6",10:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9a",11:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99",12:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"},Default:{20:"fe296c487eb6a7ce31f8cc03ff8c02699696b7784483acd0c2e076fadc5aff549fffaf549ab8b7d2a6833d699b87ac22cda908d02158d07300567676",36:"ff00000000ff00ff00ffff0000ffffff00ff993300000080808000ff6600008080660066ff99cc666699333300ffcc99ccffff9999ffff80803366ff339966ffcc0000ccffd020909933660066cc99cc00ff990033cccccc99ff800000333399008000ffffcc99ccff800080"},Basic:{24:"0000ffff004dffbf0074ff00a400ffff7400ffff0000ffffff0000ffd3003d00ff00ff00ff00ffff9200d3ff000090ff6d00ffff4900ffe80000ff92ff0090ffaa00aaff00004dff"},Light:{24:"6565ffff6593ffd865abff65c865ffffab65ffff6565ffffff6565ffe5658965ff65ff65ff65ffffbd65e5ff6565bcffa765ffff9165fff16565ffbdff65bcffcc65ccff656593ff"},Favorite:{1:"ff0000",2:"ff000000ffff",3:"ff000000ff000000ff",4:"ff000080ff0000ffff8000ff",5:"ff0000bfff0000ff800040ffff00ff",6:"ff0000ffff0000ff0000ffff0000ffff00ff",8:"ff0000ffbf0080ff0000ff4000ffff0040ff8000ffff00bf",10:"ff0000ff8000ffff0080ff0000ff0000ff8000ffff0080ff0000ff8000ff",12:"ff0000ff8000ffff0080ff0000ff0000ff8000ffff0080ff0000ff8000ffff00ffff0080",24:"ff0000ff4000ff8000ffbf00ffff00bfff0080ff0040ff0000ff0000ff4000ff8000ffbf00ffff00bfff0080ff0040ff0000ff4000ff8000ffbf00ffff00ffff00bfff0080ff0040"},Bootstrap:{1:"337ab7",2:"337ab7d9534f",3:"337ab75cb85cd9534f",4:"337ab75cb85cf0ad4ed9534f",5:"337ab75cb85c5bc0def0ad4ed9534f",6:"337ab75cb85c9370db5bc0def0ad4ed9534f",7:"337ab75cb85cd9534ff0ad4e5bc0de84fe83ff9976",8:"337ab75cb85cd9534ff0ad4e5bc0de84fe83ff9976c86727"},ColorSpectrum:{3:"ff000000ff000000ff",4:"ff000080ff0000ffff8000ff",5:"ff0000ccff0000ff660066ffcc00ff",6:"ff0000ffff0000ff0000ffff0000ffff00ff",7:"ff0000ffdb0049ff0000ff920092ff4900ffff00db",8:"ff0000ffbf0080ff0000ff4000ffff0040ff8000ffff00bf",9:"ff0000ffaa00aaff0000ff0000ffaa00aaff0000ffaa00ffff00aa",10:"ff0000ff9900ccff0033ff0000ff6600ffff0066ff3300ffcc00ffff0099",11:"ff0000ff8b00e8ff005dff0000ff2e00ffb900b9ff002eff5d00ffe800ffff008b",12:"ff0000ff8000ffff0080ff0000ff0000ff8000ffff0080ff0000ff8000ffff00ffff0080"},White:{1:"ffffff"},Grey:{1:"d3d3d3",2:"d3d3d3cbcbcb",3:"d3d3d3cbcbcbc3c3c3",4:"d3d3d3cbcbcbc3c3c3bbbbbb",5:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3",6:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3ababab",7:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a3",8:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b",9:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b939393",10:"d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b9393938b8b8b"},GreyHC:{4:"ffffffbbbbbb777777333333",6:"ffffffcccccc999999666666333333000000",13:"d3d3d3c3c3c3b3b3b3a3a3a3939393838383737373636363535353434343333333232323131313"},BlueGrey:{1:"0ab0db",2:"0ab0dbd3d3d3",3:"0ab0dbd3d3d3cbcbcb",4:"0ab0dbd3d3d3cbcbcbc3c3c3",5:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbb",6:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3",7:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3ababab",8:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a3",9:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b",10:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b939393",11:"0ab0dbd3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b9393938b8b8b"},BlueRedGrey:{1:"0ab0db",2:"0ab0dbfe6969",3:"0ab0dbfe6969d3d3d3",4:"0ab0dbfe6969d3d3d3cbcbcb",5:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3",6:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbb",7:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3",8:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3ababab",9:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a3",10:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b",11:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b939393",12:"0ab0dbfe6969d3d3d3cbcbcbc3c3c3bbbbbbb3b3b3abababa3a3a39b9b9b9393938b8b8b"},Black:{1:"000000"},Diverging:{5:"f5841dedbb69d0d5e155b5d90c4487"},DivergingAlt:{5:"9e0418dd6c72d0d5e135a0c8042750"},Brand:{4:"cfe2f15eaccf0e76b0042751"},Complementary:{4:"f7d6d5ff8581e040439e0418"},Colorful:{5:"fcf6c4b1ca91718be67d53b0920148"},ColorfulAlt:{5:"fcf6c4edb681c77b7a7f50930e3587"},WHO:{6:"108dc98eca3affa16ae65550ffa3005bc2e7"},NPG:{10:"e64b354dbbd500a0873c5488f39b7f8491b491d1c2dc00007e6148b09c85"},AAAS:{10:"3b4992ee0000008b45631879008280bb00215f559ba200568081801b1919"},NEJM:{8:"bc3c290072b5e1872720854e7876b16f99adffdc91ee4c97"},Lancet:{9:"00468bed000042b5400099b4925e9ffdaf91ad002aadb6b61b1919"},Jama:{7:"374e55df8f4400a1d5b2474579af976a659980796b"},JCO:{10:"0073c2efc000868686cd534c7aa6dc003c678f77003b3b3ba730304a6990"},Economist:{12:"6794a7014d6476c0c101a2d97ad2f600887dadadad7bd3f67c260bee8f7176c0c1a18376"},EconomistBG:{5:"d5e4ebc3d6dfed111aebebebc9c9c9"},Excel:{7:"ff00ffffff0000ffff8000808000000080800000ff"},Excel2:{7:"993366ffffccccffff660066ff80800066ccccccff"},Excel3:{10:"365e9698333477973d5d437c36869fd1702f8197c5c47f80acc4849887b0"},GGPlot:{1:"595959",2:"f8766d00bfc4",3:"f8766d00ba38619cff",4:"f8766d7cae0000bfc4c77cff",5:"f8766da3a50000bf7d00b0f6e76bf3",6:"f8766db79f0000ba3800bfc4619cfff564e3",7:"f8766dc49a0053b40000c09400b6eba58afffb61d7",8:"f8766dcd96007cae0000be6700bfc400a9ffc77cffff61cc",9:"f8766dd3920093aa0000ba3800c19f00b9e3619cffdb72fbff61c3",10:"f8766dd89000a3a50039b60000bf7d00bfc400b0f69590ffe76bf3ff62bc",11:"f8766ddb8e00aea20064b20000bd5c00c1a700bade00a6ffb385ffef67ebff63b6",12:"f8766dde8c00b79f007cae0000ba3800c08b00bfc400b4f0619cffc77cfff564e3ff64b0",13:"f8766de18a00be9c008cab0024b70000be7000c1ab00bbda00acfc8b93ffd575fef962ddff65ac",14:"f8766de38900c49a0099a80053b40000bc5600c09400bfc400b6eb06a4ffa58affdf70f8fb61d7ff66a8",15:"f8766de58700c99800a3a5006bb10000ba3800bf7d00c0af00bcd800b0f6619cffb983ffe76bf3fd61d1ff67a4",16:"f8766de68613cd9600aba3007cae000cb70200be6700c19a00bfc400b8e700a9ff8494ffc77cffed68edff61ccff68a1",17:"f8766de7851ed09400b2a10089ac0045b50000bc5100c08700c0b200bcd600b3f229a3ff9c8dffd277fff166e8ff61c7ff689e",18:"f8766de88526d39200b79f0093aa005eb30000ba3800bf7400c19f00bfc400b9e300adfa619cffae87ffdb72fbf564e3ff61c3ff699c"},Solarized:{1:"b58900",2:"b58900859900",3:"b58900c671c4859900",4:"b58900dc322f268bd2859900",5:"b58900dc322f6c71c4268bd2859900",6:"b58900cb4b16d336826c71c42aa198859900",7:"b58900cb4b16dc322f6c71c4268bd22aa198859900",8:"b58900cb4b16dc322fd336826c71c4268bd22aa198859900"},SolarizedBase:{7:"002b36073642586e7583949693a1a1eee8d5fdf6e3",8:"002b36073642586e75657b8383949693a1a1eee8d5fdf6e3"},PaulTol:{1:"4477aa",2:"4477aacc6677",3:"4477aaddcc77cc6677",4:"4477aa117733ddcc77cc6677",5:"4477aa88ccee117733ddcc77cc6677",6:"4477aa88ccee117733ddcc77cc6677aa4499",7:"33228888ccee44aa99117733ddcc77cc6677aa4499",8:"33228888ccee44aa99117733999933ddcc77cc6677aa4499",9:"33228888ccee44aa99117733999933ddcc77cc6677882255aa4499",10:"33228888ccee44aa99117733999933ddcc77661100cc6677882255aa4499",11:"3322886699cc88ccee44aa99117733999933ddcc77661100cc6677882255aa4499",12:"3322886699cc88ccee44aa99117733999933ddcc77661100cc6677aa4466882255aa4499"},Highcharts:{1:"21b1f4",2:"21b1f44f52c1",3:"21b1f44f52c126e17b",4:"21b1f44f52c126e17bfe693d",5:"21b1f44f52c126e17bfe693d6a8bba",6:"21b1f44f52c126e17bfe693d6a8bbad26cf6",7:"21b1f44f52c126e17bfe693d6a8bbad26cf636e0cb",8:"21b1f44f52c126e17bfe693d6a8bbad26cf636e0cbf94b46",9:"21b1f44f52c126e17bfe693d6a8bbad26cf636e0cbf94b46ffb471",10:"21b1f44f52c126e17bfe693d6a8bbad26cf636e0cbf94b46ffb47192e8e1"},ColorBlind:{8:"000000e69f0056b4e9009e73f0e4420072b2d55e00cc79a7"},Tableau:{20:"1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5",10:"1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"},TableauMedium:{10:"729eceff9e4a67bf5ced665dad8bc9a8786eed97caa2a2a2cdcc5d6dccda"},TableauLight:{10:"aec7e8ffbb7898df8aff9896c5b0d5c49c94f7b6d2c7c7c7dbdb8d9edae5"},TableauGrey:{5:"60636aa5acaf4144518f8782cfcfcf"},TableauColorBlind:{10:"006ba4ff800eababab5959595f9ed1c85200898989a2c8ecffbc79cfcfcf"},TableauTrafficLight:{9:"b10318dba13a309343d82526ffc15669b764f26c64ffdd719fcd99"},TableauPurpleGrey:{12:"7b66d2a699e8dc5fbdffc0da5f5a41b4b19b995688d898baab6ad5d098ee8b7c6edbd4c5"},TableauBlueRed:{12:"2c69b0b5c8e2f02720ffb6b0ac613ce9c39b6ba3d6b5dffdac8763ddc9b4bd0a36f4737a"},TableauGreenOrange:{12:"32a251acd98dff7f0fffb9773cb7cc98d9e4b85a0dffd94a39737c86b4a982853bccc94d"},TableauCyclic:{20:"1f83b41696ac18a18829a03c54a33882a93fadb828d8bd35ffbd4cffb022ff9c0eff810ee75727d23e4ec94d8cc04aa7b446b39658b18061b46f63bb"},TableauPairSequential:{32:"bccfb49c0824bccfb409622ab4d4da26456ef0c2947b3014c3c3c31e1e1ee5e5e5ffb2b6e5e5e5b7e6a7e5e5e5c4d8f3e5e5e5ffcc9ef5cac7bd1100dbe8b43c8200f3e0c2bb5137feffd941b7c4f7e4c6bb5137efedf5807dbaf0f0f0737373"},TableauTripleDiverging:{48:"9c0824cacaca26456e9c0824cacaca09622a9c0824ffffff09622a9c0824cacaca1e1e1e9c0824ffffff1e1e1e09622acacaca26456e7b3014cacaca26456e7b3014ffffff26456effb2b6e5e5e5b7e6a7ffb2b6ffffffb7e6a7ffb2b6ffffffc6c6c6ffcc9ee5e5e5c4d8f3ffcc9effffffc4d8f3e0ad30e4e4e27492aaeda389cde1d35c8b70529985dbcf47c26b51"},WallStreetJournal:{4:"efefefe9f3ead4dee7f8f2e4"},WallStreetJournal2:{4:"d3ba68d5695d5d8ca865a479"},WallStreetJournalRedGreen:{2:"088158ba2f2a"},WallStreetJournalBlackGreen:{4:"00000059595959a77f008856"},WallStreetJournalDemRep:{3:"006a8eb1283aa8a6a7"},WallStreetJournal3:{6:"c72e29016392be9c2e098154fb832d000000"},Stata:{15:"1a476f90353b55752fe37e006e8e84c10534938dd2cac27ea0522d7b92a82d6d669c8847bfa19cffd200d9e6eb"},Stata2:{15:"ffff0000ff000080ffff00ffff7f00ff0000add8e6ffe47400ff80c0dcc0ff45000000ffff00806e8e84a0522d"},Stata3:{15:"006000ff45001a476f90353b6e8e84a0522dff7f00ff00ff00ffffff000000ff009c8847800080c0dcc0add8e6"},StataMono:{15:"606060a0a0a0808080404040000000e0e0e0202020707070909090b0b0b0d0d0d0f0f0f0303030c0c0c0505050"},BlackAndWhite:{3:"f0f0f0bdbdbd636363",4:"f7f7f7cccccc969696525252",5:"f7f7f7cccccc969696636363252525",6:"f7f7f7d9d9d9bdbdbd969696636363252525",7:"f7f7f7d9d9d9bdbdbd969696737373525252252525",8:"fffffff0f0f0d9d9d9bdbdbd969696737373525252252525",9:"fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000"},BehancePair:{2:"6b5dd3cec8ff",4:"6b5dd3cec8ffffa2c0ffc6db",6:"6b5dd3cec8ffffa2c0ffc6db3f8cffa0d7e7",8:"6b5dd3cec8ffffa2c0ffc6db3f8cffa0d7e7fece73ffa25f",10:"6b5dd3cec8ffffa2c0ffc6db3f8cffa0d7e7fece73ffa25f1b1d218d8e90"},BehanceTrio:{3:"6b5dd3cec8ff9d93e9",6:"6b5dd3cec8ff9d93e9ffa2c0ffc6dbff78a4",9:"6b5dd3cec8ff9d93e9ffa2c0ffc6dbff78a43f8cffa0d7e71b49c5",12:"6b5dd3cec8ff9d93e9ffa2c0ffc6dbff78a43f8cffa0d7e71b49c5fece73ffa25ffee2ab",15:"6b5dd3cec8ff9d93e9ffa2c0ffc6dbff78a43f8cffa0d7e71b49c5fece73ffa25ffee2ab1b1d218d8e90494a4d"},BehanceQuartet:{4:"6b5dd3cec8ff9d93e98072dc",8:"6b5dd3cec8ff9d93e98072dcffa2c0ffc6dbff78a4ffbed3",12:"6b5dd3cec8ff9d93e98072dcffa2c0ffc6dbff78a4ffbed33f8cffa0d7e71b49c5cdf4ff",16:"6b5dd3cec8ff9d93e98072dcffa2c0ffc6dbff78a4ffbed33f8cffa0d7e71b49c5cdf4fffece73ffa25ffee2abfedd9d",20:"6b5dd3cec8ff9d93e98072dcffa2c0ffc6dbff78a4ffbed33f8cffa0d7e71b49c5cdf4fffece73ffa25ffee2abfedd9d1b1d218d8e90494a4dfafafa"},Behance:{1:"6b5dd3",2:"6b5dd3ffa2c0",3:"6b5dd3ffa2c03f8cff",4:"6b5dd3ffa2c03f8cfffece73",5:"6b5dd33f8cffffa2c0fece731b1d21",6:"6b5dd3ffa2c03f8cff9d93e9ffc6dba0d7e7",7:"6b5dd33f8cffffa2c0fece731b1d21ffa25fcdf4ff",8:"6b5dd3ffa2c03f8cfffece739d93e9a0d7e7ffc6dbfee2ab",9:"6b5dd33f8cffffa2c0fece731b1d219d93e9a0d7e7ffc6dbfee2ab",10:"6b5dd33f8cffffa2c0fece731b1d219d93e9a0d7e7ffc6dbfee2ab8d8e90",15:"6b5dd33f8cffffa2c0fece731b1d219d93e9a0d7e7ffc6dbfee2ab8d8e90cec8ff1b49c5ff78a4ffa25f494a4d",20:"6b5dd33f8cffffa2c0fece731b1d219d93e9a0d7e7ffc6dbfee2ab8d8e90cec8ff1b49c5ff78a4ffa25f494a4d8072dccdf4ffffbed3fedd9dfafafa"},GGBlanket:{1:"357BA2",2:"0095A8FFA600",3:"003f5cbc5090ffa600",4:"003f5cbc5090ffa60050bc70",5:"003f5cbc5090ffa60050bc70005aff",6:"003f5cbc5090ffa60050bc70005affff9f5c",7:"003f5cbc5090ffa60050bc70005affff9f5c7a5195",8:"003f5cbc5090ffa60050bc70005affff9f5c7a5195ff6e00",12:"003f5cbc5090ffa600007f8cd075a8ffcc3300bfbfe59bc0fff56600ffffffb6c1ffff99"},Prism:{1:"1f7ff1",2:"1f7ff1814cff",3:"1f7ff1814cffff7d00",4:"1f7ff1814cffff7d0012c5ff",5:"1f7ff1814cffff7d0012c5fff4d4fe",6:"1f7ff1814cffff7d0012c5fff4d4fee9c505",7:"1f7ff1814cffff7d0012c5fff4d4fee9c505898790"},PrismPair:{2:"1f7ff112c5ff",4:"1f7ff112c5ff814cfff4d4fe",6:"1f7ff112c5ff814cfff4d4feff7d00e9c505",8:"1f7ff112c5ff814cfff4d4feff7d00e9c505042d710ccffe"},PrismTrio:{3:"61459939d4fbfe7d29"},BMS:{4:"be2bbb585454a59fa0ede7e8",9:"be2bbb585454a59fa0ede7e8ffeccdfedccad9c5c4c6ffe6c0f2fc"},BMSPrimary:{4:"BE2BBBA69F9F595454EEE7E7"},BMSSecondary:{5:"ffeccdfedccad9c5c4c6ffe6c0f2fc",6:"ffeccdfedccaead6c8e0cbc3d9c5c4d2cac9",8:"FFECCDFEDCCAEAD5C9DFCBC3DAC5C5D2CAC8C5FFE6C0F2FB"},BMSTertiary:{2:"c6ffe6c0f2fc"},BMSTertiaryLight:{5:"59FFB9FDA97D33D6F1CB7C78FFD186"},BMSTertiaryDark:{5:"1DCE9BDF603A009FBA772A28FFAC25"},BMSBackground:{3:"f0ebeaefe6e7f9f7fa"},BMSWheat:{4:"ffeccdfed187feac25c37901"},BMSPink:{4:"fedccafea97de0613cba4421"},BMSBrown:{4:"d9c5c4cb7c79782a28511515"},BMSGreen:{4:"c6ffe652e7bd1ecd9a138967"},BMSBlue:{4:"c0f2fc33d7f102a0baa0778a"},CanvasXpress:{1:"0ab0db",2:"0ab0dbfe6969",3:"0ab0dbfed385fe6969",4:"0ab0dbfed385fe696947db0a",5:"0ab0db9e0adbfed385fe696947db0a",6:"0ab0db9e0adbfed385fe696947db0aff7d00",7:"0ab0db9e0adbfed385fe696947db0aff7d00ffa2c0",8:"0ab0db9e0adbfed385fe696947db0aff7d00ffa2c0a0d7e7",16:"0ab0dbfe6969fed38547db0a9e0adbff7d00ffa2c0a0d7e763b5e5f9a7a7fef0c783e16fc763e5ffb347ffc1d3bfe2ed"},CanvasXpressTraditional:{1:"4575b4",2:"d730274575b4",3:"d7191cfdae612c7bb6",4:"d7191cfdae61abd9e92c7bb6",5:"d7191cfdae61ffffbfabd9e92c7bb6",6:"d73027fc8d59fee090e0f3f891bfdb4575b4",7:"d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4",8:"d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4",9:"d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4",10:"a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695",11:"a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695"},CanvasXpressOLD:{1:"f2000d",2:"f2000d000df2",3:"f2000d000df20df200",4:"f2000d000df20df200f2f20d",5:"f2000d000df20df200f2f20df20df2",6:"f2000d000df20df200f2f20df20df20df2f2",7:"f2000d000df20df200f2f20df20df20df2f2f2f2f2",8:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd3",9:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fe",10:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b",11:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d0016",12:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d",13:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00",14:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00080808",15:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00080808fed38b",16:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00080808fed38bd38bfe",17:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00080808fed38bd38bfe8bfed3",18:"f2000d000df20df200f2f20df20df20df2f2f2f2f2fe8bd38bd3fed3fe8b5d001600165d165d00080808fed38bd38bfe8bfed3404040"},Matlab:{7:"0072bdd95319edb1207e2f8e77ac304dbeeea2142f"},Parula:{10:"352a870f5cdd127dd8079ccf15b1b459bd8ca5be6be1b952fcce2ef9fb0e"},Viridis:{3:"44015421908cfde725",4:"44015431688e35b779fde725",5:"4401543b528b21908c5dc863fde725",6:"4401544144872a788e22a8847ad151fde725",7:"440154443a8331688e21908c35b7798fd744fde725",8:"44015446337e365c8d277f8e1fa1874ac16d9fda3afde725",9:"440154472d7b3b528b2c728e21908c27ad815dc863aadc32fde725",10:"4401544828783e4a8931688e26828e1f9e8935b7796dcd59b4de2cfde725",11:"44015448257641448735608d2a788e21908c22a88443bf717ad151bbdf27fde725",12:"440154482173433e8538598c2d708e25858e1e9b8a2bb07f51c56a85d54ac2df23fde725",256:"44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725"},Magma:{3:"000004b63679fcfdbf",4:"000004721f81f1605dfcfdbf",5:"00000451127cb63679fb8861fcfdbf",6:"0000043b0f708c2981de4968fe9f6dfcfdbf",7:"0000042d1160721f81b63679f1605dfeaf77fcfdbf",8:"0000042311515f187f982d80d3436ef8765cfeba80fcfdbf",9:"0000041d114751127c822681b63679e65164fb8861fec287fcfdbf",10:"000004180f3e451077721f819f2f7fcd4071f1605dfd9567fec98dfcfdbf",11:"000004150e373b0f70641a808c2981b63679de4968f76f5cfe9f6dfece91fcfdbf",12:"000004120d323310685a167e7d2482a3307ec83e73e95562f97c5dfea873fed395fcfdbf",256:"00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf"},Plasma:{3:"0d0887cc4678f0f921",4:"0d08879c179eed7953f0f921",5:"0d08877e03a8cc4678f89441f0f921",6:"0d08876a00a8b12a90e16462fca636f0f921",7:"0d08875d01a69c179ecc4678ed7953fdb32ff0f921",8:"0d08875402a38b0aa5b93289db5c68f48849febc2af0f921",9:"0d08874c02a17e03a8a92395cc4678e56b5df89441fdc328f0f921",10:"0d088747039f7301a89c179ebd3786d8576bed7953fa9e3bfdc926f0f921",11:"0d088742049e6a00a8900da4b12a90cc4678e16462f1844bfca636fcce25f0f921",12:"0d08873e049c6300a78707a6a62098c03a83d5546ee76f5af58c46fdad32fcd225f0f921",256:"0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"},Inferno:{3:"000004bb3754fcffa4",4:"000004781c6ded6925fcffa4",5:"00000456106ebb3754f98c0afcffa4",6:"000004420a68932667dd513afca50afcffa4",7:"000004330a5f781c6dbb3754ed6925fcb519fcffa4",8:"000004280b5465156e9f2a63d44842f57d15fac127fcffa4",9:"000004210c4a56106e89226abb3754e35932f98c0af9c932fcffa4",10:"0000041b0c424b0c6b781c6da52c60cf4446ed6925fb9a06f7d03cfcffa4",11:"000004170c3a420a686b186e932667bb3754dd513af3771afca50af6d645fcffa4",12:"000004140b353a096360136e85216ba92e5ecb4149e65d2ff78311fcad12f5db4bfcffa4",256:"00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4"},Cividis:{3:"00204d7c7b78ffea46",4:"00204d575c6da69d75ffea46",5:"00204d414d6b7c7b78bcaf6fffea46",6:"00204d31446b666970958f78cbba69ffea46",7:"00204d233e6c575c6d7c7b78a69d75d3c164ffea46",8:"00204d16396d4b546c6c6e728e8a79b3a772dbc761ffea46",9:"00204d05366e414d6b61646f7c7b789b9477bcaf6fe0cb5effea46",10:"00204d00336f39486b575c6d7071738a8779a69d75c4b56ce4cf5bffea46",11:"00204d00326f31446b4e576c6669707c7b78958f78b0a473cbba69e7d159ffea46",12:"00204d00306f2a406c48526b5e626e7273748784799e9677b6a971d0be67ead357ffea46",256:"00204c00204e00215000225100235300235500245600255800265a00265b00275d00285f002861002963002a64002a66002b68002c6a002d6c002d6d002e6e002e6f002f6f002f6f00306f00316f00316f00326e00336e00346e00346e01356e06366e0a376d0e376d12386d15396d17396d1a3a6c1c3b6c1e3c6c203c6c223d6c243e6c263e6c273f6c29406b2b416b2c416b2e426b2f436b31446b32446b33456b35466b36466b37476b38486b3a496b3b496b3c4a6b3d4b6b3e4b6b404c6b414d6b424e6b434e6b444f6b45506b46506b47516b48526b49536b4a536b4b546b4c556b4d556b4e566b4f576c50586c51586c52596c535a6c545a6c555b6c565c6c575d6d585d6d595e6d5a5f6d5b5f6d5c606d5d616e5e626e5f626e5f636e60646e61656f62656f63666f64676f65676f666870676970686a70686a70696b716a6c716b6d716c6d726d6e726e6f726f6f726f70737071737172737272747373747474757575757575757676767777767878767978777a79777b7a777b7b787c7b787d7c787e7d787f7e78807e78817f788280788381788481788582788683788784788885788985788a86788b87788c88788d88788e89788f8a78908b78918c78928c78938d78948e78958f78968f779790779891779992779a93779b93779c94779d95779e96769f9776a09876a19876a29976a39a75a49b75a59c75a69c75a79d75a89e74a99f74aaa074aba174aca173ada273aea373afa473b0a572b1a672b2a672b4a771b5a871b6a971b7aa70b8ab70b9ab70baac6fbbad6fbcae6ebdaf6ebeb06ebfb16dc0b16dc1b26cc2b36cc3b46cc5b56bc6b66bc7b76ac8b86ac9b869cab969cbba68ccbb68cdbc67cebd67d0be66d1bf66d2c065d3c065d4c164d5c263d6c363d7c462d8c561d9c661dbc760dcc860ddc95fdeca5edfcb5de0cb5de1cc5ce3cd5be4ce5be5cf5ae6d059e7d158e8d257e9d356ebd456ecd555edd654eed753efd852f0d951f1da50f3db4ff4dc4ef5dd4df6de4cf7df4bf9e049fae048fbe147fce246fde345ffe443ffe542ffe642ffe743ffe844ffe945"},Rainbow:{3:"ff000000ff000000ff",4:"ff000080ff0000ffff8000ff",5:"ff0000ccff0000ff660066ffcc00ff",6:"ff0000ffff0000ff0000ffff0000ffff00ff",7:"ff0000ffdb0049ff0000ff920092ff4900ffff00db",8:"ff0000ffbf0080ff0000ff4000ffff0040ff8000ffff00bf",9:"ff0000ffaa00aaff0000ff0000ffaa00aaff0000ffaa00ffff00aa",10:"ff0000ff9900ccff0033ff0000ff6600ffff0066ff3300ffcc00ffff0099",11:"ff0000ff8b00e8ff005dff0000ff2e00ffb900b9ff002eff5d00ffe800ffff008b",12:"ff0000ff8000ffff0080ff0000ff0000ff8000ffff0080ff0000ff8000ffff00ffff0080"},Heat:{3:"ff0000ff8000ffff00",4:"ff0000ff8000ffff00ffff80",5:"ff0000ff5500ffaa00ffff00ffff80",6:"ff0000ff4000ff8000ffbf00ffff00ffff80",7:"ff0000ff3300ff6600ff9900ffcc00ffff00ffff80",8:"ff0000ff3300ff6600ff9900ffcc00ffff00ffff40ffffbf",9:"ff0000ff2a00ff5500ff8000ffaa00ffd500ffff00ffff40ffffbf",10:"ff0000ff2400ff4900ff6d00ff9200ffb600ffdb00ffff00ffff40ffffbf",11:"ff0000ff2000ff4000ff6000ff8000ff9f00ffbf00ffdf00ffff00ffff40ffffbf",12:"ff0000ff2000ff4000ff6000ff8000ff9f00ffbf00ffdf00ffff00ffff2affff80ffffd5"},LastAirBenderFire:{8:"ecb100a100007E605EFF45009948234B4C4E572530000000"},LastAirBenderAir:{7:"ff9933C24841FFFF338B5B4587AFD1EEB05ADBC5A0"},LastAirBenderEarth:{9:"015E05B1A8667A5C1264674225351C4C7022C7C45ED2CFABFEFED8"},LastAirBenderWater:{8:"0047ab1DB4D3A2CAEDAFB5B8120976fffafa174D79949BBC"},SpongeBob:{11:"C86925FDF56CC4433F989B46FC95765D57AFB2CE31FF2027000000B1D6C5AB8323"},Simpsons:{10:"fed90f424f46d1b271FB4122ABC67D0363C37A491E000000FC020946732E"},RickyAndMorty:{9:"01B4C697ce4cFFF874BEE5FDF675DA44281d3a4767F8D3ACE64358"},ParksAndRecreation:{10:"bdbdbda51209ffdb58ec70147A491EC24841005502f7fcb969983ab5651d"},KimPossible:{12:"FF8C0002466370D42389160402001F9CF6F7FFCE455D734DFEC3BB662C9Cfff9f5000000"},GravityFalls:{14:"417BA1ff1493ffff2e3456348b0000ff670093C0D58b45139248A71c88594747478fbc8fd2b48c000000"},GameOfThronesStark:{9:"cadde17B906F174D79fffafa898989D4CDB1708090120976000000"},GameOfThronesStannis:{7:"FF0000ff8d1aFFD700b20000cc6600FFFF66000000"},GameOfThronesLannister:{6:"89080AC5AA73FEDF25C248418B5B45000000"},GameOfThronesTyrell:{9:"068105F7DC27808000AB681BF9FE768DA08071749798FB983CB371"},GameOfThronesTargaryen:{5:"AC1F25272727ff993382878896804b"},GameOfThronesMartell:{8:"ff8000cc6600b81b1873110ff8fc23fafd7b4c2600a57642"},GameOfThronesTully:{6:"212250AE432FE4EDCA8B5B454682B4000000"},GameOfThronesGreyjoy:{6:"000000708090D4CDB1DCDCDCF7DC27808080"},GameOfThronesManderly:{7:"40e0d080808000ff00282828015202195953FFFFFF"},GameOfThronesArryn:{7:"007fff7fbfff0019334c4cffffefb2a89797FFFFFF"},Brooklyn99Regular:{10:"e7298a72bcd4e41a1cFCF40E49f149f16913525252F9FEFF000E33000000"},Brooklyn99Dark:{9:"6CA9C33A3533000E33800000CBCFD2175E78DAA520174D79000000"}};for(var e in CanvasXpress.colorSchemes){for(var f in CanvasXpress.colorSchemes[e]){var c=CanvasXpress.colorSchemes[e][f].match(/.{6}/g);CanvasXpress.colorSchemes[e][f]=c?c.map(function(a){return"#"+a}):[]}}var b=["Viridis","Magma","Plasma","Inferno","Cividis"];var b=["Viridis"];for(var d=0;d<b.length;d++){var e=JSON.parse(JSON.stringify(CanvasXpress.colorSchemes[b[d]]));CanvasXpress.colorSchemes[b[d]+"Inv"]={};for(var f in e){CanvasXpress.colorSchemes[b[d]+"Inv"][f]=e[f].reverse()}}}();CanvasXpress.instances=CanvasXpress.instances||[];CanvasXpress.config=CanvasXpress.config||[];CanvasXpress.freezeSourceData=typeof CanvasXpress.freezeSourceData==="boolean"?CanvasXpress.freezeSourceData:true;CanvasXpress.transitions=CanvasXpress.transitions||{};CanvasXpress.cacheImages=CanvasXpress.cacheImages||{};CanvasXpress.cacheImagesReady=CanvasXpress.cacheImagesReady||false;CanvasXpress.cachePatterns=CanvasXpress.cachePatterns||{};CanvasXpress.cacheText=CanvasXpress.cacheText||{};CanvasXpress.fonts=CanvasXpress.fonts||{"American Typewriter":true,"Andale Mono":true,Arial:true,Baskerville:true,"Bradley Hand":true,"Brush Script MT":true,"Comic Sans MS":true,Courier:true,Didot:true,Georgia:true,"Gill Sans":true,Helvetica:true,Impact:true,"Lucida Console":true,Luminari:true,Monaco:true,Optima:true,Palatino:true,Roboto:true,Tahoma:true,"Times New Roman":true,"Trebuchet MS":true,Verdana:true};CanvasXpress.selector=CanvasXpress.selector||{vars:{},smps:{},meta:{},comp:{},nodes:{},edges:{},mixed:{},selections:0,groups:{},graphType:false};CanvasXpress.hidden=CanvasXpress.hidden||{hiddenVars:{},hiddenSmps:{},hiddenGrps:{},hiddenMapFeatures:{},hiddenNodes:{},hiddenEdges:{}};CanvasXpress.stack=CanvasXpress.stack||{};CanvasXpress.current=CanvasXpress.current||false;CanvasXpress.chain=CanvasXpress.chain||{};CanvasXpress.registered="880638711812CAC819D535798C929914975BB55693";CanvasXpress.system=CanvasXpress.system||{};CanvasXpress.ready=CanvasXpress.ready||false;CanvasXpress.readyFonts=CanvasXpress.readyFonts||false;CanvasXpress.alias=CanvasXpress.alias||"";CanvasXpress.doc=CanvasXpress.doc||{P:{},M:{}};CanvasXpress.icons=CanvasXpress.icons||{symbols:{},use:{},gradients:{},classes:{}};CanvasXpress.png="data:image/png;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==";CanvasXpress.letters=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"];CanvasXpress.dates={Sun:1,Mon:2,Tue:3,Wed:4,Thu:5,Fri:6,Sat:7,Sunday:1,Monday:2,Tuesday:3,Wednesday:4,Thursday:5,Friday:6,Saturday:7,Jan:"01",Feb:"02",Mar:"03",Apr:"04",May:"05",Jun:"06",Jul:"07",Aug:"08",Sep:"09",Oct:"10",Nov:"11",Dec:"12",January:"01",February:"02",March:"03",April:"04",May:"05",June:"06",July:"07",August:"08",September:"09",October:"10",November:"11",December:"12"};CanvasXpress.countries={"-99":["Unknown","Unknown","Unknown","UNK",0,0,"UNK"],ABW:["Aruba","Americas","Caribbean","AW",12.515,-69.976,"ABW"],AFG:["Afghanistan","Asia","Southern Asia","AF",33.838,66.026,"AFG"],AGO:["Angola","Africa","Middle Africa","AO",-12.296,17.544,"AGO"],AIA:["Anguilla","Americas","Caribbean","AI",18.222,-63.061,"AIA"],ALA:["Aland Islands","Europe","Northern Europe","AX",60.205,19.953,"ALA"],ALB:["Albania","Europe","Southern Europe","AL",41.142,20.068,"ALB"],AND:["Andorra","Europe","Southern Europe","AD",42.548,1.576,"AND"],ANT:["Netherlands Antilles","Americas","Caribbean","AN",12.187,-68.694,"NLD"],ARE:["United Arab Emirates","Asia","Western Asia","AE",23.903,54.34,"ARE"],ARG:["Argentina","Americas","South America","AR",-35.377,-65.168,"ARG"],ARM:["Armenia","Asia","Western Asia","AM",40.286,44.946,"ARM"],ASM:["American Samoa","Oceania","Polynesia","AS",-14.305,-170.708,"ASM"],ATF:["French Southern and Antarctic Territories","Antarctica","Antartica","TF",-49.192,68.861,"FRA"],ATG:["Antigua & Barbuda","Americas","Caribbean","AG",17.279,-61.792,"ATG",["Antigua and Barbuda"]],AUS:["Australia","Oceania","Australia and New Zealand","AU",-25.735,134.489,"AUS"],AUT:["Austria","Europe","Western Europe","AT",47.592,14.14,"AUT"],AZE:["Azerbaijan","Asia","Western Asia","AZ",40.296,48.819,"AZE"],BDI:["Burundi","Africa","Eastern Africa","BI",-3.357,29.887,"BDI"],BEL:["Belgium","Europe","Western Europe","BE",50.642,4.663,"BEL"],BEN:["Benin","Africa","Western Africa","BJ",9.647,2.343,"BEN"],BFA:["Burkina Faso","Africa","Western Africa","BF",12.277,-1.741,"BFA"],BGD:["Bangladesh","Asia","Southern Asia","BD",23.843,90.268,"BGD"],BGR:["Bulgaria","Europe","Eastern Europe","BG",42.761,25.231,"BGR"],BHR:["Bahrain","Asia","Western Asia","BH",26.022,50.559,"BHR"],BHS:["Bahamas","Americas","Caribbean","BS",24.201,-76.547,"BHS"],BIH:["Bosnia & Herzegovina","Europe","Southern Europe","BA",44.168,17.786,"BIH",["Bosnia and Herzegovina"]],BLR:["Belarus","Europe","Eastern Europe","BY",53.539,28.046,"BLR"],BLZ:["Belize","Americas","Central America","BZ",17.217,-88.685,"BLZ"],BMU:["Bermuda","Americas","Northern America","BM",32.316,-64.74,"BMU"],BOL:["Bolivia","Americas","South America","BO",-16.715,-64.671,"BOL"],BRA:["Brazil","Americas","South America","BR",-10.774,-53.09,"BRA"],BRB:["Barbados","Americas","Caribbean","BB",13.178,-59.562,"BRB"],BRN:["Brunei Darussalam","Asia","South-Eastern Asia","BN",4.521,114.761,"BRN",["Brunei"]],BTN:["Bhutan","Asia","Southern Asia","BT",27.415,90.429,"BTN"],BVT:["Bouvet Island","Antarctica","Antartica","BV",-54.422,3.412,"NOR"],BWA:["Botswana","Africa","Southern Africa","BW",-22.183,23.815,"BWA"],CAF:["Central African Republic","Africa","Middle Africa","CF",6.571,20.482,"CAF"],CAN:["Canada","Americas","Northern America","CA",61.392,-98.266,"CAN"],CCK:["Cocos (Keeling) Islands","Asia","South-Eastern Asia","CC",-12.172,96.836,"AUS"],CHE:["Switzerland","Europe","Western Europe","CH",46.802,8.234,"CHE"],CHL:["Chile","Americas","South America","CL",-37.853,-71.374,"CHL"],CHN:["China","Asia","Eastern Asia","CN",36.567,103.904,"CHN"],CIV:["Cote d'Ivoire","Africa","Western Africa","CI",7.631,-5.556,"CIV"],CMR:["Cameroon","Africa","Middle Africa","CM",5.685,12.743,"CMR"],COD:["Democratic Republic of the Congo","Africa","Middle Africa","CD",-2.877,23.655,"COD",["Democratic Republic of Congo"]],COG:["Congo","Africa","Middle Africa","CG",-0.841,15.224,"COG"],COK:["Cook Islands","Oceania","Polynesia","CK",-20.935,-158.909,"NZL"],COL:["Colombia","Americas","South America","CO",3.901,-73.074,"COL"],COM:["Comoros","Africa","Eastern Africa","KM",-11.893,43.675,"COM"],CPV:["Cape Verde","Africa","Western Africa","CV",15.978,-23.968,"CPV"],CRI:["Costa Rica","Americas","Central America","CR",9.97,-84.188,"CRI"],CUB:["Cuba","Americas","Caribbean","CU",21.621,-79.037,"CUB"],CXR:["Christmas Island","Asia","South-Eastern Asia","CX",-10.445,105.703,"AUS"],CYM:["Cayman Islands","Americas","Caribbean","KY",19.308,-81.239,"GBR"],CYP:["Cyprus","Asia","Western Asia","CY",35.045,33.221,"CYP"],CZE:["Czech Republic","Europe","Eastern Europe","CZ",49.742,15.338,"CZE",["Czechia"]],DEU:["Germany","Europe","Western Europe","DE",51.106,10.393,"DEU"],DJI:["Djibouti","Africa","Eastern Africa","DJ",11.749,42.577,"DJI"],DMA:["Dominica","Americas","Caribbean","DM",15.435,-61.356,"DMA"],DNK:["Denmark","Europe","Northern Europe","DK",55.963,10.046,"DNK"],DOM:["Dominican Republic","Americas","Caribbean","DO",18.894,-70.485,"DOM"],DZA:["Algeria","Africa","Northern Africa","DZ",28.163,2.632,"DZA"],ECU:["Ecuador","Americas","South America","EC",-1.428,-78.768,"ECU"],EGY:["Egypt","Africa","Northern Africa","EG",26.553,29.79,"EGY"],EGY1:["Ma'tan al-Sarra","Africa","Northern Africa","EGY1",21.892,33.743,"EGY"],ERI:["Eritrea","Africa","Eastern Africa","ER",15.373,38.841,"ERI"],ESH:["Western Sahara","Africa","Northern Africa","EH",24.661,-13.137,"ESH"],ESP:["Spain","Europe","Southern Europe","ES",40.226,-3.65,"ESP"],EST:["Estonia","Europe","Northern Europe","EE",58.674,25.527,"EST"],ETH:["Ethiopia","Africa","Eastern Africa","ET",8.633,39.616,"ETH"],FIN:["Finland","Europe","Northern Europe","FI",64.5,26.266,"FIN"],FJI:["Fiji","Oceania","Melanesia","FJ",-17.454,171.983,"FJI"],FLK:["Falkland Islands (Malvinas)","Americas","South America","FK",-51.738,-59.364,"GBR",["Falkland Islands"]],FRA:["France","Europe","Western Europe","FR",46.564,2.551,"FRA"],FRA1:["Glorioso Islands","Africa","Eastern Africa","FRA1",-11.567,47.29,"FRA"],FRO:["Faroe Islands","Europe","Northern Europe","FO",62.031,-6.885,"DNK"],FSM:["Micronesia (Federated States of)","Oceania","Micronesia","FM",6.492,159.404,"FSM",["Federated States of Micronesia"]],GAB:["Gabon","Africa","Middle Africa","GA",-0.591,11.797,"GAB"],GBR:["United Kingdom of Great Britain and Northern Ireland","Europe","Northern Europe","GB",54.155,-2.896,"GBR",["United Kingdom"]],GBR1:["Jersey","Europe","Northern Europe","GBR1",49.219,-2.129,"GBR"],GBR2:["South Georgia & the South Sandwich Islands","Antarctica","Antartica","GBR2",-54.489,-36.383,"GBR"],GBR3:["Guernsey","Europe","Northern Europe","GBR3",49.458,-2.577,"GBR"],GEO:["Georgia","Asia","Western Asia","GE",42.176,43.517,"GEO"],GHA:["Ghana","Africa","Western Africa","GH",7.959,-1.208,"GHA"],GIB:["Gibraltar","Europe","Southern Europe","GI",36.138,-5.345,"GBR"],GIN:["Guinea","Africa","Western Africa","GN",10.438,-10.942,"GIN"],GLP:["Guadeloupe","Americas","Caribbean","GP",16.203,-61.537,"FRA"],GMB:["Gambia","Africa","Western Africa","GM",13.452,-15.387,"GMB",["The Gambia"]],GNB:["Guinea-Bissau","Africa","Western Africa","GW",12.03,-14.966,"GNB"],GNQ:["Equatorial Guinea","Africa","Middle Africa","GQ",1.712,10.341,"GNQ"],GRC:["Greece","Europe","Southern Europe","GR",39.068,22.959,"GRC"],GRD:["Grenada","Americas","Caribbean","GD",12.112,-61.68,"GRD"],GRL:["Greenland","Americas","Northern America","GL",74.72,-41.39,"DNK"],GTM:["Guatemala","Americas","Central America","GT",15.702,-90.357,"GTM"],GUF:["French Guiana","Americas","South America","GF",3.924,-53.242,"FRA"],GUM:["Guam","Oceania","Micronesia","GU",13.443,144.775,"GUM"],GUY:["Guyana","Americas","South America","GY",4.792,-58.975,"GUY"],HKG:["Hong Kong","Asia","Eastern Asia","HK",22.377,114.11,"CHN"],HMD:["Heard Island and McDonald Islands","Antarctica","Antartica","HM",-53.092,73.498,"AUS"],HND:["Honduras","Americas","Central America","HN",14.819,-86.62,"HND"],HRV:["Croatia","Europe","Southern Europe","HR",45.051,16.411,"HRV"],HTI:["Haiti","Americas","Caribbean","HT",18.941,-72.68,"HTI"],HUN:["Hungary","Europe","Eastern Europe","HU",47.166,19.413,"HUN"],IDN:["Indonesia","Asia","South-Eastern Asia","ID",-2.231,117.3,"IDN"],IMY:["Isle of Man","Europe","Northern Europe","IM",54.229,-4.526,"GBR"],IND:["India","Asia","Southern Asia","IN",22.326,79.386,"IND"],IND1:["Arunachal Pradesh","Asia","Eastern Asia","IND1",28.121,94.35,"IND"],IOT:["British Indian Ocean Territory","Africa","Eastern Africa","IO",-7.335,72.434,"IOT"],IRL:["Ireland","Europe","Northern Europe","IE",53.176,-8.151,"IRL"],IRN:["Iran (Islamic Republic of)","Asia","Southern Asia","IR",32.739,54.197,"IRN",["Iran","Islamic Republic of Iran"]],IRQ:["Iraq","Asia","Western Asia","IQ",33.048,43.772,"IRQ"],ISL:["Iceland","Europe","Northern Europe","IS",64.997,-18.606,"ISL"],ISR:["Israel","Asia","Western Asia","IL",31.358,34.965,"ISR"],ITA:["Italy","Europe","Southern Europe","IT",42.795,12.071,"ITA"],JAM:["Jamaica","Americas","Caribbean","JM",18.151,-77.32,"JAM"],JOR:["Jordan","Asia","Western Asia","JO",31.253,36.786,"JOR"],JPN:["Japan","Asia","Eastern Asia","JP",37.562,137.99,"JPN"],KAZ:["Kazakhstan","Asia","Central Asia","KZ",48.015,66.657,"KAZ",["Baikonur Cosmodrome"]],KAZ1:["Baikonur Cosmodrome","Asia","Central Asia","KAZ1",45.965,63.305,"KAZ"],KEN:["Kenya","Africa","Eastern Africa","KE",0.529,37.858,"KEN"],KGZ:["Kyrgyzstan","Asia","Central Asia","KG",41.465,74.555,"KGZ"],KHM:["Cambodia","Asia","South-Eastern Asia","KH",12.716,104.923,"KHM"],KIR:["Kiribati","Oceania","Micronesia","KI",1.834,-154.459,"KIR"],KNA:["Saint Kitts and Nevis","Americas","Caribbean","KN",17.326,-62.754,"KNA"],KOR:["Republic of Korea","Asia","Eastern Asia","KR",36.375,127.834,"KOR"],KSV:["Kosovo","Europe","Eastern Europe","KV",42.602,20.903,"KSV"],KWT:["Kuwait","Asia","Western Asia","KW",29.34,47.59,"KWT"],LAO:["Lao People's Democratic Republic","Asia","South-Eastern Asia","LA",18.502,103.763,"LAO",["Lao DPR","Laos"]],LBN:["Lebanon","Asia","Western Asia","LB",33.92,35.888,"LBN"],LBR:["Liberia","Africa","Western Africa","LR",6.448,-9.308,"LBR"],LBY:["Libyan Arab Jamahiriya","Africa","Northern Africa","LY",27.043,18.023,"LBY",["Libya"]],LCA:["Saint Lucia","Americas","Caribbean","LC",13.897,-60.969,"LCA"],LIE:["Liechtenstein","Europe","Western Europe","LI",47.151,9.554,"LIE"],LKA:["Sri Lanka","Asia","Southern Asia","LK",7.608,80.704,"LKA"],LSO:["Lesotho","Africa","Southern Africa","LS",-29.582,28.243,"LSO"],LTU:["Lithuania","Europe","Northern Europe","LT",55.335,23.898,"LTU"],LUX:["Luxembourg","Europe","Western Europe","LU",49.77,6.087,"LUX"],LVA:["Latvia","Europe","Northern Europe","LV",56.857,24.929,"LVA"],MAC:["Macao","Asia","Eastern Asia","MO",22.183,113.55,"CHN"],MAR:["Morocco","Africa","Northern Africa","MA",31.883,-6.318,"MAR"],MCO:["Monaco","Europe","Western Europe","MC",43.747,7.412,"MCO"],MDA:["Moldova","Europe","Eastern Europe","MD",47.193,28.473,"MDA",["Republic of Moldova"]],MDG:["Madagascar","Africa","Eastern Africa","MG",-19.374,46.706,"MDG"],MDV:["Maldives","Asia","Southern Asia","MV",3.216,73.252,"MDV"],MEX:["Mexico","Americas","Central America","MX",23.95,-102.533,"MEX"],MHL:["Marshall Islands","Oceania","Micronesia","MH",7.643,168.626,"MHL"],MKD:["The former Yugoslav Republic of Macedonia","Europe","Southern Europe","MK",41.599,21.697,"MKD",["Macedonia"]],MLI:["Mali","Africa","Western Africa","ML",17.35,-3.525,"MLI"],MLT:["Malta","Europe","Southern Europe","MT",35.89,14.441,"MLT"],MMR:["Myanmar","Asia","South-Eastern Asia","MM",21.154,96.506,"MMR"],MNE:["Montenegro","Europe","Southern Europe","ME",42.791,19.25,"MNE"],MNG:["Mongolia","Asia","Eastern Asia","MN",46.835,103.083,"MNG"],MNP:["Northern Mariana Islands","Oceania","Micronesia","MP",15.088,145.679,"USA"],MOZ:["Mozambique","Africa","Eastern Africa","MZ",-17.26,35.551,"MOZ"],MRT:["Mauritania","Africa","Western Africa","MR",20.259,-10.333,"MRT"],MSR:["Montserrat","Americas","Caribbean","MS",16.735,-62.187,"GBR"],MTQ:["Martinique","Americas","Caribbean","MQ",14.652,-61.022,"FRA"],MUS:["Mauritius","Africa","Eastern Africa","MU",-20.252,57.87,"MUS"],MWI:["Malawi","Africa","Eastern Africa","MW",-13.217,34.307,"MWI"],MYS:["Malaysia","Asia","South-Eastern Asia","MY",3.792,109.708,"MYS"],MYT:["Mayotte","Africa","Eastern Africa","YT",-12.819,45.138,"FRA"],NAM:["Namibia","Africa","Southern Africa","NA",-22.134,17.218,"NAM"],NCL:["New Caledonia","Oceania","Melanesia","NC",-21.317,165.715,"FRA"],NER:["Niger","Africa","Western Africa","NE",17.426,9.397,"NER"],NFK:["Norfolk Island","Oceania","Australia and New Zealand","NF",-29.038,167.952,"AUS"],NGA:["Nigeria","Africa","Western Africa","NG",9.593,8.105,"NGA"],NIC:["Nicaragua","Americas","Central America","NI",12.839,-85.035,"NIC"],NIU:["Niue","Oceania","Polynesia","NU",-19.053,-169.869,"NZL"],NLD:["Netherlands","Europe","Western Europe","NL",52.249,5.603,"NLD"],NOR:["Norway","Europe","Northern Europe","NO",64.448,14.084,"NOR"],NPL:["Nepal","Asia","Southern Asia","NP",28.253,83.938,"NPL"],NRU:["Nauru","Oceania","Micronesia","NR",-0.529,166.923,"NRU"],NZL:["New Zealand","Oceania","Australia and New Zealand","NZ",-41.839,171.779,"NZL"],OMN:["Oman","Asia","Western Asia","OM",20.597,56.111,"OMN"],PAK:["Pakistan","Asia","Southern Asia","PK",29.357,68.79,"PAK"],PAN:["Panama","Americas","Central America","PA",8.507,-80.103,"PAN"],PCN:["Pitcairn Island","Oceania","Polynesia","PN",-24.477,-128.594,"GBR"],PER:["Peru","Americas","South America","PE",-9.164,-74.376,"PER"],PHL:["Philippines","Asia","South-Eastern Asia","PH",11.741,122.878,"PHL"],PLW:["Palau","Oceania","Micronesia","PW",7.501,134.568,"PLW"],PNG:["Papua New Guinea","Oceania","Melanesia","PG",-6.479,145.241,"PNG"],POL:["Poland","Europe","Eastern Europe","PL",52.124,19.4,"POL"],PRI:["Puerto Rico","Americas","Caribbean","PR",18.221,-66.463,"USA"],PRK:["Democratic People's Republic of Korea","Asia","Eastern Asia","KP",40.143,127.181,"PRK",["Democratic Republic of Korea","Dem. Rep. of Korea"]],PRT:["Portugal","Europe","Southern Europe","PT",39.691,-7.963,"PRT"],PRT1:["Azores Islands","Europe","Southern Europe","PRT1",38.332,-27.304,"PRT"],PRT2:["Madeira Islands","Europe","Southern Europe","PRT2",32.747,-16.985,"PRT"],PRY:["Paraguay","Americas","South America","PY",-23.237,-58.392,"PRY"],PSE:["West Bank","Asia","Western Asia","PS",31.946,35.256,"XXX"],PSE:["Gaza Strip","Asia","Western Asia","PS",31.401,34.372,"XXX"],PYF:["French Polynesia","Oceania","Polynesia","PF",-14.855,-146.419,"FRA"],QAT:["Qatar","Asia","Western Asia","QA",25.297,51.188,"QAT"],REU:["Reunion","Africa","Eastern Africa","RE",-21.122,55.538,"FRA"],ROU:["Romania","Europe","Eastern Europe","RO",45.843,24.969,"ROU"],RUS:["Russian Federation","Europe","Eastern Europe","RU",61.949,96.568,"RUS",["Russia"]],RUS1:["Kuril Islands","Asia","Eastern Asia","RUS1",44.691,147.162,"RUS"],RWA:["Rwanda","Africa","Eastern Africa","RW",-1.998,29.917,"RWA"],SAU:["Saudi Arabia","Asia","Western Asia","SA",24.122,44.545,"SAU"],SDN:["Sudan","Africa","Northern Africa","SD",16.019,29.958,"SDN"],SDN1:["Abyei","Africa","Northern Africa","SDN1",9.767,28.398,"SDN"],SDN2:["Hala'ib Triangle","Africa","Northern Africa","SDN2",22.3,35.615,"SDN"],SDN3:["Ilemi Triangle","Africa","Northern Africa","SDN3",4.764,35.108,"SDN"],SEN:["Senegal","Africa","Western Africa","SN",14.366,-14.468,"SEN"],SGP:["Singapore","Asia","South-Eastern Asia","SG",1.351,103.808,"SGP"],SGS:["South Georgia & the South Sandwich Islands","Americas","South America","GS",-54.429,-36.587,"GBR"],SHN:["Saint Helena","Africa","Western Africa","SH",-15.965,-5.711,"GBR"],SJM:["Svalbard and Jan Mayen Islands","Europe","Northern Europe","SJ",78.828,18.363,"NOR"],SLB:["Solomon Islands","Oceania","Melanesia","SB",-8.919,159.634,"SLB"],SLE:["Sierra Leone","Africa","Western Africa","SL",8.56,-11.792,"SLE"],SLV:["El Salvador","Americas","Central America","SV",13.736,-88.867,"SLV"],SMR:["San Marino","Europe","Southern Europe","SM",43.943,12.458,"SMR"],SOM:["Somalia","Africa","Eastern Africa","SO",6.063,45.862,"SOM"],SPM:["Saint Pierre and Miquelon","Americas","Northern America","PM",46.946,-56.262,"FRA"],SRB:["Serbia","Europe","Southern Europe","RS",44.031,20.805,"SRB"],SSD:["South Sudan","Africa","Middle Africa","SS",7.295,30.315,"SSD"],STP:["Sao Tome and Principe","Africa","Middle Africa","ST",0.456,6.736,"STP"],SUR:["Suriname","Americas","South America","SR",4.126,-55.912,"SUR"],SVK:["Slovakia","Europe","Eastern Europe","SK",48.707,19.491,"SVK"],SVN:["Slovenia","Europe","Southern Europe","SI",46.123,14.826,"SVN"],SWE:["Sweden","Europe","Northern Europe","SE",62.789,16.739,"SWE"],SWZ:["Swaziland","Africa","Southern Africa","SZ",-26.563,31.497,"SWZ"],SYC:["Seychelles","Africa","Eastern Africa","SC",-6.355,52.229,"SYC"],SYR:["Syrian Arab Republic","Asia","Western Asia","SY",35.013,38.505,"SYR",["Syria"]],TCA:["Turks and Caicos Islands","Americas","Caribbean","TC",21.836,-71.813,"GBR"],TCD:["Chad","Africa","Middle Africa","TD",15.361,18.664,"TCD"],TGO:["Togo","Africa","Western Africa","TG",8.534,0.975,"TGO"],THA:["Thailand","Asia","South-Eastern Asia","TH",15.127,101.017,"THA"],TJK:["Tajikistan","Asia","Central Asia","TJ",38.528,71.042,"TJK"],TKL:["Tokelau","Oceania","Polynesia","TK",-9.196,-171.853,"TKL"],TKM:["Turkmenistan","Asia","Central Asia","TM",39.218,58.391,"TKM"],TLS:["Timor-Leste","Asia","South-Eastern Asia","TL",-8.823,125.853,"TLS"],TON:["Tonga","Oceania","Polynesia","TO",-20.403,-174.837,"TON"],TTO:["Trinidad and Tobago","Americas","Caribbean","TT",10.468,-61.254,"TTO"],TUN:["Tunisia","Africa","Northern Africa","TN",34.11,9.561,"TUN"],TUR:["Turkey","Asia","Western Asia","TR",39.06,35.179,"TUR"],TUV:["Tuvalu","Oceania","Polynesia","TV",-7.828,178.557,"TUV"],TWN:["Taiwan","Asia","Eastern Asia","TW",23.754,120.95,"CHN"],TZA:["United Republic of Tanzania","Africa","Eastern Africa","TZ",-6.271,34.823,"TZA",["Tanzania"]],UGA:["Uganda","Africa","Eastern Africa","UG",1.279,32.386,"UGA"],UKR:["Ukraine","Europe","Eastern Europe","UA",49.017,31.387,"UKR"],URY:["Uruguay","Americas","South America","UY",-32.8,-56.013,"URY"],USA:["United States of America","Americas","Northern America","US",45.695,-112.492,"USA",["United States"]],USA1:["Guantanamo","Americas","Caribbean","USA1",19.927,-75.143,"USA"],USA2:["Jarvis Island","Americas","Northern America","USA2",-0.387,-160.028,"USA"],USA3:["Midway Island","Americas","Northern America","USA3",28.205,-177.379,"USA"],UZB:["Uzbekistan","Asia","Central Asia","UZ",41.75,63.169,"UZB"],VAT:["Holy See","Europe","Southern Europe","VA",41.903,12.452,"VAT",["Vatican City"]],VCT:["Saint Vincent and the Grenadines","Americas","Caribbean","VC",13.254,-61.194,"VCT"],VEN:["Venezuela","Americas","South America","VE",7.122,-66.17,"VEN"],VGB:["British Virgin Islands","Americas","Caribbean","VG",18.444,-64.531,"GBR"],VIR:["United States Virgin Islands","Americas","Caribbean","VI",17.905,-64.808,"USA"],VNM:["Vietnam","Asia","South-Eastern Asia","VN",16.659,106.301,"VNM"],VUT:["Vanuatu","Oceania","Melanesia","VU",-16.256,167.718,"VUT"],WSM:["Samoa","Oceania","Polynesia","WS",-13.759,-172.16,"WSM"],XXX1:["Paracel Islands","Asia","South-Eastern Asia","XXX1",16.701,112.375,"XXX"],XXX2:["Spratly Islands","Asia","South-Eastern Asia","XXX2",10.562,115.597,"XXX"],XXY1:["Aksai Chin","Asia","Eastern Asia","XXY1",35.033,79.127,"XXY"],XXZ1:["Jammu-Kashmir","Asia","Eastern Asia","XXZ1",34.55,75.807,"XXZ"],YEM:["Yemen","Asia","Western Asia","YE",15.905,47.599,"YEM"],ZAF:["South Africa","Africa","Southern Africa","ZA",-28.994,25.088,"ZAF"],ZMB:["Zambia","Africa","Eastern Africa","ZM",-13.454,27.798,"ZMB"],ZWE:["Zimbabwe","Africa","Eastern Africa","ZW",-19.001,29.871,"ZWE"]};CanvasXpress.usa={AK:["Alaska",63.588753,-154.493062],AL:["Alabama",32.318231,-86.902298],AR:["Arkansas",35.20105,-91.831833],AZ:["Arizona",34.048928,-111.093731],CA:["California",36.778261,-119.417932],CO:["Colorado",39.550051,-105.782067],CT:["Connecticut",41.603221,-73.087749],DC:["District of Columbia",38.905985,-77.033418],DE:["Delaware",38.910832,-75.52767],FL:["Florida",27.664827,-81.515754],GA:["Georgia",32.157435,-82.907123],HI:["Hawaii",19.898682,-155.665857],IA:["Iowa",41.878003,-93.097702],ID:["Idaho",44.068202,-114.742041],IL:["Illinois",40.633125,-89.398528],IN:["Indiana",40.551217,-85.602364],KS:["Kansas",39.011902,-98.484246],KY:["Kentucky",37.839333,-84.270018],LA:["Louisiana",31.244823,-92.145024],MA:["Massachusetts",42.407211,-71.382437],MD:["Maryland",39.045755,-76.641271],ME:["Maine",45.253783,-69.445469],MI:["Michigan",44.314844,-85.602364],MN:["Minnesota",46.729553,-94.6859],MO:["Missouri",37.964253,-91.831833],MS:["Mississippi",32.354668,-89.398528],MT:["Montana",46.879682,-110.362566],NC:["North Carolina",35.759573,-79.0193],ND:["North Dakota",47.551493,-101.002012],NE:["Nebraska",41.492537,-99.901813],NH:["New Hampshire",43.193852,-71.572395],NJ:["New Jersey",40.058324,-74.405661],NM:["New Mexico",34.97273,-105.032363],NV:["Nevada",38.80261,-116.419389],NY:["New York",43.299428,-74.217933],OH:["Ohio",40.417287,-82.907123],OK:["Oklahoma",35.007752,-97.092877],OR:["Oregon",43.804133,-120.554201],PA:["Pennsylvania",41.203322,-77.194525],PR:["Puerto Rico",18.220833,-66.590149],RI:["Rhode Island",41.580095,-71.477429],SC:["South Carolina",33.836081,-81.163725],SD:["South Dakota",43.969515,-99.901813],TN:["Tennessee",35.517491,-86.580447],TX:["Texas",31.968599,-99.901813],UT:["Utah",39.32098,-111.093731],VA:["Virginia",37.431573,-78.656894],VT:["Vermont",44.558803,-72.577841],WA:["Washington",47.751074,-120.740139],WI:["Wisconsin",43.78444,-88.787868],WV:["West Virginia",38.597626,-80.454903],WY:["Wyoming",43.075968,-107.290284]};CanvasXpress.maps={Africa:"/data/maps/AFRICA.json",Asia:"/data/maps/ASIA.json",Europe:"/data/maps/EUROPE.json",NorthAmerica:"/data/maps/NORTHAMERICA.json",Oceania:"/data/maps/OCEANIA.json",SouthAmerica:"/data/maps/SOUTHAMERICA.json",USACounties:"/data/maps/USA-COUNTIES.json",USAContinental:"/data/maps/USA-CONTINENTAL.json",USAStates:"/data/maps/USA.json",WorldContinents:"/data/maps/WORLD.json",WorldAntarctica:"/data/maps/WORLD-ANTARCTICA.json",World:"/data/maps/WORLD.json",WorldLow:"/data/maps/WORLD-LOW.json"};CanvasXpress.example={y:{vars:["A","B","C"],smps:["X","Y","Z"],data:[[1,2,3],[4,5,6],[7,8,9]]}};CanvasXpress.geojson={type:"FeatureCollection",features:[{type:"Feature",properties:{name:"Dummy"},geometry:{type:"Polygon",coordinates:[[[-180,-90],[180,-90],[180,90],[-180,90],[-180,-90]]]}}]};CanvasXpress.chromosomes={hg38:{columns:["start","end","name","stain"],order:[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,"X","Y"],data:{1:[[0,2300000,"p36.33","gneg"],[2300000,5300000,"p36.32","gpos25"],[5300000,7100000,"p36.31","gneg"],[7100000,9100000,"p36.23","gpos25"],[9100000,12500000,"p36.22","gneg"],[12500000,15900000,"p36.21","gpos50"],[15900000,20100000,"p36.13","gneg"],[20100000,23600000,"p36.12","gpos25"],[23600000,27600000,"p36.11","gneg"],[27600000,29900000,"p35.3","gpos25"],[29900000,32300000,"p35.2","gneg"],[32300000,34300000,"p35.1","gpos25"],[34300000,39600000,"p34.3","gneg"],[39600000,43700000,"p34.2","gpos25"],[43700000,46300000,"p34.1","gneg"],[46300000,50200000,"p33","gpos75"],[50200000,55600000,"p32.3","gneg"],[55600000,58500000,"p32.2","gpos50"],[58500000,60800000,"p32.1","gneg"],[60800000,68500000,"p31.3","gpos50"],[68500000,69300000,"p31.2","gneg"],[69300000,84400000,"p31.1","gpos100"],[84400000,87900000,"p22.3","gneg"],[87900000,91500000,"p22.2","gpos75"],[91500000,94300000,"p22.1","gneg"],[94300000,99300000,"p21.3","gpos75"],[99300000,101800000,"p21.2","gneg"],[101800000,106700000,"p21.1","gpos100"],[106700000,111200000,"p13.3","gneg"],[111200000,115500000,"p13.2","gpos50"],[115500000,117200000,"p13.1","gneg"],[117200000,120400000,"p12","gpos50"],[120400000,121700000,"p11.2","gneg"],[121700000,123400000,"p11.1","acen"],[123400000,125100000,"q11","acen"],[125100000,143200000,"q12","gvar"],[143200000,147500000,"q21.1","gneg"],[147500000,150600000,"q21.2","gpos50"],[150600000,155100000,"q21.3","gneg"],[155100000,156600000,"q22","gpos50"],[156600000,159100000,"q23.1","gneg"],[159100000,160500000,"q23.2","gpos50"],[160500000,165500000,"q23.3","gneg"],[165500000,167200000,"q24.1","gpos50"],[167200000,170900000,"q24.2","gneg"],[170900000,173000000,"q24.3","gpos75"],[173000000,176100000,"q25.1","gneg"],[176100000,180300000,"q25.2","gpos50"],[180300000,185800000,"q25.3","gneg"],[185800000,190800000,"q31.1","gpos100"],[190800000,193800000,"q31.2","gneg"],[193800000,198700000,"q31.3","gpos100"],[198700000,207100000,"q32.1","gneg"],[207100000,211300000,"q32.2","gpos25"],[211300000,214400000,"q32.3","gneg"],[214400000,223900000,"q41","gpos100"],[223900000,224400000,"q42.11","gneg"],[224400000,226800000,"q42.12","gpos25"],[226800000,230500000,"q42.13","gneg"],[230500000,234600000,"q42.2","gpos50"],[234600000,236400000,"q42.3","gneg"],[236400000,243500000,"q43","gpos75"],[243500000,248956422,"q44","gneg"]],2:[[0,4400000,"p25.3","gneg"],[4400000,6900000,"p25.2","gpos50"],[6900000,12000000,"p25.1","gneg"],[12000000,16500000,"p24.3","gpos75"],[16500000,19000000,"p24.2","gneg"],[19000000,23800000,"p24.1","gpos75"],[23800000,27700000,"p23.3","gneg"],[27700000,29800000,"p23.2","gpos25"],[29800000,31800000,"p23.1","gneg"],[31800000,36300000,"p22.3","gpos75"],[36300000,38300000,"p22.2","gneg"],[38300000,41500000,"p22.1","gpos50"],[41500000,47500000,"p21","gneg"],[47500000,52600000,"p16.3","gpos100"],[52600000,54700000,"p16.2","gneg"],[54700000,61000000,"p16.1","gpos100"],[61000000,63900000,"p15","gneg"],[63900000,68400000,"p14","gpos50"],[68400000,71300000,"p13.3","gneg"],[71300000,73300000,"p13.2","gpos50"],[73300000,74800000,"p13.1","gneg"],[74800000,83100000,"p12","gpos100"],[83100000,91800000,"p11.2","gneg"],[91800000,93900000,"p11.1","acen"],[93900000,96000000,"q11.1","acen"],[96000000,102100000,"q11.2","gneg"],[102100000,105300000,"q12.1","gpos50"],[105300000,106700000,"q12.2","gneg"],[106700000,108700000,"q12.3","gpos25"],[108700000,112200000,"q13","gneg"],[112200000,118100000,"q14.1","gpos50"],[118100000,121600000,"q14.2","gneg"],[121600000,129100000,"q14.3","gpos50"],[129100000,131700000,"q21.1","gneg"],[131700000,134300000,"q21.2","gpos25"],[134300000,136100000,"q21.3","gneg"],[136100000,141500000,"q22.1","gpos100"],[141500000,143400000,"q22.2","gneg"],[143400000,147900000,"q22.3","gpos100"],[147900000,149000000,"q23.1","gneg"],[149000000,149600000,"q23.2","gpos25"],[149600000,154000000,"q23.3","gneg"],[154000000,158900000,"q24.1","gpos75"],[158900000,162900000,"q24.2","gneg"],[162900000,168900000,"q24.3","gpos75"],[168900000,177100000,"q31.1","gneg"],[177100000,179700000,"q31.2","gpos50"],[179700000,182100000,"q31.3","gneg"],[182100000,188500000,"q32.1","gpos75"],[188500000,191100000,"q32.2","gneg"],[191100000,196600000,"q32.3","gpos75"],[196600000,202500000,"q33.1","gneg"],[202500000,204100000,"q33.2","gpos50"],[204100000,208200000,"q33.3","gneg"],[208200000,214500000,"q34","gpos100"],[214500000,220700000,"q35","gneg"],[220700000,224300000,"q36.1","gpos75"],[224300000,225200000,"q36.2","gneg"],[225200000,230100000,"q36.3","gpos100"],[230100000,234700000,"q37.1","gneg"],[234700000,236400000,"q37.2","gpos50"],[236400000,242193529,"q37.3","gneg"]],3:[[0,2800000,"p26.3","gpos50"],[2800000,4000000,"p26.2","gneg"],[4000000,8100000,"p26.1","gpos50"],[8100000,11600000,"p25.3","gneg"],[11600000,13200000,"p25.2","gpos25"],[13200000,16300000,"p25.1","gneg"],[16300000,23800000,"p24.3","gpos100"],[23800000,26300000,"p24.2","gneg"],[26300000,30800000,"p24.1","gpos75"],[30800000,32000000,"p23","gneg"],[32000000,36400000,"p22.3","gpos50"],[36400000,39300000,"p22.2","gneg"],[39300000,43600000,"p22.1","gpos75"],[43600000,44100000,"p21.33","gneg"],[44100000,44200000,"p21.32","gpos50"],[44200000,50600000,"p21.31","gneg"],[50600000,52300000,"p21.2","gpos25"],[52300000,54400000,"p21.1","gneg"],[54400000,58600000,"p14.3","gpos50"],[58600000,63800000,"p14.2","gneg"],[63800000,69700000,"p14.1","gpos50"],[69700000,74100000,"p13","gneg"],[74100000,79800000,"p12.3","gpos75"],[79800000,83500000,"p12.2","gneg"],[83500000,87100000,"p12.1","gpos75"],[87100000,87800000,"p11.2","gneg"],[87800000,90900000,"p11.1","acen"],[90900000,94000000,"q11.1","acen"],[94000000,98600000,"q11.2","gvar"],[98600000,100300000,"q12.1","gneg"],[100300000,101200000,"q12.2","gpos25"],[101200000,103100000,"q12.3","gneg"],[103100000,106500000,"q13.11","gpos75"],[106500000,108200000,"q13.12","gneg"],[108200000,111600000,"q13.13","gpos50"],[111600000,113700000,"q13.2","gneg"],[113700000,117600000,"q13.31","gpos75"],[117600000,119300000,"q13.32","gneg"],[119300000,122200000,"q13.33","gpos75"],[122200000,124100000,"q21.1","gneg"],[124100000,126100000,"q21.2","gpos25"],[126100000,129500000,"q21.3","gneg"],[129500000,134000000,"q22.1","gpos25"],[134000000,136000000,"q22.2","gneg"],[136000000,139000000,"q22.3","gpos25"],[139000000,143100000,"q23","gneg"],[143100000,149200000,"q24","gpos100"],[149200000,152300000,"q25.1","gneg"],[152300000,155300000,"q25.2","gpos50"],[155300000,157300000,"q25.31","gneg"],[157300000,159300000,"q25.32","gpos50"],[159300000,161000000,"q25.33","gneg"],[161000000,167900000,"q26.1","gpos100"],[167900000,171200000,"q26.2","gneg"],[171200000,176000000,"q26.31","gpos75"],[176000000,179300000,"q26.32","gneg"],[179300000,183000000,"q26.33","gpos75"],[183000000,184800000,"q27.1","gneg"],[184800000,186300000,"q27.2","gpos25"],[186300000,188200000,"q27.3","gneg"],[188200000,192600000,"q28","gpos75"],[192600000,198295559,"q29","gneg"]],4:[[0,4500000,"p16.3","gneg"],[4500000,6000000,"p16.2","gpos25"],[6000000,11300000,"p16.1","gneg"],[11300000,15000000,"p15.33","gpos50"],[15000000,17700000,"p15.32","gneg"],[17700000,21300000,"p15.31","gpos75"],[21300000,27700000,"p15.2","gneg"],[27700000,35800000,"p15.1","gpos100"],[35800000,41200000,"p14","gneg"],[41200000,44600000,"p13","gpos50"],[44600000,48200000,"p12","gneg"],[48200000,50000000,"p11","acen"],[50000000,51800000,"q11","acen"],[51800000,58500000,"q12","gneg"],[58500000,65500000,"q13.1","gpos100"],[65500000,69400000,"q13.2","gneg"],[69400000,75300000,"q13.3","gpos75"],[75300000,78000000,"q21.1","gneg"],[78000000,81500000,"q21.21","gpos50"],[81500000,83200000,"q21.22","gneg"],[83200000,86000000,"q21.23","gpos25"],[86000000,87100000,"q21.3","gneg"],[87100000,92800000,"q22.1","gpos75"],[92800000,94200000,"q22.2","gneg"],[94200000,97900000,"q22.3","gpos75"],[97900000,100100000,"q23","gneg"],[100100000,106700000,"q24","gpos50"],[106700000,113200000,"q25","gneg"],[113200000,119900000,"q26","gpos75"],[119900000,122800000,"q27","gneg"],[122800000,127900000,"q28.1","gpos50"],[127900000,130100000,"q28.2","gneg"],[130100000,138500000,"q28.3","gpos100"],[138500000,140600000,"q31.1","gneg"],[140600000,145900000,"q31.21","gpos25"],[145900000,147500000,"q31.22","gneg"],[147500000,150200000,"q31.23","gpos25"],[150200000,154600000,"q31.3","gneg"],[154600000,160800000,"q32.1","gpos100"],[160800000,163600000,"q32.2","gneg"],[163600000,169200000,"q32.3","gpos100"],[169200000,171000000,"q33","gneg"],[171000000,175400000,"q34.1","gpos75"],[175400000,176600000,"q34.2","gneg"],[176600000,182300000,"q34.3","gpos100"],[182300000,186200000,"q35.1","gneg"],[186200000,190214555,"q35.2","gpos25"]],5:[[0,4400000,"p15.33","gneg"],[4400000,6300000,"p15.32","gpos25"],[6300000,9900000,"p15.31","gneg"],[9900000,15000000,"p15.2","gpos50"],[15000000,18400000,"p15.1","gneg"],[18400000,23300000,"p14.3","gpos100"],[23300000,24600000,"p14.2","gneg"],[24600000,28900000,"p14.1","gpos100"],[28900000,33800000,"p13.3","gneg"],[33800000,38400000,"p13.2","gpos25"],[38400000,42500000,"p13.1","gneg"],[42500000,46100000,"p12","gpos50"],[46100000,48800000,"p11","acen"],[48800000,51400000,"q11.1","acen"],[51400000,59600000,"q11.2","gneg"],[59600000,63600000,"q12.1","gpos75"],[63600000,63900000,"q12.2","gneg"],[63900000,67400000,"q12.3","gpos75"],[67400000,69100000,"q13.1","gneg"],[69100000,74000000,"q13.2","gpos50"],[74000000,77600000,"q13.3","gneg"],[77600000,82100000,"q14.1","gpos50"],[82100000,83500000,"q14.2","gneg"],[83500000,93000000,"q14.3","gpos100"],[93000000,98900000,"q15","gneg"],[98900000,103400000,"q21.1","gpos100"],[103400000,105100000,"q21.2","gneg"],[105100000,110200000,"q21.3","gpos100"],[110200000,112200000,"q22.1","gneg"],[112200000,113800000,"q22.2","gpos50"],[113800000,115900000,"q22.3","gneg"],[115900000,122100000,"q23.1","gpos100"],[122100000,127900000,"q23.2","gneg"],[127900000,131200000,"q23.3","gpos100"],[131200000,136900000,"q31.1","gneg"],[136900000,140100000,"q31.2","gpos25"],[140100000,145100000,"q31.3","gneg"],[145100000,150400000,"q32","gpos75"],[150400000,153300000,"q33.1","gneg"],[153300000,156300000,"q33.2","gpos50"],[156300000,160500000,"q33.3","gneg"],[160500000,169000000,"q34","gpos100"],[169000000,173300000,"q35.1","gneg"],[173300000,177100000,"q35.2","gpos25"],[177100000,181538259,"q35.3","gneg"]],6:[[0,2300000,"p25.3","gneg"],[2300000,4200000,"p25.2","gpos25"],[4200000,7100000,"p25.1","gneg"],[7100000,10600000,"p24.3","gpos50"],[10600000,11600000,"p24.2","gneg"],[11600000,13400000,"p24.1","gpos25"],[13400000,15200000,"p23","gneg"],[15200000,25200000,"p22.3","gpos75"],[25200000,27100000,"p22.2","gneg"],[27100000,30500000,"p22.1","gpos50"],[30500000,32100000,"p21.33","gneg"],[32100000,33500000,"p21.32","gpos25"],[33500000,36600000,"p21.31","gneg"],[36600000,40500000,"p21.2","gpos25"],[40500000,46200000,"p21.1","gneg"],[46200000,51800000,"p12.3","gpos100"],[51800000,53000000,"p12.2","gneg"],[53000000,57200000,"p12.1","gpos100"],[57200000,58500000,"p11.2","gneg"],[58500000,59800000,"p11.1","acen"],[59800000,62600000,"q11.1","acen"],[62600000,62700000,"q11.2","gneg"],[62700000,69200000,"q12","gpos100"],[69200000,75200000,"q13","gneg"],[75200000,83200000,"q14.1","gpos50"],[83200000,84200000,"q14.2","gneg"],[84200000,87300000,"q14.3","gpos50"],[87300000,92500000,"q15","gneg"],[92500000,98900000,"q16.1","gpos100"],[98900000,100000000,"q16.2","gneg"],[100000000,105000000,"q16.3","gpos100"],[105000000,114200000,"q21","gneg"],[114200000,117900000,"q22.1","gpos75"],[117900000,118100000,"q22.2","gneg"],[118100000,125800000,"q22.31","gpos100"],[125800000,126800000,"q22.32","gneg"],[126800000,130000000,"q22.33","gpos75"],[130000000,130900000,"q23.1","gneg"],[130900000,134700000,"q23.2","gpos50"],[134700000,138300000,"q23.3","gneg"],[138300000,142200000,"q24.1","gpos75"],[142200000,145100000,"q24.2","gneg"],[145100000,148500000,"q24.3","gpos75"],[148500000,152100000,"q25.1","gneg"],[152100000,155200000,"q25.2","gpos50"],[155200000,160600000,"q25.3","gneg"],[160600000,164100000,"q26","gpos50"],[164100000,170805979,"q27","gneg"]],7:[[0,2800000,"p22.3","gneg"],[2800000,4500000,"p22.2","gpos25"],[4500000,7200000,"p22.1","gneg"],[7200000,13700000,"p21.3","gpos100"],[13700000,16500000,"p21.2","gneg"],[16500000,20900000,"p21.1","gpos100"],[20900000,25500000,"p15.3","gneg"],[25500000,27900000,"p15.2","gpos50"],[27900000,28800000,"p15.1","gneg"],[28800000,34900000,"p14.3","gpos75"],[34900000,37100000,"p14.2","gneg"],[37100000,43300000,"p14.1","gpos75"],[43300000,45400000,"p13","gneg"],[45400000,49000000,"p12.3","gpos75"],[49000000,50500000,"p12.2","gneg"],[50500000,53900000,"p12.1","gpos75"],[53900000,58100000,"p11.2","gneg"],[58100000,60100000,"p11.1","acen"],[60100000,62100000,"q11.1","acen"],[62100000,67500000,"q11.21","gneg"],[67500000,72700000,"q11.22","gpos50"],[72700000,77900000,"q11.23","gneg"],[77900000,86700000,"q21.11","gpos100"],[86700000,88500000,"q21.12","gneg"],[88500000,91500000,"q21.13","gpos75"],[91500000,93300000,"q21.2","gneg"],[93300000,98400000,"q21.3","gpos75"],[98400000,104200000,"q22.1","gneg"],[104200000,104900000,"q22.2","gpos50"],[104900000,107800000,"q22.3","gneg"],[107800000,115000000,"q31.1","gpos75"],[115000000,117700000,"q31.2","gneg"],[117700000,121400000,"q31.31","gpos75"],[121400000,124100000,"q31.32","gneg"],[124100000,127500000,"q31.33","gpos75"],[127500000,129600000,"q32.1","gneg"],[129600000,130800000,"q32.2","gpos25"],[130800000,132900000,"q32.3","gneg"],[132900000,138500000,"q33","gpos50"],[138500000,143400000,"q34","gneg"],[143400000,148200000,"q35","gpos75"],[148200000,152800000,"q36.1","gneg"],[152800000,155200000,"q36.2","gpos25"],[155200000,159345973,"q36.3","gneg"]],8:[[0,2300000,"p23.3","gneg"],[2300000,6300000,"p23.2","gpos75"],[6300000,12800000,"p23.1","gneg"],[12800000,19200000,"p22","gpos100"],[19200000,23500000,"p21.3","gneg"],[23500000,27500000,"p21.2","gpos50"],[27500000,29000000,"p21.1","gneg"],[29000000,36700000,"p12","gpos75"],[36700000,38500000,"p11.23","gneg"],[38500000,39900000,"p11.22","gpos25"],[39900000,43200000,"p11.21","gneg"],[43200000,45200000,"p11.1","acen"],[45200000,47200000,"q11.1","acen"],[47200000,51300000,"q11.21","gneg"],[51300000,51700000,"q11.22","gpos75"],[51700000,54600000,"q11.23","gneg"],[54600000,60600000,"q12.1","gpos50"],[60600000,61300000,"q12.2","gneg"],[61300000,65100000,"q12.3","gpos50"],[65100000,67100000,"q13.1","gneg"],[67100000,69600000,"q13.2","gpos50"],[69600000,72000000,"q13.3","gneg"],[72000000,74600000,"q21.11","gpos100"],[74600000,74700000,"q21.12","gneg"],[74700000,83500000,"q21.13","gpos75"],[83500000,85900000,"q21.2","gneg"],[85900000,92300000,"q21.3","gpos100"],[92300000,97900000,"q22.1","gneg"],[97900000,100500000,"q22.2","gpos25"],[100500000,105100000,"q22.3","gneg"],[105100000,109500000,"q23.1","gpos75"],[109500000,111100000,"q23.2","gneg"],[111100000,116700000,"q23.3","gpos100"],[116700000,118300000,"q24.11","gneg"],[118300000,121500000,"q24.12","gpos50"],[121500000,126300000,"q24.13","gneg"],[126300000,130400000,"q24.21","gpos50"],[130400000,135400000,"q24.22","gneg"],[135400000,138900000,"q24.23","gpos75"],[138900000,145138636,"q24.3","gneg"]],9:[[0,2200000,"p24.3","gneg"],[2200000,4600000,"p24.2","gpos25"],[4600000,9000000,"p24.1","gneg"],[9000000,14200000,"p23","gpos75"],[14200000,16600000,"p22.3","gneg"],[16600000,18500000,"p22.2","gpos25"],[18500000,19900000,"p22.1","gneg"],[19900000,25600000,"p21.3","gpos100"],[25600000,28000000,"p21.2","gneg"],[28000000,33200000,"p21.1","gpos100"],[33200000,36300000,"p13.3","gneg"],[36300000,37900000,"p13.2","gpos25"],[37900000,39000000,"p13.1","gneg"],[39000000,40000000,"p12","gpos50"],[40000000,42200000,"p11.2","gneg"],[42200000,43000000,"p11.1","acen"],[43000000,45500000,"q11","acen"],[45500000,61500000,"q12","gvar"],[61500000,65000000,"q13","gneg"],[65000000,69300000,"q21.11","gpos25"],[69300000,71300000,"q21.12","gneg"],[71300000,76600000,"q21.13","gpos50"],[76600000,78500000,"q21.2","gneg"],[78500000,81500000,"q21.31","gpos50"],[81500000,84300000,"q21.32","gneg"],[84300000,87800000,"q21.33","gpos50"],[87800000,89200000,"q22.1","gneg"],[89200000,91200000,"q22.2","gpos25"],[91200000,93900000,"q22.31","gneg"],[93900000,96500000,"q22.32","gpos25"],[96500000,99800000,"q22.33","gneg"],[99800000,105400000,"q31.1","gpos100"],[105400000,108500000,"q31.2","gneg"],[108500000,112100000,"q31.3","gpos25"],[112100000,114900000,"q32","gneg"],[114900000,119800000,"q33.1","gpos75"],[119800000,123100000,"q33.2","gneg"],[123100000,127500000,"q33.3","gpos25"],[127500000,130600000,"q34.11","gneg"],[130600000,131100000,"q34.12","gpos25"],[131100000,133100000,"q34.13","gneg"],[133100000,134500000,"q34.2","gpos25"],[134500000,138394717,"q34.3","gneg"]],10:[[0,3000000,"p15.3","gneg"],[3000000,3800000,"p15.2","gpos25"],[3800000,6600000,"p15.1","gneg"],[6600000,12200000,"p14","gpos75"],[12200000,17300000,"p13","gneg"],[17300000,18300000,"p12.33","gpos75"],[18300000,18400000,"p12.32","gneg"],[18400000,22300000,"p12.31","gpos75"],[22300000,24300000,"p12.2","gneg"],[24300000,29300000,"p12.1","gpos50"],[29300000,31100000,"p11.23","gneg"],[31100000,34200000,"p11.22","gpos25"],[34200000,38000000,"p11.21","gneg"],[38000000,39800000,"p11.1","acen"],[39800000,41600000,"q11.1","acen"],[41600000,45500000,"q11.21","gneg"],[45500000,48600000,"q11.22","gpos25"],[48600000,51100000,"q11.23","gneg"],[51100000,59400000,"q21.1","gpos100"],[59400000,62800000,"q21.2","gneg"],[62800000,68800000,"q21.3","gpos100"],[68800000,73100000,"q22.1","gneg"],[73100000,75900000,"q22.2","gpos50"],[75900000,80300000,"q22.3","gneg"],[80300000,86100000,"q23.1","gpos100"],[86100000,87700000,"q23.2","gneg"],[87700000,91100000,"q23.31","gpos75"],[91100000,92300000,"q23.32","gneg"],[92300000,95300000,"q23.33","gpos50"],[95300000,97500000,"q24.1","gneg"],[97500000,100100000,"q24.2","gpos50"],[100100000,101200000,"q24.31","gneg"],[101200000,103100000,"q24.32","gpos25"],[103100000,104000000,"q24.33","gneg"],[104000000,110100000,"q25.1","gpos100"],[110100000,113100000,"q25.2","gneg"],[113100000,117300000,"q25.3","gpos75"],[117300000,119900000,"q26.11","gneg"],[119900000,121400000,"q26.12","gpos50"],[121400000,125700000,"q26.13","gneg"],[125700000,128800000,"q26.2","gpos50"],[128800000,133797422,"q26.3","gneg"]],11:[[0,2800000,"p15.5","gneg"],[2800000,11700000,"p15.4","gpos50"],[11700000,13800000,"p15.3","gneg"],[13800000,16900000,"p15.2","gpos50"],[16900000,22000000,"p15.1","gneg"],[22000000,26200000,"p14.3","gpos100"],[26200000,27200000,"p14.2","gneg"],[27200000,31000000,"p14.1","gpos75"],[31000000,36400000,"p13","gneg"],[36400000,43400000,"p12","gpos100"],[43400000,48800000,"p11.2","gneg"],[48800000,51000000,"p11.12","gpos75"],[51000000,53400000,"p11.11","acen"],[53400000,55800000,"q11","acen"],[55800000,60100000,"q12.1","gpos75"],[60100000,61900000,"q12.2","gneg"],[61900000,63600000,"q12.3","gpos25"],[63600000,66100000,"q13.1","gneg"],[66100000,68700000,"q13.2","gpos25"],[68700000,70500000,"q13.3","gneg"],[70500000,75500000,"q13.4","gpos50"],[75500000,77400000,"q13.5","gneg"],[77400000,85900000,"q14.1","gpos100"],[85900000,88600000,"q14.2","gneg"],[88600000,93000000,"q14.3","gpos100"],[93000000,97400000,"q21","gneg"],[97400000,102300000,"q22.1","gpos100"],[102300000,103000000,"q22.2","gneg"],[103000000,110600000,"q22.3","gpos100"],[110600000,112700000,"q23.1","gneg"],[112700000,114600000,"q23.2","gpos50"],[114600000,121300000,"q23.3","gneg"],[121300000,124000000,"q24.1","gpos50"],[124000000,127900000,"q24.2","gneg"],[127900000,130900000,"q24.3","gpos50"],[130900000,135086622,"q25","gneg"]],12:[[0,3200000,"p13.33","gneg"],[3200000,5300000,"p13.32","gpos25"],[5300000,10000000,"p13.31","gneg"],[10000000,12600000,"p13.2","gpos75"],[12600000,14600000,"p13.1","gneg"],[14600000,19800000,"p12.3","gpos100"],[19800000,21100000,"p12.2","gneg"],[21100000,26300000,"p12.1","gpos100"],[26300000,27600000,"p11.23","gneg"],[27600000,30500000,"p11.22","gpos50"],[30500000,33200000,"p11.21","gneg"],[33200000,35500000,"p11.1","acen"],[35500000,37800000,"q11","acen"],[37800000,46000000,"q12","gpos100"],[46000000,48700000,"q13.11","gneg"],[48700000,51100000,"q13.12","gpos25"],[51100000,54500000,"q13.13","gneg"],[54500000,56200000,"q13.2","gpos25"],[56200000,57700000,"q13.3","gneg"],[57700000,62700000,"q14.1","gpos75"],[62700000,64700000,"q14.2","gneg"],[64700000,67300000,"q14.3","gpos50"],[67300000,71100000,"q15","gneg"],[71100000,75300000,"q21.1","gpos75"],[75300000,79900000,"q21.2","gneg"],[79900000,86300000,"q21.31","gpos100"],[86300000,88600000,"q21.32","gneg"],[88600000,92200000,"q21.33","gpos100"],[92200000,95800000,"q22","gneg"],[95800000,101200000,"q23.1","gpos75"],[101200000,103500000,"q23.2","gneg"],[103500000,108600000,"q23.3","gpos50"],[108600000,111300000,"q24.11","gneg"],[111300000,111900000,"q24.12","gpos25"],[111900000,113900000,"q24.13","gneg"],[113900000,116400000,"q24.21","gpos50"],[116400000,117700000,"q24.22","gneg"],[117700000,120300000,"q24.23","gpos50"],[120300000,125400000,"q24.31","gneg"],[125400000,128700000,"q24.32","gpos50"],[128700000,133275309,"q24.33","gneg"]],13:[[0,4600000,"p13","gvar"],[4600000,10100000,"p12","stalk"],[10100000,16500000,"p11.2","gvar"],[16500000,17700000,"p11.1","acen"],[17700000,18900000,"q11","acen"],[18900000,22600000,"q12.11","gneg"],[22600000,24900000,"q12.12","gpos25"],[24900000,27200000,"q12.13","gneg"],[27200000,28300000,"q12.2","gpos25"],[28300000,31600000,"q12.3","gneg"],[31600000,33400000,"q13.1","gpos50"],[33400000,34900000,"q13.2","gneg"],[34900000,39500000,"q13.3","gpos75"],[39500000,44600000,"q14.11","gneg"],[44600000,45200000,"q14.12","gpos25"],[45200000,46700000,"q14.13","gneg"],[46700000,50300000,"q14.2","gpos50"],[50300000,54700000,"q14.3","gneg"],[54700000,59000000,"q21.1","gpos100"],[59000000,61800000,"q21.2","gneg"],[61800000,65200000,"q21.31","gpos75"],[65200000,68100000,"q21.32","gneg"],[68100000,72800000,"q21.33","gpos100"],[72800000,74900000,"q22.1","gneg"],[74900000,76700000,"q22.2","gpos50"],[76700000,78500000,"q22.3","gneg"],[78500000,87100000,"q31.1","gpos100"],[87100000,89400000,"q31.2","gneg"],[89400000,94400000,"q31.3","gpos100"],[94400000,97500000,"q32.1","gneg"],[97500000,98700000,"q32.2","gpos25"],[98700000,101100000,"q32.3","gneg"],[101100000,104200000,"q33.1","gpos100"],[104200000,106400000,"q33.2","gneg"],[106400000,109600000,"q33.3","gpos100"],[109600000,114364328,"q34","gneg"]],14:[[0,3600000,"p13","gvar"],[3600000,8000000,"p12","stalk"],[8000000,16100000,"p11.2","gvar"],[16100000,17200000,"p11.1","acen"],[17200000,18200000,"q11.1","acen"],[18200000,24100000,"q11.2","gneg"],[24100000,32900000,"q12","gpos100"],[32900000,34800000,"q13.1","gneg"],[34800000,36100000,"q13.2","gpos50"],[36100000,37400000,"q13.3","gneg"],[37400000,43000000,"q21.1","gpos100"],[43000000,46700000,"q21.2","gneg"],[46700000,50400000,"q21.3","gpos100"],[50400000,53600000,"q22.1","gneg"],[53600000,55000000,"q22.2","gpos25"],[55000000,57600000,"q22.3","gneg"],[57600000,61600000,"q23.1","gpos75"],[61600000,64300000,"q23.2","gneg"],[64300000,67400000,"q23.3","gpos50"],[67400000,69800000,"q24.1","gneg"],[69800000,73300000,"q24.2","gpos50"],[73300000,78800000,"q24.3","gneg"],[78800000,83100000,"q31.1","gpos100"],[83100000,84400000,"q31.2","gneg"],[84400000,89300000,"q31.3","gpos100"],[89300000,91400000,"q32.11","gneg"],[91400000,94200000,"q32.12","gpos25"],[94200000,95800000,"q32.13","gneg"],[95800000,100900000,"q32.2","gpos50"],[100900000,102700000,"q32.31","gneg"],[102700000,103500000,"q32.32","gpos50"],[103500000,107043718,"q32.33","gneg"]],15:[[0,4200000,"p13","gvar"],[4200000,9700000,"p12","stalk"],[9700000,17500000,"p11.2","gvar"],[17500000,19000000,"p11.1","acen"],[19000000,20500000,"q11.1","acen"],[20500000,25500000,"q11.2","gneg"],[25500000,27800000,"q12","gpos50"],[27800000,30000000,"q13.1","gneg"],[30000000,30900000,"q13.2","gpos50"],[30900000,33400000,"q13.3","gneg"],[33400000,39800000,"q14","gpos75"],[39800000,42500000,"q15.1","gneg"],[42500000,43300000,"q15.2","gpos25"],[43300000,44500000,"q15.3","gneg"],[44500000,49200000,"q21.1","gpos75"],[49200000,52600000,"q21.2","gneg"],[52600000,58800000,"q21.3","gpos75"],[58800000,59000000,"q22.1","gneg"],[59000000,63400000,"q22.2","gpos25"],[63400000,66900000,"q22.31","gneg"],[66900000,67000000,"q22.32","gpos25"],[67000000,67200000,"q22.33","gneg"],[67200000,72400000,"q23","gpos25"],[72400000,74900000,"q24.1","gneg"],[74900000,76300000,"q24.2","gpos25"],[76300000,78000000,"q24.3","gneg"],[78000000,81400000,"q25.1","gpos50"],[81400000,84700000,"q25.2","gneg"],[84700000,88500000,"q25.3","gpos50"],[88500000,93800000,"q26.1","gneg"],[93800000,98000000,"q26.2","gpos50"],[98000000,101991189,"q26.3","gneg"]],16:[[0,7800000,"p13.3","gneg"],[7800000,10400000,"p13.2","gpos50"],[10400000,12500000,"p13.13","gneg"],[12500000,14700000,"p13.12","gpos50"],[14700000,16700000,"p13.11","gneg"],[16700000,21200000,"p12.3","gpos50"],[21200000,24200000,"p12.2","gneg"],[24200000,28500000,"p12.1","gpos50"],[28500000,35300000,"p11.2","gneg"],[35300000,36800000,"p11.1","acen"],[36800000,38400000,"q11.1","acen"],[38400000,47000000,"q11.2","gvar"],[47000000,52600000,"q12.1","gneg"],[52600000,56000000,"q12.2","gpos50"],[56000000,57300000,"q13","gneg"],[57300000,66600000,"q21","gpos100"],[66600000,70800000,"q22.1","gneg"],[70800000,72800000,"q22.2","gpos50"],[72800000,74100000,"q22.3","gneg"],[74100000,79200000,"q23.1","gpos75"],[79200000,81600000,"q23.2","gneg"],[81600000,84100000,"q23.3","gpos50"],[84100000,87000000,"q24.1","gneg"],[87000000,88700000,"q24.2","gpos25"],[88700000,90338345,"q24.3","gneg"]],17:[[0,3400000,"p13.3","gneg"],[3400000,6500000,"p13.2","gpos50"],[6500000,10800000,"p13.1","gneg"],[10800000,16100000,"p12","gpos75"],[16100000,22700000,"p11.2","gneg"],[22700000,25100000,"p11.1","acen"],[25100000,27400000,"q11.1","acen"],[27400000,33500000,"q11.2","gneg"],[33500000,39800000,"q12","gpos50"],[39800000,40200000,"q21.1","gneg"],[40200000,42800000,"q21.2","gpos25"],[42800000,46800000,"q21.31","gneg"],[46800000,49300000,"q21.32","gpos25"],[49300000,52100000,"q21.33","gneg"],[52100000,59500000,"q22","gpos75"],[59500000,60200000,"q23.1","gneg"],[60200000,63100000,"q23.2","gpos75"],[63100000,64600000,"q23.3","gneg"],[64600000,66200000,"q24.1","gpos50"],[66200000,69100000,"q24.2","gneg"],[69100000,72900000,"q24.3","gpos75"],[72900000,76800000,"q25.1","gneg"],[76800000,77200000,"q25.2","gpos25"],[77200000,83257441,"q25.3","gneg"]],18:[[0,2900000,"p11.32","gneg"],[2900000,7200000,"p11.31","gpos50"],[7200000,8500000,"p11.23","gneg"],[8500000,10900000,"p11.22","gpos25"],[10900000,15400000,"p11.21","gneg"],[15400000,18500000,"p11.1","acen"],[18500000,21500000,"q11.1","acen"],[21500000,27500000,"q11.2","gneg"],[27500000,35100000,"q12.1","gpos100"],[35100000,39500000,"q12.2","gneg"],[39500000,45900000,"q12.3","gpos75"],[45900000,50700000,"q21.1","gneg"],[50700000,56200000,"q21.2","gpos75"],[56200000,58600000,"q21.31","gneg"],[58600000,61300000,"q21.32","gpos50"],[61300000,63900000,"q21.33","gneg"],[63900000,69100000,"q22.1","gpos100"],[69100000,71000000,"q22.2","gneg"],[71000000,75400000,"q22.3","gpos25"],[75400000,80373285,"q23","gneg"]],19:[[0,6900000,"p13.3","gneg"],[6900000,12600000,"p13.2","gpos25"],[12600000,13800000,"p13.13","gneg"],[13800000,16100000,"p13.12","gpos25"],[16100000,19900000,"p13.11","gneg"],[19900000,24200000,"p12","gvar"],[24200000,26200000,"p11","acen"],[26200000,28100000,"q11","acen"],[28100000,31900000,"q12","gvar"],[31900000,35100000,"q13.11","gneg"],[35100000,37800000,"q13.12","gpos25"],[37800000,38200000,"q13.13","gneg"],[38200000,42900000,"q13.2","gpos25"],[42900000,44700000,"q13.31","gneg"],[44700000,47500000,"q13.32","gpos25"],[47500000,50900000,"q13.33","gneg"],[50900000,53100000,"q13.41","gpos25"],[53100000,55800000,"q13.42","gneg"],[55800000,58617616,"q13.43","gpos25"]],20:[[0,5100000,"p13","gneg"],[5100000,9200000,"p12.3","gpos75"],[9200000,12000000,"p12.2","gneg"],[12000000,17900000,"p12.1","gpos75"],[17900000,21300000,"p11.23","gneg"],[21300000,22300000,"p11.22","gpos25"],[22300000,25700000,"p11.21","gneg"],[25700000,28100000,"p11.1","acen"],[28100000,30400000,"q11.1","acen"],[30400000,33500000,"q11.21","gneg"],[33500000,35800000,"q11.22","gpos25"],[35800000,39000000,"q11.23","gneg"],[39000000,43100000,"q12","gpos75"],[43100000,43500000,"q13.11","gneg"],[43500000,47800000,"q13.12","gpos25"],[47800000,51200000,"q13.13","gneg"],[51200000,56400000,"q13.2","gpos75"],[56400000,57800000,"q13.31","gneg"],[57800000,59700000,"q13.32","gpos50"],[59700000,64444167,"q13.33","gneg"]],21:[[0,3100000,"p13","gvar"],[3100000,7000000,"p12","stalk"],[7000000,10900000,"p11.2","gvar"],[10900000,12000000,"p11.1","acen"],[12000000,13000000,"q11.1","acen"],[13000000,15000000,"q11.2","gneg"],[15000000,22600000,"q21.1","gpos100"],[22600000,25500000,"q21.2","gneg"],[25500000,30200000,"q21.3","gpos75"],[30200000,34400000,"q22.11","gneg"],[34400000,36400000,"q22.12","gpos50"],[36400000,38300000,"q22.13","gneg"],[38300000,41200000,"q22.2","gpos50"],[41200000,46709983,"q22.3","gneg"]],22:[[0,4300000,"p13","gvar"],[4300000,9400000,"p12","stalk"],[9400000,13700000,"p11.2","gvar"],[13700000,15000000,"p11.1","acen"],[15000000,17400000,"q11.1","acen"],[17400000,21700000,"q11.21","gneg"],[21700000,23100000,"q11.22","gpos25"],[23100000,25500000,"q11.23","gneg"],[25500000,29200000,"q12.1","gpos50"],[29200000,31800000,"q12.2","gneg"],[31800000,37200000,"q12.3","gpos50"],[37200000,40600000,"q13.1","gneg"],[40600000,43800000,"q13.2","gpos50"],[43800000,48100000,"q13.31","gneg"],[48100000,49100000,"q13.32","gpos50"],[49100000,50818468,"q13.33","gneg"]],X:[[0,4400000,"p22.33","gneg"],[4400000,6100000,"p22.32","gpos50"],[6100000,9600000,"p22.31","gneg"],[9600000,17400000,"p22.2","gpos50"],[17400000,19200000,"p22.13","gneg"],[19200000,21900000,"p22.12","gpos50"],[21900000,24900000,"p22.11","gneg"],[24900000,29300000,"p21.3","gpos100"],[29300000,31500000,"p21.2","gneg"],[31500000,37800000,"p21.1","gpos100"],[37800000,42500000,"p11.4","gneg"],[42500000,47600000,"p11.3","gpos75"],[47600000,50100000,"p11.23","gneg"],[50100000,54800000,"p11.22","gpos25"],[54800000,58100000,"p11.21","gneg"],[58100000,61000000,"p11.1","acen"],[61000000,63800000,"q11.1","acen"],[63800000,65400000,"q11.2","gneg"],[65400000,68500000,"q12","gpos50"],[68500000,73000000,"q13.1","gneg"],[73000000,74700000,"q13.2","gpos50"],[74700000,76800000,"q13.3","gneg"],[76800000,85400000,"q21.1","gpos100"],[85400000,87000000,"q21.2","gneg"],[87000000,92700000,"q21.31","gpos100"],[92700000,94300000,"q21.32","gneg"],[94300000,99100000,"q21.33","gpos75"],[99100000,103300000,"q22.1","gneg"],[103300000,104500000,"q22.2","gpos50"],[104500000,109400000,"q22.3","gneg"],[109400000,117400000,"q23","gpos75"],[117400000,121800000,"q24","gneg"],[121800000,129500000,"q25","gpos100"],[129500000,131300000,"q26.1","gneg"],[131300000,134500000,"q26.2","gpos25"],[134500000,138900000,"q26.3","gneg"],[138900000,141200000,"q27.1","gpos75"],[141200000,143000000,"q27.2","gneg"],[143000000,148000000,"q27.3","gpos100"],[148000000,156040895,"q28","gneg"]],Y:[[0,300000,"p11.32","gneg"],[300000,600000,"p11.31","gpos50"],[600000,10300000,"p11.2","gneg"],[10300000,10400000,"p11.1","acen"],[10400000,10600000,"q11.1","acen"],[10600000,12400000,"q11.21","gneg"],[12400000,17100000,"q11.221","gpos50"],[17100000,19600000,"q11.222","gneg"],[19600000,23800000,"q11.223","gpos50"],[23800000,26600000,"q11.23","gneg"],[26600000,57227415,"q12","gvar"]]}}};CanvasXpress.graphTypes={Alluvial:["Alluvial"],Area:["Area"],AreaLine:["AreaLine"],Bar:["Bar"],BarLine:["BarLine"],Boxplot:["Boxplot"],Bin:["Bin","Scatter2D"],Binplot:["Binplot"],Bubble:["Bubble"],Bullet:["Bullet"],Bump:["Bump"],CDF:["CDF"],Chord:["Chord"],Circular:["Circular"],Cleveland:["Cleveland"],Contour:["Contour"],Correlation:["Correlation"],Density:["Density"],Distribution:["Distribution"],Donut:["Donut"],DotLine:["DotLine"],Dotplot:["Dotplot"],Dumbbell:["Dumbbell"],Fish:["Fish"],Gantt:["Gantt"],Genome:["Genome"],Heatmap:["Heatmap"],Hex:["Hex"],Hexplot:["Hexplot"],Histogram:["Histogram"],KaplanMeier:["KaplanMeier"],Line:["Line"],Lollipop:["Lollipop"],Map:["Map"],Meter:["Meter"],Network:["Network"],ParallelCoordinates:["ParallelCoordinates"],Pareto:["Pareto"],Pie:["Pie"],QQ:["QQ"],Quantile:["Quantile"],Radar:["Radar"],Ribbon:["Ribbon"],Ridgeline:["Ridgeline","Scatter2D"],Sankey:["Sankey"],Scatter2D:["Scatter2D"],Scatter3D:["Scatter3D"],ScatterBubble2D:["ScatterBubble2D"],Spaghetti:["Spaghetti"],SPLOM:["SPLOM"],Stacked:["Stacked"],StackedLine:["StackedLine"],StackedPercent:["StackedPercent"],StackedPercentLine:["StackedPercentLine"],Streamgraph:["Streamgraph"],Sunburst:["Sunburst"],TagCloud:["TagCloud"],TimeSeries:["TimeSeries"],Tornado:["Tornado"],Tree:["Tree"],TreeBracket:["TreeBracket"],Treemap:["Treemap"],Upset:["Upset"],Violin:["Violin"],Volcano:["Volcano"],Venn:["Venn"],Waterfall:["Waterfall"],WordCloud:["WordCloud"],AllGraphs:["Alluvial","Area","AreaLine","Bar","BarLine","Boxplot","Bin","Binplot","Bubble","Bullet","Bump","CDF","Chord","Circular","Cleveland","Contour","Correlation","Density","Distribution","Donut","DotLine","Dotplot","Dumbbell","Fish","Gantt","Genome","Heatmap","Hex","Hexplot","Histogram","KaplanMeier","Line","Lollipop","Map","Meter","Network","ParallelCoordinates","Pareto","Pie","QQ","Quantile","Radar","Ribbon","Ridgeline","Sankey","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Stacked","StackedLine","StackedPercent","StackedPercentLine","Streamgraph","Sunburst","TagCloud","TimeSeries","Tornado","Tree","TreeBracket","Treemap","Upset","Violin","Volcano","Venn","Waterfall","WordCloud"],AllGraphsCol:["Alluvial","Area","AreaLine","Bar","BarLine","Boxplot","Bullet","Bubble","Bump","CDF","Circular","Cleveland","Density","Distribution","DotLine","Dotplot","Dumbbell","Gantt","Histogram","KaplanMeier","Line","Lollipop","Map","Network","ParallelCoordinates","Pareto","QQ","Quantile","Radar","Ribbon","Ridgeline","Sankey","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Sunburst","TagCloud","TimeSeries","Tree","TreeBracket","Treemap","Violin","Volcano","Waterfall","WordCloud"],AllGraphsNH:["Area","AreaLine","Bar","BarLine","Boxplot","Bin","Binplot","Bubble","Bullet","Bump","CDF","Chord","Circular","Cleveland","Contour","Correlation","Density","Distribution","Donut","DotLine","Dotplot","Dumbbell","Fish","Gantt","Genome","Hex","Hexplot","Histogram","KaplanMeier","Line","Lollipop","Meter","Network","ParallelCoordinates","Pareto","Pie","QQ","Quantile","Radar","Ridgeline","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Stacked","StackedLine","StackedPercent","StackedPercentLine","Streamgraph","Sunburst","TagCloud","Tornado","TimeSeries","Tree","TreeBracket","Treemap","Violin","Volcano","Venn","Waterfall","WordCloud"],AllGraphsNL:["Area","AreaLine","Bar","BarLine","Boxplot","Bin","Binplot","Bubble","Bullet","Bump","CDF","Chord","Circular","Cleveland","Contour","Correlation","Density","Distribution","Donut","DotLine","Dotplot","Dumbbell","Fish","Gantt","Genome","Heatmap","Hex","Hexplot","Histogram","KaplanMeier","Line","Lollipop","Map","Meter","Network","ParallelCoordinates","Pareto","Pie","QQ","Quantile","Radar","Ridgeline","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Stacked","StackedLine","StackedPercent","StackedPercentLine","Streamgraph","Sunburst","TagCloud","Tornado","TimeSeries","Tree","TreeBracket","Treemap","Upset","Violin","Volcano","Venn","Waterfall","WordCloud"],AllGraphsShpSiz:["Boxplot","Bump","Cleveland","DotLine","Dotplot","Dumbbell","Network","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","TimeSeries","Tree","TreeBracket","Violin","Volcano"],AllGraphsLin:["Bump","Line","Scatter2D"],AreaGraphs:["Area","AreaLine"],AttGraphs:["Bar","BarLine","Boxplot","Cleveland","DotLine","Dotplot","Dumbbell","Gantt","Heatmap","Line","Lollipop","ParallelCoordinates","Pareto","Stacked","StackedLine","StackedPercent","StackedPercentLine","TagCloud","Tornado","Tree","TreeBracket","Treemap","Upset","Violin","Venn","Waterfall","WordCloud"],BarGraphs:["Bar","BarLine","Bullet","Lollipop","Pareto","Waterfall"],BinHexPlots:["Bin","Binplot","Hex","Hexplot","Scatter2D"],BoxplotViolinGraphs:["Boxplot","Violin"],ClusterGraphs:["Area","AreaLine","Bar","BarLine","Boxplot","Circular","Cleveland","Correlation","DotLine","Dotplot","Dumbbell","Heatmap","Line","Stacked","StackedLine","StackedPercent","StackedPercentLine","Tornado","Tree","TreeBracket","Treemap"],CombinationLineGraphs:["AreaLine","BarLine","DotLine","Pareto","StackedLine","StackedPercentLine"],ContourGraphs:["Pareto","Heatmap","Scatter2D"],DecorationGraphs:["Area","AreaLine","Bar","BarLine","Boxplot","Bin","Binplot","Bullet","CDF","Cleveland","Contour","Density","Distribution","DotLine","Dotplot","Dumbbell","Hex","Hexplot","Histogram","KaplanMeier","Line","Lollipop","Network","Pareto","QQ","Quantile","Ridgeline","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Stacked","StackedLine","StackedPercent","StackedPercentLine","TimeSeries","Tornado","Violin","Volcano","Waterfall"],DensityGraphs:["Density","Distribution","Histogram","Ridgeline","Violin"],DotGraphs:["Boxplot","Cleveland","DotLine","Dotplot","Dumbbell","Violin"],EllipseGraphs:["Scatter2D","Scatter3D"],HierarchicalGraphs:["Bubble","Circular","Sunburst","Tree","TreeBracket","TreeBracket"],IdeogramGraphs:["Circular","Genome"],JitterGraphs:["Boxplot","Dotplot","Violin"],LineGraphs:["Area","AreaLine","BarLine","DotLine","Line","ParallelCoordinates","Pareto","StackedLine","StackedPercentLine"],LinkGraphs:["Alluvial","Chord","Ribbon","Sankey"],NonSegregatable:["Alluvial","Bubble","Chord","Circular","Fish","Gantt","Genome","Map","Network","Radar","Ribbon","Sankey","Sunburst","TagCloud","Tree","TreeBracket","Treemap","Venn","WordCloud"],OneDGraphs:["Area","AreaLine","Bar","BarLine","Boxplot","Bullet","Cleveland","DotLine","Dotplot","Dumbbell","Gantt","Heatmap","Line","Lollipop","Meter","ParallelCoordinates","Pareto","Stacked","StackedLine","StackedPercent","StackedPercentLine","TagCloud","Tornado","Tree","TreeBracket","Treemap","Upset","Violin","Waterfall","WordCloud"],OneDGraphsGrp:["Bar","BarLine","Boxplot","Cleveland","DotLine","Dotplot","Dumbbell","Line","Pareto","Treemap","Violin","Waterfall"],OneDGraphsNR:["Area","AreaLine","Bar","BarLine","Boxplot","Bullet","Cleveland","DotLine","Dotplot","Dumbbell","Line","Lollipop","ParallelCoordinates","Pareto","Waterfall"],OneTwoThreeeDGraphs:["Alluvial","Area","AreaLine","Bar","BarLine","Boxplot","Bin","Binplot","Bubble","Bullet","CDF","Chord","Circular","Cleveland","Contour","Correlation","Density","Distribution","Donut","DotLine","Dotplot","Dumbbell","Fish","Gantt","Heatmap","Hex","Hexplot","Histogram","KaplanMeier","Line","Lollipop","Map","Meter","ParallelCoordinates","Pareto","Pie","QQ","Quantile","Radar","Ribbon","Ridgeline","Sankey","Scatter2D","Scatter3D","ScatterBubble2D","Spaghetti","SPLOM","Stacked","StackedLine","StackedPercent","StackedPercentLine","Streamgraph","Sunburst","TagCloud","Tornado","TimeSeries","Tree","TreeBracket","Treemap","Upset","Violin","Volcano","Waterfall","WordCloud"],OverlayGraphs:["Bar","BarLine","Boxplot","Bullet","Cleveland","DotLine","Dotplot","Dumbbell","Heatmap","Line","Lollipop","Pareto","Stacked","StackedLine","StackedPercent","StackedPercentLine","Tornado","Violin","Waterfall"],RangeGraphs:["Bar","Bullet","Meter"],SankeyGraphs:["Alluvial","Ribbon","Sankey"],ScatterGraphs:["Bin","Binplot","Bump","CDF","Contour","Density","Distribution","Hex","Hexplot","Histogram","KaplanMeier","QQ","Quantile","Ridgeline","Scatter2D","ScatterBubble2D","Scatter3D","Spaghetti","SPLOM","Streamgraph","TimeSeries","Volcano"],ScatterGraphsND:["Bin","Binplot","Hex","Hexplot","Scatter2D","ScatterBubble2D","Scatter3D","Spaghetti","SPLOM","TimeSeries","Volcano"],Scatter2Graphs:["Bin","Binplot","Bump","CDF","Contour","Density","Distribution","Hex","Hexplot","Histogram","KaplanMeier","QQ","Quantile","Ridgeline","Scatter2D","ScatterBubble2D","Spaghetti","SPLOM","Streamgraph","TimeSeries","Volcano"],Scatter2GraphsPlus:["Bin","Binplot","Bump","CDF","Contour","Density","Distribution","Donut","Hex","Hexplot","Histogram","KaplanMeier","QQ","Quantile","Ridgeline","Scatter2D","ScatterBubble2D","Spaghetti","SPLOM","Streamgraph","TimeSeries","Volcano"],Scatter2Bump:["Bump","Scatter2D"],Scatter3DGraphs:["Bar","Network","Scatter3D"],Scatter3DGraphsNB:["Network","Scatter3D"],Scatter3DGraphsNN:["Bar","Scatter3D"],SortGraphs:["Area","AreaLine","Bar","BarLine","Boxplot","Bullet","Cleveland","DotLine","Dotplot","Dumbbell","Line","Lollipop","Pareto","Stacked","StackedLine","StackedPercent","StackedPercentLine","Tornado","Violin","Waterfall"],StackedGraphs:["Stacked","StackedLine","StackedPercent","StackedPercentLine","Tornado"],SquareOneDGraphs:["Bar","BarLine","Boxplot","Bullet","Pareto","Stacked","StackedLine","StackedPercent","StackedPercentLine","Tornado","Waterfall"],ThreeDGraphs:["ScatterBubble2D","Scatter3D"],TwoThreeeDGraphs:["Bin","Binplot","CDF","Contour","Density","Distribution","Hex","Hexplot","Histogram","KaplanMeier","QQ","Quantile","Ridgeline","Scatter2D","ScatterBubble2D","Scatter3D","Spaghetti","SPLOM","Streamgraph","TimeSeries","Volcano"],VolcanoPlus:["Volcano","Scatter2D"]};CanvasXpress.Rdatasets=false;CanvasXpress.colorNames={aliceblue:"f0f8ff",antiquewhite1:"ffefdb",antiquewhite2:"eedfcc",antiquewhite3:"cdc0b0",antiquewhite4:"8b8378",antiquewhite:"faebd7",aqua:"00ffff",aquamarine1:"7fffd4",aquamarine2:"76eec6",aquamarine4:"458b74",aquamarine:"7fffd4",azure1:"f0ffff",azure2:"e0eeee",azure3:"c1cdcd",azure4:"838b8b",azure:"f0ffff",beige:"f5f5dc",bisque1:"ffe4c4",bisque2:"eed5b7",bisque3:"cdb79e",bisque4:"8b7d6b",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blue1:"0000ff",blue2:"0000ee",blue3:"1874cd",blue4:"00008b",blueviolet:"8a2be2",brown1:"ff4040",brown2:"ee3b3b",brown3:"cd3333",brown4:"8b2323",brown:"a52a2a",burlywood1:"ffd39b",burlywood2:"eec591",burlywood3:"cdaa7d",burlywood4:"8b7355",burlywood:"deb887",cadetblue1:"98f5ff",cadetblue2:"8ee5ee",cadetblue3:"7ac5cd",cadetblue4:"53868b",cadetblue:"5f9ea0",chartreuse1:"7fff00",chartreuse2:"76ee00",chartreuse3:"66cd00",chartreuse4:"458b00",chartreuse:"7fff00",chocolate1:"ff7f24",chocolate2:"ee7621",chocolate3:"cd661d",chocolate:"d2691e",coral1:"ff7256",coral2:"ee6a50",coral3:"cd5b45",coral4:"8b3e2f",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk1:"fff8dc",cornsilk2:"eee8cd",cornsilk3:"cdc8b1",cornsilk4:"8b8878",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",cyan1:"00ffff",cyan2:"00eeee",cyan3:"00cdcd",cyan4:"008b8b",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod1:"ffb90f",darkgoldenrod2:"eead0e",darkgoldenrod3:"cd950c",darkgoldenrod4:"8b6508",darkgoldenrod4:"8b6508",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen1:"caff70",darkolivegreen2:"bcee68",darkolivegreen3:"a2cd5a",darkolivegreen4:"6e8b3d",darkolivegreen:"556b2f",darkorange1:"ff7f00",darkorange2:"ee7600",darkorange3:"cd6600",darkorange4:"8b4500",darkorange:"ff8c00",darkorchid1:"bf3eff",darkorchid2:"b23aee",darkorchid3:"9a32cd",darkorchid4:"68228b",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen1:"c1ffc1",darkseagreen2:"b4eeb4",darkseagreen3:"9bcd9b",darkseagreen4:"698b69",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray1:"97ffff",darkslategray2:"8deeee",darkslategray:"2f4f4f",darkslategray3:"79cdcd",darkslategray4:"528b8b",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink1:"ff1493",deeppink2:"ee1289",deeppink3:"cd1076",deeppink4:"8b0a50",deeppink:"ff1493",deepskyblue:"00bfff",deepskyblue1:"00bfff",deepskyblue2:"00b2ee",deepskyblue3:"009acd",deepskyblue4:"00688b",dimgray:"696969",dimgrey:"696969",dodgerblue1:"1e90ff",dodgerblue:"1e90ff",dodgerblue2:"1c86ee",dodgerblue3:"1874cd",dodgerblue4:"104e8b",firebrick1:"ff3030",firebrick2:"ee2c2c",firebrick3:"cd2626",firebrick4:"8b1a1a",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold1:"ffd700",gold2:"eec900",gold3:"cdad00",gold4:"8b7500",goldenrod1:"ffc125",goldenrod2:"eeb422",goldenrod3:"cd9b1d",goldenrod4:"8b6914",goldenrod:"daa520",goldenrod:"daa520",gold:"ffd700",gray10:"1a1a1a",gray1:"030303",gray11:"1c1c1c",gray12:"1f1f1f",gray13:"212121",gray14:"242424",gray15:"262626",gray16:"292929",gray17:"2b2b2b",gray18:"2e2e2e",gray19:"303030",gray20:"333333",gray2:"050505",gray21:"363636",gray22:"383838",gray23:"3b3b3b",gray24:"3d3d3d",gray25:"404040",gray26:"424242",gray27:"454545",gray28:"474747",gray29:"4a4a4a",gray30:"4d4d4d",gray3:"080808",gray31:"4f4f4f",gray32:"525252",gray33:"545454",gray34:"575757",gray35:"595959",gray36:"5c5c5c",gray37:"5e5e5e",gray38:"616161",gray39:"636363",gray40:"666666",gray4:"0a0a0a",gray41:"696969",gray42:"6b6b6b",gray43:"6e6e6e",gray44:"707070",gray45:"737373",gray46:"757575",gray47:"787878",gray48:"7a7a7a",gray49:"7d7d7d",gray50:"7f7f7f",gray5:"0d0d0d",gray51:"828282",gray52:"858585",gray53:"878787",gray54:"8a8a8a",gray55:"8c8c8c",gray56:"8f8f8f",gray57:"919191",gray58:"949494",gray59:"969696",gray60:"999999",gray6:"0f0f0f",gray61:"9c9c9c",gray62:"9e9e9e",gray63:"a1a1a1",gray64:"a3a3a3",gray65:"a6a6a6",gray66:"a8a8a8",gray67:"ababab",gray68:"adadad",gray69:"b0b0b0",gray70:"b3b3b3",gray7:"121212",gray71:"b5b5b5",gray72:"b8b8b8",gray73:"bababa",gray74:"bdbdbd",gray75:"bfbfbf",gray76:"c2c2c2",gray77:"c4c4c4",gray78:"c7c7c7",gray79:"c9c9c9",gray:"808080",gray80:"cccccc",gray8:"141414",gray81:"cfcfcf",gray82:"d1d1d1",gray83:"d4d4d4",gray84:"d6d6d6",gray85:"d9d9d9",gray86:"dbdbdb",gray87:"dedede",gray88:"e0e0e0",gray89:"e3e3e3",gray90:"e5e5e5",gray9:"171717",gray91:"e8e8e8",gray92:"ebebeb",gray93:"ededed",gray94:"f0f0f0",gray95:"f2f2f2",gray97:"f7f7f7",gray98:"fafafa",gray99:"fcfcfc",gray:"bebebe",green:"008000",green1:"00ff00",green2:"00ee00",green3:"00cd00",green4:"008b00",greenyellow:"adff2f",grey10:"1a1a1a",grey1:"030303",grey11:"1c1c1c",grey12:"1f1f1f",grey13:"212121",grey14:"242424",grey15:"262626",grey16:"292929",grey17:"2b2b2b",grey18:"2e2e2e",grey19:"303030",grey20:"333333",grey2:"050505",grey21:"363636",grey22:"383838",grey23:"3b3b3b",grey24:"3d3d3d",grey25:"404040",grey26:"424242",grey27:"454545",grey28:"474747",grey29:"4a4a4a",grey30:"4d4d4d",grey3:"080808",grey31:"4f4f4f",grey32:"525252",grey33:"545454",grey34:"575757",grey35:"595959",grey36:"5c5c5c",grey37:"5e5e5e",grey38:"616161",grey39:"636363",grey40:"666666",grey4:"0a0a0a",grey41:"696969",grey42:"6b6b6b",grey43:"6e6e6e",grey44:"707070",grey45:"737373",grey46:"757575",grey47:"787878",grey48:"7a7a7a",grey49:"7d7d7d",grey50:"7f7f7f",grey5:"0d0d0d",grey51:"828282",grey52:"858585",grey53:"878787",grey54:"8a8a8a",grey55:"8c8c8c",grey56:"8f8f8f",grey57:"919191",grey58:"949494",grey59:"969696",grey60:"999999",grey6:"0f0f0f",grey61:"9c9c9c",grey62:"9e9e9e",grey63:"a1a1a1",grey64:"a3a3a3",grey65:"a6a6a6",grey66:"a8a8a8",grey67:"ababab",grey68:"adadad",grey69:"b0b0b0",grey70:"b3b3b3",grey7:"121212",grey71:"b5b5b5",grey72:"b8b8b8",grey73:"bababa",grey74:"bdbdbd",grey75:"bfbfbf",grey76:"c2c2c2",grey77:"c4c4c4",grey78:"c7c7c7",grey79:"c9c9c9",grey:"808080",grey80:"cccccc",grey8:"141414",grey81:"cfcfcf",grey82:"d1d1d1",grey83:"d4d4d4",grey84:"d6d6d6",grey85:"d9d9d9",grey86:"dbdbdb",grey87:"dedede",grey88:"e0e0e0",grey89:"e3e3e3",grey90:"e5e5e5",grey9:"171717",grey91:"e8e8e8",grey92:"ebebeb",grey93:"ededed",grey94:"f0f0f0",grey95:"f2f2f2",grey97:"f7f7f7",grey98:"fafafa",grey99:"fcfcfc",grey:"808080",honeydew1:"f0fff0",honeydew2:"e0eee0",honeydew3:"c1cdc1",honeydew4:"838b83",honeydew:"f0fff0",hotpink1:"ff6eb4",hotpink2:"ee6aa7",hotpink3:"cd6090",hotpink4:"8b3a62",hotpink:"ff69b4",indianred1:"ff6a6a",indianred2:"ee6363",indianred3:"cd5555",indianred4:"8b3a3a",indianred:"cd5c5c",indigo:"4b0082",ivory1:"fffff0",ivory2:"eeeee0",ivory3:"cdcdc1",ivory4:"8b8b83",ivory:"fffff0",khaki1:"fff68f",khaki2:"eee685",khaki3:"cdc673",khaki4:"8b864e",khaki:"f0e68c",lavenderblush1:"fff0f5",lavenderblush2:"eee0e5",lavenderblush3:"cdc1c5",lavenderblush4:"8b8386",lavenderblush:"fff0f5",lavender:"e6e6fa",lawngreen:"7cfc00",lemonchiffon1:"fffacd",lemonchiffon2:"eee9bf",lemonchiffon3:"cdc9a5",lemonchiffon4:"8b8970",lemonchiffon:"fffacd",lightblue1:"bfefff",lightblue2:"b2dfee",lightblue3:"9ac0cd",lightblue4:"68838b",lightblue:"add8e6",lightcoral:"f08080",lightcyan1:"e0ffff",lightcyan2:"d1eeee",lightcyan3:"b4cdcd",lightcyan4:"7a8b8b",lightcyan:"e0ffff",light:"eedd82",lightgoldenrod1:"ffec8b",lightgoldenrod2:"eedc82",lightgoldenrod3:"cdbe70",lightgoldenrod4:"8b814c",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink1:"ffaeb9",lightpink2:"eea2ad",lightpink3:"cd8c95",lightpink4:"8b5f65",lightpink:"ffb6c1",lightsalmon1:"ffa07a",lightsalmon2:"ee9572",lightsalmon3:"cd8162",lightsalmon4:"8b5742",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue1:"b0e2ff",lightskyblue2:"a4d3ee",lightskyblue3:"8db6cd",lightskyblue4:"607b8b",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightslategrey:"778899",lightsteelblue1:"cae1ff",lightsteelblue2:"bcd2ee",lightsteelblue3:"a2b5cd",lightsteelblue4:"6e7b8b",lightsteelblue:"b0c4de",lightyellow1:"ffffe0",lightyellow2:"eeeed1",lightyellow3:"cdcdb4",lightyellow4:"8b8b7a",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta2:"ee00ee",magenta3:"cd00cd",magenta4:"8b008b",magenta:"ff00ff",maroon1:"ff34b3",maroon2:"ee30a7",maroon3:"cd2990",maroon4:"8b1c62",maroon:"800000",maroon:"b03060",medium:"66cdaa",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid1:"e066ff",mediumorchid2:"d15fee",mediumorchid3:"b452cd",mediumorchid4:"7a378b",mediumorchid:"ba55d3",mediumpurple1:"ab82ff",mediumpurple2:"9f79ee",mediumpurple3:"8968cd",mediumpurple4:"5d478b",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose1:"ffe4e1",mistyrose2:"eed5d2",mistyrose3:"cdb7b5",mistyrose4:"8b7d7b",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite1:"ffdead",navajowhite2:"eecfa1",navajowhite3:"cdb38b",navajowhite4:"8b795e",navajowhite:"ffdead",navy:"000080",navyblue:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab1:"c0ff3e",olivedrab2:"b3ee3a",olivedrab4:"698b22",olivedrab:"6b8e23",orange1:"ffa500",orange2:"ee9a00",orange3:"cd8500",orange4:"8b5a00",orange:"ffa500",orangered1:"ff4500",orangered2:"ee4000",orangered3:"cd3700",orangered4:"8b2500",orangered:"ff4500",orchid1:"ff83fa",orchid2:"ee7ae9",orchid3:"cd69c9",orchid4:"8b4789",orchid:"da70d6",pale:"db7093",palegoldenrod:"eee8aa",palegreen1:"9aff9a",palegreen2:"90ee90",palegreen3:"7ccd7c",palegreen4:"548b54",palegreen:"98fb98",paleturquoise1:"bbffff",paleturquoise2:"aeeeee",paleturquoise3:"96cdcd",paleturquoise4:"668b8b",paleturquoise:"afeeee",palevioletred1:"ff82ab",palevioletred2:"ee799f",palevioletred3:"cd6889",palevioletred4:"8b475d",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff1:"ffdab9",peachpuff2:"eecbad",peachpuff3:"cdaf95",peachpuff4:"8b7765",peachpuff:"ffdab9",peru:"cd853f",pink1:"ffb5c5",pink2:"eea9b8",pink3:"cd919e",pink4:"8b636c",pink:"ffc0cb",plum1:"ffbbff",plum2:"eeaeee",plum3:"cd96cd",plum4:"8b668b",plum:"dda0dd",powderblue:"b0e0e6",purple1:"9b30ff",purple2:"912cee",purple3:"7d26cd",purple4:"551a8b",purple:"800080",purple:"a020f0",rebeccapurple:"663399",red1:"ff0000",red2:"ee0000",red3:"cd0000",red4:"8b0000",red:"ff0000",rosybrown1:"ffc1c1",rosybrown2:"eeb4b4",rosybrown3:"cd9b9b",rosybrown4:"8b6969",rosybrown:"bc8f8f",royalblue1:"4876ff",royalblue2:"436eee",royalblue3:"3a5fcd",royalblue:"4169e1",royalblue4:"27408b",saddlebrown:"8b4513",salmon1:"ff8c69",salmon2:"ee8262",salmon3:"cd7054",salmon4:"8b4c39",salmon:"fa8072",sandybrown:"f4a460",seagreen1:"54ff9f",seagreen2:"4eee94",seagreen:"2e8b57",seagreen3:"43cd80",seagreen4:"2e8b57",seashell1:"fff5ee",seashell2:"eee5de",seashell3:"cdc5bf",seashell4:"8b8682",seashell:"fff5ee",sienna1:"ff8247",sienna2:"ee7942",sienna3:"cd6839",sienna4:"8b4726",sienna:"a0522d",silver:"c0c0c0",skyblue1:"87ceff",skyblue2:"7ec0ee",skyblue3:"6ca6cd",skyblue4:"4a708b",skyblue:"87ceeb",slateblue1:"836fff",slateblue2:"7a67ee",slateblue3:"6959cd",slateblue4:"473c8b",slateblue:"6a5acd",slategray1:"c6e2ff",slategray2:"b9d3ee",slategray3:"9fb6cd",slategray4:"6c7b8b",slategray:"708090",slategrey:"708090",snow1:"fffafa",snow2:"eee9e9",snow3:"cdc9c9",snow4:"8b8989",snow:"fffafa",springgreen:"00ff7f",springgreen1:"00ff7f",springgreen2:"00ee76",springgreen3:"00cd66",springgreen4:"008b45",steelblue1:"63b8ff",steelblue2:"5cacee",steelblue3:"4f94cd",steelblue4:"36648b",steelblue:"4682b4",tan1:"ffa54f",tan2:"ee9a49",tan3:"cd853f",tan4:"8b5a2b",tan:"d2b48c",teal:"008080",thistle1:"ffe1ff",thistle2:"eed2ee",thistle3:"cdb5cd",thistle4:"8b7b8b",thistle:"d8bfd8",tomato1:"ff6347",tomato2:"ee5c42",tomato3:"cd4f39",tomato4:"8b3626",tomato:"ff6347",turquoise1:"00f5ff",turquoise2:"00e5ee",turquoise3:"00c5cd",turquoise4:"00868b",turquoise:"40e0d0",violet:"ee82ee",violetred1:"ff3e96",violetred2:"ee3a8c",violetred3:"cd3278",violetred4:"8b2252",violetred:"d02090",wheat1:"ffe7ba",wheat2:"eed8ae",wheat3:"cdba96",wheat4:"8b7e66",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow1:"ffff00",yellow2:"eeee00",yellow3:"cdcd00",yellow4:"8b8b00",yellow:"ffff00",yellowgreen:"9acd32"};CanvasXpress.colorWords=["4627f67737371607","465647365647f62705028607162774","475707e6944627f67737371605d28536d2","271656c636","465677f6c6c6160247f6e6022756767657265644","4627f677373716070216028647967702e4f435a402371602566716370247f6e6e61634","d65647379737","27567676572656443796","373756270785371667e61634","4707972736e656","47079727365646","374627f67527f6c6f636","5346d6","47c61637","473756769646","465686361636","4627f67737371607021602864796770274653502371602566716370247f6e6e61634","74e405d6f62764164716445637271607","56c696644616f6c6","56671637","74653556671637","47e6962707","0742","850742","8642","6742","7742","27563777f6272456a796c616964796e696","4642","472756c616","56079747f647f62707","56c6f637e6f636","76f6c6","2756767657265646","5636e616d627f666275607","37569647275607f6270556e696665646","e6f696471636f6c6","56d616e64737f686","473656a626f4","57e656d647875647e6f636","57e656d647875647e6f636e6f6","07f64737","0476e696274735f647","27f6272754","4787564577162746","27f6c6f63447e6f666","5646f6e43796","373756c6461656843796","47361656253796","46562756473796765627"];CanvasXpress.salt="7A64D88308227186991C253EA";CanvasXpress.ambiguityCodes={"-":["-"],A:["A"],C:["C"],G:["G"],T:["T"],M:["A","C"],R:["A","G"],W:["A","T"],S:["C","G"],Y:["C","T"],K:["G","T"],V:["A","C","G"],H:["A","C","T"],D:["A","G","T"],B:["C","G","T"],N:["A","C","G","T"],X:["A","C","G","T"]};CanvasXpress.codon={TTT:["F","Phe","Phenylalanine"],TCT:["S","Ser","Serine"],TAT:["Y","Tyr","Tyrosine"],TGT:["C","Cys","Cysteine"],TTC:["F","Phe","Phenylalanine"],TCC:["S","Ser","Serine"],TAC:["Y","Tyr","Tyrosine"],TGC:["C","Cys","Cysteine"],TTA:["L","Leu","Leucine"],TCA:["S","Ser","Serine"],TAA:["*","Stop","Ochre"],TGA:["*","Stop","Opal"],TTG:["L","Leu","Leucine"],TCG:["S","Ser","Serine"],TAG:["*","Stop","Amber"],TGG:["W","Trp","Tryptophan"],CTT:["L","Leu","Leucine"],CCT:["P","Pro","Proline"],CAT:["H","His","Histidine"],CGT:["R","Arg","Arginine"],CTC:["L","Leu","Leucine"],CCC:["P","Pro","Proline"],CAC:["H","His","Histidine"],CGC:["R","Arg","Arginine"],CTA:["L","Leu","Leucine"],CCA:["P","Pro","Proline"],CAA:["Q","Gln","Glutamine"],CGA:["R","Arg","Arginine"],CTG:["L","Leu","Leucine"],CCG:["P","Pro","Proline"],CAG:["Q","Gln","Glutamine"],CGG:["R","Arg","Arginine"],ATT:["I","Ile","Isoleucine"],ACT:["T","Thr","Threonine"],AAT:["N","Asn","Asparagine"],AGT:["S","Ser","Serine"],ATC:["I","Ile","Isoleucine"],ACC:["T","Thr","Threonine"],AAC:["N","Asn","Asparagine"],AGC:["S","Ser","Serine"],ATA:["I","Ile","Isoleucine"],ACA:["T","Thr","Threonine"],AAA:["K","Lys","Lysine"],AGA:["R","Arg","Arginine"],ATG:["M","Met","Methionine"],ACG:["T","Thr","Threonine"],AAG:["K","Lys","Lysine"],AGG:["R","Arg","Arginine"],GTT:["V","Val","Valine"],GCT:["A","Ala","Alanine"],GAT:["D","Asp","Aspartic acid"],GGT:["G","Gly","Glycine"],GTC:["V","Val","Valine"],GCC:["A","Ala","Alanine"],GAC:["D","Asp","Aspartic acid"],GGC:["G","Gly","Glycine"],GTA:["V","Val","Valine"],GCA:["A","Ala","Alanine"],GAA:["E","Glu","Glutamic acid"],GGA:["G","Gly","Glycine"],GTG:["V","Val","Valine"],GCG:["A","Ala","Alanine"],GAG:["E","Glu","Glutamic acid"],GGG:["G","Gly","Glycine"]};CanvasXpress.reverseComplement={A:"T",C:"G",G:"C",T:"A",U:"A",Y:"R",R:"Y",W:"W",S:"S",K:"M",M:"K",B:"V",V:"B",D:"H",H:"D",X:"X",N:"N",a:"t",c:"g",g:"c",t:"a",u:"a",y:"r",r:"y",w:"w",s:"s",k:"m",m:"k",b:"v",v:"b",d:"h",h:"d",x:"x",n:"n"," ":" ","-":"-","/":"/","[":"[","]":"]"};CanvasXpress.themeParams=["backgroundType","citationAlign","citationColor","citationFontStyle","citationScaleFontFactor","colorScheme","fitLineColor","guidesShow","guidesColor","layoutSpacing","legendBackgroundBorderColor","legendBackgroundColor","legendColumns","legendHorizontalJustification","legendInside","legendKeyBackgroundBorderColor","legendKeyBackgroundColor","legendPosition","legendTextColor","legendTextFontStyle","legendTextScaleFontFactor","legendTitleColor","legendTitleFontStyle","legendTitleScaleFontFactor","lineDecoration","mapOutlineColor","objectBorderColor","panelBackgroundBorderColor","panelBackgroundColor","plotBackgroundBorderColor","plotBackgroundColor","showLegend","showLegendTitle","smpTextRotate","stripBackgroundBorderColor","stripBackgroundColor","stripTextColor","stripTextFontStyle","stripTextScaleFontFactor","subtitleAlign","subtitleColor","subtitleFontStyle","subtitleScaleFontFactor","titleAlign","titleColor","titleFontStyle","titleScaleFontFactor","varTextRotate","rAxisGridMajorColor","rAxisGridMajorLineType","rAxisGridMajorShow","rAxisGridMajorWidth","rAxisGridMinorColor","rAxisGridMinorLineType","rAxisGridMinorShow","rAxisGridMinorWidth","rAxisLineBottomColor","rAxisLineBottomLineType","rAxisLineBottomShow","rAxisLineBottomWidth","rAxisLineTopColor","rAxisLineTopLineType","rAxisLineTopShow","rAxisLineTopWidth","rAxisTextColor","rAxisTextFontStyle","rAxisTextScaleFontFactor","rAxisTicksColor","rAxisTicksLength","rAxisTicksShow","rAxisTitleColor","rAxisTitleFontStyle","rAxisTitleScaleFontFactor","xAxisGridMajorColor","xAxisGridMajorLineType","xAxisGridMajorShow","xAxisGridMajorWidth","xAxisGridMinorColor","xAxisGridMinorLineType","xAxisGridMinorShow","xAxisGridMinorWidth","xAxisLineBottomColor","xAxisLineBottomLineType","xAxisLineBottomShow","xAxisLineBottomWidth","xAxisLineTopColor","xAxisLineTopLineType","xAxisLineTopShow","xAxisLineTopWidth","xAxisTextColor","xAxisTextFontStyle","xAxisTextScaleFontFactor","xAxisTicksColor","xAxisTicksLength","xAxisTicksShow","xAxisTitleColor","xAxisTitleFontStyle","xAxisTitleScaleFontFactor","widthFactor","yAxisGridMajorColor","yAxisGridMajorLineType","yAxisGridMajorShow","yAxisGridMajorWidth","yAxisGridMinorColor","yAxisGridMinorLineType","yAxisGridMinorShow","yAxisGridMinorWidth","yAxisLineLeftColor","yAxisLineLeftLineType","yAxisLineLeftShow","yAxisLineLeftWidth","yAxisLineRightColor","yAxisLineRightLineType","yAxisLineRightShow","yAxisLineRightWidth","yAxisTextColor","yAxisTextFontStyle","yAxisTextScaleFontFactor","yAxisTicksColor","yAxisTicksLength","yAxisTicksShow","yAxisTitleColor","yAxisTitleFontStyle","yAxisTitleScaleFontFactor","zAxisGridMajorColor","zAxisGridMajorLineType","zAxisGridMajorShow","zAxisGridMajorWidth","zAxisGridMinorColor","zAxisGridMinorLineType","zAxisGridMinorShow","zAxisGridMinorWidth","zAxisLineBottomColor","zAxisLineBottomLineType","zAxisLineBottomShow","zAxisLineBottomWidth","zAxisLineTopColor","zAxisLineTopLineType","zAxisLineTopShow","zAxisLineTopWidth","zAxisTextColor","zAxisTextFontStyle","zAxisTextScaleFontFactor","zAxisTicksColor","zAxisTicksLength","zAxisTicksShow","zAxisTitleColor","zAxisTitleFontStyle","zAxisTitleScaleFontFactor"].reduce(function(a,b){a[b]=true;return a},{});CanvasXpress.setThemeDefinitions=function(){var b=[["bw","classic","cx","cxdark","dark","economist","excel","ggblanket","grey","highcharts","light","linedraw","minimal","ptol","solarized","stata","tableau","void0","wsj"],["axis.line","element_blank",,,,"element_blank",,"element_blank",,"element_blank",,"element_blank","element_blank","element_blank","element_blank",,,"element_blank",],["axis.line.arrow",,false,,,,false,,,,,,,,,false,false,,,false],["axis.line.colour",,"#000000",,,,,,,,"#999999",,,,,"#93a1a1",,,],["axis.line.linetype",,,,,,,,,,,,,,,1,,,],["axis.line.linewidth",,1,,,,0.8,,,,1,,,,,,,,],["axis.line.y",,,,,,"element_blank",,,,,,,,,,,,,"element_blank"],["axis.line.y.left",,,"element_blank","element_blank",,,,"element_blank",,,,,,,,,,],["axis.line.y.right",,,"element_blank","element_blank",,,,"element_blank",,,,,,,,,,],["axis.minor.ticks.length",0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0.75,0,0.75],["axis.minor.ticks.y.left",,,,,,,,"element_blank",,,,,,,,,,],["axis.minor.ticks.y.right",,,,,,,,"element_blank",,,,,,,,,,],["axis.text",,,,,,,,,,,,,,,,,,"element_blank"],["axis.text.colour","#4d4d4d","#4d4d4d",,,"#4d4d4d",,"#4d4d4d",,"#4d4d4d","#4d4d4d","#4d4d4d","#000000","#4d4d4d","#4d4d4d","#4d4d4d",,"#4d4d4d",],["axis.text.face",,,,,,,,,,,,,,,,,,,"bold"],["axis.text.r.hjust",0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,,0.5],["axis.text.r.margin",2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.2,2.4,2.4,2.2,,2.4],["axis.text.size",12,12,,,12,11,12,,12,12,12,12,12,12,12,12,12,,12],["axis.text.x.colour",,,,,,,,,,,,,,,,"#000000",,],["axis.text.x.margin",2.2,2.2,11,11,2.2,10,2.2,11,2.2,2.2,2.2,2.2,2.2,2.2,2.4,2.4,2.2,,2.4],["axis.text.x.top.margin",2.2,2.2,3.3,3.3,2.2,10,2.2,3.3,2.2,2.2,2.2,2.2,2.2,2.2,2.4,2.4,2.2,,2.4],["axis.text.x.top.vjust",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,0],["axis.text.x.vjust",1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,,1],["axis.text.y.angle",,,,,,,,,,,,,,,,90,,],["axis.text.y.colour",,,,,,,,,,,,,,,,"#000000",,],["axis.text.y.hjust",1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,,1],["axis.text.y.margin",2.2,2.2,2.75,2.75,2.2,10,2.2,2.75,2.2,2.2,2.2,2.2,2.2,2.2,2.4,2.4,2.2,,2.4],["axis.text.y.right.hjust",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,0],["axis.text.y.right.margin",2.2,2.2,2.75,2.75,2.2,2.2,2.2,2.75,2.2,2.2,2.2,2.2,2.2,2.2,2.4,2.4,2.2,,2.4],["axis.text.y.vjust",,,,,,,,,,,,,,,,0.5,,],["axis.ticks",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["axis.ticks.arrow",false,false,,,false,false,false,,false,,false,false,,,false,false,false,,false],["axis.ticks.colour","#333333","#333333",,,"#333333",,"#333333",,"#333333",,"#b3b3b3","#000000",,,"#93a1a1",,"#333333",],["axis.ticks.length",2.75,2.75,2.75,2.75,2.75,-5,2.75,2.75,2.75,2.75,2.75,2.75,2.75,2.75,3,2.75,2.75,0,3],["axis.ticks.length.x",,,3.66,3.66,,,,3.66,,,,,,,,,,],["axis.ticks.length.y",,,2.75,2.75,,,,2.75,,,,,,,,,,],["axis.ticks.linewidth",,,,,0.5,,,,,,0.5,0.5,,,,,,],["axis.ticks.x.arrow",,,,,,,,,,,,,,,,false,,,false],["axis.ticks.x.colour",,,,,,,,,,,,,,,,"#000000",,],["axis.ticks.y",,,,,,"element_blank",,,,,,,,,,,,,"element_blank"],["axis.ticks.y.arrow",,,,,,,,,,,,,,,,false,,],["axis.ticks.y.colour",,,,,,,,,,,,,,,,"#000000",,],["axis.ticks.y.left",,,"element_blank","element_blank",,,,"element_blank",,,,,,,,,,],["axis.ticks.y.right",,,"element_blank","element_blank",,,,"element_blank",,,,,,,,,,],["axis.title",,,,,,,,,,,,,,,,,,"element_blank","element_blank"],["axis.title.colour",,,,,,,,,,,,,,,,"#000000",,],["axis.title.size",,,,,,12,,,,,,,,,,12,,],["axis.title.x.margin",2.75,2.75,8.25,8.25,2.75,,2.75,8.25,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,,3],["axis.title.x.top.margin",2.75,2.75,11,11,2.75,2.75,2.75,11,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,,3],["axis.title.x.top.vjust",0,0,,,0,0,0,,0,0,0,0,0,0,0,0,0,,0],["axis.title.x.vjust",1,1,,,1,,1,,1,1,1,1,1,1,1,1,1,,1],["axis.title.y.angle",90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,,90],["axis.title.y.margin",2.75,2.75,11,11,2.75,,2.75,11,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,,3],["axis.title.y.right.angle",-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,,-90],["axis.title.y.right.margin",2.75,2.75,11,11,2.75,2.75,2.75,11,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,,3],["axis.title.y.right.vjust",1,1,,,1,1,1,,1,5.5,1,1,5.5,5.5,1,1,1,,1],["axis.title.y.vjust",1,1,,,1,,1,,1,1,1,1,1,1,1,0,1,,1],["legend.background",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["legend.background.colour",null,null,null,null,null,,"#000000",null,null,,null,null,,,null,"#000000",null,,null],["legend.background.linetype",,,,,,0,1,,,,,,,,,1,,],["legend.background.linewidth",5.5,5.5,0,0,5.5,null,null,0,5.5,,5.5,5.5,,,null,null,5.5,,6],["legend.box",,,,,,,,,,,,,,,,"vertical",,,"vertical"],["legend.box.background","element_blank","element_blank",,,"element_blank","element_blank","element_blank",,"element_blank","element_blank","element_blank","element_blank","element_blank","element_blank","element_blank","element_blank","element_blank",,"element_blank"],["legend.box.margin",null,null,0,0,null,null,null,0,null,null,null,null,null,null,null,null,null,,null],["legend.box.spacing",11,11,,,11,11,11,,11,11,11,11,11,11,12,12,11,,12],["legend.byrow",,,false,false,,,,false,,,,,,,,,,],["legend.direction",,,"vertical","vertical",,,,"vertical",,,,,,,,,,,"horizontal"],["legend.justification","center","center","center","center","center","center","center",[0,1],"center","center","center","center","center","center","center","center","center",,"center"],["legend.key",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["legend.key.colour",,,"#FFFFFF","#000000",,,null,"#FFFFFF",,,,,,,,null,,],["legend.key.fill",,,"#FFFFFF","#000000",,,,"#FFFFFF",,,,,,,,"#ffffff",,],["legend.key.linetype",,,,,,0,,,,,,,,,0,0,,],["legend.key.linewidth",,,8.25,8.25,,5.5,5.5,8.25,,,,,,,6,6,,],["legend.key.size",12,12,19.25,19.25,12,12,12,19.25,12,12,12,12,12,12,12,12,12,12,12],["legend.key.spacing",5.5,5.5,,,5.5,5.5,5.5,,5.5,5.5,5.5,5.5,5.5,5.5,6,6,5.5,5.5,6],["legend.key.spacing.x",,,3.6,3.6,,,,3.6,,,,,,,,,,],["legend.key.spacing.y",,,3.6,3.6,,,,3.6,,,,,,,,,,],["legend.location",,,"panel","panel",,,,"panel",,,,,,,,,,],["legend.margin",5.5,5.5,8.25,8.25,5.5,5.5,5.5,8.25,5.5,5.5,5.5,5.5,5.5,5.5,6,6,5.5,,6],["legend.position","right","right","right","right","right","top","right","right","right","right","right","right","right","right","right","bottom","right","right","top"],["legend.spacing",11,11,11,11,11,15,11,11,11,11,11,11,11,11,12,0.25,11,,12],["legend.text.margin",,,5.5,5.5,,,,5.5,,,,,,,,,,],["legend.text.size",12,12,,,12,16,12,,12,12,12,12,12,12,12,12,12,12,12],["legend.ticks.length",0.2,0.2,3.4,3.4,0.2,0.2,0.2,3.4,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2],["legend.title.hjust",0,0,,,0,0,0,,0,0,0,0,0,0,0,0.5,0,0,0],["legend.title.margin",,,5.5,5.5,,,,5.5,,,,,,,,,,],["legend.title.position",,,"top","top",,,,"top",,,,,,,,,,],["legend.title.size",,,,,,12,,,,,,,,,,14,,],["line",,,,,,,,,,,,,,,,,,"element_blank"],["line.arrow",false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,,false],["line.colour","#000000","#000000","#121B24","#FFFFFF","#000000","#000000","#000000","#121B24","#000000","#000000","#000000","#000000","#000000","#000000","#93a1a1","#000000","#000000",,"#000000"],["line.lineend","butt","butt","square","square","butt",,"butt","square","butt","butt","butt","butt","butt","butt","butt","butt","butt",,"butt"],["line.linetype",1,1,1,1,1,,1,1,1,1,1,1,1,1,1,1,1,,1],["line.linewidth",0.5,0.5,0.33,0.33,0.5,,0.5,0.33,0.5,0.5,0.5,0.5,0.5,0.5,0.55,0.5,0.5,,0.55],["panel.background",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["panel.background.colour",null,null,"#FFFFFF","#000000",null,,null,"#FFFFFF",null,,null,null,,,"#93a1a1",null,null,],["panel.background.fill","#ffffff","#ffffff","#FFFFFF","#000000","#7f7f7f",,"#C0C0C0","#FFFFFF","#ebebeb",,"#ffffff","#ffffff",,,"#fdf6e3","#ffffff","#ebebeb",],["panel.background.linetype",,,,,,0,,,,,,,,,,1,,],["panel.border",,"element_blank","element_blank","element_blank","element_blank","element_blank",,"element_blank","element_blank","element_blank",,,"element_blank","element_blank","element_blank","element_blank","element_blank",],["panel.border.colour","#333333",,,,,,"#000000",,,,"#b3b3b3","#000000",,,,,,],["panel.border.fill",null,,,,,,null,,,,null,null,,,,,,,null],["panel.border.linetype",,,,,,,1,,,,,,,,,,,],["panel.border.linewidth",,,,,,,,,,,1,1,,,,,,],["panel.grid.arrow",false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,,false],["panel.grid.colour","#ebebeb","#ebebeb","#F6F8FA","#F6F8FA","#6b6b6b","#ffffff","#ebebeb","#F6F8FA","#ffffff","#ebebeb","#dedede","#000000","#ebebeb","#ebebeb","#eee8d5",,"#ffffff",],["panel.grid.linetype",,,,,,,,,,,,,,,,,,,3],["panel.grid.linewidth",,,1,1,,,,4,,,,,,,,,,],["panel.grid.major",,"element_blank",,,,,,,,,,,,,,,,],["panel.grid.major.arrow",,,,,false,false,false,,,,false,false,,,false,false,,,false],["panel.grid.major.colour",,,,,,"#ffffff","#000000",,,,,,,,"#eee8d5","#eaf2f3",,,"#000000"],["panel.grid.major.linewidth",,,,,0.5,1.75,,,,,0.5,0.1,,,,,,],["panel.grid.major.x",,,,,,"element_blank","element_blank","element_blank",,,,,,,,"element_blank",,,"element_blank"],["panel.grid.minor",,"element_blank","element_blank","element_blank",,"element_blank","element_blank","element_blank",,,,,,,,"element_blank",,,"element_blank"],["panel.grid.minor.arrow",false,,,,false,,,,false,false,false,false,false,false,false,,false,],["panel.grid.minor.colour",,,,,,,,,,,,,,,"#eee8d5",,,],["panel.grid.minor.linewidth",0.5,,,,0.25,,,,0.5,0.5,0.25,0.05,0.5,0.5,0.5,,0.5,],["panel.grid.minor.x",,,"element_blank","element_blank",,,,"element_blank",,,,,,,,,,],["panel.ontop",false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],["panel.spacing",5.5,5.5,22,22,5.5,5.5,5.5,22,5.5,5.5,5.5,5.5,5.5,5.5,6,5.5,5.5,5.5,6],["plot.background",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["plot.background.colour","#ffffff","#ffffff",,"#000000","#ffffff",null,"#ffffff",,"#ffffff",,"#ffffff","#ffffff",,,null,null,"#ffffff",],["plot.background.fill",,,,"#000000",,"#d5e4eb",,,,,,,,,,"#eaf2f3",,],["plot.background.linetype",,,,,,,,,,,,,,,0,0,,],["plot.caption.colour",,,"#121B24","#FFFFFF",,,,"#121B24",,,,,,,,,,],["plot.caption.hjust",1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,0,1,1,1],["plot.caption.margin",5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,5.5,6,6,5.5,5.5,6],["plot.caption.position","panel","panel","plot","plot","panel","panel","panel","plot","panel","panel","panel","panel","panel","panel","panel","panel","panel","panel","panel"],["plot.caption.size",12,12,10,10,12,12,12,10,12,12,12,12,12,12,12,10,12,12,12],["plot.caption.vjust",5.5,5.5,22,22,5.5,12,5.5,22,5.5,5.5,5.5,5.5,5.5,5.5,6,null,5.5,null,null],["plot.margin",5.5,5.5,22,22,5.5,12,5.5,22,5.5,5.5,5.5,5.5,5.5,5.5,6,null,5.5,null,null],["plot.subtitle.hjust",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.5,0,0,0],["plot.subtitle.margin",5.5,5.5,22,22,5.5,5.5,5.5,22,5.5,5.5,5.5,5.5,5.5,5.5,6,6,5.5,5.5,6],["plot.subtitle.size",,,,,,,,,,,,,,,,12,,],["plot.subtitle.vjust",1,1,,,1,1,1,,1,1,1,1,1,1,1,1,1,1,1],["plot.tag.hjust",0.5,0.5,0,0,0.5,0.5,0.5,0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5],["plot.tag.position","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft","topleft"],["plot.tag.size",14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14],["plot.tag.vjust",0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5],["plot.title.face",,,"bold","bold",,"bold",,"bold",,,,,,,,,,,"bold"],["plot.title.hjust",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.5,0,0,0],["plot.title.margin",5.5,5.5,27.5,27.5,5.5,,5.5,27.5,5.5,5.5,5.5,5.5,5.5,5.5,6,6,5.5,5.5,6],["plot.title.position","panel","panel","plot","plot","panel","panel","panel","plot","panel","panel","plot","panel","panel","panel","panel","panel","panel","panel","panel"],["plot.title.size",12,12,14,14,12,20,12,14,12,12,12,12,12,12,12,12,12,12,12],["plot.title.vjust",1,1,,,1,,1,,1,1,1,1,1,1,1,1,1,1,1],["rect",,,,,,,,,,,,,,,,,,"element_blank"],["rect.colour","#000000","#000000","#FFFFFF","#FFFFFF","#000000",null,"#000000","#FFFFFF","#000000","#000000","#000000","#000000","#000000","#000000","#93a1a1","#000000","#000000",,null],["rect.fill","#ffffff","#ffffff","#FFFFFF","#FFFFFF","#ffffff",null,"#ffffff","#FFFFFF","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#fdf6e3","#ffffff","#ffffff",,"#f8f2e4"],["rect.linetype",1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,,0],["rect.linewidth",0.5,0.5,0.33,0.33,0.5,,0.5,0.33,0.5,0.5,0.5,0.5,0.5,0.5,0.55,0.5,0.5,,0.55],["strip.background",,,,,,,,,,"element_blank",,,"element_blank","element_blank",,,,],["strip.background.colour","#333333","#000000",null,null,null,null,null,null,null,,null,,,,"#333333",null,null,],["strip.background.fill","#d9d9d9","#ffffff",null,null,"#262626",null,"#ffffff",null,"#d9d9d9",,"#b3b3b3","#000000",,,"#d9d9d9","#d9e6eb","#d9d9d9",],["strip.background.linetype",,,,,,0,0,,,,,,,,,1,,],["strip.background.linewidth",,2,,,,,,,,,,,,,,,,],["strip.clip","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit","inherit"],["strip.placement","inside","inside","outside","outside","inside","inside","inside","outside","inside","inside","inside","inside","inside","inside","inside","inside","inside",,"inside"],["strip.switch.pad.grid",2.75,2.75,0.15,0.15,2.75,2.75,2.75,0.15,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,2.75,3],["strip.switch.pad.wrap",2.75,2.75,0.15,0.15,2.75,2.75,2.75,0.15,2.75,2.75,2.75,2.75,2.75,2.75,3,3,2.75,2.75,3],["strip.text.colour","#1a1a1a","#1a1a1a",,,"#e5e5e5",,"#1a1a1a",,"#1a1a1a","#1a1a1a","#ffffff","#ffffff","#1a1a1a","#1a1a1a","#1a1a1a",,"#1a1a1a",],["strip.text.margin",4.4,4.4,7.26,7.26,4.4,,4.4,7.26,4.4,4.4,4.4,4.4,4.4,4.4,4.8,4.8,4.4,,4.8],["strip.text.size",12,12,,,12,16,12,,12,12,12,12,12,12,12,12,12,12,12],["strip.text.x.bottom.margin",,,11,11,,,,11,,,,,,,,,,],["strip.text.x.vjust",,,,,,,,,,,,,,,,0.5,,],["strip.text.y.angle",-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,-90,,-90],["strip.text.y.left.angle",90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,,90],["strip.text.y.left.margin",,,7.3333,7.3333,,,,7.3333,,,,,,,,,,],["strip.text.y.margin",,,7.3333,7.3333,,,,7.3333,,,,,,,,,,],["text.angle",0,0,0,0,0,,0,0,0,0,0,0,0,0,0,0,0,0,0],["text.colour","#000000","#000000","#121B24","#FFFFFF","#000000","#000000","#000000","#121B24","#000000","#000000","#000000","#000000","#000000","#000000","#93a1a1","#000000","#000000","#000000","#000000"],["text.debug",false,false,false,false,false,,false,false,false,false,false,false,false,false,false,false,false,false,false],["text.face","plain","plain","plain","plain","plain",,"plain","plain","plain","plain","plain","plain","plain","plain","plain","plain","plain","plain","plain"],["text.family",,,,,,,,,,,,,,,,"sans",,,"sans"],["text.hjust",0.5,0.5,0.5,0.5,0.5,,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5],["text.lineheight",0.9,0.9,0.9,0.9,0.9,,0.9,0.9,0.9,0.9,0.9,0.9,0.9,0.9,0.9,1,0.9,0.9,0.9],["text.margin",0,0,0,0,0,,0,0,0,0,0,0,0,0,0,0,0,0,0],["text.size",12,12,12,12,12,,12,12,12,12,12,12,12,12,12,12,12,12,12],["text.vjust",0.5,0.5,0.5,0.5,0.5,,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1,0.5,0.5,0.5],["title.colour",,,,,,,,,,,,,,,"#657b83","#1e2d53",,],["title.family",,,,,,,,,,,,,,,,,,,"mono"],["title.size",,,,,,,,,,,,,,,,,,,24]];CanvasXpress.themeDef={};var a=b[0];for(var e=0;e<a.length;e++){CanvasXpress.themeDef[a[e]]={}}for(var e=1;e<b.length;e++){var c=b[e];var f=c[0];for(var d=1;d<c.length;d++){if(c[d]!==undefined){CanvasXpress.themeDef[a[d-1]][f]=c[d]}}}}();CanvasXpress.styleParams=["backgroundWidgetsColor","baseWidgetsColor","hoverWidgetsColor","accentWidgetsColor","contrastWidgetsColor","widgetsStripedColor","toggleSwitchBackgroundColor","scrollbarBackgroundColor","scrollbarAltBackgroundColor","scrollbarThumbColor","scrollbarThumbHoverColor","fontWidgetsSize","fontWidgetsColor","iconClsA","iconClsB","iconClsC","iconClsX","contextMenuBackgroundColor","contextMenuBorderColor","contextMenuTextColor","contextMenuHoverColor","workflowTextColor","workflowHoverColor","workflowActiveColor","workflowSliderTrackColor","workflowSliderFillColor","workflowSliderThumbColor","workflowSliderThumbBorderColor","workflowListTextColor","workflowListTickColor","workflowButtonBackgroundColor","workflowButtonBorderColor","workflowTimelineBorderColor","dataFilterBackgroundColor","dataFilterBorderColor","dataFilterToolbarBackgroundColor","dataFilterTextColor","dataFilterHoverColor","customizerBackgroundColor","customizerBorderColor","customizerTextColor","customizerFontSize","customizerHoverColor","dataTableAccentColor","dataTableBackgroundColor","dataTableBorderColor","dataTableBannerImage","dataTableBannerBorderColor","dataTableBannerBackgroundColor","dataTableBannerTextColor","dataTableToolbarBackgroundColor","dataTableToolbarBorderColor","dataTableHeaderBackgroundColor","dataTableHeaderTextColor","dataTableCellBackgroundColor","dataTableOddCellBackgroundColor","dataTableCellBorderColor","dataTableCellTextColor","dataTableActiveCellBorderColor","dataTableStatusBackgroundColor","dataTableStatusBorderColor","dataTableStatusTextColor","dataTablePaginationBackgroundColor","dataTablePaginationBorderColor","dataTablePaginationTextColor","dataTableCellHoverBackgroundColor","dataTableRowHoverBackgroundColor","workflowBackgroundColor","workflowBorderColor"].reduce(function(a,b){a[b]=true;return a},{});CanvasXpress.setStyleDefinitions=function(){var b=[["cx","modern","stripped","old","bms","rdc","ngs360"],["toggleSwitchBackgroundColor","#999999","#536aff","#999999","#999999","#bf2bff","#999999","#7b7b7b"],["fontWidgetsSize","12px","12px","12px","12px","12px","12px","12px"],["fontWidgetsColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["backgroundWidgetsColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["baseWidgetsColor","#cccccc","#536aff","#cccccc","#cccccc","#bdb8b8","#ffffff","#f0f0f0"],["hoverWidgetsColor","rgba(204, 204, 204, 0.6)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["accentWidgetsColor","rgba(204, 204, 204, 0.4)","rgba(83, 105, 255, 0.1)","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgba(42,106,220,0.1)","#ebebeb"],["contrastWidgetsColor","#7b7b7b","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["iconClsA","#000000","#5369ff","#000000","#000000","#BE2BBB","#2A6ADC","#000000"],["iconClsB","#454545","#292929","#454545","#454545","#595454","#292929","#454545"],["iconClsC","#999999","#999999","#999999","#999999","#999999","#999999","#999999"],["iconClsX","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#2A6ADC","#ffffff"],["widgetsStripedColor","#f2f2f2","#f6f8ff","#f2f2f2","#f2f2f2","#f2f2f2","#e3f2fd","#f2f2f2"],["scrollbarBackgroundColor","rgb(255, 255, 255)","rgb(255, 255, 255)","rgb(255, 255, 255)","rgb(255, 255, 255)","rgb(255, 255, 255)","rgb(255, 255, 255)","rgb(255, 255, 255)"],["scrollbarAltBackgroundColor","rgb(245, 245, 245)","rgb(245, 245, 245)","rgb(245, 245, 245)","rgb(245, 245, 245)","rgb(245, 245, 245)","rgb(245, 245, 245)","rgb(245, 245, 245)"],["scrollbarThumbColor","#cccccc","#536aff","#cccccc","#cccccc","#bdb8b8","#ffffff","#f0f0f0"],["scrollbarThumbHoverColor","#aaaaaa","#3d58ff","#aaaaaa","#aaaaaa","#a79f9f","#e6e6e6","#d9d9d9"],["contextMenuBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["contextMenuBorderColor","#087ad1","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["contextMenuTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["contextMenuHoverColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["workflowBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["workflowBorderColor","rgb(215, 226, 230)","rgb(215, 226, 230)","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgb(42, 106, 220)","#ebebeb"],["workflowTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["workflowHoverColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["workflowActiveColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["workflowSliderTrackColor","rgb(215, 226, 230)","rgb(215, 226, 230)","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgb(42, 106, 220)","#ebebeb"],["workflowSliderFillColor","rgb(8, 122, 209)","rgb(83, 105, 255)","#7b7b7b","#7b7b7b","rgb(191, 43, 255)","rgb(42, 106, 220)","#7b7b7b"],["workflowSliderThumbColor","rgb(8, 122, 209)","rgb(83, 105, 255)","#7b7b7b","#7b7b7b","rgb(191, 43, 255)","rgb(42, 106, 220)","#7b7b7b"],["workflowSliderThumbBorderColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["workflowListTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["workflowListTickColor","rgb(215, 226, 230)","rgb(215, 226, 230)","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgb(42, 106, 220)","#ebebeb"],["workflowButtonBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["workflowButtonBorderColor","rgb(215, 226, 230)","rgb(215, 226, 230)","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgb(42, 106, 220)","#ebebeb"],["workflowTimelineBorderColor","rgb(215, 226, 230)","#536aff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgb(42, 106, 220)","#ebebeb"],["dataFilterBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataFilterBorderColor","#087ad1","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["dataFilterToolbarBackgroundColor","#cccccc","#536aff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataFilterTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["dataFilterHoverColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["customizerCloseBackgroundColor","#cccccc","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["customizerCloseTextColor","#555b62","#ffffff","#222222","#222222","#222222","#222222","#222222"],["customizerBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["customizerBorderColor","#087ad1","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["customizerTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["customizerHoverColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["dataTableBannerImage",false,false,false,false,"https://www.canvasxpress.org/assets/images/BMS.png","https://www.canvasxpress.org/assets/images/RDC.png","https://www.canvasxpress.org/assets/images/NGS360.png"],["dataTableAccentColor","#087ad1","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["dataTableBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableBorderColor","#087ad1","#536aff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["dataTableBannerBorderColor","#087ad1","#536aff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","#2a6bdc","#ebebeb"],["dataTableBannerBackgroundColor","#cccccc","#536aff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableBannerTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["dataTableToolbarBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableToolbarBorderColor","#087ad1","#536aff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","#2a6bdc","#ebebeb"],["dataTableHeaderBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableHeaderTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["dataTableCellBackgroundColor","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableOddCellBackgroundColor","#f7f8f9","#dce2ff","#f7f8f9","#f7f8f9","#f7f8f9","#e3f2fd","#f7f8f9"],["dataTableCellBorderColor","#d7e2e6","#536aff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","rgba(42,106,220,0.1)","#ebebeb"],["dataTableCellTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["dataTableActiveCellBorderColor","#7cb6e2","#dce2ff","#7b7b7b","#7b7b7b","#bf2bff","#2a6bdc","#7b7b7b"],["dataTableStatusBackgroundColor","#ffffff","#536aff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTableStatusBorderColor","#087ad1","#ffffff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","#2a6bdc","#ebebeb"],["dataTableStatusTextColor","#555b62","#ffffff","#222222","#222222","#222222","#222222","#222222"],["dataTablePaginationBackgroundColor","#ffffff","#536aff","#ffffff","#ffffff","#ffffff","#ffffff","#ffffff"],["dataTablePaginationBorderColor","#087ad1","#ffffff","rgba(204, 204, 204, 0.4)","#ebebeb","rgba(190, 43, 187, 0.6)","#2a6bdc","#ebebeb"],["dataTablePaginationTextColor","#555b62","#ffffff","#222222","#222222","#222222","#222222","#222222"],["dataTablePaginationSelectTextColor","#555b62","#222222","#222222","#222222","#222222","#222222","#222222"],["dataTableCellHoverBackgroundColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"],["dataTableRowHoverBackgroundColor","rgba(124, 182, 226, 0.2)","rgba(83,105,255, 0.2)","rgba(204, 204, 204, 0.6)","rgba(204, 204, 204, 0.6)","rgba(190, 43, 187, 0.1)","rgba(42,106,220,0.2)","rgb(204, 204, 204, 0.6)"]];CanvasXpress.styleDef={};var d=b[0];for(var e=0;e<d.length;e++){CanvasXpress.styleDef[d[e]]={}}for(var e=1;e<b.length;e++){var a=b[e];var f=a[0];for(var c=1;c<a.length;c++){if(a[c]!==undefined){CanvasXpress.styleDef[d[c-1]][f]=a[c]}}}}();CanvasXpress.datasets={data:[["Id","Col1","Col2","Col3","Col4","Col5","CI-Lower","CI-Higher","YearFact","NumFact","SeqD","R50","R75","R100","Neg","Diff","FC","LOD","Year","Time","Survival","Start","End","Set","Group","Type","Category","Final","8th","4th","Semifinal"],["Row00",5,80,30,2,16,4,7,2019,4,0.5,50,75,100,-10,120,1.5,1.2,1980,5,1,20140221,20140520,"Set1","GroupA","TypeX","Cat1","I","A","A","A"],["Row01",10,25,32,4,18,7,12,2020,1,1.5,50,75,100,-5,-20,0.1,0.5,1981,5,1,20140521,20140820,"Set2","GroupA","TypeX","Cat1","I","A","A","A"],["Row02",85,67,55,1,33,81,89,2021,2,2.5,50,75,100,-30,40,1,1,1982,8,1,20140821,20141120,"Set1","GroupB","TypeY","Cat1","I","C","A","A"],["Row03",22,45,65,5,35,19,24,2022,3,3.5,50,75,100,-20,60,0.6,0.8,1983,8,1,20141121,20150220,"Set1","GroupA","TypeZ","Cat1","I","C","A","A"],["Row04",45,30,38,10,24,40,47,2019,3,4.5,50,75,100,-15,-30,1.8,2.3,1984,12,1,20150221,20150520,"Set2","GroupC","TypeX","Cat2","I","E","G","A"],["Row05",60,15,12,3,8,58,63,2020,2,5.5,50,75,100,-25,-30,4.1,1.9,1985,16,0,20150521,20150820,"Set1","GroupB","TypeY","Cat2","I","E","G","A"],["Row06",75,80,90,3,46,73,77,2021,1,6.5,50,75,100,-35,20,1.6,3.1,1986,23,1,20150821,20151120,"Set1","GroupA","TypeZ","Cat2","I","G","G","A"],["Row07",33,28,15,12,14,30,36,2022,4,7.5,50,75,100,-40,15,2,1.5,1987,27,1,20151121,20160220,"Set2","GroupC","TypeY","Cat2","I","G","G","A"],["Row08",58,44,22,6,13,52,62,2019,3,8.5,50,75,100,-50,20,-2.1,2.1,1988,30,1,20160221,20160520,"Set1","GroupB","TypeX","Cat3","I","I","I","I"],["Row09",92,76,55,6,30,89,95,2020,4,9.5,50,75,100,-60,-20,-0.3,0.8,1989,33,1,20160521,20160820,"Set2","GroupA","TypeZ","Cat3","I","I","I","I"],["Row10",17,39,61,14,38,13,22,2021,1,10.5,50,75,100,-22,40,-0.1,0.2,1990,43,1,20160821,20161120,"Set2","GroupC","TypeX","Cat3","I","K","I","I"],["Row11",41,53,77,9,43,39,55,2022,2,11.5,50,75,100,-12,50,0,0,1991,45,1,20171121,20180220,"Set2","GroupB","TypeY","Cat3","I","K","I","I"],["Row12",66,79,93,5,49,61,70,2019,1,12.5,50,75,100,-8,-20,-0.2,0,1992,46,1,20180221,20180520,"Set1","GroupA","TypeX","Cat4","I","N","N","I"],["Row13",81,94,29,8,19,75,82,2020,3,13.5,50,75,100,-18,30,-3.5,2.1,1993,47,0,20180521,20180820,"Set1","GroupC","TypeZ","Cat4","I","N","N","I"],["Row14",96,81,46,11,29,91,98,2021,4,14.5,50,75,100,-28,-40,-2.1,2.5,1994,48,1,20180821,20181120,"Set2","GroupB","TypeY","Cat4","I","O","N","I"],["Row15",12,27,55,12,39,10,15,2022,2,15.5,50,75,100,-38,0,-0.6,1.1,1995,49,1,20190221,20190220,"Set2","GroupA","TypeZ","Cat4","I","O","N","I"]],chord:[["Id","A","B","C","D"],["A",11975,5871,8916,2868],["B",1951,10048,2060,6171],["C",8010,16145,8090,8045],["D",1013,990,940,6907]],venn:[["Id","Value"],["A",340],["AB",639],["ABC",552],["ABCD",148],["ABD",578],["AC",456],["ACD",298],["AD",257],["B",562],["BC",915],["BCD",613],["BD",354],["C",620],["CD",143],["D",592]],usa:[["Id","Value","Risk"],["AL",42,"Medium"],["AK",87,"High"],["AZ",15,"Low"],["AR",63,"High"],["CA",91,"Low"],["CO",28,"Medium"],["CT",55,"Low"],["DE",76,"High"],["FL",34,"Medium"],["GA",89,"Medium"],["HI",12,"High"],["ID",47,"Low"],["IL",81,"Medium"],["IN",23,"High"],["IA",68,"Low"],["KS",94,"Medium"],["KY",5,"Low"],["LA",39,"High"],["ME",72,"Medium"],["MD",58,"Low"],["MA",19,"High"],["MI",84,"Medium"],["MN",46,"Low"],["MS",31,"High"],["MO",77,"Medium"],["MT",11,"High"],["NE",65,"Low"],["NV",99,"Medium"],["NH",51,"High"],["NJ",27,"Low"],["NM",73,"Medium"],["NY",8,"High"],["NC",62,"Low"],["ND",88,"High"],["OH",17,"Medium"],["OK",43,"High"],["OR",95,"Low"],["PA",53,"Medium"],["RI",21,"Low"],["SC",79,"High"],["SD",36,"Medium"],["TN",92,"High"],["TX",48,"Low"],["UT",14,"Medium"],["VT",67,"High"],["VA",83,"Low"],["WA",29,"Medium"],["WV",54,"High"],["WI",71,"Low"],["WY",9,"Medium"]],world:[["Id","Value","Risk"],["AFG",42,"Low"],["ALB",87,"Medium"],["DZA",15,"High"],["AND",63,"Low"],["AGO",91,"Medium"],["ARG",28,"High"],["ARM",55,"Low"],["AUS",76,"Medium"],["AUT",34,"High"],["AZE",89,"Low"],["BHS",12,"Medium"],["BHR",47,"High"],["BGD",81,"Low"],["BLR",23,"Medium"],["BEL",68,"High"],["BLZ",94,"Low"],["BOL",5,"Medium"],["BIH",39,"High"],["BWA",72,"Low"],["BRA",58,"Medium"],["BGR",19,"High"],["CMR",84,"Low"],["CAN",46,"Medium"],["CHL",31,"High"],["CHN",77,"Low"],["COL",11,"Medium"],["CRI",65,"High"],["HRV",99,"Low"],["CUB",51,"Medium"],["CYP",27,"High"],["CZE",73,"Low"],["DNK",8,"Medium"],["DOM",62,"High"],["ECU",88,"Low"],["EGY",17,"Medium"],["SLV",43,"High"],["EST",95,"Low"],["ETH",53,"Medium"],["FIN",21,"High"],["FRA",79,"Low"],["GEO",36,"Medium"],["DEU",92,"High"],["GHA",48,"Low"],["GRC",14,"Medium"],["GTM",67,"High"],["HND",83,"Low"],["HUN",29,"Medium"],["ISL",54,"High"],["IND",71,"Low"],["IDN",9,"Medium"],["IRN",37,"High"],["IRQ",64,"Low"],["IRL",82,"Medium"],["ISR",16,"High"],["ITA",59,"Low"],["JAM",93,"Medium"],["JPN",25,"High"],["JOR",70,"Low"],["KAZ",41,"Medium"],["KEN",86,"High"],["KWT",13,"Low"],["LBN",57,"Medium"],["LBY",32,"High"],["LTU",90,"Low"],["LUX",20,"Medium"],["MYS",49,"High"],["MEX",75,"Low"],["MAR",38,"Medium"],["NLD",85,"High"],["NZL",18,"Low"],["NGA",74,"Medium"],["NOR",61,"High"],["PAK",26,"Low"],["PAN",96,"Medium"],["PER",44,"High"],["PHL",80,"Low"],["POL",24,"Medium"],["PRT",69,"High"],["QAT",33,"Low"],["ROU",50,"Medium"],["RUS",97,"High"],["SAU",60,"Low"],["SRB",10,"Medium"],["SGP",56,"High"],["SVK",45,"Low"],["SVN",78,"Medium"],["ZAF",22,"High"],["KOR",98,"Low"],["ESP",66,"Medium"],["LKA",30,"High"],["SWE",88,"Low"],["CHE",52,"Medium"],["SYR",7,"High"],["TWN",40,"Low"],["TZA",6,"Medium"],["THA",35,"High"],["TUN",19,"Low"],["TUR",84,"Medium"],["UGA",2,"High"],["UKR",99,"Low"],["ARE",15,"Medium"],["GBR",73,"High"],["USA",31,"Low"],["URY",46,"Medium"],["VEN",82,"High"],["VNM",27,"Low"],["ZMB",61,"Medium"],["ZWE",55,"High"]]};CanvasXpress.graphTypeDatasets=(function(){var b=[["Col1"],["Col2"],["Col3"],["Col4"],["Col5"]];var o=[["Col2"],["Col3"],["Col4"],["Col5"],["Col1"]];var m=[["Col3"],["Col4"],["Col5"],["Col1"],["Col2"]];var k=[["Col1","Col2"],["Col3","Col4"],["Col1","Col5"]];var d=[["Col3","Col4"],["Col1","Col5"],["Col2","Col3"]];var c=[["Col1","Col2","Col3"],["Col1","Col3","Col4"],["Col1","Col2","Col5"]];var g=[["Col1"],["Col1","Col3"],["Col2"]];var n=[["Col3"],["Col2","Col4"],["Col2","Col5"]];var l=[["Col1"],["Col1","Col2"],["Col1","Col2","Col3"]];var j=[["Col1"],["Col2"],["Col3"]];var h=[["Col4"],["Col5"],["Col1"]];var e=["Category","Set","Group","Type"];var a=[["Category","Set"],["Group","Type"],["Category","Group"]];var p=[["Category","Set","Group"],["Set","Group","Type"],["Category","Group","Type"]];var i=[["Category"],["Set","Group"],["Type"]];var f=[["Category","Set"],["Category","Type"],["Category","Set","Group"]];return{Alluvial:{data:"data",xAxis:b,sankeyAxes:p},Area:{data:"data",xAxis:c,areaType:[false,"overlapping",false,"stacked","percent","overlapping","stacked"],areaStyle:[false,false,"solid","translucent","outlined","translucent","translucent"]},AreaLine:{data:"data",xAxis:g,xAxis2:n},Bar:{data:"data",xAxis:l},BarLine:{data:"data",xAxis:g,xAxis2:n},Bin:{data:"data",xAxis:j,yAxis:h},Binplot:{data:"data",xAxis:j,yAxis:h},Boxplot:{data:"data",xAxis:l,groupingFactors:i},Bubble:{data:"data",xAxis:b,hierarchy:a},Bullet:{data:"data",xAxis:j,bulletTargetVarName:["Col4","Col5","Col4"],rangeStack:[false,["R50","R75","R100"],["R50","R75","R100"]]},Bump:{data:"data",xAxis:[["YearFact"]],yAxis:[["NumFact"]],lineBy:e},CDF:{data:"data",xAxis:b},Chord:{data:"chord",xAxis:[["A","B","C","D"]]},Circular:{data:"data",xAxis:[["Col1","Col2","Col3"],["Col1","Col2","Col3"],["SeqD","Col1","Col2","Col3"],["Col1","Col2","Col3"],["Col1","Col2","Col3"],["SeqD","Col1","Col2","Col3"]],circularTrackName:[false,false,["","A","B","B"],false,false,["","A","B","C"]]},Cleveland:{data:"data",xAxis:k},Contour:{data:"data",xAxis:j,yAxis:h},Correlation:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]]},Density:{data:"data",xAxis:g},Distribution:{data:"data",xAxis:g},Dumbbell:{data:"data",xAxis:k},Donut:{data:"data",xAxis:b},DotLine:{data:"data",xAxis:g,xAxis2:n},Dotplot:{data:"data",xAxis:l},Gantt:{data:"data",xAxis:[["Start","End"]]},Heatmap:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]]},Hex:{data:"data",xAxis:j,yAxis:h},Hexplot:{data:"data",xAxis:j,yAxis:h},Histogram:{data:"data",xAxis:g},KaplanMeier:{data:"data",xAxis:[["Time"]],yAxis:[["Survival"]]},Line:{data:"data",xAxis:l},Lollipop:{data:"data",xAxis:b,dataPointSizeScaleFactor:[4,6]},Map:{data:false,mapId:["World","USA","Canada","France","World","Colombia","USA","Italy","Spain","Argentina"],colorBy:["Risk","Value",false,false,"Value","variable","Risk","variable",false,"variable"]},Meter:{data:"data",xAxis:b},ParallelCoordinates:{data:"data",xAxis:c},Pareto:{data:"data",xAxis:g,xAxis2:n},Pie:{data:"data",xAxis:e},QQ:{data:"data",xAxis:b},Quantile:{data:"data",xAxis:b},Radar:{data:"data",xAxis:l},Ribbon:{data:"data",xAxis:b,sankeyAxes:p},Ridgeline:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]],ridgeBy:e},Sankey:{data:"data",xAxis:b,sankeyAxes:p},Scatter2D:{data:"data",xAxis:b,yAxis:o},Scatter3D:{data:"data",xAxis:b,yAxis:o,zAxis:m},ScatterBubble2D:{data:"data",xAxis:b,yAxis:o,zAxis:m},Spaghetti:{data:"data",xAxis:b,yAxis:o,colorBy:e},SPLOM:{data:"data",xAxis:c,yAxis:c},Stacked:{data:"data",xAxis:c},StackedLine:{data:"data",xAxis:k,xAxis2:d},StackedPercent:{data:"data",xAxis:c},StackedPercentLine:{data:"data",xAxis:k,xAxis2:d},Streamgraph:{data:"data",xAxis:[["Year"]],yAxis:c},Sunburst:{data:"data",hierarchy:f},TagCloud:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]],colorBy:e},TimeSeries:{data:"data",xAxis:[["Year"]],yAxis:b},Tornado:{data:"data",xAxis:[["Col1","Neg"]]},Tree:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]],hierarchy:f},TreeBracket:{data:"data",xAxis:b,hierarchy:[["Final","Semifinal","4th","8th"]]},Treemap:{data:"data",xAxis:b,groupingFactors:i},Upset:{},Venn:{data:"venn",xAxis:[["A","AB","ABC","ABCD","ABD","AC","ACD","AD","B","BC","BCD","BD","C","CD","D"]],vennGroups:[4,3,2]},Violin:{data:"data",xAxis:l,groupingFactors:i},Volcano:{data:"data",xAxis:[["FC"]],yAxis:[["LOD"]]},Waterfall:{data:"data",xAxis:[["Diff"]]},WordCloud:{data:"data",xAxis:[["Col1","Col2","Col3","Col4","Col5"]],colorBy:e}}})();CanvasXpress.R={lty:[[0,0],[],[8,6],[1,3],[1,3,5,3],[14,6],[4,3,8,3]],ltyNames:["blank","solid","dashed","dotted","dotdash","longdash","twodash"]};CanvasXpress.factory=CanvasXpress.factory||{version:64.2,buildDate:"07-10-2026",client:"",siteSrc:false,valid:typeof window.cX=="string"?window.cX:undefined,href:window.location.href,llmService:typeof window.cXLLMService=="string"?window.cXLLMService:undefined};CanvasXpress.factory.services="https://www.canvasxpress.org/cgi-bin/services.py";CanvasXpress.prototype.init=function(f,d,b,c,e,h,g,a){this.HwI=function(j){try{CanvasXpress}catch(i){return false}CanvasXpress.instances.push(this);this.dataVersion=0;this.specVersion=0;this.derivedCache={};this.initActionCatalog();this.initStart();this.initData();this.initAesthetics();this.initScale();this.initGeometry();this.initStatistics();this.initFacets();this.initCoordinates();this.initTheme();this.initRender();this.initUI();this.layoutValid=false;this.layoutComb=false;this.isDOE=false;this.isGroupedData=false;this.groupingFactors=[];this.grpIndices=null;this.hiddenGrps=null;this.smpIndices=null;this.varIndices=null;this.isRawData=false;this.wrangleBuildTarget=false;this.initProcess(j)};if(!f){throw new Error("No target provided")}else{if(typeof(f)=="object"&&f.isGGPlot){return new cxplot(f)}else{this.HwI(CanvasXpress.createObject(f,d,b,c,e,h,g,a))}}};CanvasXpress.prototype.initProcess=function(o){this.Ajo=function(o){this.target=o.target;this.events=o.events;this.info=o.info;this.userId=1;this.url={};this.meta={ids:{},time:{start:parseInt(performance.timeOrigin),current:0,end:null,elapsed:[]},data:false,canvas:{},config:{user:o.config,orig:{},vals:{},remote:false},ggplot:{aes:{},config:[],coords:[],data:[],facet:[],geoms:[],labels:{},layers:{},order:{},scales:[],theme:[],map:{}},cxplot:{data:function(){return false},dataPipeline:function(){return[]},mapping:function(){return{}},layers:function(){return[]},scales:function(){return false},coord:function(){return false},facet:function(){return false}},render:{objects:[],groups:{},types:{},order:[],map:{},origin:[],transition:false},console:[],events:{},stack:[],def:{},dom:{},layout:{}};this.config={};this.legend={color:{},shape:{},size:{},sample:{},variable:{},line:{},pattern:{},outline:{},connect:{},contour:{},bin2d:{},decoration:{},oncoprint:{},overlays:{},colorNode:{},shapeNode:{},sizeNode:{},patternNode:{},colorEdge:{},sizeEdge:{},colorLabel:{},sizeLabel:{}};this.scales={};this.panel={};this.plot={}};this.tI1=function(t){var c=this.meta.time.current||performance.now();if(!t){t=""}var n=performance.now();this.meta.time.elapsed.push([t,parseInt(n-c),parseInt(n)]);this.meta.time.current=n};this.sU9=function(o){this.xq5(o);this.Zm6(o);this.DI5(o);this.xcf(o);this.ykP(o)};this.xq5=function(o){if(typeof(o.data)=="function"){try{o.data=o.data.call(this)}catch(e){alert("Not a valid Data object:\n"+e)}}else{if(!o.noValidate){try{JSON.stringify(o.data)}catch(e){alert("Data object malformed:\n"+e)}if(o instanceof Object&&o.hasOwnProperty("data")&&o.data.hasOwnProperty("y")&&o.data.y.hasOwnProperty("data")&&o.data.hasOwnProperty("x")&&o.data.hasOwnProperty("z")){if(o.data.y.data instanceof Array&&o.data.y.data[0] instanceof Array&&o.data.y.hasOwnProperty("vars")&&o.data.y.hasOwnProperty("smps")&&o.data.x==null&&o.data.z==null){for(var i=0;i<o.data.y.data.length;i++){for(var j=0;j<o.data.y.data[i].length;j++){var v=o.data.y.data[i][j];var n=v===null||v===undefined?true:!isNaN(parseFloat(v))&&isFinite(v);if(!n){for(var ii=0;ii<o.data.y.data.length;ii++){o.data.y.data[ii].unshift(o.data.y.vars[ii])}o.data.y.data.unshift(o.data.y.smps);o.data.y.data[0].unshift("");o.data=o.data.y.data;if(o.hasOwnProperty("config")){o.config.isDataFrame=true}return o}}}}}}}};this.Zm6=function(o){if(o.config){if(typeof(o.config)=="function"){try{o.config=o.config.call(this)}catch(e){alert("Not a valid Data object:\n"+e)}}else{if(!o.noValidate){try{JSON.stringify(o.config)}catch(e){alert("Config object malformed:\n"+e)}}}}};this.DI5=function(o){if(o.events){for(var t in o.events){var v=o.events[t];if(typeof v==="string"&&v.startsWith&&v.startsWith("/Function(")&&v.endsWith&&v.endsWith(")/")){v=v.substring(10,v.length-2).replace(/&quot;/g,'"');v=eval("("+v+")");o.events[t]=v}}}};this.xcf=function(o){if(!o.info){o.info=""}};this.ykP=function(o){if(o.afterRender){try{JSON.stringify(o.afterRender)}catch(e){alert("AfterRender object malformed:\n"+e)}}};this.JE1=function(c){if(!c){c=this}if(c.transposeData){return true}if(c.transformData){}if(c.asSampleFactors&&c.asSampleFactors.length){return true}if(c.asVariableFactors&&c.asVariableFactors.length){return true}if(c.stringSampleFactors&&c.stringSampleFactors.length){return true}if(c.stringVariableFactors&&c.stringVariableFactors.length){return true}if(c.stringNodeAttributes&&c.stringNodeAttributes.length){return true}if(c.stringEdgeAttributes&&c.stringEdgeAttributes.length){return true}if(c.showHistogram){return true}if(c.ridgeBy){return true}if(c.sortData&&c.sortData.length){return true}if(c.filterData&&c.filterData.length){return true}if(c.asDOE){}return false};this.ZLh=function(c){var afterRender=[];if(c.showHistogram||c.ridgeBy){if(c.showHistogram===true&&c.colorBy){afterRender.unshift(["createHistogram",[false,true],{}])}else{afterRender.unshift(["createHistogram",[c.ridgeBy||c.showHistogram||c.colorBy,true],{}])}}if(c.stringVariableFactors&&c.stringVariableFactors.length){for(var i=0;i<c.stringVariableFactors.length;i++){afterRender.unshift(["switchNumericToString",[c.stringVariableFactors[i]],{}])}}if(c.stringSampleFactors&&c.stringSampleFactors.length){for(var i=0;i<c.stringSampleFactors.length;i++){afterRender.unshift(["switchNumericToString",[c.stringSampleFactors[i],true],{}])}}if(c.stringNodeAttributes&&c.stringNodeAttributes.length){for(var i=0;i<c.stringNodeAttributes.length;i++){afterRender.unshift(["switchNumericToString",[c.stringNodeAttributes[i],false],{}])}}if(c.stringEdgeAttributes&&c.stringEdgeAttributes.length){for(var i=0;i<c.stringEdgeAttributes.length;i++){afterRender.unshift(["switchNumericToString",[c.stringEdgeAttributes[i],true],{}])}}if(c.asVariableFactors&&c.asVariableFactors.length){for(var i=0;i<c.asVariableFactors.length;i++){afterRender.unshift(["switchVarToAnnotation",[c.asVariableFactors[i]],{}])}}if(c.asSampleFactors&&c.asSampleFactors.length){for(var i=0;i<c.asSampleFactors.length;i++){afterRender.unshift(["switchSmpToAnnotation",[c.asSampleFactors[i]],{}])}}if(c.transposeData){afterRender.unshift(["transpose",[false,true],{}])}if(c.transformData){afterRender.unshift(["transform",[c.transformData,c.transformAxis,false,true],{}])}if(c.sortData&&c.sortData.length){for(var i=0;i<c.sortData.length;i++){afterRender.push(["modifySort",[c.sortData[i][0],c.sortData[i][1],c.sortData[i][2],false,i==c.sortData.length-1?true:false],{}])}}if(c.filterData&&c.filterData.length){for(var i=0;i<c.filterData.length;i++){afterRender.push(["modifyFilter",[c.filterData[i][0],c.filterData[i][1],c.filterData[i][2],c.filterData[i][3],i==c.filterData.length-1?true:false],{}])}}if(c.asDOE){afterRender.push(["createDOE",[],{}])}return afterRender};this.hju=function(){if(this.isCxplot&&this.meta.config.user.aes){var aes=this.meta.config.user.aes;if(aes.stringVariableFactors){this.stringVariableFactors=this.QWl(aes.stringVariableFactors)}if(aes.stringSampleFactors){this.stringSampleFactors=this.QWl(aes.stringSampleFactors)}if(aes.asVariableFactors){this.asVariableFactors=this.QWl(this.asVariableFactors)}if(aes.asSampleFactors){this.asSampleFactors=this.QWl(aes.asSampleFactors)}}};this.alk=function(arr,t){var cx=this;if(cx.showHistogram||cx.ridgeBy){if(cx.showHistogram===true){arr.push(["createHistogram",[false],{},t,true])}else{arr.push(["createHistogram",[cx.ridgeBy||cx.showHistogram],{},t,true])}}var conversions=[{prop:"stringVariableFactors",fn:"switchNumericToString",flag:false},{prop:"stringSampleFactors",fn:"switchNumericToString",flag:true},{prop:"stringNodeAttributes",fn:"switchNumericToString",flag:false},{prop:"stringEdgeAttributes",fn:"switchNumericToString",flag:true},{prop:"asVariableFactors",fn:"switchVarToAnnotation",flag:false},{prop:"asSampleFactors",fn:"switchSmpToAnnotation",flag:false}];for(var k=0;k<conversions.length;k++){var conv=conversions[k];var list=cx[conv.prop];if(list&&list.length){for(var j=0;j<list.length;j++){arr.unshift([conv.fn,[list[j],conv.flag],{},t,true])}cx[conv.prop]=[];cx.layoutRestore=false}}if(cx.transposeData){arr.unshift(["transpose",[false,cx.sortData.length||cx.selectedDataPoints.length],{},t,true]);cx.transposeData=false;delete (CanvasXpress.stack[cx.target].config.transposeData)}if(cx.pivotBy&&!cx.isPivot){arr.push(["pivotX",[cx.pivotBy],{},t,true])}if(cx.sortData){for(var s=0;s<cx.sortData.length;s++){arr.push(["modifySort",[cx.sortData[s][0],cx.sortData[s][1],cx.sortData[s][2],false,s==cx.sortData.length-1?false:true],{},t,true])}cx.sortData=[];delete (CanvasXpress.stack[cx.target].config.sortData)}if(cx.filterData){for(var f=0;f<cx.filterData.length;f++){arr.push(["modifyFilter",[cx.filterData[f][0],cx.filterData[f][1],cx.filterData[f][2],cx.filterData[f][3],f==cx.filterData.length-1?false:true],{}])}cx.filterData=[];delete (CanvasXpress.stack[cx.target].config.filterData)}};this.tFl=function(fn,i,lastIndex,arr,hasPWC,hasDecoration,videoMode){var nextIsDrag=arr[i+1]&&arr[i+1][0]&&arr[i+1][0].match(/drag/i)?true:false;var skip;if(fn=="createDOE"||fn=="createHistogram"||fn=="modifyColorScheme"||fn.match(/segregate/)||nextIsDrag){skip=false}else{if(!this.showTransition&&i<lastIndex){skip=true}else{skip=false}}if(fn.match(/switch/)){skip=i<lastIndex?true:false}if(fn.match(/updateConfig/)){skip=false}if(hasPWC&&fn.match(/geom_boxplot|geom_bar/)){skip=false}if(this.graphType=="Sankey"&&i==0){skip=false}if(this.debug||hasDecoration){skip=false}if(videoMode){skip=false}return skip};this.XPG=function(arr){var cx=this;var reselectDataPoints=function(){if(cx.selectedDataPoints.length&&!CanvasXpress.selector.selections){var draw=false;var x=cx.xAxisIndices&&cx.xAxisIndices.length?cx.xAxisIndices[0]:0;var y=cx.yAxisIndices&&cx.yAxisIndices.length?cx.yAxisIndices[0]:1;for(var i=0;i<cx.selectedDataPoints.length;i++){var vi=cx.mlX(cx.selectedDataPoints[i]);var si=cx.OKx(cx.selectedDataPoints[i]);if(vi>=0){cx.bDR([vi,x,y]);draw=true}if(si>=0){cx.bDR([cx.varIndices[0],si]);draw=true}}if(draw){cx.Siv()}}};var hasPWCAction=function(){for(var i=0;i<arr.length;i++){if(arr[i][0]=="geom_pwc"){return true}}return false};var hasDecorationAction=function(){for(var i=0;i<arr.length;i++){if(arr[i][0].match(/marker/i)){return true}}return false};cx.afterRendering=true;if(!arr){arr=[]}var startTime=cx.meta.time.start;var isVisium=cx.graphType=="Scatter2D"&&cx.scatterType=="visium";cx.hju();cx.alk(arr,startTime);var lastIndex=arr.length-1;var visiumReload=false;var hasPWC=hasPWCAction();var hasDecoration=hasDecorationAction();var videoMode=cx.reproduceVideoMode;if(videoMode){cx.skipRender=false;cx.U4z()}for(var i=0;i<arr.length;i++){var entry=arr[i];var fn=entry.shift();if(!fn){continue}var params=entry.length>0?entry.shift():[];var configOverrides=entry.length>0?entry.shift():{};if(cx.view=="table"&&fn=="setDimensions"){continue}if(fn=="setDimensions"&&cx.width==params[0]&&cx.height==params[1]){continue}cx.skipRender=cx.tFl(fn,i,lastIndex,arr,hasPWC,hasDecoration,videoMode);for(var c in configOverrides){cx[c]=configOverrides[c]}if(fn.match(/switch/)&&isVisium&&i==lastIndex){visiumReload=true}if(cx[fn]){if(fn=="modifySort"&&cx.groupingFactors.length&&i==lastIndex){cx.U4z()}cx.F7e();cx[fn].apply(cx,params)}if(fn.match(/^switch/)&&i==lastIndex&&!visiumReload){cx.U4z()}if(visiumReload){cx.Beq()}else{if(i==lastIndex){cx.lrV(false,true)}}}if(cx.asDOE&&cx.eYT()){cx.dgC(cx.asDOE)}reselectDataPoints();cx.Ebp("afterRender");cx.afterRendering=false;cx.stackInitial=arr.length};this.xcS=function(){if(this.toDoPivot){this.c8U(this.toDoPivot);this.toDoPivot=false}else{if(this.prompt){this.hvv()}}};this.k7i=function(){if(window.location.search!=""){var p=location.search.substring(1).split("&");for(var i=0;i<p.length;i++){var v=p[i].split("=");if(!v[0]){continue}if(v[0].match(/^cX/)){this.url[v[0]]=v[1]||true}else{this.url[v[0]]=v[1]=="false"?false:v[1]=="true"?true:v[1]}}}};this.H4w=function(){if(!CanvasXpress.alias){return}var arr=CanvasXpress.alias.split("#");var t0=arr.pop().split("");var t1=arr.shift().split("");var t={};for(var i=0;i<t0.length;i++){t[t1[i]]=t0[i]}for(var i=0;i<arr.length;i++){var w=arr[i].split("");var n=w.length;var f="";for(var j=0;j<n-3;j++){f+=t[w[j]]}var g=w[n-3]+w[n-2]+w[n-1];if(this[g]){this[f]=this[g]}}};this.xcq=function(){if(this.url.hasOwnProperty("cXprint")||this.printThumbnail){this.printThumbnail=false;var f=this.url.cXprint!==true&&this.url.cXprint!=="true"?this.url.cXprint:this.saveFilename?this.saveFilename:this.target+".png";var t=this;var c=function(blb,fn){t.eMT(blb,fn);setTimeout(function(){window.close()},4000)};t.print(false,f,c)}else{if(this.url.hasOwnProperty("cXprintBase64")||this.cacheBase64){this.cacheBase64=false;var c=function(){return};if(CanvasXpress.$(this.target)){this.print(false,false,c)}}}};this.aru=function(o,e){var t=this;var w=window;var q=t.$w;if(this.verbose){w[q(8)][q(31)][q(32)](o)}};this.Ebp=function(cllr,scope){var that=this;var runCallback=function(){var t=scope||that;if(t.graphType=="Map"&&t.mapId&&!window[t.mapId]){return}if(t.fonts&&t.fonts.length>0&&!CanvasXpress.readyFonts){CanvasXpress.readyFonts=true;return}t.aru("canvasXpress data ready - "+cllr);t.xcq();CanvasXpress.ready=true};if(CanvasXpress.cacheImagesReady){if(cllr=="afterRender"){if(!this.isAnimation&&!this.isTransitionOn&&!this.isUpdateRemoteData){runCallback()}}else{if(this.graphType=="Network"){if(!this.isAnimation&&!this.isUpdateRemoteData){runCallback()}}else{if(!this.isTransitionOn){runCallback()}}}}};this.NED=function(e){if(this.view=="table"){this.viewLast="table";this.view="canvas";this.Bsn(e,"table")}else{if(this.view=="layout"){this.viewLast="layout";this.view="canvas";this.Bsn(e,"layout")}else{if(this.view=="explore"){this.viewLast="explore";this.view="canvas";this.Fjc(e)}else{if(this.view=="customize"){this.viewLast="customize";this.view="canvas";this.hN5(e)}else{if(this.view.match(/chat/i)){if(this.view==="tableChat"){this.viewLast="table";this.view="canvas";this.Bsn(e,"table")}else{this.viewLast="chat";this.view="canvas"}this.Gqi(e)}}}}}};this.lzn=function(f){var s=CanvasXpress.stack[this.target];var b=this.JE1();this.Jiz(false,false,false,false,false,false,b);this.XPG(this.QWl(s.afterRender));CanvasXpress.current=this;this.NED();this.meta.time.end=parseInt(performance.now());this.xcS();this.a74();if(f){f.call(this)}};this.SF6=function(f){if(!this.lazyLoad||(!this.loaded&&this.jpr(this.meta.canvas.ctx.canvas))){this.lzn(f)}};this.s0q=function(o){var t=this;t.Ajo(o);t.tI1("init");t.k7i();t.sU9(o);t.q5L();t.H4w();t.PmM();t.bVV();t.CTW(o.config);t.Bji();t.Nwi();t.smP();t.CzN(o.data);t.tI1("initData");if(t.meta.config.user&&t.meta.config.user.gogSpec&&typeof t.installSpec==="function"){t.meq(t.meta.config.user.gogSpec)}t.IyW();t.ExU();t.FSW();t.kI0(o.data,o.config,o.events,o.info,o.afterRender);t.BET();t.H4w();t.SF6(o.callback)};this.s0q(o)};CanvasXpress.prototype.initActionCatalog=function(){if(!CanvasXpress.ACTION_CATALOG){var a={};var c=function(f,d){for(var e=0;e<d.length;e++){a[d[e]]=f}};c("UPDATE_DATA",["updateData"]);c("UPDATE_CONFIG",["changeAttribute","changeAttributeNoDraw","toggleAttribute","setConfig","updateConfig","changeTheme","modifyColorScheme"]);c("UPDATE_FILTER",["filterUserData","filterSamples","filterVariables","modifyFilter","updateDataFilter","resetDataFilter","showHideSelectedData","filterSelected","setAllSamplesVisible","setAllVariablesVisible"]);c("UPDATE_GROUPING",["groupSamples","ungroupSamples","regroupSamples"]);c("UPDATE_SORT",["modifySort","sortSamples","sortSamplesByCategory","sortSamplesByVariable","sortVariables","sortVariablesByCategory","sortVariablesBySample","resetSorting"]);c("UPDATE_FACETS",["segregate","segregateSamples","segregateVariables","segregateSamplesVariables","desegregate","desegregateSamples","desegregateVariables"]);c("UPDATE_TRANSFORMS",["transform","transformData","transformReset","modifyTransform","modifyTransformRatio"]);c("UPDATE_PIVOT",["pivot","pivotX","removePivot","transpose","transposeDataSet"]);c("UPDATE_CLUSTERING",["clusterSamples","clusterVariables","kmeansSamples","kmeansVariables"]);c("UPDATE_SELECTION",["modifyHighlights","toggleSelectedData","addRemoveToSelected","selectVarsSmpsWithAnnotationValue"]);c("UPDATE_VIEWPORT",["zoonIn","zoonOut","handlePanning","handleWheelEvent","handleDragEventOneDimension","drawIndicesAfterWheelEvent","drawRangesAfterWheelEvent","drawIndicesAfterPannEvent"]);c("UPDATE_UI",["modifyLabelCoordinates","changeView","setDimensions"]);CanvasXpress.ACTION_CATALOG=a;CanvasXpress.TRANSIENT_ACTION_TYPES={UPDATE_SELECTION:true,UPDATE_VIEWPORT:true,UPDATE_UI:true};CanvasXpress.ACTION_LABELS={INIT_STATE:"Initial",UPDATE_DATA:"Data",UPDATE_CONFIG:"Configure",UPDATE_FILTER:"Filter",UPDATE_GROUPING:"Group",UPDATE_SORT:"Sort",UPDATE_FACETS:"Segregate",UPDATE_TRANSFORMS:"Transform",UPDATE_PIVOT:"Pivot",UPDATE_CLUSTERING:"Cluster",UPDATE_SELECTION:"Select",UPDATE_VIEWPORT:"Zoom / Pan",UPDATE_UI:"View"}}this.K25=function(d){if(!d){return"UNKNOWN"}return CanvasXpress.ACTION_CATALOG[d]||"UNKNOWN"};this.lAB=function(e){if(!e){return"Action"}var d=CanvasXpress.ACTION_LABELS[this.K25(e)];return d||e};this.P1r=function(d){return CanvasXpress.TRANSIENT_ACTION_TYPES[d]===true};this.ksk=function(){var h=[];var g=CanvasXpress.stack&&CanvasXpress.stack[this.target];var j=g&&g.afterRender?g.afterRender:[];for(var d=0;d<j.length;d++){var f=j[d];var e=f[0];h.push({type:d===0&&e==="setDimensions"?"INIT_STATE":this.K25(e),func:e,par:f[1]||[],timestamp:f[4]})}return h};var b={UPDATE_CONFIG:function(d,f){var e=f.config||f;d.v03(e);return{func:"setConfig",par:[e]}},UPDATE_DATA:function(d,e){d.updateData(e.data,false,false,e.config||null);return{func:"updateData",par:[e.data,false,false,e.config||null]}},UPDATE_GROUPING:function(d,f){var e=f.factors||f.grouping||[];d.ev3(e,false,false,false,true);return{func:"groupSamples",par:[e]}},UPDATE_FACETS:function(d,g){var e=g.annotation||g.by;var f=d.Zuk(e)?e:[e];d.yQV(f,true);return{func:"segregateSamples",par:[f]}},UPDATE_TRANSFORMS:function(d,e){d.u1u(e.type,e.axis,false,true);return{func:"transform",par:[e.type,e.axis]}},UPDATE_PIVOT:function(d,e){d.U8i(e.by,true);return{func:"pivot",par:[e.by]}}};this.TVU=function(e,f){if(!e||this.P1r(e)){return false}var d=b[e];if(typeof d!=="function"){return false}var g=d(this,f||{});this.U4z(g?{func:g.func,par:g.par}:{func:e});return true};this.iVi=function(g){if(!g||!g.length){return false}var f=false;for(var d=0;d<g.length;d++){var e=g[d]||{};if(this.TVU(e.type,e.payload)){f=true}}return f}};CanvasXpress.prototype.initStart=function(){this.initIO();this.initCrypt();this.initDOM();this.initViewport();this.initConfig()};CanvasXpress.prototype.initDataset=function(){this.Bf0=function(){var d=this.meta.data?this.otE():undefined;var c=this.meta.data?this.Skj():undefined;var e=this.meta.data?this.MQp():undefined;var b=this.meta.data?this.ARK():undefined;var f=this.meta.data?this.uHa():undefined;var a=this.meta.data?this.meta.data.derived:undefined;delete (this.meta.data);this.UiE(false,false,false,true);if(d!==undefined&&this.meta.data){this.meta.data.wrangled=d}if(c!==undefined&&this.meta.data){this.meta.data.gantt=c}if(e!==undefined&&this.meta.data){this.meta.data.sankey=e}if(b!==undefined&&this.meta.data){this.meta.data.tree=b}if(f!==undefined&&this.meta.data){this.meta.data.bubble=f}if(a!==undefined&&this.meta.data){this.meta.data.derived=a;if(this.graphType=="Network"&&this.nodes){this.Mdc()}}};this.otE=function(a){if(a&&a.wrangled){return a.wrangled}if(this.wrangleBuildTarget){return this.wrangleBuildTarget}if(this.cellWrangled){return this.cellWrangled}return this.meta.data?this.meta.data.wrangled:undefined};this.Dug=function(a){return this.isGroupedData?this.otE(a):this.data.y};this.Rpc=function(){return this.isGroupedData?this.grpIndices:this.smpIndices};this.j45=function(){return this.isGroupedData?this.hiddenGrps:this.hiddenSmps};this.LY3=function(){return this.isGroupedData&&this.otE()?this.otE().factors:this.data.x};this.WtS=function(a){if(!a||!this.layoutValid||!this.layoutGlobalGroups){return undefined}return this.meta.data?this.meta.data.wrangled:undefined};this.feu=function(b){var a=b||this.Dug();return this.isTransformedData&&a.trans&&a.trans.length?a.trans:a.data};this.khQ=function(b){if(!b||!this.isRawData||this.isGroupedData){return null}var a=this.wTq();return a?a:this.feu()};this.wTq=function(){if(this.tidyRenderSource===false||this.isGroupedData||this.isTransformedData||!this.isRawData){return null}var c=this.wni();var b=this.dataVersion+"|"+(c.length?JSON.stringify(c):"");if(this.simpleRenderMatrixKey===b&&this.simpleRenderMatrix!==undefined){return this.simpleRenderMatrix}if(c.length){this.simpleRenderMatrix=this.YdP()}else{var a=this.Fp6();this.simpleRenderMatrix=a.skipped?null:a.data}this.simpleRenderMatrixKey=b;return this.simpleRenderMatrix};this.Skj=function(){return this.meta.data?this.meta.data.gantt:undefined};this.MQp=function(){return this.meta.data?this.meta.data.sankey:undefined};this.ARK=function(){return this.meta.data?this.meta.data.tree:undefined};this.uHa=function(){return this.meta.data?this.meta.data.bubble:undefined};this.Rl9=function(w,s,f,u,c,r){var q={};var p,m,d;var l=this.meta.config.user;if(this.legendOrder&&this.legendOrder[w]){for(p=0;p<this.legendOrder[w].length;p++){q[this.legendOrder[w][p]]=p}m=this.legendOrder[w].length;var v=s?this.elc(s):f;for(p=0;p<v.length;p++){if(!q.hasOwnProperty(v[p])){q[v[p]]=m++}}return q}if(this.isCxplot&&l.aes&&l.aes.meta&&l.aes.meta[w]){var a={};m=0;for(p=0;p<l.aes.meta[w].length;p++){var k=l.aes.meta[w][p];if(s.hasOwnProperty(k)||s.hasOwnProperty(k+"\x00")){a[k]=m++}}return a}if(u){var t={};var g=this;d=this.elc(s).sort(function(n,i){return new Date(g.dateFormat(n)).getTime()-new Date(g.dateFormat(i)).getTime()});for(p=0;p<d.length;p++){if(!t.hasOwnProperty(d[p])){t[d[p]]=p}}return t}if(c){d=this.elc(s).sort(function(n,i){return parseInt(CanvasXpress.dates[n])-parseInt(CanvasXpress.dates[i])});var j={};for(p=0;p<d.length;p++){j[d[p]]=p}return j}if(r){var o={};m=0;for(p=0;p<r.length;p++){if(!o.hasOwnProperty(r[p])){o[r[p]]=m++}}return o}var h=this.elc(s);var b=true;for(p=0;p<h.length;p++){if(!h[p].match("\x00")){b=false;break}}if(b){d=h.sort(function(n,i){return Number(n.replace("\x00",""))-Number(i.replace("\x00",""))});var e={};for(p=0;p<d.length;p++){e[d[p]]=p}return e}return false};this.UCy=function(d,e,r,u,g){var f=this[d+"Key"];var a=f?f[u]:null;var l=CanvasXpress.colorSchemes;if(a){if(this.kgc(a)){r[d+"By"]=a;r[d+"s"]=[];for(var q=0;q<g.length;q++){var b=g[q];if(!r[d+"By"].hasOwnProperty(b)){var v=Number(b.replace("\x00",""));if(r[d+"By"].hasOwnProperty(v)){r[d+"By"][b]=r[d+"By"][v]}else{r[d+"By"][b]=e[q%e.length]}}else{if(d==="color"){r[d+"By"][b]=this.RwK(r[d+"By"][b])}}r[d+"s"][q]=r[d+"By"][b]}}else{if(this.Zuk(a)){r[d+"s"]=a}else{if(d==="color"){var p=g.length;var m=l[a];if(!m[p]){var c=this.elc(m).sort(function(n,j){return n-j});if(p>c[c.length-1]){p=c[c.length-1]}else{if(p<c[0]){p=c[0]}else{var i=p;while(!m[i]&&i<c[c.length-1]){i++}if(!m[i]){i=p;while(!m[i]&&i>c[0]){i--}}p=i}}}r[d+"s"]=[];for(var q=0;q<m[p].length;q++){r[d+"s"][q]=this.RwK(m[p][q])}}}}}else{r[d+"s"]=[];if(d==="color"&&g.length>e.length&&e.length===1&&this.graphType==="Map"){var o=l[this.colorScheme];var h=g.length;var t=this.elc(o).sort(function(n,j){return n-j});if(h>t[t.length-1]){h=t[t.length-1]}else{if(h<t[0]){h=t[0]}}var k=o[h]||o[t[t.length-1]];for(var q=0;q<k.length;q++){r[d+"s"][q]=this.RwK(k[q])}}else{for(var q=0;q<g.length;q++){var s=e[q%e.length];r[d+"s"].push(d==="color"?this.RwK(s):s)}}}};this.SYn=function(c,i,k,q){var m=this.colorSpectrum;var l=this[c+"Key"];var o=l?l[q]:null;var r=CanvasXpress.colorSchemes;if(o){if(this.kgc(o)){i[c+"By"]=o;for(var f=0;f<k.length;f++){var e=k[f].toString();if(!i[c+"By"].hasOwnProperty(e)){i[c+"By"][e]=this[c+"s"][f%this[c+"s"].length]}}i.orderS=this.Rl9(q,false,k)}else{if(c==="color"){if(this.Zuk(o)){m=o}else{var d=r[o];var b=this.elc(d).sort(function(s,j){return s-j});m=d.hasOwnProperty(8)?d[8]:d[b[0]]}}}}if(c==="color"){i.colorBrew=this.qJM(m,i.rmin,i.rmax,this.colorSpectrumZeroValue,this.colorSpectrumBreaks,true);var p=["min","max","zero","vals","incr","decs"];var n=this.Jhz(k).sort(function(s,j){return s-j});for(var f=0;f<p.length;f++){i[p[f]]=i.colorBrew[p[f]]}i.levels=n.length<i.colorBrew.vals.length?i.colorBrew.vals:(n.length>10?i.colorBrew.vals:n);i.order={};i.maxLevLen=0;i.maxLevChr=0;i.maxLevStr="";for(var f=0;f<i.levels.length;f++){var a=i.levels[f];i.order[a]=f;var g=a.toString();var h=this.eUk(g,this.font);if(h>i.maxLevLen){i.maxLevLen=h;i.maxLevChr=g.length;i.maxLevStr=g}}}else{i[c+"s"]=c==="connect"?this.colors:this[c+"s"]}};this.n9f=function(ac,o,f,N,E){var U=this.meta.data;var C=this.data;var H=["x","z","w"];var V=this.font;if(!ac||H.indexOf(ac)!==-1){if(ac&&f){if(!o){delete U[ac]}else{if(U[ac]&&U[ac][o]){delete U[ac][o]}}}for(var T=0;T<H.length;T++){var aa=H[T];if(ac&&ac!==aa){continue}V=aa==="z"?this.varTextFont:this.smpTextFont;var w=aa==="w"?this.otE():C[aa];if(!w){continue}for(var t in w){if(o&&o!==t){continue}if(aa==="w"&&t!=="smps"&&t!=="grps"){continue}if(aa==="w"&&t==="grps"){U[aa].smps={};for(var R=0;R<w.smps.length;R++){U[aa].smps[w.smps[R]]=R}continue}var G={origin:aa,len:this.eUk(t,V)};var W=w[t];var y=this.XmW(W)&&!this.b3e(W)&&!this.AkC(W);G.type=y?"Numeric":"String";if(G.type==="String"&&this.ZP1(W)){var Q=[];for(var R=0;R<W.length;R++){var d=new Date(this.dateFormat(W[R])).getTime();Q.push(isNaN(d)?null:d)}if(this.XmW(Q)){G.type="Numeric";W=Q}}if(G.type==="String"){this.t18(aa,t);G.unique=this.HJq(W);G["boolean"]=this.Vmy(W);G.date=this.ZP1(W);G.monthDay=this.eLp(W);G.geo=this.QP2(W)||this.u86(W);G.priority=this.Ms4(W);G.image=this.XJ7(W);if(G["boolean"]&&this.isR){for(var R=0;R<W.length;R++){if(W[R]!=null&&typeof W[R]==="string"){if(W[R].toLowerCase()==="true"){W[R]=true}else{if(W[R].toLowerCase()==="false"){W[R]=false}else{W[R]=null}}}}}if(G.image){for(var R=0;R<W.length;R++){if(this.images.indexOf(W[R])===-1){this.images.push(W[R]);W[R]=this.AmM(W[R])}}}var Y=this.m0E(W);var I=this.Jr3(W);var ab=this.Rl9(t,Y,false,G.date,G.monthDay,G.priority);var B=this.Djc(this.elc(Y));G.levels=ab?B.sort(function(k,i){var r=ab[k]!==undefined?ab[k]:(ab[k.replace("\x00","")]!==undefined?ab[k.replace("\x00","")]:Infinity);var j=ab[i]!==undefined?ab[i]:(ab[i.replace("\x00","")]!==undefined?ab[i.replace("\x00","")]:Infinity);return r-j}):B;G.clicked={};for(var R=0;R<G.levels.length;R++){G.clicked[G.levels[R]]=true}G.n=[];for(var R=0;R<G.levels.length;R++){G.n.push(Y[G.levels[R]])}G.unordered=I;G.order={};G.maxLevLen=0;G.maxLevChr=0;G.maxLevStr="";for(var R=0;R<B.length;R++){var e=B[R];G.order[e]=ab&&ab.hasOwnProperty(e)?ab[e]:R;var u=this.eUk(e,V);if(u>G.maxLevLen){G.maxLevLen=u;G.maxLevChr=e.length;G.maxLevStr=e}}this.UCy("color",this.colors,G,t,G.levels);this.UCy("shape",this.shapes,G,t,G.levels);this.UCy("size",this.ni5(G.levels.length),G,t,G.levels);this.UCy("pattern",this.patterns,G,t,G.levels);this.UCy("linePattern",this.linePatterns,G,t,G.levels);this.UCy("connect",this.colors,G,t,G.levels)}else{G.unique=false;G.date=this.ctw(W);G["boolean"]=false;var h=[];for(var R=0;R<W.length;R++){h.push(W[R]==null||W[R]===this.missingDataValue?Number.NaN:Number(W[R]))}var l=this.Npb(h);G.rmin=l[0]+(G.date?86400000:0);G.rmax=l[1]+(G.date?86400000:0);G.n=h.length;this.SYn("color",G,h,t);this.SYn("shape",G,h,t);this.SYn("size",G,h,t);this.SYn("pattern",G,h,t);this.SYn("linePattern",G,h,t);this.SYn("connect",G,h,t)}U[aa][t]=G;if(!U.m[aa]){U.m[aa]={}}if(!U.m[aa].maxFacLen||G.len>U.m[aa].maxFacLen){U.m[aa].maxFacLen=G.len;U.m[aa].maxFacChr=t.length;U.m[aa].maxFacStr=t}}}if(N){return}for(var T=0;T<H.length;T++){var aa=H[T];if(ac&&ac!==aa){continue}V=aa==="z"?this.varTextFont:this.smpTextFont;var A;if(aa==="z"){A={lev:"y",prp:"vars",lab:"Var"}}if(aa==="x"||aa==="q"){A={lev:"y",prp:"smps",lab:"Smp"}}if(aa==="w"){A={lev:"w",prp:"smps",lab:"Smp"}}var S=A?(A.lev==="w"?this.otE():C[A.lev]):false;if(A&&S){var a=0,b=0,p="";var n=S[A.prp];if(n.length<=2000){for(var R=0;R<n.length;R++){if(n[R]!=null){var s=n[R].toString();var u=this.eUk(s,V);if(u>a){a=u;b=s.length;p=s}}}}else{var X=0;for(var R=0;R<n.length;R++){if(n[R]!=null){var v=n[R].toString().length;if(v>X){X=v}}}var g=0;for(var R=0;R<n.length&&g<256;R++){if(n[R]!=null){var s=n[R].toString();if(s.length>=X){var u=this.eUk(s,V);g++;if(u>a){a=u;b=s.length;p=s}}}}}U[A.lev]["max"+A.lab+"Len"]=a;U[A.lev]["max"+A.lab+"Chr"]=b;U[A.lev]["max"+A.lab+"Str"]=p;U[A.lev].vars=this.QP2(C.y.vars)?"World":this.u86(C.y.vars)?"USA":this.ZP1(C.y.vars)?"Date":"String";U[A.lev].smps=this.QP2(C.y.smps)?"World":this.u86(C.y.smps)?"USA":this.ZP1(C.y.smps,true)?"Date":"String";if(U[A.lev].smps==="Date"){U[A.lev].date=this.Yaf(C.y.smps)}var J={};var Z={};if(aa==="x"){var O=C.y.smps;for(var R=0;R<O.length;R++){var M=this.Npb(this.akl(R));J[O[R]]={min:M[0],max:M[1],type:"Numeric",date:this.ctw(this.akl(R))};Z[O[R]]=true;if(E){J[O[R]].time=E[R]}}}else{if(aa==="z"){var L=C.y.vars;for(var R=0;R<C.y.data.length;R++){var M=this.Npb(C.y.data[R]);J[L[R]]={min:M[0],max:M[1],type:"Numeric",date:this.ctw(C.y.data[R])};Z[L[R]]=true}}else{if(aa==="w"){var e=this.Dug();var c=(this.layoutValid&&this.meta.data.layout&&this.meta.data.layout.smps)?this.meta.data.layout.smps.map(function(j,i){return i}):(this.isGroupedData&&this.grpIndices?this.grpIndices:this.smpIndices);for(var R=0;R<c.length;R++){var M=this.Npb(this.dZz(R));J[e.smps[R]]={min:M[0],max:M[1],type:"Numeric",date:this.ctw(this.dZz(R))}}}}}if(!U[A.lev].clicked){U[A.lev].clicked={}}if(!U[A.lev]["range"]){U[A.lev]["range"]={}}this.Tqg(U[A.lev]["range"],J);this.Tqg(U[A.lev].clicked,Z)}}this.gcs(ac&&o?this.meta.data[ac][o]:false)}else{if(ac==="y"&&C.y){var a=0,b=0,p="";for(var R=0;R<C.y.vars.length;R++){if(C.y.vars[R]!=null){var s=C.y.vars[R].toString();var u=this.eUk(s,V);if(u>a){a=u;b=s.length;p=s}}}U.y.maxVarLen=a;U.y.maxVarChr=b;U.y.maxVarStr=p;U.y.vars=this.QP2(C.y.vars)?"World":this.u86(C.y.vars)?"USA":this.ZP1(C.y.vars)?"Date":"String";if(!U.y.range){U.y.range={}}for(var R=0;R<C.y.data.length;R++){var M=this.Npb(C.y.data[R]);U.y.range[C.y.vars[R]]={min:M[0],max:M[1],type:"Numeric"}}}else{if(C.y&&C.y[ac]){U[ac]={};var x=0,z=0,F="";var K=C.y[ac];if(this.wD5(K)){for(var R=0;R<K.length;R++){for(var P=0;P<K[R].length;P++){K[R][P]=K[R][P]!=null?Number(K[R][P]):Number.NaN}}var l=this.deg(K);U[ac].rmin=l[0];U[ac].rmax=l[1];U[ac].n=K.length*(K[0]?K[0].length:0);U[ac].type="Numeric";U[ac].colorBrew=this.qJM(this.colorSpectrum,l[0],l[1],null,false,true);var m=["min","max","zero","vals","incr","decs"];for(var R=0;R<m.length;R++){U[ac][m[R]]=U[ac].colorBrew[m[R]]}U[ac].levels=U[ac].colorBrew.vals;U[ac].order={};for(var R=0;R<U[ac].levels.length;R++){var e=U[ac].levels[R];U[ac].order[e]=R;var D=e.toString();var u=this.eUk(D,V);if(u>x){x=u;z=D.length;F=D}}U[ac].maxLevLen=x;U[ac].maxLevChr=z;U[ac].maxLevStr=F;U[ac].shapes=this.shapes;U[ac].sizes=this.sizes;U[ac].patterns=this.patterns}else{var q={};for(var R=0;R<K.length;R++){for(var P=0;P<K[R].length;P++){if(K[R][P]!=null){q[K[R][P]]=true}else{K[R][P]=""}}}var B=this.Djc(this.elc(q));U[ac].levels=B;U[ac].order={};for(var R=0;R<B.length;R++){var e=B[R];U[ac].order[e]=R;var u=this.eUk(e,V);if(u>x){x=u;z=e.length;F=e}}U[ac].maxLevLen=x;U[ac].maxLevChr=z;U[ac].maxLevStr=F;U[ac].type="String";U[ac].colors=[];for(var R=0;R<B.length;R++){U[ac].colors.push(this.colors[R%this.colors.length])}}}}}};this.Oen=function(){if(!this.meta.data){if(!this.graphType.match(/(Scatter)/)&&this.data.y&&this.data.y.smps&&this.ZP1(this.data.y.smps,true)){this.fT6(this.data)}if(this.graphType=="Network"){this.meta.data={nodes:{},edges:{},decorations:{}};this.lE7();this.tA8()}else{if(this.graphType=="Genome"){this.meta.data={tracks:[]};this.slp()}else{if(this.graphType=="Venn"){this.meta.data={}}else{this.meta.data={w:{},x:{},y:{},z:{},m:{},l:[],q:{l:{},g:[],b:false,o:false},bin:{l:[],g:false,c:false},cor:{z:{},s:{},p:[]},ydensity:{m:{},v:[],g:[],s:{},a:{},l:[],q:null,x:{},y:{},z:{},d:{}},cdf:null,km:null,qq:null,stream:null,area:null,density:null,loess:null,regression:null,quantile:null};if(this.data.y){var J=/(^\d{1,4}?[\.|\\/|-]\d{1,2}?[\.|\\/|-]\d{1,4})(\s*(?:0?[1-9]:[0-5]|1(?=[012])\d:[0-5])\d\s*[ap]m)?$/;var L=this.data.y;var B=L.data;var x=new Array(L.smps.length).fill(true);var o=[];if(this.isRawData){var I=this.xAxisTime;var u=this.yAxisTime;var N=this.xAxis[0];var c=this.yAxis[0];var K=this.missingDataValue;for(var F=0,G=L.smps.length;F<G;F++){if((I&&N==L.smps[F])||(u&&c==L.smps[F])){o.push(F)}}for(var F=0,G=o.length;F<G;F++){for(var E=0,h=B.length;E<h;E++){var a=B[E][o[F]];if(a!=null&&toString.call(a)!=="[object Date]"&&J.test(a)){B[E][o[F]]=new Date(a).getTime()}}}var G=B.length;for(var F=0;F<G;F++){if(B[F]!=null){var h=B[F].length;for(var E=0;E<h;E++){var H=B[F][E];if(H!=null){if(x[E]&&!this.ZP1([H])){x[E]=false}B[F][E]=H==K?Number.NaN:Number(H)}else{B[F][E]=Number.NaN}}}else{if(this.graphType=="Map"){B[F]=[]}}}}else{var w=this.summaryType=="iqr"?["iqr1","iqr3","median","qtl1","qtl3","out"]:[this.summaryType];var s=w.length;var K=this.missingDataValue;var b=this.summaryType;for(var F=0;F<s;F++){var v=w[F];if(L.hasOwnProperty(v)){var z=L[v];var p=z.length;for(var E=0;E<p;E++){var r=z[E];var g=r.length;for(var D=0;D<g;D++){if(v=="out"){var e=r[D];var y=e.length;for(var C=0;C<y;C++){if(e[C]!=null){e[C]=e[C]==K?Number.NaN:Number(e[C])}else{B[F][E]=Number.NaN}}}else{if(r[D]!=null){r[D]=r[D]==K?Number.NaN:Number(r[D])}else{r[D]=Number.NaN}}}}}else{if(v){L[v]=[];var O=b=="iqr"?"median":b;var M=L[O];var n=M.length;for(var E=0;E<n;E++){var r=L[v][E]=[];var q=M[E];var A=q.length;for(var D=0;D<A;D++){r[D]=[]}}}}}var v=b=="iqr"?"median":b;var z=L[v];var p=z?z.length:0;L.data=[];if(v){for(var F=0;F<p;F++){L.data.push(z[F])}}}}this.n9f(false,false,false,false,x)}}}}if(!this.meta.data){this.meta.data={}}};this.deg=function(g){var d=Number.POSITIVE_INFINITY;var a=Number.NEGATIVE_INFINITY;var e=this.varIndices.length;for(var c=0;c<e;c++){var f=this.smpIndices.length;for(var b=0;b<f;b++){if(this.varIndices[c]!=null&&this.smpIndices[b]!=null&&g[this.varIndices[c]]!=null){var h=g[this.varIndices[c]][this.smpIndices[b]];if(!isNaN(h)){d=Math.min(h,d);a=Math.max(h,a)}}}}d=d==Number.POSITIVE_INFINITY||d==Number.NEGATIVE_INFINITY?-1:d;a=a==Number.NEGATIVE_INFINITY||a==Number.POSITIVE_INFINITY?1:a;return[d,a]};this.cTp=function(e){var q=this;var p=["color","shape","size","line","pattern","outline","connect","workflow","ellipse","ridge","stack","pie"];var b=this.mWg();var c="";var n=function(){if(q.graphType.match(/Scatter/)){if(q.meta.data.hasOwnProperty("z")&&q.meta.data.z.hasOwnProperty("variable")){return"variable"}else{return false}}else{if(q.meta.data.hasOwnProperty("x")&&q.meta.data.x.hasOwnProperty("variable")){return"variable"}else{return false}}};for(var h=0;h<p.length;h++){var t=this[p[h]+"By"];if(this.Zuk(t)){t=t[0]}var r=this[t+"Data"];if(t){if(this.isMultidimensionalData){if(r&&!this.data.y[r]){this[p[h]+"By"]=false;this[t+"Data"]=false}}else{if(t=="variable"){continue}else{if(t=="data"&&this.ridgeBy){continue}else{if(this.data.x&&this.data.x.hasOwnProperty(t)){continue}else{if(this.data.z&&this.data.z.hasOwnProperty(t)){if(p[h].match(/ellipse|ridge/)&&this.meta.data.z[t].type=="Numeric"){this[p[h]+"By"]=false}continue}else{if(this.OKx(t)!=-1||this.OKx(t,true)!=-1){continue}else{if(this.OOg()&&t=="sample"&&(p[h]=="shape"||p[h]=="color")){continue}else{this[p[h]+"By"]=false}}}}}}}}}if(this.treemapBy.length>0){var k=[];var g=[];for(var h=0;h<this.treemapBy.length;h++){if(this.treemapBy[h]=="sample"){g.push("sample")}else{if(!this.data.x||!this.data.x.hasOwnProperty(this.treemapBy[h])){g.push("sample")}else{if(this.data.x&&this.data.x.hasOwnProperty(this.treemapBy[h])){k.push(this.treemapBy[h])}}}}if(g.length>0){}this.treemapBy=k}var o=this.graphType.match(/Boxplot|Dotplot|Gantt|Scatter|Map|Circular/)||this.graphType=="Tree";if(this.shapeBy&&!this.isMultidimensionalData&&!o){c+="shapeBy changed to false (shapeBy not support in"+this.graphType+")\n";this.shapeBy=false}else{if(this.shapeBy&&this.groupingFactors.length>1&&!o){c+="shapeBy changed to variable (multiple grouping factors not allowed)\n";this.shapeBy="variable"}else{if(this.shapeBy&&this.groupingFactors.length==1&&this.shapeBy!=this.groupingFactors[0]&&!o){c+="shapeBy changed to variable (grouping factor should the same as shapeBy)\n";this.shapeBy="variable"}}}if(this.sizeBy&&!this.isMultidimensionalData&&!o){c+="sizeBy changed to false (sizeBy not support in"+this.graphType+")\n";this.sizeBy=false}else{if(this.sizeBy&&this.groupingFactors.length>1&&!o){c+="sizeBy changed to variable (multiple grouping factors not allowed)\n";this.sizeBy="variable"}else{if(this.sizeBy&&this.groupingFactors.length==1&&this.sizeBy!=this.groupingFactors[0]&&!o){c+="sizeBy changed to variable (grouping factor should the same as sizeBy)\n";this.sizeBy="variable"}}}if(this.colorBy&&this.graphType=="Heatmap"&&!this.isMultidimensionalData){this.GrX(this.colorBy)}else{if(this.graphType=="Heatmap"&&this.heatmapType=="split"&&b){this.ZgC()}else{if(this.colorBy&&this.groupingFactors.length>1&&!this.graphType.match(/Boxplot|Dotplot|Gantt|Scatter|Stacked|Treemap/)&&!this.isCxplot){c+="colorBy changed to variable (multiple grouping factors not allowed)\n";this.colorBy="variable"}else{if(this.colorBy&&this.groupingFactors.length==1&&this.colorBy!=this.groupingFactors[0]&&!this.graphType.match(/Boxplot|Dotplot|Gantt|Scatter|Stacked|Treemap|Line/)&&this.barType!="swimmer"){if(this.toDoPivot){this.colorBy=false}else{c+="colorBy changed to variable (grouping factor should the same as colorBy)\n";this.colorBy="variable"}}}}}if((this.shapeBy||this.sizeBy||this.patternBy||this.outlineBy)&&!this.colorBy&&!this.isMultidimensionalData&&!this.graphType=="Heatmap"&&!this.isCxplot){this.colorBy="variable"}else{if(!this.shapeBy&&!this.sizeBy&&!this.patternBy&&this.colorBy=="variable"&&this.graphType!="Map"){this.colorBy=n()}}if(this.shapeBy=="variable"&&!this.colorBy&&!this.OOg()){this.colorBy="variable"}if(this.sizeBy=="variable"&&!this.colorBy&&!this.OOg()){this.colorBy="variable"}if(this.patternBy=="variable"&&!this.colorBy&&!this.OOg()){this.colorBy="variable"}if(this.stackBy&&!this.colorBy){this.colorBy=this.stackBy}else{if(this.stackBy&&this.colorBy&&this.stackBy!=this.colorBy){c+="colorBy changed to stackBy (remove stackBy to color by different factor)\n";this.colorBy=this.stackBy}}if(this.dodgeBy&&!this.colorBy){this.colorBy=this.dodgeBy}else{if(this.dodgeBy&&this.colorBy&&this.dodgeBy!=this.colorBy){c+="colorBy changed to dodgeBy (remove dodgeBy to color by different factor)\n";this.colorBy=this.dodgeBy}}if(this.lineBy&&!this.colorBy&&this.isGroupedData){}else{if(this.lineBy&&this.colorBy&&this.lineBy!=this.colorBy&&this.isGroupedData){c+="colorBy changed to lineBy (remove lineBy to color by different factor)\n";this.colorBy=this.lineBy}else{if(this.lineBy&&!this.isGroupedData&&this.graphType!="Scatter2D"){c+="Data needs to be grouped";this.lineBy=false}}}if(c!=""){console.warn("[CanvasXpress] validatePropertyValues: "+c);this.FmO(10,10,c,3000)}if(this.colorBy||this.shapeBy||this.sizeBy||this.lineBy){var p=["colorBy","shapeBy","lineBy"];var s=[];for(var h=0;h<p.length;h++){if(this[p[h]]){s.push(p[h])}}var u=[];for(var f=0;f<s.length;f++){if(u.indexOf(this[s[f]])===-1){u.push(this[s[f]])}}if(u.length===1){this.legendCombine=s}}if(e){this.XSd()}};this.UJi=function(a,t){var s=this.meta.data;var d=this.data;var u=this.graphType=="Network"?["nodes","edges"]:["x","z"];if(a&&t){t.colors=a;t.connects=a}else{for(var p=0;p<u.length;p++){var f=u[p];if(d[f]){if(this.graphType=="Network"){this.decorationsTextColors=[];return}else{var b=d[f]||s[f];for(var h in b){if(s[f][h]&&s[f][h].type=="String"){var r=b[h];var q=this.Jr3(d[f]?r:r.levels);var c=this.Djc(q);var e=c.length;if((!this.colorKey&&this.graphType!="Map")||(this.colorKey&&!this.colorKey.hasOwnProperty(h))){s[f][h].colors=[];var v=0;if(e!=a.length&&this.colorScheme){var g=this.kYX(e,this.colorScheme);for(var l=0;l<c.length;l++){s[f][h].colors.push(g[v%g.length]);v++}}else{for(var l=0;l<c.length;l++){s[f][h].colors.push(a[v%a.length]);v++}}}}}}}}}};this.M6X=function(){var d=this.data.y;if(this.isGroupedData){if(!this.wrangleBuildTarget){this.meta.data.wrangled={}}d=this.otE()}var b=["vars","smps","labs","glab","desc","data","mean","median","stdev","n","qtl1","qtl3","iqr1","iqr3","out","conf","nfac","trans","tstdev","cor","min","max","sum","count","grps","grpIdxs","factors","scale"];var c=b.length;for(var a=0;a<c;a++){if(!d[b[a]]){if(b[a]=="factors"){d[b[a]]={}}else{d[b[a]]=[]}}}d.iqr=d.median};this.Doz=function(a){var c=["mean","median","stdev","n","qtl1","qtl3","iqr1","iqr3","out","conf","nfac","cor","min","max","sum","count","grps","grpIdxs","factors","scale"];var d=c.length;if(this.isGroupedData){if(!this.isTransformedData){c.push("trans");c.push("tstdev")}d=c.length;for(var b=0;b<d;b++){delete (this.data.y[c[b]])}if(this.data){delete this.otE()}}else{if(!this.isTransformedData){c.push("trans");c.push("tstdev")}d=c.length;if(this.isRawData){for(var b=0;b<d;b++){delete (this.data.y[c[b]])}}else{}}if(a&&this.isRawData){this.M6X()}};this.rvP=function(h,g,m,d,f,n,p,l,b,a,o){var c=Number.NaN;if(a===undefined){a=this.Dug()}if(l){c=this.data.y[l][h][g]}else{if(this.isGroupedData||!this.isRawData){if(this.isTransformedData){if(!m){c=a.trans[h][g]}else{if(m=="stdev"){c=a.tstdev[h][g]}else{if(a.hasOwnProperty(m)){c=a[m][h][g]}}}}else{m=m?m:this.summaryType;if(a.hasOwnProperty(m)){c=a[m][h]?a[m][h][g]:NaN}else{c=0}}}else{if(o===undefined){o=this.wTq()}if(m){if(a[m]&&a[m][h]){c=a[m][h][g]}else{if(m=="sum"&&!this.isGroupedData){c=o&&o[h]?o[h][g]:a.data[h][g]}}}else{if(this.isTransformedData&&a.trans&&a.trans.length){c=a.trans[h][g]}else{c=o&&o[h]?o[h][g]:a.data[h][g]}if(b){c=b-c}}}}if(d!="percentile"&&((f!=null||n!=null||p))){if(p){if(m=="out"){for(var e=0;e<c.length;e++){c[e]*=p}}else{c*=p}}if(f!=null&&f!=false&&f!=undefined){if(m=="out"){for(var e=0;e<c.length;e++){c[e]=Math.max(f,c[e])}}else{c=Math.max(f,c)}}if(n!=null&&n!=false&&n!=undefined){if(m=="out"){for(var e=0;e<c.length;e++){c[e]=Math.min(n,c[e])}}else{c=Math.min(n,c)}}}if(d){if(!isNaN(c)){if(d=="log2"){c=Math.log(c)/Math.LN2}else{if(d=="log10"){c=Math.log(c)/Math.LN10}else{if(d=="-log2"){c=-Math.log(c)/Math.LN2}else{if(d=="-log10"){c=-Math.log(c)/Math.LN10}else{if(d=="exp2"){c=Math.pow(2,c)}else{if(d=="exp10"){c=Math.pow(10,c)}else{if(d=="sqrt"){c=Math.sqrt(c)}else{if(d=="percentile"){c=this.Amv(f,n,c)}}}}}}}}}}return c==null?Number.NaN:c};this.TQ3=function(n,h,t,d,g,q,u){var b=this.Dug();var s=this.wTq();var o=d&&d!=="percentile"&&(g!=null||q!=null||u);var r=d==="percentile";var l=[];for(var f=0;f<t.length;f++){var p=t[f];var c=Number.NaN;if(this.isGroupedData||!this.isRawData){if(this.isTransformedData){if(!p){c=b.trans[n][h]}else{if(p==="stdev"){c=b.tstdev[n][h]}else{if(b.hasOwnProperty(p)){c=b[p][n][h]}}}}else{var a=p?p:this.summaryType;if(b.hasOwnProperty(a)){c=b[a][n]?b[a][n][h]:NaN}else{c=0}}}else{if(p){if(b[p]&&b[p][n]){c=b[p][n][h]}else{if(p==="sum"&&!this.isGroupedData){c=s&&s[n]?s[n][h]:b.data[n][h]}}}else{if(this.isTransformedData&&b.trans&&b.trans.length){c=b.trans[n][h]}else{c=s&&s[n]?s[n][h]:b.data[n][h]}}}if(o){if(u){if(p==="out"){for(var e=0;e<c.length;e++){c[e]*=u}}else{c*=u}}if(g!=null&&g!==false&&g!==undefined){if(p==="out"){for(var e=0;e<c.length;e++){c[e]=Math.max(g,c[e])}}else{c=Math.max(g,c)}}if(q!=null&&q!==false&&q!==undefined){if(p==="out"){for(var e=0;e<c.length;e++){c[e]=Math.min(q,c[e])}}else{c=Math.min(q,c)}}}if(d&&!isNaN(c)){if(d==="log2"){c=Math.log(c)/Math.LN2}else{if(d==="log10"){c=Math.log(c)/Math.LN10}else{if(d==="-log2"){c=-Math.log(c)/Math.LN2}else{if(d==="-log10"){c=-Math.log(c)/Math.LN10}else{if(d==="exp2"){c=Math.pow(2,c)}else{if(d==="exp10"){c=Math.pow(10,c)}else{if(d==="sqrt"){c=Math.sqrt(c)}else{if(r){c=this.Amv(g,q,c)}}}}}}}}}l.push(c==null?Number.NaN:c)}return l};this.akl=function(b){var a=[];var d=this.data.y.data.length;for(var c=0;c<d;c++){a.push(this.data.y.data[c][b])}return a};this.dZz=function(k,m,j,d){var h=[];if(!m){m=this.varIndices}if(this.isGroupedData||!this.isRawData){var b=this.Dug();if(this.isTransformedData){if(b.trans[0]&&b.trans[0][k]){h.push(b.trans[0][k])}}else{j=this.summaryType=="iqr"?"median":this.summaryType;if(b.hasOwnProperty(j)&&b[j].length){var c=this.isDOE&&this.isDOE==1?this.data.y.vars.length:m.length;for(var g=0;g<c;g++){var l=m[g];if(b[j][l]){h.push(b[j][l][k])}}}}}else{var f=j?this.data.y[j]:this.data.y.data;var c=this.isDOE&&this.isDOE==1?this.data.y.vars.length:m.length;var a=this.xAxisIndices||[];var o=this.yAxisIndices||[];var e=a.includes(k)?"x":o.includes(k)?"y":false;if(this.isTransformedData){for(var g=0;g<c;g++){var l=m[g];if(this.data.y.trans[l]){h.push(this.data.y.trans[l][k])}}}else{if(d){for(var g=0;g<c;g++){var l=m[g];if(l==undefined){continue}h.push(this.rvP(l,k,false,d,this[e+"AxisFloorValue"],this[e+"AxisCeilValue"],this[e+"AxisFactorValue"]))}}else{for(var g=0;g<c;g++){var l=m[g];if(f[l]){if(e){h.push(this.rvP(l,k,false,d,this[e+"AxisFloorValue"],this[e+"AxisCeilValue"],this[e+"AxisFactorValue"]))}else{h.push(f[l][k])}}}}}}return h};this.UPc=function(b){var a=[];var e=this.smpIndices.length;if(this.isTransformedData){for(var c=0;c<e;c++){var d=this.smpIndices[c];a.push(this.data.y.trans[b][d])}}else{for(var c=0;c<e;c++){var d=this.smpIndices[c];a.push(this.data.y.data[b][d])}}return a};this.dfh=function(a){var c={};if(this.data.z){for(var b in this.data.z){c[b]=this.dl6(a,"z",b)}}c[name]=this.data.y.vars[a];return c};this.cuI=function(a){if(this.isGroupedData){return this.OhZ(a)}else{return this.o2C(a)}};this.o2C=function(a){var c={};if(this.data.x){for(var b in this.data.x){c[b]=this.dl6(a,"x",b)}}c.name=this.data.y.vars[a];return c};this.OhZ=function(a){var d=[];var e=this.otE().grps[a].length;for(var b=0;b<e;b++){var c=this.otE().grps[a][b];d.push(this.getMetaDataForSmpAtIndex[c])}return d};this.UkJ=function(e,d){var a=[];if(this.meta.data[e]){for(var b in this.meta.data[e]){if(d&&this.meta.data[e][b].type==d){a.push(b)}else{if(!d){a.push(b)}}}}return a};this.G9W=function(d,f,c,k,e){var l=d.vals.length-1;var g;if((k[e]=="shapes"&&!this.shapeByContinuous)||(k[e]=="sizes"&&!this.sizeByContinuous)){for(var j=0;j<d.vals.length;j++){if(f<=d.vals[j]){g=j;break}}}else{g=Math.min(Math.max(Math.floor(f*(d.vals.length+1)/d.vals[l])-1,0),l)}return c?g:parseInt(this[k[e]][g%this[k[e]].length])};this.ifw=function(b,d,c){var e=b.vals?b.vals.length-1:b.values.length-1;return parseFloat((((d-b.min)/(b.max-b.min))*(this[c][e]-this[c][0])))+parseInt(this[c][0])};this.dl6=function(a,d,e,c){var f=d=="x"?this.data.x:d=="z"?this.data.z:false;if(this.isGroupedData&&!c&&d!="z"){var b=this.otE();return b&&b.factors.hasOwnProperty(e)?b.factors[e][a]:"NoCatFound"}else{if(f&&f.hasOwnProperty(e)){return f[e][a]}else{return undefined}}};this.aestheticChannelKeys={colorBy:"color",sizeBy:"size",shapeBy:"shape",patternBy:"pattern",xAxis:"x",yAxis:"y",lineBy:"line",linePatternBy:"linetype"};this.zB1=function(c){var b=this.aestheticChannelKeys[c];if(b&&this.activeLayerMapping&&this.activeLayerMapping.hasOwnProperty(b)){return this.activeLayerMapping[b]}if(this.specDriven&&this.aestheticChannelKeys.hasOwnProperty(c)&&this.meta&&this.meta.cxplot&&this.meta.cxplot.mapping){var a=this.meta.cxplot.mapping();if(a&&a.hasOwnProperty(b)){var e=a[b];var d=(b==="x"||b==="y");if(!d||(e!=null&&!(e.length===0))){return e}}}return this[c]};this.BwU=function(f,e,d,c,g){return this.JiA(d,f,e,c,g)};this.YhK=function(b,a){if(this.specDriven&&a&&this.meta&&this.meta.cxplot&&this.meta.cxplot.scales){var c=this.meta.cxplot.scales();if(c&&c.hasOwnProperty(a)&&c[a]){return c[a]}}return this[a]};this.aNQ=function(c,b){if(this.specDriven&&this.meta&&this.meta.cxplot&&this.meta.cxplot.scales){var a=this.aestheticChannelKeys[c];if(a){var d=this.meta.cxplot.scales();return d?d[a+b]:undefined}}return undefined};this.iWE=function(c,a,d){var b=this.aNQ(c,"Manual");if(b&&b.hasOwnProperty(d)){return b[d]}return a[c][d]};this.sQA=function(c,b,d){var a=this.aNQ(c,"Continuous");if(typeof a==="function"){return a(b)}return d()};this.JiA=function(H,F,D,f,u){var E=H;var C=f;var e=this;var x,w,j,A,k;var r=C||this.zB1(E);var B=this.aF4();var z=this.groupingFactors&&this.groupingFactors.length==1;var n=this.data;var G=this.meta.data;var y={colorVarDendrogramBy:"colors",colorSmpDendrogramBy:"colors",colorBy:"colors",colorLabelBy:"colors",colorByData:"colors",outlineBy:"colors",outlineByData:"colors",markerBy:"colors",shapeBy:"shapes",shapeByData:"shapes",sizeBy:"sizes",sizeLabelBy:"sizes",sizeByData:"sizes",patternBy:"patterns",patternByData:"patterns",stackBy:"colors",dodgeBy:"colors",lineBy:"colors",linePatternBy:"linePatterns",confidenceBy:"colors"};var v=this.YhK(E,y[E]);var d=function(){var b={};var h=0;if(D>=0&&e.otE().grps[D]){for(var g=0;g<e.otE().grps[D].length;g++){var c=G.x[r].type;var a=n.x[r][e.otE().grps[D][g]];if(!b.hasOwnProperty(a)){b[a]=true;h++}if(h>1){return false}}}return true};var i=function(){if(!e.patternBy){if(F>e.colors.length-1&&!e.colorBy){return v[Math.floor(F/e.colors.length)]}else{return v[0]}}else{return v[0]}};var o=E&&v?v.length:false;if(F!=null&&D!=null&&r&&n.y.hasOwnProperty(r)){x=n.y[r][F][D];w=G[r];j=w.type}else{if(D!=null&&r&&n.x&&n.x.hasOwnProperty(r)){w=G.x[r];if(B||!this.isGroupedData){j=w.type;x=this.graphType=="Gantt"?n.x[r][D]:this.isGroupedData?this.otE().smps[D]:n.x[r][D];if(w[E]&&w[E].hasOwnProperty(x)){return this.iWE(E,w,x)}else{if(E=="colorSmpDendrogramBy"&&w.colorBy&&w.colorBy.hasOwnProperty(x)){return w.colorBy[x]}}}else{if((z&&(this.groupingFactors[0]==r||d()))||(!z&&this.isGroupedData&&this.isCxplot&&this.groupingFactors.length>1)){j=w.type;x=D!==false&&D>=0&&this.otE().grps[D]?n.x[r][this.otE().grps[D][0]]:false;if(x&&E.match(/color|patternBy/)){if(w[E]&&w[E].hasOwnProperty(x)){return this.iWE(E,w,x)}else{if(w[y[E]]){return w[y[E]][w.order[x]%o]}else{return v[w.order[x]%o]}}}else{return w[y[E]]?w[y[E]][0]:E.match(/color/)?v[0]:E=="patternBy"?i():v[0]}}else{return F!=null&&E.match(/color/)?v[F%o]:E=="patternBy"?i():v[0]}}}else{if(F!=null&&r&&n.z&&n.z.hasOwnProperty(r)){w=G.z[r];j=w.type;x=n.z[r][F];if(w[E]&&(w[E].hasOwnProperty(x)||w[E][x])){return this.iWE(E,w,x)}else{if(w[E]&&(w[E].hasOwnProperty(x+"\x00")||w[E][x+"\x00"])){return w[E][x+"\x00"]}else{if(w[E]&&w[E][x.replace("\x00","")]){return w[E][x.replace("\x00","")]}else{if(E=="colorVarDendrogramBy"&&w.colorBy&&w.colorBy.hasOwnProperty(x)){return w.colorBy[x]}else{if(w[E]&&E=="linePatterns"&&w.order&&w.order.hasOwnProperty(x)){return w[E][w.order[x]%this.YhK(E,E).length]}}}}}}else{if(F!=null&&D!=null&&E&&((this.isGroupedData&&G.w.smps.hasOwnProperty(E))||(!this.isGroupedData&&G.y.range.hasOwnProperty(E)))){x=n.y.data[F][D];w=G.y.range[E];j=G.y.type}else{if(F!=null&&!this.isGroupedData&&r&&G.y.range.hasOwnProperty(r)){w=G.y.range[r];j=w.type;k=D!=null?false:this.OKx(r);x=D!=null?n.y.data[F][D]:n.y.data[F]?n.y.data[F][k>=0?k:0]:0;if(G.modified&&G.modified.z&&G.modified.z[r]){return v[x%o]}else{if(!w.colorBrew){w.colorBrew=this.qJM(false,w.min,w.max);w.vals=w.colorBrew.vals}}}else{if(F!=null){if(r){return v[F%o]}else{return !r&&E.match(/color/)?v[F%o]:E=="patternBy"?i():v[0]}}else{return v[0]}}}}}}if(j=="Numeric"){if(E.match(/color|outlineBy/)){return !isNaN(x)&&x!==null?this.sQA(E,Number(x),function(){return e.w7m(w.colorBrew,Number(x))}):this.missingDataColor}else{if(E.match(/shapeBy/)){if(!isNaN(x)){return this.shapeByContinuous?"pie"+this.G9W(w,x,true,y,E):v[this.G9W(w,x,true,y,E)]}else{return"sphere"}}else{if(E.match(/sizeBy/)){if(!isNaN(x)){return this.sizeByContinuous?this.ifw(w,x,y[E]):this.G9W(w,x,false,y,E)}else{return v[0]}}else{if(E.match(/patternBy/)){if(!isNaN(x)){return this.G9W(w,x,false,y,E)}else{return"closed"}}}}}}else{if(j=="String"){if(w[y[E]]){if(u){if(E=="sizeLabelBy"){return this.t5v([5,9,13,17,21],this.Amv(w[y[E]][0],w[y[E]][w[y[E]].length-1],w[y[E]][w.order[x]%w[y[E]].length])/100)}else{return this.Amv(w[y[E]][0],w[y[E]][w[y[E]].length-1],w[y[E]][w.order[x]%w[y[E]].length])}}else{return E=="sizeBy"?parseInt(w[y[E]][w.order[x]%w[y[E]].length]):w[y[E]][w.order[x]%w[y[E]].length]}}else{return E=="sizeBy"?parseInt(v[w.order[x]%v.length]):v[w.order[x]%v.length]}}}};this.ItU=function(p,d,n,h,b){var j=[];var r={};var e=this.data[n];var g=this.meta.data[n];if(e&&p&&e[p]){g=g[p];for(var k=0;k<d.length;k++){var q=d[k];var f=this.dl6(q,n,p,h)||"";if(!r.hasOwnProperty(f)){j.push(f)}r[f]=true}if(g&&b){if(g.monthDay){j=j.sort(function(i,c){return parseInt(CanvasXpress.dates[i])-parseInt(CanvasXpress.dates[c])})}else{if(this.scatterPlotMatrix){j=j.sort(function(i,c){return i.toLowerCase().localeCompare(c.toLowerCase())})}else{j=j.sort(function(i,c){return g.n[g.order[c]]-g.n[g.order[i]]||c>i})}}}}return j};this.OKx=function(b,e,d,f,c){if(!f){f=this.isGroupedData&&!e?this.otE().smps:this.data.y.smps;c=this.C8j(f)}return this.KnJ(b,f,c)};this.U4o=function(){var c=[];var g=this.Dug().smps;var h=this.Dug();var e=this.j45();var f=this.Rpc();for(var d=0;d<g.length;d++){var a=-1;for(var b=0;b<f.length;b++){if(f[b]==d){a=b;break}}c.push({name:g[d],hidden:e[d],index:a})}return c};this.aAF=function(b){return this[b]||[]};this.Iop=function(c,b,d){return this.tAP(c,b,d||this.smpIndices,"x",this.hiddenSmps)};this.WJr=function(b,c){return this.ItU(b,c||this.smpIndices,"x",true)};this.F2A=function(b,e,d,c){return this.hdU(b,e,d,c,"x")};this.mlX=function(b,e,d,c){if(!d){d=this.data.y.vars;c=this.C8j(d)}return this.KnJ(b,d,c)};this.YkM=function(){var d=[];for(var c=0;c<this.data.y.vars.length;c++){var a=-1;for(var b=0;b<this.varIndices.length;b++){if(this.varIndices[b]==c){a=b;break}}d.push({name:this.data.y.vars[c],hidden:this.hiddenVars[c],index:a})}return d};this.W8o=function(b){return this[b+"VarIndices"]};this.ctV=function(c,b,d){return this.tAP(c,b,d||this.varIndices,"z",this.hiddenVars)};this.fqb=function(b,c){return this.ItU(b,c||this.varIndices,"z")};this.Trd=function(b,e,d,c){return this.hdU(b,e,d,c,"z")};this.KnJ=function(b,f,c){if(b!=null&&f){if(!c){c=this.C8j(f)}var e=[];if(this.Zuk(b)){if(this.Zuk(f)){var g=b.length;for(var d=0;d<g;d++){if(c.hasOwnProperty(b[d])){e.push(c[b[d]])}}return e}else{return c.hasOwnProperty(f)?c[f[d]]:-1}}else{return f.indexOf(b.toString())}}};this.tAP=function(k,e,b,j,g){var p=[];var d=this.data[j];if(d&&k&&d[k]){if(e){for(var f=0;f<b.length;f++){var n=b[f];var m=this.dl6(n,j,k);if(m==e){if(g&&!g[n]){p.push(n)}else{p.push(n)}}}}else{for(var f=0;f<b.length;f++){var n=b[f];var m=this.dl6(n,j,k);if(!m){if(g&&!g[n]){p.push(n)}else{p.push(n)}}}}}return p};this.hdU=function(m,d,l,g,k){var b={};var h=[];var j=false;var e=this.data[k];if(!d){d=k=="x"?this.smpIndices:this.varIndices}if(e&&e.hasOwnProperty(m)){for(var f=0;f<d.length;f++){var p=d[f];var n=this.dl6(p,k,m);if(n!=null){b[n]=true;h.push(n)}else{j=true}}if(j){h.push("")}if(g){return l?h.join("+"):h}else{h=[]}for(var f in b){h.push(f)}if(j){h.push("")}return l?h.join("+"):h}};this.ZJf=function(f,a,b,e){var d=this.pcR(f||0);if(!a){a=d.varIndices}if(!b){b=this.isGroupedData?d.grpIndices:d.smpIndices}if(e||!d.startingVarIndices||d.startingVarIndices.length==0){d.startingVarIndices=this.QWl(a)}if(this.isGroupedData){if(e||!d.startingGrpIndices||d.startingGrpIndices.length==0){d.startingGrpIndices=this.QWl(b)}}else{if(e||!d.startingSmpIndices||d.startingSmpIndices.length==0){d.startingSmpIndices=this.QWl(b)}}};this.XME=function(c,a,b){if(this.graphType=="Network"){this.imI()}else{if(this.graphType!="Genome"&&this.graphType!="Venn"){this.Tyt(c,b);this.UFP(a,b)}}};this.FB7=function(c){if(this.isGroupedData&&this.grpIndices&&this.otE()){if(c&&this.grpIndices.length){var a=[];for(var b=0;b<this.grpIndices.length;b++){var d=this.otE().grps[this.grpIndices[b]];if(d){a=a.concat(d)}}this.smpIndices=a}else{this.XME()}}};this.Tyt=function(g,h){var j=this.data;if(j.y){var c=j.y.vars;if(!c){c=[];if(j.y.data){for(var f=0;f<j.y.data.length;f++){c.push("var"+(f+1))}}else{c=[];j.y.data=null}j.y.vars=c}var a=[];var b=[];if(!this.isDOE&&this.xAxis.length&&this.CgJ()){g=this.xAxis2.length?this.mlX(this.zB1("xAxis")).concat(this.mlX(this.xAxis2)):this.mlX(this.zB1("xAxis"));if(this.Zuk(g)){if(!g.length&&(this.isPivot||this.graphType=="Pie"||this.graphType=="Map")){for(var f=0;f<j.y.data.length;f++){g.push(f)}}}else{if(g>=0){g=[g]}else{g=false}}}if(g&&g.length){for(var f=0;f<g.length;f++){a.push(g[f]);b.push(false)}}else{for(var f=0;f<c.length;f++){a.push(f);b.push(false)}}if(!h&&this.smpIndices&&!this.inAfterDoFilter){this.inAfterDoFilter=true;this.Dct();this.inAfterDoFilter=false}if(this.layoutComb&&this.layoutParams){for(var f=0;f<this.layoutParams.length;f++){var e=this.layoutParams[f];if(e&&e.startingVarIndices){e.varIndices=e.startingVarIndices;e.varIndicesStart=-1}}}this.varIndices=a;this.hiddenVars=b}};this.uZu=function(b){this.varIndices=[];for(var c=0;c<b.length;c++){this.varIndices.push(b[c])}};this.g1B=function(c,b){var d=this[c+"VarIndices"];d=[];for(var e=0;e<b.length;e++){d.push(b[e])}};this.UFP=function(a,c,b){var f=this.data;if(f.y){var k=f.y.smps;if(!k&&f.y.vars){if(!f.y.data){alert("Missing data object")}k=[];for(var e=0;e<f.y.data[0].length;e++){k.push("smp"+(e+1))}f.y.smps=k}var h=[];var g=[];if(a){for(var e=0;e<a.length;e++){h.push(a[e]);g.push(false)}}else{for(var e=0;e<k.length;e++){h.push(e);g.push(false)}}if(!c&&this.varIndices&&!this.inAfterDoFilter){this.inAfterDoFilter=true;this.Dct();this.inAfterDoFilter=false}this.smpIndices=this.sortDir=="descending"?h.reverse():h;this.hiddenSmps=this.sortDir=="descending"?g.reverse():g}if(this.meta.data&&this.otE()&&this.otE().smps){h=[];g=[];this.hiddenGrps=[];for(var e=0;e<this.otE().smps.length;e++){h.push(e);g.push(false)}this.grpIndices=this.sortDir=="descending"?h.reverse():h;this.hiddenGrps=this.sortDir=="descending"?g.reverse():g}if(this.layoutComb&&this.layoutParams&&!b){for(var e=0;e<this.layoutParams.length;e++){var j=this.layoutParams[e];if(j){if(j.startingSmpIndices){j.smpIndices=j.startingSmpIndices;j.smpIndicesStart=-1}if(this.isGroupedData&&j.startingGrpIndices){j.grpIndices=j.startingGrpIndices;j.grpIndicesStart=-1}}}}};this.dbt=function(b,e){if(this.isGroupedData&&!this.otE()){this.grpIndices=[];for(var d=0;d<b.length;d++){this.grpIndices.push(b[d])}}else{this.smpIndices=[];for(var d=0;d<b.length;d++){this.smpIndices.push(b[d])}}if(e){var c=this.EBF(b);var g=this.Dug();var f=this.j45();for(var d=0;d<g.smps.length;d++){if(c.hasOwnProperty(d)){f[d]=false}else{f[d]=true}}}};this.vDf=function(g){if(this.ql8()){return}if(g){var b=this.Dug();var e=this.j45();var f=[];if(this.Zuk(g)){for(var d=0;d<g.length;d++){for(var c=0;c<b.smps.length;c++){if(b.smps[c]==g[d]){if(e[c]){e[c]=false}else{e[c]=true}break}}}}else{for(var d=0;d<b.smps.length;d++){if(b.smps[d]==g){if(e[d]){e[d]=false}else{e[d]=true}break}}}var a=[];for(var d=0;d<b.smps.length;d++){if(!e[d]){a.push(d)}}this.dbt(a);this.U4z({func:"hideUnhideSmps",par:[g]})}};this.gh4=function(f){if(this.ql8()){return}var e=this.data.y;var d=this.hiddenVars;if(f){if(this.Zuk(f)){for(var c=0;c<f.length;c++){for(var b=0;b<e.vars.length;b++){if(e.vars[b]==f[c]){if(d[b]){d[b]=false}else{d[b]=true}break}}}}else{for(var c=0;c<e.vars.length;c++){if(e.vars[c]==f){if(d[c]){d[c]=false}else{d[c]=true}break}}}var a=[];for(var c=0;c<e.vars.length;c++){if(!d[c]){a.push(c)}}this.uZu(a);this.U4z({func:"hideUnhideVars",par:[f]})}};this.bjP=function(c,b,d){var e=this.meta.map.geojson.features;if(d){for(var a=0;a<e.length;a++){e[a].hidden=d}}for(var a=0;a<c.length;a++){e[c[a]].hidden=b}};this.N9Z=function(){if(this.meta.map&&this.meta.map.geojson&&this.meta.map.geojson.features){for(var a=0;a<this.meta.map.geojson.features.length;a++){this.meta.map.geojson.features[a].hidden=false}}};this.UiE=function(j,b,f,e){var d=this.graphType;var a=["colorByData","outlineByData","shapeByData","sizeByData","patternByData"];var h=["data2","data3","data4","data5","data6"];if(!e){this.XME(j,b,f)}if(d=="Network"||d=="Genome"||d=="Venn"){this.Oen()}else{this.Oen();for(var c=0;c<a.length;c++){if(this[a[c]]&&this.data.y.hasOwnProperty(this[a[c]])){this.n9f(this[a[c]])}else{this[a[c]]=false}}if(this.oncoprintCNA&&this.data.y.hasOwnProperty(this.oncoprintCNA)){this.n9f(this.oncoprintCNA);this.isOncoprint=true}if(this.oncoprintMUT&&this.data.y.hasOwnProperty(this.oncoprintMUT)){this.n9f(this.oncoprintMUT)}if(this.heatmapType=="upset"){this.isUpSet=true}for(var c=0;c<h.length;c++){if(this.data.y.hasOwnProperty(h[c])){this.n9f(h[c])}}}};this.CzN=function(b,f,j){var c=this;var g=false;var h=function(m){if(c.isJupyter&&m.hasOwnProperty("y")&&!m.hasOwnProperty("x")&&!m.hasOwnProperty("z")){var e=c.QWl(m.y.vars);var l=c.QWl(m.y.smps);l.unshift("Id");m=m.y.data;for(var k=0;k<m.length;k++){m[k].unshift(e[k])}m.unshift(l)}return m};if(b&&typeof b=="string"){try{b=JSON.parse(b)}catch(d){}}b=h(b);this.data=b||CanvasXpress.example;this.isExample=b?false:true;if(this.isExample){this.$(this.target).style.display="none"}this.nodesData=false;this.edgesData=false;this.featuresData=false;if(f){delete this.meta.data;this.dataVersion=(this.dataVersion||0)+1}this.validGraphTypes=[];if(Array.isArray(b)&&Array.isArray(b[0])){var a=this.arrayToCX(this.QWl(b),this.meta.config.user);this.data=a.data;if(a.config&&a.config.summaryType){this.summaryType=a.config.summaryType;this.dataTableZeroHeader=a.config.dataTableZeroHeader||"";this.dataTableColOrder=a.config.dataTableColsOrder||[];this.dataTableColHide=a.config.dataTableColsHide||[]}this.VCd();if(a.config&&a.config.graphType=="Scatter2D"){this.P45()}if(a.config.isGraphTime){this.isGraphTime=true;this.xAxisTime=a.config.xAxisTime;this.yAxisTime=a.config.yAxisTime}}else{if(this.isDataFrame&&Array.isArray(b)&&Array.isArray(b[0])){var a=this.sXj(b,this.meta.config.user);this.data=a.data;this.VCd();if(a.config&&a.config.graphType=="Scatter2D"){this.P45()}if(a.config.isGraphTime){this.isGraphTime=true;this.xAxisTime=a.config.xAxisTime;this.yAxisTime=a.config.yAxisTime}}else{this.fVf()}}if(CanvasXpress.graphTypes.OneDGraphs.includes(this.graphType)){if(this.yAxis.length){if(this.data.y.vars.includes(this.yAxis[0])){this.graphOrientation="vertical";if(this.xAxisTitle){this.smpTitle=this.xAxisTitle}if(this.yAxisTitle){this.xAxisTitle=this.yAxisTitle}}else{if(this.data.y.smps.includes(this.yAxis[0])){this.graphOrientation="horizontal";if(this.yAxisTitle){this.smpTitle=this.yAxisTitle}}}}else{if(this.yAxisTitle){this.smpTitle=this.yAxisTitle}}}if(this.data&&(this.data.y||this.data.venn||this.data.nodes||this.data.tracks||this.data.fx)){if(this.data.fx){this.cqd()}if(this.data.venn){if(this.graphType=="Venn"){this.summaryType="venn"}this.validGraphTypes.push("Venn")}if(this.data.nodes){if(this.graphType=="Network"){this.summaryType="network"}this.validGraphTypes.push("Network")}if(this.data.tracks){if(this.graphType=="Genome"){this.summaryType="genome"}this.validGraphTypes.push("Genome")}if(this.data.y){this.llmHeader=this.H8L();if(!this.data.y&&!this.data.y.cor&&!this.data.y.close){alert("Dude! there is not a valid data structure");return}else{if(this.data.y.data){this.isRawData=true;this.summaryType=this.summaryType&&this.summaryType.match(/iqr|median|mean|cor|sum|max|min|count|gantt/)?this.summaryType:"raw";if(this.summaryType=="cor"){this.graphType="Correlation"}else{if(this.summaryType=="iqr"){this.graphType="Boxplot"}else{if(this.summaryType=="gantt"){this.graphType="Gantt"}else{if(this.data.y[this.summaryType]){if(this.Fvn(this.data.y[this.summaryType],this.data.y.data)){this.isRawData=false}}}}}if(this.graphType=="Gantt"){var i=this.mlX(this.ganttStart?this.ganttStart:this.xAxis[0]?this.xAxis[0]:this.data.y.vars[0]);this.ganttStart=this.data.y.vars[i];i=this.mlX(this.ganttEnd?this.ganttEnd:this.xAxis[1]?this.xAxis[1]:this.data.y.vars[1]?this.data.y.vars[1]:this.data.y.vars[0]);this.ganttEnd=this.data.y.vars[i]||this.data.y.vars[0];g=true}else{if(this.graphType=="Scatter2D"&&this.scatterType&&this.scatterType.match(/manhattan/)){this.Oai()}}}else{this.isRawData=false;if(this.data.y.iqr1&&this.data.y.qtl1&&this.data.y.median&&this.data.y.qtl3&&this.data.y.iqr3){this.summaryType="iqr"}else{if(this.data.y.median){this.summaryType="median"}else{if(this.data.y.mean){this.summaryType="mean"}else{if(this.data.y.cor){this.summaryType="cor"}else{if(this.data.y.sum){this.summaryType="sum"}else{if(this.data.y.max){this.summaryType="max"}else{if(this.data.y.min){this.summaryType="min"}else{if(this.data.y.count){this.summaryType="count"}else{this.summaryType=false}}}}}}}}}}this.validGraphTypes.push("Bar");this.validGraphTypes.push("Line");this.validGraphTypes.push("Area");this.validGraphTypes.push("AreaLine");this.validGraphTypes.push("BarLine");this.validGraphTypes.push("Boxplot");this.validGraphTypes.push("Dotplot");this.validGraphTypes.push("DotLine");this.validGraphTypes.push("Heatmap");this.validGraphTypes.push("Stacked");this.validGraphTypes.push("StackedLine");this.validGraphTypes.push("StackedPercent");this.validGraphTypes.push("StackedPercentLine");this.validGraphTypes.push("Pie");this.validGraphTypes.push("Correlation");this.validGraphTypes.push("Circular");if(this.data.y.smps||this.isDOE){if(this.data.y.smps.length>2||this.isDOE){this.validGraphTypes.push("Scatter2D");this.validGraphTypes.push("ScatterBubble2D");this.validGraphTypes.push("Scatter3D")}else{if(this.data.y.smps.length>1||this.isDOE){this.validGraphTypes.push("Scatter2D")}}}}this.validGraphTypes.sort();this.UiE(false,false,j);if(g){this.soq()}}}};CanvasXpress.prototype.initDatasetRange=function(){this.ZZ3=function(aw,f,P,ag,H){var V=this;var o=this.isDOE?this.meta.data.layout.data[this.layoutCurrent||0]:false;var q=this.isGroupedData&&!f&&this.otE()?this.otE():this.data.y;var ah=this.graphType=="Scatter2D"&&this.scatterType=="visium"?CanvasXpress.cacheImages[this.backgroundImageMD5||this.AmM(this.backgroundImage)]:false;var t=this.jN3(true);var at=Number.POSITIVE_INFINITY;var I=Number.NEGATIVE_INFINITY;var x=Number.POSITIVE_INFINITY;var ac=Number.NEGATIVE_INFINITY;if(this.setMin!=null&&this.setMax!=null){this.minData=Number(this.setMin);this.maxData=Number(this.setMax);return}if(this.isGroupedData&&!aw&&!o){aw=this.graphType=="Boxplot"?"iqr":this.summaryType;if(this.graphType=="Boxplot"&&!this.isBoxplotCalc){this.ev3(this.groupingFactors,false,false,false,true);q=this.otE()}}if(this.isGroupedData&&!f&&this.otE()&&!ag&&!o&&!this.layoutCurrent){for(var ak=0;ak<q.min.length;ak++){if(q.min[ak]){for(var aj=0;aj<q.min[ak].length;aj++){if(!isNaN(q.min[ak][aj])){at=Math.min(at,q.min[ak][aj])}if(!isNaN(q.max[ak][aj])){I=Math.max(I,q.max[ak][aj])}}}}}else{if(this.graphType=="Meter"){var E;if(this.layoutValid&&this.segregateVariablesBy.length&&this.segregateSamplesBy.length){E=this.meta.data.layout.comp[this.layoutCurrent||0][0][0]}else{if(this.layoutValid&&this.segregateVariablesBy.length&&!this.segregateSamplesBy.length){E=this.layoutCurrent||0}else{if(this.layoutValid&&this.segregateSamplesBy.length){E=this.xAxis.length?this.mlX(this.xAxis[0]):0}else{E=this.layoutValid?(this.layoutCurrent||0):this.xAxis.length?this.mlX(this.xAxis[0]):0}}}this.meterIndex=E>=0?E:0;var Z=this.data.y.data[this.meterIndex];at=0;I=this.max(Z,true)}else{if(t){var D=this.varIndices.length;for(var ak=0;ak<D;ak++){var R=this.varIndices[ak];var B=this.smpIndices.length;var L=0;at=0;for(var aj=0;aj<B;aj++){var z=this.smpIndices[aj];var N=this.data.y.data[R][z];if(!isNaN(N)){L+=N;at=Math.min(L,at);I=Math.max(L,I)}}}}else{if(aw=="fish"){if(H=="xAxis"){at=this.fishTimepoints[0]-((this.fishTimepoints[this.fishTimepoints.length-1]-this.fishTimepoints[0])/5);I=this.fishTimepoints[this.fishTimepoints.length-1]}else{at=0;I=100}}else{if(aw=="genome"){var R=this.YnW().length;for(var ak=0;ak<R;ak++){var z=this.YnW()[ak].data.length;for(var aj=0;aj<z;aj++){if(this.YnW()[ak].type=="box"){var au=this.YnW()[ak].data[aj].data.length;for(var ai=0;ai<au;ai++){Z=this.YnW()[ak].data[aj].data[ai];I=Math.max(I,Math.max(Z[0],Z[1]));at=Math.min(at,Math.min(Z[0],Z[1]))}}else{if(this.YnW()[ak].type=="sequence"){Z=this.YnW()[ak].data[aj].offset;I=Math.max(I,Z+this.YnW()[ak].data[aj].sequence.length);at=Math.min(at,Z)}else{if(this.YnW()[ak].type.match(/bar|heatmap/)){Z=this.YnW()[ak].data[aj].offset;I=this.YnW()[ak].autowidth?Math.max(I,Z+this.YnW()[ak].data[aj].data.length):Math.max(I,Z);at=Math.min(at,Z)}else{if(this.YnW()[ak].type=="dataframe"){var au=this.YnW()[ak].data[0].data.length;for(var ai=0;ai<au;ai++){Z=this.YnW()[ak].dataframe[this.YnW()[ak].data[0].data[ai].xAxis];I=Math.max(I,Z[Z.length-1]);at=Math.min(at,Z[0])}}else{if(this.YnW()[ak].type=="marker"){var au=this.YnW()[ak].data[aj].data.length;for(var ai=0;ai<au;ai++){Z=this.YnW()[ak].data[aj].data[ai];I=Math.max(I,Z[Z.length-1]);at=Math.min(at,Z[0])}}else{Z=this.YnW()[ak].data[aj].offset;I=Math.max(I,Z);at=Math.min(at,Z)}}}}}}}}else{if(aw=="circular"){if(this.circularType=="chord"){this.circularChord=this.qRI();at=0;I=this.circularChord.total}else{var ap=H&&this[H].length?this.mlX(this[H]):this.mlX();if(ap>=0){var ae=this.Npb(this.data.y.data[ap]);at=ae[0];I=ae[1]}else{at=0;I=1}}}else{if(aw=="gantt"){if(!this.Skj()){this.isGanttDataFormated=false;this.soq()}var ak=this.mlX(this.ganttStart?this.ganttStart:this.xAxis[0]?this.xAxis[0]:this.data.y.vars[0]);this.ganttStart=this.data.y.vars[ak];var aj=this.mlX(this.ganttEnd?this.ganttEnd:this.xAxis[1]?this.xAxis[1]:this.data.y.vars[1]?this.data.y.vars[1]:this.data.y.vars[0]);this.ganttEnd=this.data.y.vars[aj]||this.data.y.vars[0];var ar=this.vBI(this.Skj());at=ar[ak].sort(function(d,c){return d-c})[0];I=ar[aj].sort(function(d,c){return c-d})[0]}else{if(aw=="km"&&!f){if(!this.layoutValid){this.oOM()}if(H=="y"){at=0;I=1}else{if(!this.meta.data.km){this.irv(true)}var ad=this.layoutValid&&this.meta.data.km.l.length?this.meta.data.km.l:this.meta.data.km.g;if(this.layoutValid&&this.meta.data.km.l.length){for(var ak=0;ak<ad.length;ak++){for(var aj=0;aj<ad[ak].length;aj++){at=Math.min(at,ad[ak][aj].data.time[0]);I=Math.max(I,ad[ak][aj].data.time[ad[ak][aj].data.time.length-1])}}}else{for(var ak=0;ak<ad.length;ak++){at=Math.min(at,ad[ak].data.time[0]);I=Math.max(I,ad[ak].data.time[ad[ak].data.time.length-1])}}}}else{if(aw=="qq"||aw=="cdf"){if(aw=="qq"){this.XrI()}else{this.gF6()}var m=aw=="cdf"?this.meta.data.cdf:this.meta.data.qq;if(!m){if(aw=="cdf"){this.wBa(true);m=this.meta.data.cdf}else{this.XUU(true);m=this.meta.data.qq}}var ad=this.layoutValid?m.l:m.g;if(this.layoutValid){for(var ak=0;ak<ad.length;ak++){for(var aj=0;aj<ad[ak].length;aj++){at=Math.min(at,ad[ak][aj].data[H][0]);I=Math.max(I,ad[ak][aj].data[H][ad[ak][aj].data[H].length-1])}}}else{for(var ak=0;ak<ad.length;ak++){at=Math.min(at,ad[ak].data[H][0]);I=Math.max(I,ad[ak].data[H][ad[ak].data[H].length-1])}}}else{if(aw=="density"&&q.density){var O=function(d){for(var c=1;c<V.meta.data.layout.name.length;c++){if(V.meta.data.layout.name[c]==d){return c-1}}return 0};if(H=="xAxis"){var ap=this.layoutCurrent||0;at=q.density[ap].histogram.breaks[0];I=q.density[ap].histogram.breaks[q.density[ap].histogram.breaks.length-1]}else{if(this.histogramAsDotplot&&H=="yAxis"){if(this.histogramStackDir!="down"){at=-0.5;I=0.5}else{at=0;I=1}}else{if(this.densityPosition.match(/filled|stacked/)){if(this.histogramStat=="count"){if(this.densityPosition=="filled"){I=q.global.maxY}else{if(this.densityPosition=="stacked"){I=q.global.maxY}}}else{if(this.densityPosition=="filled"){I=1}else{if(this.densityPosition=="stacked"){I=q.position.max}}}at=0}else{if(this.histogramType=="stacked"&&this.histogramStat=="count"){if(this.layoutValid&&this.meta.data.layout){for(var ak=0;ak<this.meta.data.layout.axes.length;ak++){var r=[];var l=0;for(var aj=0;aj<this.meta.data.layout.axes[ak].yAxis.length;aj++){var ap=O(this.meta.data.layout.axes[ak].yAxis[aj]);l+=q.density[ap].histogram.maxY}I=Math.max(I,l)}}else{I=q.global.maxY}at=0}else{if(this.histogramType=="stacked"){I=0}for(var ak=0;ak<this.smpIndices.length;ak++){if(this.histogramType=="stacked"){I+=q.density[this.smpIndices[ak]-1].globalMaxY}else{I=Math.max(I,q.density[this.smpIndices[ak]-1].globalMaxY)}}at=0}}}}}else{if(aw=="percentile"&&!f&&!ag){at=0;I=100}else{if((aw=="mean"||aw=="median"||aw=="sum"||aw=="max"||aw=="min"||aw=="count")&&!f){if(ag){if(this.dodgeBy){var aq=this.dodgeBy;this.dodgeBy=false;this.groupingFactors.push(aq);this.ev3(this.groupingFactors,false,false,false,true);I=this.maxData;at=this.minData;this.groupingFactors.pop();this.ev3(this.groupingFactors,false,false,false,true);this.dodgeBy=aq}else{I=0;at=0;ac=0;x=0;var h=this.Rpc();var ao=this.isTransformedData?q.trans:q[this.summaryType];var U=this.graphType=="Circular"&&this.showIdeogram;var C=U?[this.varIndices,h]:[h,this.varIndices];var v=C[0].length;for(var ak=0;ak<v;ak++){var R=C[0][ak];var e=0;var g=0;var w=C[1].length;for(var aj=0;aj<w;aj++){var z=this.isGroupedData?aj:C[1][aj];var N=U?ao[R][z]:ao[z][R];if(!isNaN(N)){x=Math.min(N,x);ac=Math.max(N,ac);if(N>0){e+=N}else{if(N<0){g+=N}}}}I=Math.max(e,I);at=Math.min(g,at)}}}else{var D=this.isDOE&&this.isDOE==1?this.data.y.vars.length:this.varIndices.length;for(var ak=0;ak<D;ak++){var R=this.varIndices[ak];if(R==undefined){continue}var Z;var af;if(this.isTransformedData){Z=q.trans[R]||q.trans[ak];af=q.tstdev?(q.tstdev[R]||q.tstdev[ak]):false}else{if(this.summaryType=="mean"){Z=q.mean[R]||q.mean[ak]}else{if(this.summaryType=="median"){Z=q.median[R]||q.median[ak]}else{if(this.summaryType=="sum"){Z=q.sum[R]||q.sum[ak]}else{if(this.summaryType=="max"){Z=q.max[R]||q.max[ak]}else{if(this.summaryType=="min"){Z=q.min[R]||q.min[ak]}else{if(this.summaryType=="count"){Z=q.count[R]||q.count[ak]}}}}}}af=q.stdev?(q.stdev[R]||q.stdev[ak]):false}if(Z){var am=Z.length;for(var aj=0;aj<am;aj++){var aa;var N=Z[aj];if(af){aa=af[aj]/2}else{aa=Number.NaN}if(!isNaN(N)){if(!isNaN(aa)){if(P){if(N>0){at=Math.min(N-aa,at);I=Math.max(N+aa,I)}}else{at=Math.min(N-aa,at);I=Math.max(N+aa,I)}}else{if(P){if(N>0){at=Math.min(N,at);I=Math.max(N,I)}}else{at=Math.min(N,at);I=Math.max(N,I)}}}}}}}}else{if(this.summaryType=="mean"&&!this.isRawData){var R=this.isDOE&&this.isDOE==1?this.data.y.vars.length:this.varIndices.length;for(var ak=0;ak<R;ak++){if(this.varIndices[ak]==undefined){continue}var z=this.smpIndices.length;for(var aj=0;aj<z;aj++){var N=q.mean[this.varIndices[ak]][this.smpIndices[aj]];var al=q.stdev&&q.stdev[this.varIndices[ak]]&&q.stdev[this.varIndices[ak]][this.smpIndices[aj]]/2?q.stdev[this.varIndices[ak]][this.smpIndices[aj]]/2:0;if(!isNaN(N)){if(!isNaN(al)){at=Math.min(N-al,at);I=Math.max(N+al,I)}else{at=Math.min(N,at);I=Math.max(N,I)}}}}}else{if((aw=="iqr"&&!f&&this.grpIndices)||(this.summaryType=="iqr"&&!this.isRawData)){var D=this.isDOE&&this.isDOE==1?this.data.y.vars.length:this.varIndices.length;for(var ak=0;ak<D;ak++){var R=this.varIndices[ak];var K=this.grpIndices?this.grpIndices:this.smpIndices;var av=K.length;if(q.iqr1[R]){for(var aj=0;aj<av;aj++){var z=K[aj];var A=q.iqr1[R][z];var y=q.iqr3[R][z];var X=q.out[R][z];if(!isNaN(A)&&!isNaN(y)){if(P){if(A>0&&y>0){at=Math.min(A,at);I=Math.max(y,I)}}else{at=Math.min(A,at);I=Math.max(y,I)}}if(X){var S=X.length;for(var ai=0;ai<S;ai++){if(!isNaN(X[ai])){if(P){if(X[ai]>0){at=Math.min(X[ai],at);I=Math.max(X[ai],I)}}else{at=Math.min(X[ai],at);I=Math.max(X[ai],I)}}}}}}}}else{if(aw=="cor"){var h=this.correlationAxis=="variables"?this.varIndices:this.Rpc();var R=h.length;for(var ak=0;ak<R;ak++){var z=h.length;for(var aj=0;aj<z;aj++){var N=this.isTransformedData&&q.trans?q.trans[ak][aj]:q.cor[ak][aj];if(!isNaN(N)){if(P){if(N>0){at=Math.min(N,at);I=Math.max(N,I)}}else{at=Math.min(N,at);I=Math.max(N,I)}}}}}else{if(o){var z=H=="xAxis"?0:1;if(this.graphType=="Scatter2D"){for(var ak=0;ak<o.y.data.length;ak++){var N=o.y.data[ak][z];if(!isNaN(N)){at=Math.min(N,at);I=Math.max(N,I)}}}else{for(var ak=0;ak<o.y.data[z].length;ak++){var N=o.y.data[z][ak];if(!isNaN(N)){at=Math.min(N,at);I=Math.max(N,I)}}}}else{var ao=this.isTransformedData&&q.trans?q.trans:q.data;var a=ah?ah.height:false;if(ao&&ao.length>0){if(ag){var U=this.graphType=="Circular"&&this.showIdeogram;var C=U?[this.varIndices,this.smpIndices]:[this.smpIndices,this.varIndices];var v=C[0].length;I=0;at=0;ac=0;x=0;for(var ak=0;ak<v;ak++){var e=0;var g=0;var w=C[1].length;for(var aj=0;aj<w;aj++){var N=U?ao[C[0][ak]][C[1][aj]]:ao[C[1][aj]][C[0][ak]];if(!isNaN(N)){x=Math.min(N,x);ac=Math.max(N,ac);if(N>0){e+=N}else{if(N<0){g+=N}}}}I=Math.max(e,I);at=Math.min(g,at)}}else{var R=this.workflowBy||(this.isDOE&&this.isDOE==1)?this.data.y.vars.length:this.varIndices.length;for(var ak=0;ak<R;ak++){if(this.varIndices[ak]==undefined){continue}var z=this.smpIndices.length;for(var aj=0;aj<z;aj++){var J=this.workflowBy?ak:this.varIndices[ak];if(ao[J]){var N=a?a-ao[J][this.smpIndices[aj]]:ao[J][this.smpIndices[aj]];if(!isNaN(N)){if(P){if(N>0){at=Math.min(N,at);I=Math.max(N,I)}}else{at=Math.min(N,at);I=Math.max(N,I)}}}}}if(this[H+"Transform"]=="sqrt"){at=Math.sqrt(at);I=Math.sqrt(I)}}}}}}}}}}}}}}}}}}}if(this.graphType=="Boxplot"&&this.showViolinBoxplot&&!this.violinTrim){var u=this.meta.data.ydensity;if(this.isGroupedData){u=u.g;var R=u.length;for(var ak=0;ak<R;ak++){var z=u[ak].length;for(var aj=0;aj<z;aj++){var an=u[ak][aj].density.xy;if(an.length){if(!isNaN(an[0][0])){at=Math.min(at,an[0][0])}if(!isNaN(an[an.length-1][0])){I=Math.max(I,an[an.length-1][0])}}}}if(aw.match(/log/)){if(at<=0){at=Math.max(Number.MIN_VALUE,at)}if(I<=0){I=Math.max(Number.MIN_VALUE,I)}}}else{u=u.v;var R=u.length;for(var ak=0;ak<R;ak++){var an=u[ak].density.xy;if(an.length){if(!isNaN(an[0][0])){at=Math.min(at,an[0][0])}if(!isNaN(an[an.length-1][0])){I=Math.max(I,an[an.length-1][0])}}}}}else{if(this.graphType=="Scatter2D"&&this.scatterType=="visium"){var Q=CanvasXpress.cacheImages[this.backgroundImageMD5||this.AmM(this.backgroundImage)];at=0;I=H.match(/y/i)?Q.height:Q.width}else{if(this.graphType=="Scatter2D"&&this.ribbonBy){var ao=this.isTransformedData&&q.trans?q.trans:q.data;var u=this.meta.data;if(this.Zuk(this.ribbonBy)){if(this.Zuk(this.ribbonBy[0])&&this.Zuk(this.ribbonBy[1])&&H=="yAxis"){for(var ak=0;ak<this.ribbonBy[0].length;ak++){var n=this.ribbonBy[0][ak];var b=this.ribbonBy[1][ak];if(!isNaN(n)){at=Math.min(n,at)}if(!isNaN(b)){I=Math.max(b,I)}}}else{if(u.z&&u.z.hasOwnProperty(this.ribbonBy[0])&&u.z[this.ribbonBy[0]].type=="Numeric"&&u.z.hasOwnProperty(this.ribbonBy[1])&&u.z[this.ribbonBy[1]].type=="Numeric"){for(var ak=0;ak<this.varIndices.length;ak++){var b=this.data.z[this.ribbonBy[0]][this.varIndices[ak]];var n=this.data.z[this.ribbonBy[1]][this.varIndices[ak]];if(!isNaN(b)){at=Math.min(b,at);I=Math.max(b,I)}if(!isNaN(n)){at=Math.min(n,at);I=Math.max(n,I)}}}else{var T=this.OKx(this.ribbonBy);if(this.Zuk(T)&&H=="yAxis"){for(var ak=0;ak<this.varIndices.length;ak++){for(var aj=0;aj<this.smpIndices.length;aj++){var b=ao[this.varIndices[ak]][T[0]];var n=ao[this.varIndices[ak]][T[1]];if(!isNaN(b)){at=Math.min(b,at);I=Math.max(b,I)}if(!isNaN(n)){at=Math.min(n,at);I=Math.max(n,I)}}}}}}}else{if(u.z&&u.z.hasOwnProperty(this.ribbonBy)&&u.z[this.ribbonBy].type=="Numeric"){for(var ak=0;ak<this.varIndices.length;ak++){var aa=this.data.z[this.ribbonBy][this.varIndices[ak]];for(var aj=0;aj<this.smpIndices.length;aj++){var N=ao[this.varIndices[ak]][this.smpIndices[aj]];if(!isNaN(N)&&!isNaN(aa)){at=Math.min(N-aa,at);I=Math.max(N+aa,I)}}}}else{for(var ak=0;ak<this.varIndices.length;ak++){for(var aj=0;aj<this.smpIndices.length;aj++){var N=ao[this.varIndices[ak]][this.smpIndices[aj]];var aa=ao[this.varIndices[ak]][T];if(!isNaN(N)&&!isNaN(aa)){at=Math.min(N-aa,at);I=Math.max(N+aa,I)}}}}}}else{if(this.showHistogram||this.isDOE){var ab=this.k2q();if(ab){if(this.isDOE){if(this.isDOE&&this.layoutCurrent&&this.meta.data.layout.data&&this.meta.data.layout.data[this.layoutCurrent]&&this.meta.data.layout.params&&!this.meta.data.layout.params[this.layoutCurrent].showHistogram){}else{if(H=="xAxis"){at=ab.histogram?ab.histogram.breaks[0]:ab.density.histogram.breaks[0];I=ab.histogram?ab.histogram.breaks[ab.histogram.breaks.length-1]:ab.density.histogram.breaks[ab.density.histogram.breaks.length-1]}else{if(H=="yAxis"){switch(this.densityPosition){case"filled":at=0;I=ab.density?ab.density.histogram.maxY:ab.histogram.maxY;break;case"stacked":at=0;I=ab.density?ab.density.histogram.maxY:ab.histogram.maxY;break;default:at=0;I=this.histogramType=="stacked"&&ab.density?ab.density.histogram.maxY:this.histogramType=="stacked"?ab.histogram.maxY:this.layoutCurrent?ab.histogram.maxY:this.max(ab.summary.cols);break}}}}}else{if(H=="xAxis"){at=ab.density.minData;I=ab.density.maxData}else{if(H=="yAxis"){if(this.histogramStat=="count"){switch(this.densityPosition){case"filled":at=0;I=this.layoutValid?ab.summary.globalMaxCount:ab.density.histogram.maxY;break;case"stacked":at=0;I=this.layoutValid?ab.summary.globalMaxCount:ab.density.histogram.maxY;break;default:at=0;I=this.layoutValid&&this.histogramType=="stacked"?ab.summary.globalMaxCount:this.histogramType=="stacked"?ab.density.histogram.maxY:this.max(ab.summary.cols);break}}else{if(this.histogramStat=="density"){switch(this.densityPosition){case"filled":at=0;I=1;break;case"stacked":at=0;I=ab.summary.position.max;break;default:at=0;I=ab.summary.globalMaxY;break}}}}}}}}else{if(this.graphType=="Scatter2D"&&this.colorBy&&this.scatterType=="area"&&H=="yAxis"){this.zVg();if(this.meta.data.area){var ab=this.layoutValid?this.meta.data.area.layout[this.layoutCurrent||0]:this.meta.data.area;at=0;I=ab.maxY}}else{if(this.graphType=="Scatter2D"&&(this.colorBy||this.yAxis.length>1)&&!this.dataPointSizeScaleFactor&&this.scatterType=="stream"){if(H=="xAxis"){var G=(I-at)*this.scatterStreamExtraSpan;at-=G;I+=G}else{if(H=="yAxis"){this.krH();if(this.meta.data.stream){var ab=this.layoutValid?this.meta.data.stream.layout[this.layoutCurrent||0]:this.meta.data.stream;switch(this.scatterStreamType){case"mirror":at=-ab.maxY;I=ab.maxY;break;case"ridge":at=0;I=ab.maxY*2;break;case"proportional":at=0;I=1;break;default:at=ab.minY;I=ab.maxY;break}}}}}else{if(this.graphType=="Scatter2D"&&H=="yAxis"&&(this.showLoessFit||this.showRegressionFit||this.showQuantileRegressionFit)){if(this.showLoessFit){this.vI9()}if(this.showRegressionFit){this.N5e()}if(this.showQuantileRegressionFit){this.b3E()}var Y=Number.POSITIVE_INFINITY;var F=Number.NEGATIVE_INFINITY;var M=[this.meta.data.loess,this.meta.data.regression,this.meta.data.quantile];for(var S=0;S<M.length;S++){var W=M[S];if(W&&W.minY!=null&&W.minY<Number.POSITIVE_INFINITY){Y=Math.min(Y,W.minY)}if(W&&W.maxY!=null&&W.maxY>Number.NEGATIVE_INFINITY){F=Math.max(F,W.maxY)}}if(Y<Number.POSITIVE_INFINITY&&F>Number.NEGATIVE_INFINITY){if(this.dataPointSizeScaleFactor){at=Math.min(at,Y);I=Math.max(I,F)}else{at=Y;I=F}}}}}}}}}if(this.decorations){if(this.decorations.error){for(var ak=0;ak<this.decorations.error.length;ak++){if(this.graphType=="Scatter2D"){}else{at=Math.min(at,this.decorations.error[ak].min);I=Math.max(I,this.decorations.error[ak].max)}}}if(this.decorations.marker){for(var ak=0;ak<this.decorations.marker.length;ak++){if(this.decorations.marker[ak].type=="pwc"){I=Math.max(I,this.decorations.marker[ak].ymax)}}}if(this.decorations.text){for(var ak=0;ak<this.decorations.text.length;ak++){if(this.decorations.text[ak].value!=null){at=Math.min(at,this.decorations.text[ak].value);I=Math.max(I,this.decorations.text[ak].value)}}}}this.minData=this.setMin!=null?this.setMin:at==Number.POSITIVE_INFINITY||at==Number.NEGATIVE_INFINITY?0:at;this.maxData=this.setMax!=null?this.setMax:I==Number.NEGATIVE_INFINITY||I==Number.POSITIVE_INFINITY?1:I;if(ag&&aw!="percentile"){this.minDataStacked=x;this.maxDataStacked=ac}};this.JtO=function(r,a,j,f){this.filterFitIndices=[];for(var l=0;l<this.varIndices.length;l++){this.filterFitIndices.push(false)}var p=r!=null?(this.layoutParams?this.layoutParams[r].setMinX:null):this.setMinX;var o=r!=null?(this.layoutParams?this.layoutParams[r].setMaxX:null):this.setMaxX;var n=r!=null?(this.layoutParams?this.layoutParams[r].setMinY:null):this.setMinY;var m=r!=null?(this.layoutParams?this.layoutParams[r].setMaxY:null):this.setMaxY;var c=this.Mr8(this.scatterPlotMatrix?a:this.xAxisIndices[a],"x",f);var b=this.Mr8(this.scatterPlotMatrix?j:this.yAxisIndices[j],"y",f);for(var l=0;l<c.length;l++){var d=this.varIndices[l];var k=c[l];var h=b[l];if(k==null||h==null||isNaN(k)||isNaN(h)){if(f){this.filterFitIndices[f[l]]=true}else{this.filterFitIndices[d]=true}}else{var s=(p===null||k>=p)&&(o===null||k<=o);var e=(n===null||h>=n)&&(m===null||h<=m);if(s&&e){}else{if(f){this.filterFitIndices[f[l]]=true}else{this.filterFitIndices[d]=true}}}}for(var l=0;l<c.length;l++){if(c[l]==null||b[l]==null||isNaN(c[l])||isNaN(b[l])){c.splice(l,1);b.splice(l,1);l--}}if(this.skipFilterFit&&(p===null||p<=o)&&(n===null||n<=m)){return[c,b]}this.skipFilterFit=false;var g=[];var q=[];for(let l=0;l<c.length;l++){var k=c[l];var h=b[l];var s=(p===null||k>=p)&&(o===null||k<=o);var e=(n===null||h>=n)&&(m===null||h<=m);if(s&&e){g.push(k);q.push(h)}}return[g,q]}};CanvasXpress.prototype.initDatasetReshape=function(){this.U8i=function(e,h){this.onX();this.F7e();if(this.ql8()){return}var b=this.Urb();this.isPivot=true;this.colorBy=false;var f={y:{data:[],vars:[],smps:[]}};this.qPC(true);if(this.isGroupedData){this.iBN(true)}var g=e.shift();for(var d=0;d<e.length;d++){f.y.vars.push(e[d][0]);var a=[];for(var c=1;c<g.length;c++){a.push(e[d][c])}f.y.data.push(a)}g.shift();f.y.smps=g;this.CzN(f,true);this.data.y.unpivoted=b;if(b.config.segregateVariablesBy.length||b.config.segregateSamplesBy.length){this.OYP(b.config.segregateVariablesBy,b.config.segregateSamplesBy,true)}this.Doz();if(b.config.groupingFactors.length){this.groupingFactors=this.QWl(b.config.groupingFactors);this.zA5([cat],true,"groupingFactors")}if(!h){this.U4z({func:"pivot",par:[e,h]})}};this.c8U=function(e,f){this.onX();this.F7e();if(this.ql8()){return}if(this.isPivot||!this.hxz()){return}var y=this.Urb();var N={y:{vars:[],smps:[],data:[]}};var b=function(c){var d=[];for(var k=0;k<h.length;k++){if(h[k]!=e){var j=L.x[h[k]][c];if(j===false){j="false"}else{if(j===null){j="null"}else{if(j===true){j="true"}}}d.push(j.toString().replace("\x00",""))}}return d.length?d.join("\x00"):"x"+c};var G=this.meta.data.x[e];this.qPC(true);if(this.isGroupedData){this.iBN(true)}var h=this.NtX(this.data.x);G=this.meta.data.x[e]||G;var L=this.data;var r=G?G.levels:undefined;r=(r||[]).map(function(c){if(c===null){return"null"}if(c===true){return"true"}if(c===false){return"false"}return String(c)});var H=r.length;var B=[];var A={};for(var K=0;K<H;K++){B[K]={};for(var J=0;J<L.y.smps.length;J++){var s=L.x[e][J];if(s===false){s="false"}else{if(s===null){s="null"}else{if(s===true){s="true"}}}if(s==r[K]){var M=b(J);if(!B[K][M]){B[K][M]=[]}B[K][M].push(J)}if(M!=null){A[M]=true}}}for(var M in A){var g=0;for(var K=0;K<H;K++){if(B[K].hasOwnProperty(M)){g=Math.max(g,B[K][M].length)}}A[M]=g}for(var K=0;K<H;K++){for(J=0;J<L.y.vars.length;J++){N.y.data[K+J]=[];if(L.y.vars.length==1){N.y.vars.push(r[K].replace("\x00",""))}else{N.y.vars.push(L.y.vars[J]+"::"+r[K].replace("\x00",""))}for(var M in A){var F=this.elc(B[K]);for(var I=0;I<A[M];I++){if(K==0&&J==0){N.y.smps.push(M);var E=M.split("\x00");var D=0;for(var C=0;C<h.length;C++){if(h[C]!=e){if(!N.x){N.x={}}if(!N.x.hasOwnProperty(h[C])){N.x[h[C]]=[]}N.x[h[C]].push(E[D++])}}}if(B[K].hasOwnProperty(M)&&B[K][M][I]!=null){N.y.data[K+J].push(L.y.data[J][B[K][M][I]])}else{N.y.data[K+J].push(null)}}}}}for(var M in N.x){if(this.HJq(N.x[M])){N.y.smps=N.x[M];delete (N.x[M]);break}}if(N.y.data.length!=N.y.vars.length||N.y.data[0].length!=N.y.smps.length){if(y.config.segregateVariablesBy.length||y.config.segregateSamplesBy.length){this.OYP(N.config.segregateVariablesBy,N.config.segregateSamplesBy)}this.Doz();if(y.config.groupingFactors.length){this.groupingFactors=this.QWl(y.config.groupingFactors)}if(!this.isCxplot){alert("Invalid Pivoting")}return}else{this.isPivot=true;this.colorBy=false;y.factor=e}if(N.y.vars.includes("null")){var a=null;for(var K=0;K<N.y.vars.length;K++){if(N.y.vars[K]=="null"){a=K;break}}if(a!=null){N.y.vars.splice(a,1);N.y.data.splice(a,1)}}this.CzN(N,true);this.data.y.unpivoted=y;this.Doz();if(y.config.groupingFactors.length){this.groupingFactors=this.QWl(y.config.groupingFactors);this.zA5([e],true,"groupingFactors")}if(y.config.segregateVariablesBy.length||y.config.segregateSamplesBy.length){this.OYP(y.config.segregateVariablesBy,y.config.segregateSamplesBy,true)}if(!f){this.U4z({func:"pivotX",par:[e,f]})}};this.XL7=function(h,a,g){var c=[];var f=this.data;for(var b=0;b<f.y.smps.length;b++){c.push([f.x[h][b],f.x[a][b],f.y.data[0][b]])}var e=this.JhB(c,0,1,2);return this.U8i(e,g)};this.RbD=function(m,a,f,c){var e=[];var k;var h=this.data;if(h.x.hasOwnProperty(m)){for(var g=0;g<h.y.smps.length;g++){e.push([h.x[m][g],h.y.data[0][g],h.y.data[1][g]])}if(h.y.vars[0]==a){k=this.JhB(e,0,1,2)}else{if(h.y.vars[1]==a){k=this.JhB(e,0,2,1)}}}else{if(h.x.hasOwnProperty(a)){for(var g=0;g<h.y.smps.length;g++){e.push([h.x[a][g],h.y.data[0][g],h.y.data[1][g]])}if(h.y.vars[0]==m){k=this.JhB(e,1,0,2)}else{if(h.y.vars[1]==m){k=this.JhB(e,2,0,1)}}}}if(f){var l=this.QWl(k[0]);l.shift();l.unshift(0);e=[];for(var g=0;g<k.length;g++){e[g]=[];for(var b=0;b<l.length;b++){e[g][l[b]]=k[g][b]}}for(var g=0;g<f.length;g++){e[0][g+1]=f[g]}k=e}return this.U8i(k,c)};this.cHn=function(e,a,d){var c;e=this.mlX(e);a=this.mlX(a);for(var b=0;b<this.data.y.vars.length;b++){if(b!=e&&b!=a){c=b;break}}return this.U8i(this.JhB(this.J4e(this.data.y.data),e,a,c),d)};this.RPW=function(f){var h=f.x;var g=f.z;if(h){f.z=h}else{delete (f.z)}if(g){f.x=g}else{delete (f.x)}var l=f.y.smps;f.y.smps=f.y.vars;f.y.vars=l;var k=f.y.data;f.y.data=[];var b=f.y.vars.length;for(var c=0;c<b;c++){f.y.data[c]=[];var e=f.y.smps.length;for(var a=0;a<e;a++){f.y.data[c][a]=k[a][c]}}return f};this.Urb=function(){var a={data:this.vBI(this.data),config:this.ZlV()};if(this.toDoPivot){a.config.colorBy=this.toDoPivot;a.config.groupingFactors.push(this.toDoPivot)}a.config.groupingFactors=this.QWl(this.groupingFactors);a.config.segregateVariablesBy=this.QWl(this.segregateVariablesBy);a.config.segregateSamplesBy=this.QWl(this.segregateSamplesBy);return a};this.WVh=function(b){this.onX();if(this.ql8()){return}if(this.isPivot){var a=this.vBI(this.data.y.unpivoted);this.colorBy=a.config.colorBy;this.qPC(true);if(this.isGroupedData){this.iBN(true)}this.CzN(a.data,true);if(a.config.groupingFactors.length){this.ev3(a.config.groupingFactors,false,false,false,true)}this.isPivot=false;if(a.config.segregateVariablesBy.length||a.config.segregateSamplesBy.length){this.OYP(a.config.segregateVariablesBy,a.config.segregateSamplesBy,true)}if(!b){this.U4z({func:"removePivot",par:[b]})}}};this.c2i=function(y,f,a){if(this.ql8()){return}this.onX();if(this.graphType.match(/Gantt/)){this.FmO(100,100,"Data transpose not allowed for Gantt graphs",5000);return}if(this.graphType=="Bar"&&this.barType=="lollipop"&&!a){this.FmO(100,100,"Data transpose not allowed for Lollipops",5000);return}this.F7e();var v=this.data;var r=this.meta.data;if(y){return this.J4e(y)}else{this.iBN(true);this.u1u("reset",false,false,true);if(this.meta.data.layout){delete this.meta.data.layout}var e=["varOverlays","varOverlayInfo","varOverlayProperties","varOverlaysStrLength","varOverlaysThicknessBottom","varOverlaysThicknessTop","varDendrogramNewick","colorVarDendrogramBy","heatmapVarSeparateBy","variablesClustered","segregateVariablesBy"];var g=["smpOverlays","smpOverlayInfo","smpOverlayProperties","smpOverlaysStrLength","smpOverlaysThicknessBottom","smpOverlaysThicknessTop","smpDendrogramNewick","colorSmpDendrogramBy","heatmapSmpSeparateBy","samplesClustered","segregateSamplesBy"];for(var u=0;u<e.length;u++){if(this[e[u]]||this[g[u]]){var n=this[e[u]];var o=this[g[u]];this[e[u]]=o;this[g[u]]=n}}var l=v.x;var k=v.z;if(l){v.z=l}else{delete (v.z)}if(k){v.x=k}else{delete (v.x)}var p=r.x;var c=r.z;r.x=c;r.z=p;for(var u in r.x){r.x[u].origin="x"}for(var u in r.z){r.z[u].origin="z"}var h=r.y.maxSmpChr;var b=r.y.maxSmpLen;var A=r.y.maxSmpStr;r.y.maxSmpChr=r.y.maxVarChr;r.y.maxSmpLen=r.y.maxVarLen;r.y.maxSmpStr=r.y.maxVarStr;r.y.maxVarChr=h;r.y.maxVarLen=b;r.y.maxVarStr=A;var q=v.y.smps;v.y.smps=v.y.vars;v.y.vars=q;var w=v.y.data;v.y.data=[];for(var u=0;u<v.y.vars.length;u++){v.y.data[u]=[];for(var t=0;t<v.y.smps.length;t++){v.y.data[u][t]=w[t][u]}}this.xAxis=[];this.yAxis=[];this.zAxis=[];this.CzN(this.data);this.Doz();this.ZJf(false,false,false,true);this.dataTableTransposed=!this.dataTableTransposed;if(!f){this.U4z({func:"transpose",par:[y,f]})}}};this.owt=function(m){var j=m||this.data;var l=[];if(!j||!j.y||!j.y.data){return l}var p=j.y.vars||[];var d=j.y.smps||[];var q=j.y.data;var h=j.x||{};var i=j.z||{};var k=[];for(var c in h){if(h.hasOwnProperty(c)){k.push(c)}}var r=[];for(var e in i){if(i.hasOwnProperty(e)){r.push(e)}}for(var n=0;n<p.length;n++){var f=q[n]||[];for(var o=0;o<d.length;o++){var g={};for(var u=0;u<k.length;u++){g[k[u]]=h[k[u]]?h[k[u]][o]:undefined}for(var t=0;t<r.length;t++){g[r[t]]=i[r[t]]?i[r[t]][n]:undefined}g["var"]=p[n];g.smp=d[o];g.value=f[o];l.push(g)}}return l};this.se7=function(){var a=this;return this.LjN("tidy",[],function(){return a.owt(a.data)})};this.yux=function(a){var b=a.col,d=a.op,c=a.value;return function(f){var e=f[b];switch(d){case"==":return e==c;case"===":return e===c;case"!=":return e!=c;case">":return e>c;case">=":return e>=c;case"<":return e<c;case"<=":return e<=c;case"in":return c&&c.indexOf(e)!==-1;default:return true}}};this.kxn=function(d,a){var e=typeof a==="function"?a:this.yux(a);var b=[];for(var c=0;c<d.length;c++){if(e(d[c],c)){b.push(d[c])}}return b};this.d8k=function(e,f){var c=[];for(var d=0;d<e.length;d++){var g=e[d];var a={};for(var b=0;b<f.length;b++){if(g.hasOwnProperty(f[b])){a[f[b]]=g[f[b]]}}c.push(a)}return c};this.Hel=function(k,g,f){var h=(typeof g==="string")?[g]:(g||[]);var e=(typeof f==="boolean")?[f]:(f||[]);var a=[];for(var d=0;d<k.length;d++){a.push({row:k[d],i:d})}a.sort(function(j,i){for(var l=0;l<h.length;l++){var o=j.row[h[l]],m=i.row[h[l]];var n=o<m?-1:(o>m?1:0);if(e[l]){n=-n}if(n!==0){return n}}return j.i-i.i});var c=[];for(var b=0;b<a.length;b++){c.push(a[b].row)}return c};this.Y61=function(f,b,e){var a=[];for(var d=0;d<f.length;d++){var g=f[d];var h={};for(var c in g){if(g.hasOwnProperty(c)){h[c]=g[c]}}h[b]=e(g,d);a.push(h)}return a};this.OEY=function(j,h){var a=h.col||"value";var e=[];for(var b=0;b<j.length;b++){var g=j[b][a];if(typeof g==="number"&&!isNaN(g)){e.push(g)}}var c=0;for(var k=0;k<e.length;k++){c+=e[k]}switch(h.agg){case"n":return j.length;case"sum":return c;case"mean":return e.length?c/e.length:NaN;case"min":return e.length?Math.min.apply(null,e):NaN;case"max":return e.length?Math.max.apply(null,e):NaN;case"median":if(!e.length){return NaN}var d=e.slice().sort(function(l,i){return l-i});var f=Math.floor(d.length/2);return d.length%2?d[f]:(d[f-1]+d[f])/2;case"first":return j.length?j[0][a]:undefined;default:return NaN}};this.JP8=function(t,n,d){var p=(typeof n==="string")?[n]:(n||[]);var b={};var e=[];for(var k=0;k<t.length;k++){var j=[];for(var o=0;o<p.length;o++){j.push(String(t[k][p[o]]))}var s=j.join("\x00");if(!b.hasOwnProperty(s)){b[s]=[];e.push(s)}b[s].push(t[k])}var h=[];for(var l=0;l<e.length;l++){var r=b[e[l]];var m={};for(var f=0;f<p.length;f++){m[p[f]]=r[0][p[f]]}for(var q=0;q<(d||[]).length;q++){m[d[q].name]=this.OEY(r,d[q])}h.push(m)}return h};this.Yo3=function(h,o,p,e){o=o||"smp";p=p||"value";e=e||["var"];var l=[];var d={};var u=[];var x={};var a={};for(var w=0;w<h.length;w++){var g=h[w];var b=g[o];if(!d.hasOwnProperty(b)){d[b]=true;l.push(b)}var y=[];for(var z=0;z<e.length;z++){y.push(String(g[e[z]]))}var B=y.join("\x00");if(!x.hasOwnProperty(B)){x[B]=true;var k={};for(var s=0;s<e.length;s++){k[e[s]]=g[e[s]]}u.push(k);a[B]={}}a[B][b]=g[p]}var A=[];for(var m=0;m<u.length;m++){var v=[];for(var q=0;q<e.length;q++){v.push(String(u[m][e[q]]))}var f=a[v.join("\x00")];var j=[];for(var t=0;t<l.length;t++){j.push(f.hasOwnProperty(l[t])?f[l[t]]:undefined)}A.push(j)}return{ids:u,names:l,data:A}};this.OqB=function(c,d){var a=c;for(var b=0;b<(d||[]).length;b++){var e=d[b];switch(e.op){case"filter":a=this.kxn(a,{col:e.col,op:e.cmp,value:e.value});break;case"select":a=this.d8k(a,e.cols);break;case"arrange":a=this.Hel(a,e.by,e.desc);break;case"mutate":a=this.Y61(a,e.col,e.fn);break;case"summarize":a=this.JP8(a,e.by,e.aggs);break;case"pivotWider":a=this.Yo3(a,e.namesFrom,e.valuesFrom,e.idCols);break;default:break}}return a};this.i4r=function(){var a=this.summaryType;if(a=="mean"){return"mean"}if(a=="median"||a=="iqr"){return"median"}if(a=="sum"){return"sum"}if(a=="max"){return"max"}if(a=="min"){return"min"}if(a=="count"){return"count"}return null};this.iwu=function(a,b){if(b=="mean"){return this.pjH(a,false)[0]}if(b=="median"){return this.rhA(a,false)[0]}if(b=="sum"){return this.sum(a,false)}if(b=="max"){return this.max(a,false)}if(b=="min"){return this.min(a,false)}if(b=="count"){return a.length}return Number.NaN};this.WEJ=function(){return[this.isGroupedData?1:0,this.isTransformedData?1:0,this.summaryType||"",(this.groupingFactors||[]).join("\x00")]};this.RtN=function(){var l=this.se7();if(!this.isGroupedData){if(!this.HJq(this.data.y.smps)||!this.HJq(this.data.y.vars)){return{mode:"ungrouped",skipped:true,data:null,names:null,vars:null}}var q=this.Yo3(l,"smp","value",["var"]);var o=[];for(var m=0;m<q.ids.length;m++){o.push(q.ids[m]["var"])}return{mode:"ungrouped",skipped:false,data:q.data,names:q.names,vars:o}}var h=this.i4r();var a=this.otE();if(!h||this.isTransformedData||!a||!a.grps){return{mode:"grouped",skipped:true,data:null,names:null,vars:null}}var g=this.data.y.smps;var f=g.length;var b=a.grps;var e=b.length;var w=[];for(var t=0;t<this.varIndices.length;t++){var n=this.varIndices[t];if(n==undefined){continue}var p=n*f;w[n]=[];for(var s=0;s<e;s++){var u=[];var c=b[s];var d=c?c.length:0;for(var r=0;r<d;r++){u.push(l[p+c[r]].value)}w[n][s]=this.iwu(u,h)}}return{mode:"grouped",skipped:false,data:w,names:a.smps,vars:this.data.y.vars}};this.Fp6=function(){var a=this;return this.LjN("wrangledDataProjection",this.WEJ(),function(){return a.RtN()})};this.gSI=function(h){if(!this.isGroupedData){return null}var c=this.otE();var e=h||(c?c.grps:null);if(!e){return null}var t=this.data;if(!t.x){return{}}var j=e.length;var n=this.meta.data.x;var l={};for(var y in t.x){if(!t.x.hasOwnProperty(y)){continue}var o=t.x[y];var r=n[y].type=="Numeric";var i=l[y]=[];for(var s=0;s<j;s++){var u=e[s];var v=u?u.length:0;var f;if(r){var q=[];for(var p=0;p<v;p++){var k=o[u[p]];if(!isNaN(k)){q.push(k)}}f=this.viJ(q)}else{var a={};for(var p=0;p<v;p++){var x=o[u[p]];if(x!=null&&x!==""){a[x]=true}}f=this.elc(a).join(" + ")}i.push(f)}if(n[y]["boolean"]){for(var w=0;w<i.length;w++){i[w]=i[w]!=="false"}}}return l};this.ALh=function(h){var o=this.summaryType;var m={mean:1,median:1,iqr:1,sum:1,min:1,max:1,count:1};if(!this.isGroupedData||!m[o]){return{skipped:true,type:o,stats:null}}var O=this.isTransformedData&&this.transformData&&this.dKT();var f=this.transformData;var a=this.otE();var b=h||(a?a.grps:null);if(!b){return{skipped:true,type:o,stats:null}}var u=this.KBZ();var E={};for(var A=0;A<u.length;A++){E[u[A]["var"]+"\x00"+u[A].smp]=u[A].value}var B=this.data.y.vars;var e=this.data.y.smps;var n=b.length;var N={};var d=function(i,k,g,r){if(!N[i]){N[i]=[]}if(!N[i][k]){N[i][k]=[]}N[i][k][g]=r};for(var G=0;G<this.varIndices.length;G++){var x=this.varIndices[G];if(x==undefined){continue}var q=B[x];for(var F=0;F<n;F++){var L=[];var c=b[F];var l=c?c.length:0;for(var D=0;D<l;D++){L.push(E[q+"\x00"+e[c[D]]])}if(O){for(var y=0;y<L.length;y++){L[y]=this.TWS(f,L[y])}}if(o=="iqr"){var z=this.Yim(L);d("mean",x,F,z[0]);d("median",x,F,z[2]);d("qtl1",x,F,z[1]);d("qtl3",x,F,z[3]);d("iqr1",x,F,z[4]);d("iqr3",x,F,z[5]);d("out",x,F,z[6]);d("n",x,F,z[7]);d("conf",x,F,z[8]?z[8]:[]);d("min",x,F,z[9]?z[9][0]:Number.NaN);d("max",x,F,z[9]?z[9][1]:Number.NaN);d("semean",x,F,this.tQR(L));if(O){d("trans",x,F,z[1])}}else{if(o=="median"){var I=this.rhA(L,false);d("min",x,F,this.min(L,false));d("max",x,F,this.max(L,false));d("median",x,F,I[0]);d("n",x,F,I[1]);if(O){d("trans",x,F,I[1])}}else{if(o=="mean"){var J=this.pjH(L,false);d("min",x,F,this.min(L,false));d("max",x,F,this.max(L,false));d("mean",x,F,J[0]);d("stdev",x,F,J[1]);d("n",x,F,J[2]);if(O){d("trans",x,F,J[0]);d("tstdev",x,F,J[1])}}else{if(o=="min"||o=="max"){var C=this.max(L,false);d("min",x,F,this.min(L,false));d("max",x,F,C);d("n",x,F,L.length);if(O){d("trans",x,F,C)}}else{if(o=="sum"){var K=this.sum(L,false);d("min",x,F,0);d("max",x,F,K);d("sum",x,F,K);d("n",x,F,L.length);if(O){d("trans",x,F,K)}}else{if(o=="count"){var s=L.length;d("min",x,F,0);d("max",x,F,s);d("count",x,F,s);d("n",x,F,s);if(O){d("trans",x,F,s)}}}}}}}}}if(o=="iqr"&&N.n){var p=this.smpIndices.length;for(var w=0;w<this.varIndices.length;w++){var M=this.varIndices[w];if(M==undefined||!N.n[M]){continue}for(var H=0;H<N.n[M].length;H++){d("nfac",M,H,Math.sqrt(N.n[M][H]/p)*2)}}}return{skipped:false,type:o,stats:N}};this.lIE=function(){var b=this.groupingFactors||[];if(this.isCxplot){return false}if(!this.wrangleBuildTarget&&this.segregateSamplesBy&&this.segregateSamplesBy.length){return false}return true};this.Kao=function(h){if(!this.isGroupedData||!this.lIE()){return{skipped:true,grps:null,grpIdxs:null,labs:null,smps:null,glab:null}}var D=this.groupingFactors||[];var A=this.data;if(!D.length||!A.x){return{skipped:true,grps:null,grpIdxs:null,labs:null,smps:null,glab:null}}var q=this.meta.data.x;var F=this.EBF(this.smpOverlays);var e=h||this.smpIndices;var C={};var o={};var w=[];for(var v=0;v<e.length;v++){var l=e[v];var n=[];var B=[];for(var u=0;u<D.length;u++){var p=D[u];var G=A.x[p]?A.x[p][l]:undefined;if(q[p]&&q[p].type=="Numeric"){G=G||"null"}else{G=G===false?"false":(G||"null")}n.push(G);if(!F.hasOwnProperty(p)){B.push(G)}}var z=n.join(" :: ");var k=B.length>0?B.join(" :: "):"";if(!C.hasOwnProperty(z)){C[z]=[];o[z]=k;w.push(z)}C[z].push(l)}if(D.length==1&&q[D[0]]&&q[D[0]].priority&&q[D[0]].levels){w=this.QWl(q[D[0]].levels)}var s=this.legendOrder;if(s&&s.hasOwnProperty(D[0])){var t=s[D[0]];w.sort(function(d,a){return t.indexOf(d.split(" :: ")[0])-t.indexOf(a.split(" :: ")[0])})}else{if(this.numericGroupSort){w.sort(function(M,L){var Q=M.split(" :: ");var i=L.split(" :: ");var J=Math.min(Q.length,i.length);for(var j=0;j<J;j++){var H=Q[j];var d=i[j];var I,f,P,g,O,N;I=Number(H);P=H!==""&&!isNaN(I);f=Number(d);g=d!==""&&!isNaN(f);if(!P){O=H.match(/^>(\d+(?:\.\d+)?)/);if(O){I=Number(O[1])+1e-8;P=true}}if(!P){O=H.match(/^<(\d+(?:\.\d+)?)/);if(O){I=Number(O[1])-1e-8;P=true}}if(!P){O=H.match(/^(\d+(?:\.\d+)?)/);if(O){I=Number(O[1]);P=true}}if(!g){N=d.match(/^>(\d+(?:\.\d+)?)/);if(N){f=Number(N[1])+1e-8;g=true}}if(!g){N=d.match(/^<(\d+(?:\.\d+)?)/);if(N){f=Number(N[1])-1e-8;g=true}}if(!g){N=d.match(/^(\d+(?:\.\d+)?)/);if(N){f=Number(N[1]);g=true}}var K=(P&&g)?(I-f):(H<d?-1:(H>d?1:0));if(K!==0){return K}}return Q.length-i.length})}else{w.sort()}}var c=this.groupingFactorLevelsOrder;var E=false;if(c&&typeof c==="object"){for(var y=0;y<D.length;y++){if(c.hasOwnProperty(D[y])){E=true;break}}}if(E){w.sort(function(j,g){var I=j.split(" :: ");var f=g.split(" :: ");for(var i=0;i<D.length;i++){if(c.hasOwnProperty(D[i])){var H=c[D[i]];var d=H.indexOf(String(I[i]));var a=H.indexOf(String(f[i]));if(d===-1){d=H.length}if(a===-1){a=H.length}if(d!==a){return d-a}}else{if(I[i]<f[i]){return -1}if(I[i]>f[i]){return 1}}}return 0})}var b=[];var m=[];var r=[];for(var x=0;x<w.length;x++){b.push(C[w[x]]);r.push(o[w[x]]);m.push(x)}return{skipped:false,grps:b,grpIdxs:m,labs:r,smps:w,glab:[]}};this.jhv=function(){var a=this.Kao(this.KON());if(a.skipped){return null}var d={grps:a.grps,grpIdxs:a.grpIdxs,labs:a.labs,smps:a.smps,glab:a.glab,vars:this.data.y.vars};var e=this.gSI(a.grps);d.factors=e||{};var b=this.ALh(a.grps);if(!b.skipped&&b.stats){for(var c in b.stats){if(b.stats.hasOwnProperty(c)){d[c]=b.stats[c]}}if(d.median){d.iqr=d.median}}return d};this.ZYw=function(b,d){if(this.tidyWrangleSource===false){return false}if(typeof CanvasXpress!=="undefined"&&CanvasXpress.tidyWrangleSource===false){return false}if(d||!b||!b.length||!this.isRawData||(this.layoutComb&&!this.wrangleBuildTarget)){return false}if(!this.data.x||!this.lIE()){return false}var c=this.coL();return{mean:1,median:1,iqr:1,sum:1,min:1,max:1,count:1}[c]?true:false};this.dKT=function(){var a=this.transformData;if(!a){return true}return{log2:1,log10:1,"-log2":1,"-log10":1,exp2:1,exp10:1,sqrt:1}[a]?true:false};this.coL=function(){return this.graphType=="Boxplot"?"iqr":this.graphType.match(/Stacked/i)?"sum":this.summaryType?this.summaryType:"mean"};this.f0W=function(r,p,d,q){this.summaryType=q;this.isBoxplotCalc=q=="iqr";var l=this.otE();var m=this.jhv();if(!l||!m){return false}l.grps=m.grps;l.grpIdxs=m.grpIdxs;l.labs=m.labs;l.smps=m.smps;l.glab=m.glab;l.factors=m.factors;var c=["mean","median","stdev","n","qtl1","qtl3","iqr1","iqr3","out","conf","nfac","min","max","sum","count","trans","tstdev"];for(var e=0;e<c.length;e++){if(m[c[e]]){l[c[e]]=m[c[e]]}}var u=["trans","tstdev","mean","median","stdev","qtl1","qtl3","iqr1","iqr3","out","conf","nfac","n","min","max","sum","count"];for(var o=0;o<u.length;o++){var t=u[o];if(!l[t]){l[t]=[]}for(var g=0;g<this.varIndices.length;g++){var b=this.varIndices[g];if(b!=undefined&&!l[t][b]){l[t][b]=[]}}}l.iqr=l.median;l.vars=[];for(var h=0;h<this.varIndices.length;h++){l.vars.push(this.data.y.vars[this.varIndices[h]])}this.grpIndices=[];if(p){for(var h=0;h<p.length;h++){this.grpIndices.push(p[h]);if(!d){this.hiddenGrps.push(false)}}}else{for(var h=0;h<l.grps.length;h++){this.grpIndices.push(h);if(!d){this.hiddenGrps.push(false)}}}var s=Number.POSITIVE_INFINITY;var n=Number.NEGATIVE_INFINITY;for(var h=0;h<l.min.length;h++){if(l.min[h]){for(var f=0;f<l.min[h].length;f++){s=Math.min(s,l.min[h][f]);n=Math.max(n,l.max[h][f])}}}l.scale=this[this.axisAlgorithm](s,n,this.xAxisTicks,this.isGraphTime,this.axisWilkinsonLoose);return true};this.FO7=function(){var e=this.wni();var a=this;var d=[];for(var f=0;f<e.length;f++){var g=e[f];if(g&&g.op==="mutate"&&typeof g.fn==="string"){var c=g.col||"value";var b=g.fn;d.push({op:"mutate",col:c,fn:(function(i,h){return function(j){return a.TWS(h,j[i])}})(c,b)})}else{d.push(g)}}return d};this.wni=function(){var a=this.Zuk(this.dataPipeline)?this.dataPipeline:[];var b=this.Zuk(this.tidyDataOps)?this.tidyDataOps:[];return a.concat(b)};this.KBZ=function(){var a=this;var b=this.FO7();return this.LjN("pipelineRows",[JSON.stringify(this.wni())],function(){return a.OqB(a.se7(),b)})};this.IlY=function(){var b=this.wni();for(var a=0;a<b.length;a++){if(b[a].op==="filter"){return true}}return false};this.KON=function(){if(!this.IlY()){return null}var f=this.KBZ();var a={};for(var e=0;e<f.length;e++){a[f[e].smp]=true}var g=this.data.y.smps;var d=[];var c=this.smpIndices;for(var b=0;b<c.length;b++){if(a.hasOwnProperty(g[c[b]])){d.push(c[b])}}return d};this.jxh=function(){if(this.tidyWrangleSource===false){return null}if(typeof CanvasXpress!=="undefined"&&CanvasXpress.tidyWrangleSource===false){return null}if(this.isTransformedData||this.isGroupedData){return null}var k=this.KBZ();var A={};for(var q=0;q<k.length;q++){A[k[q]["var"]+"\x00"+k[q].smp]=k[q].value}var t=this.data.y.vars;var d=this.data.y.smps;var e=[];var y=Number.POSITIVE_INFINITY;var u=Number.NEGATIVE_INFINITY;if(this.correlationAxis=="samples"){if((this.xAxisIndices&&this.xAxisIndices.length)||(this.yAxisIndices&&this.yAxisIndices.length)){return null}var h=this.Rpc();var g={};for(var m=0;m<h.length;m++){var I=h[m];var G=[];for(var n=0;n<this.varIndices.length;n++){var l=this.varIndices[n];if(l!=undefined){G.push(A[t[l]+"\x00"+d[I]])}}g[I]=G}for(var D=0;D<h.length;D++){var o=h[D];if(!e[o]){e[o]=[]}for(var B=D;B<h.length;B++){var F=h[B];if(!e[F]){e[F]=[]}if(D==B){e[o][F]=1}else{e[o][F]=this.m6v(g[o],g[F]);e[F][o]=e[o][F]}y=Math.min(y,e[o][F]);u=Math.max(u,e[o][F])}}}else{var f=this.isGroupedData?false:true;var E={};for(var z=0;z<this.varIndices.length;z++){var H=this.varIndices[z];var b=[];for(var p=0;p<d.length;p++){b.push(A[t[H]+"\x00"+d[p]])}E[H]=b}for(var x=0;x<this.varIndices.length;x++){var C=this.varIndices[x];if(!e[C]){e[C]=[]}for(var a=x;a<this.varIndices.length;a++){var w=this.varIndices[a];if(!e[w]){e[w]=[]}if(x==a){e[C][w]=1}else{e[C][w]=this.m6v(E[C],E[w],f);e[w][C]=e[C][w]}y=Math.min(y,e[C][w]);u=Math.max(u,e[C][w])}}}return{cor:e,min:[y],max:[u],scale:this[this.axisAlgorithm](y,u,5,this.isGraphTime,this.axisWilkinsonLoose)}};this.YdP=function(){if(!this.HJq(this.data.y.smps)||!this.HJq(this.data.y.vars)){return null}var h=this.KBZ();var l={};for(var a=0;a<h.length;a++){l[h[a]["var"]+"\x00"+h[a].smp]=h[a].value}var e=this.data.y.vars;var f=this.data.y.smps;var c=[];for(var d=0;d<e.length;d++){var k=[];for(var b=0;b<f.length;b++){var g=e[d]+"\x00"+f[b];k.push(l.hasOwnProperty(g)?l[g]:Number.NaN)}c.push(k)}return c}};CanvasXpress.prototype.initDatasetTransform=function(){this.TWS=function(b,c,a){switch(b){case"log2":return a?Math.pow(2,c):Math.log(c)/Math.LN2;case"log10":return a?Math.pow(10,c):Math.log(c)/Math.LN10;case"-log2":return a?-Math.pow(2,c):-Math.log(c)/Math.LN2;case"-log10":return a?-Math.pow(10,c):-Math.log(c)/Math.LN10;case"exp2":return a?Math.log(c)/Math.LN2:Math.pow(2,c);case"exp10":return a?Math.log(c)/Math.LN10:Math.pow(10,c);case"sqrt":return a?c*c:Math.sqrt(c);default:return c}};this.u1u=function(e,d,a,c){if(this.ql8()||this.graphType.match(/Area/)){return}this.F7e();this.dataVersion=(this.dataVersion||0)+1;if(!this.isGroupedData){this.M6X()}var b=this.transformData;this.transformData=e;this.transformAxis=d;this.xAxisMaxStrLength=false;this.xAxis2MaxStrLength=false;this.yAxisMaxStrLength=false;this.zAxisMaxStrLength=false;if(e=="reset"||e=="undo"){this.ZbD();this.transformData=false;this.isTransformedData=false;if(this.tempIndices){if(this.isGroupedData){this.grpIndices=this.tempIndices}else{this.smpIndices=this.tempIndices}this.tempIndices=false}}else{if(e=="save"){this.GKi();this.transformData=false;this.isTransformedData=false}else{if(e=="log2"||e=="log10"||e=="-log2"||e=="-log10"||e=="exp2"||e=="exp10"||e=="sqrt"){if(this.qeI(e)){this.isTransformedData=e}else{this.transformData=b;return}}else{if(e=="ratio2"||e=="ratio10"){this.hDu(e,a);this.isTransformedData=e}else{this.ShF(e,d,!this.isRawData||this.isGroupedData?this.EqB():0);this.isTransformedData=e}}}}delete (this.meta.def.colorBrew);if(this.graphType=="Boxplot"){this.summarizeBoxplot=true}this.Ef0();if(!c){this.U4z({func:"transform",par:[e,d,a,c]})}};this.ZbD=function(){var d=this.data.y;for(var b=0;b<this.varIndices.length;b++){var c=this.varIndices[b];for(var a=0;a<d.data[c].length;a++){if(d.trans&&d.trans[c]&&!isNaN(d.data[c][a])){d.trans[c][a]=d.data[c][a]}}}if(this.isGroupedData){this.isTransformedData=false;this.ev3(this.groupingFactors,false,false,false,true)}};this.GKi=function(){var a=this.isGroupedData?this.groupingFactors:false;var e=this.data.y;if(e.trans&&e.trans.length>0){this.iBN();for(var c=0;c<this.varIndices.length;c++){var d=this.varIndices[c];for(var b=0;b<e.data[d].length;b++){if(!isNaN(e.data[d][b])){e.data[d][b]=e.trans[d][b]}}}if(a){this.isTransformedData=false;this.ev3(a,false,false,false,true)}}};this.qeI=function(e){var g=this.data.y;var a=this.Hq7(g.data);if(e.match(/log/)){if(a[0]<=0){if(!this.nanOmit){alert("Cannot log transform values <= 0");return false}else{this.aru("Dropping values <= 0");alert("Dropping values <= 0")}}e=e=="log2"?"log2":e=="-log2"?"-log2":e=="-log10"?"-log10":"log10"}else{if(e.match(/exp/)){if(a[1]>=1000){alert("Cannot exp transform values > 1000");return false}e=e=="exp2"?"exp2":"exp10"}}if(!g.trans){g.trans=[]}if(!g.tstdev){g.tstdev=[]}var f=this.workflowBy?this.data.y.vars.length:this.isGroupedData?this.data.y.vars.length:!this.isDOE?this.data.y.vars.length:this.varIndices.length;for(var c=0;c<f;c++){var d=this.workflowBy||!this.isDOE?c:this.varIndices[c];if(!g.trans[d]){g.trans[d]=[]}if(!g.tstdev[d]){g.tstdev[d]=[]}for(var b=0;b<g.data[d].length;b++){if(!isNaN(g.data[d][b])){if(e=="log2"){this.transformBase=2;g.trans[d][b]=Math.log(g.data[d][b])/Math.LN2}else{if(e=="log10"){this.transformBase=10;g.trans[d][b]=Math.log(g.data[d][b])/Math.LN10}else{if(e=="-log2"){this.transformBase=2;g.trans[d][b]=-Math.log(g.data[d][b])/Math.LN2}else{if(e=="-log10"){this.transformBase=10;g.trans[d][b]=-Math.log(g.data[d][b])/Math.LN10}else{if(e=="exp2"){this.transformBase=2;g.trans[d][b]=Math.pow(2,g.data[d][b])}else{if(e=="exp10"){this.transformBase=10;g.trans[d][b]=Math.pow(10,g.data[d][b])}else{if(e=="sqrt"){g.trans[d][b]=Math.sqrt(g.data[d][b])}}}}}}}}}}if(this.isGroupedData){this.isTransformedData=e;this.ev3(this.groupingFactors,false,false,true,true)}return true};this.hDu=function(){var h=[];var n=this.data;var a=this.isGroupedData&&!this.graphType.match(/dotplot|boxplot/i)?this.otE():n.y;if(this.isGroupedData&&this.ratioGroupReference&&n.x.hasOwnProperty(this.ratioGroupReference)){if(!this.ratioLevelReference){for(var s=0;s<n.x[this.ratioGroupReference].length;s++){if(n.x[this.ratioGroupReference][s]!=null){this.ratioLevelReference=n.x[this.ratioGroupReference][s];break}}}if(this.groupingFactors.length==1){this.ratioReference=this.OKx(this.ratioLevelReference);if(this.ratioReference<0){this.ratioLevelReference=this.otE().smps[0];this.ratioReference=0}h=[this.ratioReference]}else{var f=[];for(var s=0;s<this.groupingFactors.length;s++){if(this.groupingFactors[s]!=this.ratioGroupReference){f.push(this.groupingFactors[s])}}var b={};var u=[];var r=0;for(var s=0;s<this.smpIndices.length;s++){var k=this.smpIndices[s];var m=[];var x;for(var q=0;q<f.length;q++){var t=f[q];x=n.x[t][k];if(!x){x="NA"}m.push(x)}x=m.join(" - ");if(!b.hasOwnProperty(x)){this.otE().smps.push(x);u[r]=x;b[x]=[];b[x].push(k);r++}else{b[x].push(k)}}h=this.Iop(this.ratioGroupReference,this.ratioLevelReference);this.ratioReference=[];for(var s=0;s<this.otE().grps.length;s++){var g=this.otE().grps[s][0];var o=false;for(var p in b){for(var q=0;q<b[p].length;q++){if(g==b[p][q]){o=this.EBF(b[p]);break}}if(o){break}}for(var q=0;q<h.length;q++){if(o.hasOwnProperty(h[q])){this.ratioReference.push(h[q]);break}}}}}else{if(this.ratioSampleReference){var v=this.isGroupedData&&this.graphType.match(/dotplot|boxplot/i);if(v){this.isGroupedData=false;this.ratioReference=this.OKx(this.ratioSampleReference);this.isGroupedData=true}else{this.ratioReference=this.OKx(this.ratioSampleReference)}}if(this.ratioReference<0){this.ratioSampleReference=n.y.smps[0];this.ratioReference=0}h=[this.ratioReference]}for(var s=0;s<this.varIndices.length;s++){var k=this.varIndices[s];if(!a.trans){a.trans=[]}if(!a.stdev){a.stdev=[]}if(!a.trans[k]){a.trans[k]=[]}if(!a.stdev[k]){a.stdev[k]=[]}for(var q=0;q<a.data[k].length;q++){var e;if(this.isGroupedData&&this.ratioGroupReference&&n.x.hasOwnProperty(this.ratioGroupReference)){if(this.groupingFactors.length==1){e=this.otE().mean[k][this.ratioReference]}else{e=this.otE().mean[k][this.ratioReference[q]]}}else{e=a.data[k][this.ratioReference]}if(!isNaN(a.data[k][q])&&!isNaN(e)&&e>0){var c=this.transformBase==2?"ratio2":"ratio10";var w=a.data[k][q]/e;var d=a.stdev[k][q];if(c=="ratio2"){a.trans[k][q]=Math.log(w)/Math.LN2;if(d&&d>0){a.tstdev[k][q]=Math.log(d)/Math.LN2}}else{if(c=="ratio10"){a.trans[k][q]=Math.log(w)/Math.LN10;if(d&&d>0){a.tstdev[k][q]=Math.log(d)/Math.LN10}}}}}}};this.ShF=function(q,n,m){var c=this.isGroupedData&&!this.graphType.match(/dotplot|boxplot/i)?this.otE():this.data.y;var k=this.isGroupedData?false:true;var o;n=n?n:this.transformAxis;if(n=="samples"){for(var g=0;g<c.data[m].length;g++){var b=[];for(var d=0;d<this.varIndices.length;d++){var h=this.varIndices[d];b.push(c.data[h][g])}if(q=="percentile"){o=this.Npb(b)}else{if(q=="zscore"){o=this.pjH(b,k)}}for(var d=0;d<this.varIndices.length;d++){var h=this.varIndices[d];if(!c.trans){c.trans=[]}if(!c.trans[h]){c.trans[h]=[]}if(!isNaN(c.data[h][g])){if(q=="percentile"){c.trans[h][g]=this.Amv(o[0],o[1],c.data[h][g])}else{if(q=="zscore"){c.trans[h][g]=(c.data[h][g]-o[0])/o[1]}}}}}}else{for(var g=0;g<this.varIndices.length;g++){var p=this.varIndices[g];if(!c.trans){c.trans=[]}if(!c.trans[p]){c.trans[p]=[]}var b=c.data[p];if(q=="percentile"){o=this.Npb(b)}else{if(q=="zscore"){o=this.pjH(b,k)}}for(var d=0;d<b.length;d++){if(!isNaN(c.data[p][d])){if(q=="percentile"){c.trans[p][d]=this.Amv(o[0],o[1],c.data[p][d])}else{if(q=="zscore"){c.trans[p][d]=(c.data[p][d]-o[0])/o[1]}}}}}}}};CanvasXpress.prototype.initDatasetGrouping=function(){this.kMO=function(c){var d=this.QWl(this.segregateSamplesBy);var b=this.QWl(this.segregateVariablesBy);this.qPC(true);this.ev3(c,false,false,true,true,true);this.OYP(b,d,true)};this.ev3=function(aj,T,r,ae,c,C,ak){var N=this;if(this.ql8()){return}if(!this.isRawData){return}var ah=this.data;var B=this.otE()?this.otE():false;var K=this.meta.data.layout?this.meta.data.layout:false;if(!this.Zuk(aj)){aj=[aj]}else{aj=this.Jhz(aj)}if(!aj||aj.length<1||!ah.x){return this.iBN()}if(aj.length>1&&aj.includes("__FACTOR__")){aj=aj.filter(function(a){return a!="__FACTOR__"})}for(var aa=0;aa<aj.length;aa++){if(!aj||!ah.x[aj[aa]]){return this.iBN()}}if(!this.isDOE&&this.layoutComb&&K&&!this.Fvn(K.group,aj)){this.kMO(aj);K.group=aj;if(!c){this.U4z({func:"groupSamples",par:[aj,T,r,ae,c,C,ak]})}return}if(K&&K.group){K.group=aj}var v={};var R={};var g=this.EBF(this.smpOverlays);var y=B&&B.smps?B.smps:false;var D=this.QWl(this.hiddenGrps);if(!this.isDOE&&!ae){this.FB7(true)}if(!ae){this.FB7()}this.isGroupedData=true;this.groupingFactors=aj;this.Doz(true);this.hiddenGrps=ak?D:[];this.isGroupedData=false;B=this.otE()?this.otE():false;if(this.ZYw(aj,T)){this.isGroupedData=true;if(this.f0W(aj,r,ak,this.coL())){this.AzP();this.ZJf(false,false,false,!this.layoutComb);if(!C){this.xAxisValues=[];this.xAxis2Values=[];this.yAxisValues=[];this.zAxisValues=[];if(!this.layoutComb||!this.layoutAdjust){if(typeof(this.setAxes)=="function"){this.y5s()}}}if(!c){this.U4z({func:"groupSamples",par:[aj,T,r,ae,c,C,ak]})}return}}var an=this.smpIndices.length;for(var aa=0;aa<an;aa++){var x=this.smpIndices[aa];var G=[];var q=[];var A;var W;for(var Z=0;Z<aj.length;Z++){var O=aj[Z];A=this.dl6(x,"x",O);if(this.meta.data.x[O].type=="Numeric"){A=A||"null"}else{A=A===false?"false":(A||"null")}G.push(A);if(!g.hasOwnProperty(O)){q.push(A)}}A=G.join(" :: ");W=q.length>0?q.join(" :: "):"";if(!v.hasOwnProperty(A)){B.smps.push(A);R[A]=W;v[A]=[]}v[A].push(x)}this.isGroupedData=true;if(B.smps.length<1){B.smps=y;this.U4z({func:"groupSamples",par:[aj,T,r,ae,c,C,ak]});return}if(this.isCxplot&&aj.length==1&&this.meta.data.x&&this.meta.data.x.hasOwnProperty(aj[0])&&this.meta.data.x[aj[0]].levels&&this.meta.data.x[aj[0]].type!="Numeric"){if(this.sortIncludeEmpty){if(this.meta.config.user.aes.hasOwnProperty("meta")){if(aj[0]==this.meta.config.user.aes.x&&this.meta.config.user.aes.meta.hasOwnProperty("xLabels")){var ab=this.QWl(this.meta.config.user.aes.meta.xLabels);var ad=false;for(var aa=0;aa<ab.length;aa++){if(this.meta.data.x[aj[0]].levels.includes(ab[aa])){continue}else{ad=true}}B.smps=ad?this.QWl(this.meta.data.x[aj[0]].levels):ab}else{if(aj[0]==this.meta.config.user.aes.y&&this.meta.config.user.aes.meta.hasOwnProperty("yLabels")){var ab=this.QWl(this.meta.config.user.aes.meta.yLabels);var ad=false;for(var aa=0;aa<ab.length;aa++){if(this.meta.data.x[aj[0]].levels.includes(ab[aa])){continue}else{ad=true}}B.smps=ad?this.QWl(this.meta.data.x[aj[0]].levels):ab}else{B.smps=this.QWl(this.meta.data.x[aj[0]].levels)}}}else{B.smps=this.QWl(this.meta.data.x[aj[0]].levels)}}}else{if(this.isCxplot&&aj.length==2&&this.meta.data.x&&this.meta.data.x.hasOwnProperty(aj[0])&&this.meta.data.x[aj[0]].levels&&this.meta.data.x[aj[0]].type!="Numeric"&&this.meta.data.x.hasOwnProperty(aj[1])&&this.meta.data.x[aj[1]].levels&&this.meta.data.x[aj[1]].type!="Numeric"){if(this.sortIncludeEmpty){var n=this.meta.data.x;B.smps=this.QWl(B.smps.sort(function(k,j){var s=k.split(" :: ");var i=j.split(" :: ");var d=n[aj[0]].levels.indexOf(s[0]);var a=n[aj[0]].levels.indexOf(i[0]);if(d==a){d=n[aj[1]].levels.indexOf(s[1]);a=n[aj[1]].levels.indexOf(i[1])}return d-a}))}}else{if(this.sortOnGrouping){if(this.sortOnGrouping=="size"){B.smps.sort(function(i,d){return v[i].length-v[d].length})}else{if(this.sortOnGrouping=="descending"){B.smps.sort().reverse()}else{B.smps.sort()}}}}}if(this.groupingFactors.length==1&&this.meta.data.x&&this.meta.data.x.hasOwnProperty(this.groupingFactors[0])&&this.meta.data.x[this.groupingFactors[0]].priority){B.smps=this.QWl(this.meta.data.x[this.groupingFactors[0]].levels)}var an=B.smps.length;if(this.legendOrder&&this.legendOrder.hasOwnProperty(this.groupingFactors[0])){var M=this.legendOrder[this.groupingFactors[0]];B.smps=B.smps.sort(function(i,d){var k=i.split(" :: ")[0];var j=d.split(" :: ")[0];i=k;d=j;return M.indexOf(i)-M.indexOf(d)})}else{if(this.numericGroupSort){B.smps=B.smps.sort(function(av,au){var az=av.split(" :: ");var s=au.split(" :: ");var ar=Math.min(az.length,s.length);for(var t=0;t<ar;t++){var ao=az[t];var d=s[t];var aq,i,ay,j,ax,aw;aq=Number(ao);ay=ao!==""&&!isNaN(aq);i=Number(d);j=d!==""&&!isNaN(i);if(!ay){ax=ao.match(/^>(\d+(?:\.\d+)?)/);if(ax){aq=Number(ax[1])+1e-8;ay=true}}if(!ay){ax=ao.match(/^<(\d+(?:\.\d+)?)/);if(ax){aq=Number(ax[1])-1e-8;ay=true}}if(!ay){ax=ao.match(/^(\d+(?:\.\d+)?)/);if(ax){aq=Number(ax[1]);ay=true}}if(!j){aw=d.match(/^>(\d+(?:\.\d+)?)/);if(aw){i=Number(aw[1])+1e-8;j=true}}if(!j){aw=d.match(/^<(\d+(?:\.\d+)?)/);if(aw){i=Number(aw[1])-1e-8;j=true}}if(!j){aw=d.match(/^(\d+(?:\.\d+)?)/);if(aw){i=Number(aw[1]);j=true}}var at;if(ay&&j){at=aq-i}else{at=ao<d?-1:(ao>d?1:0)}if(at!==0){return at}}return az.length-s.length})}else{B.smps=B.smps.sort()}}if(this.groupingFactorLevelsOrder&&typeof this.groupingFactorLevelsOrder==="object"){var e=this.groupingFactorLevelsOrder;var m=false;for(var aa=0;aa<aj.length;aa++){if(e.hasOwnProperty(aj[aa])){m=true;break}}if(m){B.smps=B.smps.sort(function(s,k){var ap=s.split(" :: ");var j=k.split(" :: ");for(var t=0;t<aj.length;t++){if(e.hasOwnProperty(aj[t])){var ao=e[aj[t]];var d=ao.indexOf(String(ap[t]));var a=ao.indexOf(String(j[t]));if(d===-1){d=ao.length}if(a===-1){a=ao.length}if(d!==a){return d-a}}else{if(ap[t]<j[t]){return -1}if(ap[t]>j[t]){return 1}}}return 0})}}for(var aa=0;aa<an;aa++){var A=B.smps[aa];B.labs.push(R[A]);B.grps.push(v[A]);B.grpIdxs.push(aa)}this.grpIndices=[];if(r){var an=r.length;for(var aa=0;aa<an;aa++){this.grpIndices.push(r[aa]);if(!ak){this.hiddenGrps.push(false)}}}else{var an=B.grps.length;for(var aa=0;aa<an;aa++){this.grpIndices.push(aa);if(!ak){this.hiddenGrps.push(false)}}}var an=this.varIndices.length;var V=B.vars;for(var aa=0;aa<an;aa++){V.push(ah.y.vars[this.varIndices[aa]])}var U={};var l=this.meta.data.x;for(var A in ah.x){U[A]=l[A].type=="Numeric"}var an=B.grps.length;for(var aa=0;aa<an;aa++){var E=B.grps[aa];var al=E?E.length:0;for(var A in ah.x){var h=ah.x[A];var af=B.factors[A];if(!af){af=B.factors[A]=[]}var J;if(U[A]){J=[];for(var Z=0;Z<al;Z++){var H=h[E[Z]];if(!isNaN(H)){J.push(H)}}af.push(this.viJ(J))}else{J={};for(var Z=0;Z<al;Z++){var H=h[E[Z]];if(H!=null&&H!==""){J[H]=true}}var z=this.elc(J);af.push(z.join(" + "))}}}var ac=this.meta.data.x;for(var A in ah.x){if(ac[A]["boolean"]){var af=B.factors[A];var w=af.length;for(var aa=0;aa<w;aa++){af[aa]=af[aa]!=="false"}}}var U=[];if(T){U=this.Zuk(T)?T:[T]}else{T=this.graphType=="Boxplot"?"iqr":this.graphType.match(/Stacked/i)?"sum":this.summaryType?this.summaryType:"mean";U.push(T)}var F=this.isTransformedData;var u=this.summaryType;var f=ah.y;for(var S=0,I=U.length;S<I;S++){var o=[];var am=U[S];var X=F?f.trans:true;var ag;if(F&&f.trans){ag=f.trans?f.trans:this.data.y.trans}else{if(this.isRawData){ag=f.data}else{ag=f[u]||f[this.summaryType]}}var an=this.isDOE&&this.isDOE==1?this.data.y.vars.length:this.varIndices.length;for(var aa=0;aa<an;aa++){var L=this.varIndices[aa];if(L==undefined){continue}var Q=o[L]=[];var p=B.grps;var al=p.length;for(var Z=0;Z<al;Z++){var b=Q[Z]=[];var P=p[Z];var ai=P?P.length:0;for(var Y=0;Y<ai;Y++){b.push(ag[L][P[Y]])}}}this.p7A(am,o)}this.AzP();this.ZJf(false,false,false,!this.layoutComb);if(!C){this.xAxisValues=[];this.xAxis2Values=[];this.yAxisValues=[];this.zAxisValues=[];if(!this.layoutComb||!this.layoutAdjust){if(typeof(this.setAxes)=="function"){this.y5s()}}}if(!X){this.qeI(this.isTransformedData)}if(!c){this.U4z({func:"groupSamples",par:[aj,T,r,ae,c,C,ak]})}};this.iBN=function(h,f,a){if(this.ql8()){return}var e=this.groupingFactors.length==1&&this.groupingFactors[0]=="__FACTOR__";if(!this.isGroupedData&&!this.groupingFactors.length){return}this.FB7(true);this.isGroupedData=false;var g=this.data;var c=this.otE()?this.otE():false;var b=this.meta.data.layout?this.meta.data.layout:false;if(b){delete (b.group)}if(c&&!a){delete (c)}this.groupingFactors=[];this.hiddenGrps=[];this.n9f("w");if(!f){this.ZJf(false,false,false,true)}if(this.summaryType=="iqr"&&e){this.summaryType="raw";this.graphType="Bar"}if(!h){this.U4z({func:"ungroupSamples",par:[h,f,a]})}return};this.CL2=function(){this.isGroupedData=false;this.ev3(this.groupingFactors,false,false,false,true)};this.AzP=function(){if(this.groupingFactors.length){var e=true;if(e){if(this.otE()&&this.otE().glab.length==this.otE().smps.length){this.otE().smps=this.QWl(this.otE().glab)}}}if(this.otE()&&this.otE().smps&&this.groupingFactors.length){for(var c=0;c<this.segregateSamplesBy.length;c++){var a=this.groupingFactors.indexOf(this.segregateSamplesBy[c]);for(var b=0;b<this.otE().smps.length;b++){if(this.otE().smps[b].length){if(!this.otE().glab[b]){this.otE().glab[b]=this.QWl(this.otE().smps[b])}var d=this.otE().glab[b].split(" :: ");if(a>=0){d.splice(a,1).join(" :: ")}else{d=d.join(" :: ")}this.otE().smps[b]=d}}}}if(this.otE()){this.n9f("w")}};this.TgR=function(b){if(this.graphType=="Sankey"||(this.graphType=="Circular"&&(this.circularType=="sunburst"||this.circularType=="bubble"))){this.xAxisIndices[0]=this.mlX(this.xAxis[0])}if(this.hierarchy.length>0){if(!this.meta.data[b]||(this.meta.data[b].hierarchy&&!this.Fvn(this.meta.data[b].hierarchy,this.hierarchy))){this.meta.data[b]={};this.meta.data[b]["data"]={name:this.hierarchy[0],children:[]};for(var f=0;f<this.smpIndices.length;f++){var l=this.smpIndices[f];var a=this.meta.data[b]["data"].children;for(var e=0;e<this.hierarchy.length;e++){var c=this.hierarchy[e];var h=-1;for(var d=0;d<a.length;d++){if(this.dl6(l,"x",c)==a[d].name){h=d}}if(h==-1){var g=this.dl6(l,"x",c);if(g!=null){a.push({name:g,children:[]});h=a.length-1}else{if(e==this.hierarchy.length-1){a.push({name:this.data.y.smps[l],size:this.data.y.data[this.xAxisIndices[0]][l],idx:l});continue}else{continue}}}a=a[h].children;if(e===this.hierarchy.length-1){a.push({name:this.data.y.smps[l],size:this.data.y.data[this.xAxisIndices[0]][l],idx:l})}}}}}else{this.meta.data[b]={};this.meta.data[b]["data"]={name:"Samples",children:[]};for(var f=0;f<this.smpIndices.length;f++){var l=this.smpIndices[f];var a=this.meta.data[b]["data"].children;a.push({name:this.data.y.smps[l],size:this.data.y.data[this.xAxisIndices[0]][l],idx:l})}}}};CanvasXpress.prototype.initDatasetSummarize=function(){this.p7A=function(f,G){this.F7e();var b=this.Dug();var h=this.isGroupedData?false:true;var y=Number.POSITIVE_INFINITY;var x=Number.NEGATIVE_INFINITY;if(!this.isGroupedData){this.M6X()}var d=["trans","tstdev","mean","median","stdev","qtl1","qtl3","iqr1","iqr3","out","conf","nfac","n","min","max","sum","count","scale"];var C=function(i,c){if(!b[i][c]){b[i][c]=[]}};if(f=="cor"){var w=this.jxh();if(w){this.isBoxplotCalc=false;b.cor=w.cor;b.min=w.min;b.max=w.max;b.scale=w.scale;return}}if(f=="gantt"){if(!this.Skj()){this.isGanttDataFormated=false;this.soq()}var E=this.mlX(this.ganttStart?this.ganttStart:this.xAxis[0]?this.xAxis[0]:this.data.y.vars[0]);this.ganttStart=this.data.y.vars[E];var D=this.mlX(this.ganttEnd?this.ganttEnd:this.xAxis[1]?this.xAxis[1]:this.data.y.vars[1]?this.data.y.vars[1]:this.data.y.vars[0]);this.ganttEnd=this.data.y.vars[D]||this.data.y.vars[0];var I=this.vBI(this.Skj());y=I[E].sort(function(i,c){return i-c})[0];x=I[D].sort(function(i,c){return c-i})[0];b.min=[[y]];b.max=[[x]];b.scale=this[this.axisAlgorithm](y,x,5,this.isGraphTime,this.axisWilkinsonLoose)}else{if(f=="cor"){this.isBoxplotCalc=false;if(this.correlationAxis=="samples"){if(this.isGroupedData&&b.cor.length==0){this.iBN(true,true,true)}var p=this.Rpc();var l=p.length;for(var E=0;E<l;E++){var t=p[E];var q=this.dZz(t);if(!b.cor[t]){b.cor[t]=[]}var g=p.length;for(var D=E;D<g;D++){var F=p[D];if(!b.cor[F]){b.cor[F]=[]}var o=this.dZz(F);if(E==D){if(this.isTransformedData){b.trans[t][F]=1}b.cor[t][F]=1}else{b.cor[t][F]=this.m6v(q,o);b.cor[F][t]=b.cor[t][F];if(this.isTransformedData){b.trans[t][F]=b.cor[t][F];b.trans[F][t]=b.cor[F][t]}}y=Math.min(y,b.cor[t][F]);x=Math.max(x,b.cor[t][F])}}}else{var l=this.varIndices.length;for(var E=0;E<l;E++){var t=this.varIndices[E];if(!b.cor[t]){b.cor[t]=[]}var g=this.varIndices.length;for(var D=E;D<g;D++){var F=this.varIndices[D];if(!b.cor[F]){b.cor[F]=[]}if(E==D){b.cor[t][F]=1;if(this.isTransformedData){b.trans[t][F]=1}}else{b.cor[t][F]=this.m6v(b.data[t],b.data[F],h);b.cor[F][t]=b.cor[t][F];if(this.isTransformedData){b.trans[t][F]=b.cor[t][F];b.trans[F][t]=b.cor[F][t]}}y=Math.min(y,b.cor[t][F]);x=Math.max(x,b.cor[t][F])}}}b.min=[y];b.max=[x];b.scale=this[this.axisAlgorithm](y,x,5,this.isGraphTime,this.axisWilkinsonLoose)}else{this.isBoxplotCalc=f=="iqr"?true:false;var l=this.isDOE&&this.isDOE==1?this.data.y.vars.length:this.varIndices.length;for(var E=0;E<l;E++){var a;var t=this.varIndices[E];if(t==undefined){continue}var s=d.length;for(var D=0;D<s;D++){C(d[D],t)}if(this.isGroupedData){if(!G){var v=this.isTransformedData?this.data.y.trans:this.data.y.data;a=[];var n=this.otE().grps.length;for(var D=0;D<n;D++){a[D]=[];var m=this.otE().grps[D].length;for(var B=0;B<m;B++){var e=this.otE().grps[D][B];a[D].push(v[t][e])}}}else{a=G[t]}}else{b.grps=[];a=[];var g=this.smpIndices.length;for(var D=0;D<g;D++){var F=this.smpIndices[D];b.grps[D]=[];b.grps[D].push(F);a[D]=[this.isTransformedData&&b.trans?b.trans[t][F]:b.data[t][F]]}}if(f=="iqr"){this.summaryType="iqr";if(this.isRawData){if(!this.isGroupedData){var g=this.smpIndices.length;for(var D=0;D<g;D++){var F=this.smpIndices[D];if(this.isTransformedData){b.trans[t][D]=a[D][0]}b.mean[t][F]=a[D][0];b.median[t][F]=a[D][0];b.qtl1[t][F]=a[D][0];b.qtl3[t][F]=a[D][0];b.iqr1[t][F]=a[D][0];b.iqr3[t][F]=a[D][0];b.out[t][F]=[];b.n[t][F]=1;b.conf[t][F]=[];b.min[t][F]=a[D][0];b.max[t][F]=a[D][0]}}else{var s=a.length;for(var D=0;D<s;D++){var u=this.Yim(a[D]);if(this.isTransformedData){b.trans[t][D]=u[1]}b.mean[t][D]=u[0];b.median[t][D]=u[2];b.qtl1[t][D]=u[1];b.qtl3[t][D]=u[3];b.iqr1[t][D]=u[4];b.iqr3[t][D]=u[5];b.out[t][D]=u[6];b.n[t][D]=u[7];b.conf[t][D]=u[8]?u[8]:[];b.min[t][D]=u[9]?u[9][0]:NaN;b.max[t][D]=u[9]?u[9][1]:NaN}}}b.iqr=b.median}else{if(f=="median"){this.summaryType="median";if(this.isRawData){var s=a.length;for(var D=0;D<s;D++){var A=this.min(a[D],h);var z=this.max(a[D],h);var u=this.rhA(a[D],h);if(this.isTransformedData){b.trans[t][D]=u[1]}b.min[t][D]=A;b.max[t][D]=z;b.median[t][D]=u[0];b.n[t][D]=u[1]}}}else{if(f=="mean"||f=="raw"){this.summaryType="mean";if(this.isRawData){var s=a.length;for(var D=0;D<s;D++){var A=this.min(a[D],h);var z=this.max(a[D],h);var u=this.pjH(a[D],h);if(this.isTransformedData){b.trans[t][D]=u[0];b.tstdev[t][D]=u[1]}b.min[t][D]=A;b.max[t][D]=z;b.mean[t][D]=u[0];b.stdev[t][D]=u[1];b.n[t][D]=u[2]}}}else{if(f=="min"||f=="max"){this.summaryType=f;if(this.isRawData){var s=a.length;for(var D=0;D<s;D++){var A=this.min(a[D],h);var z=this.max(a[D],h);if(this.isTransformedData){b.trans[t][D]=z}b.min[t][D]=A;b.max[t][D]=z;b.n[t][D]=a[D].length}}}else{if(f=="sum"){this.summaryType="sum";if(this.isRawData){var s=a.length;for(var D=0;D<s;D++){var H=this.sum(a[D],h);if(this.isTransformedData){b.trans[t][D]=H}b.min[t][D]=0;b.max[t][D]=H;b.sum[t][D]=H;b.n[t][D]=a[D].length}}}else{if(f=="count"){this.summaryType="count";if(this.isRawData){var s=a.length;for(var D=0;D<s;D++){var r=a[D].length;if(this.isTransformedData){b.trans[t][D]=r}b.min[t][D]=0;b.max[t][D]=r;b.count[t][D]=r;b.n[t][D]=r}}}}}}}}}if(f=="iqr"){for(var E=0;E<b.n.length;E++){if(b.n[E]){for(var D=0;D<b.n[E].length;D++){b.nfac[E][D]=Math.sqrt((b.n[E][D])/(this.smpIndices.length))*2}}}}for(var E=0;E<b.min.length;E++){if(b.min[E]){for(var D=0;D<b.min[E].length;D++){y=Math.min(y,b.min[E][D]);x=Math.max(x,b.max[E][D])}}}b.scale=this[this.axisAlgorithm](y,x,this.xAxisTicks,this.isGraphTime,this.axisWilkinsonLoose)}}};this.EqB=function(){var e=this.Dug();var d;for(var b=0;b<this.varIndices.length;b++){var c=this.varIndices[b];e.data[c]=[];e.trans[c]=[];if(this.summaryType=="mean"){for(var a=0;a<e.mean[c].length;a++){e.data[c][a]=e.mean[c][a]}}else{if(this.summaryType=="median"||this.summaryType=="iqr"){for(var a=0;a<e.median[c].length;a++){e.data[c][a]=e.median[c][a]}}else{if(this.summaryType=="sum"){for(var a=0;a<e.sum[c].length;a++){e.data[c][a]=e.sum[c][a]}}else{if(this.summaryType=="max"){for(var a=0;a<e.max[c].length;a++){e.data[c][a]=e.max[c][a]}}else{if(this.summaryType=="min"){for(var a=0;a<e.min[c].length;a++){e.data[c][a]=e.min[c][a]}}else{if(this.summaryType=="count"){for(var a=0;a<e.count[c].length;a++){e.data[c][a]=e.count[c][a]}}}}}}}if(!d){d=c}}return d};this.PKS=function(){var b=[];for(var a=0;a<this.data.y.smps.length;a++){b.push(" ")}if(!this.data.x){this.data.x={}}this.data.x.__FACTOR__=b;this.n9f("x","__FACTOR__",false,true);this.ev3(["__FACTOR__"],false,false,false,true)};this.caj=function(b,e){if(b){this.data.y.smps.push("__COUNT__");for(var a=0;a<this.data.y.vars.length;a++){this.data.y.data[a].push(1)}}else{this.data.y.vars.push("__COUNT__");var c=[];for(var a=0;a<this.data.y.smps.length;a++){c.push(1)}this.data.y.data.push(c)}this.n9f("y");this.eGJ(true,true);this.nLY();if(!e){this.U4z({func:"countData",par:[]})}};this.tQu=function(b,c){if(b){var a=this.OKx("__COUNT__");if(a>=0){this.data.y.smps.splice(a,1);for(var a=0;a<this.data.y.vars.length;a++){this.data.y.data[a].splice(a,1)}}}else{var a=this.mlX("__COUNT__");if(a>=0){this.data.y.vars.splice(a,1);this.data.y.data.splice(a,1)}this.n9f("y");this.eGJ(true,true);this.nLY()}if(!c){this.U4z({func:"uncountData",par:[]})}};this.aS1=function(b,e){if(b){this.data.y.smps.push("__SEQ__");for(var a=0;a<this.data.y.vars.length;a++){this.data.y.data[a].push(a+1)}}else{this.data.y.vars.push("__SEQ__");var c=[];for(var a=0;a<this.data.y.smps.length;a++){c.push(a+1)}this.data.y.data.push(c)}this.n9f("y");this.eGJ(true,true);this.nLY();if(!e){this.U4z({func:"sequenceData",par:[]})}};this.OKv=function(b,c){if(b){var a=this.OKx("__SEQ__");if(a>=0){this.data.y.smps.splice(a,1);for(var a=0;a<this.data.y.vars.length;a++){this.data.y.data[a].splice(a,1)}}}else{var a=this.mlX("__SEQ__");if(a>=0){this.data.y.vars.splice(a,1);this.data.y.data.splice(a,1)}}this.n9f("y");this.eGJ(true,true);this.nLY();if(!c){this.U4z({func:"unsequenceData",par:[]})}}};CanvasXpress.prototype.initDatasetGenome=function(){this.ffI=function(){var d=this.data.tracks;if(!d){return}var c=this.YnW();for(var h=0;h<d.length;h++){var g=d[h];g.hide=false;var b=c?c[h]:null;if(b){b.hide=false}var a=g.data;if(a){for(var f=0;f<a.length;f++){var e=a[f];e.hide=false;if(b&&b.data&&b.data[f]){b.data[f].hide=false}}}}};this.IIB=function(b,o){var g=this.Npb(o);var f=this[this.axisAlgorithm](g[0],g[1],5,this.isGraphTime,this.axisWilkinsonLoose);var a=[];for(var d=0;d<f.length;d++){a.push(f[d].toString())}var c=this.sXv(a);var n=this.eUk(c,this.xAxisTextFont);var m=Math.min(g[0],f[0]);var q=Math.max(g[1],f[f.length-1]);var l=b.height||this.featureTypeDefault;var h=l/((q-m)*1.05);var k=b.colorSpectrum||this.colorSpectrum;var e=b.colorSpectrumZeroValue||this.colorSpectrumZeroValue;var j=b.colorSpectrumBreaks||this.colorSpectrumBreaks;var p=this.qJM(k,m,q,e,j,true);return{type:"Numeric",range:g,values:f,valuesStr:a,maxValueStrLen:n,min:m,max:q,units:h,brew:p}};this.MQc=function(e,k,p){var m={};for(var h=0;h<p.length;h++){m[p[h]]=true}var a=this.NtX(m);var d={};var c=0;var o=0;var j="";for(var n=0;n<a.length;n++){var b=a[n];d[b]=n;var q=this.eUk(b,this.xAxisTextFont);if(q>c){c=q;o=b.length;j=b}}var f=[];var g=[];var l=e.meta&&e.meta.hasOwnProperty(k);for(var n=0;n<a.length;n++){var b=a[n];if(l&&e.meta[k].hasOwnProperty("color")&&e.meta[k].color.hasOwnProperty(b)){f.push(e.meta[k].color[b])}else{f.push(this.colors[n%this.colors.length])}if(l&&e.meta[k].hasOwnProperty("shape")&&e.meta[k].shape.hasOwnProperty(b)){g.push(e.meta[k].shape[b])}else{g.push(this.shapes[n%this.shapes.length])}}return{type:"String",levels:a,order:d,maxLevLen:c,maxLevChr:o,maxLevStr:j,colors:f,shapes:g,sizes:this.ni5(a.length)}};this.slp=function(k){if(k){this.meta.data={tracks:[]}}var j=this.data.tracks?this.data.tracks.length:0;for(var g=0;g<j;g++){var c=this.data.tracks[g];var l={};if(c.type=="dataframe"){for(var h in c.dataframe){var b=c.dataframe[h];if(this.XmW(b)){l[h]=this.IIB(c,b)}else{l[h]=this.MQc(c,h,b)}}}else{if(c.type&&c.type.match(/bar|heatmap/)){var m=[];var d=c.data||[];for(var a=0;a<d.length;a++){var e=d[a].data||[];for(var f=0;f<e.length;f++){m.push(e[f])}}l=this.IIB(c,m);delete l.type}}this.meta.data.tracks.push(l)}this.QnG()};this.QnG=function(){if(!this.data.tracks){return}if(!this.meta.data.derived){this.meta.data.derived={}}this.meta.data.derived.tracks=JSON.parse(JSON.stringify(this.data.tracks))};this.YnW=function(){return(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.tracks)||this.data.tracks}};CanvasXpress.prototype.initDatasetNetwork=function(){this.giM=function(h,b){var a=this.meta.data.nodes;var l=this[b];var d={colorNodeBy:"colors",shapeNodeBy:"shapes",sizeNodeBy:"sizes",patternNodeBy:"patterns"};if(l&&a.hasOwnProperty(l)&&h.hasOwnProperty(l)&&h[l]!=null){var f=a[l];var j=h[l];if(f.type==="Numeric"&&b!=="shapeNodeBy"){var o=Number(j);switch(b){case"colorNodeBy":return isNaN(o)?false:this.w7m(f.colorBrew,o);case"sizeNodeBy":var m=0.5;var i=f.max-f.min;var g=i<=10?100:(i<=100?50:20);var n=parseInt(this.Amv(f.min,f.max,o),10)/g;return Math.pow(m+n,2);case"patternNodeBy":return"closed"}}else{if(f.type==="Numeric"&&b==="shapeNodeBy"){var e=parseInt(this.Amv(f.min,f.max,Number(j))/10,10);return e===10?"circle":"pie"+e}else{if(d[b]){var k=d[b];var c=f.order[j];return f[k][c]}else{console.warn("Unhandled node property conversion.")}}}}else{var p=b.replace("NodeBy","");if(h.hasOwnProperty(p)){return h[p]}else{switch(p){case"color":return this.nodeColor;case"shape":return"circle";case"size":return 1;case"pattern":return"closed";default:return null}}}};this.jx2=function(h,d){var b=this.meta.data.edges;var k=this[d];var e={colorEdgeBy:"colors",sizeEdgeBy:"sizes"};if(k&&b.hasOwnProperty(k)&&h.hasOwnProperty(k)){var i=b[k];var l=h[k];if(d==="colorEdgeBy"){if(i.type==="Numeric"){return this.w7m(i.colorBrew,Number(l))}else{if(e[d]){var f=i.order[l];return i[e[d]][f]}else{console.warn("Unhandled edge color property conversion.")}}}else{if(d==="sizeEdgeBy"){if(i.type==="Numeric"){var g=Math.min(this.minEdgeSize,this.edgeThickness);var c=Number(l||i.min);var j=parseInt(this.Amv(i.min,i.max,c),10);var a=(j/100)*this.maxEdgeSize*this.edgeThickness;return g+(isNaN(a)?g:a)}else{if(e[d]){var f=i.order[l];return f*this.edgeThickness}else{console.warn("Unhandled edge size property conversion.")}}}else{console.warn("Unsupported edge visual mapping: "+d)}}}else{if(d==="colorEdgeBy"){return h.color||this.edgeColor}else{if(d==="sizeEdgeBy"){return h.thickness||this.edgeThickness}else{console.warn("Unsupported static edge visual mapping: "+d)}}}};this.KEL=function(c,a,b){if(c){return this.giM(c,b)}return this.jx2(a,b)};this.lE7=function(T,H,m){var i=this;var V=this.meta.data;var t=this.data;var o=["nodes","edges"];var h=this.nodeFont;var q={x:true,y:true,z:true,width:true,height:true,eventless:true,color:true,hideLabel:true,imagePath:true,size:true,shape:true,endArrow:true,startArrow:true,elbows:true};var S=function(ac){for(var af in ac){if(ac[af].type==="Numeric"){var ae=i.elc(ac[af].values);var ad=ac[af].values.hasOwnProperty("true");var g=ac[af].values.hasOwnProperty("false");var ab=ac[af].values.hasOwnProperty("");if((ae.length===2&&ad&&g)||(ae.length===1&&(ad||g||ab))){ac[af].type="String"}}}return ac};var z=function(ab){var ac={};var ag=t[ab];for(var ad=0;ad<ag.length;ad++){var ae=ag[ad];for(var af in ae){if(q.hasOwnProperty(af)){continue}var g=ae[af]===null?false:ae[af];if(typeof g!=="object"){if(ac.hasOwnProperty(af)){if(!ac[af].values.hasOwnProperty(g)){ac[af].values[g]=true}if(isNaN(g)){ac[af].type="String"}}else{ac[af]={values:{},type:isNaN(g)?"String":"Numeric"};ac[af].values[g]=true}}else{if(!ac.hasOwnProperty(af)){ac[af]={values:{}}}ac[af].type="Object";for(var ah in g){ac[af].values[ah]=true}}}}return S(ac)};var a=function(ad,ac){var ab=i.NtX(ac[ad].values);if(i.legendOrder&&i.legendOrder[ad]){var ae=i.QWl(i.legendOrder[ad]);for(var g=0;g<ab.length;g++){if(!ae.includes(ab[g])){ae.push(ab[g])}}return ae}return ab};var C=function(ae,ac,g,ab){if(g&&g.hasOwnProperty(ac)){for(var ad in g[ac]){if(ae.order.hasOwnProperty(ad)){ae[ab][ae.order[ad]]=g[ac][ad]}}}};if(!T||T==="nodes"||T==="edges"){if(T&&m&&V[T][H]){delete V[T][H]}for(var X=0;X<o.length;X++){var U=o[X];if(T&&T!==U){continue}if(!t[U]){continue}if(U==="edges"){for(var c=0;c<t.edges.length;c++){var M=t.edges[c];if(!M.hasOwnProperty("id")){M.id=M.id1+" -> "+M.id2}}}var j=z(U);for(var K in j){if(H&&H!==K){continue}var J={len:i.eUk(K,h),type:j[K].type};var L=0;var A=0;var B="";var x=(i.colorKey&&i.colorKey.hasOwnProperty(K))||(i.legendOrder&&i.legendOrder.hasOwnProperty(K));if(x){J.type="String"}if(J.type==="String"||J.type==="Object"){var O=a(K,j);J.unique=i.HJq(O);J.levels=O;J.order={};J.clicked={};for(var v=0;v<O.length;v++){var P=O[v];J.order[P]=v;J.clicked[P]=true;var Y=i.eUk(P,h);if(Y>L){L=Y;A=P.length;B=P}}J.maxLevLen=L;J.maxLevChr=A;J.maxLevStr=B;J.colors=[];J.shapes=[];J.sizes=i.ni5(O.length,U==="edges");J.patterns=[];for(var d=0;d<O.length;d++){J.colors.push(i.colors[d%i.colors.length]);J.shapes.push(i.shapes[d%i.shapes.length]);J.patterns.push(i.patterns[d%i.patterns.length])}C(J,K,i.colorKey,"colors");C(J,K,i.shapeKey,"shapes");C(J,K,i.sizeKey,"sizes");C(J,K,i.patternKey,"patterns")}else{J.unique=false;var y=i.NtX(j[K].values);var E=i.Npb(y);J.rmin=E[0];J.rmax=E[1];J.n=y.length;if(U==="edges"){J.colorBrew=i.qJM(i.colorSpectrum,E[0],E[1])}else{J.colorBrew=i.qJM(i.colorSpectrum,E[0],E[1],i.colorSpectrumZeroValue,i.colorSpectrumBreaks)}var R=J.colorBrew;J.min=R.min;J.max=R.max;J.zero=R.zero;J.vals=R.vals;J.incr=R.incr;J.decs=R.decs;J.levels=R.vals;J.order={};for(var Q=0;Q<J.levels.length;Q++){var I=J.levels[Q];J.order[I]=Q;var u=i.eUk(I,h);if(u>L){L=u;A=I.toString().length;B=I}}J.maxLevLen=L;J.maxLevChr=A;J.maxLevStr=B;J.shapes=i.shapes;J.sizes=i.sizes;J.patterns=i.patterns}V[U][K]=J}}}if(i.decorations.length&&i.decorationsType==="heatmap"){var N=[];V.decorations={unique:false,type:"Numeric",n:0};for(var G=0;G<i.decorations.length;G++){var n=i.decorations[G];var W=V.nodes[n];if(W&&W.type==="Numeric"){V.decorations.n+=W.n;N.push(W.rmin);N.push(W.rmax)}else{if(W&&W.type==="Object"){var F=W.levels;for(var aa=0;aa<F.length;aa++){var D=F[aa];for(var l=0;l<t.nodes.length;l++){var s=t.nodes[l];if(s[n]&&s[n].hasOwnProperty(D)&&s[n][D]&&!isNaN(s[n][D])){V.decorations.n++;N.push(s[n][D])}}}}}}if(N.length){var b=i.Npb(N);V.decorations.rmin=b[0];V.decorations.rmax=b[1];V.decorations.colorBrew=i.qJM(i.colorSpectrum,b[0],b[1],i.colorSpectrumZeroValue,i.colorSpectrumBreaks);var w=V.decorations.colorBrew;V.decorations.min=w.min;V.decorations.max=w.max;V.decorations.zero=w.zero;V.decorations.vals=w.vals;V.decorations.incr=w.incr;V.decorations.decs=w.decs;V.decorations.levels=w.vals;V.decorations.order={};var k=0;var e=0;var Z="";for(var p=0;p<V.decorations.levels.length;p++){var r=V.decorations.levels[p];V.decorations.order[r]=p;var f=i.eUk(r,h);if(f>k){k=f;e=r.toString().length;Z=r}}V.decorations.maxLevLen=k;V.decorations.maxLevChr=e;V.decorations.maxLevStr=Z}}};this.TSp=function(m){var l=["colorNodeBy","shapeNodeBy","sizeNodeBy","patternNodeBy"];var a=["colorEdgeBy","SizeEdgeBy"];var b=this.meta.data;for(var g=0;g<l.length;g++){var n=this[l[g]];if(!b.nodes.hasOwnProperty(n)){this[l[g]]=false}}for(var f=0;f<a.length;f++){var c=this[a[f]];if(!b.edges.hasOwnProperty(c)){this[a[f]]=false}}if(this.decorations){var e=[];for(var k=0;k<this.decorations.length;k++){var h=this.decorations[k];if(b.nodes.hasOwnProperty(h)){e.push(h)}}this.decorations=e}if(m){this.XSd()}};this.Mdc=function(){var f=this.jj7();var e={};var d={};var a={};for(var b=0;b<f.length;b++){var c=f[b];e[c.id]=c;d[c.id]=b;a[c.id]=false}this.nodes=e;this.nodeIndices=d;this.nodeInitialCache=a;this.P51()};this.imI=function(){if(this.nodeIndices){var d=this.nodeIndices;var g=this.jj7();var f={};for(var b=0;b<g.length;b++){var c=g[b];f[c.id]=c}var a=[];for(var e in d){a[d[e]]=f[e]}this.Ywk(a);this.nodes=f;this.P51()}else{this.Mdc()}};this.lD0=function(b){this.nodes={};this.nodeIndices={};var f=this.jj7();for(var c=0;c<f.length;c++){var d=f[c];d.hide=false;this.nodes[d.id]=d;this.nodeIndices[d.id]=c}var e=this.n1Z();for(var a=0;a<e.length;a++){e[a].hide=false}this.P51();if(!b){this.Dct()}};this.P51=function(){this.hiddenNodes={};this.hiddenEdges={};var e=this.jj7();for(var b=0;b<e.length;b++){this.hiddenNodes[e[b].id]=false}var d=this.n1Z();for(var a=0;a<d.length;a++){var c=d[a].id1+":"+d[a].id2;this.hiddenEdges[c]=false}};this.Rtc=function(k,c){var b=c?true:false;this.isHiddenNodes=b;var g=this.jj7();var f=this.nodes;if(k){if(this.Zuk(k)){for(var e=0;e<k.length;e++){var l=k[e];var h=g[this.nodeIndices[l]];if(h){h.hide=b}if(f&&f[l]!=null){f[l].hide=b}}}}else{for(var d=0;d<g.length;d++){var a=g[d];a.hide=b;if(f&&f[a.id]!=null){f[a.id].hide=b}}this.onX();this.U4z({func:"hideUnhideNodes",par:[k,c]})}};this.tA8=function(){if(!this.meta.data){this.meta.data={}}if(!this.meta.data.derived){this.meta.data.derived={}}if(this.data.nodes){this.meta.data.derived.nodes=JSON.parse(JSON.stringify(this.data.nodes))}if(this.data.edges){this.meta.data.derived.edges=JSON.parse(JSON.stringify(this.data.edges))}if(this.data.groups){this.meta.data.derived.groups=JSON.parse(JSON.stringify(this.data.groups))}if(this.data.constraints){this.meta.data.derived.constraints=JSON.parse(JSON.stringify(this.data.constraints))}if(this.nodes){this.Mdc()}};this.jj7=function(){return(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.nodes)||this.data.nodes};this.n1Z=function(){return(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.edges)||this.data.edges};this.HQS=function(){return(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.groups)||this.data.groups};this.lpk=function(){return(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.constraints)||this.data.constraints};this.Ywk=function(a){if(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.nodes){this.meta.data.derived.nodes=a}else{this.data.nodes=a}};this.Esl=function(a){if(this.meta&&this.meta.data&&this.meta.data.derived&&this.meta.data.derived.edges){this.meta.data.derived.edges=a}else{this.data.edges=a}};this.uAC=function(a){var d=["layout","nodeEdges","community","communityColor","labelXi","labelYi","decorationsXi","decorationsYi","hiddenParent"];for(var c=0;c<a.length;c++){for(var b=0;b<d.length;b++){delete a[c][d[b]]}}return a};this.Vtu=function(a){for(var b=0;b<a.length;b++){delete a[b].layout}return a}};CanvasXpress.prototype.initAesthetics=function(){this.initLegendUtils();this.initMarkerUtils()};CanvasXpress.prototype.initScale=function(){};CanvasXpress.prototype.initGeometry=function(){this.initPrimitives();this.initUtils();this.initDendrograms();this.initGeometryArea();this.initGeometryBar();this.initGeometryBin();this.initGeometryBoxplot();this.initGeometryCDF();this.initGeometryChord();this.initGeometryContour();this.initGeometryCorrelation();this.initGeometryFish();this.initGeometryGantt();this.initGeometryHeatmap();this.initGeometryDensity();this.initGeometryHistogram();this.initGeometryKaplanMeier();this.initGeometryManhattan();this.initGeometryLine();this.initGeometryLoess();this.initGeometryMeter();this.initGeometryPie();this.initGeometryPoint();this.initGeometryPolygon();this.initGeometryQQ();this.initGeometryQuantile();this.initGeometryRegression();this.initGeometrySankey();this.initGeometryStacked();this.initGeometryStream();this.initGeometryTagCloud();this.initGeometryTree();this.initGeometryTreemap();this.initGeometryViolin();this.initGeometryRegistry();this.initGraph();this.initPreRenderChecks()};CanvasXpress.prototype.initStatistics=function(){this.initNumeric();this.initjLouvain();this.initCola();this.initMathUtils();this.initSankeyUtils();this.initTreeUtils();this.initCirclePackUtils();this.initNetworkUtils();this.initFFT();this.initContour();this.initDensity();this.initHist();this.initLoess();this.initQuantreg();this.initLAPACK();this.initClusterUtils()};CanvasXpress.prototype.initFacets=function(){this.initLayout()};CanvasXpress.prototype.initCoordinates=function(){this.initAxes()};CanvasXpress.prototype.initTheme=function(){this.fzP=function(c){var a=c.toLowerCase().replace(/ /g,"");switch(a){case"grey":case"gray":case"igray":case"ggplot":return CanvasXpress.themeDef.grey;case"bw":case"blackandwhite":return CanvasXpress.themeDef.bw;case"linedraw":return CanvasXpress.themeDef.linedraw;case"light":return CanvasXpress.themeDef.light;case"dark":return CanvasXpress.themeDef.dark;case"minimal":return CanvasXpress.themeDef.minimal;case"classic":return CanvasXpress.themeDef.classic;case"void":case"void0":return CanvasXpress.themeDef.void0;case"economist":return CanvasXpress.themeDef.economist;case"excel":return CanvasXpress.themeDef.excel;case"solarized":return CanvasXpress.themeDef.solarized;case"paulTol":case"paultol":case"ptol":return CanvasXpress.themeDef.ptol;case"highcharts":return CanvasXpress.themeDef.highcharts;case"wallstreetjournal":case"wallstreet":case"wsj":return CanvasXpress.themeDef.wsj;case"tableau":return CanvasXpress.themeDef.tableau;case"stata":return CanvasXpress.themeDef.stata;case"ggblanket":return CanvasXpress.themeDef.ggblanket;case"cx":case"canvasxpress":return CanvasXpress.themeDef.cx;case"cxdark":case"canvasxpressdark":return CanvasXpress.themeDef.cxdark;case"cx2":case"canvasxpresstraditional":return CanvasXpress.themeDef.grey;default:var b=this.QWl(CanvasXpress.themeDef.light);b["panel.border.colour"]=null;return b}};this.TC5=function(b){if(!b){b="x"}var e=["AxisShow","Axis2Show","AxisTitleColor","AxisTitleScaleFontFactor","AxisTextColor","AxisTextScaleFontFactor","AxisTicksShow","AxisTicksColor","AxisTicksLength","AxisTicksWidth","AxisLineBottomShow","AxisLineBottomColor","AxisLineBottomLineType","AxisLineBottomWidth","AxisLineTopShow","AxisLineTopColor","AxisLineTopLineType","AxisLineTopWidth","AxisGridMajorShow","AxisGridMajorColor","AxisGridMajorLineType","AxisGridMajorWidth","AxisGridMinorShow","AxisGridMinorColor","AxisGridMinorLineType","AxisGridMinorWidth"];var f=["r","z"];for(var d=0;d<f.length;d++){for(var c=0;c<e.length;c++){this[f[d]+e[c]]=this[b+e[c]]}}};this.jnr=function(c){var b=c.toLowerCase().replace(/ /g,"");var a=CanvasXpress.graphTypes.OneDGraphs.includes(this.graphType);this.theme="none";this.backgroundType="panel";this.colorScheme="User";this.guidesShow=false;this.guidesColor="#cccccc";this.lineDecoration="symbol";this.mapOutlineColor="#cccccc";this.objectBorderColor="rgba(0,0,0,0)";this.fitLineColor="#FFD700";this.legendColumns=1;this.widthFactor=1;switch(b){case"grey":case"gray":case"igray":case"ggplot":this.guidesShow=true;this.guidesColor="#ffffff";this.mapOutlineColor="#ffffff";this.fitLineColor="#0000FF";this.objectBorderColor="rgba(0,0,0,0)";this.colorScheme="GGPlot";break;case"bw":case"blackandwhite":this.backgroundType="solid";this.lineDecoration="pattern";this.colorScheme="BlackAndWhite";break;case"linedraw":this.colorScheme="GGPlot";break;case"light":this.colorScheme="GGPlot";break;case"dark":this.colorScheme="GGPlot";break;case"minimal":this.colorScheme="GGPlot";break;case"classic":this.colorScheme="GGPlot";break;case"void":case"void0":this.colorScheme="GGPlot";break;case"economist":this.colorScheme="Economist";this.backgroundType="solid";this.mapOutlineColor="#D5E4EB";this.legendColumns=8;if(a){this.xAxisTicksMajorShow=true}break;case"excel":this.colorScheme="Excel";this.mapOutlineColor="#C0C0C0";if(a){this.xAxisTicksMajorShow=true}break;case"solarized":this.colorScheme="Solarized";this.backgroundType="solid";this.mapOutlineColor="#FDF6E3";break;case"paulTol":case"paultol":case"ptol":this.colorScheme="PaulTol";this.backgroundType="solid";this.mapOutlineColor="#ffffff";break;case"highcharts":this.colorScheme="Highcharts";this.backgroundType="solid";this.mapOutlineColor="#ffffff";this.objectBorderColor="rgba(0,0,0,0)";this.widthFactor=0.75;break;case"wallstreetjournal":case"wsj":this.colorScheme="WallStreetJournal3";this.backgroundType="solid";this.mapOutlineColor="#F8F2E4";this.legendColumns=4;if(a){this.xAxisTicksMajorShow=true}break;case"tableau":this.colorScheme="TableauMedium";this.mapOutlineColor="#E5E5E5";break;case"stata":this.colorScheme="Stata";this.mapOutlineColor="#EAF2F3";this.legendColumns=4;if(a){this.xAxisTicksMajorShow=true}break;case"ggblanket":this.colorScheme="GGBlanket";break;case"cx":case"canvasxpress":this.colorScheme="CanvasXpress";this.stripBackgroundColor="rgba(0,0,0,0)";this.stripBackgroundBorderColor="rgba(0,0,0,0)";this.objectBorderColor="rgba(0,0,0,0)";this.xAxisLineBottomShow=true;this.xAxisTicksShow=true;break;case"cx2":case"canvasxpresstraditional":this.colorScheme="CanvasXpressTraditional";this.objectBorderColor="rgb(0,0,0)";this.panelBackgroundBorderColor="#337AB7";break;case"cxdark":case"canvasxpressdark":this.colorScheme="CanvasXpress";this.stripBackgroundColor="rgba(0,0,0,0)";this.stripBackgroundBorderColor="rgba(0,0,0,0)";this.objectBorderColor="rgba(0,0,0,0)";this.xAxisLineBottomShow=true;this.xAxisTicksShow=true;this.xAxisLineBottomColor="rgb(255,255,255)";this.smpTextColor="rgb(255,255,255)";this.smpTitleColor="rgb(255,255,255)";break;case"lastairbenderfire":this.plotBackgroundColor="#ede5d3";this.backgroundType="solid";this.xAxisGridMajorColor="#ffffff";this.yAxisGridMajorColor="#ffffff";this.zAxisGridMajorColor="#ffffff";this.rAxisGridMajorColor="#ffffff";this.colorScheme="LastAirBenderFire";break;case"lastairbenderair":this.plotBackgroundColor="#ede5d3";this.backgroundType="solid";this.xAxisGridMajorColor="#ffffff";this.yAxisGridMajorColor="#ffffff";this.zAxisGridMajorColor="#ffffff";this.rAxisGridMajorColor="#ffffff";this.colorScheme="LastAirBenderAir";break;case"lastairbenderwater":this.plotBackgroundColor="#ede5d3";this.backgroundType="solid";this.xAxisGridMajorColor="#ffffff";this.yAxisGridMajorColor="#ffffff";this.zAxisGridMajorColor="#ffffff";this.rAxisGridMajorColor="#ffffff";this.colorScheme="LastAirBenderWater";break;case"lastairbenderearth":this.plotBackgroundColor="#ede5d3";this.backgroundType="solid";this.xAxisGridMajorColor="#ffffff";this.yAxisGridMajorColor="#ffffff";this.zAxisGridMajorColor="#ffffff";this.rAxisGridMajorColor="#ffffff";this.colorScheme="LastAirBenderEarth";break;case"gameofthronestargaryen":this.colorScheme="GameOfThronesTargaryen";break;case"gameofthronesstark":this.colorScheme="GameOfThronesStark";break;case"gameofthronesstannis":this.colorScheme="GameOfThronesStannis";break;case"gameofthroneslannister":this.colorScheme="GameOfThronesLannister";break;case"gameofthronestyrell":this.colorScheme="GameOfThronesTyrell";break;case"gameofthronesmartell":this.colorScheme="GameOfThronesMartell";break;case"gameofthronestully":this.colorScheme="GameOfThronesTully";break;case"gameofthronesgreyjoy":this.colorScheme="GameOfThronesGreyjoy";break;case"gameofthronesmanderly":this.colorScheme="GameOfThronesManderly";break;case"gameofthronesarryn":this.colorScheme="GameOfThronesArryn";break;default:this.colorScheme="User";this.colors=["#0ab0db","#fe6969","#fed385","#47db0a","#9e0adb","#ff7d00","#ffa2c0","#a0d7e7","#63b5e5","#f9a7a7","#fef0c7","#83e16f","#c763e5","#ffb347","#ffc1d3","#bfe2ed"];break}};this.sGt=function(a){return this.gv1(a)};this.Ynp=function(){this.defaultThemeValues={};for(var a in CanvasXpress.themeParams){this.defaultThemeValues[a]=this[a]}};this.gv1=function(c,a){if(!c){c=CanvasXpress.stack[this.target]&&CanvasXpress.stack[this.target].config&&CanvasXpress.stack[this.target].config.theme?CanvasXpress.stack[this.target].config.theme:"none"}var b=this.fzP(c);this.u4B(b,true);this.TC5();this.jnr(c);this.Ynp();if(!a){this.U4z({func:"setTheme",par:[c]})}}};CanvasXpress.prototype.initRender=function(){this.BN5=function(q){var m=this;var d=function(i){return t&&t.map.hasOwnProperty(i)?t.map[i]:false};if(!this.counterFoo){this.counterFoo=[]}if(!this.counterFoo[this.layoutCurrent||0]){this.counterFoo[this.layoutCurrent||0]=0}this.counterFoo[this.layoutCurrent||0]++;var c={drawShape:"getShapeArea",drawLine:"getLineArea",drawText:"getTextArea",drawArcText:"getArcTextArea"};var n=function(i,C){var D=c[i]||("get"+i.slice(4)+"Area");return m[D].apply(m,C)};var r=q.p;var s=q.i;var z=q.m;var o=q.g;var u=q.s;var e=q.b;var B=q.t;var g=q.h;var j=this.meta.render;var t=j.transition;var y=r.shift();var l=q.i?n(y,r):false;var b=y.charCodeAt(0)===100?y[4]:"O";var h=j.objects.length;var p=this.transparencyHidden;o=o!=null?o.toString():h;if(!j.groups.hasOwnProperty(o)){j.groups[o]=[]}if(!j.types.hasOwnProperty(B)){j.types[B]={all:[],drawShape:[],drawLine:[],drawText:[],drawArcText:[],other:[]}}if(!j.order.includes(B)){j.order.push(B)}var x=j.types[B].hasOwnProperty(y)?j.types[B][y].length:j.types[B].other.length;var v=s&&this.Zuk(s)?s.join(":"):s?s:B+":"+b+":"+this.tEh(x);j.objects.push({func:y,params:r,idx:s,id:v,n:h,modifier:z,group:o,area:l,layout:(this.layoutComb?this.layoutCurrent:false),type:B,skip:u,baseline:e});j.groups[o].push(h);j.types[B].all.push(h);switch(y){case"drawShape":j.types[B].drawShape.push(h);break;case"drawLine":j.types[B].drawLine.push(h);break;case"drawText":j.types[B].drawText.push(h);break;case"drawArcText":j.types[B].drawText.push(h);break;default:j.types[B].other.push(h);break}if(o!=h&&y=="drawLine"&&j.objects[o].idx){if(!s){s=j.objects[o].idx}v=s.join(":")+":"+j.groups[o].length;j.objects[h].id=v;if(this.showBoxplotOriginalData){}}j.origin[h]=[];var a=j.map;var A=j.origin[h];if(this.showTransition){if(B=="Data"&&s&&!this.graphType.match(/Scatter|Treemap|Circular/)){if(this.isGroupedData){if((this.G3f()&&s[s.length-1]!="box")||this.graphType.match(/Stacked/)){v=s[0]+":"+s[s.length-1];a[v]=h;A.push(d(v))}else{if(s.length==2&&o==h){var f=this.otE().grps[s[1]]||[];var k=f.length;for(var w=0;w<k;w++){v=s[0]+":"+f[w];a[v]=h;A.push(d(v))}}else{if(s.length==3&&s[2]=="box"){var f=this.otE().grps[s[1]]||[];var k=f.length;for(var w=0;w<k;w++){v=s[0]+":"+f[w]+":box";a[v]=h;A.push(d(v))}}else{a[v]=h;A.push(d(v))}}}}else{a[v]=h;A.push(d(v))}}else{a[v]=h;A.push(d(v))}}if(CanvasXpress.graphTypes.OneTwoThreeeDGraphs.includes(this.graphType)||this.graphType=="TagCloud"||this.graphType=="Map"||this.graphType=="Network"||this.graphType=="Sankey"){if(g){if(this.filterMode=="color"){switch(y){case"drawShape":r[5]=this.missingDataColor;r[6]=this.missingDataColor;break;case"drawLine":r[5]=this.missingDataColor;break;case"drawText":r[4]=this.missingDataColor;break;case"drawArcText":r[7]=this.missingDataColor;break}}else{switch(y){case"drawShape":r[5]=this.Q3W(this.kSd(r[5]),p,true);r[6]=this.Q3W(this.kSd(r[6])||this.foreground,p,true);break;case"drawLine":r[5]=this.Q3W(this.kSd(r[5]),p,true);break;case"drawText":r[4]=this.Q3W(this.kSd(r[4]),p,true);break;case"drawArcText":r[7]=this.Q3W(this.kSd(r[7]),p,true);break}}}}if(this.debug&&!this.isSVG||(this.graphType=="Network"&&this.is3DNetwork&&this.isR)){this.LyU(h,h+1)}return h};this.VTj=function(c,d){var a=this.meta.render;var b=this.jys();if(a.objects.length>0&&!this.skipTransition&&this.showTransition){delete (a.transition);if(!d){if(this.graphType=="Network"&&!this.isLayoutDone){}else{a.transition=this.QWl(a)}}}if(!c){a.objects=[];a.groups={};a.types={};a.order=[];a.map={};a.origin=[]}b.resetRender();b.resetContext()};this.LyU=function(k,f,h){if(!this.skipRender){this.tI1("render - start");var j=this.jys();var c=this.meta.render.objects;var g=0;if(c.length>0){if(!k){k=0}if(!f){f=c.length}for(var d=k;d<f;d++){var b=c[d];var a=b.params;switch(b.func){case"drawShape":this.ckr(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12],a[13],a[14],a[15],j);break;case"drawLine":this.Zro(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12],a[13],a[14],a[15],a[16],j);break;case"drawText":this.ur5(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],j);break;case"setClipArea":this.Mwb(a[0],j);break;case"resetClipArea":this.jkv(j);break;case"setGlobalCompositionOperation":this.d91(a[0],j);break;default:this[b.func].apply(this,b.params);break}g++}}j.render();this.tI1("render - end - "+g+"/"+(f-k)+" objects");if(!h){j.resetRender()}}}};CanvasXpress.prototype.initUI=function(){this.initSave();this.initSVG();this.initInterface();this.initFilterUtils();this.initSortUtils();this.initTooltip();this.initTooltipDiv();this.initLLM();this.initToolbar();this.initDispatcher();this.initMenus();this.initLinks();this.initDataFilter();this.initDataTable();this.initCodeInfo();this.initBin();this.initCustomizer();this.initEvents();this.initAnimation();this.initRemote()};CanvasXpress.prototype.initDOM=function(){this.$=function(f){return window.document.getElementById(f)};this.$cX=function(g,k,h){var j=window.document.createElement(g);if(k){for(var f in k){j[f]=k[f]}}if(h){for(var f in h){j.style[f]=h[f]}}return j};this.V4d=function(w,C,k,n,t,i){try{CanvasXpress}catch(y){return false}var x=this;var s=function(m){var j=m.target;while(j.tagName!=="svg"){j=j.parentNode}var o=x.view=="layout"||x.view=="explore"||x.view=="customize";var h=j.parentNode.className.match(/cX-Chat/);var l=o?j.getBoundingClientRect():h?x.Yle(m,j.parentNode.parentNode):x.Yle(m,j.parentNode);var g=x.$(x.target+"canvasXpressAltTooltip");var f;if(!j.dataset.title){var q=j.querySelector("title");if(!q){return false}f=q?q.innerHTML:"";j.setAttribute("data-title",f);q.parentNode.removeChild(q)}else{f=j.dataset.title}if(f=="Chat with AI"){l.y+=x.height-4}if(g){g.innerHTML=f;g.style.display="block";g.style.left=((l.left||l.x)-1.5)+"px";g.style.top=((l.top||l.y)+18)+"px"}return false};var D=function(){var f=x.$(x.target+"canvasXpressAltTooltip");if(f){f.style.display="none"}};var B=document.createElementNS("http://www.w3.org/2000/svg","svg");var y=function(g){var j={};var l=g.split(/class=/);var E="<style>";for(var z=1;z<l.length;z++){var h=l[z].match(/'(.+?)'/);if(h){var F=h[1].split(/\s+/);for(var f=0;f<F.length;f++){var o=F[f];if(CanvasXpress.icons.classes.hasOwnProperty(o)&&!j.hasOwnProperty(o)){var m=CanvasXpress.icons.classes[o];m=m.replace(/l:/g,"stroke-miterlimit:");m=m.replace(/w:/g,"stroke-width:");m=m.replace(/n:/g,"font:");m=m.replace(/s:/g,"stroke:");m=m.replace(/f:/g,"fill:");E+="."+o+m}}}}E+="</style>";return E};if(CanvasXpress.icons.use.hasOwnProperty(w)){var u="<rect class='cxnc' x='0' y='0' width='100' height='100' />";if(CanvasXpress.icons.gradients.hasOwnProperty(w)){var r=CanvasXpress.icons.gradients[w];r=r.replace(/s=/g,"style=");r=r.replace(/o=/g,"offset=");r=r.replace(/c=/g,"stop-color=");r=r.replace(/q=/g,"gradientTransform=");r=r.replace(/u=/g,"gradientUnits=");r=r.replace(/<\/s/g,"</stop").replace(/<s/g,"<stop");r=r.replace(/<\/r/g,"</radialGradient").replace(/<r/g,"<radialGradient");r=r.replace(/<\/l/g,"</linearGradient").replace(/<l/g,"<linearGradient");u+=r}for(var v=0;v<CanvasXpress.icons.use[w].length;v++){var r=CanvasXpress.icons.symbols[CanvasXpress.icons.use[w][v]];r=r.replace(/<\/y/g,"</polyline").replace(/<y/g,"<polyline");r=r.replace(/<\/l/g,"</line").replace(/<l/g,"<line");r=r.replace(/<\/c/g,"</circle").replace(/<c/g,"<circle");r=r.replace(/<\/r/g,"</rect").replace(/<r/g,"<rect");r=r.replace(/<\/p/g,"</path").replace(/<p /g,"<path ");r=r.replace(/<\/t/g,"</text").replace(/<t/g,"<text");r=r.replace(/tr=/g,"transform=");r=r.replace(/q=/g,"points=");r=r.replace(/h=/g,"height=");r=r.replace(/w=/g,"width=");r=r.replace(/c=/g,"class=");if(i){r=r.replace(/class='cxw0'/,"class='"+i+"'")}u+=r}var p=y(u);if(!t){t=24}B.setAttribute("xmlns","http://www.w3.org/2000/svg");B.setAttribute("viewBox","0 0 100 100");B.setAttribute("style","width:"+t+"px;height:"+t+"px;box-sizing:border-box;");if(C){for(var v in C){if(v=="className"){B.setAttribute("class",C[v])}else{B.setAttribute(v,C[v])}}}B.addEventListener("mousemove",s.bind(event));B.addEventListener("mouseout",D);var A=C&&C.hasOwnProperty("title")?"<title>"+C.title+"</title>":"";if(k){for(var v in k){B.style[v]=k[v]}}B.innerHTML=A+p+u}return n?new XMLSerializer().serializeToString(B):B};this.llc=function(s,q,t,i){try{CanvasXpress}catch(o){return false}var k="";var r=function(h){var l={};var u=h.split(/class=|c=/);var x="<style>";for(var w=1;w<u.length;w++){var j=u[w].match(/'(.+?)'/);if(j){var f=j[1].split(/\s+/);for(var g=0;g<f.length;g++){var v=f[g];if(CanvasXpress.icons.classes.hasOwnProperty(v)&&!l.hasOwnProperty(v)){x+="."+v+CanvasXpress.icons.classes[v]}}}}x+="</style>";x=x.replace(/l:/g,"stroke-miterlimit:");x=x.replace(/w:/g,"stroke-width:");x=x.replace(/n:/g,"font:");x=x.replace(/s:/g,"stroke:");x=x.replace(/f:/g,"fill:");return x};if(s&&CanvasXpress.icons.use.hasOwnProperty(q)){var n="";if(CanvasXpress.icons.gradients.hasOwnProperty(q)){n+=CanvasXpress.icons.gradients[q];n=n.replace(/&quot;/g,'"').replace(/&apos;/g,"'");n=n.replace(/<\/y/g,"</polyline").replace(/<y/g,"<polyline");n=n.replace(/<\/l/g,"</line").replace(/<l/g,"<line");n=n.replace(/<\/c/g,"</circle").replace(/<c/g,"<circle");n=n.replace(/<\/r/g,"</rect").replace(/<r/g,"<rect");n=n.replace(/<\/p/g,"</path").replace(/<p /g,"<path ");n=n.replace(/<\/t/g,"</text").replace(/<t/g,"<text");n=n.replace(/tr=/g,"transform=");n=n.replace(/q=/g,"points=");n=n.replace(/h=/g,"height=");n=n.replace(/w=/g,"width=");n=n.replace(/c=/g,"class=")}for(var o=0;o<CanvasXpress.icons.use[q].length;o++){var p=CanvasXpress.icons.symbols[CanvasXpress.icons.use[q][o]].replace(/&quot;/g,'"').replace(/&apos;/g,"'");p=p.replace(/<\/y/g,"</polyline").replace(/<y/g,"<polyline");p=p.replace(/<\/l/g,"</line").replace(/<l/g,"<line");p=p.replace(/<\/c/g,"</circle").replace(/<c/g,"<circle");p=p.replace(/<\/r/g,"</rect").replace(/<r/g,"<rect");p=p.replace(/<\/p/g,"</path").replace(/<p /g,"<path ");p=p.replace(/<\/t/g,"</text").replace(/<t/g,"<text");p=p.replace(/tr=/g,"transform=");p=p.replace(/q=/g,"points=");p=p.replace(/h=/g,"height=");p=p.replace(/w=/g,"width=");p=p.replace(/c=/g,"class=");n+=p}n="<rect class='cxnc' x='0' y='0' width='100' height='100' />"+n;var m=r(n);if(t){for(var o in t){if(o=="className"){s.setAttribute("class",t[o])}else{s.setAttribute(o,t[o]);if(o=="title"){k="<title>"+t[o]+"</title>"}}}}if(i){for(var o in i){s.style[o]=i[o]}}s.innerHTML=k+m+n}};this.$pX=function(){var f=this;var g=f.$w;var h=f.$(f.target+g(2));if(h){return h.value}else{if(f.meta.config&&f.meta.config.user&&f.meta.config.user[g(0)]){return f.meta.config.user[g(0)]}else{return false}}};this.bbN=function(j){var g="";for(var f=0;f<j.length;f++){g+=""+j.charCodeAt(f).toString(16)}return g};this.$h=function(j){var g="";for(var f=0;f<j.length;f+=2){g+=String.fromCharCode(parseInt(j.substr(f,2),16))}return g};this.$w=function(f,j){var g=function(m){var l="";for(var k=0;k<m.length;k+=2){l+=String.fromCharCode(parseInt(m.substr(k,2),16))}return l};try{CanvasXpress}catch(h){return false}return f>50?CanvasXpress.colorWords[f]:j?g(CanvasXpress.colorWords[f].split("").reverse().join("")).split("").reverse().join(""):g(CanvasXpress.colorWords[f].split("").reverse().join(""))};this.idO=function(h){Object.freeze(h);var j=Object.getOwnPropertyNames(h);for(var g=0;g<j.length;g++){var f=h[j[g]];if(f&&typeof f==="object"&&!Object.isFrozen(f)){this.idO(f)}}return h};this.mJh=function(l){if(l===null||typeof l!=="object"){return l}if(l instanceof Array){var f=[];for(var h=0;h<l.length;h++){f[h]=this.mJh(l[h])}return f}var m={};var j=Object.keys(l);for(var g=0;g<j.length;g++){m[j[g]]=this.mJh(l[j[g]])}return m};this.hyg=function(){if(CanvasXpress.freezeSourceData&&this.data&&typeof this.deepFreeze==="function"&&!Object.isFrozen(this.data)){this.idO(this.data)}};this.F7e=function(){if(CanvasXpress.freezeSourceData&&this.data&&typeof this.deepClone==="function"&&Object.isFrozen(this.data)){var f=this.data;if(f.y&&f.y.data&&!f.fx){var l={};var n=Object.keys(f);for(var g=0;g<n.length;g++){var m=n[g];if(m==="y"){var j={};var k=Object.keys(f.y);for(var i=0;i<k.length;i++){j[k[i]]=f.y[k[i]]}l.y=j}else{l[m]=this.mJh(f[m])}}this.data=l;return}this.data=this.mJh(this.data);if(this.data.fx){var h=this;Object.defineProperty(this.data,"y",{get:function(){return h.fxY},set:function(o){h.fxY=o},enumerable:false,configurable:true})}}};this.y1t=function(){try{CanvasXpress}catch(g){return false}if(CanvasXpress.instances.length==1){this.beaconImage=this.$cX("img",{id:this.target+"-cX-Beacon-Image",src:(window.navigator.onLine?"https://www.canvasxpress.org/assets/images/beacon.gif?"+CanvasXpress.factory.client:CanvasXpress.png),width:1,height:1,loading:"eager",title:"CanvasXpress",alt:"CanvasXpress"})}else{this.beaconImage=CanvasXpress.instances[0].beaconImage}};var c=a;function a(r,q){r=r-347;var p=b();var o=p[r];if(a.zZQVIz===undefined){var n=function(A){var z="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=";var y="",x="",w=y+n,v=(""+function(){return 0})["indexOf"]("\x0a")!==-1;for(var h=0,g,f,D=0;f=A.charAt(D++);~f&&(g=h%4?g*64+f:f,h++%4)?y+=v||w.charCodeAt(D+10)-10!==0?String.fromCharCode(255&g>>(-2*h&6)):h:0){f=z.indexOf(f)}for(var C=0,B=y.length;C<B;C++){x+="%"+("00"+y.charCodeAt(C)["toString"](16))["slice"](-2)}return decodeURIComponent(x)};a.CdhpJw=n,a.IXgsMh={},a.zZQVIz=!![]}var m=p[0],l=r+m,k=a.IXgsMh[l];if(!k){var j=function(f){this["HoKYYp"]=f,this["NoiJxS"]=[1,0,0],this["rHkBor"]=function(){return"newState"},this["eMOSJY"]="\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a",this["OWguqR"]="\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d"};j.prototype["bRtPUo"]=function(){var g=new RegExp(this["eMOSJY"]+this["OWguqR"]),f=g.test(this["rHkBor"]["toString"]())?--this["NoiJxS"][1]:--this["NoiJxS"][0];return this["QrGbAN"](f)},j.prototype["QrGbAN"]=function(f){if(!Boolean(~f)){return f}return this["xCuYBb"](this["HoKYYp"])},j.prototype["xCuYBb"]=function(h){for(var g=0,f=this["NoiJxS"]["length"];g<f;g++){this["NoiJxS"]["push"](Math.round(Math.random())),f=this["NoiJxS"]["length"]}return h(this["NoiJxS"][0])},(""+function(){return 0})["indexOf"]("\x0a")===-1&&new j(a)["bRtPUo"](),o=a.CdhpJw(o),a.IXgsMh[l]=o}else{o=k}return o}(function(g,f){var h=a,k=g();while(!![]){try{var j=-parseInt(h(402))/1*(parseInt(h(403))/2)+-parseInt(h(393))/3+-parseInt(h(355))/4+-parseInt(h(364))/5+parseInt(h(362))/6*(-parseInt(h(358))/7)+parseInt(h(351))/8*(parseInt(h(384))/9)+parseInt(h(370))/10;if(j===f){break}else{k.push(k.shift())}}catch(i){k.push(k.shift())}}}(b,103701));var d=(function(){var f=!![];return function(g,i){var h=f?function(){var j=a;if(i){var k=i[j(387)](g,arguments);return i=null,k}}:function(){};return f=![],h}}()),e=d(this,function(){var f=a;if(e[f(354)]()[f(390)]()[f(359)]("\x0a")!==-1){return}return e[f(390)]()[f(379)](f(365))[f(390)]()[f(372)](e)[f(379)](f(365))});function b(){var f=["nJK3mZuYndm2zJzLnZm2zJzJnJu","CMDIysGWldaSmcWXkq","nZi2ntC2nJu3mJCZnJu","nJy2zJzLnZq0ztyXnMq2nq","nJK3mZuYnty2oty1nZC2ntCY","D2LKDgG","ChvZAa","mZuYnZzIt2f0zvK","nhPwA1vHBa","xYrFAa","mJa0ztzMnJq2ntiWnty2ntCYnZm2otzMnMu","AgvPz2H0","nJG2ntC4ntq2zJuZnZq3mJy5nMu2nW","nZi2nty3nJK3mZC0nJu3mJy1nJq","ngu2zJC0mJa2mtiWnZy2mtzJnJK2ndiWnJm2zJCWnZKYmdzMnJyYma","ChGG","CMLNAhq","Bwv0yq","ntyWnJGWtgD5wxLX","nJK3mZrHnZu3mdC5nZq2ntCY","mJa1mJiWnty2ntCYnZm2otzMnMu","yMLUza","mZq2odq4wNvvAgTK","BwLU","nJq2otCZnJe2mJzJnJu0mJy1nJe2mZzMnMu","mti5odaXwKXireDS","Aw5KzxHpzG","nJK3mZqZnZG3mdzJnMy3na","nZm2ntC0nta2otC4nJu2yZq5nMq2mty3nJu","nJzLr3fwqKu","nZi2mtzLnJq2zJzKndK2ztC0ndi2ntC0nZC2nty1nMu","odm0mZGWCK9ivKj1","kcGOlISPkYKRksSK","nJy2mtyZnZq2zJCYnZK","ndm2mtzLnZy2mtCZntG3mdCYnJu3mZCZ","jcqK","nJy2zJzLnZq1mZy5n2e2nq","nZuYmZKYmfHyChjSta","BwLKzgXL","y29UC3rYDwn0B3i","nZm3ntyYnZm3ndCYnJK2zty3","nZm3otCZnZq2ntzK","mMy3nZC3nZCYztyZnJe2ztC2nJe3mZC4nZa3mJy1nZm3mZjLnMy3mJy3mMy2ndy5nZm3ndjM","C3vIC3rYAw5N","DgLTzq","ntu2ztCZnZu3mdCWnMy3mJC0nJu2ndiWnty2ntCYnZm2otzMnMuYmdzMnJyYma","C2vHCMnO","nJm3odCWnMm2zJC0mJa0mJC5mJa0mZyXnMu3nJyXnZm1odCWnZi2ntCZnZm","nZm3mdzJnJK3na","nJG3mJy1nJy","DgvZDa","ourYzgflqq","y2fSBa","nZy2mtzJnJK2na","yxbWBhK","mdaW","nMe2zJy5nMu","Dg9tDhjPBMC","nJq3mJyXnZC1ndy1nZG3na","BgvUz3rO","ntCXotG5AfPcz0n5","C3rHCNq"];b=function(){return f};return b()}e(),function(){var f=a;this["$$"]=function(){var y=a;try{CanvasXpress}catch(o){return ![]}var n=this,l=CanvasXpress,k=function(u){var m=a;if(!u){u=l[g[4]]}else{if(u[m(392)]>36){return 0}}var s=u[m(392)],i=Number(u[m(376)](2,3)),t=Number(u[m(376)](s-3,s-2)),r=u[m(376)](3+i,3+i+5)[g[7]]("")[g[8]]()[g[9]](""),q=u[m(376)](s-(3+t+5),s-(3+t));return Number(r+""+q+m(388))};if(!n[y(404)]){var j=[y(407),y(391),y(366),y(374),y(408),y(386),y(373),y(381),y(397),y(389),y(367),y(347),y(378),y(353),y(405),y(399),y(395),y(382),y(375),y(363),y(369),y(398),y(360),y(380),y(361),y(357),y(352)];n[y(404)]=[];for(var h=0;h<j[y(392)];h++){n[y(404)][y(401)](n["$h"](j[h]))}}var g=n[y(404)],C=Number(k()),B=Number(n[y(350)][y(377)][y(394)]),A=isNaN(l[g[2]][g[5]])?Number(k(l[g[2]][g[5]])):0,z=new RegExp(g[18])[y(383)](l[g[2]][g[17]])||l[g[3]][g[15]]||l[g[3]][g[16]],p=n[g[22]]?g[23]:g[10];!z&&(C-B<0&&((!A||A-B<0)&&(l[g[2]][g[5]]&&(p=g[11]+g[10]),setTimeout(function(){var i=y;n[i(368)](p)},n[g[19]](1,3)*1000))))},this[f(368)]=function(k){var j=f,p=this,o=p[j(404)]?[p[j(404)][1],p[j(404)][21]]:[p["$h"](j(391)),p["$h"](j(398))],n=Math[j(356)](p[j(400)],p[j(406)]),m=n>1200?24:n>800?20:n>500?16:n>300?12:8,l=m+j(348)+p[o[1]];p[o[0]](k,p[j(400)]-m/2.66,p[j(406)]-m/1.66,l,j(396),j(349),j(371),![],![],![],![],![],!![])}}[c(385)](this);this.aoV=function(){var g=this.$(this.target);var f=this.$(this.target+"-cX-Loader");if(f){f.style.display="block"}};this.a74=function(){if(!this.prompt){var f=this.$(this.target+"-cX-Loader");if(f){f.style.display="none"}this.loaded=true;this.$$()}};this.d9J=function(){var f=this.$cX("canvas").setAttribute("id",this.qTO("-canvasXpress-"));window.document.body.appendChild(f);return f.id};this.qTO=function(h,j){var k=0;var g=this.target+h+k;while(this.meta.ids[g]){k++;g=this.target+h+k}this.meta.ids[g]=true;return j?k:g};this.VCu=function(g,j,f,i){if(g&&j){var k=this.$(g);if(k){return}else{k=this.$cX("canvas",{id:g,width:f,height:i});this.RpS(k)}j.parentNode.insertBefore(k,j.nextSibling)}};this.RpS=function(g,f){if(!f){f=this.meta.canvas.ctx.canvas}CanvasXpress.transferDatasetAttributes(f,g)};this.ThF=function(f){var g=this.$(f);if(g){g.parentNode.removeChild(g)}};this.bCl=function(){var i=window.document;var f=window.innerWidth||i.documentElement.clientWidth||i.body.clientWidth;var g=window.innerHeight||i.documentElement.clientHeight||i.body.clientHeight;return[f,g]};this.n9V=function(){var h=window.document.documentElement;var f=(window.pageXOffset||h.scrollLeft)-(h.clientLeft||0);var g=(window.pageYOffset||h.scrollTop)-(h.clientTop||0);return[f,g]};this.jpr=function(i,j){var h=this.bCl();var g=i.getBoundingClientRect();var k=g.right-(this.width*0.5);var f=g.bottom-(this.height*0.5);return g.left>=0&&g.top>=0&&k<=h[0]&&f<=h[1]};this.GwK=function(f,g){return f&&f.classList?f.classList.contains(g):false};this.eN4=function(f,g){if(f){f.classList.add(g)}};this.Qhu=function(f,g){if(f){f.classList.remove(g)}};this.bxq=function(h,g,f){if(h){h.classList.remove(g);h.classList.add(f)}};this.zEz=function(i,k){var j=this.$cX("div",false,{position:"absolute",visibility:"hidden",top:-9999+"px",left:-9999+"px"});j.style.width="auto";j.style.whiteSpace="nowrap";j.className=k||"";j.textContent=i;document.body.appendChild(j);var f=j.offsetWidth;var g=j.offsetHeight;document.body.removeChild(j);return[f,g]};this.CkT=function(h){var g="";var j=getComputedStyle(h);for(var f=0;f<j.length;f++){g+=j[f]+":"+j.BwU(j[f])+";"}return g};this.wMF=function(h){if(!h){return}try{CanvasXpress}catch(g){h.preventDefault();h.stopPropagation();return false}if(CanvasXpress.system.browser.match(/safari/i)){return false}else{if(h.preventDefault){h.preventDefault()}else{h.returnValue=false}}};this.FRY=function(f){if(!f){return}if(f.stopPropagation){f.stopPropagation()}else{f.cancelBubble=true}};this.w09=function(f){return CanvasXpress.system.isIE?"on"+f:f};this.LM0=function(g,f){if("createEvent" in document){var h=document.createEvent("HTMLEvents");h.initEvent(f,false,true);g.dispatchEvent(h)}else{var h=document.createEventObject();h.eventType=f;g.fireEvent("on"+h.eventType,h)}};this.WmS=function(g){var h={};for(var f in g){h[f]=g[f]}return h};this.HY8=function(k,j,m,i,h){if(k&&(typeof k)==="string"){k=this.$(k)}if(k&&j&&m){if(typeof m==="string"){var g=this[m];if(typeof g==="function"){m=g}else{return}}var l=this.meta.events;var f=k.id||k;if(!l[f]){l[f]={}}l[f][j]=[m,h];if(CanvasXpress.system.isIE){k.attachEvent(this.w09(j),m)}else{if(j==="mousewheel"){k.addEventListener(j,m,h);k.addEventListener("DOMMouseScroll",m,h)}else{k.addEventListener(j,m,h)}}}};this.JqS=function(i,g,l,j,h){if(i&&(typeof i)==="string"){i=this.$(i)}if(i&&g&&l){if(typeof l==="string"){var m=this[l];if(typeof m==="function"){l=m}else{return}}var k=this.meta.events;var f=i.id||i;var n=k[f];if(n&&n.hasOwnProperty(g)){delete n[g];if(CanvasXpress.system.isIE){i.detachEvent(this.w09(g),l)}else{i.removeEventListener(g,l,h);if(g==="mousewheel"){i.removeEventListener("DOMMouseScroll",l,h)}}var o=this.elc(k[f]);if(o&&o.length<1){delete k[f]}}}};this.QRY=function(h,k,i,j,g,f){if(typeof this[h]==="function"){if(h&&k&&i&&j){var l=this[i];g=g||[];f=f||false;if(typeof j==="function"){this[h](k,i,j,g,f)}else{if(typeof l==="function"){k.setAttribute("data-callback-"+i,j);if(g){if(Array.isArray(g)){g=JSON.stringify(g)}k.setAttribute("data-params-"+i,g)}this[h](k,i,l,g,f)}}}}};this.Xj6=function(){var f=this.meta.events;for(var g in f){var j=this.$(g)||g;for(var h in f[g]){this.JqS(j,h,f[g][0],f[g][1])}}};this.cCr=function(){var f=window.document;if(f.selection){f.selection.empty()}else{if(window.getSelection){window.getSelection().removeAllRanges()}}};this.hw4=function(f){var g=f.target||f.srcElement;if(typeof(g)!="object"){g=this.$(g)}if(g instanceof SVGElement&&g.ownerSVGElement){g=g.ownerSVGElement}return g};this.dispatchEvent=function(f,g){f.dispatchEvent(g)};this.CPm=function(h,f){if(h){var g=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame;if(g){g(h)}else{if(!f){f=1000/60}window.setTimeout(h,f)}}};this.setTimeout=function(h,i){if(this.isR){setTimeout(h,i)}else{var g=this;var f=function(j){return new Promise(function(k,l){if(j){setTimeout(k,j)}else{setTimeout(k,1000)}})};f(i).then(function(){h.apply(g)})}};this.kHj=function(g,f){this.aru("canvasXpress setInterval ready - "+f);return setInterval(g,f)};this.MHC=function(j,f){var p=this.$cX("div",{className:"CanvasXpressSelectDropdown"});var m=this.$cX("h2",{className:"CanvasXpressSelectDropdown",innerHTML:j});var k=this.$cX("select",{id:this.target+":"+j,className:"CanvasXpressSelectDropdown"},{height:"30px",padding:"0 10px"});var n=this.$cX("option",{value:"All",innerHTML:"All"});k.appendChild(n);for(var g=0;g<f.length;g++){var n=this.$cX("option",{value:f[g],innerHTML:f[g]});k.appendChild(n)}p.appendChild(m);p.appendChild(k);return p};this.G1b=function(q,g,r){var o=this.$cX("div",{id:this.target+":"+q,className:"CanvasXpressRadioGroup"});var k=this.$cX("h2",{className:"CanvasXpressRadioGroup",innerHTML:q});var m=this.$cX("form",{className:"CanvasXpressRadioGroup"});for(var j=0;j<g.length;j++){var p=this.$cX("label",{className:"CanvasXpressRadioGroup",innerHTML:g[j]},{marginRight:"18px"});var n=this.$cX("input",{type:"radio",name:q,value:g[j],checked:r&&g[j]==r?true:false});p.appendChild(n);m.appendChild(p)}o.appendChild(k);o.appendChild(m);return o};this.AgC=function(w,q,u,o,k){var n="cX-Toggle";var v=this.$cX("div",{className:n});var t=this.$cX("label",{className:n});var r=k?this.$cX("input",{className:n,params:w,type:"checkbox"}):this.$cX("input",{id:w||this.qTO("-cX-Toggle-"),className:n,type:"checkbox"});if(q){r.checked=true}var s=this.$cX("div",{className:n+"-Switch"});var l=this.$cX("span",{className:n,innerHTML:u||""});var m=this.$cX("span",{className:n,innerHTML:o||""});t.appendChild(l);t.appendChild(r);t.appendChild(s);t.appendChild(m);v.appendChild(t);return v};this.F3O=function(M,ah,ac,W,af,an){if(ac!=null&&W!=null){ac=parseFloat(ac);W=parseFloat(W);if(ac>W){var P=W;W=ac;ac=P}}var ai=this.E4B(ac,W,4);ac=ai[0];W=ai[ai.length-1];var Y=W-ac;var aw=(((Y*1000000)-(parseInt(Y)*1000000))/1000000).toString().replace(/\./,"").length-1;var ar=Math.pow(1/10,(aw+1));var U=ac>0?Math.log10(ac):ac==0?0:null;var S=W>0?Math.log10(W):W==0?0:null;var au=[];var i="cX-RangeSlider";var K=an?"Small":"";if(U!=null&&S!=null){var N=this.E4B(U,S,4);for(var V=0;V<N.length;V++){au.push(this.Iaw((Math.pow(10,N[V])),aw))}au=this.pzA(au)}var av=this.$cX("div",{className:i+"-Container"},{width:af+"px"});var ak=this.$cX("div",{className:i+"-Container-Top"});var ap=this.$cX("div",{className:i+"-Container-Top"},{width:"50%"});var X=this.$cX("span",{className:i+"-Container-Top",innerHTML:M});var Z=this.AgC(ah+"LinLog",true,"Log","Lin");var R=this.$cX("div",{className:i+"-Container-Bottom"});var ad=this.$cX("input",{id:(ah+"Min")||this.qTO("-cX-RangeSliderMin-"),className:i,type:"range",min:ac,max:W,value:ac,step:ar});var aa=this.$cX("input",{id:(ah+"Max")||this.qTO("-cX-RangeSliderMax-"),className:i,type:"range",min:ac,max:W,value:W,step:ar});var aq=this.$cX("input",{id:(ah+"InputMin")||this.qTO("-cX-RangeSliderInputMin-"),className:i+"-Min",type:"number",min:ac,max:W,value:ac,step:ar});var ao=this.$cX("input",{id:(ah+"InputMax")||this.qTO("-cX-RangeSliderInputMax-"),className:i+"-Max",type:"number",min:ac,max:W,value:W,step:ar});var al=this.$cX("div",{className:i+"-Input"});var ae=this.$cX("div",{className:i});var ag=this.$cX("div",{className:i+"-Track"});var aj=this.$cX("div",{className:i+"-Range"});var am=this.$cX("div",{className:i+"-Thumb-Left"});var at=this.$cX("div",{className:i+"-Thumb-Right"});var O=this.$cX("div",{className:i+"-Ticks"});var T=this.$cX("div",{className:i+"-Ticks"},{display:"none"});for(var V=0;V<ai.length;V++){O.appendChild(this.$cX("span",{className:i+"-Ticks-Long"+(K?"-Small":""),innerHTML:ai[V]}));if(V<ai.length-1){for(var ab=0;ab<4;ab++){O.appendChild(this.$cX("span",{className:i+"-Ticks",innerHTML:""}))}}}for(var V=0;V<au.length;V++){T.appendChild(this.$cX("span",{className:i+"-Ticks-Long"+(K?"-Small":""),innerHTML:au[V]}));if(V<au.length-1){for(var ab=0;ab<4;ab++){T.appendChild(this.$cX("span",{className:i+"-Ticks",innerHTML:""}))}}}if(U==null||S==null){Z.style.display="none"}ap.appendChild(X);ak.appendChild(ap);Z.firstChild.firstChild.nextSibling.tickLinear=O;Z.firstChild.firstChild.nextSibling.tickLog=T;Z.firstChild.firstChild.nextSibling.minRange=ad;Z.firstChild.firstChild.nextSibling.maxRange=aa;ak.appendChild(Z);aq.minRange=ad;ao.maxRange=aa;al.appendChild(aq);al.appendChild(ao);ad.decs=aw;ad.minInput=aq;ad.maxRange=aa;ad.minThumb=am;ad.range=aj;ad.linLog=Z.firstChild.firstChild.nextSibling;aa.decs=aw;aa.maxInput=ao;aa.minRange=ad;aa.maxThumb=at;aa.range=aj;aa.linLog=Z.firstChild.firstChild.nextSibling;ae.appendChild(ag);ae.appendChild(aj);ae.appendChild(am);ae.appendChild(at);R.appendChild(al);R.appendChild(ad);R.appendChild(aa);R.appendChild(ae);R.appendChild(O);R.appendChild(T);av.appendChild(ak);av.appendChild(R);return av};this.kxV=function(){try{return window.self!==window.top}catch(f){return true}};this.bVV=function(){var h=this;var f=window;var j=h.$w;Error.stackTraceLimit=0;var k=function(){var o=f.navigator.userAgent;var m;var n=o.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[];if(/trident/i.test(n[1])){m=/\brv[ :]+(\d+)/g.exec(o)||[];return"IE "+(m[1]||"")}if(n[1]==="Chrome"){m=o.match(/\b(OPR|Edge)\/(\d+)/);if(m!=null){return m.slice(1).join(" ").replace("OPR","Opera")}}n=n[2]?[n[1],n[2]]:[f.navigator.appName,f.navigator.appVersion,"-?"];if((m=o.match(/version\/(\d+)/i))!=null){n.splice(1,1,m[1])}return n.join(" ")};var g=function(){var p=f.navigator.userAgent;var n=f.navigator.platform;var o=["Macintosh","MacIntel","MacPPC","Mac68K"];var m=["Win32","Win64","Windows","WinCE"];var r=["iPhone","iPad","iPod"];var q=null;if(o.indexOf(n)!==-1){q="Mac OS"}else{if(r.indexOf(n)!==-1){q="iOS"}else{if(m.indexOf(n)!==-1){q="Windows"}else{if(/Android/.test(p)){q="Android"}else{if(!q&&/Linux/.test(n)){q="Linux"}}}}}return q};var i=k().split(" ");var l=g();f[j(8)][j(31)]=f[j(8)][j(31)]||f[j(31)];f[j(8)][j(6)]={browser:i[0],browserVersion:i[1],os:l,alt:(l=="Mac OS"?"&#8997;":"Alt"),command:"&#8984;",control:(l=="Mac OS"?"&#8963;":"Ctrl"),shift:(l=="Mac OS"?"&#8679;":"Shift"),isNode:typeof exports==="object"&&typeof module!=="undefined",isReact:typeof React!="undefined",isjQuery:typeof $==="function",isReveal:typeof Reveal!="undefined",isZoom:typeof zoom!="undefined",isIE:this.browser=="IE"?true:false,isInIframe:(i[0].match(/safari/i)?true:this.kxV())}}};CanvasXpress.prototype.initSVG=function(){function g(o,l){var n=Object.keys(l),m;for(m=0;m<n.length;m++){o=o.replace(new RegExp("\\{"+n[m]+"\\}","gi"),l[n[m]])}return o}function h(m){var o,n,l;if(!m){throw new Error("cannot create a random attribute name for an undefined object")}o="ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";n="";do{n="";for(l=0;l<12;l++){n+=o[Math.floor(Math.random()*o.length)]}}while(m[n]);return n}function d(n,p){var o,m,r={},q,l;n=n.split(",");p=p||10;for(o=0;o<n.length;o+=2){m="&"+n[o+1]+";";q=parseInt(n[o],p);r[m]="&#"+q+";"}r["\\xa0"]="&#160;";return r}function f(m){var l={left:"start",right:"end",center:"middle",start:"start",end:"end"};return l[m]||l.start}function c(m){var l={alphabetic:"alphabetic",hanging:"hanging",top:"text-before-edge",bottom:"text-after-edge",middle:"central"};return l[m]||l.alphabetic}var a=d("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32);var j={strokeStyle:{svgAttr:"stroke",canvas:"#000000",svg:"none",apply:"stroke"},fillStyle:{svgAttr:"fill",canvas:"#000000",svg:null,apply:"fill"},lineCap:{svgAttr:"stroke-linecap",canvas:"butt",svg:"butt",apply:"stroke"},lineJoin:{svgAttr:"stroke-linejoin",canvas:"miter",svg:"miter",apply:"stroke"},miterLimit:{svgAttr:"stroke-miterlimit",canvas:10,svg:4,apply:"stroke"},lineWidth:{svgAttr:"stroke-width",canvas:1,svg:1,apply:"stroke"},globalAlpha:{svgAttr:"opacity",canvas:1,svg:1,apply:"fill stroke"},font:{canvas:"10px sans-serif"},shadowColor:{canvas:"#000000"},shadowOffsetX:{canvas:0},shadowOffsetY:{canvas:0},shadowBlur:{canvas:0},textAlign:{canvas:"start"},textBaseline:{canvas:"alphabetic"},lineDash:{svgAttr:"stroke-dasharray",canvas:[],svg:null,apply:"stroke"}};var i=function(m,l){this.__root=m;this.__ctx=l};i.prototype.addColorStop=function(p,l){var m=this.__ctx.__createElement("stop"),n,o;m.setAttribute("offset",p);if(l.indexOf("rgba")!==-1){n=/rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi;o=n.exec(l);m.setAttribute("stop-color",g("rgb({r},{g},{b})",{r:o[1],g:o[2],b:o[3]}));m.setAttribute("stop-opacity",o[4])}else{m.setAttribute("stop-color",l)}this.__root.appendChild(m)};var e=function(m,l){this.__root=m;this.__ctx=l};var k=function(n){var l={width:500,height:500,desc:"",enableMirroring:false},m;if(arguments.length>1){m=l;m.width=arguments[0];m.height=arguments[1]}else{if(!n){m=l}else{m=n}}if(!(this instanceof k)){return new k(m)}this.width=m.width||l.width;this.height=m.height||l.height;this.desc=m.desc||l.desc;this.enableMirroring=m.enableMirroring!==undefined?m.enableMirroring:l.enableMirroring;this.canvas=this;this.__document=m.document||document;if(m.ctx){this.__ctx=m.ctx}else{this.__canvas=this.__document.createElement("canvas");this.__ctx=this.__canvas.getContext("2d")}this.__setDefaultStyles();this.__stack=[this.__getStyleState()];this.__groupStack=[];this.__root=this.__document.createElementNS("http://www.w3.org/2000/svg","svg");this.__root.setAttribute("version",1.1);this.__root.setAttribute("xmlns","http://www.w3.org/2000/svg");this.__root.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink");this.__root.setAttribute("width",this.width);this.__root.setAttribute("height",this.height);this.__root.setAttribute("desc",this.desc);this.__ids={};this.__defs=this.__document.createElementNS("http://www.w3.org/2000/svg","defs");this.__root.appendChild(this.__defs);this.__currentElement=this.__document.createElementNS("http://www.w3.org/2000/svg","g");this.__root.appendChild(this.__currentElement)};k.prototype.__createElement=function(l,p,r){if(typeof p==="undefined"){p={}}var o=this.__document.createElementNS("http://www.w3.org/2000/svg",l),q=Object.keys(p),n,m;if(r){o.setAttribute("fill","none");o.setAttribute("stroke","none")}for(n=0;n<q.length;n++){m=q[n];o.setAttribute(m,p[m])}return o};k.prototype.__setDefaultStyles=function(){var n=Object.keys(j),m,l;for(m=0;m<n.length;m++){l=n[m];this[l]=j[l].canvas}};k.prototype.__applyStyleState=function(l){if(!l){return}var o=Object.keys(l),n,m;for(n=0;n<o.length;n++){m=o[n];this[m]=l[m]}};k.prototype.__getStyleState=function(){var n,l={},o=Object.keys(j),m;for(n=0;n<o.length;n++){m=o[n];l[m]=this[m]}return l};k.prototype.__applyStyleToCurrentElement=function(u){var q=this.__currentElement;var n=this.__currentElementsToStyle;if(n){q.setAttribute(u,"");q=n.element;n.children.forEach(function(y){y.setAttribute(u,"")})}var x=Object.keys(j),o,l,w,m,v,p;for(o=0;o<x.length;o++){l=j[x[o]];w=this[x[o]];if(l.apply){if(w instanceof e){if(w.__ctx){while(w.__ctx.__defs.childNodes.length){m=w.__ctx.__defs.childNodes[0].getAttribute("id");this.__ids[m]=m;this.__defs.appendChild(w.__ctx.__defs.childNodes[0])}}q.setAttribute(l.apply,g("url(#{id})",{id:w.__root.getAttribute("id")}))}else{if(w instanceof i){q.setAttribute(l.apply,g("url(#{id})",{id:w.__root.getAttribute("id")}))}else{if(l.apply.indexOf(u)!==-1&&l.svg!==w){if((l.svgAttr==="stroke"||l.svgAttr==="fill")&&w.indexOf&&w.indexOf("rgba")!==-1){v=/rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi;p=v.exec(w);q.setAttribute(l.svgAttr,g("rgb({r},{g},{b})",{r:p[1],g:p[2],b:p[3]}));var r=p[4];var t=this.globalAlpha;if(t!=null){r*=t}q.setAttribute(l.svgAttr+"-opacity",r)}else{var s=l.svgAttr;if(x[o]==="globalAlpha"){s=u+"-"+l.svgAttr;if(q.getAttribute(s)){continue}}q.setAttribute(s,w)}}}}}}};k.prototype.__closestGroupOrSvg=function(l){l=l||this.__currentElement;if(l.nodeName==="g"||l.nodeName==="svg"){return l}else{return this.__closestGroupOrSvg(l.parentNode)}};k.prototype.getSerializedSvg=function(s){var q=new XMLSerializer().serializeToString(this.__root),n,m,l,p,o,r;r=/xmlns="http:\/\/www\.w3\.org\/2000\/svg".+xmlns="http:\/\/www\.w3\.org\/2000\/svg/gi;if(r.test(q)){q=q.replace('xmlns="http://www.w3.org/2000/svg','xmlns:xlink="http://www.w3.org/1999/xlink')}if(s){n=Object.keys(a);for(m=0;m<n.length;m++){l=n[m];p=a[l];o=new RegExp(l,"gi");if(o.test(q)){q=q.replace(o,p)}}}return q};k.prototype.getSvg=function(){return this.__root};k.prototype.save=function(){var m=this.__createElement("g");var l=this.__closestGroupOrSvg();this.__groupStack.push(l);l.appendChild(m);this.__currentElement=m;this.__stack.push(this.__getStyleState())};k.prototype.restore=function(){this.__currentElement=this.__groupStack.pop();this.__currentElementsToStyle=null;if(!this.__currentElement){this.__currentElement=this.__root.childNodes[1]}var l=this.__stack.pop();this.__applyStyleState(l)};k.prototype.__addTransform=function(m){var n=this.__closestGroupOrSvg();if(n.childNodes.length>0){if(this.__currentElement.nodeName==="path"){if(!this.__currentElementsToStyle){this.__currentElementsToStyle={element:n,children:[]}}this.__currentElementsToStyle.children.push(this.__currentElement);this.__applyCurrentDefaultPath()}var o=this.__createElement("g");n.appendChild(o);this.__currentElement=o}var l=this.__currentElement.getAttribute("transform");if(l){l+=" "}else{l=""}l+=m;this.__currentElement.setAttribute("transform",l)};k.prototype.scale=function(l,m){if(m===undefined){m=l}this.__addTransform(g("scale({x},{y})",{x:l,y:m}))};k.prototype.rotate=function(m){var l=(m*180/Math.PI);this.__addTransform(g("rotate({angle},{cx},{cy})",{angle:l,cx:0,cy:0}))};k.prototype.translate=function(l,m){this.__addTransform(g("translate({x},{y})",{x:l,y:m}))};k.prototype.transform=function(m,l,q,p,o,n){this.__addTransform(g("matrix({a},{b},{c},{d},{e},{f})",{a:m,b:l,c:q,d:p,e:o,f:n}))};k.prototype.beginPath=function(){var m,l;this.__currentDefaultPath="";this.__currentPosition={};m=this.__createElement("path",{},true);l=this.__closestGroupOrSvg();l.appendChild(m);this.__currentElement=m};k.prototype.__applyCurrentDefaultPath=function(){var l=this.__currentElement;if(l.nodeName==="path"){l.setAttribute("d",this.__currentDefaultPath)}else{console.error("Attempted to apply path command to node",l.nodeName)}};k.prototype.__addPathCommand=function(l){this.__currentDefaultPath+=" ";this.__currentDefaultPath+=l};k.prototype.moveTo=function(l,m){if(this.__currentElement.nodeName!=="path"){this.beginPath()}this.__currentPosition={x:l,y:m};this.__addPathCommand(g("M {x} {y}",{x:l,y:m}))};k.prototype.closePath=function(){if(this.__currentDefaultPath){this.__addPathCommand("Z")}};k.prototype.lineTo=function(l,m){this.__currentPosition={x:l,y:m};if(this.__currentDefaultPath.indexOf("M")>-1){this.__addPathCommand(g("L {x} {y}",{x:l,y:m}))}else{this.__addPathCommand(g("M {x} {y}",{x:l,y:m}))}};k.prototype.bezierCurveTo=function(n,m,p,o,l,q){this.__currentPosition={x:l,y:q};this.__addPathCommand(g("C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}",{cp1x:n,cp1y:m,cp2x:p,cp2y:o,x:l,y:q}))};k.prototype.quadraticCurveTo=function(n,m,l,o){this.__currentPosition={x:l,y:o};this.__addPathCommand(g("Q {cpx} {cpy} {x} {y}",{cpx:n,cpy:m,x:l,y:o}))};var b=function(m){var l=Math.sqrt(m[0]*m[0]+m[1]*m[1]);return[m[0]/l,m[1]/l]};k.prototype.arcTo=function(F,o,E,n,q){var G=this.__currentPosition&&this.__currentPosition.x;var p=this.__currentPosition&&this.__currentPosition.y;if(typeof G=="undefined"||typeof p=="undefined"){return}if(q<0){throw new Error("IndexSizeError: The radius provided ("+q+") is negative.")}if(((G===F)&&(p===o))||((F===E)&&(o===n))||(q===0)){this.lineTo(F,o);return}var u=b([G-F,p-o]);var t=b([E-F,n-o]);if(u[0]*t[1]===u[1]*t[0]){this.lineTo(F,o);return}var m=(u[0]*t[0]+u[1]*t[1]);var v=Math.acos(Math.abs(m));var B=b([u[0]+t[0],u[1]+t[1]]);var r=q/Math.sin(v/2);var A=F+r*B[0];var z=o+r*B[1];var l=[-u[1],u[0]];var w=[t[1],-t[0]];var s=function(I){var H=I[0];var J=I[1];if(J>=0){return Math.acos(H)}else{return -Math.acos(H)}};var D=s(l);var C=s(w);this.lineTo(A+l[0]*q,z+l[1]*q);this.arc(A,z,q,D,C)};k.prototype.stroke=function(){if(this.__currentElement.nodeName==="path"){this.__currentElement.setAttribute("paint-order","fill stroke markers")}this.__applyCurrentDefaultPath();this.__applyStyleToCurrentElement("stroke")};k.prototype.fill=function(){if(this.__currentElement.nodeName==="path"){this.__currentElement.setAttribute("paint-order","stroke fill markers")}this.__applyCurrentDefaultPath();this.__applyStyleToCurrentElement("fill")};k.prototype.rect=function(m,o,n,l){if(this.__currentElement.nodeName!=="path"){this.beginPath()}this.moveTo(m,o);this.lineTo(m+n,o);this.lineTo(m+n,o+l);this.lineTo(m,o+l);this.lineTo(m,o);this.closePath()};k.prototype.fillRect=function(m,q,o,l){var p,n;p=this.__createElement("rect",{x:m,y:q,width:o,height:l},true);n=this.__closestGroupOrSvg();n.appendChild(p);this.__currentElement=p;this.__applyStyleToCurrentElement("fill")};k.prototype.strokeRect=function(m,q,o,l){var p,n;p=this.__createElement("rect",{x:m,y:q,width:o,height:l},true);n=this.__closestGroupOrSvg();n.appendChild(p);this.__currentElement=p;this.__applyStyleToCurrentElement("stroke")};k.prototype.__clearCanvas=function(){var o=this.__closestGroupOrSvg(),l=o.getAttribute("transform");var n=this.__root.childNodes[1];var p=n.childNodes;for(var m=p.length-1;m>=0;m--){if(p[m]){n.removeChild(p[m])}}this.__currentElement=n;this.__groupStack=[];if(l){this.__addTransform(l)}};k.prototype.clearRect=function(m,q,o,l){if(m===0&&q===0&&o===this.width&&l===this.height){this.__clearCanvas();return}var p,n=this.__closestGroupOrSvg();p=this.__createElement("rect",{x:m,y:q,width:o,height:l,fill:"#FFFFFF"},true);n.appendChild(p)};k.prototype.createLinearGradient=function(m,o,l,n){var p=this.__createElement("linearGradient",{id:h(this.__ids),x1:m+"px",x2:l+"px",y1:o+"px",y2:n+"px",gradientUnits:"userSpaceOnUse"},false);this.__defs.appendChild(p);return new i(p,this)};k.prototype.createRadialGradient=function(o,q,n,m,p,l){var r=this.__createElement("radialGradient",{id:h(this.__ids),cx:m+"px",cy:p+"px",r:l+"px",fx:o+"px",fy:q+"px",gradientUnits:"userSpaceOnUse"},false);this.__defs.appendChild(r);return new i(r,this)};k.prototype.__parseFont=function(){var m=/^\s*(?=(?:(?:[-a-z]+\s*){0,2}(italic|oblique))?)(?=(?:(?:[-a-z]+\s*){0,2}(small-caps))?)(?=(?:(?:[-a-z]+\s*){0,2}(bold(?:er)?|lighter|[1-9]00))?)(?:(?:normal|\1|\2|\3)\s*){0,3}((?:xx?-)?(?:small|large)|medium|smaller|larger|[.\d]+(?:\%|in|[cem]m|ex|p[ctx]))(?:\s*\/\s*(normal|[.\d]+(?:\%|in|[cem]m|ex|p[ctx])))?\s*([-,\'\"\sa-z0-9]+?)\s*$/i;var l=m.exec(this.font);var n={style:l[1]||"normal",size:l[4]||"10px",family:l[6]||"sans-serif",weight:l[3]||"normal",decoration:l[2]||"normal",href:null};if(this.__fontUnderline==="underline"){n.decoration="underline"}if(this.__fontHref){n.href=this.__fontHref}return n};k.prototype.__wrapTextLink=function(m,n){if(m.href){var l=this.__createElement("a");l.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",m.href);l.appendChild(n);return l}return n};k.prototype.__applyText=function(q,l,r,p){var n=this.__parseFont(),o=this.__closestGroupOrSvg(),m=this.__createElement("text",{"font-family":n.family,"font-size":n.size,"font-style":n.style,"font-weight":n.weight,"text-decoration":n.decoration,x:l,y:r,"text-anchor":f(this.textAlign),"dominant-baseline":c(this.textBaseline)},true);m.appendChild(this.__document.createTextNode(q));this.__currentElement=m;this.__applyStyleToCurrentElement(p);o.appendChild(this.__wrapTextLink(n,m))};k.prototype.fillText=function(m,l,n){this.__applyText(m,l,n,"fill")};k.prototype.strokeText=function(m,l,n){this.__applyText(m,l,n,"stroke")};k.prototype.measureText=function(l){this.__ctx.font=this.font;return this.__ctx.measureText(l)};k.prototype.arc=function(t,s,q,r,m,v){if(r===m){return}r=r%(2*Math.PI);m=m%(2*Math.PI);if(r===m){m=((m+(2*Math.PI))-0.001*(v?-1:1))%(2*Math.PI)}var z=t+q*Math.cos(m),w=s+q*Math.sin(m),p=t+q*Math.cos(r),o=s+q*Math.sin(r),n=v?0:1,l=0,u=m-r;if(u<0){u+=2*Math.PI}if(v){l=u>Math.PI?0:1}else{l=u>Math.PI?1:0}this.lineTo(p,o);this.__addPathCommand(g("A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}",{rx:q,ry:q,xAxisRotation:0,largeArcFlag:l,sweepFlag:n,endX:z,endY:w}));this.__currentPosition={x:z,y:w}};k.prototype.clip=function(){var m=this.__closestGroupOrSvg(),l=this.__createElement("clipPath"),o=h(this.__ids),n=this.__createElement("g");this.__applyCurrentDefaultPath();m.removeChild(this.__currentElement);l.setAttribute("id",o);l.appendChild(this.__currentElement);this.__defs.appendChild(l);m.setAttribute("clip-path",g("url(#{id})",{id:o}));m.appendChild(n);this.__currentElement=n};k.prototype.drawImage=function(){var n=Array.prototype.slice.call(arguments),z=n[0],u,t,v,F,x=0,w=0,C,G,s,y,l,q,o,D,p,m,B;if(n.length===3){u=n[1];t=n[2];C=z.width;G=z.height;v=C;F=G}else{if(n.length===5){u=n[1];t=n[2];v=n[3];F=n[4];C=z.width;G=z.height}else{if(n.length===9){x=n[1];w=n[2];C=n[3];G=n[4];u=n[5];t=n[6];v=n[7];F=n[8]}else{throw new Error("Inavlid number of arguments passed to drawImage: "+arguments.length)}}}s=this.__closestGroupOrSvg();o=this.__currentElement;var r="translate("+u+", "+t+")";if(z instanceof k){y=z.getSvg().cloneNode(true);if(y.childNodes&&y.childNodes.length>1){l=y.childNodes[0];while(l.childNodes.length){B=l.childNodes[0].getAttribute("id");this.__ids[B]=B;this.__defs.appendChild(l.childNodes[0])}q=y.childNodes[1];if(q){var E=q.getAttribute("transform");var A;if(E){A=E+" "+r}else{A=r}q.setAttribute("transform",A);s.appendChild(q)}}}else{if(z.nodeName==="CANVAS"||z.nodeName==="IMG"){D=this.__createElement("image");D.setAttribute("width",v);D.setAttribute("height",F);D.setAttribute("preserveAspectRatio","none");if(x||w||C!==z.width||G!==z.height){p=this.__document.createElement("canvas");p.width=v;p.height=F;m=p.getContext("2d");m.drawImage(z,x,w,C,G,0,0,v,F);z=p}D.setAttribute("transform",r);D.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",z.nodeName==="CANVAS"?z.toDataURL():z.getAttribute("src"));s.appendChild(D)}}};k.prototype.createPattern=function(o,m){var n=this.__document.createElementNS("http://www.w3.org/2000/svg","pattern"),p=h(this.__ids),l;n.setAttribute("id",p);n.setAttribute("width",o.width);n.setAttribute("height",o.height);if(o.nodeName==="CANVAS"||o.nodeName==="IMG"){l=this.__document.createElementNS("http://www.w3.org/2000/svg","image");l.setAttribute("width",o.width);l.setAttribute("height",o.height);l.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",o.nodeName==="CANVAS"?o.toDataURL():o.getAttribute("src"));n.appendChild(l);this.__defs.appendChild(n)}else{if(o instanceof k){n.appendChild(o.__root.childNodes[1]);this.__defs.appendChild(n)}}return new e(n,this)};k.prototype.setLineDash=function(l){if(l&&l.length>0){this.lineDash=l.join(",")}else{this.lineDash=null}};k.prototype.drawFocusRing=function(){};k.prototype.createImageData=function(){};k.prototype.getImageData=function(){};k.prototype.putImageData=function(){};k.prototype.globalCompositeOperation=function(){};k.prototype.setTransform=function(){};this.dFw=k};CanvasXpress.prototype.initInterface=function(){this.yRc=function(c){var b=this;b.onX();b.aoV();var a=new XMLHttpRequest();a.open("GET",c,true);a.onreadystatechange=function(){if(a.readyState==4){if(a.status==200){var e=b.parseJSON(a.responseText);if(e){window.cXMap=e;b.updateData({data:false,config:{graphType:"Map",topoJSON:e,mapId:"cXMap"}});b.a74()}else{b.a74();alert("Oooops! Not a valid CanvasXpress json map file")}}else{b.a74();alert("Oooops! Not a valid CanvasXpress json map file")}}};a.send()};this.Vq0=function(h){this.onX();var i=h.target.files[0];var j=i.name.split(".");var a=new FileReader();var g=j.pop();if(g=="json"){a.onload=function(){try{var b=this.parseJSON(a.result);this.N8o();this.layoutValid=false;for(var p in b.config){this[p]=b.config[p]}if(b.afterRender){for(var d=0;d<b.afterRender.length;d++){var e=b.afterRender[d];var c=e[0];var f=e[1]||[];this[c].apply(this,f)}}else{this.U4z({func:"loadParamsFile",par:(r)})}}catch(r){alert("Oooops! Not a valid CanvasXpress json parameter file")}};a.readAsText(i)}else{alert("Oooops! Not a valid CanvasXpress json parameter file")}};this.ZYg=function(d){var g=[];var f=[];var h=[];var c=[];for(var b=0;b<d.links.length;b++){var a=d.links[b];if(a.source&&a.target&&a.value){h.push(a.source);c.push(a.target);f.push(a.value);g.push("Smp"+(b+1))}}var e={y:{vars:["Weight"],smps:g,data:[f]},x:{Source:h,Target:c}};return{renderTo:"newSankey",data:e,config:{graphType:"Sankey",sankeySource:"Source",sankeyTarget:"Target"}}};this.RHu=function(a){var b=this;var c=function(k){var w=0;var g=[];var q=[];var e={};var C=function(f,j,l,i){return Array.prototype.concat.apply(f.map(function(p){if(!e.hasOwnProperty(p.name)){e[p.name]=0}e[p.name]++;if(e[p.name]>1){p.name+=e[p.name]}var s=b.QWl(p);s.level=l||1;s.parent=i||null;return s}),f.map(function(p){w=Math.max(w,(l||1)+1);if(!p.children){g.push(p.name);q.push(p.value||1)}return C(j(p)||[],j,(l||1)+1,p.name)}))};var d=function d(f){return f.children||null};var h=C(d(k),d).map(function(f){f.n=f.children?f.children.length:0;return delete f.children&&f});var B={y:{vars:["Dummy"],smps:g,data:[q]},x:{}};for(var x=0;x<B.y.smps.length;x++){for(var v=0;v<h.length;v++){if(!h[v].n&&B.y.smps[x]==h[v].name){h[v].smp=x;break}}}var n=[];var z=a.name;B.x[z]=[];n.push(z);for(var x=2;x<w-1;x++){B.x[z+x]=[];n.push(z+x)}var A={};for(var x=0;x<h.length;x++){A[h[x].name]=x}for(var x=0;x<n.length;x++){for(var v=0;v<B.y.smps.length;v++){B.x[n[x]][v]=null}}for(var x=0;x<h.length;x++){if(h[x].parent){var r=h[x].parent;var t=A[r];var o=h[x].smp;var u=h[x].level-1;var y=h[t].parent;B.x[z+(u>1?u:"")][o]=h[t].name;while(y){t=A[y];u=h[t].level;B.x[z+(u>1?u:"")][o]=h[t].name;y=h[t].parent}}}return{renderTo:"newTree",data:B,config:{graphType:"Tree",hierarchy:n}}};return c(a)};this.xZT=function(a,c,h,b,f){var d=b?b:(a.target?a.target.files[0]:a.files[0]);if(!d){return}var i=d.type;var e=d.name.split(".");var g=e[e.length-1].toLowerCase();this.FRY(a);this.onX();this.aoV();if(i==="image/png"){this.yMr(d,h)}else{if(i==="application/x-bzip2"){this.ei0(d,e)}else{if(g==="parquet"){this.iiy(d,e,h)}else{if(g==="json"){this.heA(d,a,c,h,b)}else{if(g==="geojson"){this.Gx3(d)}else{if(g==="svg"){this.t7Y(d,h)}else{if(["txt","csv","tsv","tab","lsk","sql"].indexOf(g)>-1){this.fXj(d,e,g,f,h)}else{if(g==="esv"){this.xrk(d,e,h)}else{if(g==="gml"){this.yt8(d,e,h)}else{if(g.match(/ml$/)||g==="gexf"){this.YuN(d,e,g,h)}else{this.a74()}}}}}}}}}}};this.K7J=function(d){if(d.features&&Array.isArray(d.features)){for(var b=0;b<d.features.length;b++){for(var a=0;a<this.mapZipCodeIds.length;a++){var c=this.mapZipCodeIds[a];if(c&&d.features[b].properties&&d.features[b].properties[c]){var e=d.features[b].properties[c];if(!isNaN(e)&&e.toString().length<5){e=e.toString().padStart(5,"0");d.features[b].properties[c]=e}}}}}return d};this.ZR4=function(c){var b=c.config;if(b&&b.backgroundImage){if(!Array.isArray(b.backgroundImage)&&b.backgroundImage.match(/^javascript:\/\//)&&b.backgroundImageSrc){var a=new Image();a.id=b.backgroundImage.split("//")[1];a.style.display="none";a.src="data:image/png;base64,"+atob(b.backgroundImageSrc);document.body.appendChild(a);CanvasXpress.cacheImages[this.AmM(a.src)]=a}else{if(Array.isArray(b.backgroundImage)){b.backgroundImageMD5=this.BSV(b.backgroundImage);var a=new Image();a.onload=function(){CanvasXpress.cacheImages[b.backgroundImageMD5]=this};a.crossOrigin="anonymous";a.src=this.RuI(b.backgroundImage)}}}};this.yMr=function(d,f){var e=this;var a=new FileReader();var c=function(h,k){var g="";for(var j=0;j<4;j++){g+=String.fromCharCode(h.getUint8(k+j))}return g==="tEXt"};var b=function(g,l,k){var j="";for(var h=0;h<k;h++){j+=String.fromCharCode(g.getUint8(l+h))}return j.match(/CanvasXpress/)};a.onload=function(){var q=new DataView(this.result);var j=q.getUint32(8);var o=q.getUint32(8+4+4+j+4);if(c(q,8+4+4+j+4+4)&&b(q,8+4+4+j+4+4+4,o)){var g=q.getUint32(8+4+4+j+4+4+4+o+4);var r=8+4+4+j+4+4+4+o+4+4+4;var h="";for(var k=0;k<g;k++){h+=String.fromCharCode(q.getUint8(r+k))}h=h.replace("ReproducibleResearch\0","");var p;try{p=e.parseJSON(decodeURIComponent(h))}catch(l){p=e.parseJSON(h)}e.ZR4(p);var n=e.$w;if(p.config[n(0)]){e.a74();e.a4g(p)}else{e.p9p(p,f);e.a74()}}else{e.a74();e.backgroundImage="data:image/png;base64, "+e.kEJ(this.result);e.xmv({func:"changeAttribute",par:["backgroundImage",e.backgroundImage]});e.backgroundType="image";e.xmv({func:"changeAttribute",par:["backgroundType","image"]});e.skipStack=true;e.U4z();e.skipStack=false;alert("Oooops! Not a valid CanvasXpress Image\nUsing image as background!")}};a.readAsArrayBuffer(d)};this.ei0=function(c,b){var d=this;var a=new FileReader();a.onload=function(){var f=d.bz2(this.result);if(b[1].match(/ml$/)){try{CanvasXpress.loadRemoteData(b[0],f,false,false,d.updateRemoteData)}catch(g){d.a74();alert("Oooops! Not a valid bz2 file for CanvasXpress")}}else{d.a74();alert("Oooops! Not a valid bz2 file for CanvasXpress")}};a.readAsBinaryString(c)};this.iiy=function(c,b,e){var d=this;var a=new FileReader();a.onload=function(){try{var h=d.WLt(a.result);var f=d.arrayToCX(h.data,h.config);f.renderTo=b[0];d.p9p(f,e);d.a74()}catch(g){d.a74();alert("Oooops! Not a valid parquet file for CanvasXpress")}};a.readAsArrayBuffer(c)};this.heA=function(d,f,c,g,b){var e=this;var a=new FileReader();a.onload=function(){try{var n=e.parseJSON(a.result);e.ZR4(n);var l=e.$w;if(n.config&&n.config[l(0)]){e.a74();e.a4g(n)}else{if(n.data||(n&&n.config&&n.config.graphType==="Map")){if(n.config.topoJSON){if(n.config.mapId){delete window[n.config.mapId];delete e.meta.map;delete e.topoJSON}}else{if(e.graphType==="Map"&&e.y9v(n)){e.U4z();e.a74();return}}e.p9p(n,g);e.a74()}else{if(n.config){e.N8o();e.layoutValid=false;for(var j in n.config){e[j]=n.config[j]}if(n.afterRender){for(var h=0;h<n.afterRender.length;h++){var k=n.afterRender[h];e[k[0]].apply(e,k[1]||[])}}else{e.U4z({func:"loadFile",par:[f,c,g,b]})}}else{if(n.children&&n.children.length){n=e.RHu(n);e.p9p(n,g);e.a74()}else{if(n.nodes&&n.links){n=e.ZYg(n);e.p9p(n,g);e.a74()}else{if(n.type&&n.type.match(/FeatureCollection|Topology/)){var p={data:false,config:{graphType:"Map",topoJSON:e.K7J(n),mapId:"cXMap"}};window.cXMap=n;e.updateData(p);e.a74()}}}}}}}catch(o){e.a74();alert("Oooops! Not a valid CanvasXpress json file")}};a.readAsText(d)};this.Gx3=function(b){var c=this;var a=new FileReader();a.onload=function(){try{var d=c.K7J(c.parseJSON(a.result));c.hgA(c.QWl(c.data.y.vars),true);var g=c.QWl(c.data);for(var f=0;f<d.features.length;f++){g.y.vars[f]="Id"+(f+1);g.y.data[f]=[0]}if(d.type&&d.type.match(/FeatureCollection|Topology/)){var j={data:g,config:{graphType:"Map",topoJSON:d,mapId:"cXMap"}};window.cXMap=d;c.updateData(j);c.a74()}}catch(h){c.a74();alert("Oooops! Not a valid geojson file")}};a.readAsText(b)};this.t7Y=function(b,d){var c=this;var a=new FileReader();a.onload=function(){try{var g=c.SVGtoCX(a.result);var f=c.$w;if(g.config[f(0)]){c.a74();c.a4g(g)}else{c.p9p(g,d);c.a74()}}catch(h){c.a74();alert("Oooops! Not a valid CanvasXpress json file")}};a.readAsText(b)};this.fXj=function(c,b,g,e,f){var d=this;var a=new FileReader();a.onload=function(){try{var i=a.result;var h;if(d.graphType==="Network"){h=d.arrayToCXNetwork(d.parseDelimited(i),false,false,false,d.data);if(h&&!d.Zuk(h)){var k=h.fail>0?h.fail+" records couldn't be mapped to network data":"";alert(h.rows+" "+h.type+" records added to network data\n"+k);if(h.type==="node"){d.xJG(h.data)}else{d.E32(h.data)}d.a74();return}else{h=d.arrayToCX(d.parseDelimited(i))}}else{h=d.qPL(d.parseDelimited(i),d.graphType==="Map");if(h&&!d.Zuk(h)){alert(h.recs+(h.addt?" records added as an additional data set\n":" records added to meta data\n"));d.XKH(h.data,h.addt);d.a74();return}else{if(g==="lsk"||g==="sql"){h=d.arrayToCX(CanvasXpress.U8i(d.parseDelimited(i)))}else{h=d.arrayToCX(d.parseDelimited(i))}}}h.renderTo=b[0].replace(/\s/g,"").replace(/\(/g,"").replace(/\)/g,"");if(e){h.config.view="table"}d.p9p(h,f);d.a74()}catch(j){d.a74();alert("Oooops! Not a valid CanvasXpress delimited file")}};a.readAsText(c)};this.xrk=function(c,b,e){var d=this;var a=new FileReader();a.onload=function(){try{var f=d.arrayToCXNetwork(d.parseDelimited(a.result),false,false,false,d.data,"edge");f.renderTo=b[0];d.p9p(f,e);d.a74()}catch(g){d.a74();alert("Oooops! Not a valid CanvasXpress delimited file")}};a.readAsText(c)};this.yt8=function(c,b,e){var d=this;var a=new FileReader();a.onload=function(){try{var f=d.xIp(a.result);f.renderTo=b[0];d.p9p(f,e);d.a74()}catch(g){d.a74();alert("Oooops! Not a valid gml file for CanvasXpress")}};a.readAsText(c)};this.YuN=function(c,b,f,e){var d=this;var a=new FileReader();a.onload=function(){try{CanvasXpress.loadRemoteData(b[0],a.result,false,false,d.updateRemoteData)}catch(g){d.a74();alert("Oooops! Not a valid "+f+" file for CanvasXpress")}};a.readAsText(c)};this.oXW=function(h,g){if(this.isEditable||g){var a=this.WI1();var j="<link rel='stylesheet' href='https://www.canvasxpress.org/dist/canvasXpress.css' type='text/css'/>\n";j+="<script type='text/javascript' src='https://www.canvasxpress.org/dist/canvasXpress.min.js'><\/script>\n\n";j+="<canvas id='"+this.target+"' width='"+this.width+"' height='"+this.height+"'></canvas>";var b=this.$cX("form",{id:"submitToJSFiddle",method:"post",action:"https://jsfiddle.net/api/post/library/pure/",target:"check"},{display:"none"});document.body.appendChild(b);var d=this.$cX("textarea",{name:"title",value:(this.title||"CanvasXpress")});var i=this.$cX("textarea",{name:"html",value:j});var k=this.$cX("textarea",{name:"js",value:a});var c=this.$cX("button",{type:"submit"});b.appendChild(d);b.appendChild(i);b.appendChild(k);b.appendChild(c);c.click();document.body.appendChild(b)}};this.ac5=function(i,h){if(this.isEditable||h){this.onX();var a=this.WI1().replace(/\'/g,"");var k='<link rel="stylesheet" href="https://www.canvasxpress.org/dist/canvasXpress.css" type="text/css"/>\n';k+='<script type="text/javascript" src="https://www.canvasxpress.org/dist/canvasXpress.min.js"><\/script>\n\n';k+='<canvas id="'+this.target+'" width="'+this.width+'" height="'+this.height+'"></canvas>';var c="https://www.canvasxpress.org/dist/canvasXpress.css;https://www.canvasxpress.org/dist/canvasXpress.min.js";var g='{"title": "'+(this.title||"CanvasXpress")+'", "html": "'+k+'" js: "'+a+'" js_external: "'+c+'"}';g='{"title": "CanvasXpress", "html": "'+k.replace(/"/g,"'")+'", "js": "'+a.replace(/"/g,"'")+'", "js_external": "'+c.replace(/"/g,"'")+'"}';var b=this.$cX("form",{id:"submitToCodePen",method:"post",action:"https://codepen.io/pen/define",target:"_blank"},{display:"none"});document.body.appendChild(b);var j=this.$cX("input",{type:"hidden",name:"data",value:g});var d=this.$cX("button",{type:"submit"});b.appendChild(j);b.appendChild(d);d.click();document.body.appendChild(b)}};this.dJL=function(){this.suI();var e=CanvasXpress.stack[this.target];var b=e.afterRender;var c=[];for(var d=0;d<b.length;d++){if(b[d][0].match(/^sort/)){c.push(this.QWl(b[d]))}}return{renderTo:e.renderTo,data:this.UO2(),config:this.ZlV(),afterRender:c,factory:e.factory,system:e.system,version:e.version}};this.jTD=function(){var a=CanvasXpress.stack[this.target]||{};return{version:1,timestamp:(new Date()).getTime(),renderTo:a.renderTo||this.target,data:this.QWl(a.data),config:this.QWl(a.config),afterRender:this.QWl(a.afterRender||[]),cxVersion:a.version}};this.tGf=function(b){if(!b||!b.data){return false}var a={renderTo:b.renderTo||this.target,data:b.data,config:b.config||{},afterRender:b.afterRender||[]};this.Axj(this.target,true);new CanvasXpress(a,null,null,null,null,null,null,null,true);return true};this.fti=function(){return this.gfi(this.jTD())};this.aDU=function(c){var a=c;if(typeof c==="string"){try{a=this.parseJSON(c)}catch(b){return false}}return this.tGf(a)};this.UO2=function(){if(this.graphType!="Network"){return this.data}var b={};for(var a in this.data){if(this.data.hasOwnProperty(a)&&a!="nodes"&&a!="edges"){b[a]=this.data[a]}}b.nodes=this.uAC(JSON.parse(JSON.stringify(this.jj7())));b.edges=this.Vtu(JSON.parse(JSON.stringify(this.n1Z())));return b};this.save=function(i,h,c,d){var b=this.$w;var k=this.$pX();this.onX();var j=h?h+".json":this.saveFilename?this.saveFilename+".json":"cX-"+this.target+".json";j=j.replace(/.json.json$/,".json");CanvasXpress.stack[this.target].factory=CanvasXpress.factory;CanvasXpress.stack[this.target].system=CanvasXpress.system;if(k){CanvasXpress.stack[this.target].data=that[b(9)](this.gfi(CanvasXpress.stack[this.target].data),k);CanvasXpress.stack[this.target].config[b(0)]=true}var g;if(c){g=this.Bm7({config:CanvasXpress.stack[this.target].config,afterRender:CanvasXpress.stack[this.target].afterRender||[]})}else{if(d||(i&&(i.ctrlKey||i.altKey))){g=this.dJL()}else{g=this.zVl(this.hiU(CanvasXpress.stack[this.target]))}}var a=new Blob([this.Bm7(g)],{type:"text/plain"});this.eMT(a,j)};this.saveSVG=function(i,h){var d=this.$pX();var b=this.$w;this.onX();CanvasXpress.stack[this.target].factory=CanvasXpress.factory;CanvasXpress.stack[this.target].system=CanvasXpress.system;this.isSVG=true;var k=this.showTransition;var c=this.zVl(this.hiU(CanvasXpress.stack[this.target]));if(d){c.data=that[b(9)](this.gfi(c.data),d);c.config[b(0)]=true}c=this.isReproducibleResearch?this.gfi(c):"";this.showTransition=false;this.meta.canvas.SVG=new this.dFw({width:this.width,height:this.height,desc:c});this.meta.canvas.SVG.render=function(){var f=this.o.length;for(var q=0;q<f;q++){var s=this.o[q];var n=s.funcs;for(var j in s){if(j!=="funcs"){this[j]=s[j]}}if(n){var r=n.length;for(var j=0;j<r;j++){var e=n[j];var p=e[0];if(this[p]){this[p].apply(this,e[1])}}}}};this.meta.canvas.SVG.resetRender=function(){this.o=[]};this.meta.canvas.SVG.resetContext=function(){this.direction="ltr";this.fillStyle="#000000";this.filter="none";this.font="10px sans-serif";this.fontKerning="auto";this.fontStretch="normal";this.fontVariantCaps="normal";this.globalAlpha=1;this.globalCompositeOperation="source-over";this.imageSmoothingEnabled=true;this.imageSmoothingQuality="low";this.letterSpacing="0px";this.lineCap="butt";this.lineDashOffset=0;this.lineJoin="miter";this.lineWidth=1;this.miterLimit=10;this.shadowBlur=0;this.shadowColor="rgba(0, 0, 0, 0)";this.shadowOffsetX=0;this.shadowOffsetY=0;this.strokeStyle="#000000";this.textAlign="start";this.textBaseline="alphabetic";this.textRendering="auto";this.wordSpacing="0px"};this.J78(true);var g=this.meta.canvas.SVG.getSerializedSvg();if(this.isReproducibleResearch){this.FmO(100,100,"<h2>Please be aware <br>the actual data is stored<br>inside the downloaded image</h2>",5000)}var l=h?h+".svg":this.saveFilename?this.saveFilename+".svg":"cX-"+this.target+".svg";l=l.replace(/.svg.svg$/,".svg");var a=new Blob([g],{type:"image/svg+xml"});this.eMT(a,l);this.showTransition=k;delete (this.meta.canvas.SVG);this.isSVG=false};this.kEJ=function(c){var e="";var b=new Uint8Array(c);var a=b.byteLength;for(var d=0;d<a;d++){e+=String.fromCharCode(b[d])}return window.btoa(e)};this.xpE=function(c){var d=window.atob(c);var a=d.length;var b=new Uint8Array(a);for(var e=0;e<a;e++){b[e]=d.charCodeAt(e)}return b.buffer};this.sdH=function(){if(this.useLeaflet){var b=this.$("leaflet-"+this.target);if(b){var a=this.meta.canvas.ctx.canvas;var h=this.$cX("canvas",{width:this.width,height:this.height});var c=h.getContext("2d");var e=b.getElementsByTagName("img");for(var d=0;d<e.length;d++){var f=e[d];var j=f._leaflet_pos.x;var g=f._leaflet_pos.y;c.t4Q(f,j,g,256,256)}c.t4Q(a,0,0,this.width,this.height);return h}}};this.print=function(p,n,e){var f=this;var d=window;var t=f.width;var k=f.height;var q=f.printMagnification;var g=f.autoScaleFont;var o=f.showTransition;var i=f.skipStack;var s=["outlineWidth","lineThickness","xAxisGridMajorWidth","yAxisGridMajorWidth","zAxisGridMajorWidth","xAxisGridMinorWidth","yAxisGridMinorWidth","zAxisGridMinorWidth","xAxisLineLeftWidth","xAxisLineRightWidth","yAxisLineTopWidth","yAxisLineBottomWidth","guidesWidth","boxplotMedianWidth","boxplotConnectWidth","treeLinkWidth","connectByWidth","histogramBarWidth","heatmapCellBoxWidth","heatmapCellBoxHighlightWidth","edgeThickness","maxTextSize","treemapBorderWidth","errorBarsThickness","ganttDependencyThickness"];var r=function(w){if(q===1){return}if(w){for(var v=0;v<s.length;v++){f[s[v]]/=q}f.autoScaleFont=g;f.showTransition=o;f.setDimensions(t,k,true);f.skipStack=i}else{f.skipStack=true;f.showTransition=false;for(var v=0;v<s.length;v++){f[s[v]]*=q}f.autoScaleFont=true;f.setDimensions(t*q,k*q,true)}};var b=function(){var y;var w=[];for(var x=0;x<256;x++){y=x;for(var v=0;v<8;v++){y=((y&1)?(3988292384^(y>>>1)):(y>>>1))}w[x]=y}return w};var j=function(y){var v=d.crcTable||(d.crcTable=b());var x=0^(-1);for(var w=0;w<y.length;w++){x=(x>>>8)^v[(x^y.charCodeAt(w))&255]}return(x^(-1))>>>0};var c=function(w,v){var x=new Uint8Array(w.byteLength+v.byteLength);x.set(new Uint8Array(w),0);x.set(new Uint8Array(v),w.byteLength);return x.buffer};var a=function(A){var y="tEXt";var z=A.length;var B=j(y+A);var w=new ArrayBuffer(12+z);var v=new DataView(w);v.setUint32(0,z);for(var x=0;x<y.length;x++){v.setUint8(4+x,y.charCodeAt(x))}for(var x=0;x<A.length;x++){v.setUint8(8+x,A.charCodeAt(x))}v.setUint32(8+z,B);return w};var u=function(){var v=false;var w=f.$pX();var x=f.$w;if(f.isReproducibleResearch){if(f.printMagnification!=1){delete (CanvasXpress.stack[f.target].config.showTransition)}if(p&&(p.ctrlKey||p.altKey)){v=f.dJL()}else{v=f.zVl(f.hiU(CanvasXpress.stack[f.target]))}}else{v=f.parseJSON(p.ctrlKey||p.altKey?f.dJL():f.gfi(CanvasXpress.stack[f.target]));v.afterRender=[v.afterRender[0]]}if(w){v.config[x(0)]=true;v.data=f[x(9)](f.gfi(v.data),w)}return encodeURIComponent(f.gfi(v))};var h=function(w){var v=new FileReader();var x=f.isReproducibleResearch?"<h2>Please be aware that the actual data is stored inside the image! Right click to save!</h2>":"<h2>Right click to save image</h2>";v.onload=function(y){x+="<img width="+f.width+" height="+f.height+' src="'+y.target.result+'"/>';f.JDY(p,x,f.hw4(p),{maxWidth:f.width+"px",whiteSpace:"normal"},40,40)};v.readAsDataURL(w)};r();this.onX();CanvasXpress.stack[f.target].factory=CanvasXpress.factory;CanvasXpress.stack[f.target].system=CanvasXpress.system;if(!CanvasXpress.factory.valid){this.$$$("CanvasXpress")}var l=this.useLeaflet?this.sdH():this.meta.canvas.ctx.canvas;l.toBlob(function(w){var v=new FileReader();var x=n?n+".png":(f.saveFilename?f.saveFilename+".png":"cX-"+f.target+".png");x=x.replace(/\.png\.png$/,".png");v.onloadend=function(){var D=new DataView(this.result);var A=D.getUint32(8);var y=8+4+4+A+4;var z=this.result.slice(0,y);var C=this.result.slice(y);var B=a("Software\0CanvasXpress Version: "+CanvasXpress.factory.version);var G=a("ReproducibleResearch\0"+u());var F=c(z,B);F=c(F,G);F=c(F,C);var E=new Blob([F],{type:"image/png"});f.meta.base64=f.kEJ(F);if(e){e(E,x)}else{if(f.printType==="download"){if(f.isReproducibleResearch){f.FmO(100,100,"<h2>Please be aware <br>the actual data is stored<br>inside the downloaded image</h2>",5000)}f.eMT(E,x)}else{h(E)}}r(true)};v.readAsArrayBuffer(w)},"image/png")};this.rtp=function(d){var a=this.meta.canvas.ctx;this.meta.canvas.ctx=new this.dFw({width:this.width,height:this.height});this.U4z({func:"exportToSVG",par:[d]});var b=this.Ycu(this.meta.canvas.ctx.getSerializedSvg());var c=window.open("",this.target+"-SVG");c.document.write(b);this.meta.canvas.ctx=a;this.U4z({func:"exportToSVG",par:[d]});return false};this.pMR=function(a){return this.Adn(a)};this.hVp=function(e,b){var c="<table>";for(var a=0;a<e.length;a++){c+="<tr><td>";c+=e[a].join("</td><td>");c+="</td></tr>"}c+="</table>";return b?c:window.open().document.write(c)};this.Adn=function(e){var c="";for(var a=0;a<e.length;a++){c+=e[a].join("\t")+"\n"}var b=this.$(this.target+"-cX-linkTab");if(!b){b=this.$cX("a",{id:this.target+"-cX-linkTab"},{display:"none"});window.document.body.appendChild(b)}b.download=this.target+".tsv";b.href="data:text/tab-separated-values;charset=UTF-8,"+encodeURIComponent(c);b.click()};this.BhE=function(e){if(!e||!e.data||!e.meta){return""}var d='<div class="cX-DataTable-Container">';d+='<table class="cX-DataTable-Tooltip">';d+="<tbody>";var c=e.data[0];d+='<tr class="cX-DataTable-Row">';for(var b=0;b<c.length;b++){d+='<th class="cX-DataTable-Cell-Head">';d+='<div class="cX-DataTable-Cell-Tooltip">'+c[b]+"</div>";d+="</th>"}d+="</tr>";for(var h=1;h<e.data.length;h++){var g=e.data[h];d+='<tr class="cX-DataTable-Row">';for(var b=0;b<c.length;b++){var f=g[b];if(b===0){d+='<th class="cX-DataTable-Cell-Head">';d+='<div class="cX-DataTable-Cell-Tooltip">'+f+"</div>";d+="</th>"}else{d+='<td class="cX-DataTable-Cell">';var a=(e.meta.colr&&e.meta.colr[h])?e.meta.colr[h][b]:undefined;if(a){d+='<div class="cX-DataTable-Cell-Tooltip" style="background-color:'+a+';">'+f+"</div>"}else{d+='<div class="cX-DataTable-Cell-Tooltip">'+f+"</div>"}d+="</td>"}}d+="</tr>"}d+="</tbody>";d+="</table>";d+="</div>";return d};this.mID=function(){var h=new Set(["xAxis","yAxis","zAxis","rAxis","xAxis2","graphType","dataTableTransposed","layoutAxis","showHistogram","showHistogramDensity","isContour","showTransition","showAnimation","scatterType","circularType","barType","ringOrder","showViolinBoxplot"]);var b=this.ZlV();var f=b.graphType;if(this.showHistogram){f=this.ridgeBy?"Ridgeline":this.showHistogramDensity?"Density":"Histogram"}else{if(this.isContour){f="Contour"}else{if(b.scatterType){f=this.W9g(b.scatterType);if(f=="Bin2d"){f="Binplot"}else{if(f=="Km"){f="Kaplan-Meier"}else{if(f=="Qq"){f="QQ"}}}}else{if(b.circularType){f=this.W9g(b.circularType)}else{if(b.barType){f=this.W9g(b.barType)}else{if(this.scatterPlotMatrix){f="SPLOM"}else{if(this.showViolinBoxplot){f="Violin"}}}}}}}var e=CanvasXpress.doc.P.graphType.L.replace("{_value_}",f)+(this.scatterPlotMatrix?". ":" of ");if(b.rAxis){e+=b.rAxis.join(", ")+" in the R axis";if(b.yAxis){e+=" and "+b.yAxis.join(", ")+" in the Y axis"}e+=". "}else{if(b.xAxis&&b.xAxis2){e+=b.xAxis.join(", ")+" in the X axis and "+b.xAxis2.join(", ")+" in the secondary X axis. "}else{if(b.xAxis&&b.yAxis&&b.zAxis){e+=b.xAxis.join(", ")+" in the X axis, "+b.yAxis.join(", ")+" in the Y axis and "+b.zAxis.join(", ")+" in the Z axis. "}else{if(b.xAxis&&b.yAxis){if(this.showHistogram||b.xAxis[0]==b.yAxis[0]){e+=b.xAxis.join(", ")+". "}else{e+=b.xAxis.join(", ")+" in the X axis and "+b.yAxis.join(", ")+" in the Y axis. "}}else{if(b.xAxis){e+=b.xAxis.join(", ")+". "}}}}}for(var a in b){if(!a.match(/^llm/)&&!h.has(a)){var c=CanvasXpress.doc.P[a].L;var j=CanvasXpress.doc.P[a].T;if(c.match(/^\{/)&&j=="boolean"){var k=c.match(/^\{(.+?)\|(.+?)\}/);if(b[a]){e+=c.replace(/\{.+?\}/,k[1])+". "}else{e+=c.replace(/\{.+?\}/,k[2])+". "}}else{if(a=="sortData"){var k=b[a][0];if(k.length&&k.length>2){e+=k[1]==="var"?"Sort variables by "+k[2]+". ":"Sort samples by "+k[2]+". "}}else{if(a.match(/^filter/)){var g=this.meta.config.user.filterData;if(g){for(var d=0;d<g.length;d++){e+="Filter data that is "+g[d][2]+" to "+g[d][3].join(", ")+". "}}}else{if(a.match(/ScaleFontFactor/)){var k=c.match(/^\{(.+?)\|(.+?)\}/);if(b[a]>1){e+=c.replace(/\{.+?\}/,k[1]).replace("{_value_}",b[a])+". "}else{e+=c.replace(/\{.+?\}/,k[2]).replace("{_value_}",b[a])+". "}}else{if(j=="array"){e+=c.replace("{_value_}",b[a].join(", "))+". "}else{if(j=="object"){}else{e+=c.replace("{_value_}",b[a])+". "}}}}}}}}return this.Pfe(e,60)};this.JpX=function(g){var h=[];var b=g.split(/\n(?=(?:(?:[^"]*"){2})*[^"]*$)/);var c=["header","quote","row.names","fill","check.names","stringsAsFactors"];var f=false;for(var e=0;e<b.length;e++){var a=b[e];if(a.match(/library\(canvasXpress\)/)){h.push(a.replace("library(canvasXpress)",'library(<span class="cX-Code-Value">canvasXpress</span>)'))}else{if(a.match(/canvasXpress\(/)){h.push(a.replace("canvasXpress(",'<span class="cX-Code-Value">canvasXpress</span>('));f=true}else{if(a.match(/\"http.+\"/)){a=a.replace(/(\"http.+?\")/,'<span class="cX-Code-String">$1</span>');for(var d=0;d<c.length;d++){a=a.replace(c[d],'<span class="cX-Code-Key">'+c[d]+"</span>")}a=a.replace('""','<span class="cX-Code-String">""</span>,');a=a.replace(/\"\t\"/,'<span class="cX-Code-String">"&#92;t"</span>');a=a.replace("=1,",'=<span class="cX-Code-Number">1</span>,');a=a.replace(/FALSE/g,'<span class="cX-Code-Boolean">FALSE</span>');a=a.replace(/TRUE/g,'<span class="cX-Code-Boolean">TRUE</span>');h.push(a)}else{if(f){if(a.match(/\".+?\"/)){a=a.replace(/(\".+?\")/g,'<span class="cX-Code-String">$1</span>')}else{if(a.match(/[^xis][\d\.]+/)){a=a.replace(/([\d\.]+)/,'<span class="cX-Code-Number">$1</span>')}}a=a.replace(/\n/,"&#92;n");a=a.replace(/(\w+)?=/,'<span class="cX-Code-Key">$1=</span>');a=a.replace(/FALSE/g,'<span class="cX-Code-Boolean">FALSE</span>');a=a.replace(/TRUE/g,'<span class="cX-Code-Boolean">TRUE</span>')}h.push(a)}}}}return'<pre class="cX-Code-Content">\n<code>'+h.join("</code>\n<code>")+"</code>\n</pre>"};this.LML=function(e,d,f,b){var a=this.gfi(e,d?d:null,2);if(a.length>10000){f=false}if(f){a=a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}a=a.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g,function(g){var c="Number";if(/^"/.test(g)){if(/:$/.test(g)){g=g.replace(":"," =");c="Key"}else{c="String"}}else{if(/true|false/.test(g)){g=g.replace("false","FALSE").replace("true","TRUE");c="Boolean"}else{if(/null/.test(g)){g=g.replace("null","NULL");c="Null"}}}return f?('<span class="cX-Code-'+c+'">'+g+"</span>"):g});if(b){return a.replace(/\[/g,"list(").replace(/]/g,")").replace(/{/g,"list(").replace(/}/g,")").replace(/^list\(\n/,"").replace(/\)$/,"")}else{return a.replace(/\[/g,"list(").replace(/]/g,")").replace(/{/g,"list(").replace(/}/g,")").replace(/^list\(\n/,"").replace(/\)$/,"")}};this.H0N=function(){var g=[];var n=[];var o,b,r,a,p,h;var k="";var f=CanvasXpress.stack[this.target].data;var q="<span class=cX-Code-Value>canvasXpress</span>(\n";if(this.meta.config.remote&&!this.kgc(this.meta.config.remote.data)){if(this.meta.config.remote.data===false){k+="data = FALSE\n"}else{k+='data = "'+this.meta.config.remote.data+'"\n'}q+=" <span class=cX-Code-Key>data</span> = data,\n"}else{if(this.graphType=="Map"&&!this.kgc(this.meta.config.remote.data)){k+="";q+=" <span class=cX-Code-Key>data</span> = <span class=cX-Code-Value>FALSE</span>,\n"}else{if(f.y){g=[];for(var e=0;e<f.y.vars.length;e++){var l=[];for(var d=0;d<f.y.smps.length;d++){l.push(f.y.data[e][d]!=null?f.y.data[e][d]:"NA")}g.push("<span class=cX-Code-Number>"+l.join("</span>,<span class=cX-Code-Number>")+"</span>,")}g[g.length-1]=g[g.length-1].replace(/,$/,"");b="vals = c("+g.join("\n")+")\n";r='vars = c(<span class=cX-Code-String>"'+f.y.vars.join('"</span>,\n<span class=cX-Code-String>"')+'"</span>)\n';a='smps = c(<span class=cX-Code-String>"'+f.y.smps.join('"</span>,\n<span class=cX-Code-String>"')+'"</span>)\n';p="data = as.data.frame(matrix(vals, <span class=cX-Code-Key>nrow</span> = <span class=cX-Code-Number>"+f.y.vars.length+"</span>, <span class=cX-Code-Key>ncol</span> = <span class=cX-Code-Number>"+f.y.smps.length+"</span>, <span class=cX-Code-Key>byrow</span> = <span class=cX-Code-Boolean>TRUE</span>, <span class=cX-Code-Key>dimnames</span> = list(vars, smps)))\n";k+=b+r+a+p;q+=" <span class=cX-Code-Key>data</span> = data,\n"}if(f.x){g=[];n=[];b="";for(var e in f.x){var c=this.meta.data.x&&this.meta.data.x[e]?this.meta.data.x[e].type:this.meta.data.z&&this.meta.data.z[e]?this.meta.data.z[e].type:"fail";if(c=="Numeric"){g.push("<span class=cX-Code-Number>"+f.x[e].join("</span>,\n<span class=cX-Code-Number>")+"</span>,")}else{g.push('<span class=cX-Code-String>"'+f.x[e].join('"</span>,\n<span class=cX-Code-String>"')+'"</span>,')}n.push(e)}g[g.length-1]=g[g.length-1].replace(/,$/,"");b="valx = c("+g.join("\n ")+")\n";if(this.graphType=="Tree"){b=b.replace(/\"\"/g,"NA")}r='varx = c(<span class=cX-Code-String>"'+n.join('"</span>,<span class=cX-Code-String>"')+'"</span>)\n';p="datx = as.data.frame(matrix(valx, <span class=cX-Code-Key>nrow</span> = <span class=cX-Code-Number>"+n.length+"</span>, <span class=cX-Code-Key>ncol</span> = <span class=cX-Code-Number>"+f.y.smps.length+"</span>, <span class=cX-Code-Key>byrow</span> = <span class=cX-Code-Boolean>TRUE</span>, <span class=cX-Code-Key>dimnames</span> = list(varx, smps)))\n";k+=b+r+p;q+=" <span class=cX-Code-Key>smpAnnot</span> = datx,\n"}if(f.z){g=[];n=[];b="";for(var e in f.z){var c=this.meta.data.z&&this.meta.data.z[e]?this.meta.data.z[e].type:this.meta.data.x&&this.meta.data.x[e]?this.meta.data.x[e].type:"fail";if(c=="Numeric"){g.push("<span class=cX-Code-Number>"+f.z[e].join("</span>,\n<span class=cX-Code-Number>")+"</span>,")}else{g.push('<span class=cX-Code-String>"'+f.z[e].join('"</span>,\n<span class=cX-Code-String>"')+'"</span>,')}n.push(e)}g[g.length-1]=g[g.length-1].replace(/,$/,"");b="valz = c("+g.join("\n ")+")\n";a='smpz = c(<span class=cX-Code-String>"'+n.join('"</span>,<span class=cX-Code-String>"')+'"</span>)\n';p="datz = as.data.frame(matrix(valz, <span class=cX-Code-Key>nrow</span> = <span class=cX-Code-Number>"+f.y.vars.length+"</span>, <span class=cX-Code-Key>ncol</span> = <span class=cX-Code-Number>"+n.length+"</span>, <span class=cX-Code-Key>byrow</span> = <span class=cX-Code-Boolean>FALSE</span>, <span class=cX-Code-Key>dimnames</span> = list(vars, smpz)))\n";k+=b+a+p;q+=" <span class=cX-Code-Key>varAnnot</span> = datz,\n"}if(f.nodes){k+="nodes = list(\n"+this.LML(f.nodes,function(j,i){if(j!="layout"){return i}},false,true)+")\n";q+=' <span class=cX-Code-Key>"nodeData"</span> = nodes,\n'}if(f.edges){k+="edges = list(\n"+this.LML(f.edges,false,false,true)+")\n";q+=' <span class=cX-Code-Key>"edgeData"</span> = edges,\n'}if(f.groups){k+="groups = list(\n"+this.LML(f.groups,false,false,true)+")\n";q+=' <span class=cX-Code-Key>"groupData"</span> = groups,\n'}if(f.constraints){k+="constraints = list(\n"+this.LML(f.constraints,false,false,true)+")\n";q+=' <span class=cX-Code-Key>"constraintData"</span> = constraints,\n'}if(f.venn){k+="venn = data.frame(\n"+this.LML(f.venn.data,false,true)+")\n";q+=" <span class=cX-Code-Key>vennData</span> = venn,\n";if(f.venn.legend){k+="legn = data.frame(\n"+this.LML(f.venn.legend,false,true)+")\n";q+=" <span class=cX-Code-Key>vennLegend</span> = legn,\n"}}if(f.tracks){q+=" <span class=cX-Code-Key>tracks</span> = genome,\n";k+="genome = list(\n"+this.LML(f.tracks,false,true)+")\n"}}}o=this.meta.config.remote?this.vBI(this.meta.config.remote.config):this.vBI(CanvasXpress.stack[this.target].config);if(CanvasXpress.stack[this.target].afterRender&&CanvasXpress.stack[this.target].afterRender.length>1){o.afterRender=this.QWl(CanvasXpress.stack[this.target].afterRender)}q+=this.LML(o,false,true)+")";h="library(<span class=cX-Code-Value>canvasXpress</span>)\n"+k+q;return"<code>"+h.replace(/\n/g,"</code>\n<code>")+"</code>"};this.Bm7=function(d,b,e,a){return e&&d?this.sIS(d,b):d?this.gfi(d,b,a||2):false};this.sIS=function(c,b){if(c){var a=this.gfi(c,b?b:null,2);if(a.length>10000){return a}else{a=a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}a=a.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g,function(e){var d="Number";if(/^"/.test(e)){if(/:$/.test(e)){d="Key"}else{d="String"}}else{if(/true|false/.test(e)){d="Boolean"}else{if(/null/.test(e)){d="Null"}}}return'<span class="cX-Code-'+d+'">'+e+"</span>"});return a}else{return false}};this.yMf=function(g,e){var d=function(h){return h.replace(/"/g,"&quot;").replace(/^\s*/g,"").replace(/'\s*\+\s*'/g,"' + '").replace(/'\s*\+\s*Math/g,"' + Math").replace(/\*/g," * ").replace(/\)\//g,") / ").replace(/<(.+?)>/g,"&lt;$1&gt;")};g=g.replace(/{/g,"{\n").replace(/}/g,"\n}");var b=g.split(/\n/);var a=[d(b[0])];var f=" ";if(!e){e=""}for(var c=1;c<b.length;c++){b[c]=d(b[c]);if(b[c].match(/[\w{}]/)){if(b[c].match(/}\s*else\s*\{\s*$/)){f=f.replace(" ","");a.push(e+f+b[c]);f+=" "}else{if(b[c].match(/\{\s*$/)){a.push(e+f+b[c]);f+=" "}else{if(b[c].match(/\}\s*;*\s*$/)){f=f.replace(" ","");a.push(e+f+b[c])}else{a.push(e+f+b[c])}}}}}return a.join("\n")};this.yIg=function(d,a){var c="{\n";if(!a){a=" "}for(var b in d){c+=a+'"'+b+'": '+d[b]+",\n"}a=a.replace(" ","");return c.replace(/,\n$/,"\n")+a+"}"};this.Ycu=function(o){var f=/(>)\s*(<)(\/*)/g;var u=/ *(.*) +\n/g;var e=/(<.+>)(.+\n)/g;var d=o.replace(f,"$1\n$2$3").replace(u,"$1\n").replace(e,"$1\n$2");var s=0;var b="";var a=d.split("\n");var k=0;var r="other";var w={"single->single":0,"single->closing":-1,"single->opening":0,"single->other":0,"closing->single":0,"closing->closing":-1,"closing->opening":0,"closing->other":0,"opening->single":1,"opening->closing":0,"opening->opening":1,"opening->other":1,"other->single":0,"other->closing":-1,"other->opening":0,"other->other":0};for(var q=0;q<a.length;q++){var h=a[q];var v=Boolean(h.match(/<.+\/>/));var g=Boolean(h.match(/<\/.+>/));var n=Boolean(h.match(/<[^!].*>/));var c=v?"single":g?"closing":n?"opening":"other";var t=r+"->"+c;r=c;var l="";k+=w[t];for(var p=0;p<k;p++){l+=" "}b+=l+h+"\n"}return b};this.kX5=function(d,h,b){var a=h?" ":b?" ":" ";var c=this.lXm(true).replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None");var g=this.Dbt(true).replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None");var f=this.hj8(true);var e=this.yxv(true);var i="";if(h){i+="<span class=cX-Code-Key>import</span> streamlit <span class=cX-Code-Key>as</span> st\n\n"}else{if(b){i+="<span class=cX-Code-Key>from</span> shiny <span class=cX-Code-Key>import</span> App, ui, render, reactive\n\n"}}i+="<span class=cX-Code-Key>from</span> canvasxpress.canvas <span class=cX-Code-Key>import</span> CanvasXpress\n";if(d||h||b){i+="<span class=cX-Code-Key>from</span> canvasxpress.plot <span class=cX-Code-Key>import</span> graph\n\n"}else{i+="<span class=cX-Code-Key>from</span> canvasxpress.plot <span class=cX-Code-Key>import</span> show_in_browser\n\n"}if(d){i+="graph(\n";i+=" CanvasXpress(\n";i+=" data = "+c+",\n";i+=" config = "+g+",\n";if(f){i+=" events = "+f.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}if(e){i+=" after_render = "+e.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}i+=" width = <span class=cX-Code-Number>"+this.width+"</span>,\n";i+=" height = <span class=cX-Code-Number>"+this.height+"</span>\n";i+=" )\n";i+=")\n\n"}else{if(h){i+="chord_chart = CanvasXpress(\n";i+=" config = "+g+",\n";if(f){i+=" events = "+f.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}if(e){i+=" after_render = "+e.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}i+=" width = <span class=cX-Code-Number>"+this.width+"</span>,\n";i+=" height = <span class=cX-Code-Number>"+this.height+"</span>\n";i+=")\n\n";i+="<span class=cX-Code-Comment># Write the UI to the browser</span>\n";i+="<span class=cX-Code-Comment># This code will be re-executed with each click of the button</span>\n\n";i+="<span class=cX-Code-Comment># Name the theme</span>\n";i+='st.title(<span class=cX-Code-Key>"CanvasXpress in Streamlit!"</span>)\n\n';i+="<span class=cX-Code-Comment># Some columns to organize the button and chart</span>\n";i+="column1, column2 = st.columns(2)\n\n";i+="<span class=cX-Code-Comment># A column with our data generator button</span>\n";i+="column1.write(\n";i+=" <span class=cX-Code-Comment># This has no associated action, so by default</span>\n";i+=" <span class=cX-Code-Comment># it triggers a redraw of the UI.</span>\n";i+=' st.button(<span class=cX-Code-Key>"Generate New Data"</span>)\n';i+=")\n\n";i+="<span class=cX-Code-Comment># Another column with the chart displayed</span>\n";i+="<span class=cX-Code-Comment># With each redraw generate new random values</span>\n";c=c.replace(/\n /g,"\n");i+="chord_chart.data = "+c+"\n";i+="column2.write(\n";i+=" <span class=cX-Code-Comment># This plots the CanvasXpress chart into the UI.</span>\n";i+=" graph(chord_chart)\n";i+=")\n\n";i+="<span class=cX-Code-Comment># On the command line, execute:</span>\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># </span> streamlit run app.py\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># And output similar to the following will be provided:</span>\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># </span> Running on http://localhost:8501/ (Press CTRL+C to quit)\n"}else{if(b){i+="app_ui = ui.page_fluid(\n";i+=" ui.row(\n";i+=" <span class=cX-Code-Comment># Define widgets here - for example:</span>\n";i+=" ui.input_slider(\n";i+=' <span class=cX-Code-Key>"points_desired"</span>,\n';i+=' <span class=cX-Code-Key>"Points"</span>,\n';i+=" min = <span class=cX-Code-Number>"+this.minData+"</span>,\n";i+=" max = <span class=cX-Code-Number>"+this.maxData+"</span>,\n";i+=" value = <span class=cX-Code-Number>"+this.minData+"</span>\n";i+=" )\n";i+=" )\n";i+=" ui.row(\n";i+=' ui.output_ui(<span class=cX-Code-Key>"chart_view"</span>),\n';i+=" )\n";i+=")\n\n";i+="def server(input, output, session):\n";i+=" @render.ui\n";i+=" @reactive.event(input.points_desired)\n";i+=" def chart_view():\n";i+=" return graph(\n";i+=" CanvasXpress(\n";i+=" data = "+c+",\n";i+=" config = "+g+",\n";if(f){i+=" events = "+f.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}if(e){i+=" after_render = "+e.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}i+=" width = <span class=cX-Code-Number>"+this.width+"</span>,\n";i+=" height = <span class=cX-Code-Number>"+this.height+"</span>\n";i+=" )\n";i+=" )\n\n";i+="app = App(app_ui, server)\n\n";i+="<span class=cX-Code-Comment># On the command line, execute:</span>\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># </span> shiny run --reload --launch-browser app.py\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># And output similar to the following will be provided:</span>\n";i+="<span class=cX-Code-Comment># </span>\n";i+="<span class=cX-Code-Comment># </span> Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)\n"}else{i+='<span class=cX-Code-Key>if</span> __name__ == <span class=cX-Code-Key>"__main__"</span>:\n';i+=" <span class=cX-Code-Comment># Define a CX bar chart with some basic data</span>\n";i+=" chart: CanvasXpress = CanvasXpress(\n";i+=" render_to = "+this.target+",\n";i+=" data = "+c+",\n";i+=" config = "+g+",\n";if(f){i+=" events = "+f.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}if(e){i+=" after_render = "+e.replace(/\n/g,"\n"+a).replace(/true/g,"True").replace(/false/g,"False").replace(/null/g,"None")+",\n"}i+=" width = <span class=cX-Code-Number>"+this.width+"</span>,\n";i+=" height = <span class=cX-Code-Number>"+this.height+"</span>\n";i+=" )\n\n";i+=" <span class=cX-Code-Comment># Display the chart in its own Web page</span>\n";i+=" show_in_browser(chart)\n"}}}return"<code>"+i.replace(/\n/g,"</code>\n<code>")+"</code>"};this.qLk=function(){var k=JSON.parse(this.meta.config.user.cxplot);var l=JSON.stringify(k.data).replace(/\],/g,"],\n ");var c=this.Zuk(k.geoms)?k.geoms:[k.geoms];var a={};var h="";if(k.aes&&k.order){k.aes.meta={};Object.assign(k.aes.meta,k.order);if(!k.aes.hasOwnProperty("x")){for(var b=0;b<c.length;b++){var d=c[b];if(k.layers[d]&&k.layers[d].hasOwnProperty("x")){k.aes.x=k.layers[d].x;break}}}if(!k.aes.hasOwnProperty("y")){for(var b=0;b<c.length;b++){var d=c[b];if(k.layers[d]&&k.layers[d].hasOwnProperty("y")){k.aes.y=k.layers[d].y;break}}}}var n=JSON.stringify(k.aes);var j=["labels","scales","colors","coordinates","theme","facet","config"];h+="<span class=cX-Code-Key>var</span> data = "+l+";\n\n";h+='<span class=cX-Code-Key>var</span> cxp = <span class=cX-Code-Value>new</span> cxplot("canvas", data, aes('+n+"));\n";for(var b=0;b<c.length;b++){var d=a[c[b]]?c[b]+"."+a[c[b]]:c[b];var e=c[b].toLowerCase().replace("geom","geom_").replace("2","_2").replace("filled","_filled").replace("_qql","_qq_l").replace("ridgesgradient","ridges_gradient").replace("ridges","_ridges");if(this[e]&&!this.skipGeoms){h+="cxp.<span class=cX-Code-Key>"+e+"</span>("+JSON.stringify(k.layers[d])+");\n"}a[d]=a[d]?a[d]+1:1}for(var b=0;b<j.length;b++){if(k[j[b]]){var e="gg_"+j[b];if(this.Zuk(k[j[b]])){if(k[j[b]].length>0){h+="cxp.<span class=cX-Code-Key>"+e+"</span>("+JSON.stringify(k[j[b]])+");\n"}}else{h+="cxp.<span class=cX-Code-Key>"+e+"</span>("+JSON.stringify(k[j[b]])+");\n"}}}return"<code>"+h.replace(/\n/g,"</code>\n<code>")+"</code>"};this.juN=function(g,f){var a=[["Id"]];for(var e=0;e<this.data.y.vars.length;e++){a[e+1]=[];a[e+1][0]=this.data.y.vars[e]}for(var e=0;e<this.data.y.smps.length;e++){a[0][e+1]=this.data.y.smps[e];for(var d=0;d<this.data.y.vars.length;d++){a[d+1][e+1]=this.data.y.data[d][e]}}if(g&&this.data[g]){if(g=="x"){for(var e in this.data.x){var b=a.length;a[b]=[];a[b][0]=e;for(var d=0;d<this.data.y.smps.length;d++){a[b][d+1]=this.data.x[e][d]}}}else{if(g=="z"){for(var e in this.data.z){var b=a[0].length;a[0][b]=e;for(var d=0;d<this.data.y.vars.length;d++){a[d+1][b]=this.data.z[e][d]}}}}}return f?this.J4e(a):a};this.y9v=function(d){if(d){var g={};for(var e=0;e<this.data.y.vars.length;e++){g[this.data.y.vars[e]]=e}var c=0;for(var e=0;e<d.data.y.vars.length;e++){if(g.hasOwnProperty(d.data.y.vars[e])){c++}}var f=0;for(var e=0;e<d.data.y.smps.length;e++){if(g.hasOwnProperty(d.data.y.smps[e])){f++}}if(c>0||f>0){if(c>f){}else{for(var e=0;e<d.data.y.vars.length;e++){this.data.z[d.data.y.vars[e]]=[];for(var b=0;b<d.data.y.smps.length;b++){if(g.hasOwnProperty(d.data.y.smps[b])){var a=g[d.data.y.smps[b]];this.data.z[d.data.y.vars[e]][a]=d.data.y.data[e][b]}}}if(d.data.hasOwnProperty("x")){for(var e in d.data.x){this.data.z[e]=[];for(var b=0;b<d.data.y.smps.length;b++){if(g.hasOwnProperty(d.data.y.smps[b])){var a=g[d.data.y.smps[b]];this.data.z[e][a]=d.data.x[e][b]}}}}}this.colorBy=d.data.y.vars[0];this.n9f("z",false,false,true);return true}}return false};this.qPL=function(a,b){if(this.varIndices.length&&this.smpIndices.length){var g=this;var B=function(i){if(i=="s"){return{y:{smps:g.QWl(g.data.y.smps)},x:{}}}else{return{y:{vars:g.QWl(g.data.y.vars)},z:{}}}};var C={};if(b&&this.data.z&&this.data.z.hasOwnProperty("cXId")){for(var x=0;x<this.data.z.cXId.length;x++){C[this.data.z.cXId[x]]=x}}var k={s:[],v:[]};var l={s:[],v:[]};var s;var v=2;var r=false;for(var x=1;x<a.length;x++){s=this.OKx(a[x][0]);if(s>-1){k.s.push([x,s]);continue}s=b&&C.hasOwnProperty(a[x][0])?C[a[x][0]]:this.mlX(a[x][0]);if(s>-1){k.v.push([x,s]);continue}}for(var x=1;x<a[0].length;x++){s=b&&C.hasOwnProperty(a[x][0])?C[a[x][0]]:this.mlX(a[0][x]);if(s>-1){l.v.push([x,s]);continue}s=this.OKx(a[0][x]);if(s>-1){l.s.push([x,s]);continue}}var h=k.s.length>v?k.s.length:0;var f=k.v.length>v?k.v.length:0;var e=l.s.length>v?l.s.length:0;var d=l.v.length>v?l.v.length:0;var z=this.data.y.smps.length;var A=this.data.y.vars.length;if(h||f||e||d){var t=0;if(h==z&&d==A){var D=[];for(var x=0;x<l.v.length;x++){var o=l.v[x][0];var c=l.v[x][1];D[c]=[];for(var w=0;w<k.s.length;w++){var y=k.s[w][0];var q=k.s[w][1];D[c][q]=a[y][o];t++}}r=true}else{if(e==z&&f==A){var D=[];for(var x=0;x<k.v.length;x++){var o=k.v[x][0];var c=k.v[x][1];D[c]=[];for(var w=0;w<l.s.length;w++){var y=l.s[w][0];var q=l.s[w][1];D[c][q]=a[o][y];t++}}r=true}else{if(h>=f&&h>=e&&h>=d){var D=B("s");for(var x=1;x<a[0].length;x++){D.x[a[0][x]]=[];var u=0;for(var w=0;w<k.s.length;w++){var y=k.s[w][0];var q=k.s[w][1];D.x[a[0][x]][q]=a[y][x];t++;u=a[y][x]?u+1:u}if(!u){delete D.x[a[0][x]]}}}else{if(f>=h&&f>=e&&f>=d){var D=B("v");for(var x=1;x<a[0].length;x++){D.z[a[0][x]]=[];var u=0;for(var w=0;w<k.v.length;w++){var y=k.v[w][0];var q=k.v[w][1];D.z[a[0][x]][q]=a[y][x];t++;u=a[y][x]?u+1:u}if(!u){delete D.z[a[0][x]]}}}else{if(e>h&&e>=f&&e>=d){var D=B("s");for(var x=0;x<l.s.length;x++){var o=l.s[x][0];var c=l.s[x][1];var u=0;for(var w=1;w<a.length;w++){if(x==0){D.x[a[w][0]]=[]}D.x[a[w][0]][c]=a[w][o];t++;u=a[w][o]?u+1:u}if(!u){delete D.x[a[w][0]]}}}else{if(d>h&&d>=f&&d>=e){var D=B("v");for(var x=0;x<k.s.length;x++){var o=k.s[x][0];var c=k.s[x][1];var u=0;for(var w=1;w<a.length;w++){if(x==0){D.z[a[w][0]]=[]}D.z[a[w][0]][c]=a[w][o];t++;u=a[w][o]?u+1:u}if(!u){delete D.z[a[w][0]]}}}}}}}}return{data:D,recs:t,addt:r}}else{if(b){var D=this.arrayToCX(a);this.data.x=D.data.x;this.data.y.smps=D.data.y.smps;this.data.y.vars=this.QWl(this.data.z.id);this.updateData(this.data);var p=this.meta.map.geojson.features;for(var x=0;x<p.length;x++){p[x].properties.key=this.data.y.vars[x];p[x].properties.varId=[x]}return{data:false,recs:this.data.y.smps.length,addt:false}}else{return a}}}return a};this.xAS=function(a){var b=window.location.origin;var d={};var c=[];for(m in CanvasXpress.countries){var e=CanvasXpress.countries[m][0];d[m]=[e,b+"/data/maps/"+m+".json"];c.push(e)}for(m in CanvasXpress.usa){var e=CanvasXpress.usa[m][0];d[m]=[e,b+"/data/maps/"+m+".json"];c.push(e)}for(m in CanvasXpress.maps){d[m]=[m,CanvasXpress.maps[m]];c.push(m)}return a?c:d};this.rPR=function(c){if(!c){c="png"}var b=window.location.origin+"/data/flags"+(c=="svg"?"/svg/3x2/":"/png/");var a={};for(m in CanvasXpress.countries){var e=CanvasXpress.countries[m][0];var d=c=="svg"?CanvasXpress.countries[m][3]:CanvasXpress.countries[m][3].toLowerCase();a[m]=[e,b+d+"."+c]}return a};this.E1L=function(){var c=this;var b=function(d){CanvasXpress.Rdatasets=c.parseJSON(d)};var a=this.RdatasetsURL+"datasets.json";this.GDl(a,false,b);this.onX()};this.ywS=function(a,b){this.PQ5(this.RdatasetsURL+"csv/"+a+"/"+b+".csv");this.Rdataset={library:a,dataset:b,url:this.RdatasetsURL+"json/"+a+"/"+b+"Info.json",info:false}};this.a0Q=function(a,b){this.PQ5(this.RdatasetsURL+"datasetsCX.csv")};this.N8Z=function(){var f=this;var b=this.appendNetworkData.length>0?this.appendNetworkData.shift():false;var d=function(o){var l=function(A){var z={};var C=A[0];var s=0;var x=0;var v=0;var r={};var B=false;for(var y=1;y<A.length;y++){var t=A[y][0];var u=A[y][1];if(f.nodeIndices.hasOwnProperty(t)&&f.nodeIndices.hasOwnProperty(u)){x++}else{if(f.nodeIndices.hasOwnProperty(t)){s++}else{v++}}r[t]=y}if(!s&&!x){for(var y=0;y<f.data.nodes.length;y++){var t=f.data.nodes[y];if(t.hasOwnProperty("extId")&&r.hasOwnProperty(t.extId)){A[r[t.extId]][0]=t.id;s++}}}if(x>s){s=0;x=0;v=0;B="edge";for(var y=1;y<A.length;y++){var t=A[y][0];var u=A[y][1];if(f.nodeIndices.hasOwnProperty(t)&&f.nodeIndices.hasOwnProperty(u)){x++;z[t+":"+u]={};for(var w=2;w<C.length;w++){z[t+":"+u][C[w]]=A[y][w]}}else{v++}}}else{if(s>8){s=0;x=0;v=0;B="node";for(var y=1;y<A.length;y++){var t=A[y][0];if(f.nodeIndices.hasOwnProperty(t)){s++;z[t]={};for(var w=1;w<C.length;w++){z[t][C[w]]=A[y][w]}}else{v++}}}else{return A}}if((B=="edge"&&(x>5||x>=A.length-1))||(B=="node"&&(s>5||s>=A.length-1))){return{data:z,rows:Math.max(s,x),fail:v,type:B}}else{return A}};var p=l(f.parseDelimited(o));if(p&&!f.Zuk(p)){var k="";if(p.fail>0){k=p.fail+" records couldn't be mapped to network data"}f.FmO(100,150,p.rows+" "+p.type+" records added to network data\n"+k,5000);var q=f.meta.config.user;var e=["colorNodeBy","shapeNodeBy","sizeNodeBy","patternNodeBy","colorEdgeBy","SizeEdgeBy","decorations"];for(var n=0;n<e.length;n++){var j=e[n];if(q.hasOwnProperty(j)){f[j]=q[j]}}if(p.type=="node"){f.xJG(p.data)}else{f.E32(p.data)}if(f.appendNetworkData.length>0){f.N8Z()}else{f.U4z({func:"appendNetworkDataFromURL"});f.a74()}}};var c=function(e){if(e.type=="node"){f.xJG(e.data)}else{f.E32(e.data)}if(f.appendNetworkData.length>0){f.N8Z()}else{f.U4z({func:"appendNetworkDataFromURL"});f.a74()}};var a=function(e){return function(i){if(b.match(/\.txt$/)||b.match(/\.csv$/)||b.match(/\.tsv$/)||b.match(/\.tab$/)){d(i)}else{f.a74();alert("Oooops! Not a CanvasXpress Network delimited file")}}};if(b){if(typeof(b)=="string"){var g=null;try{g=JSON.parse(b);return c(g)}catch(h){g=null}g=this.parseDelimited(b)||null;if(g){return d(b)}if(this.isValidURL(b)){return this.GDl(b,false,a)}}else{c(b)}}};this.PQ5=function(a){this.GDl(a,false,this.setDataSetFromURL,"text")};this.eqk=function(g){var d=CanvasXpress.getSetCurrentObject();var c=function(i){d.Rdataset.info=d.parseJSON(i)};var f=d.arrayToCX(d.parseDelimited(g));var h=d.$(d.target+"-cX-DOM").parentNode;if(h.parentNode){h=h.parentNode}var b=d.qTO("-cX-data-sets-");var e=d.$cX("canvas",{id:b,width:d.originalWidth,height:d.originalHeight});d.RpS(e);h.appendChild(e);f.renderTo=b;f.config.view="table";var a=new CanvasXpress(f,null,null,null,null,null,null,null,true);a.Rdataset=d.Rdataset;a.GDl(a.Rdataset.url,false,c,false,false,a);a.Axj(d.target);a.svL()};this.kI0=function(e,d,i,c,f){if(!CanvasXpress.stack){CanvasXpress.stack={}}var b=this.$(this.target);var g=this.QWl(d)||false;if(g&&this.graphName){for(var a in this.graphName){g[a]=this.graphName[a]}}if(g&&this.scatterContext){g.graphType=this.scatterContext}var h=this.isCxplot&&this.Zuk(e)?this.QWl(this.data):e?this.vBI(e):false;if(this.isGraphTime){g.isGraphTime=true}if(this.xAxisTime){g.xAxisTime=this.xAxisTime}if(this.yAxisTime){g.yAxisTime=this.yAxisTime}if(b){CanvasXpress.stack[this.target]={version:CanvasXpress.factory.version,renderTo:this.target,data:h,config:g,events:i?i:false,info:c?c.toString().replace(/'/g,"'").replace(/"/g,"'"):false,afterRender:f,noValidate:true}}};this.UMp=function(d){if(d.data){if(d.config.stringSampleFactors){for(var b=0;b<d.config.stringSampleFactors.length;b++){var c=d.config.stringSampleFactors[b];if(d.data.x&&d.data.x[c]){for(var a=0;a<d.data.x[c].length;a++){d.data.x[c][a]=d.data.x[c][a]}}}}if(d.config.stringVariableFactors){for(var b=0;b<d.config.stringVariableFactors.length;b++){var c=d.config.stringVariableFactors[b];if(d.data.z&&d.data.z[c]){for(var a=0;a<d.data.z[c].length;a++){d.data.z[c][a]=d.data.z[c][a]}}}}CanvasXpress.stack[this.target].data=d.data}};this.e2f=function(){return CanvasXpress.stack[this.target].afterRender};this.xmv=function(f){if(this.skipStack||!f||this.afterRendering){return}var i=f.func;var c=f.par?this.SCR(f.par):[];var j=f.prop?this.QWl(f.prop):{};var k=f.video!==undefined?true:false;var h=new Date().getTime();var d=CanvasXpress.stack[this.target];if(!i||!d){return}if(i==="clickWorkflowPlay"){return}if(!this.reproduceVideoMode&&k){return}var g=d.afterRender;if(!g){g=d.afterRender=[["setDimensions",[this.width,this.height,true]]]}var a=g.length;switch(i){case"setDimensions":if(c&&c[0]===this.width&&c[1]===this.height){return}g.push([i,c,{},k,h]);break;case"broadcastDraw":i=c[0].func;c=c[0]&&c[0].par?this.SCR(c[0].par):[];j=c[0]&&c[0].prop||{};if(i){g.push([i,c,j,k,h])}break;case"drawIndicesAfterPannEvent":case"drawIndicesAfterWheelEvent":case"drawRangesAfterWheelEvent":case"updateDragCircular":case"updateDragScatter":case"updateDragNetwork":case"updateDragGenome":case"updateDragMap":case"updateDragMarker":var e=(i!=="updateDragNetwork"||!c[0].shiftKey);if(a>1&&g[a-1][0]===i&&e){var b=h-g[a-1][4];if(b<1000){g.pop()}}g.push([i,c,j,k,h]);break;case"handleWheelEvent":g.push([i,c,j,k,h]);break;default:g.push([i,c,j,k,h]);break}this.meta.stack.push([i,this.meta.time.start,this.meta.time.elapsed]);if(typeof this.workflowResetUndoSession==="function"){this.lIO()}};this.LZl=function(a){this.WGX(a,true)};this.WGX=function(b,a){if(this.workflowBy){return}this.skipStack=true;this.reproducing=true;this.Bub();this.viZ();this.OZC(b,true);this.meta.ids={};this.ZIr(b);if((b&&b.shiftKey)||a){this.s6G();this.P0u(b)}};this.maI=function(a){this.Pzf(a,true)};this.Pzf=function(h,b,k){var j=this.hiU(CanvasXpress.stack[this.target]);if(!this.isRawData){if(j.data.y){delete j.data.y.data}}this.isQQ=false;this.isCDF=false;j.config.showTransition=b?true:false;if(k){var f=this.QWl(j.afterRender);j.afterRender=[];for(var g=0;g<f.length;g++){var l=f[g];if(l[0]=="addCDFPlot"&&j.config.decorations){delete j.config.decorations.cdf}if(l&&l[4]){j.afterRender.push(l)}}}this.Axj(this.target,true);new CanvasXpress(j,null,null,null,null,null,null,null,true)}};CanvasXpress.prototype.initSave=function(){
28
28
  /*! @source http://purl.eligrey.com/github/Blob.js/blob/master/Blob.js */
29
29
  (function(g){g.URL=g.URL||g.webkitURL;if(g.Blob&&g.URL){try{new Blob;return}catch(j){}}var i=g.BlobBuilder||g.WebKitBlobBuilder||g.MozBlobBuilder||(function(v){var m=function(F){return Object.prototype.toString.call(F).match(/^\[object\s(.*)\]$/)[1]},E=function s(){this.data=[]},C=function o(H,F,G){this.data=H;this.size=H.length;this.type=F;this.encoding=G},w=E.prototype,B=C.prototype,y=v.FileReaderSync,k=function(F){this.code=this[this.name=F]},x=("NOT_FOUND_ERR SECURITY_ERR ABORT_ERR NOT_READABLE_ERR ENCODING_ERR NO_MODIFICATION_ALLOWED_ERR INVALID_STATE_ERR SYNTAX_ERR").split(" "),A=x.length,r=v.URL||v.webkitURL||v,z=r.createObjectURL,l=r.revokeObjectURL,q=r,u=v.btoa,p=v.atob,n=v.ArrayBuffer,t=v.Uint8Array,D=/^[\w-]+:\/*\[?[\w\.:-]+\]?(?::[0-9]+)?/;C.fake=B.fake=true;while(A--){k.prototype[x[A]]=A+1}if(!r.createObjectURL){q=v.URL=function(G){var F=document.createElementNS("http://www.w3.org/1999/xhtml","a"),H;F.href=G;if(!("origin" in F)){if(F.protocol.toLowerCase()==="data:"){F.origin=null}else{H=G.match(D);F.origin=H&&H[1]}}return F}}q.createObjectURL=function(G){var H=G.type,F;if(H===null){H="application/octet-stream"}if(G instanceof C){F="data:"+H;if(G.encoding==="base64"){return F+";base64,"+G.data}else{if(G.encoding==="URI"){return F+","+decodeURIComponent(G.data)}}if(u){return F+";base64,"+u(G.data)}else{return F+","+encodeURIComponent(G.data)}}else{if(z){return z.call(r,G)}}};q.revokeObjectURL=function(F){if(F.substring(0,5)!=="data:"&&l){l.call(r,F)}};w.append=function(J){var L=this.data;if(t&&(J instanceof n||J instanceof t)){var K="",G=new t(J),H=0,I=G.length;for(;H<I;H++){K+=String.fromCharCode(G[H])}L.push(K)}else{if(m(J)==="Blob"||m(J)==="File"){if(y){var F=new y;L.push(F.readAsBinaryString(J))}else{throw new k("NOT_READABLE_ERR")}}else{if(J instanceof C){if(J.encoding==="base64"&&p){L.push(p(J.data))}else{if(J.encoding==="URI"){L.push(decodeURIComponent(J.data))}else{if(J.encoding==="raw"){L.push(J.data)}}}}else{if(typeof J!=="string"){J+=""}L.push(unescape(encodeURIComponent(J)))}}}};w.getBlob=function(F){if(!arguments.length){F=null}return new C(this.data.join(""),F,"raw")};w.toString=function(){return"[object BlobBuilder]"};B.slice=function(I,F,H){var G=arguments.length;if(G<3){H=null}return new C(this.data.slice(I,G>1?F:this.data.length),H,this.encoding)};B.toString=function(){return"[object Blob]"};B.close=function(){this.size=0;delete this.data};return E}(g));g.Blob=function(o,n){var q=n?(n.type||""):"";var m=new i();if(o){for(var p=0,k=o.length;p<k;p++){if(Uint8Array&&o[p] instanceof Uint8Array){m.append(o[p].buffer)}else{m.append(o[p])}}}var l=m.getBlob(q);if(!l.slice&&l.webkitSlice){l.slice=l.webkitSlice}return l};var h=Object.getPrototypeOf||function(k){return k.__proto__};g.Blob.prototype=h(new g.Blob())}(typeof self!=="undefined"&&self||typeof window!=="undefined"&&window||this.content||this));
30
30
  /*! @source http://purl.eligrey.com/github/canvas-toBlob.js/blob/master/canvas-toBlob.js */
@@ -33,4 +33,4 @@
33
33
  exports['cxplot'] = cxplot;
34
34
  exports['aes'] = aes;
35
35
  }
36
- CanvasXpress.prototype.initIO=function(){this.parseJSON=function(s,r){if(typeof s!=="string"){return null}s=s.replace(/&nl;/g,"\\n");try{return JSON.parse(s,r)}catch(e){if(s.toString().match(/<!DOCTYPE/)){return undefined}else{if(r){return JSON.parse(s,r)}else{return JSON.parse(s,function(k,v){if(typeof v==="string"&&v.startsWith&&v.startsWith("/Function(")&&v.endsWith&&v.endsWith(")/")){v=v.substring(10,v.length-2).replace(/&quot;/g,'"');return eval("("+v+")")}else{return v}})}}}};this.gfi=function(js,r,s){if(r){return JSON.stringify(js,r,s||null)}else{return js?JSON.stringify(js,function(k,v){if(typeof v==="function"){return"/Function("+v.toString().replace(/"/g,"&quot;").replace(/{\s*/g,"{").replace(/;\s*/g,";")+")/"}else{if(k=="events"&&typeof v==="object"){return v}else{if(k=="gantt"){return undefined}else{if(k=="hoverTemplate"){return v+" "}else{if(typeof v==="string"&&(v.endsWith("]")||v.endsWith("}"))){return v+" "}else{if(typeof v==="string"&&(v.startsWith("[")||v.startsWith("{"))){return" "+v}else{if(v instanceof Array){for(var i=0;i<v.length;i++){if(typeof v[i]==="string"){v[i]=v[i].replace(/\[/g,"&lsqb;").replace(/\]/g,"&rsqb;").replace(/\{/g,"&lcub;").replace(/\}/g,"&rcub;")}}for(var p in v){if(Array.isArray(v[p])||v[p] instanceof Object){return v}}return JSON.stringify(v)}else{return v}}}}}}}},s||null).replace(/\\n/g,"&nl;").replace(/\\/g,"").replace(/"\[/g,"[").replace(/\]"/g,"]").replace(/"\{/g,"{").replace(/\}"/g,"}").replace(/u0000/g,"").replace(/&lsqb;/g,"[").replace(/&rsqb;/g,"]").replace(/&lcub;/g,"{").replace(/&rcub;/g,"}"):false}};this.RJK=function(f){return"/Function("+f.toString().replace(/"/g,"&quot;").replace(/{\s*/g,"{").replace(/;\s*/g,";")+")/"};this.bz2=function(str){function bwt_reverse(src,primary){var len=src.length;if(primary>=len){throw RangeError("Out of bound")}if(primary<0){throw RangeError("Out of bound")}var A=src;src=src.join("");A.sort();var start={};for(var i=len-1;i>=0;i--){start[A[i]]=i}var links=[];for(i=0;i<len;i++){links.push(start[src[i]]++)}var i,first=A[i=primary],ret=[];for(var j=1;j<len;j++){ret.push(A[i=links[i]])}return first+ret.reverse().join("")}function move_to_front_and_store(a,c,buff){var v=a[c];for(var i=c;i>0;a[i]=a[--i]){}buff.push(a[0]=v)}var RBitfield=function(){this.initbit=function(x){this.masks=[];for(var i=0;i<31;i++){this.masks[i]=(1<<i)-1}this.masks[31]=-2147483648;this.f=x;this.bits=0;this.bitfield=0;this.count=0};this.readbits2=function readbits2(n){var n2=n>>1;return this.readbits(n2)*(1<<n2)+this.readbits(n-n2)};this.readbits=function readbits(n){while(this.bits<n){this.bitfield=(this.bitfield<<8)+this.f.charCodeAt(this.count++);this.bits+=8}var m=this.masks[n];var r=(this.bitfield>>(this.bits-n))&m;this.bits-=n;this.bitfield&=~(m<<this.bits);return r}};var HuffmanLength=function(code,bits){this.code=code;this.bits=bits;this.symbol=undefined};var OrderedHuffmanTable=function(){this.process=function(lengths){var len=lengths.length;var z=[];for(var i=0;i<len;i++){z.push([i,lengths[i]])}z.push([len,-1]);var l=[];var b=z[0];var start=b[0],bits=b[1];for(var p=1;p<z.length;p++){var finish=z[p][0],endbits=z[p][1];if(bits){for(var code=start;code<finish;code++){l.push(new HuffmanLength(code,bits))}}start=finish;bits=endbits;if(endbits==-1){break}}l.sort(function(a,b){return(a.bits-b.bits)||(a.code-b.code)});this.table=l;var temp_bits=0;var symbol=-1;this.faht=[];var cb=null;for(var i=0;i<this.table.length;i++){var x=this.table[i];symbol+=1;if(x.bits!=temp_bits){symbol<<=x.bits-temp_bits;cb=this.faht[temp_bits=x.bits]={}}cb[x.symbol=symbol]=x}this.min_bits=16;this.max_bits=-1;this.table.forEach(function(x){if(x.bits<this.min_bits){this.min_bits=x.bits}if(x.bits>this.max_bits){this.max_bits=x.bits}},this)}};var decode=function(input){var b=new RBitfield();b.initbit(input);b.readbits(16);var method=b.readbits(8);if(method!=104){throw"Unknown (not type 'h'uffman Bzip2) compression method"}var blocksize=b.readbits(8);if(49<=blocksize&&blocksize<=57){blocksize-=48}else{throw"Unknown (not size '1'-'9') Bzip2 blocksize"}function getUsedCharTable(b){var a=[];var used_groups=b.readbits(16);for(var m1=1<<15;m1>0;m1>>=1){if(!(used_groups&m1)){for(var i=0;i<16;i++){a.push(false)}continue}var used_chars=b.readbits(16);for(var m2=1<<15;m2>0;m2>>=1){a.push(Boolean(used_chars&m2))}}return a}var out=[];function main_loop(){while(true){var blocktype=b.readbits2(48);var crc=b.readbits2(32);if(blocktype==54156738319193){if(b.readbits(1)){throw"Bzip2 randomised support not implemented"}var pointer=b.readbits(24);var used=getUsedCharTable(b);var huffman_groups=b.readbits(3);if(2>huffman_groups||huffman_groups>6){throw RangeError("Bzip2: Number of Huffman groups not in range 2..6")}var mtf=[0,1,2,3,4,5,6].slice(0,huffman_groups);var selectors_list=[];for(var i=0,selectors_used=b.readbits(15);i<selectors_used;i++){var c=0;while(b.readbits(1)){if(c++>=huffman_groups){throw RangeError("More than max ("+huffman_groups+") groups")}}move_to_front_and_store(mtf,c,selectors_list)}var groups_lengths=[];var symbols_in_use=used.reduce(function(a,b){return a+b},0)+2;for(var j=0;j<huffman_groups;j++){var length=b.readbits(5);var lengths=[];for(var i=0;i<symbols_in_use;i++){if(length<0||length>20){throw RangeError("Bzip2 Huffman length code outside range 0..20")}while(b.readbits(1)){length-=(b.readbits(1)*2)-1}lengths.push(length)}groups_lengths.push(lengths)}var tables=[];for(var g=0;g<groups_lengths.length;g++){var codes=new OrderedHuffmanTable();codes.process(groups_lengths[g]);tables.push(codes)}var favourites=[];for(var c=used.length-1;c>=0;c--){if(used[c]){favourites.push(String.fromCharCode(c))}}favourites.reverse();var selector_pointer=0;var decoded=0;var t;var repeat=0;var repeat_power=0;var buffer=[],r;while(true){if(--decoded<=0){decoded=50;if(selector_pointer<=selectors_list.length){t=tables[selectors_list[selector_pointer++]]}}for(var bb in t.faht){if(b.bits<bb){b.bitfield=(b.bitfield<<8)+b.f.charCodeAt(b.count++);b.bits+=8}if(r=t.faht[bb][b.bitfield>>(b.bits-bb)]){b.bitfield&=b.masks[b.bits-=bb];r=r.code;break}}if(0<=r&&r<=1){if(repeat==0){repeat_power=1}repeat+=repeat_power<<r;repeat_power<<=1;continue}else{var v=favourites[0];while(repeat>0){buffer.push(v);repeat--}}if(r==symbols_in_use-1){break}else{move_to_front_and_store(favourites,r-1,buffer)}}var nt=bwt_reverse(buffer,pointer);var done=[];var i=0;var len=nt.length;while(i<len){var c=nt.charCodeAt(i);if((i<len-4)&&nt.charCodeAt(i+1)==c&&nt.charCodeAt(i+2)==c&&nt.charCodeAt(i+3)==c){var c=nt.charAt(i);var rep=nt.charCodeAt(i+4)+4;while(rep>0){done.push(c);rep--}i+=5}else{done.push(nt[i++])}}out.push(done.join(""))}else{if(blocktype==25779555029136){b.readbits(b.bits&7);break}else{throw"Illegal Bzip2 blocktype = 0x"+blocktype.toString(16)}}}}main_loop();return out.join("")};return decode(str)};this.parseDelimited=function(str){var isNumber=function(n){if(n===null||n===undefined){return true}if(typeof n==="string"&&/^0\d/.test(n)){return false}return !isNaN(parseFloat(n))&&isFinite(n)};if(str.match(/^<\?xml/)){return false}var tc=str.split(",").length-1;var tt=str.split("\t").length-1;var ts=str.split(";").length-1;if(tc<2&&tt<2&&ts<2){}var delim=tc>tt&&tc>ts?",":ts>tc&&ts>tt?";":"\t";var pat=new RegExp(("(\\"+delim+'|\\r?\\n|\\r|^)(?:"([^"]*(?:""[^"]*)*)"|([^"\\'+delim+"\\r\\n]*))"),"gi");var arr=[[]];var arrM=null;while(arrM=pat.exec(str)){var strM=arrM[1];if(strM.length&&strM!==delim){arr.push([])}var strV;if(arrM[2]){strV=arrM[2].replace(new RegExp('""',"g"),'"')}else{strV=arrM[3]}if(typeof strV==="string"){strV=strV.trim();var negAcct=strV.match(/^\(\$?(.*)\)$/);if(negAcct){strV="-"+negAcct[1].trim()}else{if(strV.slice(0,2)==="-$"){strV="-"+strV.slice(2).trim()}else{if(strV.charAt(0)==="$"){strV=strV.slice(1).trim()}}}if(strV.charAt(strV.length-1)==="%"){strV=strV.slice(0,-1).trim()}if(/^-?[\d,]+(\.\d+)?$/.test(strV)){strV=strV.replace(/,/g,"")}}arr[arr.length-1].push(isNumber(strV)?Number(strV):strV!="NA"?strV:null)}for(var i=0;i<arr.length;i++){if(arr[i][0].toString().match(/^#/)){arr.splice(i,1);i--;continue}}var l=arr.length-1;while(arr[l].length==1&&arr[l][0].toString()==""){arr.pop();l=arr.length-1}return arr};this.parseXML=function(x){var d=null;if(window.DOMParser){try{d=(new DOMParser()).parseFromString(x,"text/xml")}catch(e){d=null}}else{if(window.ActiveXObject){try{d=new ActiveXObject("Microsoft.XMLDOM");d.async=false}catch(e){d=null}}else{alert("cannot parse xml string!")}}return d};this.xIp=function(gml){var forIn=function(object,callback){Object.keys(object).forEach(function(key){callback(key,object[key])})};var json=("{\n"+gml+"\n}").replace(/^(\s*)(\w+)\s*\[/gm,'$1"$2": {').replace(/^(\s*)\]/gm,"$1},").replace(/^(\s*)(\w+)\s+(.+)$/gm,'$1"$2": $3,').replace(/,(\s*)\}/g,"$1}");var graph={};var nodes=[];var edges=[];var i=0;json=json.replace(/^(\s*)"node"/gm,function(all,indent){return(indent+'"node['+(i++)+']"')});i=0;json=json.replace(/^(\s*)"edge"/gm,function(all,indent){return(indent+'"edge['+(i++)+']"')});try{json=JSON.parse(json)}catch(err){throw new SyntaxError("bad format")}if(!json.graph instanceof Object){throw new SyntaxError("no graph tag")}forIn(json.graph,function(key,value){var matches=key.match(/^(\w+)\[(\d+)\]$/);var name;var i;if(matches){name=matches[1];i=parseInt(matches[2],10);if(name==="node"){nodes[i]=value}else{if(name==="edge"){edges[i]=value;edges[i].id1=edges[i].source;edges[i].id2=edges[i].target;delete (edges[i].source);delete (edges[i].target)}else{graph[key]=value}}}else{graph[key]=value}});graph.nodes=nodes;graph.edges=edges;return{data:graph,config:{graphType:"Network"}}};this.HMl=function(xml,json,p,current){json=json||{};if(p&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){var j={};for(var i=0;i<xml.attributes.length;i++){var attr=xml.attributes.item(i);var attrName=attr.name.replace(/(?!xmlns)^.*:/,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();var attrVal=attr.value.trim();if(p){j[attrName]=attrVal}else{json[attrName]=attrVal}}if(p){json[p].push(j)}}else{if(p==="alt"){json[p].push(xml.textContent.replace(/\"/g,"'").replace(/\[/g,"&#91").replace(/\]/g,"&#93"))}}if(xml.hasChildNodes()&&!current){for(var k=0;k<xml.childNodes.length;k++){var childNode=xml.childNodes.item(k);if(childNode.nodeType===1){var childName=childNode.nodeName.replace(/(?!xmlns)^.*:/,"").toLowerCase();this.HMl(childNode,json,childName)}}}return json};this.PNGtoCX=function(b){var d=function(n,l){var o="";for(var m=0;m<4;m++){o+=String.fromCharCode(n.getUint8(l+m))}return o=="tEXt"};var c=function(o,m,l){var p="";for(var n=0;n<l;n++){p+=String.fromCharCode(o.getUint8(m+n))}return p.match(/CanvasXpress/)};var a=new DataView(b);var f=a.getUint32(8);var h=a.getUint32(8+4+4+f+4);if(d(a,8+4+4+f+4+4)&&c(a,8+4+4+f+4+4+4,h)){var k=a.getUint32(8+4+4+f+4+4+4+h+4);var g=8+4+4+f+4+4+4+h+4+4+4;var j="";for(var e=0;e<k;e++){j+=String.fromCharCode(a.getUint8(g+e))}j=j.replace("ReproducibleResearch\0","");var i;try{i=JSON.parse(decodeURIComponent(j))}catch(n){i=JSON.parse(j)}return i}else{alert("Oooops! Not a valid CanvasXpress Image")}};this.SVGtoCX=function(x){var parseXML=function(x){var d=null;if(window.DOMParser){try{d=(new DOMParser()).parseFromString(x,"text/xml")}catch(e){d=null}}else{if(window.ActiveXObject){try{d=new ActiveXObject("Microsoft.XMLDOM");d.async=false}catch(e){d=null}}else{alert("cannot parse xml string!")}}return d};var d=parseXML(x);var s=d.childNodes[0];if(s.tagName.match(/svg/i)){var d=s.getAttribute("desc");if(d){return JSON.parse(d)}}};this.arrayToCX=function(arr,config,rurl){var unique=function(a){var seen={};return a.filter(function(x){if(seen[x]){return false}seen[x]=true;return true})};var isDate=function(arr){var check=function(v){if(toString.call(v)==="[object Date]"){return true}if(typeof v.replace==="function"){v.replace(/^\s+|\s+$/gm,"")}var f=/(^\d{1,4}?[\.|\\/|-]\d{1,2}?[\.|\\/|-]\d{1,4})(\s*(?:0?[1-9]:[0-5]|1(?=[012])\d:[0-5])\d\s*[ap]m)?$/;return f.test(v)};var n=arr.length;for(var i=0;i<n;i++){if(arr[i]!=null&&!check(arr[i])){return false}}return true};var isNumeric=function(n){return n===null||n===undefined?true:!isNaN(parseFloat(n))&&isFinite(n)};var isCalclBoxplot=function(arr,cols){for(var i=0;i<arr.length;i++){if(!cols.includes(arr[i])){return false}}return true};var isSameObject=function(a,b){return a===b||(typeof a==="object"&&typeof b==="object"&&JSON.stringify(a)===JSON.stringify(b))};var data={y:{vars:[],smps:[],data:[]}};var transpose=function(mat){return mat[0].map(function(_,c){return mat.map(function(r){return r[c]})})};var g="Scatter2D";var summaryType=false;var cn="";var hc=[];var xa=config&&config.hasOwnProperty("xAxis")&&config.xAxis.length>0?true:false;var ya=config&&config.hasOwnProperty("yAxis")&&config.yAxis.length>0?true:false;var za=config&&config.hasOwnProperty("zAxis")&&config.zAxis.length>0?true:false;var xy=xa&&ya?true:false;var gs=config&&config.hasOwnProperty("graphType")&&CanvasXpress.graphTypes.Scatter2Graphs.includes(config.graphType);var gl=config&&config.hasOwnProperty("graphType")&&CanvasXpress.graphTypes.LineGraphs.includes(config.graphType);var go=config&&config.hasOwnProperty("graphType")&&CanvasXpress.graphTypes.OneDGraphs.includes(config.graphType);var gr=config&&config.hasOwnProperty("graphType")&&(config.graphType=="Radar"||config.graphType=="Circular");var pc=config&&config.hasOwnProperty("graphType")&&(config.graphType=="ParallelCoordinates");var ds=config&&config.hasOwnProperty("graphType")&&config.graphType=="Heatmap"&&config.hasOwnProperty("dataframeSets")&&Array.isArray(config.dataframeSets);var as=[];if(ds){if(xa&&isSameObject(config.dataframeSets[0],config.xAxis)){config.dataframeSets.shift()}for(var i=0;i<config.dataframeSets.length;i++){as[i]=[]}var c=[];for(var i=0;i<config.dataframeSets.length;i++){c=c.concat(config.dataframeSets[i])}var ind=[];for(var i=0;i<arr[0].length;i++){if(c.includes(arr[0][i])){ind.push(i)}}for(var i=0;i<config.dataframeSets.length;i++){var dataframeSet=config.dataframeSets[i];for(var k=0;k<dataframeSet.length;k++){var colName=dataframeSet[k];var colIndexInArr=arr[0].indexOf(colName);if(colIndexInArr!==-1){var newCol=[];for(var row=1;row<arr.length;row++){newCol.push(arr[row][colIndexInArr])}as[i].push(newCol)}}}for(var i=arr[0].length-1;i>=0;i--){if(ind.includes(i)){for(var j=0;j<arr.length;j++){arr[j].splice(i,1)}}}}var cols=arr[0].filter(Number.isFinite);var mts=false;if(cols.length==0){cols=arr.shift()}else{cols=[];mts=true;for(var i=0;i<arr[0].length;i++){cols.push("C"+(i+1))}}var bp1=isCalclBoxplot(["median","qtl1","qtl3","iqr1","iqr3"],cols);var bp2=isCalclBoxplot(["median","q1","q3","ymin","ymax"],cols);var rows=[];var hasDot=false;var scn=false;for(var i=0;i<arr.length;i++){var v=arr[i][0];if(v!=null){rows.push(arr[i][0].toString());if(arr[i][0].toString().match(/\./)){}}}var urow=unique(rows);if(urow.length==rows.length&&!hasDot){for(var i=0;i<arr.length;i++){arr[i].shift(arr[i][0])}}else{scn=true;cn="Id";hc.push(cn);rows=[];for(var i=0;i<arr.length;i++){rows.push("R"+(i+1))}}if(cols.length>arr[0].length){cn=cols.shift();if(!cols.length==arr[0].length){return false}}else{if(!scn){cn=arr[0][0]}}if(arr[0].length!=arr[arr.length-1].length){arr.pop();rows.pop();if(arr[0].length!=arr[arr.length-1].length){return false}}var isrd=isDate(rows);if(isrd&&config&&((config.hasOwnProperty("graphType")&&CanvasXpress.graphTypes.Scatter2Graphs.includes(config.graphType))||(!config.hasOwnProperty("graphType")&&config.isCxplot))){if(!config.hasOwnProperty("graphType")&&config.isCxplot){cols.unshift(cn)}else{cols.unshift("Date")}isrd=cols[0];for(var i=0;i<rows.length;i++){arr[i].unshift(new Date(rows[i]))}cn="Id";hc.push(cn);rows=[];for(var i=0;i<arr.length;i++){rows.push("R"+(i+1))}}var types=[];var yAxis=[];var total=0;var cnvtm;var isgt=isrd?isrd:false;var r=/^\$?[0-9]+\.?[0-9]*$/;var f=/(^\d{1,4}?[\.|\\/|-]\d{1,2}?[\.|\\/|-]\d{1,4})(\s*(?:0?[1-9]:[0-5]|1(?=[012])\d:[0-5])\d\s*[ap]m)?$/;var f2=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?$/;for(var i=0;i<cols.length;i++){types[i]=false;cnvtm=true;for(var j=0;j<rows.length;j++){if(!f.test(String(arr[j][i]))){cnvtm=false;break}}for(var j=0;j<rows.length;j++){if(cnvtm){arr[j][i]=new Date(arr[j][i]).getTime()}else{if(r.test(String(arr[j][i]))){arr[j][i]=Number((String(arr[j][i])).replace("$",""))}}if(arr[j][i]===""){continue}if(!isNumeric(arr[j][i])){types[i]=true;break}}if(!types[i]&&config&&config.isCxplot&&config.aes&&config.aes.hasOwnProperty("meta")&&config.aes.meta.hasOwnProperty(cols[i])){types[i]=true}if(!types[i]&&cnvtm&&(((xa&&config.xAxis.includes(cols[i]))||(ya&&config.yAxis.includes(cols[i])))||(config&&config.hasOwnProperty("aes")&&config.aes.hasOwnProperty("x")&&config.aes.x==cols[i]))){isgt=cols[i]}if(!types[i]){for(var j=0;j<rows.length;j++){if(i==0&&isrd){continue}else{arr[j][i]=arr[j][i]==null||arr[j][i]==undefined?null:!isNaN(parseFloat(arr[j][i]))&&isFinite(arr[j][i])?Number(arr[j][i]):arr[j][i]===true?true:arr[j][i]===false?false:null}}total++}else{data.z={}}}var ts=true;var uts={};for(var i=0;i<types.length;i++){if(!types[i]&&!isNumeric(arr[0][i])){ts=false;break}else{var v=arr[0][i];if(v!=null){if(uts.hasOwnProperty(arr[0][i].toString())){ts=false;break}else{uts[arr[0][i].toString()]=true}}}}if(ts&&mts){if(data.z){delete data.z;data.x={}}}var tn=[];for(var i=0;i<types.length;i++){if(types[i]){var tnt=false;for(var j=0;j<rows.length;j++){if(!isNumeric(arr[j][i])){tn.push(false);tnt=true;break}}if(!tnt){tn.push(true)}}else{tn.push(false)}}for(var i=0;i<types.length;i++){if(types[i]&&tn[i]){for(var j=0;j<rows.length;j++){arr[j][i]=arr[j][i]+"\x00"}}}var trans=false;if(!config&&total>1){var n=Math.ceil(total*0.6);var q=0;for(var i=types.length-1;i>=0;i--){if(!types[i]){q++}else{if(q<n){trans=true}}}}if(config&&config.topoJSON){delete data.z;data.x={};data.y.vars.push("Dummy");var ii=0;for(var i=ii;i<rows.length;i++){data.y.smps.push(rows[i])}data.y.data=[[0]];for(var i=0;i<cols.length;i++){data.x[cols[i]]=[];for(var j=0;j<rows.length;j++){data.x[cols[i]].push(arr[j][i])}}}else{if(config&&config.graphType=="Venn"){data={venn:{data:{},legend:{}}};for(var i=0;i<rows.length;i++){data.venn.data[rows[i]]=arr[i][0]}data.venn.legend=rows.length==15?{A:"A",B:"B",C:"C",D:"D"}:rows.length==3?{A:"A",B:"B",C:"C"}:rows.length==2?{A:"A",B:"B"}:{A:"A"};return{data:data,config:{graphType:"Venn"}}}else{if(bp1||bp2){data={y:{vars:["bp"],smps:rows,iqr1:[[]],qtl1:[[]],median:[[]],qtl3:[[]],iqr3:[[]],out:[[]]}};if(bp1){bp1=["median","qtl1","qtl3","iqr1","iqr3"];for(var i=0;i<bp1.length;i++){var ii=cols.indexOf(bp1[i]);if(ii!=-1){for(var j=0;j<rows.length;j++){data.y[bp1[i]][0].push(arr[j][ii])}}}}else{bp2=["median","q1","q3","ymin","ymax"];var mp2=["median","qtl1","qtl3","iqr1","iqr3"];for(var i=0;i<bp2.length;i++){var ii=cols.indexOf(bp2[i]);if(ii!=-1){for(var j=0;j<rows.length;j++){data.y[mp2[i]][0].push(arr[j][ii])}}}}var ii=cols.indexOf("outliers");for(var j=0;j<rows.length;j++){data.y.out[0].push(arr[j][ii]?arr[j][ii].split(/,\s*/):[])}if(config&&config.aes&&config.aes.meta&&config.aes.x){var ii=cols.indexOf(config.aes.x);for(var j=0;j<rows.length;j++){data.y.smps[j]=arr[j][ii]}}var mp={median:true,qtl1:true,qtl3:true,iqr1:true,iqr3:true,q1:true,q3:true,ymin:true,ymax:true,outliers:true};for(var i=0;i<cols.length;i++){if(!mp.hasOwnProperty(cols[i])){if(!data.x){data.x={}}data.x[cols[i]]=[];for(var j=0;j<rows.length;j++){data.x[cols[i]].push(arr[j][i])}}}g="Boxplot";summaryType="iqr"}else{if(ts&&mts){var ii=1;for(var i=0;i<cols.length;i++){if(types[i]){data.x[arr[0][i]]=[]}else{data.y.vars.push("V"+ii);ii++}}data.y.smps=["Time"];for(var i=1;i<rows.length;i++){yAxis.push(rows[i]);data.y.smps.push(rows[i])}var ii=0;for(var i=0;i<cols.length;i++){if(types[i]){for(var j=0;j<rows.length;j++){data.x[arr[0][i]].push(j==0?"":arr[j][i])}}else{data.y.data[ii]=[];for(var j=0;j<rows.length;j++){data.y.data[ii][j]=arr[j][i]}ii++}}}else{for(var i=0;i<rows.length;i++){data.y.data[i]=[];data.y.vars.push(rows[i])}for(var i=0;i<cols.length;i++){var str=config&&config.metaData&&config.metaData.hasOwnProperty(cols[i])&&config.metaData[cols[i]]?true:false;if(config&&config.isDataFrame){if(xy&&(config.xAxis.includes(cols[i])||config.yAxis.includes(cols[i]))){data.y.smps.push(cols[i]);for(var j=0;j<rows.length;j++){data.y.data[j].push(arr[j][i])}}else{if(str||types[i]||(xy&&za&&!config.xAxis.includes(cols[i])&&!config.yAxis.includes(cols[i])&&!config.zAxis.includes(cols[i]))||(xa&&!config.xAxis.includes(cols[i]))||(ya&&!config.yAxis.includes(cols[i]))){if(!data.z){data.z={}}data.z[cols[i]]=[];for(var j=0;j<rows.length;j++){data.z[cols[i]].push(arr[j][i])}}else{data.y.smps.push(cols[i]);for(var j=0;j<rows.length;j++){data.y.data[j].push(arr[j][i])}}}}else{if(config&&config.isCxplot){str=str?str:config.aes.hasOwnProperty("stringSampleFactors")&&config.aes.stringSampleFactors.includes(cols[i])?true:false;if(!types[i]&&(cols[i]==config.aes.x||cols[i]==config.aes.y||cols[i]==config.aes.z||cols[i]==config.aes.xend||cols[i]==config.aes.yend)&&!str){data.y.smps.push(cols[i]);for(var j=0;j<rows.length;j++){data.y.data[j].push(arr[j][i])}}else{if(!data.z){data.z={}}data.z[cols[i]]=[];for(var j=0;j<rows.length;j++){data.z[cols[i]].push(arr[j][i])}}}else{if(str||types[i]){if(!data.z){data.z={}}data.z[cols[i]]=[];for(var j=0;j<rows.length;j++){data.z[cols[i]].push(arr[j][i])}}else{if(config&&config.metaData&&!types[i]){data.y.smps.push(cols[i]);for(var j=0;j<rows.length;j++){data.y.data[j].push(arr[j][i])}}else{if(!config||(config&&((config.xAxis&&config.xAxis.includes(cols[i]))||(config.yAxis&&config.yAxis.includes(cols[i])))||(config.xAxis2&&config.xAxis2.includes(cols[i]))||(config.zAxis&&config.zAxis.includes(cols[i]))||(config.bulletTargetVarName&&config.bulletTargetVarName==cols[i])||(config.rangeStack&&config.rangeStack.includes(cols[i]))||config.prompt||rurl)){data.y.smps.push(cols[i]);for(var j=0;j<rows.length;j++){data.y.data[j].push(arr[j][i])}}else{if(!data.z){data.z={}}data.z[cols[i]]=[];for(var j=0;j<rows.length;j++){data.z[cols[i]].push(arr[j][i])}}}}}}}}}}}if(config&&config.isDataFrame){g=config&&config.graphType?config.graphType:"Scatter2D";if(g!="Scatter2D"){data.y.data=transpose(data.y.data);data.y.vars=data.y.smps;data.y.smps=rows;data.x=data.z;delete (data.z)}if(data.y.vars.length==0){var n=data.y.smps.length;data.y.data=[[]];for(var i=0;i<n;i++){data.y.data[0].push(1)}data.y.vars=["counts"];summaryType="count"}}else{if(data.y.smps.length==0){var n=data.y.data.length;data.y.data=[[]];for(var i=0;i<n;i++){data.y.data[0].push(1)}data.y.smps=data.y.vars;data.y.vars=["counts"];data.x=data.z;delete (data.z);g="Bar";summaryType="sum"}else{if(!rurl&&!pc&&(gr||(data.y.smps.length==1&&!gs)||(trans&&(!config||(config&&!config.topoJSON&&!config.isDataFrame)))||gl||(go&&!ya))){data.y.data=transpose(data.y.data);data.y.vars=data.y.smps;data.y.smps=rows;data.x=data.z;delete (data.z);g="Bar"}}}var xAxisTime=isgt&&config&&((config.hasOwnProperty("xAxis")&&config.xAxis.includes(isgt))||(config.hasOwnProperty("aes")&&config.aes.hasOwnProperty("x")&&config.aes.x==isgt))?true:false;var yAxisTime=isgt&&config&&((config.hasOwnProperty("yAxis")&&config.yAxis.includes(isgt))||(config.hasOwnProperty("aes")&&config.aes.hasOwnProperty("y")&&config.aes.y==isgt))?true:false;if(ts&&mts){return{data:data,config:{graphType:config&&config.graphType?config.graphType:g,xAxis:["Time"],yAxis:yAxis,scatterType:"line",isGraphTime:true,xAxisTime:xAxisTime,yAxisTime:yAxisTime,dataTableZeroHeader:cn,dataTableColsOrder:(cols.unshift(cn),cols),dataTableColsHide:hc}}}else{if(ds&&as.length>0){var onm=2;for(var k=0;k<as.length;k++){data.y["data"+onm]=as[k];data.y["vars"+onm]=config.dataframeSets[k];onm++}}return{data:data,config:{graphType:config&&config.graphType?config.graphType:g,summaryType:summaryType,isGraphTime:isgt||isrd||(config&&config.isGraphTime)||false,xAxisTime:xAxisTime,yAxisTime:yAxisTime,dataTableZeroHeader:cn,dataTableColsOrder:(cols.unshift(cn),cols),dataTableColsHide:hc}}}};this.arrayToCXNetwork=function(arr,target,config,events,data,type){var obj={data:{nodes:[],edges:[]}};if(data){var map={};var cols=arr[0];var nodes=0;var edges=0;var fail=0;for(var i=1;i<arr.length;i++){var n=arr[i][0];var m=arr[i][1];if(this.nodeIndices.hasOwnProperty(n)&&this.nodeIndices.hasOwnProperty(m)){edges++}else{if(this.nodeIndices.hasOwnProperty(n)){nodes++}else{fail++}}map[n]=i}if(!nodes&&!edges){for(var i=0;i<data.nodes.length;i++){var n=data.nodes[i];if(n.hasOwnProperty("extId")&&map.hasOwnProperty(n.extId)){arr[map[n.extId]][0]=n.id;nodes++}}}if(edges>nodes){nodes=0;edges=0;fail=0;type="edge";for(var i=1;i<arr.length;i++){var n=arr[i][0];var m=arr[i][1];if(this.nodeIndices.hasOwnProperty(n)&&this.nodeIndices.hasOwnProperty(m)){edges++;obj[n+":"+m]={};for(var j=2;j<cols.length;j++){obj[n+":"+m][cols[j]]=arr[i][j]}}else{fail++}}}else{if(nodes>8){nodes=0;edges=0;fail=0;type="node";for(var i=1;i<arr.length;i++){var n=arr[i][0];if(this.nodeIndices.hasOwnProperty(n)){nodes++;obj[n]={};for(var j=1;j<cols.length;j++){obj[n][cols[j]]=arr[i][j]}}else{fail++}}}else{return arr}}if((type=="edge"&&(edges>5||edges>=arr.length-1))||(type=="node"&&(nodes>5||nodes>=arr.length-1))){return{data:obj,rows:Math.max(nodes,edges),fail:fail,type:type}}else{return arr}}else{if(!type||type=="edge"){var done={};for(var i=1;i<arr.length;i++){var i1=arr[i][0];var i2=arr[i][1];if(i1&&i2){var n1={id:i1};var n2={id:i2};var e={id1:i1,id2:i2};for(var j=2;j<arr[i].length;j++){n1[arr[0][j]]=arr[i][j];n2[arr[0][j]]=arr[i][j];e[arr[0][j]]=arr[i][j]}if(!done.hasOwnProperty(i1)){obj.data.nodes.push(n1);done[i1]=true}if(!done.hasOwnProperty(i2)){obj.data.nodes.push(n2);done[i2]=true}obj.data.edges.push(e)}}obj.renderTo=target;obj.config=config?config:obj.config={graphType:"Network"};obj.events=events}}return obj};this.sXj=function(x,config){for(var i=0;i<x.y.data.length;i++){x.y.data[i].unshift(x.y.vars[i])}x.y.data.unshift(x.y.smps);x.y.data[0].unshift("");x=this.arrayToCX(x.y.data,config);return x};this.gexfToCX=function(xml,target,config,events){var XMLToJSON=function(xml,json,p,current){json=json||{};if(p&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){var j={};for(var i=0;i<xml.attributes.length;i++){var attr=xml.attributes.item(i);var attrName=attr.name.replace(/(?!xmlns)^.*:/,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();var attrVal=attr.value.trim();if(p){j[attrName]=attrVal}else{json[attrName]=attrVal}}if(p){json[p].push(j)}}else{if(p==="alt"){json[p].push(xml.textContent.replace(/\"/g,"'").replace(/\[/g,"&#91").replace(/\]/g,"&#93"))}}if(xml.hasChildNodes()&&!current){for(var k=0;k<xml.childNodes.length;k++){var childNode=xml.childNodes.item(k);if(childNode.nodeType===1){var childName=childNode.nodeName.replace(/(?!xmlns)^.*:/,"").toLowerCase();XMLToJSON(childNode,json,childName)}}}return json};var nodes=[];var edges=[];var cl=true;var gexf=xml.childNodes[0];if(gexf.tagName.toLowerCase()=="gexf"){for(var i=0;i<gexf.childNodes.length;i++){var el=gexf.childNodes[i];if(el.nodeName&&el.nodeName.toLowerCase()=="graph"){for(var j=0;j<el.childNodes.length;j++){var nd=el.childNodes[j];if(nd.nodeName&&nd.nodeName.toLowerCase()=="nodes"){for(var k=0;k<nd.childNodes.length;k++){var n=nd.childNodes[k];if(n.nodeName&&n.nodeName.toLowerCase()=="node"){var js=XMLToJSON(n);var node={};if(js.id){for(var p in js){switch(p.toLowerCase()){case"id":node.id=js.id;break;case"label":node.name=js.label;break;case"color":node.color="rgb("+js[p][0].r+","+js[p][0].g+","+js[p][0].b+")";break;case"position":node.x=Number(js[p][0].x);node.y=Number(js[p][0].y);node.z=Number(js[p][0].z);cl=false;break;case"size":node.width=Number(js[p][0].value);node.height=Number(js[p][0].value);break}}nodes.push(node)}}}}else{if(nd.nodeName&&nd.nodeName.toLowerCase()=="edges"){for(var k=0;k<nd.childNodes.length;k++){var e=nd.childNodes[k];if(e.nodeName&&e.nodeName.toLowerCase()=="edge"){js=XMLToJSON(e);var edge={};if(js.source&&js.target){edge.id1=js.source;edge.id2=js.target;edges.push(edge)}}}}}}}}}else{alert("Ooops! Not a Gephi gexf file!")}var res="Number of Nodes: "+nodes.length+"\nNumber of Edges: "+edges.length+"\n";res=res.replace(/\n/g,"<br>");var data={data:{nodes:nodes,edges:edges},config:{graphType:"Network",calculateLayout:cl,showAnimation:false,networkNodesOnTop:true,showNodeNameThreshold:20000,networkFreeze:false,preScaleNetwork:false,moveParentsWithChildren:true,ignoreEventlessOrder:true,networkVendor:"Gephi"},renderTo:target,events:events,afterRender:[["flashInfoSpan",[100,100,res,5000]],["appendNetworkDataFromURL",[]]]};if(config){for(var p in config){data.config[p]=config[p]}}return data};this.metabaseToCX=function(xml,target,config,events){var loc={3:"microsome",13:"epr",21:"lysosome",43:"nucleus",67:"golgi",1287:"mitochondria",1312:"peroxisome"};var ctx=window.document.createElement("canvas").getContext("2d",{willReadFrequently:true});var XMLToJSON=function(xml,json,p,current){json=json||{};if(p&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){var j={};for(var i=0;i<xml.attributes.length;i++){var attr=xml.attributes.item(i);var attrName=attr.name.replace(/(?!xmlns)^.*:/,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();var attrVal=attr.value.trim();if(p){j[attrName]=attrVal}else{json[attrName]=attrVal}}if(p){json[p].push(j)}}else{if(p==="alt"){json[p].push(xml.textContent.replace(/\"/g,"'").replace(/\[/g,"&#91").replace(/\]/g,"&#93"))}}if(xml.hasChildNodes()&&!current){for(var k=0;k<xml.childNodes.length;k++){var childNode=xml.childNodes.item(k);if(childNode.nodeType===1){var childName=childNode.nodeName.replace(/(?!xmlns)^.*:/,"").toLowerCase();XMLToJSON(childNode,json,childName)}}}return json};var wrapText=function(str,width){var re=new RegExp("(?![^\\n]{1,"+width+"}$)([^\\n]{1,"+width+"})([\\s|-])","g");return str.toString().replace(re,"$1$2\n").replace(" \n","\n")};var measureTextMultiple=function(t,f){var l=t.split(/\n/);var m=0;ctx.font=f;for(var i=0;i<l.length;i++){m=Math.max(m,ctx.measureText(l[i]).width)}return m};var getMembrane=function(node){var getNode=function(){return{shape:"rectangle",color:"rgba(255,255,255,0)",outline:"rgba(0,0,0,0)",outlineWidth:0,hideLabel:true,immutable:true,eventless:true,type:node.type,zorder:node.zorder+1,width:32,height:32}};var getNodeTL=function(){var nd=getNode();nd.id=node.id+"-membraneTL";nd.pattern="membraneTL";nd.x=node.x-(node.width*0.5);nd.y=node.y-(node.height*0.5);nd.width=64;nd.height=64;return nd};var getNodeTR=function(){var nd=getNode();nd.id=node.id+"-membraneTR";nd.pattern="membraneTR";nd.x=node.x+(node.width*0.5)-32;nd.y=node.y-(node.height*0.5);nd.width=64;nd.height=64;return nd};var getNodeBL=function(){var nd=getNode();nd.id=node.id+"-membraneBL";nd.pattern="membraneBL";nd.x=node.x-(node.width*0.5);nd.y=node.y+(node.height*0.5)-32;nd.width=64;nd.height=64;return nd};var getNodeBR=function(){var nd=getNode();nd.id=node.id+"-membraneBR";nd.pattern="membraneBR";nd.x=node.x+(node.width*0.5)-32;nd.y=node.y+(node.height*0.5)-32;nd.width=64;nd.height=64;return nd};var getNodeTop=function(s){var nd=getNode();nd.id=node.id+"-membraneT";nd.pattern="membraneTop";nd.x=node.x+(s==0?0:s==1?-16:s==2?16:0);nd.y=node.y-(node.height*0.5);nd.width=node.width-(s==0?0:s==1?32:s==2?32:64);return nd};var getNodeBottom=function(s){var nd=getNodeTop(s);nd.id=node.id+"-membraneB";nd.pattern="membraneBottom";nd.y=node.y+(node.height*0.5)-16;return nd};var getNodeRight=function(s){var nd=getNode();nd.id=node.id+"-membraneR";nd.pattern="membraneRight";nd.x=node.x+(node.width*0.5)-16;nd.y=node.y+(s==0?0:s==1?-16:s==2?16:0);nd.height=node.height-(s==0?0:s==1?32:s==2?32:64);return nd};var getNodeLeft=function(s){var nd=getNodeRight(s);nd.id=node.id+"-membraneL";nd.pattern="membraneLeft";nd.x=node.x-(node.width*0.5);return nd};switch(node.type){case 1:node.shape="rectangle";return[getNodeTop(0)];case 2:node.shape="rectangle";return[getNodeRight(0)];case 3:node.shape="roundrecttr";return[getNodeTop(1),getNodeRight(2),getNodeTR()];case 4:node.shape="rectangle";return[getNodeBottom(0)];case 5:node.shape="rectangle";return[getNodeTop(0),getNodeBottom(0)];case 6:node.shape="roundrectbr";return[getNodeBottom(1),getNodeRight(1),getNodeBR()];case 7:node.shape="roundrectr";return[getNodeTop(1),getNodeBottom(1),getNodeRight(3),getNodeBR(),getNodeTR()];case 8:node.shape="rectangle";return[getNodeLeft(0)];case 9:node.shape="roundrecttl";return[getNodeTop(2),getNodeLeft(2),getNodeTL()];case 10:node.shape="rectangle";return[getNodeRight(0),getNodeLeft(0)];case 11:node.shape="roundrectt";return[getNodeTop(3),getNodeRight(2),getNodeLeft(2),getNodeTR(),getNodeTL()];case 12:node.shape="roundrectbl";return[getNodeBottom(2),getNodeLeft(1),getNodeBL()];case 13:node.shape="roundrectl";return[getNodeTop(2),getNodeBottom(2),getNodeLeft(3),getNodeTL(),getNodeBL()];case 14:node.shape="roundrectb";return[getNodeBottom(3),getNodeRight(1),getNodeLeft(1),getNodeBR(),getNodeBL()];case 15:if(node.width<64||node.height<64){node.shape="rectangle";delete node.gradient;delete node.color1;delete node.color2;delete node.color3;return[getNodeTop(0)]}node.shape="roundrect2";return[getNodeTop(3),getNodeBottom(3),getNodeRight(3),getNodeLeft(3),getNodeTR(),getNodeTL(),getNodeBR(),getNodeBL()]}return[]};var getRadians=function(x0,y0,x1,y1){return(Math.atan2(y1-y0,x1-x0)+2*Math.PI)%(2*Math.PI)};var getCoordinateAtDistance=function(x0,y0,x1,y1,d){var dx=x1-x0;var dy=y1-y0;var distance=Math.hypot(dx,dy);if(distance===0){return[x0,y0]}var ratio=d/distance;var newX=x0+dx*ratio;var newY=y0+dy*ratio;return[newX,newY]};var getLengthToNodeBoundary=function(x0,y0,x1,y1,node){var dx=x1-x0;var dy=y1-y0;var intersectionX=x0;var intersectionY=y0;var nodeLeft=node.x-node.width/2;var nodeRight=node.x+node.width/2;var nodeTop=node.y-node.height/2;var nodeBottom=node.y+node.height/2;if(dx!==0){var leftIntersect=(nodeLeft-x0)/dx;var rightIntersect=(nodeRight-x0)/dx;if(dx>0){intersectionX=nodeLeft}else{intersectionX=nodeRight}if(leftIntersect>=0&&leftIntersect<=1){intersectionY=y0+leftIntersect*dy}else{if(rightIntersect>=0&&rightIntersect<=1){intersectionY=y0+rightIntersect*dy}}}if(dy!==0){var topIntersect=(nodeTop-y0)/dy;var bottomIntersect=(nodeBottom-y0)/dy;if(dy>0){intersectionY=nodeTop}else{intersectionY=nodeBottom}if(topIntersect>=0&&topIntersect<=1){intersectionX=x0+topIntersect*dx}else{if(bottomIntersect>=0&&bottomIntersect<=1){intersectionX=x0+bottomIntersect*dx}}}var distance=Math.sqrt(Math.pow(intersectionX-x0,2)+Math.pow(intersectionY-y0,2));return distance+2};var nodes=[];var edges=[];var pw=xml.childNodes[0];if(pw.tagName.toLowerCase()=="map"){var seen={};var sord=[];var n=0;var ob=XMLToJSON(pw,false,false,true);nodes.push({id:"__background__",type:"background",shape:"rectangle",color:"rgb(220,231,232)",outline:"rgb(29,154,195)",outlineWidth:3,width:Number(ob.width),height:Number(ob.height),x:Number(ob.width)*0.5,y:Number(ob.height)*0.5,hideLabel:true,immutable:true,eventless:true,zorder:1});sord.push(n++);for(var i=0;i<pw.childNodes.length;i++){var el=pw.childNodes[i];if(el.nodeName){var nn=el.nodeName.toLowerCase();switch(nn){case"localizations":for(var j=0;j<el.childNodes.length;j++){var nd=el.childNodes[j];if(nd.nodeName&&nd.nodeName.toLowerCase()=="loc"){var js=XMLToJSON(nd);var shp=loc.hasOwnProperty(js.id)?"image":js.id=="16"?"roundrect2":"roundrect";var node={id:"loc"+(j+1),shape:shp,hideLabel:true,immutable:true,eventless:true,x:Number(js.x)+(Number(js.width)*0.5),y:Number(js.y)+(Number(js.height)*0.5),width:Number(js.width),height:Number(js.height),type:Number(js.type),zorder:js.appearance&&js.appearance[0].zorder?Number(js.appearance[0].zorder.replace("Integer: ","")):2};if(shp!="image"){node.color="rgba(0,0,0,0)";node.outline=js.id=="16"?"rgba(0,0,0,0)":"rgb(83,158,188)";node.outlineWidth=js.id!="16"?3:0;if(js.id!="16"){node.width-=6;node.height-=6}}if(js.appearance&&js.appearance[0].rotateangle){node.rotate=Number(js.appearance&&js.appearance[0].rotateangle.split(": ")[1]);if(!node.rotate){delete node.rotate}else{node.widthTMP=node.width;node.width=node.height;node.height=node.widthTMP;delete node.widthTMP}}if(js.id=="16"){node.gradient="linear";node.color1="rgb(122,194,226)";node.color2="rgb(223,237,248)";node.color3="rgb(223,237,248)"}if(shp=="image"){if(js.id=="1287"){node.imagePath=js.type=="1"?CanvasXpress.images.mitochondria2:CanvasXpress.images.mitochondria}else{node.imagePath=CanvasXpress.images[loc[js.id]]}}for(var p in js){if(p.toLowerCase()=="appearance"){for(var a in js[p][0]){var vk=js[p][0][a].split(": ");switch(vk[0]){case"String":node[a]=vk[1];break;case"Integer":case"Double":node[a]=Number(vk[1]);break;case"Boolean":node[a]=vk[1]=="true"?true:false;break}}}}nodes.push(node);sord.push(n++);if(Number(js.id)==16){var mem=getMembrane(node);if(mem.length){for(var k=0;k<mem.length;k++){nodes.push(mem[k]);sord.push(n++)}}}}}break;case"nodes":for(var j=0;j<el.childNodes.length;j++){var nd=el.childNodes[j];if(nd.nodeName&&nd.nodeName.toLowerCase()=="node"){var js=XMLToJSON(nd);var node={};for(var p in js){if(p.toLowerCase()=="alt"){if(js[p][0].match(/\w/)){node.tooltip=js[p][0].replace(/\"/g,"'");node.tooltip=js[p][0].replace(/\[/g,"&#91");node.tooltip=js[p][0].replace(/\]/g,"&#93")}}if(p.toLowerCase()=="appearance"){for(var a in js[p][0]){vk=js[p][0][a].split(":");switch(vk[0]){case"String":node[a]=vk[1].replace(/\s/g,"");break;case"Integer":case"Double":node[a]=Number(vk[1].replace(/\s/g,""));break;case"Boolean":node[a]=vk[1].replace(/\s/g,"")=="true"?true:false;break;case"Rectangle":node[a]=vk[1].replace(/\s/g,"").split(",").map(Number);break;case"Color":node[a]=vk[1].replace(/\s/g,"").split(",").map(Number);node[a][3]=Math.round(node[a][3]/255*10)/10;node[a]="rgba("+node[a].join(",")+")";break;case"Font":node[a]=vk[1].replace(/\s/g,"").split(",");break}}}node[p]=js[p]=="true"?true:js[p]=="false"?false:!isNaN(js[p])?Number(js[p]):js[p]}node.extId=js.id;node.id=js.nodeid.toString();node.x=Number(js.x)+(Number(js.width)*0.5);node.y=Number(js.y)+(Number(js.height)*0.5);node.width=Number(js.width);node.height=Number(js.height);if(node.iconarea){node.width=node.iconarea[2];node.height=node.iconarea[3];node.x=node.iconarea[0]+(node.width*0.5);node.y=node.iconarea[1]+(node.height*0.5);delete node.iconarea}if(js.icontype&&(js.type==0||js.type==16)){if(isNaN(js.icontype)){js.icontype=1000}if(Number(js.icontype)<10){js.icontype="0"+js.icontype}if(CanvasXpress.images.hasOwnProperty(js.icontype)){node.zoomX=50/node.width;node.zoomY=50/node.height;node.shape="image";node.imagePath=CanvasXpress.images[js.icontype];node.immutable=false}else{node.shape="roundrect";node.immutable=true}}else{if(js.icontype){switch(js.type){case"-10":node.width-=5;node.height-=5;node.x+=2.5;node.y+=2.5;node.shape=node.arcwidth>40?"roundrecto":"roundrect";break;case"21":case"61":case"63":case"91":case"-11":case"-12":node.width-=4;node.height-=4;node.x+=2;node.y+=2;node.shape="roundrect";break;default:break}node.immutable=true}else{node.shape="roundrect";node.immutable=true}}if(node.name==""){node.hideLabel=true}else{node.name=node.name.toString().replace(/\[/g,"&#91").replace(/\]/g,"&#93").replace(/\"/g,"&quot")}if(node.textarea){var lines=1;if(node.font){lines=Math.floor(node.textarea[3]/(Number(node.font[2])+(Number(node.font[2])>12?1:0)));node.labelSize=node.font[2]==14?1.1:1;if(node.font[0].match(/Bold Italic/i)){node.labelStyle="Bold Italic"}else{if(node.font[0].match(/Bold/i)){node.labelStyle="Bold"}else{if(node.font[0].match(/Italic/i)){node.labelStyle="Italic"}}}}if(lines>1&&!node.name.toString().match(/\n/)){var fnt=Math.floor(10*node.labelSize)+"px Arial";var tst=Math.floor(node.textarea[2]/5.5);var wrp=tst>0?wrapText(node.name.toString(),tst):node.name.toString();var lns=wrp.split(/\n/);var max=measureTextMultiple(wrp,fnt);if(lns.length>lines){while(lns.length>lines&&tst<node.name.toString().length){wrp=wrapText(node.name.toString(),tst++);lns=wrp.split(/\n/);max=measureTextMultiple(wrp,fnt)}}if(max>node.textarea[2]){wrp=wrp.replace("(","\n(");lns=wrp.split(/\n/);max=measureTextMultiple(wrp,fnt);while((max>node.textarea[2]||lns.length*fnt>node.textarea[3]||lns.length<lines)&&tst>3){wrp=wrapText(node.name,tst--);lns=wrp.split(/\n/);max=measureTextMultiple(wrp,fnt)}}node.name=wrp}else{if(lines==0){node.hideLabel=true}}node.labelX=node.textarea[0]+(node.textarea[2]*0.5);node.labelY=node.textarea[1]+(node.textarea[3]*0.5)}if(node.textalignment!=null){if(node.textalignment==0){node.labelAlign="left";node.labelX-=(node.textarea[2]*0.45)}else{if(node.textalignment==1){node.labelAlign="center"}else{if(node.textalignment==2){node.labelAlign="right";node.labelX+=(node.textarea[2]*0.45)}}}}delete node.textarea;if(node.fontcolor){node.labelColor=node.fontcolor;delete node.fontcolor}if(node.backgroundcolor){node.color=node.backgroundcolor;delete node.backgroundcolor}if(node.bordercolor){node.outline=node.bordercolor;delete node.bordercolor}if(node.rotateangle){node.rotate=node.shape=="image"?-node.rotateangle:270-node.rotateangle;if(node.shape!="image"){node.labelRotate=-node.rotateangle}delete node.rotateangle}if(node.borderwidth){node.outlineWidth=Number(node.borderwidth)-1;delete node.borderwidth}seen[node.id]=n;delete node.appearance;delete node.icontype;nodes.push(node);sord.push(n++);if(node.complex){nodes.push({id:node.id+"-complex",x:node.x,y:node.y,width:14,height:14,shape:"star",color:"rgb(255,255,255)",hideLabel:true,zorder:node.zorder+1,parentNode:node.id});seen[node.id+"-complex"]=n;sord.push(n++);delete node.complex}if(node.pathstart){var rot=0;var ptx=0;var pty=0;switch(node.sideofpathstarteditor){case 0:rot=90;pty=-(40+node.pathstartarrowmargin);break;case 1:rot=180;ptx=(40+node.pathstartarrowmargin);break;case 2:rot=270;pty=(40+node.pathstartarrowmargin);break;case 3:rot=0;ptx=-(40+node.pathstartarrowmargin);break}nodes.push({id:node.id+"-pathstart",x:node.x+ptx,y:node.y+pty,width:40,height:40,shape:"image",imagePath:CanvasXpress.images["99"],hideLabel:true,immutable:true,rotate:rot,zorder:node.zorder+1,parentNode:node.id});seen[node.id+"-pathstart"]=n;sord.push(n++);delete node.sideofpathstarteditor;delete node.pathstartarrowmargin;delete node.pathstart}if(node.organismspecificobject){nodes.push({id:node.id+"-organism",x:node.x,y:node.y,width:60,height:60,shape:"circle",color:"rgba(0,0,0,0.1)",outline:"rgb(255,255,0)",outlineWidth:3,hideLabel:true,zorder:node.zorder-1,parentNode:node.id});seen[node.id+"-organism"]=n;sord.push(n++);delete node.organismspecificobject}}}break;case"edges":for(var j=0;j<el.childNodes.length;j++){var ed=el.childNodes[j];if(ed.nodeName&&ed.nodeName.toLowerCase()=="edge"){var js=XMLToJSON(ed);var edge={};for(var p in js){if(p.toLowerCase()=="alt"){continue}if(p.toLowerCase()=="appearance"){for(var a in js[p][0]){if(a=="linkhighlighting"){vk=js[p][0][a].split(":");if(vk[1]=="Color"&&vk[2]){vk[2]=vk[2].split(",");vk[2].pop();edge.highlight="rgb("+vk[2].join(",")+")"}}else{vk=js[p][0][a].split(": ");switch(vk[0]){case"String":edge[a]=vk[1];break;case"Integer":case"Double":edge[a]=Number(vk[1]);break;case"Boolean":edge[a]=vk[1]=="true"?true:false;break;case"Rectangle":edge[a]=vk[1].replace(/\s/g,"").split(",").map(Number);break;case"PointArray":var cp=[];vk[1]=vk[1].replace(/\s/g,"").split(";");for(var k=0;k<vk[1].length-1;k++){cp.push(vk[1][k].split(",").map(Number))}edge[a]=cp;break}}}}edge[p]=js[p]=="true"?true:js[p]=="false"?false:!isNaN(js[p])?Number(js[p]):js[p]}edge.id1=js.src;edge.id2=js.dst;if(edge.type){edge.EdgeType=edge.type;delete edge.type}if(edge.directed){edge.endArrow="arrow";delete edge.directed}edge.color="grey";edge.type=edge.enhances?"dashed":"solid";if(edge.visualization=="Round"){edge.type="quadratic";edge.angle=edge.angle}else{if(edge.visualization=="Bezier"){if(!edge.controlpoints){edge.type="solid";edge.linksourcepointindex=0;edge.linktargetpointindex=0}else{edge.type="bezier";edge.angle=edge.angle}}}if(edge.hasOwnProperty("effect")){if(edge.effect>=0){switch(edge.effect){case 0:edge.color="rgb(152,156,158)";break;case 1:edge.color="rgb(0,128,0)";break;case 2:edge.color="rgb(170,0,0)";break}}if(edge.mech!=null){var dec={};if(edge.showhexagon){var col=edge.hexagoncustomcolor||edge.color;var idx=edge.hexagonindex||0;var pos=edge.hexagoncoordinate||0.5;var cll=edge.effect==0?"black":"rgb(242,216,0)";var getDec=function(lbl){return{label:lbl,labelColor:cll,shape:"hexagon",color:col,index:idx,pos:pos}};switch(edge.mech){case -1:dec=getDec("");break;case 0:dec=getDec("?");break;case 2:dec=getDec("CM");break;case 3:dec=getDec("+P");break;case 4:dec=getDec("-P");break;case 5:dec=getDec("B");break;case 6:dec=getDec("Cn");break;case 7:dec=getDec("T");break;case 8:dec=getDec("C");break;case 9:dec=getDec("TR");break;case 10:dec=getDec("GR");dec.labelColor="white";dec.color="rgb(0,0,170)";break;case 11:dec=getDec("CR");break;case 12:dec=getDec("IE");break;case 14:dec=getDec("CS");dec.labelColor="white";dec.color="rgb(0,0,170)";break;case 15:dec=getDec("Z");break;case 16:dec=getDec("Tn");break;case 20:dec=getDec("cRT");break;case 21:dec=getDec("PE");break;case 22:dec=getDec("TE");break;case 24:dec=getDec("M");break;case 31:dec=getDec("SR");break;case 44:dec=getDec("RG");break;default:dec=getDec("");break}if(dec.label!=""){edge.decoration=[dec]}}delete edge.effect;delete edge.mech;delete edge.hexagonindex;delete edge.hexagoncoordinate;delete edge.showhexagon;delete edge.hexagoncustomcolor}}if(edge.broken){if(!edge.decoration){edge.decoration=[]}edge.decoration.push({label:"X",labelColor:"purple",fontSize:20,shape:"square",color:"rgba(0,0,0,0)",index:(edge.brokenindex||0),pos:(edge.brokencoordinate||0.5)});delete edge.broken;delete edge.brokenindex;delete edge.brokencoordinate}if(edge.weakens){if(!edge.decoration){edge.decoration=[]}edge.decoration.push({label:"-x-",labelColor:"purple",fontSize:12,shape:"square",color:"rgba(0,0,0,0)",index:(edge.weakensindex||0),pos:(edge.weakenscoordinate||0.5)});delete edge.weakens;delete edge.weakensindex;delete edge.weakenscoordinate}if(edge.disease){edge.color="purple";edge.thickness=2;delete edge.disease}if(edge.enhances){edge.color="purple";edge.thickness=2;delete edge.enhances}delete edge.appearance;delete edge.src;delete edge.dst;if(seen.hasOwnProperty(edge.id1)&&seen.hasOwnProperty(edge.id2)){var src=nodes[seen[edge.id1]];var dst=nodes[seen[edge.id2]];var sx=src.x;var sy=src.y;var sw=src.width*0.5;var sh=src.height*0.5;var ex=0;var ey=0;var dx=dst.x;var dy=dst.y;var dw=dst.width*0.5;var dh=dst.height*0.5;var ss,sd,sq,ds,dd,dq,xy,cx,cy,rd,frs,lst,n1;if(edge.visualization&&edge.visualization=="Right angle polyline"){ss=edge.linksourcepointindex?Math.floor((edge.linksourcepointindex-1)/src.linkpointcount):-1;sd=edge.linksourcepointindex?(edge.linksourcepointindex-(src.linkpointcount*ss))/(src.linkpointcount+1):0;if(edge.firstleg&&edge.firstleg=="Vertical"){frs=edge.controlpoints?edge.controlpoints[0][1]:false;sy=frs&&frs[1]>0?sy+sh:src.y>dst.y?sy-sh:frs&&frs<0?sy-sh:sy+sh;if(ss==0||ss==2){sx=(sx-sw)+(src.width*sd)}else{if(ss==1){sx=sx+sw}else{if(ss==3){sx=sx-sw}}}sq="tb"}else{frs=edge.controlpoints?edge.controlpoints[0][0]:false;sx=frs&&frs>0?sx+sw:src.x>dst.x?sx-sw:frs&&frs<0?sx-sw:sx+sw;if(ss==1||ss==3){sy=(sy-sh)+(src.height*sd)}else{if(ss==0){sy=sy-sh}else{if(ss==2){sy=sy+sh}}}sq="lr"}ds=edge.linktargetpointindex?Math.floor((edge.linktargetpointindex-1)/dst.linkpointcount):-1;dd=edge.linktargetpointindex?(edge.linktargetpointindex-(dst.linkpointcount*ds))/(dst.linkpointcount+1):0;if(!edge.controlpoints){if(edge.firstleg&&edge.firstleg=="Vertical"){dx=src.x>dst.x?dx+dw:dx-dw;if(ds==1||ds==3){dy=(dy-dh)+(dst.height*dd)}}else{dy=src.y>dst.y?dy+dh:dy-dh;if(ds==0||ds==2){dx=(dx-dw)+(dst.width*dd)}}}else{dq=edge.controlpoints.length%2?sq:sq=="tb"?"lr":"tb";n1=edge.controlpoints.length-1;lst=edge.controlpoints[n1];if(edge.linktargetpointindex){if(ds==1||ds==3){if(src.x+lst[0]>dst.x){dx+=dw}else{dx-=dw}dy=(dy-dh)+(dst.height*dd)}else{if(ds==0||ds==2){dx=(dx-dw)+(dst.width*dd);if(src.y+lst[1]>dst.y){dy+=dh}else{dy-=dh}}}}else{if(edge.controlpoints.length%2){if(sq==dq&&sq=="lr"){if(src.x+lst[0]>dst.x){dx+=dw}else{dx-=dw}}}else{dx=src.x+lst[0]>dst.x?dx+dw:dx-dw}if(edge.controlpoints.length%2){if(sq!=dq||sq!="lr"){dy=src.y+lst[1]>dst.y?dy+dh:dy-dh}}else{if(src.y+lst[1]>dst.y){dy=dy+dh}}}}if(edge.controlpoints){edge.elbows=[[sx,sy]];cx=sx;cy=sy;if(edge.firstleg&&edge.firstleg=="Vertical"){for(var k=0;k<edge.controlpoints.length;k++){if(k%2){cx=sx+edge.controlpoints[k][0]}else{cy=sy+edge.controlpoints[k][1]}edge.elbows.push([cx,cy])}if(edge.controlpoints.length%2){edge.elbows.push([dx,cy])}else{edge.elbows.push([cx,dy])}}else{for(var k=0;k<edge.controlpoints.length;k++){if(k%2){cy=sy+edge.controlpoints[k][1]}else{cx=sx+edge.controlpoints[k][0]}edge.elbows.push([cx,cy])}if(edge.controlpoints.length%2){edge.elbows.push([cx,dy])}else{edge.elbows.push([dx,cy])}}edge.elbows.push([dx,dy])}else{if(edge.firstleg&&edge.firstleg=="Vertical"){edge.elbows=[[sx,sy],[sx,dy],[dx,dy]]}else{edge.elbows=[[sx,sy],[dx,sy],[dx,dy]]}}}else{if(edge.controlpoints&&edge.linksourcepointindex!=null&&edge.linktargetpointindex!=null&&edge.id1!=edge.id2){if(edge.linksourcepointindex||edge.controlpoints){frs=edge.controlpoints?edge.controlpoints[0]:[0,0];if(edge.linksourcepointindex==0){ds=getLengthToNodeBoundary(sx,sy,sx+frs[0],sy+frs[1],src);xy=getCoordinateAtDistance(sx,sy,sx+frs[0],sy+frs[1],ds);rd=getRadians(sx,sy,sx+frs[0],sy+frs[1]);sx=xy[0];sy=xy[1];ex=(-ds*-Math.cos(rd));ey=ds*Math.sin(rd)}else{ss=Math.floor((edge.linksourcepointindex-1)/src.linkpointcount);sd=(edge.linksourcepointindex-(src.linkpointcount*ss))/(src.linkpointcount+1);switch(ss){case 0:ex=(src.width*sd);ey=0;sx=ex+sx-sw;sy=sy-sh;break;case 1:ex=0;ey=(src.height*sd);sx=sx+sw;sy=ey+sy-sh;break;case 2:ex=(src.width*sd);ey=0;sx=ex+sx-sw;sy=sy+sh;break;case 3:ex=0;ey=(src.height*sd);sx=sx-sw;sy=ey+sy-sh;break}}}if(edge.linktargetpointindex||edge.controlpoints){lst=edge.controlpoints?JSON.parse(JSON.stringify(edge.controlpoints[edge.controlpoints.length-1])):[0,0];if(edge.linktargetpointindex==0){if(edge.controlpoints){lst[0]=dx-(sx+lst[0]);lst[1]=dy-(sy+lst[1])}ds=getLengthToNodeBoundary(dx,dy,dx+lst[0],dy+lst[1],dst);xy=getCoordinateAtDistance(dx,dy,dx+lst[0],dy+lst[1],-ds);rd=getRadians(dx,dy,dx+lst[0],dy+lst[1]);dx=xy[0];dy=xy[1]}else{ds=Math.floor((edge.linktargetpointindex-1)/dst.linkpointcount);dd=(edge.linktargetpointindex-(dst.linkpointcount*ds))/(dst.linkpointcount+1);switch(ds){case 0:dx=(dst.width*dd)+dx-dw;dy=dy-dh;break;case 1:dx=dx+dw;dy=(dst.height*dd)+dy-dh;break;case 2:dx=(dst.width*dd)+dx-dw;dy=dy+dh;break;case 3:dx=dx-dw;dy=(dst.height*dd)+dy-dh;break}}}edge.elbows=[];for(var k=0;k<edge.controlpoints.length;k++){edge.elbows.push([sx+edge.controlpoints[k][0]+5,sy+edge.controlpoints[k][1]])}edge.elbows.unshift([sx,sy]);edge.elbows.push([dx,dy])}else{if(edge.id1==edge.id2){ss=edge.linksourcepointindex?Math.floor((edge.linksourcepointindex-1)/src.linkpointcount):-1;ds=edge.linktargetpointindex?Math.floor((edge.linktargetpointindex-1)/dst.linkpointcount):-1;if(ss==ds){edge.self={dir:edge.angle>0,pos:(ss==0?"top":ss==1?"right":ss=2?"bottom":"left"),size:20,end:"arrow"}}else{if(ss>ds||(ss==0&&ds==3)){edge.self={dir:edge.angle>0,pos:(ss==0?"topLeft":ss=1?"topRight":ss==2?"bottomRight":"bottomLeft"),size:20,end:"arrow"}}else{if(ds>ss||(ds==0&&ss==3)){edge.self={dir:edge.angle>0,pos:(ss==0?"topRight":ss==1?"bottomRight":ss==2?"bottomLeft":"topLeft"),size:20,end:"arrow"}}}}}else{if(edge.linksourcepointindex){ss=edge.linksourcepointindex?Math.floor((edge.linksourcepointindex-1)/src.linkpointcount):-1;sd=edge.linksourcepointindex?(edge.linksourcepointindex-(src.linkpointcount*ss))/(src.linkpointcount+1):0;if(ss==0||ss==2){sx=(sx-sw)+(src.width*sd)}else{sy=(sy-sh)+(src.height*sd)}}if(edge.linktargetpointindex){ds=edge.linktargetpointindex?Math.floor((edge.linktargetpointindex-1)/dst.linkpointcount):-1;dd=edge.linktargetpointindex?(edge.linktargetpointindex-(dst.linkpointcount*ds))/(dst.linkpointcount+1):0;if(ds==0||ds==2){dx=(dx-dw)+(dst.width*dd)}else{dy=(dy-dh)+(dst.height*dd)}}if(edge.linksourcepointindex||edge.linktargetpointindex){if(edge.linksourcepointindex){switch(ss){case 0:sy-=sh;break;case 1:sx+=sw;break;case 2:sy+=sh;break;case 3:sx-=sw;break}if(!edge.linktargetpointindex){ds=getLengthToNodeBoundary(dx,dy,sx,sy,dst);xy=getCoordinateAtDistance(dx,dy,sx,sy,ds);dx=xy[0];dy=xy[1]}else{switch(ds){case 0:dy-=dh;break;case 1:dx+=dw;break;case 2:dy+=dh;break;case 3:dx-=dw;break}}}else{switch(ds){case 0:dy-=dh;break;case 1:dx+=dw;break;case 2:dy+=dh;break;case 3:dx-=dw;break}ds=getLengthToNodeBoundary(sx,sy,dx,dy,src);xy=getCoordinateAtDistance(sx,sy,dx,dy,ds);sx=xy[0];sy=xy[1]}edge.elbows=[[sx,sy],[dx,dy]]}}}}delete edge.linksourcepointindex;delete edge.linktargetpointindex;delete edge.controlpoints;delete edge.visualization;delete edge.firstleg;edges.push(edge)}}}break}}}sord.sort(function(a,b){if(nodes[a].zorder-nodes[b].zorder==0){return a-b}else{return nodes[a].zorder-nodes[b].zorder}});var tmp=[];for(var i=0;i<sord.length;i++){tmp.push(nodes[sord[i]])}nodes=tmp}else{alert("Ooops! Not a Metabase xgmml file!")}var res="Number of Nodes: "+nodes.length+"\nNumber of Edges: "+edges.length+"\n";res=res.replace(/\n/g,"<br>");var data={data:{nodes:nodes,edges:edges},config:{adjustBezier:false,graphType:"Network",calculateLayout:false,showAnimation:false,networkNodesOnTop:false,showNodeNameThreshold:20000,networkFreeze:true,preScaleNetwork:false,moveParentsWithChildren:true,ignoreEventlessOrder:true,networkVendor:"Metabase"},renderTo:target,events:events,afterRender:[["flashInfoSpan",[100,100,res,5000]],["appendNetworkDataFromURL",[]]]};if(config){for(var p in config){data.config[p]=config[p]}}return data};this.cytoscapeToCX=function(xml,target,config,events){var XMLToJSON=function(xml,json,p,current){json=json||{};if(p&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){var j={};for(var i=0;i<xml.attributes.length;i++){var attr=xml.attributes.item(i);var attrName=attr.name.replace(/(?!xmlns)^.*:/,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();var attrVal=attr.value.trim();if(p){j[attrName]=attrVal}else{json[attrName]=attrVal}}if(p){json[p].push(j)}}else{if(p==="alt"){json[p].push(xml.textContent.replace(/\"/g,"'").replace(/\[/g,"&#91").replace(/\]/g,"&#93"))}}if(xml.hasChildNodes()&&!current){for(var k=0;k<xml.childNodes.length;k++){var childNode=xml.childNodes.item(k);if(childNode.nodeType===1){var childName=childNode.nodeName.replace(/(?!xmlns)^.*:/,"").toLowerCase();XMLToJSON(childNode,json,childName)}}}return json};var sp={ELLIPSE:"oval",arc:"circle",bitmap:"circle",line:"minus",text:"circle",ver_ellipsis:"oval",hor_ellipsis:"oval"};var nodes=[];var edges=[];var title="";var pw=xml.childNodes[0];if(pw.tagName.toLowerCase()=="graph"){for(var i=0;i<pw.childNodes.length;i++){var el=pw.childNodes[i];if(el.nodeName){var nn=el.nodeName.toLowerCase();var js=XMLToJSON(el);switch(nn){case"node":if(js.graphics&&js.id){var gr=js.graphics[0];var node={id:js.id,x:Number(gr.x),y:Number(gr.y),z:Number(gr.z),width:Number(gr.w),height:Number(gr.h),shape:(sp[gr.type]||gr.type),color:gr.fill,outline:gr.outline,outlineWidth:Number(gr.width)};if(js.label){node.name=js.label}if(js.att){for(var j=0;j<js.att.length;j++){var at=js.att[j];if(at.name&&!at.name.match(/NODE_/)&&at.name!="selected"&&at.name!="isInPath"){switch(at.type){case"String":if(at.name=="COMMON"&&at.value){node.label=at.value}else{if(at.value){node[at.name]=at.value}}break;case"Double":case"Integer":if(at.value!=null){node[at.name]=Number(at.value)}break;case"Boolean":if(at.value!=null){node[at.name]=at.value==0?false:true}break}}}}nodes.push(node)}break;case"edge":if(js.source&&js.target){var edge={id1:js.source,id2:js.target};if(js.id){edge.intId=js.id}if(js.label){edge.label=js.label}if(js.directed){edge.directed=js.directed}if(js.graphics){edge.color=js.graphics[0].fill;edge.width=js.graphics[0].width}if(js.att){for(var j=0;j<js.att.length;j++){var at=js.att[j];if(at.name&&!at.name.match(/EDGE_/)&&at.name!="selected"&&at.name!="isInPath"){switch(at.type){case"String":if(at.value){edge[at.name]=at.value}break;case"Double":case"Integer":if(at.value!=null){edge[at.name]=Number(at.value)}break;case"Boolean":if(at.value!=null){edge[at.name]=at.value==0?false:true}break}}}}edges.push(edge)}break;case"att":if(js.name&&js.value&&js.name=="Dataset Name"){title=js.value}break}}}}else{alert("Ooops! Not a cytoscape xgmml file!")}var res="Number of Nodes: "+nodes.length+"\nNumber of Edges: "+edges.length+"\n";res=res.replace(/\n/g,"<br>");var data={data:{nodes:nodes,edges:edges},config:{adjustBezier:false,graphType:"Network",calculateLayout:false,showAnimation:false,networkNodesOnTop:true,showNodeNameThreshold:20000,networkFreeze:false,preScaleNetwork:false,title:title,moveParentsWithChildren:true,ignoreEventlessOrder:true,networkVendor:"Cytoscape"},renderTo:target,events:events,afterRender:[["flashInfoSpan",[100,100,res,5000]],["appendNetworkDataFromURL",[]]]};if(config){for(var p in config){data.config[p]=config[p]}}return data};this.wikipathwayToCX=function(xml,target,config,events){var pw=xml.childNodes[0];var nodes={};var edges=[];var state={};var groups={};var anchors={};var order={};var cntp=1;var cntn=0;var sord=[];var groupRef={};var groupGref={};var groupStyl={};var groupId={};var wrn="\nWarnings:\n";var htt=false;var title,subtitle;var arrowTypes={Line:false,Arrow:"arrow",TBar:"square","mim-conversion":"arrow","mim-modification":"arrow","mim-cleavage":"arrow","mim-gap":"arrow","mim-branching-left":"arrow","mim-branching-right":"arrow","mim-inhibition":"square","mim-catalysis":"round","mim-stimulation":"arrowOpen","mim-necessary-stimulation":"arrowOpen","mim-binding":"arrowArc","mim-covalent-bond":"arrowArc","mim-transcription-translation":"arrowArcOpen"};var createNodeFromGroup=function(grp,id,type){var mnx=Number.MAX_VALUE;var mny=Number.MAX_VALUE;var mxx=-Number.MAX_VALUE;var mxy=-Number.MAX_VALUE;var ids=[];var ord=[];var col=type&&type=="Group"?"rgba(0,0,0,0)":"rgba(245,245,245,0.5)";var out=type&&type=="Group"?"rgba(0,0,0,0)":"rgb(0,0,0)";for(var i=0;i<grp.length;i++){mnx=Math.min(mnx,grp[i][1]-(grp[i][3]/2));mny=Math.min(mny,grp[i][2]-(grp[i][4]/2));mxx=Math.max(mxx,grp[i][1]+(grp[i][3]/2));mxy=Math.max(mxy,grp[i][2]+(grp[i][4]/2));ids.push(grp[i][0]);nodes[grp[i][0]].parentNode=id;ord.push(nodes[grp[i][0]].zorder);ord.sort(function(a,b){return a-b})}var w=mxx-mnx;var h=mxy-mny;var ob={id:id,x:(mnx+mxx)/2,y:(mny+mxy)/2,width:w+(grp.length>1&&w>10?5*(type=="Group"?1:4):0),height:h+(grp.length>1&&h>10?5*(type=="Group"?1:4):0),group:ids,hideLabel:true,hideTooltip:htt,type:"Group",color:col,outline:out,shape:type=="Group"?"rectangle":"roundrect",zorder:ord[0]};order[id]=cntn--;nodes[id]=ob;sord.push(id)};var createNodeFromPoint=function(p,id){var ob={id:id,x:Math.round(p.x*10)/10,y:Math.round(p.y*10)/10,width:p.width?Math.round(p.width):1,height:p.height?Math.round(p.height):1,hideLabel:p.show?false:true,hideTooltip:!htt?false:p.show?false:true,eventless:p.show?false:true,type:p.type||"Anchor",color:p.color||"rgba(0,0,0,0)",outline:p.outline||"rgba(0,0,0,0)",shape:p.shape||"circle",label:p.label||"",labelSize:p.labelSize||8,zorder:p.zorder||0};order[id]=cntp++;nodes[id]=ob;sord.push(id)};var getDirection=function(s){switch(s){case"r":case"l":return"rl";case"b":case"t":case"c":return"tb"}};var getSide=function(p,n){if(parseInt(p.relx)==1){return"r"}else{if(parseInt(p.relx)==-1){return"l"}else{if(parseInt(p.rely)==1){return"b"}else{if(parseInt(p.rely)==-1){return"t"}else{if(Math.abs(p.relx)>Math.abs(p.rely)){if(parseFloat(p.relx)>0){return"r"}else{return"l"}}else{if(parseFloat(p.rely)>0){return"b"}else{if(parseFloat(p.rely)<0){return"t"}else{if(n){if(parseFloat(n.x)<parseFloat(p.x)){return"l"}else{if(parseFloat(n.x)>parseFloat(p.x)){return"r"}else{if(parseFloat(n.y)<parseFloat(p.y)){return"t"}else{if(parseFloat(n.y)>parseFloat(p.y)){return"b"}else{return"c"}}}}}else{return"c"}}}}}}}}};var getNumberOfLines=function(e,n){var findExtra=function(sd,p1,p2){switch(sd){case"r":if(parseFloat(p1.x)>=parseFloat(p2.x)){return 2}break;case"l":if(parseFloat(p1.x)<=parseFloat(p2.x)){return 2}break;case"t":case"c":if(parseFloat(p1.y)<=parseFloat(p2.y)){return 2}break;case"b":if(parseFloat(p1.y)>=parseFloat(p2.y)){return 2}break}return 0};var s=e[0];var t=e[n];var ss=getSide(s,e[1]);var ts=getSide(t);var ls=2;if(getDirection(ss)==getDirection(ts)){ls++}if(ss!=ts){ls+=findExtra(ss,s,t);ls+=findExtra(ts,t,s)}return ls};var getPoint=function(s,a,f){if(f){switch(s){case"r":return[a[0]+20,a[1]];case"l":return[a[0]-20,a[1]];case"t":case"c":return[a[0],a[1]-20];case"b":return[a[0],a[1]+20]}}else{switch(s){case"r":case"l":return[a[0][0],a[1][1]];case"t":case"b":case"c":return[a[1][0],a[0][1]]}}};var getCoords=function(d,a){var r=[a[0]];var l=a[0];for(var i=1;i<a.length;i++){var c=a[i];switch(d){case"rl":r.push([c[0],l[1]]);break;case"tb":r.push([l[0],c[1]]);break}l=r[i];d=d=="rl"?"tb":"rl"}r.push(a[a.length-1]);return r};var to2DArray=function(edg){var ps=edg.point;var a=[];for(var i=0;i<ps.length;i++){a.push([Math.round(ps[i].x*10)/10,Math.round(ps[i].y*10)/10])}return a};var getElbowPoints=function(edg){var ps=edg.point;var n1=ps.length-1;var ls=getNumberOfLines(ps,n1);var s=getSide(ps[0],ps[1]);var t=getSide(ps[n1]);var d=getDirection(s);var a=to2DArray(edg);if(ls==ps.length){a=getCoords(d,a)}else{if(ps.length==2){a.splice(1,0,getPoint(s,a[0],true));if(ls>3){if(ls>3){a.splice(2,0,getPoint(t,a[2],true))}if(ls>4&&ls==5){a.splice(2,0,[a[2][0],a[0][1]]);a.splice(3,1);a.splice(1,1)}else{if(ls>4){a.splice(3,0,[(a[1][0]+a[2][0])/2,(a[1][1]+a[2][1])/2]);if(ls>5){a=to2DArray(edg);a=getCoords(d,a)}}else{a.splice(2,0,getPoint(s,[a[1],a[2]]))}}}else{if((a[0][0]==a[1][0]&&a[1][0]==a[2][0])||(a[0][1]==a[1][1]&&a[1][1]==a[2][1])){a.splice(1,1)}else{a.splice(2,0,getPoint(s,[a[1],a[2]]))}}}else{if(ps.length>ls){a=getCoords(d,a)}else{for(var i=0;i<n1;i++){var j=i*2;if(d=="tb"){d="rl";a.splice(j+1,0,[a[j][0],a[j+1][1]])}else{d="tb";a.splice(j+1,0,[a[j+1][0],a[j][1]])}}}}}var b=[[a[0][0],a[0][1]]];for(var i=1;i<a.length;i++){if(a[i][0]==a[i-1][0]&&a[i][1]==a[i-1][1]){continue}b.push([a[i][0],a[i][1]])}return b};var getBezierPoints=function(edg,sn,tn){var ps=edg.point;var n1=ps.length-1;var s=getSide(ps[0],ps[1]);var t=getSide(ps[n1]);var ds=getDirection(s);var dt=getDirection(t);var ar=to2DArray(edg);var segs=[];var p0,p1,mx,my;if(n1==1){p0=ar[0];p1=ar[1];if(sn&&tn){if(ds==dt){mx=(p0[0]+p1[0])/2;my=(p0[1]+p1[1])/2;if(ds=="tb"){if(t=="t"){if(my>tn.y-tn.height){my-=tn.height}}else{if(t=="b"){if(my<tn.y+tn.height){my+=tn.height}}}segs.push([p0[0],p0[1],p0[0],my,mx,my]);segs.push([mx,my,p1[0],my,p1[0],p1[1]])}else{if(t=="l"){if(mx>tn.x-tn.width){mx-=tn.width*0.5}}else{if(t=="r"){if(mx<tn.x+tn.width){mx+=tn.width*0.5}}}segs.push([p0[0],p0[1],mx,p0[1],mx,my]);segs.push([mx,my,mx,p1[1],p1[0],p1[1]])}}else{if(s=="t"||s=="b"){mx=t=="l"?-tn.width*0.5:t=="r"?tn.width*0.5:-tn.width*0.5;my=(p1[1]-p0[1])/3;if((t=="l"&&p0[0]>tn.x-tn.width)||(t=="r"&&p0[0]<tn.x+tn.width)){segs.push([p0[0],p0[1],p0[0],p0[1]+my,p1[0],p0[1]+my]);segs.push([p1[0],p0[1]+my,p1[0]+mx,p0[1]+my,p1[0]+mx,p0[1]+my+my]);segs.push([p1[0]+mx,p0[1]+my+my,p1[0]+mx,p1[1],p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p0[0],p1[1],p1[0],p1[1]])}}else{mx=(p1[0]-p0[0])/3;my=t=="t"?-tn.height:t=="b"?tn.height:-tn.height;if((t=="t"&&p0[1]>tn.y-tn.height)||(t=="b"&&p0[1]<tn.y+tn.height)){segs.push([p0[0],p0[1],p0[0]+mx,p0[1],p0[0]+mx,p1[1]]);segs.push([p0[0]+mx,p1[1],p0[0]+mx,p1[1]+my,p0[0]+mx+mx,p1[1]+my]);segs.push([p0[0]+mx+mx,p1[1]+my,p1[0],p1[1]+my,p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p1[0],p0[1],p1[0],p1[1]])}}}}}else{p0=ar[0];if(s=="t"||s=="b"){for(var i=1;i<n1;i++){p1=ar[i];if(i%2){segs.push([p0[0],p0[1],p0[0],p1[1],p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p1[0],p0[1],p1[0],p1[1]])}p0=p1}p1=ar[n1];if(n1%2){segs.push([p0[0],p0[1],p0[0],p1[1],p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p1[0],p0[1],p1[0],p1[1]])}}else{for(var i=1;i<n1;i++){p1=ar[i];if(i%2){segs.push([p0[0],p0[1],p1[0],p0[1],p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p0[0],p1[1],p1[0],p1[1]])}p0=p1}p1=ar[n1];if(n1%2){segs.push([p0[0],p0[1],p1[0],p0[1],p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p0[0],p1[1],p1[0],p1[1]])}}}return segs};var getStatePosition=function(n,s){var x=parseFloat(s.relx);var y=parseFloat(s.rely);var w=n.width/2;var h=n.height/2;return[n.x+(x*w),n.y+(y*h)]};var XMLToJSON=function(xml,json,p,parent){var j={};var prefix=new RegExp(/(?!xmlns)^.*:/);var trim=new RegExp(/^\s+|\s+$/g);if(!json){json={}}if(p&&(p=="point"||p=="anchor")&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){for(var i=0;i<xml.attributes.length;i++){var a=xml.attributes.item(i);var n=a.name.replace(prefix,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();if(p&&(p=="point"||p=="anchor")){j[n]=a.value.replace(trim,"")}else{json[n]=a.value.replace(trim,"")}}if(p&&(p=="point"||p=="anchor")){json[p].push(j)}}if(xml.hasChildNodes()&&!parent){for(var i=0;i<xml.childNodes.length;i++){var n=xml.childNodes.item(i);var p;if(n.nodeType==4){}else{if(n.nodeType==3){}else{if(n.nodeType==1){p=n.nodeName.replace(prefix,"").toLowerCase();XMLToJSON(n,json,p)}}}}}return json};var isValidShape=function(s){var shapes=["circle","sphere","box","rect","rectangle","rect2","rect3","roundrect","brace","square","triangle","triangle2","equilateral","equilateral2","star","diamond","rhombus","pentagon","hexagon","octagon"];shapes=shapes.concat(["oval","oval2","oval3","ovald","arc","arc2","arc3","arch","path","polygon","roundpolygon","spline","hull","violin","confidence","bezier","ellipse","ellipse2","ellipse2","plus","minus"]);shapes=shapes.concat(["pie","pie0","pie1","pie2","pie3","pie4","pie5","pie6","pie7","pie8","pie9","pacman","pacman2","mdavid","image"]);shapes=shapes.concat(["pch0","pch1","pch2","pch3","pch4","pch5","pch6","pch7","pch8","pch9","pch10","pch11","pch12","pch13","pch14","pch15","pch16","pch17","pch18","pch19","pch20","pch21","pch22","pch23","pch24","pch25"]);for(var i=0;i<shapes.length;i++){if(shapes[i]==s){return true}}return false};var hexToRgb=function(h){var hexToR=function(){return parseInt(h.substring(0,2),16)};var hexToG=function(){return parseInt(h.substring(2,4),16)};var hexToB=function(){return parseInt(h.substring(4,6),16)};h=h.charAt(0)=="#"?h.substring(1,7):h;return"rgb("+hexToR()+","+hexToG()+","+hexToB()+")"};var validateColor=function(c){c=c.toString();c=c.replace(/\s/g,"");var rgb=(/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/).exec(c);var rgba=(/rgba\((\d{1,3}),(\d{1,3}),(\d{1,3}),([0-9\.]+)\)/).exec(c);var hex=(/^#?([0-9abcdef]{6})/i).exec(c);var hex2=(/^([0-9abcdef]{6})/i).exec(c);if(CanvasXpress.colorNames.hasOwnProperty(c)){c=hexToRgb(CanvasXpress.colorNames[c])}else{if(rgb!=null){c=rgb[0]}else{if(rgba!=null){c=rgba[0]}else{if(hex!=null){c=hexToRgb(hex[0])}else{if(hex2!=null){c=hexToRgb("#"+hex2[0])}else{c=false}}}}}return c};if(pw.tagName.toLowerCase()=="pathway"){var ob=XMLToJSON(pw,false,false,true);title=ob.name;subtitle=ob.organism;for(var i=0;i<pw.childNodes.length;i++){var el=pw.childNodes[i];if(el.nodeName){var nn=el.nodeName.toLowerCase();switch(nn){case"comment":break;case"graphics":break;case"state":var ob=XMLToJSON(el);ob.nodeName=nn;state[ob.graphid]=ob;break;case"datanode":case"label":case"shape":var ob=XMLToJSON(el);ob.nodeName=nn;if(ob.database&&ob.id){ob.database+=" : "+ob.id}if(ob.graphid){ob.id=ob.graphid}if(ob.zorder){if(nn=="label"){ob.zorder=parseInt(ob.zorder)+100}}if(ob.centerx){ob.x=Math.round(ob.centerx*10)/10;delete (ob.centerx)}if(ob.centery){ob.y=Math.round(ob.centery*10)/10;delete (ob.centery)}if(ob.width){ob.width=parseInt(ob.width)}if(ob.height){ob.height=parseInt(ob.height)}if(ob.rotation){ob.rotate=(parseFloat(ob.rotation)*180/Math.PI)}if(ob.textlabel){ob.label=ob.textlabel}if(ob.fontsize){ob.labelSize=parseInt(ob.fontsize)}if(ob.fontweight){ob.labelStyle=ob.fontweight.toLowerCase()}if(ob.fontstyle){if(ob.fontweight){ob.labelStyle=ob.fontweight.toLowerCase()+" "+ob.fontstyle.toLowerCase()}else{ob.labelStyle=ob.fontstyle.toLowerCase()}}ob.labelColor=ob.textcolor?validateColor(ob.textcolor):ob.color?validateColor(ob.color):"rgb(0,0,0)";if(ob.align){if(ob.align=="Left"){ob.labelPosition="left"}else{if(ob.align=="Right"){ob.labelPosition="right"}}}if(ob.valign){if(ob.valign=="Bottom"){ob.labelPosition="bottom"}else{if(ob.valign=="Top"){ob.labelPosition="top"}}}if(ob.shapetype){if(ob.shapetype=="RoundedRectangle"){ob.shapetype=ob.value&&ob.value=="Double"?"roundrectd":"roundrect"}if(ob.shapetype=="Arc"){ob.shapetype="arc3"}if(ob.shapetype=="Mitochondria"){ob.shapetype="image";ob.imagePath="https://www.canvasxpress.org/assets/images/mit.png"}if(ob.shape=="oval"&&ob.value&&ob.value=="Double"){ob.shapetype="ovald"}if(ob.shapetype=="None"){ob.shapetype="rectangle"}if(isValidShape(ob.shapetype.toLowerCase())){ob.shape=ob.shapetype.toLowerCase()}else{wrn+=ob.id+" has an unkown shape: "+ob.shapetype+"\n";ob.shape=ob.shapetype}}if(!ob.shape){ob.shape="rectangle"}if(ob.color){ob.outlinecolor=validateColor(ob.color)}if(ob.fillcolor){ob.color=validateColor(ob.fillcolor)}else{ob.color=nn=="datanode"?"rgb(255,255,255)":"rgba(0,0,0,0)"}if(ob.shapetype||nn=="datanode"){ob.outline=ob.outlinecolor||"rgb(0,0,0)"}else{ob.outline=ob.outlinecolor||"rgba(0,0,0,0)"}if(nn=="label"){if(!ob.label||ob.label==""){ob.hideLabel=true;ob.hideTooltip=htt;ob.eventless=true}ob.color=ob.fillcolor&&ob.color!="rgb(255,255,255)"?ob.color:"rgba(0,0,0,0)";ob.outline=ob.shapetype?"rgb(0,0,0)":"rgba(0,0,0,0)"}else{if(nn=="shape"&&(!ob.label||ob.label=="")){ob.hideLabel=true;ob.hideTooltip=htt;ob.outline=ob.outlinecolor?ob.outlinecolor:ob.shapetype?"rgb(0,0,0)":"rgba(0,0,0,0)"}}if(ob.groupref){if(!groupRef.hasOwnProperty(ob.groupref)){groupRef[ob.groupref]=[]}groupRef[ob.groupref].push([ob.id,ob.x,ob.y,ob.width,ob.height]);ob.parentNode=ob.groupref}order[ob.id]=cntp++;nodes[ob.id]=ob;sord.push(ob.id);break;case"graphicalline":case"interaction":var ob=XMLToJSON(el);ob.nodeName=nn;if(ob.anchor){for(var j=0;j<ob.anchor.length;j++){anchors[ob.anchor[j].graphid]=true}delete (ob.anchor)}var n1=ob.point.length-1;if(ob.point[0].graphref&&ob.point[n1].graphref){ob.id1=ob.point[0].graphref;ob.id2=ob.point[n1].graphref}if(ob.color){ob.color=validateColor(ob.color)}var type="solid";if(ob.linestyle&&ob.linestyle=="Broken"){type="dashed"}if(ob.connectortype&&ob.connectortype=="Curved"){type+="Bezier"}ob.type=type;if(ob.point[0].arrowhead){if(arrowTypes[ob.point[0].arrowhead]){ob.startArrow=arrowTypes[ob.point[0].arrowhead]}}if(ob.point[n1].arrowhead){if(arrowTypes[ob.point[n1].arrowhead]){ob.endArrow=arrowTypes[ob.point[n1].arrowhead]}}if(ob.linethickness){ob.width=parseInt(ob.linethickness*10)/10;delete (ob.linethickness)}if(ob.point[0].relx&&ob.point[0].rely){ob.startX=parseFloat(ob.point[0].relx);ob.startY=parseFloat(ob.point[0].rely)}if(ob.point[n1].relx&&ob.point[n1].rely){ob.endX=parseFloat(ob.point[n1].relx);ob.endY=parseFloat(ob.point[n1].rely)}delete (ob.id);edges.push(ob);break;case"group":var ob=XMLToJSON(el);ob.nodeName=nn;if(ob.groupref&&ob.groupid){if(!groups.hasOwnProperty(ob.groupref)){groups[ob.groupref]=[]}groups[ob.groupref].push(ob.groupid);groupGref[ob.graphid]=ob.groupref}else{groupId[ob.graphid]=ob.groupid;groupStyl[ob.groupid]=ob.style}break;case"infobox":break;case"legend":break;case"biopax":break}}}}else{alert("Ooops! Not a gpml file!")}for(var s in state){var g=state[s].graphref;if(nodes[g]){var c=getStatePosition(nodes[g],state[s]);var p={id:g,x:c[0],y:c[1],width:state[s].width,height:state[s].height,label:state[s].textlabel==""?" ":state[s].textlabel,labelSize:ob.fontsize?parseInt(ob.fontsize):10,type:"State",color:state[s].textlabel==""||!state[s].fillcolor?"rgb(255,255,255)":validateColor(state[s].fillcolor),outline:"rgb(0,0,0)",shape:"oval",show:true};createNodeFromPoint(p,s)}}for(var g in groupRef){createNodeFromGroup(groupRef[g],g,groupStyl[g])}for(var g in groups){if(groupRef.hasOwnProperty(g)){for(var i=0;i<groups[g].length;i++){var ob=nodes[groups[g][i]];groupRef[g].push([ob.id,ob.x,ob.y,ob.width,ob.height])}createNodeFromGroup(groupRef[g],g,"Group")}}var edgs=[];var fail=[];for(var i=0;i<edges.length;i++){var ob=edges[i];var n1=ob.point.length-1;if(!ob.point[0].graphref&&!ob.point[n1].graphref){ob.exact=true}for(var j=0;j<ob.point.length;j++){var pt=ob.point[j];if(pt.graphref){if(!nodes.hasOwnProperty(pt.graphref)){if(j==0){if(groupId[pt.graphref]){ob.id1=groupId[pt.graphref]}else{createNodeFromPoint(pt,pt.graphref);ob.hideTooltip=htt;ob.exactStart=anchors[pt.graphref]?true:false;ob.id1=pt.graphref}}else{if(j==ob.point.length-1){if(groupId[pt.graphref]){ob.id2=groupId[pt.graphref]}else{createNodeFromPoint(pt,pt.graphref);ob.hideTooltip=htt;ob.exactEnd=anchors[pt.graphref]?true:false;ob.id2=pt.graphref}}}}}else{if(j==0||j==ob.point.length-1){var id=j==0?ob.graphid+".1":ob.graphid+".2";var ni=j==0?ob.point.length-1:0;createNodeFromPoint(pt,id);if(j==0){ob.id1=id;ob.exactStart=true}else{ob.id2=id;ob.exactEnd=true}ob.hideTooltip=htt;if(ob.point[ni].graphref){if(!nodes.hasOwnProperty(ob.point[ni].graphref)&&groupId[ob.point[ni].graphref]){if(j==0){ob.id2=groupId[ob.point[ni].graphref]}else{ob.id1=groupId[ob.point[ni].graphref]}}else{if(j==0){ob.id2=ob.point[ni].graphref}else{ob.id1=ob.point[ni].graphref}}}}}}if(ob.connectortype){if(ob.connectortype=="Elbow"){ob.elbows=getElbowPoints(ob)}else{if(ob.connectortype=="Curved"){ob.elbows=getBezierPoints(ob,nodes[ob.id1],nodes[ob.id2])}else{if(ob.connectortype=="Segmented"){ob.elbows=to2DArray(ob)}}}}if(nodes[ob.id1]&&nodes[ob.id2]){edgs.push(ob)}else{fail.push(ob)}}sord=sord.sort(function(a,b){if(nodes[a].zorder&&nodes[b].zorder){if(parseInt(nodes[a].zorder)-parseInt(nodes[b].zorder)==0){return order[a]-order[b]}else{return parseInt(nodes[a].zorder)-parseInt(nodes[b].zorder)}}else{return order[a]-order[b]}});var nods=[];for(var i=0;i<sord.length;i++){nods.push(nodes[sord[i]])}var res="Number of Nodes: "+nods.length+"\n";res+="Number of Edges: "+edgs.length+"\n";if(fail.length>0){res+="Number of Failed Edges: "+fail.length+"\n";for(var i=0;i<fail.length;i++){res+="\t"+(i+1)+". "+fail[i].graphid+"\n"}}if(wrn!="\nWarnings:\n"){res+=wrn}res=res.replace(/\n/g,"<br>");var data={data:{nodes:nods,edges:edgs},config:{adjustBezier:false,graphType:"Network",calculateLayout:false,showAnimation:false,networkNodesOnTop:true,arrowHeadType:"filledStraight",roundedPolygonRadius:10,disableTooltipCallout:true,showNodeNameThreshold:20000,networkFreeze:false,preScaleNetwork:false,title:title,networkVendor:"Wikipathways"},renderTo:target,events:events,afterRender:[["flashInfoSpan",[100,100,res,5000]],["appendNetworkDataFromURL",[]]]};if(config){for(var p in config){data.config[p]=config[p]}}return data};this.keggToCX=function(xml,target,config,events,callback){var XMLToJSON=function(xml,json,p,current){json=json||{};if(p&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){var j={};for(var i=0;i<xml.attributes.length;i++){var attr=xml.attributes.item(i);var attrName=attr.name.replace(/(?!xmlns)^.*:/,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();var attrVal=attr.value.trim();if(p){j[attrName]=attrVal}else{json[attrName]=attrVal}}if(p){json[p].push(j)}}else{if(p==="alt"){json[p].push(xml.textContent.replace(/\"/g,"'").replace(/\[/g,"&#91").replace(/\]/g,"&#93"))}}if(xml.hasChildNodes()&&!current){for(var k=0;k<xml.childNodes.length;k++){var childNode=xml.childNodes.item(k);if(childNode.nodeType===1){var childName=childNode.nodeName.replace(/(?!xmlns)^.*:/,"").toLowerCase();XMLToJSON(childNode,json,childName)}}}return json};var pw=xml.childNodes[2]||xml.childNodes[1];var nodes=[];var edges=[];var title,image,link,width,height;var addAnchors=function(){nodes.push({id:"__zero__",type:"anchor",shape:"circle",color:"rgba(0,0,0,0)",outline:"rgb(0,0,0)",width:1,height:1,x:0,y:0,hideLabel:true},{id:"__max__",type:"anchor",shape:"circle",color:"rgba(0,0,0,0)",outline:"rgb(0,0,0)",width:1,height:1,x:width,y:height,hideLabel:true})};var getAngle=function(x0,y0,x1,y1){var a=(Math.atan2(y1-y0,x1-x0)*180/Math.PI)%360;var min=0;while(a<min){a+=360}while(a>=(min+360)){a-=360}return a};var mean=function(arr){var mean=0;var n=0;for(var i=0;i<arr.length;i++){if(!isNaN(arr[i])){mean+=Number(arr[i]);n++}}if(n>0){mean/=n}return mean};if(pw.tagName.toLowerCase()=="pathway"){var ob=XMLToJSON(pw,false,false,true);title=ob.title;image=ob.image;link=ob.link;var img=new Image();img.onload=function(){width=this.width;height=this.height;var res="Number of Nodes: "+nodes.length+"\n";res+="Number of Edges: "+edges.length+"\n";addAnchors();var data={data:{nodes:nodes,edges:edges},config:{adjustBezier:false,graphType:"Network",calculateLayout:false,showAnimation:false,networkNodesOnTop:false,networkFreeze:false,showNodeNameThreshold:20000,preScaleNetwork:false,title:title,backgroundType:"image",backgroundImage:image,networkVendor:"Kegg"},renderTo:target,events:events,afterRender:[["flashInfoSpan",[100,100,res,5000]],["appendNetworkDataFromURL",[]]]};if(config){for(var p in config){data.config[p]=config[p]}}return callback(data)};if((CanvasXpress.system.isR&&!CanvasXpress.system.isInIframe)||!CanvasXpress.system.isR||!CanvasXpress.system.isJupyter){img.crossOrigin="anonymous"}img.src=ob.image;for(var i=0;i<pw.childNodes.length;i++){var el=pw.childNodes[i];if(el.nodeName){var nn=el.nodeName.toLowerCase();switch(nn){case"entry":var ob=XMLToJSON(el);if(ob.graphics[0].type=="roundrectangle"){ob.graphics[0].type="roundrect";ob.graphics[0].fgcolor="rgba(0,0,0,0)"}if(ob.graphics&&ob.graphics.length==1&&ob.graphics[0].type!="line"){var ext=ob.type=="group"?5:0;var node={id:ob.id,type:ob.type,link:ob.link,name:ob.graphics[0].name,shape:ob.graphics[0].type,color:"rgba(0,0,0,0)",outline:ob.graphics[0].fgcolor||"rgb(0,0,0)",width:parseInt(ob.graphics[0].width)+ext,height:parseInt(ob.graphics[0].height)+ext,x:parseInt(ob.graphics[0].x),y:parseInt(ob.graphics[0].y),hideLabel:true,fixed:true};if(ob.type=="group"){nodes.unshift(node)}else{nodes.push(node)}}else{if(ob.graphics&&ob.graphics.length==1&&ob.graphics[0].type=="line"){var coords=ob.graphics[0].coords.split(",");if(coords.length==4){var x=[];var y=[];var w,h,r;while(coords.length>1){x.push(parseInt(coords.shift()));y.push(parseInt(coords.shift()))}var mx=parseInt(mean(x));var my=parseInt(mean(y));if(x[0]==x[1]){mx+=1;w=2;h=y[1]-y[0];r=0}else{if(y[0]==y[1]){my+=1;w=x[1]-x[0];h=2;r=0}else{h=Math.sqrt(Math.pow(x[1]-x[0],2)+Math.pow(y[1]-0[0],2));w=2;r=getAngle(x[0],y[0],x[1],y[1])}}var node={id:ob.id,type:ob.type,link:ob.link,name:ob.graphics[0].name,shape:"rect",color:"rgba(0,0,0,0)",outline:"rgba(0,0,0,0)",x:mx,y:my,width:w,height:h,rotate:r,hideLabel:true,fixed:true};nodes.push(node)}}}break;case"relation":case"reaction":var ob=XMLToJSON(el);ob.id1=JSON.parse(JSON.stringify(ob.entry1));ob.id2=JSON.parse(JSON.stringify(ob.entry2));delete (ob.entry1);delete (ob.entry2);ob.color="rgba(0,0,0,0)";edges.push(ob);break}}}}else{alert("Ooops! Not a kgml file!")}};this.HTMLTableToCX=function(table,config){var ar=[];for(var i=0;i<table.rows.length;i++){var ln=[];for(var j=0;j<table.rows.item(i).cells.length;j++){ln.push(table.rows.item(i).cells.item(j).innerHTML)}ar.push(ln)}var cx=this.arrayToCX(ar,config);CanvasXpress.transferDatasetAttributes(table,cx.config,true);return cx};this.HvT=function(dataArray){if(!dataArray||dataArray.length<1){return[]}var headers=dataArray[0];var results={};for(var i=0;i<headers.length;i++){var header=headers[i];results[header]={type:null,min:Infinity,max:-Infinity,uniqueMap:{},levels:[]}}for(var r=1;r<dataArray.length;r++){var row=dataArray[r];for(var c=0;c<headers.length;c++){var value=row[c];var columnInfo=results[headers[c]];var isNumeric=typeof value==="number"&&!isNaN(value);if(isNumeric){columnInfo.type="numeric";if(value<columnInfo.min){columnInfo.min=value}if(value>columnInfo.max){columnInfo.max=value}}else{columnInfo.type="categorical";if(!columnInfo.uniqueMap.hasOwnProperty(value)){columnInfo.uniqueMap[value]=true;columnInfo.levels.push(value)}}}}var finalOutput=[];for(var j=1;j<headers.length;j++){var colName=headers[j];var info=results[colName];if(info.type==="numeric"){finalOutput.push({name:colName,type:"numeric",min:info.min,max:info.max,levels:[]})}else{finalOutput.push({name:colName,type:"categorical",min:null,max:null,levels:info.levels})}}return finalOutput};this.bZH=function(data){var ar=[];var copy=function(obj){return JSON.parse(JSON.stringify(obj))};if(!data){data=this.data}if(this.OOg()&&!data.x){var z=data.z?Object.keys(data.z):[];var cols=copy(data.y.smps).concat(z);var n=data.y.smps.length;for(var i=0;i<data.y.smps.length;i++){for(var j=0;j<data.y.vars.length;j++){if(!ar[j]){ar[j]=[]}if(this.xAxisTime&&this.xAxis.includes(data.y.smps[i])){var d=new Date(data.y.data[j][i]);d=d.setDate(d.getDate()+1);ar[j][i]=this.dateFormat(d,this.timeFormat)}else{if(this.yAxisTime&&this.yAxis.includes(data.y.smps[i])){var d=new Date(data.y.data[j][i]);d=d.setDate(d.getDate()+1);ar[j][i]=this.dateFormat(d,this.timeFormat)}else{ar[j][i]=data.y.data[j][i]}}}}for(var i=0;i<z.length;i++){for(var j=0;j<data.y.vars.length;j++){ar[j][n+i]=data.z[z[i]][j]}}for(var i=0;i<data.y.vars.length;i++){ar[i].unshift(data.y.vars[i])}cols.unshift("");ar.unshift(cols)}else{if(this.CgJ()||(this.OOg()&&data.x)){var x=data.x?Object.keys(data.x):[];var cols=copy(data.y.vars).concat(x);var n=data.y.vars.length;for(var i=0;i<data.y.vars.length;i++){for(var j=0;j<data.y.smps.length;j++){if(!ar[j]){ar[j]=[]}ar[j][i]=data.y.data[i][j]}}for(var i=0;i<x.length;i++){for(var j=0;j<data.y.smps.length;j++){ar[j][n+i]=data.x[x[i]][j]}}for(var i=0;i<data.y.smps.length;i++){ar[i].unshift(data.y.smps[i])}cols.unshift("");ar.unshift(cols)}else{return false}}ar[0][0]="Id";if(ar[0].indexOf("__FACTOR__")>-1){for(var i=0;i<ar.length;i++){ar[i].splice(ar[i].indexOf("__FACTOR__"),1)}}return ar};this.XzC=function(){var o=[];if(this.graphType.match(/Scatter|Circular/)){for(var i=0;i<this.data.y.smps.length;i++){o.push({name:this.data.y.smps[i],type:"numeric",min:this.meta.data.y.range[this.data.y.smps[i]].min,max:this.meta.data.y.range[this.data.y.smps[i]].max,levels:[]})}if(this.data.z){for(var i in this.data.z){var type=this.meta.data.z[i].type=="Numeric"?"numeric":"categorical";o.push({name:i,type:type,min:type=="numeric"?this.meta.data.z[i].rmin:undefined,max:type=="numeric"?this.meta.data.z[i].rmax:undefined,levels:type=="categorical"?this.meta.data.z[i].levels:[]})}}}else{if(this.CgJ()){for(var i=0;i<this.data.y.vars.length;i++){o.push({name:this.data.y.vars[i],type:"numeric",min:this.meta.data.y.range[this.data.y.vars[i]].min,max:this.meta.data.y.range[this.data.y.vars[i]].max,levels:[]})}if(this.data.x){for(var i in this.data.x){var type=this.meta.data.x[i].type=="Numeric"?"numeric":"categorical";o.push({name:i,type:this.meta.data.x[i].type=="Numeric"?"numeric":"categorical",min:this.meta.data.x[i].type=="Numeric"?this.meta.data.x[i].rmin:undefined,max:this.meta.data.x[i].type=="Numeric"?this.meta.data.x[i].rmax:undefined,levels:type=="categorical"?this.meta.data.x[i].levels:[]})}}}}return o};this.H8L=function(){var copy=function(obj){return JSON.parse(JSON.stringify(obj))};var o=[];if(this.graphType.match(/Scatter|Circular/)){var z=this.data.z?Object.keys(this.data.z):[];if(this.data.y.smps){o=copy(this.data.y.smps).concat(z)}else{o=z}}else{if(this.CgJ()){var x=this.data.x?Object.keys(this.data.x):[];if(this.data.y.vars){o=copy(this.data.y.vars).concat(x)}else{o=x}}}return o};this.oC8=function(){var copy=function(obj){return JSON.parse(JSON.stringify(obj))};var z=this.data.z?Object.keys(this.data.z):[];if(this.data.y.smps){z=copy(this.data.y.smps).concat(z)}var x=this.data.x?Object.keys(this.data.x):[];if(this.data.y.vars){x=copy(this.data.y.vars).concat(x)}if(this.graphType.match(/Scatter|Circular/)){return{header:z,rows:x,type:"longAndSkinny"}}else{if(this.CgJ()){return{header:x,rows:z,type:"wideAndShort"}}else{return{header:[],rows:[],type:"unknown"}}}};this.bYm=function(prompt){prompt=prompt.toLowerCase();if(prompt.match(/(density|distribution|hexplot|histogram|kaplan\s*meier|qq|quantile|ridge\s*line|scatter|spaghetti|stream\*graph|time\s*series|volcano)/i)){return"longAndSkinny"}else{if(prompt.match(/(alluvial|area|bar|boxplot|bullet|cleveland|dot|dumb\s*bell|gantt|heatmap|line|lollipop|map|meter|parallel|pareto|pie|sankey|stacked|violin|waterfall|wordcloud)/i)){return"wideAndShort"}else{return"unknown"}}};this.go7=function(prompt){var dimnames=this.oC8();var guessRequestedGraphType=this.bYm(prompt);var hd=[];var rs=[];var hl=dimnames.header.length>50?50:dimnames.header.length;var rl=dimnames.rows.length>50?50:dimnames.rows.length;var res;for(var i=0;i<hl;i++){if(prompt.match(new RegExp("\\b"+dimnames.header[i]+"\\b"))){hd.push(dimnames.header[i])}}for(var i=0;i<rl;i++){if(prompt.match(new RegExp("\\b"+dimnames.rows[i]+"\\b"))){rs.push(dimnames.rows[i])}}if(hd.length==0&&rs.length==0){res=dimnames.header}else{if(hd.length>rs.length){if(dimnames.type!=guessRequestedGraphType&&dimnames.type!="unknown"){this.c2i(false,true)}res=hl>50?dimnames.header.slice(0,50):dimnames.header}else{if(dimnames.type=="wideAndShort"&&guessRequestedGraphType=="longAndSkinny"){this.c2i(false,true)}res=rl>50?dimnames.rows.slice(0,50):dimnames.rows}}var factorIndex=res.indexOf("__FACTOR__");if(factorIndex!==-1){res.splice(factorIndex,1)}res.unshift("Id");return res};this.Sy9=function(header){var ar=[];for(var i=0;i<header.length;i++){var col=header[i];if(col==="__FACTOR__"){continue}if(this.data.y&&(this.data.y.smps.includes(col)||this.data.y.vars.includes(col))){ar.push({name:col,type:"numeric"})}else{if(this.data.x&&this.data.x[col]){var type=this.meta.data.x[col].type=="Numeric"?"numeric":"factor";ar.push({name:col,type:type})}else{if(this.data.z&&this.data.z[col]){var type=this.meta.data.z[col].type=="Numeric"?"numeric":"factor";ar.push({name:col,type:type})}else{ar.push({name:col,type:"string"})}}}}return ar};this.zVT=function(){var copy=function(obj){return JSON.parse(JSON.stringify(obj))};if(this.graphType.match(/Scatter|Circular/)){var x=this.data.x?Object.keys(this.data.x):[];if(this.data.y.vars){return[copy(this.data.y.vars).concat(x)]}else{return[x]}}else{if(this.CgJ()){var z=this.data.z?Object.keys(this.data.z):[];if(this.data.y.smps){return[copy(this.data.y.smps).concat(z)]}else{return[z]}}}};this.WLt=function(e,r){function getParquetDecompressors(){var decompressorZstd=function(dat){var ab=ArrayBuffer,u8=Uint8Array,u16=Uint16Array,i16=Int16Array,u32=Uint32Array,i32=Int32Array;var slc=function(v,s,e){if(u8.prototype.slice){return u8.prototype.slice.call(v,s,e)}if(s==null||s<0){s=0}if(e==null||e>v.length){e=v.length}var n=new u8(e-s);n.set(v.subarray(s,e));return n};var fill=function(v,n,s,e){if(u8.prototype.fill){return u8.prototype.fill.call(v,n,s,e)}if(s==null||s<0){s=0}if(e==null||e>v.length){e=v.length}while(s<e){v[s]=n;++s}return v};var cpw=function(v,t,s,e){if(u8.prototype.copyWithin){return u8.prototype.copyWithin.call(v,t,s,e)}if(s==null||s<0){s=0}if(e==null||e>v.length){e=v.length}while(s<e){v[t++]=v[s++]}};var ec=["invalid zstd data","window size too large (>2046MB)","invalid block type","FSE accuracy too high","match distance too far back","unexpected EOF"];var err=function(ind,msg,nt){var e=new Error(msg||ec[ind]);e.code=ind;if(Error.captureStackTrace){Error.captureStackTrace(e,err)}if(!nt){throw e}return e};var rb=function(d,b,n){var i=0,o=0;while(i<n){o|=d[b++]<<(i<<3);++i}return o};var b4=function(d,b){return(d[b]|(d[b+1]<<8)|(d[b+2]<<16)|(d[b+3]<<24))>>>0};var rzfh=function(dat,w){var n3=dat[0]|(dat[1]<<8)|(dat[2]<<16);if(n3==3126568&&dat[3]==253){var flg=dat[4];var ss=(flg>>5)&1,cc=(flg>>2)&1,df=flg&3,fcf=flg>>6;if(flg&8){err(0)}var bt=6-ss;var db=df==3?4:df;var di=rb(dat,bt,db);bt+=db;var fsb=fcf?(1<<fcf):ss;var fss=rb(dat,bt,fsb)+((fcf==1)&&256);var ws=fss;if(!ss){var wb=1<<(10+(dat[5]>>3));ws=wb+(wb>>3)*(dat[5]&7)}if(ws>2145386496){err(1)}var buf=new u8((w==1?(fss||ws):w?0:ws)+12);buf[0]=1,buf[4]=4,buf[8]=8;return{b:bt+fsb,y:0,l:0,d:di,w:(w&&w!=1)?w:buf.subarray(12),e:ws,o:new i32(buf.buffer,0,3),u:fss,c:cc,m:Math.min(131072,ws)}}else{if(((n3>>4)|(dat[3]<<20))==25481893){return b4(dat,4)+8}}err(0)};var msb=function(val){var bits=0;while((1<<bits)<=val){++bits}return bits-1};var rfse=function(dat,bt,mal){var tpos=(bt<<3)+4;var al=(dat[bt]&15)+5;if(al>mal){err(3)}var sz=1<<al;var probs=sz,sym=-1,re=-1,i=-1,ht=sz;var buf=new ab(512+(sz<<2));var freq=new i16(buf,0,256);var dstate=new u16(buf,0,256);var nstate=new u16(buf,512,sz);var bb1=512+(sz<<1);var syms=new u8(buf,bb1,sz);var nbits=new u8(buf,bb1+sz);while(sym<255&&probs>0){var bits=msb(probs+1);var cbt=tpos>>3;var msk=(1<<(bits+1))-1;var val=((dat[cbt]|(dat[cbt+1]<<8)|(dat[cbt+2]<<16))>>(tpos&7))&msk;var msk1fb=(1<<bits)-1;var msv=msk-probs-1;var sval=val&msk1fb;if(sval<msv){tpos+=bits,val=sval}else{tpos+=bits+1;if(val>msk1fb){val-=msv}}freq[++sym]=--val;if(val==-1){probs+=val;syms[--ht]=sym}else{probs-=val}if(!val){do{var rbt=tpos>>3;re=((dat[rbt]|(dat[rbt+1]<<8))>>(tpos&7))&3;tpos+=2;sym+=re}while(re==3)}}if(sym>255||probs){err(0)}var sympos=0;var sstep=(sz>>1)+(sz>>3)+3;var smask=sz-1;for(var s=0;s<=sym;++s){var sf=freq[s];if(sf<1){dstate[s]=-sf;continue}for(i=0;i<sf;++i){syms[sympos]=s;do{sympos=(sympos+sstep)&smask}while(sympos>=ht)}}if(sympos){err(0)}for(i=0;i<sz;++i){var ns=dstate[syms[i]]++;var nb=nbits[i]=al-msb(ns);nstate[i]=(ns<<nb)-sz}return[(tpos+7)>>3,{b:al,s:syms,n:nbits,t:nstate}]};var rhu=function(dat,bt){var i=0,wc=-1;var buf=new u8(292),hb=dat[bt];var hw=buf.subarray(0,256);var rc=buf.subarray(256,268);var ri=new u16(buf.buffer,268);if(hb<128){var _a=rfse(dat,bt+1,6),ebt=_a[0],fdt=_a[1];bt+=hb;var epos=ebt<<3;var lb=dat[bt];if(!lb){err(0)}var st1=0,st2=0,btr1=fdt.b,btr2=btr1;var fpos=(++bt<<3)-8+msb(lb);for(;;){fpos-=btr1;if(fpos<epos){break}var cbt=fpos>>3;st1+=((dat[cbt]|(dat[cbt+1]<<8))>>(fpos&7))&((1<<btr1)-1);hw[++wc]=fdt.s[st1];fpos-=btr2;if(fpos<epos){break}cbt=fpos>>3;st2+=((dat[cbt]|(dat[cbt+1]<<8))>>(fpos&7))&((1<<btr2)-1);hw[++wc]=fdt.s[st2];btr1=fdt.n[st1];st1=fdt.t[st1];btr2=fdt.n[st2];st2=fdt.t[st2]}if(++wc>255){err(0)}}else{wc=hb-127;while(i<wc){var b=dat[++bt];hw[i]=b>>4;hw[i+1]=b&15;i+=2}++bt}var wes=0;for(i=0;i<wc;++i){var wt=hw[i];if(wt>11){err(0)}wes+=wt&&(1<<(wt-1))}var mb=msb(wes)+1;var ts=1<<mb;var rem=ts-wes;if(rem&(rem-1)){err(0)}hw[wc++]=msb(rem)+1;for(i=0;i<wc;++i){var wt=hw[i];++rc[hw[i]=wt&&(mb+1-wt)]}var hbuf=new u8(ts<<1);var syms=hbuf.subarray(0,ts),nb=hbuf.subarray(ts);ri[mb]=0;for(i=mb;i>0;--i){var pv=ri[i];fill(nb,i,pv,ri[i-1]=pv+rc[i]*(1<<(mb-i)))}if(ri[0]!=ts){err(0)}for(i=0;i<wc;++i){var bits=hw[i];if(bits){var code=ri[bits];fill(syms,i,code,ri[bits]=code+(1<<(mb-bits)))}}return[bt,{n:nb,b:mb,s:syms}]};var dllt=rfse(new u8([81,16,99,140,49,198,24,99,12,33,196,24,99,102,102,134,70,146,4]),0,6)[1];var dmlt=rfse(new u8([33,20,196,24,99,140,33,132,16,66,8,33,132,16,66,8,33,68,68,68,68,68,68,68,68,36,9]),0,6)[1];var doct=rfse(new u8([32,132,16,66,102,70,68,68,68,68,36,73,2]),0,5)[1];var b2bl=function(b,s){var len=b.length,bl=new i32(len);for(var i=0;i<len;++i){bl[i]=s;s+=1<<b[i]}return bl};var llb=new u8((new i32([0,0,0,0,16843009,50528770,134678020,202050057,269422093])).buffer,0,36);var llbl=b2bl(llb,0);var mlb=new u8((new i32([0,0,0,0,0,0,0,0,16843009,50528770,117769220,185207048,252579084,16])).buffer,0,53);var mlbl=b2bl(mlb,3);var dhu=function(dat,out,hu){var len=dat.length,ss=out.length,lb=dat[len-1],msk=(1<<hu.b)-1,eb=-hu.b;if(!lb){err(0)}var st=0,btr=hu.b,pos=(len<<3)-8+msb(lb)-btr,i=-1;while(pos>eb&&i<ss){var cbt=pos>>3;var val=(dat[cbt]|(dat[cbt+1]<<8)|(dat[cbt+2]<<16))>>(pos&7);st=((st<<btr)|val)&msk;out[++i]=hu.s[st];pos-=(btr=hu.n[st])}if(pos!=eb||i+1!=ss){err(0)}};var dhu4=function(dat,out,hu){var bt=6;var ss=out.length,sz1=(ss+3)>>2,sz2=sz1<<1,sz3=sz1+sz2;dhu(dat.subarray(bt,bt+=dat[0]|(dat[1]<<8)),out.subarray(0,sz1),hu);dhu(dat.subarray(bt,bt+=dat[2]|(dat[3]<<8)),out.subarray(sz1,sz2),hu);dhu(dat.subarray(bt,bt+=dat[4]|(dat[5]<<8)),out.subarray(sz2,sz3),hu);dhu(dat.subarray(bt),out.subarray(sz3),hu)};var rzb=function(dat,st,out){var _a;var bt=st.b;var b0=dat[bt],btype=(b0>>1)&3;st.l=b0&1;var sz=(b0>>3)|(dat[bt+1]<<5)|(dat[bt+2]<<13);var ebt=(bt+=3)+sz;if(btype==1){if(bt>=dat.length){return}st.b=bt+1;if(out){fill(out,dat[bt],st.y,st.y+=sz);return out}return fill(new u8(sz),dat[bt])}if(ebt>dat.length){return}if(btype==0){st.b=ebt;if(out){out.set(dat.subarray(bt,ebt),st.y);st.y+=sz;return out}return slc(dat,bt,ebt)}if(btype==2){var b3=dat[bt],lbt=b3&3,sf=(b3>>2)&3;var lss=b3>>4,lcs=0,s4=0;if(lbt<2){if(sf&1){lss|=(dat[++bt]<<4)|((sf&2)&&(dat[++bt]<<12))}else{lss=b3>>3}}else{s4=sf;if(sf<2){lss|=((dat[++bt]&63)<<4),lcs=(dat[bt]>>6)|(dat[++bt]<<2)}else{if(sf==2){lss|=(dat[++bt]<<4)|((dat[++bt]&3)<<12),lcs=(dat[bt]>>2)|(dat[++bt]<<6)}else{lss|=(dat[++bt]<<4)|((dat[++bt]&63)<<12),lcs=(dat[bt]>>6)|(dat[++bt]<<2)|(dat[++bt]<<10)}}}++bt;var buf=out?out.subarray(st.y,st.y+st.m):new u8(st.m);var spl=buf.length-lss;if(lbt==0){buf.set(dat.subarray(bt,bt+=lss),spl)}else{if(lbt==1){fill(buf,dat[bt++],spl)}else{var hu=st.h;if(lbt==2){var hud=rhu(dat,bt);lcs+=bt-(bt=hud[0]);st.h=hu=hud[1]}else{if(!hu){err(0)}}(s4?dhu4:dhu)(dat.subarray(bt,bt+=lcs),buf.subarray(spl),hu)}}var ns=dat[bt++];if(ns){if(ns==255){ns=(dat[bt++]|(dat[bt++]<<8))+32512}else{if(ns>127){ns=((ns-128)<<8)|dat[bt++]}}var scm=dat[bt++];if(scm&3){err(0)}var dts=[dmlt,doct,dllt];for(var i=2;i>-1;--i){var md=(scm>>((i<<1)+2))&3;if(md==1){var rbuf=new u8([0,0,dat[bt++]]);dts[i]={s:rbuf.subarray(2,3),n:rbuf.subarray(0,1),t:new u16(rbuf.buffer,0,1),b:0}}else{if(md==2){_a=rfse(dat,bt,9-(i&1)),bt=_a[0],dts[i]=_a[1]}else{if(md==3){if(!st.t){err(0)}dts[i]=st.t[i]}}}}var _b=st.t=dts,mlt=_b[0],oct=_b[1],llt=_b[2];var lb=dat[ebt-1];if(!lb){err(0)}var spos=(ebt<<3)-8+msb(lb)-llt.b,cbt=spos>>3,oubt=0;var lst=((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<llt.b)-1);cbt=(spos-=oct.b)>>3;var ost=((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<oct.b)-1);cbt=(spos-=mlt.b)>>3;var mst=((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<mlt.b)-1);for(++ns;--ns;){var llc=llt.s[lst];var lbtr=llt.n[lst];var mlc=mlt.s[mst];var mbtr=mlt.n[mst];var ofc=oct.s[ost];var obtr=oct.n[ost];cbt=(spos-=ofc)>>3;var ofp=1<<ofc;var off=ofp+(((dat[cbt]|(dat[cbt+1]<<8)|(dat[cbt+2]<<16)|(dat[cbt+3]<<24))>>>(spos&7))&(ofp-1));cbt=(spos-=mlb[mlc])>>3;var ml=mlbl[mlc]+(((dat[cbt]|(dat[cbt+1]<<8)|(dat[cbt+2]<<16))>>(spos&7))&((1<<mlb[mlc])-1));cbt=(spos-=llb[llc])>>3;var ll=llbl[llc]+(((dat[cbt]|(dat[cbt+1]<<8)|(dat[cbt+2]<<16))>>(spos&7))&((1<<llb[llc])-1));cbt=(spos-=lbtr)>>3;lst=llt.t[lst]+(((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<lbtr)-1));cbt=(spos-=mbtr)>>3;mst=mlt.t[mst]+(((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<mbtr)-1));cbt=(spos-=obtr)>>3;ost=oct.t[ost]+(((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<obtr)-1));if(off>3){st.o[2]=st.o[1];st.o[1]=st.o[0];st.o[0]=off-=3}else{var idx=off-(ll!=0);if(idx){off=idx==3?st.o[0]-1:st.o[idx];if(idx>1){st.o[2]=st.o[1]}st.o[1]=st.o[0];st.o[0]=off}else{off=st.o[0]}}for(var i=0;i<ll;++i){buf[oubt+i]=buf[spl+i]}oubt+=ll,spl+=ll;var stin=oubt-off;if(stin<0){var len=-stin;var bs=st.e+stin;if(len>ml){len=ml}for(var i=0;i<len;++i){buf[oubt+i]=st.w[bs+i]}oubt+=len,ml-=len,stin=0}for(var i=0;i<ml;++i){buf[oubt+i]=buf[stin+i]}oubt+=ml}if(oubt!=spl){while(spl<buf.length){buf[oubt++]=buf[spl++]}}else{oubt=buf.length}if(out){st.y+=oubt}else{buf=slc(buf,0,oubt)}}else{if(out){st.y+=lss;if(spl){for(var i=0;i<lss;++i){buf[i]=buf[spl+i]}}}else{if(spl){buf=slc(buf,spl)}}}st.b=ebt;return buf}err(2)};var cct=function(bufs,ol){if(bufs.length==1){return bufs[0]}var buf=new u8(ol);for(var i=0,b=0;i<bufs.length;++i){var chk=bufs[i];buf.set(chk,b);b+=chk.length}return buf};var decompress=function(dat,buf){var bufs=[],nb=+!buf,bt=0,ol=0;while(dat.length){var st=rzfh(dat,nb||buf);if(typeof st=="object"){if(nb){buf=null;if(st.w.length==st.u){bufs.push(buf=st.w);ol+=st.u}}else{bufs.push(buf);st.e=0}while(!st.l){var blk=rzb(dat,st,buf);if(!blk){err(5)}if(buf){st.e=st.y}else{bufs.push(blk);ol+=blk.length;cpw(st.w,0,blk.length);st.w.set(blk,st.w.length-blk.length)}}bt=st.b+(st.c*4)}else{bt=st}dat=dat.subarray(bt)}return cct(bufs,ol)};return decompress(dat)};var decompressorGzip=function(input,length){var fixedLengthExtraBits=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]);var fixedDistanceExtraBits=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]);var codeLengthIndexMap=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);function freb(eb,start){var base=new Uint16Array(31);for(var i=0;i<31;i++){base[i]=start+=1<<eb[i-1]}var rev=new Int32Array(base[30]);for(var i=1;i<30;i++){for(var j=base[i];j<base[i+1];++j){rev[j]=j-base[i]<<5|i}}return[base,rev]}var res=freb(fixedLengthExtraBits,2);var fl=res[0];var revfl=res[1];fl[28]=258;revfl[258]=28;var res1=freb(fixedDistanceExtraBits,0);var fd=res1[0];var rev=new Uint16Array(32768);for(var i=0;i<32768;i++){var x=(i&43690)>>1|(i&21845)<<1;x=(x&52428)>>2|(x&13107)<<2;x=(x&61680)>>4|(x&3855)<<4;rev[i]=((x&65280)>>8|(x&255)<<8)>>1}function huffMap(cd,maxBits,r){var l=new Uint16Array(maxBits);for(var i=0;i<cd.length;i++){if(cd[i]){++l[cd[i]-1]}}var le=new Uint16Array(maxBits);for(var i=1;i<maxBits;i++){le[i]=le[i-1]+l[i-1]<<1}var co;if(r){co=new Uint16Array(1<<maxBits);var rvb=15-maxBits;for(var i=0;i<cd.length;i++){if(cd[i]){var sv=i<<4|cd[i];var freeBits=maxBits-cd[i];var startValue=le[cd[i]-1]++<<freeBits;var endValue=startValue|(1<<freeBits)-1;for(var currentValue=startValue;currentValue<=endValue;currentValue++){co[rev[currentValue]>>rvb]=sv}}}}else{co=new Uint16Array(cd.length);for(var i=0;i<cd.length;i++){if(cd[i]){co[i]=rev[le[cd[i]-1]++]>>15-cd[i]}}}return co}var fixedLengthTree=new Uint8Array(288);for(var i=0;i<144;i++){fixedLengthTree[i]=8}for(var i=144;i<256;i++){fixedLengthTree[i]=9}for(var i=256;i<280;i++){fixedLengthTree[i]=7}for(var i=280;i<288;i++){fixedLengthTree[i]=8}var fixedDistanceTree=new Uint8Array(32);for(var i=0;i<32;i++){fixedDistanceTree[i]=5}var fixedLengthMap=huffMap(fixedLengthTree,9,1);var fixedDistanceMap=huffMap(fixedDistanceTree,5,1);function max(a){var m=a[0];for(var i=1;i<a.length;i++){if(a[i]>m){m=a[i]}}return m}function bits(input,pos,mask){var o=pos/8|0;return(input[o]|input[o+1]<<8)>>(pos&7)&mask}function bits16(d,p){var o=p/8|0;return(d[o]|d[o+1]<<8|d[o+2]<<16)>>(p&7)}function shft(p){return(p+7)/8|0}function gzipStart(input,i){if(input[i++]!==31||input[i++]!==139||input[i++]!==8){throw new Error("invalid gzip data")}var flag=input[i++];i+=6;if(flag&4){i+=(input[i+10]|input[i+11]<<8)+2}for(var zs=(flag>>3&1)+(flag>>4&1);zs>0;zs-=Number(!input[i++])){}return i+(flag&2)}var gunzip=function(input,out,inputIndex,outputIndex){if(!inputIndex){inputIndex=0}if(!outputIndex){outputIndex=0}if(!(input.length-inputIndex)){return}var payloadStart=gzipStart(input,inputIndex);if(payloadStart===input.length-8){return}if(payloadStart>input.length-8){throw new Error("unexpected EOF")}var pos=payloadStart*8;var fnal=0,lengthBits=0,distBits=0,lmap,dmap;var totalBits=input.length*8;do{if(!lmap){fnal=bits(input,pos,1);var type=bits(input,pos+1,3);pos+=3;if(!type){var s=shft(pos)+4;var l=input[s-4]|input[s-3]<<8;var t=s+l;if(t>input.length){throw new Error("unexpected EOF")}out.set(input.subarray(s,t),outputIndex);outputIndex+=l;pos=t*8;continue}else{if(type===1){lmap=fixedLengthMap;dmap=fixedDistanceMap;lengthBits=9;distBits=5}else{if(type===2){var hLiteral=bits(input,pos,31)+257;var hcLengths=bits(input,pos+10,15)+4;var tl=hLiteral+bits(input,pos+5,31)+1;pos+=14;var lengthDistanceTree=new Uint8Array(tl);var codeLengthTree=new Uint8Array(19);for(var i=0;i<hcLengths;++i){codeLengthTree[codeLengthIndexMap[i]]=bits(input,pos+i*3,7)}pos+=hcLengths*3;var codeLengthBits=max(codeLengthTree);var clbMask=(1<<codeLengthBits)-1;var codeLengthMap=huffMap(codeLengthTree,codeLengthBits,1);for(var i=0;i<tl;){var r=codeLengthMap[bits(input,pos,clbMask)];pos+=r&15;var symbol=r>>4;if(symbol<16){lengthDistanceTree[i++]=symbol}else{var copy=0;var n=0;if(symbol===16){n=3+bits(input,pos,3);pos+=2;copy=lengthDistanceTree[i-1]}else{if(symbol===17){n=3+bits(input,pos,7);pos+=3}else{if(symbol===18){n=11+bits(input,pos,127);pos+=7}}}while(n--){lengthDistanceTree[i++]=copy}}}var lengthTree=lengthDistanceTree.subarray(0,hLiteral);var distanceTree=lengthDistanceTree.subarray(hLiteral);lengthBits=max(lengthTree);distBits=max(distanceTree);lmap=huffMap(lengthTree,lengthBits,1);dmap=huffMap(distanceTree,distBits,1)}else{throw new Error("invalid block type")}}}if(pos>totalBits){throw new Error("unexpected EOF")}}var lms=(1<<lengthBits)-1;var dms=(1<<distBits)-1;var lpos=pos;for(;;lpos=pos){var code=lmap[bits16(input,pos)&lms];var sym=code>>4;pos+=code&15;if(pos>totalBits){throw new Error("unexpected EOF")}if(!code){throw new Error("invalid length/literal")}if(sym<256){out[outputIndex++]=sym}else{if(sym===256){lpos=pos;lmap=undefined;break}else{var add=sym-254;if(sym>264){var index=sym-257;var b=fixedLengthExtraBits[index];add=bits(input,pos,(1<<b)-1)+fl[index];pos+=b}if(!dmap){throw new Error("invalid distance map")}var d=dmap[bits16(input,pos)&dms];var dsym=d>>4;if(!d){throw new Error("invalid distance")}pos+=d&15;var dt=fd[dsym];if(dsym>3){var b=fixedDistanceExtraBits[dsym];dt+=bits16(input,pos)&(1<<b)-1;pos+=b}if(pos>totalBits){throw new Error("unexpected EOF")}var end=outputIndex+add;if(outputIndex<dt){throw new Error("unexpected dictionary case")}for(;outputIndex<end;outputIndex++){out[outputIndex]=out[outputIndex-dt]}}}}pos=lpos;if(lmap){fnal=1}}while(!fnal);if(outputIndex<out.length){var nextBlock=Math.ceil(pos/8)+8;gunzip(input,out,nextBlock,outputIndex)}};var out=new Uint8Array(length);gunzip(input,out);return out};var decompressorLz4=function(input,length){var lz4basic=function(input,output,outputIndex){var len=outputIndex;for(var i=0;i<input.length;){var token=input[i++];var literals=token>>4;if(literals){var _byte=literals+240;while(_byte===255){literals+=_byte=input[i++]}output.set(input.subarray(i,i+literals),len);len+=literals;i+=literals;if(i>=input.length){return len-outputIndex}}var offset=input[i++]|input[i++]<<8;if(!offset||offset>len){throw new Error("lz4 offset out of range: "+offset)}var matchLength=(token&15)+4;var _byte=matchLength+240;while(_byte===255){matchLength+=_byte=input[i++]}var pos=len-offset;var end=len+matchLength;while(len<end){output[len++]=output[pos++]}}return len-outputIndex};var output=new Uint8Array(length);try{var i=0,o=0;while(i<input.length-8){var expectedOutputLength=input[i++]<<24|input[i++]<<16|input[i++]<<8|input[i++];var expectedInputLength=input[i++]<<24|input[i++]<<16|input[i++]<<8|input[i++];if(input.length-i<expectedInputLength){throw new Error("lz4 not hadoop")}if(output.length<expectedOutputLength){throw new Error("lz4 not hadoop")}var chunk=lz4basic(input.subarray(i,i+expectedInputLength),output,o);if(chunk!==expectedOutputLength){throw new Error("lz4 not hadoop")}i+=expectedInputLength;o+=expectedOutputLength;if(i===input.length){return output}}if(i<input.length){throw new Error("lz4 not hadoop")}}catch(error){if(error instanceof Error&&error.message!=="lz4 not hadoop"){throw error}lz4basic(input,output,0)}return output};var decompressorLz4Raw=function(input,length){var lz4basic=function(input,output,outputIndex){var len=outputIndex;for(var i=0;i<input.length;){var token=input[i++];var literals=token>>4;if(literals){var _byte=literals+240;while(_byte===255){literals+=_byte=input[i++]}output.set(input.subarray(i,i+literals),len);len+=literals;i+=literals;if(i>=input.length){return len-outputIndex}}var offset=input[i++]|input[i++]<<8;if(!offset||offset>len){throw new Error("lz4 offset out of range: "+offset)}var matchLength=(token&15)+4;var _byte=matchLength+240;while(_byte===255){matchLength+=_byte=input[i++]}var pos=len-offset;var end=len+matchLength;while(len<end){output[len++]=output[pos++]}}return len-outputIndex};var output=new Uint8Array(length);lz4basic(input,output,0);return output};var decompressorBrotli=function(input,length){console.error("Brotli decompression is not supported in this context.")};return{ZSTD:decompressorZstd,GZIP:decompressorGzip,LZ4:decompressorLz4,LZ4_RAW:decompressorLz4Raw,BROTLI:decompressorBrotli}}var t,n=["BOOLEAN","INT32","INT64","INT96","FLOAT","DOUBLE","BYTE_ARRAY","FIXED_LEN_BYTE_ARRAY"],i=["PLAIN",undefined,"PLAIN_DICTIONARY","RLE","BIT_PACKED","DELTA_BINARY_PACKED","DELTA_LENGTH_BYTE_ARRAY","DELTA_BYTE_ARRAY","RLE_DICTIONARY","BYTE_STREAM_SPLIT"],a=["REQUIRED","OPTIONAL","REPEATED"],f=["UTF8","MAP","MAP_KEY_VALUE","LIST","ENUM","DECIMAL","DATE","TIME_MILLIS","TIME_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UINT_8","UINT_16","UINT_32","UINT_64","INT_8","INT_16","INT_32","INT_64","JSON","BSON","INTERVAL"],o=["UNCOMPRESSED","SNAPPY","GZIP","LZO","BROTLI","LZ4","ZSTD","LZ4_RAW"],l=0,u=2,_=3,d=0,s=1,c=2,h=3,v=4,p=5,g=6,m=7,y=8,w=9,E=12,L=13,b=getParquetDecompressors(),I=[0,255,65535,16777215,4294967295],A=function(e,r){for(var t=0,n=0;;){var i=e.getUint8(r++);if(t|=(127&i)<<n,0==(128&i)){return[t,r]}n+=7}},T=function(e,r){var t,n=A(e,r);return[(t=n[0])>>>1^-(1&t),n[1]]},N=function(e,r){var t,n,i=function(e,r){for(var t=BigInt(0),n=BigInt(0);;){var i=BigInt(e.getUint8(r++));if(t|=(i&BigInt(127))<<n,(i&BigInt(128))===BigInt(0)){return[t,r]}n+=BigInt(7)}}(e,r);return t=i[0],n=i[1],[t>>BigInt(1)^-(t&BigInt(1)),n]},R=function(e){return 15&e},D=function(e,r,t){var n=e.getUint8(r++);if((15&n)===d){return[0,0,r,t]}var i,a=n>>4;if(0===a){var f=T(e,r);i=f[0],r=f[1]}else{i=t+a}return[R(n),i,r,i]},O=function e(r,t,n){switch(t){case s:return[!0,n];case c:return[!1,n];case h:return[r.getInt8(n),n+1];case v:case p:return T(r,n);case g:return N(r,n);case m:return[r.getFloat64(n,!0),n+8];case y:var i,a,f=A(r,n);i=f[0],a=f[1];var o=new Uint8Array(r.buffer,r.byteOffset+a,i);return[(new TextDecoder).decode(o),a+i];case w:var l,u,_=function(e,r){var t=e.getUint8(r++),n=t>>4,i=R(t);if(15===n){var a=A(e,r);return[i,a[0],a[1]]}return[i,n,r]}(r,n);l=_[0],u=_[1],n=_[2];for(var b=[],I=0;I<u;I++){var O;O=(_=e(r,l,n))[0],n=_[1],b.push(O)}return[b,n];case E:for(var U,q,B,M={},S=0;;){if(U=(_=D(r,n,S))[0],q=_[1],B=_[2],S=_[3],n=B,U===d){break}var P=(_=e(r,U,n))[0];n=_[1],M["field_"+q]=P}return[M,n];case L:for(var C="",Y=0;Y<16;Y++){C+=r.getUint8(n++).toString(16).padStart(2,"0")}return[C,n];default:throw new Error("thrift unhandled type: "+t)}},U=function(e,r){for(var t,n,i=new DataView(e,r),a=0,f=0,o={};a<e.byteLength-r;){var l,u=D(i,a,f);if(t=u[0],n=u[1],a=u[2],f=u[3],t===d){break}var _=O(i,t,a);l=_[0],a=_[1],o["field_"+n]=l}return{value:o,byteLength:a}},q=function(e){return e&&e.field_5?{logicalType:"DECIMAL",scale:e.field_5.field_1,precision:e.field_5.field_2}:e&&e.field_10?{logicalType:"INTEGER",bitWidth:e.field_10.field_1,isSigned:e.field_10.field_2}:e||void 0},B=function(e,r){var t=e[r],n=[],i=1;if(t.num_children){for(;n.length<t.num_children;){var a=B(e,r+i);i+=a.count,n.push(a)}}return{count:i,element:t,children:n}},M=function(e,r){var t=B(e,0);for(var n in r){var i=r[n],a=t.children.find((function(e){return e.element.name===i}));if(!a){throw new Error("parquet schema element not found: "+r)}t=a}return t},S=function(e,r){for(var t=B(e,0),n=0;n<r.length;n++){if(!(t=t.children.find((function(e){return e.element.name===r[n]})))){throw new Error("parquet schema element not found: "+r)}if("REQUIRED"!==t.element.repetition_type){return !1}}return !0},P=function(e){var r=e.dictionary_page_offset,t=e.data_page_offset,n=r;return(void 0===r||t<r)&&(n=t),Number(n)},C=function(e,r){var t=U(e,r),n=t.value;return{byteLength:t.byteLength,value:{type:n.field_1,uncompressed_page_size:n.field_2,compressed_page_size:n.field_3,crc:n.field_4,data_page_header:n.field_5&&{num_values:n.field_5.field_1,encoding:i[n.field_5.field_2],definition_level_encoding:i[n.field_5.field_3],repetition_level_encoding:i[n.field_5.field_4],statistics:n.field_5.field_5&&{max:n.field_5.field_5.field_1,min:n.field_5.field_5.field_2,null_count:n.field_5.field_5.field_3,distinct_count:n.field_5.field_5.field_4,max_value:n.field_5.field_5.field_5,min_value:n.field_5.field_5.field_6}},index_page_header:n.field_6,dictionary_page_header:n.field_7&&{num_values:n.field_7.field_1,encoding:i[n.field_7.field_2],is_sorted:n.field_7.field_3},data_page_header_v2:n.field_8&&{num_values:n.field_8.field_1,num_nulls:n.field_8.field_2,num_rows:n.field_8.field_3,encoding:i[n.field_8.field_4],definition_levels_byte_length:n.field_8.field_5,repetition_levels_byte_length:n.field_8.field_6,is_compressed:void 0===n.field_8.field_7||n.field_8.field_7,statistics:n.field_8.field_8}}}},Y=function(e,r,t,n,i){for(var a=0;a<i;a++){t[n+a]=e[r+a]}},z=function(e,r,t,n){for(var i=0;i<n;i++){e[r+i]=e[r-t+i]}},x=function(e,r,t,n){var i,a=n&&n[t];if("UNCOMPRESSED"===t){i=e}else{if(a){i=a(e,r)}else{if("SNAPPY"!==t){throw new Error("parquet unsupported compression codec: "+t)}!function(e,r){for(var t=e.byteLength,n=r.byteLength,i=0,a=0;i<t;){var f=e[i];if(i+=1,f<128){break}}if(n&&i>=t){throw new Error("invalid snappy length header")}for(;i<t;){f=e[i];var o=0;if((i+=1)>=t){throw new Error("missing eof marker")}if(0==(3&f)){if((o=1+(f>>>2))>60){if(i+3>=t){throw new Error("snappy error literal pos + 3 >= inputLength")}var l=o-60;o=1+((o=e[i]+(e[i+1]<<8)+(e[i+2]<<16)+(e[i+3]<<24))&I[l]),i+=l}if(i+o>t){throw new Error("snappy error literal exceeds input length")}Y(e,i,r,a,o),i+=o,a+=o}else{var u=0;switch(3&f){case 1:o=4+(f>>>2&7),u=e[i]+(f>>>5<<8),i+=1;break;case 2:if(t<=i+1){throw new Error("snappy error end of input")}o=1+(f>>>2),u=e[i]+(e[i+1]<<8),i+=2;break;case 3:if(t<=i+3){throw new Error("snappy error end of input")}o=1+(f>>>2),u=e[i]+(e[i+1]<<8)+(e[i+2]<<16)+(e[i+3]<<24),i+=4}if(0===u||isNaN(u)){throw new Error("invalid offset "+u+" pos "+i+" inputLength "+t)}if(u>a){throw new Error("cannot copy from before start of buffer")}z(r,a,u,o),a+=o}}if(a!==n){throw new Error("premature end of input")}}(e,i=new Uint8Array(r))}}if(i&&i.length!==r){throw new Error("parquet decompressed page length "+(i?i.length:"undefined")+" does not match header "+r)}return i},k=function(e,r,t,n,i){if(i.length){throw new Error("parquet output array is not empty")}for(var a=0,f=new TextDecoder,o=0;o<e.length;o++){if(e[o]===r){if(a>t.length){throw new Error("parquet index "+a+" exceeds data page length "+t.length)}var l=t[a++];if(n&&(l=n[l]) instanceof Uint8Array){try{l=f.decode(l)}catch(e){console.warn("parquet failed to decode byte array as string",e)}}i[o]=l}else{i[o]=void 0}}},V=function(e,r){var t=0;return r.forEach((function(n,i){"REPEATED"===M(e,r.slice(0,i+1)).repetition_type&&(t+=1)})),t},F=function(e,r){var t=0;return r.forEach((function(n,i){"REQUIRED"!==M(e,r.slice(0,i+1)).element.repetition_type&&(t+=1)})),t},Z=function(e,r,t,n,i){if(0===t){return{value:[],byteLength:0}}if("BOOLEAN"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){var a=r+Math.floor(i/8),f=i%8,o=e.getUint8(a);n.push(0!=(o&1<<f))}return{value:n,byteLength:Math.ceil(t/8)}}(e,n,t)}if("INT32"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){n.push(Number(e.getInt32(r+4*i,!0)))}return{value:n,byteLength:4*t}}(e,n,t)}if("INT64"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){n.push(Number(e.getBigInt64(r+8*i,!0)))}return{value:n,byteLength:8*t}}(e,n,t)}if("INT96"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){var a=e.getBigInt64(r+12*i,!0),f=e.getInt32(r+12*i+8,!0);n.push(Number(BigInt(f)<<BigInt(32)|a))}return{value:n,byteLength:12*t}}(e,n,t)}if("FLOAT"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){n.push(e.getFloat32(r+4*i,!0))}return{value:n,byteLength:4*t}}(e,n,t)}if("DOUBLE"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){n.push(e.getFloat64(r+8*i,!0))}return{value:n,byteLength:8*t}}(e,n,t)}if("BYTE_ARRAY"===r){var a=function(e,r,t){for(var n=[],i=0,a=0;a<t;a++){var f=e.getInt32(r+i,!0);i+=4;var o=new Uint8Array(e.buffer,e.byteOffset+r+i,f);n.push(o),i+=f}return{value:n,byteLength:i}}(e,n,t);if(i){var f=new TextDecoder;return{value:a.value.map((function(e){return f.decode(e)})),byteLength:a.byteLength}}return a}if("FIXED_LEN_BYTE_ARRAY"===r){return function(e,r,t){return{value:new Uint8Array(e.buffer,e.byteOffset+r,t),byteLength:t}}(e,n,t)}throw new Error("parquet unhandled type: "+r)},G=function(e){return Math.ceil(Math.log2(e+1))},K=function(e,r,t,n){var i,a=t>>>1,f=n+7>>3,o=0;if(1===f){i=e.getUint8(r),o+=1}else{if(2===f){i=e.getUint16(r,!0),o+=2}else{if(4!==f){throw new Error("parquet invalid rle width "+f)}i=e.getUint32(r,!0),o+=4}}for(var l=[],u=0;u<a;u++){l.push(i)}return{value:l,byteLength:o}},X=function(e,r,t,n,i){var a=t>>1<<3,f=(1<<n)-1,o=0;if(r<e.byteLength){o=e.getUint8(r)}else{if(f){throw new Error("parquet bitpack offset "+r+" out of range")}}for(var l=1,u=8,_=0,d=[];a;){_>8?(_-=8,u-=8,o>>=8):u-_<n?(o|=e.getUint8(r+l)<<u,l++,u+=8):(i>0&&(d.push(o>>_&f),i--),a--,_+=n)}return{value:d,byteLength:l}},J=function(e,r,t,n,i){var a=0;if(!n){if((n=e.getInt32(r,!0))<0){throw new Error("parquet invalid rle/bitpack length "+n)}a+=4}for(var f=[],o=a;a-o<n&&f.length<i;){var l=A(e,r+a),u=l[0];if(a=l[1]-r,0==(1&u)){for(var _=K(e,r+a,u,t),d=0;d<_.value.length;d++){f.push(_.value[d])}a+=_.byteLength}else{var s=X(e,r+a,u,t,i-f.length);for(d=0;d<s.value.length;d++){f.push(s.value[d])}a+=s.byteLength}}return{value:f,byteLength:a}},Q=function(e,r,t,n,i){var a=[],f=0;if("RLE"!==r){throw new Error("parquet encoding not supported "+r)}for(var o=0;o<n;){var l=J(e,t+f,i,0,n);if(!l.value.length){break}for(var u=0;u<l.value.length;u++){a.push(l.value[u])}o+=l.value.length,f+=l.byteLength}return{value:a,byteLength:f}},W=function(e,r,t,n){var i=new DataView(e.buffer,e.byteOffset,e.byteLength);return Z(i,n.type,r.num_values,0,!1).value},j=function(e,r,t,n){var i=new DataView(e.buffer,e.byteOffset,e.byteLength),a=0,f=[],o=function(e,r,t,n,i){if(i.path_in_schema.length>1){var a=V(n,i.path_in_schema);if(a){var f=G(a);return Q(e,t.repetition_level_encoding,r,t.num_values,f)}}return{value:[],byteLength:0}}(i,a,r,t,n),l=o.value,u=void 0,_=0,d=function(e,r,t,n,i){if(!S(n,i)){var a=F(n,i),f=G(a);if(f){for(var o=Q(e,t.definition_level_encoding,r,t.num_values,f),l=o.value,u=o.byteLength,_=t.num_values,d=0;d<l.length;d++){l[d]===a&&_--}return 0===_&&(l.length=0),{byteLength:u,definitionLevels:l,numNulls:_}}}return{byteLength:0,definitionLevels:[],numNulls:0}}(i,a+=o.byteLength,r,t,n.path_in_schema);u=d.definitionLevels,_=d.numNulls,a+=d.byteLength;var s=r.num_values-_;if("PLAIN"===r.encoding){var c="UTF8"===M(t,n.path_in_schema).element.converted_type,h=Z(i,n.type,s,a,c);f=Array.isArray(h.value)?h.value:Array.from(h.value),a+=h.byteLength}else{if("PLAIN_DICTIONARY"!==r.encoding&&"RLE_DICTIONARY"!==r.encoding&&"RLE"!==r.encoding){throw new Error("parquet unsupported encoding: "+r.encoding)}var v;if("BOOLEAN"===n.type?v=1:(v=i.getUint8(a),a+=1),v){var p=J(i,a,v,i.byteLength-a,s),g=p.value;a+=p.byteLength,f=Array.isArray(g)?g:Array.from(g)}else{f=new Array(s).fill(0)}}return{definitionLevels:u,repetitionLevels:l,value:f}},H=function(e,r){if(e){for(var t=0;t<r.length;t++){r[t]=e[r[t]]}}},$=function(e,r,t,n,i,a){for(var f=0,o=[],l=o,u=[o],_=0;_<r.length;_++){var d;d=e&&e.length?e[_]:i;var s=r[_];if(s!==a){for(;s<u.length-1;){u.pop()}if(l=u.at(-1),d){for(var c=s;c<a;c++){var h=[];l.push(h),l=h,u.push(h)}}}if(d===i){if(!l){throw new Error("parquet assembleObjects: currentContainer is undefined")}l.push(t[f++])}else{if(n){if(d){for(c=d;c<i-1;c++){u.pop(),l=u.at(-1)}d>1&&l.push(void 0)}else{l.push(void 0)}}}}if(0===o.length){if(t.length>0&&0===a){return[t]}for(_=0;_<i;_++){h=[];l.push(h),l=h}}return o},ee=function(e,r){var t=r.converted_type;if("UTF8"===t){var n=new TextDecoder;return e.map((function(e){return"string"==typeof e?e:n.decode(e)}))}if("DECIMAL"===t){var i=r.scale?Math.pow(10,r.scale):1;return"number"==typeof e[0]?1===i?e:e.map((function(e){return e*i})):"bigint"==typeof e[0]?1===i?e:e.map((function(e){return e*BigInt(i)})):e.map((function(e){return re(e)*i}))}if("DATE"===t){return e.map((function(e){return new Date(86400000000000*e)}))}if("TIME_MILLIS"===t){return e.map((function(e){return new Date(e)}))}if("JSON"===t){return e.map((function(e){return JSON.parse(e)}))}if("BSON"===t){throw new Error("parquet bson not supported")}if("INTERVAL"===t){throw new Error("parquet interval not supported")}return e},re=function(e){for(var r=0,t=0;t<e.length;t++){r=r<<8|e[t]}return r},te=function(e,r,t,n,i){var a=new DataView(e.buffer,e.byteOffset,e.byteLength),f=0,o=[],l=r.data_page_header_v2;if(!l){throw new Error("parquet data page header v2 is undefined")}var u=function(e,r,t,n,i){var a=V(n,i.path_in_schema);if(!a){return[]}var f=G(a);return J(e,r,f,t.repetition_levels_byte_length,t.num_values).value}(a,f,l,t,n),_=function(e,r,t,n){if(n){var i=G(n);return J(e,r,i,t.definition_levels_byte_length,t.num_values).value}}(a,f+=l.repetition_levels_byte_length,l,F(t,n.path_in_schema));f+=l.definition_levels_byte_length;var d=r.uncompressed_page_size-l.definition_levels_byte_length-l.repetition_levels_byte_length,s=l.num_values-l.num_nulls;if("PLAIN"===l.encoding){var c="UTF8"===M(t,n.path_in_schema).element.converted_type,h=e.slice(f);l.is_compressed&&"UNCOMPRESSED"!==n.codec&&(h=x(h,d,n.codec,i));var v=new DataView(h.buffer,h.byteOffset,h.byteLength);o=Z(v,n.type,s,0,c).value}else{if("RLE"===l.encoding){h=x(e,d,n.codec,i),v=new DataView(h.buffer,h.byteOffset,h.byteLength);var p=1;if(l.num_nulls){throw new Error("parquet RLE encoding with nulls not supported")}o=J(v,4,p,d,s).value}else{if("PLAIN_DICTIONARY"===l.encoding||"RLE_DICTIONARY"===l.encoding){e=e.subarray(f);h=x(e,d,n.codec,i),p=(v=new DataView(h.buffer,h.byteOffset,h.byteLength)).getUint8(0);o=J(v,1,p,d,s).value}else{if("DELTA_BINARY_PACKED"!==l.encoding){throw new Error("parquet unsupported encoding: "+l.encoding)}if(l.num_nulls){throw new Error("parquet delta-int not supported")}var g=l.is_compressed?n.codec:"UNCOMPRESSED";h=x(e,d,g,i);ne(h,s,o)}}}return{definitionLevels:_,repetitionLevels:u,value:o}},ne=function(e,r,t){for(var n=new DataView(e.buffer,e.byteOffset,e.byteLength),i=A(n,0),a=i[0],f=i[1],o=A(n,f),l=o[0],u=o[1],_=A(n,u),d=_[0],s=_[1],c=T(n,s),h=c[0],v=c[1],p=a/l,g=0;g<r;){var m=T(n,v),y=m[0];v=m[1];for(var w=new Uint8Array(l),E=0;E<l;E++,v++){w[E]=e[v]}for(E=0;E<l;E++){var L=w[E];if(L){if(d>1){for(var b=0,I=-L,N=(1<<L)-1;d;){I<0?(b=b<<8|n.getUint8(v++),I+=8):t.push(b>>I&N)}}}else{for(var R=0;R<p&&g<r;R++,g++){t[g]=h,h+=y}}}}},ie=function(e,r,t){for(var n=0;n<t.length;n++){e[n]||(e[n]=[]),e[n][r]=t[n]}},ae=function(e,r,t,n,i,a){for(var f=void 0,o=0,d=0,s=[];o<t.num_rows;){var c=C(e,r+d),h=c.value;if(d+=c.byteLength,void 0===h.compressed_page_size){throw new Error("parquet compressed page size is undefined in column "+n.path_in_schema)}var v=new Uint8Array(e).subarray(r+d,r+d+h.compressed_page_size);if(h.type===l){var p=h.data_page_header;if(!p){throw new Error("parquet data page header is undefined")}var g=x(v,Number(h.uncompressed_page_size),n.codec,a),m=j(g,p,i,n),y=m.definitionLevels,w=m.repetitionLevels,E=m.value;o+=p.num_values;var L,b="PLAIN_DICTIONARY"===p.encoding||"RLE_DICTIONARY"===p.encoding;if(w.length){H(f,E);var I=n&&!S(i,[n.path_in_schema[0]]),A=F(i,n.path_in_schema),T=V(i,n.path_in_schema);L=$(y,w,E,I,A,T)}else{if(y&&y.length){A=F(i,n.path_in_schema);k(y,A,E,f,L=[])}else{b&&f?(H(f,E),L=ee(E,M(i,n.path_in_schema).element)):L=Array.isArray(E)?ee(E,M(i,n.path_in_schema).element):E}}for(var N=0;N<L.length;N++){s.push(L[N])}}else{if(h.type===u){var R=h.dictionary_page_header;if(!R){throw new Error("parquet dictionary page header is undefined")}g=x(v,Number(h.uncompressed_page_size),n.codec,a);f=W(g,R,0,n)}else{if(h.type!==_){throw new Error("parquet unsupported page type: "+h.type)}var D=h.data_page_header_v2;if(!D){throw new Error("parquet data page header v2 is undefined")}y=(g=te(v,h,i,n,a)).definitionLevels,w=g.repetitionLevels,E=g.value;o+=D.num_values;A=F(i,n.path_in_schema),T=V(i,n.path_in_schema);if(w.length){H(f,E);var O=$(y,w,E,!0,A,T);for(N=0;N<O.length;N++){s.push(O[N])}}else{if(D.num_nulls){if(!y){throw new Error("parquet data page v2 nulls missing definition levels")}k(y,A,E,f,s)}else{H(f,E);for(N=0;N<E.length;N++){s.push(E[N])}}}}}d+=h.compressed_page_size}return s.length,Number(t.num_rows),s},fe=function(e,r,t){if(!r){throw new Error("parquet metadata not found")}var n,i=e.byteLength,a=0;if(t.columns.forEach((function(e){var r=e.meta_data,t=P(r),n=t+Number(r.total_compressed_size);i=Math.min(i,t),a=Math.max(a,n)})),i>=a&&columns&&columns.length){throw new Error("parquet columns not found: "+columns.join(", "))}a-i<=1<<27&&(n=e.slice(i,a));for(var f=[],o=0,l=0;l<t.columns.length;l++){var u=t.columns[l].meta_data;if(!u){throw new Error("parquet column metadata is undefined")}var _=P(u),d=_+Number(u.total_compressed_size)-_;if(d>1<<30){console.warn('parquet skipping huge column "'.concat(u.path_in_schema,'" ').concat(d.toLocaleString()," bytes"))}else{if(n){var s=ae(n,_-i,t,u,r.schema,b);ie(f,o,s),o++}}}return f},oe=function(e){var r=new DataView(e);if(r.byteLength<8){throw new Error("parquet file is too short")}if(827474256!==r.getUint32(r.byteLength-4,!0)){throw new Error("parquet file invalid (footer != PAR1)")}var t=r.byteLength-8,l=r.getUint32(t,!0);if(l>r.byteLength-8){throw new Error("parquet metadata length "+l+" exceeds available buffer "+(r.byteLength-8))}var u,_=t-l,d=U(r.buffer,r.byteOffset+_).value;return{version:d.field_1,schema:d.field_2.map((function(e){return{type:n[e.field_1],type_length:e.field_2,repetition_type:a[e.field_3],name:e.field_4,num_children:e.field_5,converted_type:f[e.field_6],scale:e.field_7,precision:e.field_8,field_id:e.field_9,logical_type:q(e.field_10)}})),num_rows:d.field_3,row_groups:d.field_4.map((function(e){var r;return{columns:e.field_1.map((function(e){var r,t;return{file_path:e.field_1,file_offset:e.field_2,meta_data:e.field_3&&{type:n[e.field_3.field_1],encodings:null===(r=e.field_3.field_2)||void 0===r?void 0:r.map((function(e){return i[e]})),path_in_schema:e.field_3.field_3,codec:o[e.field_3.field_4],num_values:e.field_3.field_5,total_uncompressed_size:e.field_3.field_6,total_compressed_size:e.field_3.field_7,key_value_metadata:e.field_3.field_8,data_page_offset:e.field_3.field_9,index_page_offset:e.field_3.field_10,dictionary_page_offset:e.field_3.field_11,statistics:e.field_3.field_12&&{max:e.field_3.field_12.field_1,min:e.field_3.field_12.field_2,null_count:e.field_3.field_12.field_3,distinct_count:e.field_3.field_12.field_4},encoding_stats:null===(t=e.field_3.field_13)||void 0===t?void 0:t.map((function(e){return{page_type:e.field_1,encoding:i[e.field_2],count:e.field_3}}))}}})),total_byte_size:e.field_2,num_rows:e.field_3,sorting_columns:null===(r=e.field_4)||void 0===r?void 0:r.map((function(e){return{column_idx:sortingColumn.field_1,descending:sortingColumn.field_2,nulls_first:sortingColumn.field_3}}))}})),key_value_metadata:null===(u=d.field_5)||void 0===u?void 0:u.map((function(e){return{key:e.field_1,value:e.field_2}})),created_by:d.field_6,metadata_length:l}}(e),le=(t=[],oe.schema.forEach((function(e){void 0!==e.type&&t.push(e.name)})),t),ue=function(e,r){if(!r){throw new Error("parquet metadata not found")}for(var t=[],n=Number(r.num_rows),i=0,a=0;a<r.row_groups.length;a++){var f=r.row_groups[a],o=Number(f.num_rows);if(i+o>=0&&i<n){var l=fe(e,r,f),u=Math.max(0-i,0),_=Math.min(n-i,o),d=l.slice(u,_);for(a=0;a<d.length;a++){t.push(d[a])}}i+=o}return t}(e,oe);ue.splice(0,0,le);return{data:ue,config:r}};this.isValidURL=function(str){var p=new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.?)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;,\\s\\(\\)\\[\\]&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i");var p2=new RegExp("^(\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.?)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;,\\s\\(\\)\\[\\]&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i");return !!p.test(str)?1:!!p2.test(str)?2:false};return this};
36
+ CanvasXpress.prototype.initIO=function(){this.parseJSON=function(s,r){if(typeof s!=="string"){return null}s=s.replace(/&nl;/g,"\\n");try{return JSON.parse(s,r)}catch(e){if(s.toString().match(/<!DOCTYPE/)){return undefined}else{if(r){return JSON.parse(s,r)}else{return JSON.parse(s,function(k,v){if(typeof v==="string"&&v.startsWith&&v.startsWith("/Function(")&&v.endsWith&&v.endsWith(")/")){v=v.substring(10,v.length-2).replace(/&quot;/g,'"');return eval("("+v+")")}else{return v}})}}}};this.gfi=function(js,r,s){if(r){return JSON.stringify(js,r,s||null)}else{return js?JSON.stringify(js,function(k,v){if(typeof v==="function"){return"/Function("+v.toString().replace(/"/g,"&quot;").replace(/{\s*/g,"{").replace(/;\s*/g,";")+")/"}else{if(k=="events"&&typeof v==="object"){return v}else{if(k=="gantt"){return undefined}else{if(k=="hoverTemplate"){return v+" "}else{if(typeof v==="string"&&(v.endsWith("]")||v.endsWith("}"))){return v+" "}else{if(typeof v==="string"&&(v.startsWith("[")||v.startsWith("{"))){return" "+v}else{if(v instanceof Array){for(var i=0;i<v.length;i++){if(typeof v[i]==="string"){v[i]=v[i].replace(/\[/g,"&lsqb;").replace(/\]/g,"&rsqb;").replace(/\{/g,"&lcub;").replace(/\}/g,"&rcub;")}}for(var p in v){if(Array.isArray(v[p])||v[p] instanceof Object){return v}}return JSON.stringify(v)}else{return v}}}}}}}},s||null).replace(/\\n/g,"&nl;").replace(/\\/g,"").replace(/"\[/g,"[").replace(/\]"/g,"]").replace(/"\{/g,"{").replace(/\}"/g,"}").replace(/u0000/g,"").replace(/&lsqb;/g,"[").replace(/&rsqb;/g,"]").replace(/&lcub;/g,"{").replace(/&rcub;/g,"}"):false}};this.RJK=function(f){return"/Function("+f.toString().replace(/"/g,"&quot;").replace(/{\s*/g,"{").replace(/;\s*/g,";")+")/"};this.bz2=function(str){function bwt_reverse(src,primary){var len=src.length;if(primary>=len){throw RangeError("Out of bound")}if(primary<0){throw RangeError("Out of bound")}var A=src;src=src.join("");A.sort();var start={};for(var i=len-1;i>=0;i--){start[A[i]]=i}var links=[];for(i=0;i<len;i++){links.push(start[src[i]]++)}var i,first=A[i=primary],ret=[];for(var j=1;j<len;j++){ret.push(A[i=links[i]])}return first+ret.reverse().join("")}function move_to_front_and_store(a,c,buff){var v=a[c];for(var i=c;i>0;a[i]=a[--i]){}buff.push(a[0]=v)}var RBitfield=function(){this.initbit=function(x){this.masks=[];for(var i=0;i<31;i++){this.masks[i]=(1<<i)-1}this.masks[31]=-2147483648;this.f=x;this.bits=0;this.bitfield=0;this.count=0};this.readbits2=function readbits2(n){var n2=n>>1;return this.readbits(n2)*(1<<n2)+this.readbits(n-n2)};this.readbits=function readbits(n){while(this.bits<n){this.bitfield=(this.bitfield<<8)+this.f.charCodeAt(this.count++);this.bits+=8}var m=this.masks[n];var r=(this.bitfield>>(this.bits-n))&m;this.bits-=n;this.bitfield&=~(m<<this.bits);return r}};var HuffmanLength=function(code,bits){this.code=code;this.bits=bits;this.symbol=undefined};var OrderedHuffmanTable=function(){this.process=function(lengths){var len=lengths.length;var z=[];for(var i=0;i<len;i++){z.push([i,lengths[i]])}z.push([len,-1]);var l=[];var b=z[0];var start=b[0],bits=b[1];for(var p=1;p<z.length;p++){var finish=z[p][0],endbits=z[p][1];if(bits){for(var code=start;code<finish;code++){l.push(new HuffmanLength(code,bits))}}start=finish;bits=endbits;if(endbits==-1){break}}l.sort(function(a,b){return(a.bits-b.bits)||(a.code-b.code)});this.table=l;var temp_bits=0;var symbol=-1;this.faht=[];var cb=null;for(var i=0;i<this.table.length;i++){var x=this.table[i];symbol+=1;if(x.bits!=temp_bits){symbol<<=x.bits-temp_bits;cb=this.faht[temp_bits=x.bits]={}}cb[x.symbol=symbol]=x}this.min_bits=16;this.max_bits=-1;this.table.forEach(function(x){if(x.bits<this.min_bits){this.min_bits=x.bits}if(x.bits>this.max_bits){this.max_bits=x.bits}},this)}};var decode=function(input){var b=new RBitfield();b.initbit(input);b.readbits(16);var method=b.readbits(8);if(method!=104){throw"Unknown (not type 'h'uffman Bzip2) compression method"}var blocksize=b.readbits(8);if(49<=blocksize&&blocksize<=57){blocksize-=48}else{throw"Unknown (not size '1'-'9') Bzip2 blocksize"}function getUsedCharTable(b){var a=[];var used_groups=b.readbits(16);for(var m1=1<<15;m1>0;m1>>=1){if(!(used_groups&m1)){for(var i=0;i<16;i++){a.push(false)}continue}var used_chars=b.readbits(16);for(var m2=1<<15;m2>0;m2>>=1){a.push(Boolean(used_chars&m2))}}return a}var out=[];function main_loop(){while(true){var blocktype=b.readbits2(48);var crc=b.readbits2(32);if(blocktype==54156738319193){if(b.readbits(1)){throw"Bzip2 randomised support not implemented"}var pointer=b.readbits(24);var used=getUsedCharTable(b);var huffman_groups=b.readbits(3);if(2>huffman_groups||huffman_groups>6){throw RangeError("Bzip2: Number of Huffman groups not in range 2..6")}var mtf=[0,1,2,3,4,5,6].slice(0,huffman_groups);var selectors_list=[];for(var i=0,selectors_used=b.readbits(15);i<selectors_used;i++){var c=0;while(b.readbits(1)){if(c++>=huffman_groups){throw RangeError("More than max ("+huffman_groups+") groups")}}move_to_front_and_store(mtf,c,selectors_list)}var groups_lengths=[];var symbols_in_use=used.reduce(function(a,b){return a+b},0)+2;for(var j=0;j<huffman_groups;j++){var length=b.readbits(5);var lengths=[];for(var i=0;i<symbols_in_use;i++){if(length<0||length>20){throw RangeError("Bzip2 Huffman length code outside range 0..20")}while(b.readbits(1)){length-=(b.readbits(1)*2)-1}lengths.push(length)}groups_lengths.push(lengths)}var tables=[];for(var g=0;g<groups_lengths.length;g++){var codes=new OrderedHuffmanTable();codes.process(groups_lengths[g]);tables.push(codes)}var favourites=[];for(var c=used.length-1;c>=0;c--){if(used[c]){favourites.push(String.fromCharCode(c))}}favourites.reverse();var selector_pointer=0;var decoded=0;var t;var repeat=0;var repeat_power=0;var buffer=[],r;while(true){if(--decoded<=0){decoded=50;if(selector_pointer<=selectors_list.length){t=tables[selectors_list[selector_pointer++]]}}for(var bb in t.faht){if(b.bits<bb){b.bitfield=(b.bitfield<<8)+b.f.charCodeAt(b.count++);b.bits+=8}if(r=t.faht[bb][b.bitfield>>(b.bits-bb)]){b.bitfield&=b.masks[b.bits-=bb];r=r.code;break}}if(0<=r&&r<=1){if(repeat==0){repeat_power=1}repeat+=repeat_power<<r;repeat_power<<=1;continue}else{var v=favourites[0];while(repeat>0){buffer.push(v);repeat--}}if(r==symbols_in_use-1){break}else{move_to_front_and_store(favourites,r-1,buffer)}}var nt=bwt_reverse(buffer,pointer);var done=[];var i=0;var len=nt.length;while(i<len){var c=nt.charCodeAt(i);if((i<len-4)&&nt.charCodeAt(i+1)==c&&nt.charCodeAt(i+2)==c&&nt.charCodeAt(i+3)==c){var c=nt.charAt(i);var rep=nt.charCodeAt(i+4)+4;while(rep>0){done.push(c);rep--}i+=5}else{done.push(nt[i++])}}out.push(done.join(""))}else{if(blocktype==25779555029136){b.readbits(b.bits&7);break}else{throw"Illegal Bzip2 blocktype = 0x"+blocktype.toString(16)}}}}main_loop();return out.join("")};return decode(str)};this.parseDelimited=function(str){var isNumber=function(n){if(n===null||n===undefined){return true}if(typeof n==="string"&&/^0\d/.test(n)){return false}return !isNaN(parseFloat(n))&&isFinite(n)};if(str.match(/^<\?xml/)){return false}var tc=str.split(",").length-1;var tt=str.split("\t").length-1;var ts=str.split(";").length-1;if(tc<2&&tt<2&&ts<2){}var delim=tc>tt&&tc>ts?",":ts>tc&&ts>tt?";":"\t";var pat=new RegExp(("(\\"+delim+'|\\r?\\n|\\r|^)(?:"([^"]*(?:""[^"]*)*)"|([^"\\'+delim+"\\r\\n]*))"),"gi");var arr=[[]];var arrM=null;while(arrM=pat.exec(str)){var strM=arrM[1];if(strM.length&&strM!==delim){arr.push([])}var strV;if(arrM[2]){strV=arrM[2].replace(new RegExp('""',"g"),'"')}else{strV=arrM[3]}if(typeof strV==="string"){strV=strV.trim();var negAcct=strV.match(/^\(\$?(.*)\)$/);if(negAcct){strV="-"+negAcct[1].trim()}else{if(strV.slice(0,2)==="-$"){strV="-"+strV.slice(2).trim()}else{if(strV.charAt(0)==="$"){strV=strV.slice(1).trim()}}}if(strV.charAt(strV.length-1)==="%"){strV=strV.slice(0,-1).trim()}if(/^-?[\d,]+(\.\d+)?$/.test(strV)){strV=strV.replace(/,/g,"")}}arr[arr.length-1].push(isNumber(strV)?Number(strV):strV!="NA"?strV:null)}for(var i=0;i<arr.length;i++){if(arr[i][0].toString().match(/^#/)){arr.splice(i,1);i--;continue}}var l=arr.length-1;while(arr[l].length==1&&arr[l][0].toString()==""){arr.pop();l=arr.length-1}return arr};this.parseXML=function(x){var d=null;if(window.DOMParser){try{d=(new DOMParser()).parseFromString(x,"text/xml")}catch(e){d=null}}else{if(window.ActiveXObject){try{d=new ActiveXObject("Microsoft.XMLDOM");d.async=false}catch(e){d=null}}else{alert("cannot parse xml string!")}}return d};this.xIp=function(gml){var forIn=function(object,callback){Object.keys(object).forEach(function(key){callback(key,object[key])})};var json=("{\n"+gml+"\n}").replace(/^(\s*)(\w+)\s*\[/gm,'$1"$2": {').replace(/^(\s*)\]/gm,"$1},").replace(/^(\s*)(\w+)\s+(.+)$/gm,'$1"$2": $3,').replace(/,(\s*)\}/g,"$1}");var graph={};var nodes=[];var edges=[];var i=0;json=json.replace(/^(\s*)"node"/gm,function(all,indent){return(indent+'"node['+(i++)+']"')});i=0;json=json.replace(/^(\s*)"edge"/gm,function(all,indent){return(indent+'"edge['+(i++)+']"')});try{json=JSON.parse(json)}catch(err){throw new SyntaxError("bad format")}if(!json.graph instanceof Object){throw new SyntaxError("no graph tag")}forIn(json.graph,function(key,value){var matches=key.match(/^(\w+)\[(\d+)\]$/);var name;var i;if(matches){name=matches[1];i=parseInt(matches[2],10);if(name==="node"){nodes[i]=value}else{if(name==="edge"){edges[i]=value;edges[i].id1=edges[i].source;edges[i].id2=edges[i].target;delete (edges[i].source);delete (edges[i].target)}else{graph[key]=value}}}else{graph[key]=value}});graph.nodes=nodes;graph.edges=edges;return{data:graph,config:{graphType:"Network"}}};this.HMl=function(xml,json,p,current){json=json||{};if(p&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){var j={};for(var i=0;i<xml.attributes.length;i++){var attr=xml.attributes.item(i);var attrName=attr.name.replace(/(?!xmlns)^.*:/,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();var attrVal=attr.value.trim();if(p){j[attrName]=attrVal}else{json[attrName]=attrVal}}if(p){json[p].push(j)}}else{if(p==="alt"){json[p].push(xml.textContent.replace(/\"/g,"'").replace(/\[/g,"&#91").replace(/\]/g,"&#93"))}}if(xml.hasChildNodes()&&!current){for(var k=0;k<xml.childNodes.length;k++){var childNode=xml.childNodes.item(k);if(childNode.nodeType===1){var childName=childNode.nodeName.replace(/(?!xmlns)^.*:/,"").toLowerCase();this.HMl(childNode,json,childName)}}}return json};this.PNGtoCX=function(b){var d=function(n,l){var o="";for(var m=0;m<4;m++){o+=String.fromCharCode(n.getUint8(l+m))}return o=="tEXt"};var c=function(o,m,l){var p="";for(var n=0;n<l;n++){p+=String.fromCharCode(o.getUint8(m+n))}return p.match(/CanvasXpress/)};var a=new DataView(b);var f=a.getUint32(8);var h=a.getUint32(8+4+4+f+4);if(d(a,8+4+4+f+4+4)&&c(a,8+4+4+f+4+4+4,h)){var k=a.getUint32(8+4+4+f+4+4+4+h+4);var g=8+4+4+f+4+4+4+h+4+4+4;var j="";for(var e=0;e<k;e++){j+=String.fromCharCode(a.getUint8(g+e))}j=j.replace("ReproducibleResearch\0","");var i;try{i=JSON.parse(decodeURIComponent(j))}catch(n){i=JSON.parse(j)}return i}else{alert("Oooops! Not a valid CanvasXpress Image")}};this.SVGtoCX=function(x){var parseXML=function(x){var d=null;if(window.DOMParser){try{d=(new DOMParser()).parseFromString(x,"text/xml")}catch(e){d=null}}else{if(window.ActiveXObject){try{d=new ActiveXObject("Microsoft.XMLDOM");d.async=false}catch(e){d=null}}else{alert("cannot parse xml string!")}}return d};var d=parseXML(x);var s=d.childNodes[0];if(s.tagName.match(/svg/i)){var d=s.getAttribute("desc");if(d){return JSON.parse(d)}}};this.arrayToCX=function(arr,config,rurl){var unique=function(a){var seen={};return a.filter(function(x){if(seen[x]){return false}seen[x]=true;return true})};var isDate=function(arr){var check=function(v){if(toString.call(v)==="[object Date]"){return true}if(typeof v.replace==="function"){v.replace(/^\s+|\s+$/gm,"")}var f=/(^\d{1,4}?[\.|\\/|-]\d{1,2}?[\.|\\/|-]\d{1,4})(\s*(?:0?[1-9]:[0-5]|1(?=[012])\d:[0-5])\d\s*[ap]m)?$/;return f.test(v)};var n=arr.length;for(var i=0;i<n;i++){if(arr[i]!=null&&!check(arr[i])){return false}}return true};var isNumeric=function(n){return n===null||n===undefined||Number.isNaN(n)?true:!isNaN(parseFloat(n))&&isFinite(n)};var isCalclBoxplot=function(arr,cols){for(var i=0;i<arr.length;i++){if(!cols.includes(arr[i])){return false}}return true};var isSameObject=function(a,b){return a===b||(typeof a==="object"&&typeof b==="object"&&JSON.stringify(a)===JSON.stringify(b))};var data={y:{vars:[],smps:[],data:[]}};var transpose=function(mat){return mat[0].map(function(_,c){return mat.map(function(r){return r[c]})})};var g="Scatter2D";var summaryType=false;var cn="";var hc=[];var xa=config&&config.hasOwnProperty("xAxis")&&config.xAxis.length>0?true:false;var ya=config&&config.hasOwnProperty("yAxis")&&config.yAxis.length>0?true:false;var za=config&&config.hasOwnProperty("zAxis")&&config.zAxis.length>0?true:false;var xy=xa&&ya?true:false;var gs=config&&config.hasOwnProperty("graphType")&&CanvasXpress.graphTypes.Scatter2Graphs.includes(config.graphType);var gl=config&&config.hasOwnProperty("graphType")&&CanvasXpress.graphTypes.LineGraphs.includes(config.graphType);var go=config&&config.hasOwnProperty("graphType")&&CanvasXpress.graphTypes.OneDGraphs.includes(config.graphType);var gr=config&&config.hasOwnProperty("graphType")&&(config.graphType=="Radar"||config.graphType=="Circular");var pc=config&&config.hasOwnProperty("graphType")&&(config.graphType=="ParallelCoordinates");var ds=config&&config.hasOwnProperty("graphType")&&config.graphType=="Heatmap"&&config.hasOwnProperty("dataframeSets")&&Array.isArray(config.dataframeSets);var as=[];if(ds){if(xa&&isSameObject(config.dataframeSets[0],config.xAxis)){config.dataframeSets.shift()}for(var i=0;i<config.dataframeSets.length;i++){as[i]=[]}var c=[];for(var i=0;i<config.dataframeSets.length;i++){c=c.concat(config.dataframeSets[i])}var ind=[];for(var i=0;i<arr[0].length;i++){if(c.includes(arr[0][i])){ind.push(i)}}for(var i=0;i<config.dataframeSets.length;i++){var dataframeSet=config.dataframeSets[i];for(var k=0;k<dataframeSet.length;k++){var colName=dataframeSet[k];var colIndexInArr=arr[0].indexOf(colName);if(colIndexInArr!==-1){var newCol=[];for(var row=1;row<arr.length;row++){newCol.push(arr[row][colIndexInArr])}as[i].push(newCol)}}}for(var i=arr[0].length-1;i>=0;i--){if(ind.includes(i)){for(var j=0;j<arr.length;j++){arr[j].splice(i,1)}}}}var cols=arr[0].filter(Number.isFinite);var mts=false;if(cols.length==0){cols=arr.shift()}else{cols=[];mts=true;for(var i=0;i<arr[0].length;i++){cols.push("C"+(i+1))}}var bp1=isCalclBoxplot(["median","qtl1","qtl3","iqr1","iqr3"],cols);var bp2=isCalclBoxplot(["median","q1","q3","ymin","ymax"],cols);var rows=[];var hasDot=false;var scn=false;for(var i=0;i<arr.length;i++){var v=arr[i][0];if(v!=null){rows.push(arr[i][0].toString());if(arr[i][0].toString().match(/\./)){}}}var urow=unique(rows);if(urow.length==rows.length&&!hasDot){for(var i=0;i<arr.length;i++){arr[i].shift(arr[i][0])}}else{scn=true;cn="Id";hc.push(cn);rows=[];for(var i=0;i<arr.length;i++){rows.push("R"+(i+1))}}if(cols.length>arr[0].length){cn=cols.shift();if(!cols.length==arr[0].length){return false}}else{if(!scn){cn=arr[0][0]}}if(arr[0].length!=arr[arr.length-1].length){arr.pop();rows.pop();if(arr[0].length!=arr[arr.length-1].length){return false}}var isrd=isDate(rows);if(isrd&&config&&((config.hasOwnProperty("graphType")&&CanvasXpress.graphTypes.Scatter2Graphs.includes(config.graphType))||(!config.hasOwnProperty("graphType")&&config.isCxplot))){if(!config.hasOwnProperty("graphType")&&config.isCxplot){cols.unshift(cn)}else{cols.unshift("Date")}isrd=cols[0];for(var i=0;i<rows.length;i++){arr[i].unshift(new Date(rows[i]))}cn="Id";hc.push(cn);rows=[];for(var i=0;i<arr.length;i++){rows.push("R"+(i+1))}}var types=[];var yAxis=[];var total=0;var cnvtm;var isgt=isrd?isrd:false;var r=/^\$?[0-9]+\.?[0-9]*$/;var f=/(^\d{1,4}?[\.|\\/|-]\d{1,2}?[\.|\\/|-]\d{1,4})(\s*(?:0?[1-9]:[0-5]|1(?=[012])\d:[0-5])\d\s*[ap]m)?$/;var f2=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?$/;for(var i=0;i<cols.length;i++){types[i]=false;cnvtm=true;for(var j=0;j<rows.length;j++){if(!f.test(String(arr[j][i]))){cnvtm=false;break}}for(var j=0;j<rows.length;j++){if(cnvtm){arr[j][i]=new Date(arr[j][i]).getTime()}else{if(r.test(String(arr[j][i]))){arr[j][i]=Number((String(arr[j][i])).replace("$",""))}}if(arr[j][i]===""){continue}if(!isNumeric(arr[j][i])){types[i]=true;break}}if(!types[i]&&config&&config.isCxplot&&config.aes&&config.aes.hasOwnProperty("meta")&&config.aes.meta.hasOwnProperty(cols[i])){types[i]=true}if(!types[i]&&cnvtm&&(((xa&&config.xAxis.includes(cols[i]))||(ya&&config.yAxis.includes(cols[i])))||(config&&config.hasOwnProperty("aes")&&config.aes.hasOwnProperty("x")&&config.aes.x==cols[i]))){isgt=cols[i]}if(!types[i]){for(var j=0;j<rows.length;j++){if(i==0&&isrd){continue}else{arr[j][i]=arr[j][i]==null||arr[j][i]==undefined?null:!isNaN(parseFloat(arr[j][i]))&&isFinite(arr[j][i])?Number(arr[j][i]):arr[j][i]===true?true:arr[j][i]===false?false:null}}total++}else{data.z={}}}var ts=true;var uts={};for(var i=0;i<types.length;i++){if(!types[i]&&!isNumeric(arr[0][i])){ts=false;break}else{var v=arr[0][i];if(v!=null){if(uts.hasOwnProperty(arr[0][i].toString())){ts=false;break}else{uts[arr[0][i].toString()]=true}}}}if(ts&&mts){if(data.z){delete data.z;data.x={}}}var tn=[];for(var i=0;i<types.length;i++){if(types[i]){var tnt=false;for(var j=0;j<rows.length;j++){if(!isNumeric(arr[j][i])){tn.push(false);tnt=true;break}}if(!tnt){tn.push(true)}}else{tn.push(false)}}for(var i=0;i<types.length;i++){if(types[i]&&tn[i]){for(var j=0;j<rows.length;j++){arr[j][i]=arr[j][i]+"\x00"}}}var trans=false;if(!config&&total>1){var n=Math.ceil(total*0.6);var q=0;for(var i=types.length-1;i>=0;i--){if(!types[i]){q++}else{if(q<n){trans=true}}}}if(config&&config.topoJSON){delete data.z;data.x={};data.y.vars.push("Dummy");var ii=0;for(var i=ii;i<rows.length;i++){data.y.smps.push(rows[i])}data.y.data=[[0]];for(var i=0;i<cols.length;i++){data.x[cols[i]]=[];for(var j=0;j<rows.length;j++){data.x[cols[i]].push(arr[j][i])}}}else{if(config&&config.graphType=="Venn"){data={venn:{data:{},legend:{}}};for(var i=0;i<rows.length;i++){data.venn.data[rows[i]]=arr[i][0]}data.venn.legend=rows.length==15?{A:"A",B:"B",C:"C",D:"D"}:rows.length==3?{A:"A",B:"B",C:"C"}:rows.length==2?{A:"A",B:"B"}:{A:"A"};return{data:data,config:{graphType:"Venn"}}}else{if(bp1||bp2){data={y:{vars:["bp"],smps:rows,iqr1:[[]],qtl1:[[]],median:[[]],qtl3:[[]],iqr3:[[]],out:[[]]}};if(bp1){bp1=["median","qtl1","qtl3","iqr1","iqr3"];for(var i=0;i<bp1.length;i++){var ii=cols.indexOf(bp1[i]);if(ii!=-1){for(var j=0;j<rows.length;j++){data.y[bp1[i]][0].push(arr[j][ii])}}}}else{bp2=["median","q1","q3","ymin","ymax"];var mp2=["median","qtl1","qtl3","iqr1","iqr3"];for(var i=0;i<bp2.length;i++){var ii=cols.indexOf(bp2[i]);if(ii!=-1){for(var j=0;j<rows.length;j++){data.y[mp2[i]][0].push(arr[j][ii])}}}}var ii=cols.indexOf("outliers");for(var j=0;j<rows.length;j++){data.y.out[0].push(arr[j][ii]?arr[j][ii].split(/,\s*/):[])}if(config&&config.aes&&config.aes.meta&&config.aes.x){var ii=cols.indexOf(config.aes.x);for(var j=0;j<rows.length;j++){data.y.smps[j]=arr[j][ii]}}var mp={median:true,qtl1:true,qtl3:true,iqr1:true,iqr3:true,q1:true,q3:true,ymin:true,ymax:true,outliers:true};for(var i=0;i<cols.length;i++){if(!mp.hasOwnProperty(cols[i])){if(!data.x){data.x={}}data.x[cols[i]]=[];for(var j=0;j<rows.length;j++){data.x[cols[i]].push(arr[j][i])}}}g="Boxplot";summaryType="iqr"}else{if(ts&&mts){var ii=1;for(var i=0;i<cols.length;i++){if(types[i]){data.x[arr[0][i]]=[]}else{data.y.vars.push("V"+ii);ii++}}data.y.smps=["Time"];for(var i=1;i<rows.length;i++){yAxis.push(rows[i]);data.y.smps.push(rows[i])}var ii=0;for(var i=0;i<cols.length;i++){if(types[i]){for(var j=0;j<rows.length;j++){data.x[arr[0][i]].push(j==0?"":arr[j][i])}}else{data.y.data[ii]=[];for(var j=0;j<rows.length;j++){data.y.data[ii][j]=arr[j][i]}ii++}}}else{for(var i=0;i<rows.length;i++){data.y.data[i]=[];data.y.vars.push(rows[i])}for(var i=0;i<cols.length;i++){var str=config&&config.metaData&&config.metaData.hasOwnProperty(cols[i])&&config.metaData[cols[i]]?true:false;if(config&&config.isDataFrame){if(xy&&(config.xAxis.includes(cols[i])||config.yAxis.includes(cols[i]))){data.y.smps.push(cols[i]);for(var j=0;j<rows.length;j++){data.y.data[j].push(arr[j][i])}}else{if(str||types[i]||(xy&&za&&!config.xAxis.includes(cols[i])&&!config.yAxis.includes(cols[i])&&!config.zAxis.includes(cols[i]))||(xa&&!config.xAxis.includes(cols[i]))||(ya&&!config.yAxis.includes(cols[i]))){if(!data.z){data.z={}}data.z[cols[i]]=[];for(var j=0;j<rows.length;j++){data.z[cols[i]].push(arr[j][i])}}else{data.y.smps.push(cols[i]);for(var j=0;j<rows.length;j++){data.y.data[j].push(arr[j][i])}}}}else{if(config&&config.isCxplot){str=str?str:config.aes.hasOwnProperty("stringSampleFactors")&&config.aes.stringSampleFactors.includes(cols[i])?true:false;if(!types[i]&&(cols[i]==config.aes.x||cols[i]==config.aes.y||cols[i]==config.aes.z||cols[i]==config.aes.xend||cols[i]==config.aes.yend)&&!str){data.y.smps.push(cols[i]);for(var j=0;j<rows.length;j++){data.y.data[j].push(arr[j][i])}}else{if(!data.z){data.z={}}data.z[cols[i]]=[];for(var j=0;j<rows.length;j++){data.z[cols[i]].push(arr[j][i])}}}else{if(str||types[i]){if(!data.z){data.z={}}data.z[cols[i]]=[];for(var j=0;j<rows.length;j++){data.z[cols[i]].push(arr[j][i])}}else{if(config&&config.metaData&&!types[i]){data.y.smps.push(cols[i]);for(var j=0;j<rows.length;j++){data.y.data[j].push(arr[j][i])}}else{if(!config||(config&&((config.xAxis&&config.xAxis.includes(cols[i]))||(config.yAxis&&config.yAxis.includes(cols[i])))||(config.xAxis2&&config.xAxis2.includes(cols[i]))||(config.zAxis&&config.zAxis.includes(cols[i]))||(config.bulletTargetVarName&&config.bulletTargetVarName==cols[i])||(config.rangeStack&&config.rangeStack.includes(cols[i]))||config.prompt||rurl)){data.y.smps.push(cols[i]);for(var j=0;j<rows.length;j++){data.y.data[j].push(arr[j][i])}}else{if(!data.z){data.z={}}data.z[cols[i]]=[];for(var j=0;j<rows.length;j++){data.z[cols[i]].push(arr[j][i])}}}}}}}}}}}if(config&&config.isDataFrame){g=config&&config.graphType?config.graphType:"Scatter2D";if(g!="Scatter2D"){data.y.data=transpose(data.y.data);data.y.vars=data.y.smps;data.y.smps=rows;data.x=data.z;delete (data.z)}if(data.y.vars.length==0){var n=data.y.smps.length;data.y.data=[[]];for(var i=0;i<n;i++){data.y.data[0].push(1)}data.y.vars=["counts"];summaryType="count"}}else{if(data.y.smps.length==0){var n=data.y.data.length;data.y.data=[[]];for(var i=0;i<n;i++){data.y.data[0].push(1)}data.y.smps=data.y.vars;data.y.vars=["counts"];data.x=data.z;delete (data.z);g="Bar";summaryType="sum"}else{if(!rurl&&!pc&&(gr||(data.y.smps.length==1&&!gs)||(trans&&(!config||(config&&!config.topoJSON&&!config.isDataFrame)))||gl||(go&&!ya))){data.y.data=transpose(data.y.data);data.y.vars=data.y.smps;data.y.smps=rows;data.x=data.z;delete (data.z);g="Bar"}}}var xAxisTime=isgt&&config&&((config.hasOwnProperty("xAxis")&&config.xAxis.includes(isgt))||(config.hasOwnProperty("aes")&&config.aes.hasOwnProperty("x")&&config.aes.x==isgt))?true:false;var yAxisTime=isgt&&config&&((config.hasOwnProperty("yAxis")&&config.yAxis.includes(isgt))||(config.hasOwnProperty("aes")&&config.aes.hasOwnProperty("y")&&config.aes.y==isgt))?true:false;if(ts&&mts){return{data:data,config:{graphType:config&&config.graphType?config.graphType:g,xAxis:["Time"],yAxis:yAxis,scatterType:"line",isGraphTime:true,xAxisTime:xAxisTime,yAxisTime:yAxisTime,dataTableZeroHeader:cn,dataTableColsOrder:(cols.unshift(cn),cols),dataTableColsHide:hc}}}else{if(ds&&as.length>0){var onm=2;for(var k=0;k<as.length;k++){data.y["data"+onm]=as[k];data.y["vars"+onm]=config.dataframeSets[k];onm++}}return{data:data,config:{graphType:config&&config.graphType?config.graphType:g,summaryType:summaryType,isGraphTime:isgt||isrd||(config&&config.isGraphTime)||false,xAxisTime:xAxisTime,yAxisTime:yAxisTime,dataTableZeroHeader:cn,dataTableColsOrder:(cols.unshift(cn),cols),dataTableColsHide:hc}}}};this.arrayToCXNetwork=function(arr,target,config,events,data,type){var obj={data:{nodes:[],edges:[]}};if(data){var map={};var cols=arr[0];var nodes=0;var edges=0;var fail=0;for(var i=1;i<arr.length;i++){var n=arr[i][0];var m=arr[i][1];if(this.nodeIndices.hasOwnProperty(n)&&this.nodeIndices.hasOwnProperty(m)){edges++}else{if(this.nodeIndices.hasOwnProperty(n)){nodes++}else{fail++}}map[n]=i}if(!nodes&&!edges){for(var i=0;i<data.nodes.length;i++){var n=data.nodes[i];if(n.hasOwnProperty("extId")&&map.hasOwnProperty(n.extId)){arr[map[n.extId]][0]=n.id;nodes++}}}if(edges>nodes){nodes=0;edges=0;fail=0;type="edge";for(var i=1;i<arr.length;i++){var n=arr[i][0];var m=arr[i][1];if(this.nodeIndices.hasOwnProperty(n)&&this.nodeIndices.hasOwnProperty(m)){edges++;obj[n+":"+m]={};for(var j=2;j<cols.length;j++){obj[n+":"+m][cols[j]]=arr[i][j]}}else{fail++}}}else{if(nodes>8){nodes=0;edges=0;fail=0;type="node";for(var i=1;i<arr.length;i++){var n=arr[i][0];if(this.nodeIndices.hasOwnProperty(n)){nodes++;obj[n]={};for(var j=1;j<cols.length;j++){obj[n][cols[j]]=arr[i][j]}}else{fail++}}}else{return arr}}if((type=="edge"&&(edges>5||edges>=arr.length-1))||(type=="node"&&(nodes>5||nodes>=arr.length-1))){return{data:obj,rows:Math.max(nodes,edges),fail:fail,type:type}}else{return arr}}else{if(!type||type=="edge"){var done={};for(var i=1;i<arr.length;i++){var i1=arr[i][0];var i2=arr[i][1];if(i1&&i2){var n1={id:i1};var n2={id:i2};var e={id1:i1,id2:i2};for(var j=2;j<arr[i].length;j++){n1[arr[0][j]]=arr[i][j];n2[arr[0][j]]=arr[i][j];e[arr[0][j]]=arr[i][j]}if(!done.hasOwnProperty(i1)){obj.data.nodes.push(n1);done[i1]=true}if(!done.hasOwnProperty(i2)){obj.data.nodes.push(n2);done[i2]=true}obj.data.edges.push(e)}}obj.renderTo=target;obj.config=config?config:obj.config={graphType:"Network"};obj.events=events}}return obj};this.sXj=function(x,config){for(var i=0;i<x.y.data.length;i++){x.y.data[i].unshift(x.y.vars[i])}x.y.data.unshift(x.y.smps);x.y.data[0].unshift("");x=this.arrayToCX(x.y.data,config);return x};this.gexfToCX=function(xml,target,config,events){var XMLToJSON=function(xml,json,p,current){json=json||{};if(p&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){var j={};for(var i=0;i<xml.attributes.length;i++){var attr=xml.attributes.item(i);var attrName=attr.name.replace(/(?!xmlns)^.*:/,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();var attrVal=attr.value.trim();if(p){j[attrName]=attrVal}else{json[attrName]=attrVal}}if(p){json[p].push(j)}}else{if(p==="alt"){json[p].push(xml.textContent.replace(/\"/g,"'").replace(/\[/g,"&#91").replace(/\]/g,"&#93"))}}if(xml.hasChildNodes()&&!current){for(var k=0;k<xml.childNodes.length;k++){var childNode=xml.childNodes.item(k);if(childNode.nodeType===1){var childName=childNode.nodeName.replace(/(?!xmlns)^.*:/,"").toLowerCase();XMLToJSON(childNode,json,childName)}}}return json};var nodes=[];var edges=[];var cl=true;var gexf=xml.childNodes[0];if(gexf.tagName.toLowerCase()=="gexf"){for(var i=0;i<gexf.childNodes.length;i++){var el=gexf.childNodes[i];if(el.nodeName&&el.nodeName.toLowerCase()=="graph"){for(var j=0;j<el.childNodes.length;j++){var nd=el.childNodes[j];if(nd.nodeName&&nd.nodeName.toLowerCase()=="nodes"){for(var k=0;k<nd.childNodes.length;k++){var n=nd.childNodes[k];if(n.nodeName&&n.nodeName.toLowerCase()=="node"){var js=XMLToJSON(n);var node={};if(js.id){for(var p in js){switch(p.toLowerCase()){case"id":node.id=js.id;break;case"label":node.name=js.label;break;case"color":node.color="rgb("+js[p][0].r+","+js[p][0].g+","+js[p][0].b+")";break;case"position":node.x=Number(js[p][0].x);node.y=Number(js[p][0].y);node.z=Number(js[p][0].z);cl=false;break;case"size":node.width=Number(js[p][0].value);node.height=Number(js[p][0].value);break}}nodes.push(node)}}}}else{if(nd.nodeName&&nd.nodeName.toLowerCase()=="edges"){for(var k=0;k<nd.childNodes.length;k++){var e=nd.childNodes[k];if(e.nodeName&&e.nodeName.toLowerCase()=="edge"){js=XMLToJSON(e);var edge={};if(js.source&&js.target){edge.id1=js.source;edge.id2=js.target;edges.push(edge)}}}}}}}}}else{alert("Ooops! Not a Gephi gexf file!")}var res="Number of Nodes: "+nodes.length+"\nNumber of Edges: "+edges.length+"\n";res=res.replace(/\n/g,"<br>");var data={data:{nodes:nodes,edges:edges},config:{graphType:"Network",calculateLayout:cl,showAnimation:false,networkNodesOnTop:true,showNodeNameThreshold:20000,networkFreeze:false,preScaleNetwork:false,moveParentsWithChildren:true,ignoreEventlessOrder:true,networkVendor:"Gephi"},renderTo:target,events:events,afterRender:[["flashInfoSpan",[100,100,res,5000]],["appendNetworkDataFromURL",[]]]};if(config){for(var p in config){data.config[p]=config[p]}}return data};this.metabaseToCX=function(xml,target,config,events){var loc={3:"microsome",13:"epr",21:"lysosome",43:"nucleus",67:"golgi",1287:"mitochondria",1312:"peroxisome"};var ctx=window.document.createElement("canvas").getContext("2d",{willReadFrequently:true});var XMLToJSON=function(xml,json,p,current){json=json||{};if(p&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){var j={};for(var i=0;i<xml.attributes.length;i++){var attr=xml.attributes.item(i);var attrName=attr.name.replace(/(?!xmlns)^.*:/,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();var attrVal=attr.value.trim();if(p){j[attrName]=attrVal}else{json[attrName]=attrVal}}if(p){json[p].push(j)}}else{if(p==="alt"){json[p].push(xml.textContent.replace(/\"/g,"'").replace(/\[/g,"&#91").replace(/\]/g,"&#93"))}}if(xml.hasChildNodes()&&!current){for(var k=0;k<xml.childNodes.length;k++){var childNode=xml.childNodes.item(k);if(childNode.nodeType===1){var childName=childNode.nodeName.replace(/(?!xmlns)^.*:/,"").toLowerCase();XMLToJSON(childNode,json,childName)}}}return json};var wrapText=function(str,width){var re=new RegExp("(?![^\\n]{1,"+width+"}$)([^\\n]{1,"+width+"})([\\s|-])","g");return str.toString().replace(re,"$1$2\n").replace(" \n","\n")};var measureTextMultiple=function(t,f){var l=t.split(/\n/);var m=0;ctx.font=f;for(var i=0;i<l.length;i++){m=Math.max(m,ctx.measureText(l[i]).width)}return m};var getMembrane=function(node){var getNode=function(){return{shape:"rectangle",color:"rgba(255,255,255,0)",outline:"rgba(0,0,0,0)",outlineWidth:0,hideLabel:true,immutable:true,eventless:true,type:node.type,zorder:node.zorder+1,width:32,height:32}};var getNodeTL=function(){var nd=getNode();nd.id=node.id+"-membraneTL";nd.pattern="membraneTL";nd.x=node.x-(node.width*0.5);nd.y=node.y-(node.height*0.5);nd.width=64;nd.height=64;return nd};var getNodeTR=function(){var nd=getNode();nd.id=node.id+"-membraneTR";nd.pattern="membraneTR";nd.x=node.x+(node.width*0.5)-32;nd.y=node.y-(node.height*0.5);nd.width=64;nd.height=64;return nd};var getNodeBL=function(){var nd=getNode();nd.id=node.id+"-membraneBL";nd.pattern="membraneBL";nd.x=node.x-(node.width*0.5);nd.y=node.y+(node.height*0.5)-32;nd.width=64;nd.height=64;return nd};var getNodeBR=function(){var nd=getNode();nd.id=node.id+"-membraneBR";nd.pattern="membraneBR";nd.x=node.x+(node.width*0.5)-32;nd.y=node.y+(node.height*0.5)-32;nd.width=64;nd.height=64;return nd};var getNodeTop=function(s){var nd=getNode();nd.id=node.id+"-membraneT";nd.pattern="membraneTop";nd.x=node.x+(s==0?0:s==1?-16:s==2?16:0);nd.y=node.y-(node.height*0.5);nd.width=node.width-(s==0?0:s==1?32:s==2?32:64);return nd};var getNodeBottom=function(s){var nd=getNodeTop(s);nd.id=node.id+"-membraneB";nd.pattern="membraneBottom";nd.y=node.y+(node.height*0.5)-16;return nd};var getNodeRight=function(s){var nd=getNode();nd.id=node.id+"-membraneR";nd.pattern="membraneRight";nd.x=node.x+(node.width*0.5)-16;nd.y=node.y+(s==0?0:s==1?-16:s==2?16:0);nd.height=node.height-(s==0?0:s==1?32:s==2?32:64);return nd};var getNodeLeft=function(s){var nd=getNodeRight(s);nd.id=node.id+"-membraneL";nd.pattern="membraneLeft";nd.x=node.x-(node.width*0.5);return nd};switch(node.type){case 1:node.shape="rectangle";return[getNodeTop(0)];case 2:node.shape="rectangle";return[getNodeRight(0)];case 3:node.shape="roundrecttr";return[getNodeTop(1),getNodeRight(2),getNodeTR()];case 4:node.shape="rectangle";return[getNodeBottom(0)];case 5:node.shape="rectangle";return[getNodeTop(0),getNodeBottom(0)];case 6:node.shape="roundrectbr";return[getNodeBottom(1),getNodeRight(1),getNodeBR()];case 7:node.shape="roundrectr";return[getNodeTop(1),getNodeBottom(1),getNodeRight(3),getNodeBR(),getNodeTR()];case 8:node.shape="rectangle";return[getNodeLeft(0)];case 9:node.shape="roundrecttl";return[getNodeTop(2),getNodeLeft(2),getNodeTL()];case 10:node.shape="rectangle";return[getNodeRight(0),getNodeLeft(0)];case 11:node.shape="roundrectt";return[getNodeTop(3),getNodeRight(2),getNodeLeft(2),getNodeTR(),getNodeTL()];case 12:node.shape="roundrectbl";return[getNodeBottom(2),getNodeLeft(1),getNodeBL()];case 13:node.shape="roundrectl";return[getNodeTop(2),getNodeBottom(2),getNodeLeft(3),getNodeTL(),getNodeBL()];case 14:node.shape="roundrectb";return[getNodeBottom(3),getNodeRight(1),getNodeLeft(1),getNodeBR(),getNodeBL()];case 15:if(node.width<64||node.height<64){node.shape="rectangle";delete node.gradient;delete node.color1;delete node.color2;delete node.color3;return[getNodeTop(0)]}node.shape="roundrect2";return[getNodeTop(3),getNodeBottom(3),getNodeRight(3),getNodeLeft(3),getNodeTR(),getNodeTL(),getNodeBR(),getNodeBL()]}return[]};var getRadians=function(x0,y0,x1,y1){return(Math.atan2(y1-y0,x1-x0)+2*Math.PI)%(2*Math.PI)};var getCoordinateAtDistance=function(x0,y0,x1,y1,d){var dx=x1-x0;var dy=y1-y0;var distance=Math.hypot(dx,dy);if(distance===0){return[x0,y0]}var ratio=d/distance;var newX=x0+dx*ratio;var newY=y0+dy*ratio;return[newX,newY]};var getLengthToNodeBoundary=function(x0,y0,x1,y1,node){var dx=x1-x0;var dy=y1-y0;var intersectionX=x0;var intersectionY=y0;var nodeLeft=node.x-node.width/2;var nodeRight=node.x+node.width/2;var nodeTop=node.y-node.height/2;var nodeBottom=node.y+node.height/2;if(dx!==0){var leftIntersect=(nodeLeft-x0)/dx;var rightIntersect=(nodeRight-x0)/dx;if(dx>0){intersectionX=nodeLeft}else{intersectionX=nodeRight}if(leftIntersect>=0&&leftIntersect<=1){intersectionY=y0+leftIntersect*dy}else{if(rightIntersect>=0&&rightIntersect<=1){intersectionY=y0+rightIntersect*dy}}}if(dy!==0){var topIntersect=(nodeTop-y0)/dy;var bottomIntersect=(nodeBottom-y0)/dy;if(dy>0){intersectionY=nodeTop}else{intersectionY=nodeBottom}if(topIntersect>=0&&topIntersect<=1){intersectionX=x0+topIntersect*dx}else{if(bottomIntersect>=0&&bottomIntersect<=1){intersectionX=x0+bottomIntersect*dx}}}var distance=Math.sqrt(Math.pow(intersectionX-x0,2)+Math.pow(intersectionY-y0,2));return distance+2};var nodes=[];var edges=[];var pw=xml.childNodes[0];if(pw.tagName.toLowerCase()=="map"){var seen={};var sord=[];var n=0;var ob=XMLToJSON(pw,false,false,true);nodes.push({id:"__background__",type:"background",shape:"rectangle",color:"rgb(220,231,232)",outline:"rgb(29,154,195)",outlineWidth:3,width:Number(ob.width),height:Number(ob.height),x:Number(ob.width)*0.5,y:Number(ob.height)*0.5,hideLabel:true,immutable:true,eventless:true,zorder:1});sord.push(n++);for(var i=0;i<pw.childNodes.length;i++){var el=pw.childNodes[i];if(el.nodeName){var nn=el.nodeName.toLowerCase();switch(nn){case"localizations":for(var j=0;j<el.childNodes.length;j++){var nd=el.childNodes[j];if(nd.nodeName&&nd.nodeName.toLowerCase()=="loc"){var js=XMLToJSON(nd);var shp=loc.hasOwnProperty(js.id)?"image":js.id=="16"?"roundrect2":"roundrect";var node={id:"loc"+(j+1),shape:shp,hideLabel:true,immutable:true,eventless:true,x:Number(js.x)+(Number(js.width)*0.5),y:Number(js.y)+(Number(js.height)*0.5),width:Number(js.width),height:Number(js.height),type:Number(js.type),zorder:js.appearance&&js.appearance[0].zorder?Number(js.appearance[0].zorder.replace("Integer: ","")):2};if(shp!="image"){node.color="rgba(0,0,0,0)";node.outline=js.id=="16"?"rgba(0,0,0,0)":"rgb(83,158,188)";node.outlineWidth=js.id!="16"?3:0;if(js.id!="16"){node.width-=6;node.height-=6}}if(js.appearance&&js.appearance[0].rotateangle){node.rotate=Number(js.appearance&&js.appearance[0].rotateangle.split(": ")[1]);if(!node.rotate){delete node.rotate}else{node.widthTMP=node.width;node.width=node.height;node.height=node.widthTMP;delete node.widthTMP}}if(js.id=="16"){node.gradient="linear";node.color1="rgb(122,194,226)";node.color2="rgb(223,237,248)";node.color3="rgb(223,237,248)"}if(shp=="image"){if(js.id=="1287"){node.imagePath=js.type=="1"?CanvasXpress.images.mitochondria2:CanvasXpress.images.mitochondria}else{node.imagePath=CanvasXpress.images[loc[js.id]]}}for(var p in js){if(p.toLowerCase()=="appearance"){for(var a in js[p][0]){var vk=js[p][0][a].split(": ");switch(vk[0]){case"String":node[a]=vk[1];break;case"Integer":case"Double":node[a]=Number(vk[1]);break;case"Boolean":node[a]=vk[1]=="true"?true:false;break}}}}nodes.push(node);sord.push(n++);if(Number(js.id)==16){var mem=getMembrane(node);if(mem.length){for(var k=0;k<mem.length;k++){nodes.push(mem[k]);sord.push(n++)}}}}}break;case"nodes":for(var j=0;j<el.childNodes.length;j++){var nd=el.childNodes[j];if(nd.nodeName&&nd.nodeName.toLowerCase()=="node"){var js=XMLToJSON(nd);var node={};for(var p in js){if(p.toLowerCase()=="alt"){if(js[p][0].match(/\w/)){node.tooltip=js[p][0].replace(/\"/g,"'");node.tooltip=js[p][0].replace(/\[/g,"&#91");node.tooltip=js[p][0].replace(/\]/g,"&#93")}}if(p.toLowerCase()=="appearance"){for(var a in js[p][0]){vk=js[p][0][a].split(":");switch(vk[0]){case"String":node[a]=vk[1].replace(/\s/g,"");break;case"Integer":case"Double":node[a]=Number(vk[1].replace(/\s/g,""));break;case"Boolean":node[a]=vk[1].replace(/\s/g,"")=="true"?true:false;break;case"Rectangle":node[a]=vk[1].replace(/\s/g,"").split(",").map(Number);break;case"Color":node[a]=vk[1].replace(/\s/g,"").split(",").map(Number);node[a][3]=Math.round(node[a][3]/255*10)/10;node[a]="rgba("+node[a].join(",")+")";break;case"Font":node[a]=vk[1].replace(/\s/g,"").split(",");break}}}node[p]=js[p]=="true"?true:js[p]=="false"?false:!isNaN(js[p])?Number(js[p]):js[p]}node.extId=js.id;node.id=js.nodeid.toString();node.x=Number(js.x)+(Number(js.width)*0.5);node.y=Number(js.y)+(Number(js.height)*0.5);node.width=Number(js.width);node.height=Number(js.height);if(node.iconarea){node.width=node.iconarea[2];node.height=node.iconarea[3];node.x=node.iconarea[0]+(node.width*0.5);node.y=node.iconarea[1]+(node.height*0.5);delete node.iconarea}if(js.icontype&&(js.type==0||js.type==16)){if(isNaN(js.icontype)){js.icontype=1000}if(Number(js.icontype)<10){js.icontype="0"+js.icontype}if(CanvasXpress.images.hasOwnProperty(js.icontype)){node.zoomX=50/node.width;node.zoomY=50/node.height;node.shape="image";node.imagePath=CanvasXpress.images[js.icontype];node.immutable=false}else{node.shape="roundrect";node.immutable=true}}else{if(js.icontype){switch(js.type){case"-10":node.width-=5;node.height-=5;node.x+=2.5;node.y+=2.5;node.shape=node.arcwidth>40?"roundrecto":"roundrect";break;case"21":case"61":case"63":case"91":case"-11":case"-12":node.width-=4;node.height-=4;node.x+=2;node.y+=2;node.shape="roundrect";break;default:break}node.immutable=true}else{node.shape="roundrect";node.immutable=true}}if(node.name==""){node.hideLabel=true}else{node.name=node.name.toString().replace(/\[/g,"&#91").replace(/\]/g,"&#93").replace(/\"/g,"&quot")}if(node.textarea){var lines=1;if(node.font){lines=Math.floor(node.textarea[3]/(Number(node.font[2])+(Number(node.font[2])>12?1:0)));node.labelSize=node.font[2]==14?1.1:1;if(node.font[0].match(/Bold Italic/i)){node.labelStyle="Bold Italic"}else{if(node.font[0].match(/Bold/i)){node.labelStyle="Bold"}else{if(node.font[0].match(/Italic/i)){node.labelStyle="Italic"}}}}if(lines>1&&!node.name.toString().match(/\n/)){var fnt=Math.floor(10*node.labelSize)+"px Arial";var tst=Math.floor(node.textarea[2]/5.5);var wrp=tst>0?wrapText(node.name.toString(),tst):node.name.toString();var lns=wrp.split(/\n/);var max=measureTextMultiple(wrp,fnt);if(lns.length>lines){while(lns.length>lines&&tst<node.name.toString().length){wrp=wrapText(node.name.toString(),tst++);lns=wrp.split(/\n/);max=measureTextMultiple(wrp,fnt)}}if(max>node.textarea[2]){wrp=wrp.replace("(","\n(");lns=wrp.split(/\n/);max=measureTextMultiple(wrp,fnt);while((max>node.textarea[2]||lns.length*fnt>node.textarea[3]||lns.length<lines)&&tst>3){wrp=wrapText(node.name,tst--);lns=wrp.split(/\n/);max=measureTextMultiple(wrp,fnt)}}node.name=wrp}else{if(lines==0){node.hideLabel=true}}node.labelX=node.textarea[0]+(node.textarea[2]*0.5);node.labelY=node.textarea[1]+(node.textarea[3]*0.5)}if(node.textalignment!=null){if(node.textalignment==0){node.labelAlign="left";node.labelX-=(node.textarea[2]*0.45)}else{if(node.textalignment==1){node.labelAlign="center"}else{if(node.textalignment==2){node.labelAlign="right";node.labelX+=(node.textarea[2]*0.45)}}}}delete node.textarea;if(node.fontcolor){node.labelColor=node.fontcolor;delete node.fontcolor}if(node.backgroundcolor){node.color=node.backgroundcolor;delete node.backgroundcolor}if(node.bordercolor){node.outline=node.bordercolor;delete node.bordercolor}if(node.rotateangle){node.rotate=node.shape=="image"?-node.rotateangle:270-node.rotateangle;if(node.shape!="image"){node.labelRotate=-node.rotateangle}delete node.rotateangle}if(node.borderwidth){node.outlineWidth=Number(node.borderwidth)-1;delete node.borderwidth}seen[node.id]=n;delete node.appearance;delete node.icontype;nodes.push(node);sord.push(n++);if(node.complex){nodes.push({id:node.id+"-complex",x:node.x,y:node.y,width:14,height:14,shape:"star",color:"rgb(255,255,255)",hideLabel:true,zorder:node.zorder+1,parentNode:node.id});seen[node.id+"-complex"]=n;sord.push(n++);delete node.complex}if(node.pathstart){var rot=0;var ptx=0;var pty=0;switch(node.sideofpathstarteditor){case 0:rot=90;pty=-(40+node.pathstartarrowmargin);break;case 1:rot=180;ptx=(40+node.pathstartarrowmargin);break;case 2:rot=270;pty=(40+node.pathstartarrowmargin);break;case 3:rot=0;ptx=-(40+node.pathstartarrowmargin);break}nodes.push({id:node.id+"-pathstart",x:node.x+ptx,y:node.y+pty,width:40,height:40,shape:"image",imagePath:CanvasXpress.images["99"],hideLabel:true,immutable:true,rotate:rot,zorder:node.zorder+1,parentNode:node.id});seen[node.id+"-pathstart"]=n;sord.push(n++);delete node.sideofpathstarteditor;delete node.pathstartarrowmargin;delete node.pathstart}if(node.organismspecificobject){nodes.push({id:node.id+"-organism",x:node.x,y:node.y,width:60,height:60,shape:"circle",color:"rgba(0,0,0,0.1)",outline:"rgb(255,255,0)",outlineWidth:3,hideLabel:true,zorder:node.zorder-1,parentNode:node.id});seen[node.id+"-organism"]=n;sord.push(n++);delete node.organismspecificobject}}}break;case"edges":for(var j=0;j<el.childNodes.length;j++){var ed=el.childNodes[j];if(ed.nodeName&&ed.nodeName.toLowerCase()=="edge"){var js=XMLToJSON(ed);var edge={};for(var p in js){if(p.toLowerCase()=="alt"){continue}if(p.toLowerCase()=="appearance"){for(var a in js[p][0]){if(a=="linkhighlighting"){vk=js[p][0][a].split(":");if(vk[1]=="Color"&&vk[2]){vk[2]=vk[2].split(",");vk[2].pop();edge.highlight="rgb("+vk[2].join(",")+")"}}else{vk=js[p][0][a].split(": ");switch(vk[0]){case"String":edge[a]=vk[1];break;case"Integer":case"Double":edge[a]=Number(vk[1]);break;case"Boolean":edge[a]=vk[1]=="true"?true:false;break;case"Rectangle":edge[a]=vk[1].replace(/\s/g,"").split(",").map(Number);break;case"PointArray":var cp=[];vk[1]=vk[1].replace(/\s/g,"").split(";");for(var k=0;k<vk[1].length-1;k++){cp.push(vk[1][k].split(",").map(Number))}edge[a]=cp;break}}}}edge[p]=js[p]=="true"?true:js[p]=="false"?false:!isNaN(js[p])?Number(js[p]):js[p]}edge.id1=js.src;edge.id2=js.dst;if(edge.type){edge.EdgeType=edge.type;delete edge.type}if(edge.directed){edge.endArrow="arrow";delete edge.directed}edge.color="grey";edge.type=edge.enhances?"dashed":"solid";if(edge.visualization=="Round"){edge.type="quadratic";edge.angle=edge.angle}else{if(edge.visualization=="Bezier"){if(!edge.controlpoints){edge.type="solid";edge.linksourcepointindex=0;edge.linktargetpointindex=0}else{edge.type="bezier";edge.angle=edge.angle}}}if(edge.hasOwnProperty("effect")){if(edge.effect>=0){switch(edge.effect){case 0:edge.color="rgb(152,156,158)";break;case 1:edge.color="rgb(0,128,0)";break;case 2:edge.color="rgb(170,0,0)";break}}if(edge.mech!=null){var dec={};if(edge.showhexagon){var col=edge.hexagoncustomcolor||edge.color;var idx=edge.hexagonindex||0;var pos=edge.hexagoncoordinate||0.5;var cll=edge.effect==0?"black":"rgb(242,216,0)";var getDec=function(lbl){return{label:lbl,labelColor:cll,shape:"hexagon",color:col,index:idx,pos:pos}};switch(edge.mech){case -1:dec=getDec("");break;case 0:dec=getDec("?");break;case 2:dec=getDec("CM");break;case 3:dec=getDec("+P");break;case 4:dec=getDec("-P");break;case 5:dec=getDec("B");break;case 6:dec=getDec("Cn");break;case 7:dec=getDec("T");break;case 8:dec=getDec("C");break;case 9:dec=getDec("TR");break;case 10:dec=getDec("GR");dec.labelColor="white";dec.color="rgb(0,0,170)";break;case 11:dec=getDec("CR");break;case 12:dec=getDec("IE");break;case 14:dec=getDec("CS");dec.labelColor="white";dec.color="rgb(0,0,170)";break;case 15:dec=getDec("Z");break;case 16:dec=getDec("Tn");break;case 20:dec=getDec("cRT");break;case 21:dec=getDec("PE");break;case 22:dec=getDec("TE");break;case 24:dec=getDec("M");break;case 31:dec=getDec("SR");break;case 44:dec=getDec("RG");break;default:dec=getDec("");break}if(dec.label!=""){edge.decoration=[dec]}}delete edge.effect;delete edge.mech;delete edge.hexagonindex;delete edge.hexagoncoordinate;delete edge.showhexagon;delete edge.hexagoncustomcolor}}if(edge.broken){if(!edge.decoration){edge.decoration=[]}edge.decoration.push({label:"X",labelColor:"purple",fontSize:20,shape:"square",color:"rgba(0,0,0,0)",index:(edge.brokenindex||0),pos:(edge.brokencoordinate||0.5)});delete edge.broken;delete edge.brokenindex;delete edge.brokencoordinate}if(edge.weakens){if(!edge.decoration){edge.decoration=[]}edge.decoration.push({label:"-x-",labelColor:"purple",fontSize:12,shape:"square",color:"rgba(0,0,0,0)",index:(edge.weakensindex||0),pos:(edge.weakenscoordinate||0.5)});delete edge.weakens;delete edge.weakensindex;delete edge.weakenscoordinate}if(edge.disease){edge.color="purple";edge.thickness=2;delete edge.disease}if(edge.enhances){edge.color="purple";edge.thickness=2;delete edge.enhances}delete edge.appearance;delete edge.src;delete edge.dst;if(seen.hasOwnProperty(edge.id1)&&seen.hasOwnProperty(edge.id2)){var src=nodes[seen[edge.id1]];var dst=nodes[seen[edge.id2]];var sx=src.x;var sy=src.y;var sw=src.width*0.5;var sh=src.height*0.5;var ex=0;var ey=0;var dx=dst.x;var dy=dst.y;var dw=dst.width*0.5;var dh=dst.height*0.5;var ss,sd,sq,ds,dd,dq,xy,cx,cy,rd,frs,lst,n1;if(edge.visualization&&edge.visualization=="Right angle polyline"){ss=edge.linksourcepointindex?Math.floor((edge.linksourcepointindex-1)/src.linkpointcount):-1;sd=edge.linksourcepointindex?(edge.linksourcepointindex-(src.linkpointcount*ss))/(src.linkpointcount+1):0;if(edge.firstleg&&edge.firstleg=="Vertical"){frs=edge.controlpoints?edge.controlpoints[0][1]:false;sy=frs&&frs[1]>0?sy+sh:src.y>dst.y?sy-sh:frs&&frs<0?sy-sh:sy+sh;if(ss==0||ss==2){sx=(sx-sw)+(src.width*sd)}else{if(ss==1){sx=sx+sw}else{if(ss==3){sx=sx-sw}}}sq="tb"}else{frs=edge.controlpoints?edge.controlpoints[0][0]:false;sx=frs&&frs>0?sx+sw:src.x>dst.x?sx-sw:frs&&frs<0?sx-sw:sx+sw;if(ss==1||ss==3){sy=(sy-sh)+(src.height*sd)}else{if(ss==0){sy=sy-sh}else{if(ss==2){sy=sy+sh}}}sq="lr"}ds=edge.linktargetpointindex?Math.floor((edge.linktargetpointindex-1)/dst.linkpointcount):-1;dd=edge.linktargetpointindex?(edge.linktargetpointindex-(dst.linkpointcount*ds))/(dst.linkpointcount+1):0;if(!edge.controlpoints){if(edge.firstleg&&edge.firstleg=="Vertical"){dx=src.x>dst.x?dx+dw:dx-dw;if(ds==1||ds==3){dy=(dy-dh)+(dst.height*dd)}}else{dy=src.y>dst.y?dy+dh:dy-dh;if(ds==0||ds==2){dx=(dx-dw)+(dst.width*dd)}}}else{dq=edge.controlpoints.length%2?sq:sq=="tb"?"lr":"tb";n1=edge.controlpoints.length-1;lst=edge.controlpoints[n1];if(edge.linktargetpointindex){if(ds==1||ds==3){if(src.x+lst[0]>dst.x){dx+=dw}else{dx-=dw}dy=(dy-dh)+(dst.height*dd)}else{if(ds==0||ds==2){dx=(dx-dw)+(dst.width*dd);if(src.y+lst[1]>dst.y){dy+=dh}else{dy-=dh}}}}else{if(edge.controlpoints.length%2){if(sq==dq&&sq=="lr"){if(src.x+lst[0]>dst.x){dx+=dw}else{dx-=dw}}}else{dx=src.x+lst[0]>dst.x?dx+dw:dx-dw}if(edge.controlpoints.length%2){if(sq!=dq||sq!="lr"){dy=src.y+lst[1]>dst.y?dy+dh:dy-dh}}else{if(src.y+lst[1]>dst.y){dy=dy+dh}}}}if(edge.controlpoints){edge.elbows=[[sx,sy]];cx=sx;cy=sy;if(edge.firstleg&&edge.firstleg=="Vertical"){for(var k=0;k<edge.controlpoints.length;k++){if(k%2){cx=sx+edge.controlpoints[k][0]}else{cy=sy+edge.controlpoints[k][1]}edge.elbows.push([cx,cy])}if(edge.controlpoints.length%2){edge.elbows.push([dx,cy])}else{edge.elbows.push([cx,dy])}}else{for(var k=0;k<edge.controlpoints.length;k++){if(k%2){cy=sy+edge.controlpoints[k][1]}else{cx=sx+edge.controlpoints[k][0]}edge.elbows.push([cx,cy])}if(edge.controlpoints.length%2){edge.elbows.push([cx,dy])}else{edge.elbows.push([dx,cy])}}edge.elbows.push([dx,dy])}else{if(edge.firstleg&&edge.firstleg=="Vertical"){edge.elbows=[[sx,sy],[sx,dy],[dx,dy]]}else{edge.elbows=[[sx,sy],[dx,sy],[dx,dy]]}}}else{if(edge.controlpoints&&edge.linksourcepointindex!=null&&edge.linktargetpointindex!=null&&edge.id1!=edge.id2){if(edge.linksourcepointindex||edge.controlpoints){frs=edge.controlpoints?edge.controlpoints[0]:[0,0];if(edge.linksourcepointindex==0){ds=getLengthToNodeBoundary(sx,sy,sx+frs[0],sy+frs[1],src);xy=getCoordinateAtDistance(sx,sy,sx+frs[0],sy+frs[1],ds);rd=getRadians(sx,sy,sx+frs[0],sy+frs[1]);sx=xy[0];sy=xy[1];ex=(-ds*-Math.cos(rd));ey=ds*Math.sin(rd)}else{ss=Math.floor((edge.linksourcepointindex-1)/src.linkpointcount);sd=(edge.linksourcepointindex-(src.linkpointcount*ss))/(src.linkpointcount+1);switch(ss){case 0:ex=(src.width*sd);ey=0;sx=ex+sx-sw;sy=sy-sh;break;case 1:ex=0;ey=(src.height*sd);sx=sx+sw;sy=ey+sy-sh;break;case 2:ex=(src.width*sd);ey=0;sx=ex+sx-sw;sy=sy+sh;break;case 3:ex=0;ey=(src.height*sd);sx=sx-sw;sy=ey+sy-sh;break}}}if(edge.linktargetpointindex||edge.controlpoints){lst=edge.controlpoints?JSON.parse(JSON.stringify(edge.controlpoints[edge.controlpoints.length-1])):[0,0];if(edge.linktargetpointindex==0){if(edge.controlpoints){lst[0]=dx-(sx+lst[0]);lst[1]=dy-(sy+lst[1])}ds=getLengthToNodeBoundary(dx,dy,dx+lst[0],dy+lst[1],dst);xy=getCoordinateAtDistance(dx,dy,dx+lst[0],dy+lst[1],-ds);rd=getRadians(dx,dy,dx+lst[0],dy+lst[1]);dx=xy[0];dy=xy[1]}else{ds=Math.floor((edge.linktargetpointindex-1)/dst.linkpointcount);dd=(edge.linktargetpointindex-(dst.linkpointcount*ds))/(dst.linkpointcount+1);switch(ds){case 0:dx=(dst.width*dd)+dx-dw;dy=dy-dh;break;case 1:dx=dx+dw;dy=(dst.height*dd)+dy-dh;break;case 2:dx=(dst.width*dd)+dx-dw;dy=dy+dh;break;case 3:dx=dx-dw;dy=(dst.height*dd)+dy-dh;break}}}edge.elbows=[];for(var k=0;k<edge.controlpoints.length;k++){edge.elbows.push([sx+edge.controlpoints[k][0]+5,sy+edge.controlpoints[k][1]])}edge.elbows.unshift([sx,sy]);edge.elbows.push([dx,dy])}else{if(edge.id1==edge.id2){ss=edge.linksourcepointindex?Math.floor((edge.linksourcepointindex-1)/src.linkpointcount):-1;ds=edge.linktargetpointindex?Math.floor((edge.linktargetpointindex-1)/dst.linkpointcount):-1;if(ss==ds){edge.self={dir:edge.angle>0,pos:(ss==0?"top":ss==1?"right":ss=2?"bottom":"left"),size:20,end:"arrow"}}else{if(ss>ds||(ss==0&&ds==3)){edge.self={dir:edge.angle>0,pos:(ss==0?"topLeft":ss=1?"topRight":ss==2?"bottomRight":"bottomLeft"),size:20,end:"arrow"}}else{if(ds>ss||(ds==0&&ss==3)){edge.self={dir:edge.angle>0,pos:(ss==0?"topRight":ss==1?"bottomRight":ss==2?"bottomLeft":"topLeft"),size:20,end:"arrow"}}}}}else{if(edge.linksourcepointindex){ss=edge.linksourcepointindex?Math.floor((edge.linksourcepointindex-1)/src.linkpointcount):-1;sd=edge.linksourcepointindex?(edge.linksourcepointindex-(src.linkpointcount*ss))/(src.linkpointcount+1):0;if(ss==0||ss==2){sx=(sx-sw)+(src.width*sd)}else{sy=(sy-sh)+(src.height*sd)}}if(edge.linktargetpointindex){ds=edge.linktargetpointindex?Math.floor((edge.linktargetpointindex-1)/dst.linkpointcount):-1;dd=edge.linktargetpointindex?(edge.linktargetpointindex-(dst.linkpointcount*ds))/(dst.linkpointcount+1):0;if(ds==0||ds==2){dx=(dx-dw)+(dst.width*dd)}else{dy=(dy-dh)+(dst.height*dd)}}if(edge.linksourcepointindex||edge.linktargetpointindex){if(edge.linksourcepointindex){switch(ss){case 0:sy-=sh;break;case 1:sx+=sw;break;case 2:sy+=sh;break;case 3:sx-=sw;break}if(!edge.linktargetpointindex){ds=getLengthToNodeBoundary(dx,dy,sx,sy,dst);xy=getCoordinateAtDistance(dx,dy,sx,sy,ds);dx=xy[0];dy=xy[1]}else{switch(ds){case 0:dy-=dh;break;case 1:dx+=dw;break;case 2:dy+=dh;break;case 3:dx-=dw;break}}}else{switch(ds){case 0:dy-=dh;break;case 1:dx+=dw;break;case 2:dy+=dh;break;case 3:dx-=dw;break}ds=getLengthToNodeBoundary(sx,sy,dx,dy,src);xy=getCoordinateAtDistance(sx,sy,dx,dy,ds);sx=xy[0];sy=xy[1]}edge.elbows=[[sx,sy],[dx,dy]]}}}}delete edge.linksourcepointindex;delete edge.linktargetpointindex;delete edge.controlpoints;delete edge.visualization;delete edge.firstleg;edges.push(edge)}}}break}}}sord.sort(function(a,b){if(nodes[a].zorder-nodes[b].zorder==0){return a-b}else{return nodes[a].zorder-nodes[b].zorder}});var tmp=[];for(var i=0;i<sord.length;i++){tmp.push(nodes[sord[i]])}nodes=tmp}else{alert("Ooops! Not a Metabase xgmml file!")}var res="Number of Nodes: "+nodes.length+"\nNumber of Edges: "+edges.length+"\n";res=res.replace(/\n/g,"<br>");var data={data:{nodes:nodes,edges:edges},config:{adjustBezier:false,graphType:"Network",calculateLayout:false,showAnimation:false,networkNodesOnTop:false,showNodeNameThreshold:20000,networkFreeze:true,preScaleNetwork:false,moveParentsWithChildren:true,ignoreEventlessOrder:true,networkVendor:"Metabase"},renderTo:target,events:events,afterRender:[["flashInfoSpan",[100,100,res,5000]],["appendNetworkDataFromURL",[]]]};if(config){for(var p in config){data.config[p]=config[p]}}return data};this.cytoscapeToCX=function(xml,target,config,events){var XMLToJSON=function(xml,json,p,current){json=json||{};if(p&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){var j={};for(var i=0;i<xml.attributes.length;i++){var attr=xml.attributes.item(i);var attrName=attr.name.replace(/(?!xmlns)^.*:/,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();var attrVal=attr.value.trim();if(p){j[attrName]=attrVal}else{json[attrName]=attrVal}}if(p){json[p].push(j)}}else{if(p==="alt"){json[p].push(xml.textContent.replace(/\"/g,"'").replace(/\[/g,"&#91").replace(/\]/g,"&#93"))}}if(xml.hasChildNodes()&&!current){for(var k=0;k<xml.childNodes.length;k++){var childNode=xml.childNodes.item(k);if(childNode.nodeType===1){var childName=childNode.nodeName.replace(/(?!xmlns)^.*:/,"").toLowerCase();XMLToJSON(childNode,json,childName)}}}return json};var sp={ELLIPSE:"oval",arc:"circle",bitmap:"circle",line:"minus",text:"circle",ver_ellipsis:"oval",hor_ellipsis:"oval"};var nodes=[];var edges=[];var title="";var pw=xml.childNodes[0];if(pw.tagName.toLowerCase()=="graph"){for(var i=0;i<pw.childNodes.length;i++){var el=pw.childNodes[i];if(el.nodeName){var nn=el.nodeName.toLowerCase();var js=XMLToJSON(el);switch(nn){case"node":if(js.graphics&&js.id){var gr=js.graphics[0];var node={id:js.id,x:Number(gr.x),y:Number(gr.y),z:Number(gr.z),width:Number(gr.w),height:Number(gr.h),shape:(sp[gr.type]||gr.type),color:gr.fill,outline:gr.outline,outlineWidth:Number(gr.width)};if(js.label){node.name=js.label}if(js.att){for(var j=0;j<js.att.length;j++){var at=js.att[j];if(at.name&&!at.name.match(/NODE_/)&&at.name!="selected"&&at.name!="isInPath"){switch(at.type){case"String":if(at.name=="COMMON"&&at.value){node.label=at.value}else{if(at.value){node[at.name]=at.value}}break;case"Double":case"Integer":if(at.value!=null){node[at.name]=Number(at.value)}break;case"Boolean":if(at.value!=null){node[at.name]=at.value==0?false:true}break}}}}nodes.push(node)}break;case"edge":if(js.source&&js.target){var edge={id1:js.source,id2:js.target};if(js.id){edge.intId=js.id}if(js.label){edge.label=js.label}if(js.directed){edge.directed=js.directed}if(js.graphics){edge.color=js.graphics[0].fill;edge.width=js.graphics[0].width}if(js.att){for(var j=0;j<js.att.length;j++){var at=js.att[j];if(at.name&&!at.name.match(/EDGE_/)&&at.name!="selected"&&at.name!="isInPath"){switch(at.type){case"String":if(at.value){edge[at.name]=at.value}break;case"Double":case"Integer":if(at.value!=null){edge[at.name]=Number(at.value)}break;case"Boolean":if(at.value!=null){edge[at.name]=at.value==0?false:true}break}}}}edges.push(edge)}break;case"att":if(js.name&&js.value&&js.name=="Dataset Name"){title=js.value}break}}}}else{alert("Ooops! Not a cytoscape xgmml file!")}var res="Number of Nodes: "+nodes.length+"\nNumber of Edges: "+edges.length+"\n";res=res.replace(/\n/g,"<br>");var data={data:{nodes:nodes,edges:edges},config:{adjustBezier:false,graphType:"Network",calculateLayout:false,showAnimation:false,networkNodesOnTop:true,showNodeNameThreshold:20000,networkFreeze:false,preScaleNetwork:false,title:title,moveParentsWithChildren:true,ignoreEventlessOrder:true,networkVendor:"Cytoscape"},renderTo:target,events:events,afterRender:[["flashInfoSpan",[100,100,res,5000]],["appendNetworkDataFromURL",[]]]};if(config){for(var p in config){data.config[p]=config[p]}}return data};this.wikipathwayToCX=function(xml,target,config,events){var pw=xml.childNodes[0];var nodes={};var edges=[];var state={};var groups={};var anchors={};var order={};var cntp=1;var cntn=0;var sord=[];var groupRef={};var groupGref={};var groupStyl={};var groupId={};var wrn="\nWarnings:\n";var htt=false;var title,subtitle;var arrowTypes={Line:false,Arrow:"arrow",TBar:"square","mim-conversion":"arrow","mim-modification":"arrow","mim-cleavage":"arrow","mim-gap":"arrow","mim-branching-left":"arrow","mim-branching-right":"arrow","mim-inhibition":"square","mim-catalysis":"round","mim-stimulation":"arrowOpen","mim-necessary-stimulation":"arrowOpen","mim-binding":"arrowArc","mim-covalent-bond":"arrowArc","mim-transcription-translation":"arrowArcOpen"};var createNodeFromGroup=function(grp,id,type){var mnx=Number.MAX_VALUE;var mny=Number.MAX_VALUE;var mxx=-Number.MAX_VALUE;var mxy=-Number.MAX_VALUE;var ids=[];var ord=[];var col=type&&type=="Group"?"rgba(0,0,0,0)":"rgba(245,245,245,0.5)";var out=type&&type=="Group"?"rgba(0,0,0,0)":"rgb(0,0,0)";for(var i=0;i<grp.length;i++){mnx=Math.min(mnx,grp[i][1]-(grp[i][3]/2));mny=Math.min(mny,grp[i][2]-(grp[i][4]/2));mxx=Math.max(mxx,grp[i][1]+(grp[i][3]/2));mxy=Math.max(mxy,grp[i][2]+(grp[i][4]/2));ids.push(grp[i][0]);nodes[grp[i][0]].parentNode=id;ord.push(nodes[grp[i][0]].zorder);ord.sort(function(a,b){return a-b})}var w=mxx-mnx;var h=mxy-mny;var ob={id:id,x:(mnx+mxx)/2,y:(mny+mxy)/2,width:w+(grp.length>1&&w>10?5*(type=="Group"?1:4):0),height:h+(grp.length>1&&h>10?5*(type=="Group"?1:4):0),group:ids,hideLabel:true,hideTooltip:htt,type:"Group",color:col,outline:out,shape:type=="Group"?"rectangle":"roundrect",zorder:ord[0]};order[id]=cntn--;nodes[id]=ob;sord.push(id)};var createNodeFromPoint=function(p,id){var ob={id:id,x:Math.round(p.x*10)/10,y:Math.round(p.y*10)/10,width:p.width?Math.round(p.width):1,height:p.height?Math.round(p.height):1,hideLabel:p.show?false:true,hideTooltip:!htt?false:p.show?false:true,eventless:p.show?false:true,type:p.type||"Anchor",color:p.color||"rgba(0,0,0,0)",outline:p.outline||"rgba(0,0,0,0)",shape:p.shape||"circle",label:p.label||"",labelSize:p.labelSize||8,zorder:p.zorder||0};order[id]=cntp++;nodes[id]=ob;sord.push(id)};var getDirection=function(s){switch(s){case"r":case"l":return"rl";case"b":case"t":case"c":return"tb"}};var getSide=function(p,n){if(parseInt(p.relx)==1){return"r"}else{if(parseInt(p.relx)==-1){return"l"}else{if(parseInt(p.rely)==1){return"b"}else{if(parseInt(p.rely)==-1){return"t"}else{if(Math.abs(p.relx)>Math.abs(p.rely)){if(parseFloat(p.relx)>0){return"r"}else{return"l"}}else{if(parseFloat(p.rely)>0){return"b"}else{if(parseFloat(p.rely)<0){return"t"}else{if(n){if(parseFloat(n.x)<parseFloat(p.x)){return"l"}else{if(parseFloat(n.x)>parseFloat(p.x)){return"r"}else{if(parseFloat(n.y)<parseFloat(p.y)){return"t"}else{if(parseFloat(n.y)>parseFloat(p.y)){return"b"}else{return"c"}}}}}else{return"c"}}}}}}}}};var getNumberOfLines=function(e,n){var findExtra=function(sd,p1,p2){switch(sd){case"r":if(parseFloat(p1.x)>=parseFloat(p2.x)){return 2}break;case"l":if(parseFloat(p1.x)<=parseFloat(p2.x)){return 2}break;case"t":case"c":if(parseFloat(p1.y)<=parseFloat(p2.y)){return 2}break;case"b":if(parseFloat(p1.y)>=parseFloat(p2.y)){return 2}break}return 0};var s=e[0];var t=e[n];var ss=getSide(s,e[1]);var ts=getSide(t);var ls=2;if(getDirection(ss)==getDirection(ts)){ls++}if(ss!=ts){ls+=findExtra(ss,s,t);ls+=findExtra(ts,t,s)}return ls};var getPoint=function(s,a,f){if(f){switch(s){case"r":return[a[0]+20,a[1]];case"l":return[a[0]-20,a[1]];case"t":case"c":return[a[0],a[1]-20];case"b":return[a[0],a[1]+20]}}else{switch(s){case"r":case"l":return[a[0][0],a[1][1]];case"t":case"b":case"c":return[a[1][0],a[0][1]]}}};var getCoords=function(d,a){var r=[a[0]];var l=a[0];for(var i=1;i<a.length;i++){var c=a[i];switch(d){case"rl":r.push([c[0],l[1]]);break;case"tb":r.push([l[0],c[1]]);break}l=r[i];d=d=="rl"?"tb":"rl"}r.push(a[a.length-1]);return r};var to2DArray=function(edg){var ps=edg.point;var a=[];for(var i=0;i<ps.length;i++){a.push([Math.round(ps[i].x*10)/10,Math.round(ps[i].y*10)/10])}return a};var getElbowPoints=function(edg){var ps=edg.point;var n1=ps.length-1;var ls=getNumberOfLines(ps,n1);var s=getSide(ps[0],ps[1]);var t=getSide(ps[n1]);var d=getDirection(s);var a=to2DArray(edg);if(ls==ps.length){a=getCoords(d,a)}else{if(ps.length==2){a.splice(1,0,getPoint(s,a[0],true));if(ls>3){if(ls>3){a.splice(2,0,getPoint(t,a[2],true))}if(ls>4&&ls==5){a.splice(2,0,[a[2][0],a[0][1]]);a.splice(3,1);a.splice(1,1)}else{if(ls>4){a.splice(3,0,[(a[1][0]+a[2][0])/2,(a[1][1]+a[2][1])/2]);if(ls>5){a=to2DArray(edg);a=getCoords(d,a)}}else{a.splice(2,0,getPoint(s,[a[1],a[2]]))}}}else{if((a[0][0]==a[1][0]&&a[1][0]==a[2][0])||(a[0][1]==a[1][1]&&a[1][1]==a[2][1])){a.splice(1,1)}else{a.splice(2,0,getPoint(s,[a[1],a[2]]))}}}else{if(ps.length>ls){a=getCoords(d,a)}else{for(var i=0;i<n1;i++){var j=i*2;if(d=="tb"){d="rl";a.splice(j+1,0,[a[j][0],a[j+1][1]])}else{d="tb";a.splice(j+1,0,[a[j+1][0],a[j][1]])}}}}}var b=[[a[0][0],a[0][1]]];for(var i=1;i<a.length;i++){if(a[i][0]==a[i-1][0]&&a[i][1]==a[i-1][1]){continue}b.push([a[i][0],a[i][1]])}return b};var getBezierPoints=function(edg,sn,tn){var ps=edg.point;var n1=ps.length-1;var s=getSide(ps[0],ps[1]);var t=getSide(ps[n1]);var ds=getDirection(s);var dt=getDirection(t);var ar=to2DArray(edg);var segs=[];var p0,p1,mx,my;if(n1==1){p0=ar[0];p1=ar[1];if(sn&&tn){if(ds==dt){mx=(p0[0]+p1[0])/2;my=(p0[1]+p1[1])/2;if(ds=="tb"){if(t=="t"){if(my>tn.y-tn.height){my-=tn.height}}else{if(t=="b"){if(my<tn.y+tn.height){my+=tn.height}}}segs.push([p0[0],p0[1],p0[0],my,mx,my]);segs.push([mx,my,p1[0],my,p1[0],p1[1]])}else{if(t=="l"){if(mx>tn.x-tn.width){mx-=tn.width*0.5}}else{if(t=="r"){if(mx<tn.x+tn.width){mx+=tn.width*0.5}}}segs.push([p0[0],p0[1],mx,p0[1],mx,my]);segs.push([mx,my,mx,p1[1],p1[0],p1[1]])}}else{if(s=="t"||s=="b"){mx=t=="l"?-tn.width*0.5:t=="r"?tn.width*0.5:-tn.width*0.5;my=(p1[1]-p0[1])/3;if((t=="l"&&p0[0]>tn.x-tn.width)||(t=="r"&&p0[0]<tn.x+tn.width)){segs.push([p0[0],p0[1],p0[0],p0[1]+my,p1[0],p0[1]+my]);segs.push([p1[0],p0[1]+my,p1[0]+mx,p0[1]+my,p1[0]+mx,p0[1]+my+my]);segs.push([p1[0]+mx,p0[1]+my+my,p1[0]+mx,p1[1],p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p0[0],p1[1],p1[0],p1[1]])}}else{mx=(p1[0]-p0[0])/3;my=t=="t"?-tn.height:t=="b"?tn.height:-tn.height;if((t=="t"&&p0[1]>tn.y-tn.height)||(t=="b"&&p0[1]<tn.y+tn.height)){segs.push([p0[0],p0[1],p0[0]+mx,p0[1],p0[0]+mx,p1[1]]);segs.push([p0[0]+mx,p1[1],p0[0]+mx,p1[1]+my,p0[0]+mx+mx,p1[1]+my]);segs.push([p0[0]+mx+mx,p1[1]+my,p1[0],p1[1]+my,p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p1[0],p0[1],p1[0],p1[1]])}}}}}else{p0=ar[0];if(s=="t"||s=="b"){for(var i=1;i<n1;i++){p1=ar[i];if(i%2){segs.push([p0[0],p0[1],p0[0],p1[1],p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p1[0],p0[1],p1[0],p1[1]])}p0=p1}p1=ar[n1];if(n1%2){segs.push([p0[0],p0[1],p0[0],p1[1],p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p1[0],p0[1],p1[0],p1[1]])}}else{for(var i=1;i<n1;i++){p1=ar[i];if(i%2){segs.push([p0[0],p0[1],p1[0],p0[1],p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p0[0],p1[1],p1[0],p1[1]])}p0=p1}p1=ar[n1];if(n1%2){segs.push([p0[0],p0[1],p1[0],p0[1],p1[0],p1[1]])}else{segs.push([p0[0],p0[1],p0[0],p1[1],p1[0],p1[1]])}}}return segs};var getStatePosition=function(n,s){var x=parseFloat(s.relx);var y=parseFloat(s.rely);var w=n.width/2;var h=n.height/2;return[n.x+(x*w),n.y+(y*h)]};var XMLToJSON=function(xml,json,p,parent){var j={};var prefix=new RegExp(/(?!xmlns)^.*:/);var trim=new RegExp(/^\s+|\s+$/g);if(!json){json={}}if(p&&(p=="point"||p=="anchor")&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){for(var i=0;i<xml.attributes.length;i++){var a=xml.attributes.item(i);var n=a.name.replace(prefix,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();if(p&&(p=="point"||p=="anchor")){j[n]=a.value.replace(trim,"")}else{json[n]=a.value.replace(trim,"")}}if(p&&(p=="point"||p=="anchor")){json[p].push(j)}}if(xml.hasChildNodes()&&!parent){for(var i=0;i<xml.childNodes.length;i++){var n=xml.childNodes.item(i);var p;if(n.nodeType==4){}else{if(n.nodeType==3){}else{if(n.nodeType==1){p=n.nodeName.replace(prefix,"").toLowerCase();XMLToJSON(n,json,p)}}}}}return json};var isValidShape=function(s){var shapes=["circle","sphere","box","rect","rectangle","rect2","rect3","roundrect","brace","square","triangle","triangle2","equilateral","equilateral2","star","diamond","rhombus","pentagon","hexagon","octagon"];shapes=shapes.concat(["oval","oval2","oval3","ovald","arc","arc2","arc3","arch","path","polygon","roundpolygon","spline","hull","violin","confidence","bezier","ellipse","ellipse2","ellipse2","plus","minus"]);shapes=shapes.concat(["pie","pie0","pie1","pie2","pie3","pie4","pie5","pie6","pie7","pie8","pie9","pacman","pacman2","mdavid","image"]);shapes=shapes.concat(["pch0","pch1","pch2","pch3","pch4","pch5","pch6","pch7","pch8","pch9","pch10","pch11","pch12","pch13","pch14","pch15","pch16","pch17","pch18","pch19","pch20","pch21","pch22","pch23","pch24","pch25"]);for(var i=0;i<shapes.length;i++){if(shapes[i]==s){return true}}return false};var hexToRgb=function(h){var hexToR=function(){return parseInt(h.substring(0,2),16)};var hexToG=function(){return parseInt(h.substring(2,4),16)};var hexToB=function(){return parseInt(h.substring(4,6),16)};h=h.charAt(0)=="#"?h.substring(1,7):h;return"rgb("+hexToR()+","+hexToG()+","+hexToB()+")"};var validateColor=function(c){c=c.toString();c=c.replace(/\s/g,"");var rgb=(/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/).exec(c);var rgba=(/rgba\((\d{1,3}),(\d{1,3}),(\d{1,3}),([0-9\.]+)\)/).exec(c);var hex=(/^#?([0-9abcdef]{6})/i).exec(c);var hex2=(/^([0-9abcdef]{6})/i).exec(c);if(CanvasXpress.colorNames.hasOwnProperty(c)){c=hexToRgb(CanvasXpress.colorNames[c])}else{if(rgb!=null){c=rgb[0]}else{if(rgba!=null){c=rgba[0]}else{if(hex!=null){c=hexToRgb(hex[0])}else{if(hex2!=null){c=hexToRgb("#"+hex2[0])}else{c=false}}}}}return c};if(pw.tagName.toLowerCase()=="pathway"){var ob=XMLToJSON(pw,false,false,true);title=ob.name;subtitle=ob.organism;for(var i=0;i<pw.childNodes.length;i++){var el=pw.childNodes[i];if(el.nodeName){var nn=el.nodeName.toLowerCase();switch(nn){case"comment":break;case"graphics":break;case"state":var ob=XMLToJSON(el);ob.nodeName=nn;state[ob.graphid]=ob;break;case"datanode":case"label":case"shape":var ob=XMLToJSON(el);ob.nodeName=nn;if(ob.database&&ob.id){ob.database+=" : "+ob.id}if(ob.graphid){ob.id=ob.graphid}if(ob.zorder){if(nn=="label"){ob.zorder=parseInt(ob.zorder)+100}}if(ob.centerx){ob.x=Math.round(ob.centerx*10)/10;delete (ob.centerx)}if(ob.centery){ob.y=Math.round(ob.centery*10)/10;delete (ob.centery)}if(ob.width){ob.width=parseInt(ob.width)}if(ob.height){ob.height=parseInt(ob.height)}if(ob.rotation){ob.rotate=(parseFloat(ob.rotation)*180/Math.PI)}if(ob.textlabel){ob.label=ob.textlabel}if(ob.fontsize){ob.labelSize=parseInt(ob.fontsize)}if(ob.fontweight){ob.labelStyle=ob.fontweight.toLowerCase()}if(ob.fontstyle){if(ob.fontweight){ob.labelStyle=ob.fontweight.toLowerCase()+" "+ob.fontstyle.toLowerCase()}else{ob.labelStyle=ob.fontstyle.toLowerCase()}}ob.labelColor=ob.textcolor?validateColor(ob.textcolor):ob.color?validateColor(ob.color):"rgb(0,0,0)";if(ob.align){if(ob.align=="Left"){ob.labelPosition="left"}else{if(ob.align=="Right"){ob.labelPosition="right"}}}if(ob.valign){if(ob.valign=="Bottom"){ob.labelPosition="bottom"}else{if(ob.valign=="Top"){ob.labelPosition="top"}}}if(ob.shapetype){if(ob.shapetype=="RoundedRectangle"){ob.shapetype=ob.value&&ob.value=="Double"?"roundrectd":"roundrect"}if(ob.shapetype=="Arc"){ob.shapetype="arc3"}if(ob.shapetype=="Mitochondria"){ob.shapetype="image";ob.imagePath="https://www.canvasxpress.org/assets/images/mit.png"}if(ob.shape=="oval"&&ob.value&&ob.value=="Double"){ob.shapetype="ovald"}if(ob.shapetype=="None"){ob.shapetype="rectangle"}if(isValidShape(ob.shapetype.toLowerCase())){ob.shape=ob.shapetype.toLowerCase()}else{wrn+=ob.id+" has an unkown shape: "+ob.shapetype+"\n";ob.shape=ob.shapetype}}if(!ob.shape){ob.shape="rectangle"}if(ob.color){ob.outlinecolor=validateColor(ob.color)}if(ob.fillcolor){ob.color=validateColor(ob.fillcolor)}else{ob.color=nn=="datanode"?"rgb(255,255,255)":"rgba(0,0,0,0)"}if(ob.shapetype||nn=="datanode"){ob.outline=ob.outlinecolor||"rgb(0,0,0)"}else{ob.outline=ob.outlinecolor||"rgba(0,0,0,0)"}if(nn=="label"){if(!ob.label||ob.label==""){ob.hideLabel=true;ob.hideTooltip=htt;ob.eventless=true}ob.color=ob.fillcolor&&ob.color!="rgb(255,255,255)"?ob.color:"rgba(0,0,0,0)";ob.outline=ob.shapetype?"rgb(0,0,0)":"rgba(0,0,0,0)"}else{if(nn=="shape"&&(!ob.label||ob.label=="")){ob.hideLabel=true;ob.hideTooltip=htt;ob.outline=ob.outlinecolor?ob.outlinecolor:ob.shapetype?"rgb(0,0,0)":"rgba(0,0,0,0)"}}if(ob.groupref){if(!groupRef.hasOwnProperty(ob.groupref)){groupRef[ob.groupref]=[]}groupRef[ob.groupref].push([ob.id,ob.x,ob.y,ob.width,ob.height]);ob.parentNode=ob.groupref}order[ob.id]=cntp++;nodes[ob.id]=ob;sord.push(ob.id);break;case"graphicalline":case"interaction":var ob=XMLToJSON(el);ob.nodeName=nn;if(ob.anchor){for(var j=0;j<ob.anchor.length;j++){anchors[ob.anchor[j].graphid]=true}delete (ob.anchor)}var n1=ob.point.length-1;if(ob.point[0].graphref&&ob.point[n1].graphref){ob.id1=ob.point[0].graphref;ob.id2=ob.point[n1].graphref}if(ob.color){ob.color=validateColor(ob.color)}var type="solid";if(ob.linestyle&&ob.linestyle=="Broken"){type="dashed"}if(ob.connectortype&&ob.connectortype=="Curved"){type+="Bezier"}ob.type=type;if(ob.point[0].arrowhead){if(arrowTypes[ob.point[0].arrowhead]){ob.startArrow=arrowTypes[ob.point[0].arrowhead]}}if(ob.point[n1].arrowhead){if(arrowTypes[ob.point[n1].arrowhead]){ob.endArrow=arrowTypes[ob.point[n1].arrowhead]}}if(ob.linethickness){ob.width=parseInt(ob.linethickness*10)/10;delete (ob.linethickness)}if(ob.point[0].relx&&ob.point[0].rely){ob.startX=parseFloat(ob.point[0].relx);ob.startY=parseFloat(ob.point[0].rely)}if(ob.point[n1].relx&&ob.point[n1].rely){ob.endX=parseFloat(ob.point[n1].relx);ob.endY=parseFloat(ob.point[n1].rely)}delete (ob.id);edges.push(ob);break;case"group":var ob=XMLToJSON(el);ob.nodeName=nn;if(ob.groupref&&ob.groupid){if(!groups.hasOwnProperty(ob.groupref)){groups[ob.groupref]=[]}groups[ob.groupref].push(ob.groupid);groupGref[ob.graphid]=ob.groupref}else{groupId[ob.graphid]=ob.groupid;groupStyl[ob.groupid]=ob.style}break;case"infobox":break;case"legend":break;case"biopax":break}}}}else{alert("Ooops! Not a gpml file!")}for(var s in state){var g=state[s].graphref;if(nodes[g]){var c=getStatePosition(nodes[g],state[s]);var p={id:g,x:c[0],y:c[1],width:state[s].width,height:state[s].height,label:state[s].textlabel==""?" ":state[s].textlabel,labelSize:ob.fontsize?parseInt(ob.fontsize):10,type:"State",color:state[s].textlabel==""||!state[s].fillcolor?"rgb(255,255,255)":validateColor(state[s].fillcolor),outline:"rgb(0,0,0)",shape:"oval",show:true};createNodeFromPoint(p,s)}}for(var g in groupRef){createNodeFromGroup(groupRef[g],g,groupStyl[g])}for(var g in groups){if(groupRef.hasOwnProperty(g)){for(var i=0;i<groups[g].length;i++){var ob=nodes[groups[g][i]];groupRef[g].push([ob.id,ob.x,ob.y,ob.width,ob.height])}createNodeFromGroup(groupRef[g],g,"Group")}}var edgs=[];var fail=[];for(var i=0;i<edges.length;i++){var ob=edges[i];var n1=ob.point.length-1;if(!ob.point[0].graphref&&!ob.point[n1].graphref){ob.exact=true}for(var j=0;j<ob.point.length;j++){var pt=ob.point[j];if(pt.graphref){if(!nodes.hasOwnProperty(pt.graphref)){if(j==0){if(groupId[pt.graphref]){ob.id1=groupId[pt.graphref]}else{createNodeFromPoint(pt,pt.graphref);ob.hideTooltip=htt;ob.exactStart=anchors[pt.graphref]?true:false;ob.id1=pt.graphref}}else{if(j==ob.point.length-1){if(groupId[pt.graphref]){ob.id2=groupId[pt.graphref]}else{createNodeFromPoint(pt,pt.graphref);ob.hideTooltip=htt;ob.exactEnd=anchors[pt.graphref]?true:false;ob.id2=pt.graphref}}}}}else{if(j==0||j==ob.point.length-1){var id=j==0?ob.graphid+".1":ob.graphid+".2";var ni=j==0?ob.point.length-1:0;createNodeFromPoint(pt,id);if(j==0){ob.id1=id;ob.exactStart=true}else{ob.id2=id;ob.exactEnd=true}ob.hideTooltip=htt;if(ob.point[ni].graphref){if(!nodes.hasOwnProperty(ob.point[ni].graphref)&&groupId[ob.point[ni].graphref]){if(j==0){ob.id2=groupId[ob.point[ni].graphref]}else{ob.id1=groupId[ob.point[ni].graphref]}}else{if(j==0){ob.id2=ob.point[ni].graphref}else{ob.id1=ob.point[ni].graphref}}}}}}if(ob.connectortype){if(ob.connectortype=="Elbow"){ob.elbows=getElbowPoints(ob)}else{if(ob.connectortype=="Curved"){ob.elbows=getBezierPoints(ob,nodes[ob.id1],nodes[ob.id2])}else{if(ob.connectortype=="Segmented"){ob.elbows=to2DArray(ob)}}}}if(nodes[ob.id1]&&nodes[ob.id2]){edgs.push(ob)}else{fail.push(ob)}}sord=sord.sort(function(a,b){if(nodes[a].zorder&&nodes[b].zorder){if(parseInt(nodes[a].zorder)-parseInt(nodes[b].zorder)==0){return order[a]-order[b]}else{return parseInt(nodes[a].zorder)-parseInt(nodes[b].zorder)}}else{return order[a]-order[b]}});var nods=[];for(var i=0;i<sord.length;i++){nods.push(nodes[sord[i]])}var res="Number of Nodes: "+nods.length+"\n";res+="Number of Edges: "+edgs.length+"\n";if(fail.length>0){res+="Number of Failed Edges: "+fail.length+"\n";for(var i=0;i<fail.length;i++){res+="\t"+(i+1)+". "+fail[i].graphid+"\n"}}if(wrn!="\nWarnings:\n"){res+=wrn}res=res.replace(/\n/g,"<br>");var data={data:{nodes:nods,edges:edgs},config:{adjustBezier:false,graphType:"Network",calculateLayout:false,showAnimation:false,networkNodesOnTop:true,arrowHeadType:"filledStraight",roundedPolygonRadius:10,disableTooltipCallout:true,showNodeNameThreshold:20000,networkFreeze:false,preScaleNetwork:false,title:title,networkVendor:"Wikipathways"},renderTo:target,events:events,afterRender:[["flashInfoSpan",[100,100,res,5000]],["appendNetworkDataFromURL",[]]]};if(config){for(var p in config){data.config[p]=config[p]}}return data};this.keggToCX=function(xml,target,config,events,callback){var XMLToJSON=function(xml,json,p,current){json=json||{};if(p&&!json[p]){json[p]=[]}if(xml.attributes&&xml.attributes.length>0){var j={};for(var i=0;i<xml.attributes.length;i++){var attr=xml.attributes.item(i);var attrName=attr.name.replace(/(?!xmlns)^.*:/,"").replace(/\[/g,"&#91").replace(/\]/g,"&#93").toLowerCase();var attrVal=attr.value.trim();if(p){j[attrName]=attrVal}else{json[attrName]=attrVal}}if(p){json[p].push(j)}}else{if(p==="alt"){json[p].push(xml.textContent.replace(/\"/g,"'").replace(/\[/g,"&#91").replace(/\]/g,"&#93"))}}if(xml.hasChildNodes()&&!current){for(var k=0;k<xml.childNodes.length;k++){var childNode=xml.childNodes.item(k);if(childNode.nodeType===1){var childName=childNode.nodeName.replace(/(?!xmlns)^.*:/,"").toLowerCase();XMLToJSON(childNode,json,childName)}}}return json};var pw=xml.childNodes[2]||xml.childNodes[1];var nodes=[];var edges=[];var title,image,link,width,height;var addAnchors=function(){nodes.push({id:"__zero__",type:"anchor",shape:"circle",color:"rgba(0,0,0,0)",outline:"rgb(0,0,0)",width:1,height:1,x:0,y:0,hideLabel:true},{id:"__max__",type:"anchor",shape:"circle",color:"rgba(0,0,0,0)",outline:"rgb(0,0,0)",width:1,height:1,x:width,y:height,hideLabel:true})};var getAngle=function(x0,y0,x1,y1){var a=(Math.atan2(y1-y0,x1-x0)*180/Math.PI)%360;var min=0;while(a<min){a+=360}while(a>=(min+360)){a-=360}return a};var mean=function(arr){var mean=0;var n=0;for(var i=0;i<arr.length;i++){if(!isNaN(arr[i])){mean+=Number(arr[i]);n++}}if(n>0){mean/=n}return mean};if(pw.tagName.toLowerCase()=="pathway"){var ob=XMLToJSON(pw,false,false,true);title=ob.title;image=ob.image;link=ob.link;var img=new Image();img.onload=function(){width=this.width;height=this.height;var res="Number of Nodes: "+nodes.length+"\n";res+="Number of Edges: "+edges.length+"\n";addAnchors();var data={data:{nodes:nodes,edges:edges},config:{adjustBezier:false,graphType:"Network",calculateLayout:false,showAnimation:false,networkNodesOnTop:false,networkFreeze:false,showNodeNameThreshold:20000,preScaleNetwork:false,title:title,backgroundType:"image",backgroundImage:image,networkVendor:"Kegg"},renderTo:target,events:events,afterRender:[["flashInfoSpan",[100,100,res,5000]],["appendNetworkDataFromURL",[]]]};if(config){for(var p in config){data.config[p]=config[p]}}return callback(data)};if((CanvasXpress.system.isR&&!CanvasXpress.system.isInIframe)||!CanvasXpress.system.isR||!CanvasXpress.system.isJupyter){img.crossOrigin="anonymous"}img.src=ob.image;for(var i=0;i<pw.childNodes.length;i++){var el=pw.childNodes[i];if(el.nodeName){var nn=el.nodeName.toLowerCase();switch(nn){case"entry":var ob=XMLToJSON(el);if(ob.graphics[0].type=="roundrectangle"){ob.graphics[0].type="roundrect";ob.graphics[0].fgcolor="rgba(0,0,0,0)"}if(ob.graphics&&ob.graphics.length==1&&ob.graphics[0].type!="line"){var ext=ob.type=="group"?5:0;var node={id:ob.id,type:ob.type,link:ob.link,name:ob.graphics[0].name,shape:ob.graphics[0].type,color:"rgba(0,0,0,0)",outline:ob.graphics[0].fgcolor||"rgb(0,0,0)",width:parseInt(ob.graphics[0].width)+ext,height:parseInt(ob.graphics[0].height)+ext,x:parseInt(ob.graphics[0].x),y:parseInt(ob.graphics[0].y),hideLabel:true,fixed:true};if(ob.type=="group"){nodes.unshift(node)}else{nodes.push(node)}}else{if(ob.graphics&&ob.graphics.length==1&&ob.graphics[0].type=="line"){var coords=ob.graphics[0].coords.split(",");if(coords.length==4){var x=[];var y=[];var w,h,r;while(coords.length>1){x.push(parseInt(coords.shift()));y.push(parseInt(coords.shift()))}var mx=parseInt(mean(x));var my=parseInt(mean(y));if(x[0]==x[1]){mx+=1;w=2;h=y[1]-y[0];r=0}else{if(y[0]==y[1]){my+=1;w=x[1]-x[0];h=2;r=0}else{h=Math.sqrt(Math.pow(x[1]-x[0],2)+Math.pow(y[1]-0[0],2));w=2;r=getAngle(x[0],y[0],x[1],y[1])}}var node={id:ob.id,type:ob.type,link:ob.link,name:ob.graphics[0].name,shape:"rect",color:"rgba(0,0,0,0)",outline:"rgba(0,0,0,0)",x:mx,y:my,width:w,height:h,rotate:r,hideLabel:true,fixed:true};nodes.push(node)}}}break;case"relation":case"reaction":var ob=XMLToJSON(el);ob.id1=JSON.parse(JSON.stringify(ob.entry1));ob.id2=JSON.parse(JSON.stringify(ob.entry2));delete (ob.entry1);delete (ob.entry2);ob.color="rgba(0,0,0,0)";edges.push(ob);break}}}}else{alert("Ooops! Not a kgml file!")}};this.HTMLTableToCX=function(table,config){var ar=[];for(var i=0;i<table.rows.length;i++){var ln=[];for(var j=0;j<table.rows.item(i).cells.length;j++){ln.push(table.rows.item(i).cells.item(j).innerHTML)}ar.push(ln)}var cx=this.arrayToCX(ar,config);CanvasXpress.transferDatasetAttributes(table,cx.config,true);return cx};this.HvT=function(dataArray){if(!dataArray||dataArray.length<1){return[]}var headers=dataArray[0];var results={};for(var i=0;i<headers.length;i++){var header=headers[i];results[header]={type:null,min:Infinity,max:-Infinity,uniqueMap:{},levels:[]}}for(var r=1;r<dataArray.length;r++){var row=dataArray[r];for(var c=0;c<headers.length;c++){var value=row[c];var columnInfo=results[headers[c]];var isNumeric=typeof value==="number"&&!isNaN(value);if(isNumeric){columnInfo.type="numeric";if(value<columnInfo.min){columnInfo.min=value}if(value>columnInfo.max){columnInfo.max=value}}else{columnInfo.type="categorical";if(!columnInfo.uniqueMap.hasOwnProperty(value)){columnInfo.uniqueMap[value]=true;columnInfo.levels.push(value)}}}}var finalOutput=[];for(var j=1;j<headers.length;j++){var colName=headers[j];var info=results[colName];if(info.type==="numeric"){finalOutput.push({name:colName,type:"numeric",min:info.min,max:info.max,levels:[]})}else{finalOutput.push({name:colName,type:"categorical",min:null,max:null,levels:info.levels})}}return finalOutput};this.bZH=function(data){var ar=[];var copy=function(obj){return JSON.parse(JSON.stringify(obj))};if(!data){data=this.data}if(this.OOg()&&!data.x){var z=data.z?Object.keys(data.z):[];var cols=copy(data.y.smps).concat(z);var n=data.y.smps.length;for(var i=0;i<data.y.smps.length;i++){for(var j=0;j<data.y.vars.length;j++){if(!ar[j]){ar[j]=[]}if(this.xAxisTime&&this.xAxis.includes(data.y.smps[i])){var d=new Date(data.y.data[j][i]);d=d.setDate(d.getDate()+1);ar[j][i]=this.dateFormat(d,this.timeFormat)}else{if(this.yAxisTime&&this.yAxis.includes(data.y.smps[i])){var d=new Date(data.y.data[j][i]);d=d.setDate(d.getDate()+1);ar[j][i]=this.dateFormat(d,this.timeFormat)}else{ar[j][i]=data.y.data[j][i]}}}}for(var i=0;i<z.length;i++){for(var j=0;j<data.y.vars.length;j++){ar[j][n+i]=data.z[z[i]][j]}}for(var i=0;i<data.y.vars.length;i++){ar[i].unshift(data.y.vars[i])}cols.unshift("");ar.unshift(cols)}else{if(this.CgJ()||(this.OOg()&&data.x)){var x=data.x?Object.keys(data.x):[];var cols=copy(data.y.vars).concat(x);var n=data.y.vars.length;for(var i=0;i<data.y.vars.length;i++){for(var j=0;j<data.y.smps.length;j++){if(!ar[j]){ar[j]=[]}ar[j][i]=data.y.data[i][j]}}for(var i=0;i<x.length;i++){for(var j=0;j<data.y.smps.length;j++){ar[j][n+i]=data.x[x[i]][j]}}for(var i=0;i<data.y.smps.length;i++){ar[i].unshift(data.y.smps[i])}cols.unshift("");ar.unshift(cols)}else{return false}}ar[0][0]="Id";if(ar[0].indexOf("__FACTOR__")>-1){for(var i=0;i<ar.length;i++){ar[i].splice(ar[i].indexOf("__FACTOR__"),1)}}return ar};this.XzC=function(){var o=[];if(this.graphType.match(/Scatter|Circular/)){for(var i=0;i<this.data.y.smps.length;i++){o.push({name:this.data.y.smps[i],type:"numeric",min:this.meta.data.y.range[this.data.y.smps[i]].min,max:this.meta.data.y.range[this.data.y.smps[i]].max,levels:[]})}if(this.data.z){for(var i in this.data.z){var type=this.meta.data.z[i].type=="Numeric"?"numeric":"categorical";o.push({name:i,type:type,min:type=="numeric"?this.meta.data.z[i].rmin:undefined,max:type=="numeric"?this.meta.data.z[i].rmax:undefined,levels:type=="categorical"?this.meta.data.z[i].levels:[]})}}}else{if(this.CgJ()){for(var i=0;i<this.data.y.vars.length;i++){o.push({name:this.data.y.vars[i],type:"numeric",min:this.meta.data.y.range[this.data.y.vars[i]].min,max:this.meta.data.y.range[this.data.y.vars[i]].max,levels:[]})}if(this.data.x){for(var i in this.data.x){var type=this.meta.data.x[i].type=="Numeric"?"numeric":"categorical";o.push({name:i,type:this.meta.data.x[i].type=="Numeric"?"numeric":"categorical",min:this.meta.data.x[i].type=="Numeric"?this.meta.data.x[i].rmin:undefined,max:this.meta.data.x[i].type=="Numeric"?this.meta.data.x[i].rmax:undefined,levels:type=="categorical"?this.meta.data.x[i].levels:[]})}}}}return o};this.H8L=function(){var copy=function(obj){return JSON.parse(JSON.stringify(obj))};var o=[];if(this.graphType.match(/Scatter|Circular/)){var z=this.data.z?Object.keys(this.data.z):[];if(this.data.y.smps){o=copy(this.data.y.smps).concat(z)}else{o=z}}else{if(this.CgJ()){var x=this.data.x?Object.keys(this.data.x):[];if(this.data.y.vars){o=copy(this.data.y.vars).concat(x)}else{o=x}}}return o};this.oC8=function(){var copy=function(obj){return JSON.parse(JSON.stringify(obj))};var z=this.data.z?Object.keys(this.data.z):[];if(this.data.y.smps){z=copy(this.data.y.smps).concat(z)}var x=this.data.x?Object.keys(this.data.x):[];if(this.data.y.vars){x=copy(this.data.y.vars).concat(x)}if(this.graphType.match(/Scatter|Circular/)){return{header:z,rows:x,type:"longAndSkinny"}}else{if(this.CgJ()){return{header:x,rows:z,type:"wideAndShort"}}else{return{header:[],rows:[],type:"unknown"}}}};this.bYm=function(prompt){prompt=prompt.toLowerCase();if(prompt.match(/(density|distribution|hexplot|histogram|kaplan\s*meier|qq|quantile|ridge\s*line|scatter|spaghetti|stream\*graph|time\s*series|volcano)/i)){return"longAndSkinny"}else{if(prompt.match(/(alluvial|area|bar|boxplot|bullet|cleveland|dot|dumb\s*bell|gantt|heatmap|line|lollipop|map|meter|parallel|pareto|pie|sankey|stacked|violin|waterfall|wordcloud)/i)){return"wideAndShort"}else{return"unknown"}}};this.go7=function(prompt){var dimnames=this.oC8();var guessRequestedGraphType=this.bYm(prompt);var hd=[];var rs=[];var hl=dimnames.header.length>50?50:dimnames.header.length;var rl=dimnames.rows.length>50?50:dimnames.rows.length;var res;for(var i=0;i<hl;i++){if(prompt.match(new RegExp("\\b"+dimnames.header[i]+"\\b"))){hd.push(dimnames.header[i])}}for(var i=0;i<rl;i++){if(prompt.match(new RegExp("\\b"+dimnames.rows[i]+"\\b"))){rs.push(dimnames.rows[i])}}if(hd.length==0&&rs.length==0){res=dimnames.header}else{if(hd.length>rs.length){if(dimnames.type!=guessRequestedGraphType&&dimnames.type!="unknown"){this.c2i(false,true)}res=hl>50?dimnames.header.slice(0,50):dimnames.header}else{if(dimnames.type=="wideAndShort"&&guessRequestedGraphType=="longAndSkinny"){this.c2i(false,true)}res=rl>50?dimnames.rows.slice(0,50):dimnames.rows}}var factorIndex=res.indexOf("__FACTOR__");if(factorIndex!==-1){res.splice(factorIndex,1)}res.unshift("Id");return res};this.Sy9=function(header){var ar=[];for(var i=0;i<header.length;i++){var col=header[i];if(col==="__FACTOR__"){continue}if(this.data.y&&(this.data.y.smps.includes(col)||this.data.y.vars.includes(col))){ar.push({name:col,type:"numeric"})}else{if(this.data.x&&this.data.x[col]){var type=this.meta.data.x[col].type=="Numeric"?"numeric":"factor";ar.push({name:col,type:type})}else{if(this.data.z&&this.data.z[col]){var type=this.meta.data.z[col].type=="Numeric"?"numeric":"factor";ar.push({name:col,type:type})}else{ar.push({name:col,type:"string"})}}}}return ar};this.zVT=function(){var copy=function(obj){return JSON.parse(JSON.stringify(obj))};if(this.graphType.match(/Scatter|Circular/)){var x=this.data.x?Object.keys(this.data.x):[];if(this.data.y.vars){return[copy(this.data.y.vars).concat(x)]}else{return[x]}}else{if(this.CgJ()){var z=this.data.z?Object.keys(this.data.z):[];if(this.data.y.smps){return[copy(this.data.y.smps).concat(z)]}else{return[z]}}}};this.WLt=function(e,r){function getParquetDecompressors(){var decompressorZstd=function(dat){var ab=ArrayBuffer,u8=Uint8Array,u16=Uint16Array,i16=Int16Array,u32=Uint32Array,i32=Int32Array;var slc=function(v,s,e){if(u8.prototype.slice){return u8.prototype.slice.call(v,s,e)}if(s==null||s<0){s=0}if(e==null||e>v.length){e=v.length}var n=new u8(e-s);n.set(v.subarray(s,e));return n};var fill=function(v,n,s,e){if(u8.prototype.fill){return u8.prototype.fill.call(v,n,s,e)}if(s==null||s<0){s=0}if(e==null||e>v.length){e=v.length}while(s<e){v[s]=n;++s}return v};var cpw=function(v,t,s,e){if(u8.prototype.copyWithin){return u8.prototype.copyWithin.call(v,t,s,e)}if(s==null||s<0){s=0}if(e==null||e>v.length){e=v.length}while(s<e){v[t++]=v[s++]}};var ec=["invalid zstd data","window size too large (>2046MB)","invalid block type","FSE accuracy too high","match distance too far back","unexpected EOF"];var err=function(ind,msg,nt){var e=new Error(msg||ec[ind]);e.code=ind;if(Error.captureStackTrace){Error.captureStackTrace(e,err)}if(!nt){throw e}return e};var rb=function(d,b,n){var i=0,o=0;while(i<n){o|=d[b++]<<(i<<3);++i}return o};var b4=function(d,b){return(d[b]|(d[b+1]<<8)|(d[b+2]<<16)|(d[b+3]<<24))>>>0};var rzfh=function(dat,w){var n3=dat[0]|(dat[1]<<8)|(dat[2]<<16);if(n3==3126568&&dat[3]==253){var flg=dat[4];var ss=(flg>>5)&1,cc=(flg>>2)&1,df=flg&3,fcf=flg>>6;if(flg&8){err(0)}var bt=6-ss;var db=df==3?4:df;var di=rb(dat,bt,db);bt+=db;var fsb=fcf?(1<<fcf):ss;var fss=rb(dat,bt,fsb)+((fcf==1)&&256);var ws=fss;if(!ss){var wb=1<<(10+(dat[5]>>3));ws=wb+(wb>>3)*(dat[5]&7)}if(ws>2145386496){err(1)}var buf=new u8((w==1?(fss||ws):w?0:ws)+12);buf[0]=1,buf[4]=4,buf[8]=8;return{b:bt+fsb,y:0,l:0,d:di,w:(w&&w!=1)?w:buf.subarray(12),e:ws,o:new i32(buf.buffer,0,3),u:fss,c:cc,m:Math.min(131072,ws)}}else{if(((n3>>4)|(dat[3]<<20))==25481893){return b4(dat,4)+8}}err(0)};var msb=function(val){var bits=0;while((1<<bits)<=val){++bits}return bits-1};var rfse=function(dat,bt,mal){var tpos=(bt<<3)+4;var al=(dat[bt]&15)+5;if(al>mal){err(3)}var sz=1<<al;var probs=sz,sym=-1,re=-1,i=-1,ht=sz;var buf=new ab(512+(sz<<2));var freq=new i16(buf,0,256);var dstate=new u16(buf,0,256);var nstate=new u16(buf,512,sz);var bb1=512+(sz<<1);var syms=new u8(buf,bb1,sz);var nbits=new u8(buf,bb1+sz);while(sym<255&&probs>0){var bits=msb(probs+1);var cbt=tpos>>3;var msk=(1<<(bits+1))-1;var val=((dat[cbt]|(dat[cbt+1]<<8)|(dat[cbt+2]<<16))>>(tpos&7))&msk;var msk1fb=(1<<bits)-1;var msv=msk-probs-1;var sval=val&msk1fb;if(sval<msv){tpos+=bits,val=sval}else{tpos+=bits+1;if(val>msk1fb){val-=msv}}freq[++sym]=--val;if(val==-1){probs+=val;syms[--ht]=sym}else{probs-=val}if(!val){do{var rbt=tpos>>3;re=((dat[rbt]|(dat[rbt+1]<<8))>>(tpos&7))&3;tpos+=2;sym+=re}while(re==3)}}if(sym>255||probs){err(0)}var sympos=0;var sstep=(sz>>1)+(sz>>3)+3;var smask=sz-1;for(var s=0;s<=sym;++s){var sf=freq[s];if(sf<1){dstate[s]=-sf;continue}for(i=0;i<sf;++i){syms[sympos]=s;do{sympos=(sympos+sstep)&smask}while(sympos>=ht)}}if(sympos){err(0)}for(i=0;i<sz;++i){var ns=dstate[syms[i]]++;var nb=nbits[i]=al-msb(ns);nstate[i]=(ns<<nb)-sz}return[(tpos+7)>>3,{b:al,s:syms,n:nbits,t:nstate}]};var rhu=function(dat,bt){var i=0,wc=-1;var buf=new u8(292),hb=dat[bt];var hw=buf.subarray(0,256);var rc=buf.subarray(256,268);var ri=new u16(buf.buffer,268);if(hb<128){var _a=rfse(dat,bt+1,6),ebt=_a[0],fdt=_a[1];bt+=hb;var epos=ebt<<3;var lb=dat[bt];if(!lb){err(0)}var st1=0,st2=0,btr1=fdt.b,btr2=btr1;var fpos=(++bt<<3)-8+msb(lb);for(;;){fpos-=btr1;if(fpos<epos){break}var cbt=fpos>>3;st1+=((dat[cbt]|(dat[cbt+1]<<8))>>(fpos&7))&((1<<btr1)-1);hw[++wc]=fdt.s[st1];fpos-=btr2;if(fpos<epos){break}cbt=fpos>>3;st2+=((dat[cbt]|(dat[cbt+1]<<8))>>(fpos&7))&((1<<btr2)-1);hw[++wc]=fdt.s[st2];btr1=fdt.n[st1];st1=fdt.t[st1];btr2=fdt.n[st2];st2=fdt.t[st2]}if(++wc>255){err(0)}}else{wc=hb-127;while(i<wc){var b=dat[++bt];hw[i]=b>>4;hw[i+1]=b&15;i+=2}++bt}var wes=0;for(i=0;i<wc;++i){var wt=hw[i];if(wt>11){err(0)}wes+=wt&&(1<<(wt-1))}var mb=msb(wes)+1;var ts=1<<mb;var rem=ts-wes;if(rem&(rem-1)){err(0)}hw[wc++]=msb(rem)+1;for(i=0;i<wc;++i){var wt=hw[i];++rc[hw[i]=wt&&(mb+1-wt)]}var hbuf=new u8(ts<<1);var syms=hbuf.subarray(0,ts),nb=hbuf.subarray(ts);ri[mb]=0;for(i=mb;i>0;--i){var pv=ri[i];fill(nb,i,pv,ri[i-1]=pv+rc[i]*(1<<(mb-i)))}if(ri[0]!=ts){err(0)}for(i=0;i<wc;++i){var bits=hw[i];if(bits){var code=ri[bits];fill(syms,i,code,ri[bits]=code+(1<<(mb-bits)))}}return[bt,{n:nb,b:mb,s:syms}]};var dllt=rfse(new u8([81,16,99,140,49,198,24,99,12,33,196,24,99,102,102,134,70,146,4]),0,6)[1];var dmlt=rfse(new u8([33,20,196,24,99,140,33,132,16,66,8,33,132,16,66,8,33,68,68,68,68,68,68,68,68,36,9]),0,6)[1];var doct=rfse(new u8([32,132,16,66,102,70,68,68,68,68,36,73,2]),0,5)[1];var b2bl=function(b,s){var len=b.length,bl=new i32(len);for(var i=0;i<len;++i){bl[i]=s;s+=1<<b[i]}return bl};var llb=new u8((new i32([0,0,0,0,16843009,50528770,134678020,202050057,269422093])).buffer,0,36);var llbl=b2bl(llb,0);var mlb=new u8((new i32([0,0,0,0,0,0,0,0,16843009,50528770,117769220,185207048,252579084,16])).buffer,0,53);var mlbl=b2bl(mlb,3);var dhu=function(dat,out,hu){var len=dat.length,ss=out.length,lb=dat[len-1],msk=(1<<hu.b)-1,eb=-hu.b;if(!lb){err(0)}var st=0,btr=hu.b,pos=(len<<3)-8+msb(lb)-btr,i=-1;while(pos>eb&&i<ss){var cbt=pos>>3;var val=(dat[cbt]|(dat[cbt+1]<<8)|(dat[cbt+2]<<16))>>(pos&7);st=((st<<btr)|val)&msk;out[++i]=hu.s[st];pos-=(btr=hu.n[st])}if(pos!=eb||i+1!=ss){err(0)}};var dhu4=function(dat,out,hu){var bt=6;var ss=out.length,sz1=(ss+3)>>2,sz2=sz1<<1,sz3=sz1+sz2;dhu(dat.subarray(bt,bt+=dat[0]|(dat[1]<<8)),out.subarray(0,sz1),hu);dhu(dat.subarray(bt,bt+=dat[2]|(dat[3]<<8)),out.subarray(sz1,sz2),hu);dhu(dat.subarray(bt,bt+=dat[4]|(dat[5]<<8)),out.subarray(sz2,sz3),hu);dhu(dat.subarray(bt),out.subarray(sz3),hu)};var rzb=function(dat,st,out){var _a;var bt=st.b;var b0=dat[bt],btype=(b0>>1)&3;st.l=b0&1;var sz=(b0>>3)|(dat[bt+1]<<5)|(dat[bt+2]<<13);var ebt=(bt+=3)+sz;if(btype==1){if(bt>=dat.length){return}st.b=bt+1;if(out){fill(out,dat[bt],st.y,st.y+=sz);return out}return fill(new u8(sz),dat[bt])}if(ebt>dat.length){return}if(btype==0){st.b=ebt;if(out){out.set(dat.subarray(bt,ebt),st.y);st.y+=sz;return out}return slc(dat,bt,ebt)}if(btype==2){var b3=dat[bt],lbt=b3&3,sf=(b3>>2)&3;var lss=b3>>4,lcs=0,s4=0;if(lbt<2){if(sf&1){lss|=(dat[++bt]<<4)|((sf&2)&&(dat[++bt]<<12))}else{lss=b3>>3}}else{s4=sf;if(sf<2){lss|=((dat[++bt]&63)<<4),lcs=(dat[bt]>>6)|(dat[++bt]<<2)}else{if(sf==2){lss|=(dat[++bt]<<4)|((dat[++bt]&3)<<12),lcs=(dat[bt]>>2)|(dat[++bt]<<6)}else{lss|=(dat[++bt]<<4)|((dat[++bt]&63)<<12),lcs=(dat[bt]>>6)|(dat[++bt]<<2)|(dat[++bt]<<10)}}}++bt;var buf=out?out.subarray(st.y,st.y+st.m):new u8(st.m);var spl=buf.length-lss;if(lbt==0){buf.set(dat.subarray(bt,bt+=lss),spl)}else{if(lbt==1){fill(buf,dat[bt++],spl)}else{var hu=st.h;if(lbt==2){var hud=rhu(dat,bt);lcs+=bt-(bt=hud[0]);st.h=hu=hud[1]}else{if(!hu){err(0)}}(s4?dhu4:dhu)(dat.subarray(bt,bt+=lcs),buf.subarray(spl),hu)}}var ns=dat[bt++];if(ns){if(ns==255){ns=(dat[bt++]|(dat[bt++]<<8))+32512}else{if(ns>127){ns=((ns-128)<<8)|dat[bt++]}}var scm=dat[bt++];if(scm&3){err(0)}var dts=[dmlt,doct,dllt];for(var i=2;i>-1;--i){var md=(scm>>((i<<1)+2))&3;if(md==1){var rbuf=new u8([0,0,dat[bt++]]);dts[i]={s:rbuf.subarray(2,3),n:rbuf.subarray(0,1),t:new u16(rbuf.buffer,0,1),b:0}}else{if(md==2){_a=rfse(dat,bt,9-(i&1)),bt=_a[0],dts[i]=_a[1]}else{if(md==3){if(!st.t){err(0)}dts[i]=st.t[i]}}}}var _b=st.t=dts,mlt=_b[0],oct=_b[1],llt=_b[2];var lb=dat[ebt-1];if(!lb){err(0)}var spos=(ebt<<3)-8+msb(lb)-llt.b,cbt=spos>>3,oubt=0;var lst=((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<llt.b)-1);cbt=(spos-=oct.b)>>3;var ost=((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<oct.b)-1);cbt=(spos-=mlt.b)>>3;var mst=((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<mlt.b)-1);for(++ns;--ns;){var llc=llt.s[lst];var lbtr=llt.n[lst];var mlc=mlt.s[mst];var mbtr=mlt.n[mst];var ofc=oct.s[ost];var obtr=oct.n[ost];cbt=(spos-=ofc)>>3;var ofp=1<<ofc;var off=ofp+(((dat[cbt]|(dat[cbt+1]<<8)|(dat[cbt+2]<<16)|(dat[cbt+3]<<24))>>>(spos&7))&(ofp-1));cbt=(spos-=mlb[mlc])>>3;var ml=mlbl[mlc]+(((dat[cbt]|(dat[cbt+1]<<8)|(dat[cbt+2]<<16))>>(spos&7))&((1<<mlb[mlc])-1));cbt=(spos-=llb[llc])>>3;var ll=llbl[llc]+(((dat[cbt]|(dat[cbt+1]<<8)|(dat[cbt+2]<<16))>>(spos&7))&((1<<llb[llc])-1));cbt=(spos-=lbtr)>>3;lst=llt.t[lst]+(((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<lbtr)-1));cbt=(spos-=mbtr)>>3;mst=mlt.t[mst]+(((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<mbtr)-1));cbt=(spos-=obtr)>>3;ost=oct.t[ost]+(((dat[cbt]|(dat[cbt+1]<<8))>>(spos&7))&((1<<obtr)-1));if(off>3){st.o[2]=st.o[1];st.o[1]=st.o[0];st.o[0]=off-=3}else{var idx=off-(ll!=0);if(idx){off=idx==3?st.o[0]-1:st.o[idx];if(idx>1){st.o[2]=st.o[1]}st.o[1]=st.o[0];st.o[0]=off}else{off=st.o[0]}}for(var i=0;i<ll;++i){buf[oubt+i]=buf[spl+i]}oubt+=ll,spl+=ll;var stin=oubt-off;if(stin<0){var len=-stin;var bs=st.e+stin;if(len>ml){len=ml}for(var i=0;i<len;++i){buf[oubt+i]=st.w[bs+i]}oubt+=len,ml-=len,stin=0}for(var i=0;i<ml;++i){buf[oubt+i]=buf[stin+i]}oubt+=ml}if(oubt!=spl){while(spl<buf.length){buf[oubt++]=buf[spl++]}}else{oubt=buf.length}if(out){st.y+=oubt}else{buf=slc(buf,0,oubt)}}else{if(out){st.y+=lss;if(spl){for(var i=0;i<lss;++i){buf[i]=buf[spl+i]}}}else{if(spl){buf=slc(buf,spl)}}}st.b=ebt;return buf}err(2)};var cct=function(bufs,ol){if(bufs.length==1){return bufs[0]}var buf=new u8(ol);for(var i=0,b=0;i<bufs.length;++i){var chk=bufs[i];buf.set(chk,b);b+=chk.length}return buf};var decompress=function(dat,buf){var bufs=[],nb=+!buf,bt=0,ol=0;while(dat.length){var st=rzfh(dat,nb||buf);if(typeof st=="object"){if(nb){buf=null;if(st.w.length==st.u){bufs.push(buf=st.w);ol+=st.u}}else{bufs.push(buf);st.e=0}while(!st.l){var blk=rzb(dat,st,buf);if(!blk){err(5)}if(buf){st.e=st.y}else{bufs.push(blk);ol+=blk.length;cpw(st.w,0,blk.length);st.w.set(blk,st.w.length-blk.length)}}bt=st.b+(st.c*4)}else{bt=st}dat=dat.subarray(bt)}return cct(bufs,ol)};return decompress(dat)};var decompressorGzip=function(input,length){var fixedLengthExtraBits=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]);var fixedDistanceExtraBits=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]);var codeLengthIndexMap=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);function freb(eb,start){var base=new Uint16Array(31);for(var i=0;i<31;i++){base[i]=start+=1<<eb[i-1]}var rev=new Int32Array(base[30]);for(var i=1;i<30;i++){for(var j=base[i];j<base[i+1];++j){rev[j]=j-base[i]<<5|i}}return[base,rev]}var res=freb(fixedLengthExtraBits,2);var fl=res[0];var revfl=res[1];fl[28]=258;revfl[258]=28;var res1=freb(fixedDistanceExtraBits,0);var fd=res1[0];var rev=new Uint16Array(32768);for(var i=0;i<32768;i++){var x=(i&43690)>>1|(i&21845)<<1;x=(x&52428)>>2|(x&13107)<<2;x=(x&61680)>>4|(x&3855)<<4;rev[i]=((x&65280)>>8|(x&255)<<8)>>1}function huffMap(cd,maxBits,r){var l=new Uint16Array(maxBits);for(var i=0;i<cd.length;i++){if(cd[i]){++l[cd[i]-1]}}var le=new Uint16Array(maxBits);for(var i=1;i<maxBits;i++){le[i]=le[i-1]+l[i-1]<<1}var co;if(r){co=new Uint16Array(1<<maxBits);var rvb=15-maxBits;for(var i=0;i<cd.length;i++){if(cd[i]){var sv=i<<4|cd[i];var freeBits=maxBits-cd[i];var startValue=le[cd[i]-1]++<<freeBits;var endValue=startValue|(1<<freeBits)-1;for(var currentValue=startValue;currentValue<=endValue;currentValue++){co[rev[currentValue]>>rvb]=sv}}}}else{co=new Uint16Array(cd.length);for(var i=0;i<cd.length;i++){if(cd[i]){co[i]=rev[le[cd[i]-1]++]>>15-cd[i]}}}return co}var fixedLengthTree=new Uint8Array(288);for(var i=0;i<144;i++){fixedLengthTree[i]=8}for(var i=144;i<256;i++){fixedLengthTree[i]=9}for(var i=256;i<280;i++){fixedLengthTree[i]=7}for(var i=280;i<288;i++){fixedLengthTree[i]=8}var fixedDistanceTree=new Uint8Array(32);for(var i=0;i<32;i++){fixedDistanceTree[i]=5}var fixedLengthMap=huffMap(fixedLengthTree,9,1);var fixedDistanceMap=huffMap(fixedDistanceTree,5,1);function max(a){var m=a[0];for(var i=1;i<a.length;i++){if(a[i]>m){m=a[i]}}return m}function bits(input,pos,mask){var o=pos/8|0;return(input[o]|input[o+1]<<8)>>(pos&7)&mask}function bits16(d,p){var o=p/8|0;return(d[o]|d[o+1]<<8|d[o+2]<<16)>>(p&7)}function shft(p){return(p+7)/8|0}function gzipStart(input,i){if(input[i++]!==31||input[i++]!==139||input[i++]!==8){throw new Error("invalid gzip data")}var flag=input[i++];i+=6;if(flag&4){i+=(input[i+10]|input[i+11]<<8)+2}for(var zs=(flag>>3&1)+(flag>>4&1);zs>0;zs-=Number(!input[i++])){}return i+(flag&2)}var gunzip=function(input,out,inputIndex,outputIndex){if(!inputIndex){inputIndex=0}if(!outputIndex){outputIndex=0}if(!(input.length-inputIndex)){return}var payloadStart=gzipStart(input,inputIndex);if(payloadStart===input.length-8){return}if(payloadStart>input.length-8){throw new Error("unexpected EOF")}var pos=payloadStart*8;var fnal=0,lengthBits=0,distBits=0,lmap,dmap;var totalBits=input.length*8;do{if(!lmap){fnal=bits(input,pos,1);var type=bits(input,pos+1,3);pos+=3;if(!type){var s=shft(pos)+4;var l=input[s-4]|input[s-3]<<8;var t=s+l;if(t>input.length){throw new Error("unexpected EOF")}out.set(input.subarray(s,t),outputIndex);outputIndex+=l;pos=t*8;continue}else{if(type===1){lmap=fixedLengthMap;dmap=fixedDistanceMap;lengthBits=9;distBits=5}else{if(type===2){var hLiteral=bits(input,pos,31)+257;var hcLengths=bits(input,pos+10,15)+4;var tl=hLiteral+bits(input,pos+5,31)+1;pos+=14;var lengthDistanceTree=new Uint8Array(tl);var codeLengthTree=new Uint8Array(19);for(var i=0;i<hcLengths;++i){codeLengthTree[codeLengthIndexMap[i]]=bits(input,pos+i*3,7)}pos+=hcLengths*3;var codeLengthBits=max(codeLengthTree);var clbMask=(1<<codeLengthBits)-1;var codeLengthMap=huffMap(codeLengthTree,codeLengthBits,1);for(var i=0;i<tl;){var r=codeLengthMap[bits(input,pos,clbMask)];pos+=r&15;var symbol=r>>4;if(symbol<16){lengthDistanceTree[i++]=symbol}else{var copy=0;var n=0;if(symbol===16){n=3+bits(input,pos,3);pos+=2;copy=lengthDistanceTree[i-1]}else{if(symbol===17){n=3+bits(input,pos,7);pos+=3}else{if(symbol===18){n=11+bits(input,pos,127);pos+=7}}}while(n--){lengthDistanceTree[i++]=copy}}}var lengthTree=lengthDistanceTree.subarray(0,hLiteral);var distanceTree=lengthDistanceTree.subarray(hLiteral);lengthBits=max(lengthTree);distBits=max(distanceTree);lmap=huffMap(lengthTree,lengthBits,1);dmap=huffMap(distanceTree,distBits,1)}else{throw new Error("invalid block type")}}}if(pos>totalBits){throw new Error("unexpected EOF")}}var lms=(1<<lengthBits)-1;var dms=(1<<distBits)-1;var lpos=pos;for(;;lpos=pos){var code=lmap[bits16(input,pos)&lms];var sym=code>>4;pos+=code&15;if(pos>totalBits){throw new Error("unexpected EOF")}if(!code){throw new Error("invalid length/literal")}if(sym<256){out[outputIndex++]=sym}else{if(sym===256){lpos=pos;lmap=undefined;break}else{var add=sym-254;if(sym>264){var index=sym-257;var b=fixedLengthExtraBits[index];add=bits(input,pos,(1<<b)-1)+fl[index];pos+=b}if(!dmap){throw new Error("invalid distance map")}var d=dmap[bits16(input,pos)&dms];var dsym=d>>4;if(!d){throw new Error("invalid distance")}pos+=d&15;var dt=fd[dsym];if(dsym>3){var b=fixedDistanceExtraBits[dsym];dt+=bits16(input,pos)&(1<<b)-1;pos+=b}if(pos>totalBits){throw new Error("unexpected EOF")}var end=outputIndex+add;if(outputIndex<dt){throw new Error("unexpected dictionary case")}for(;outputIndex<end;outputIndex++){out[outputIndex]=out[outputIndex-dt]}}}}pos=lpos;if(lmap){fnal=1}}while(!fnal);if(outputIndex<out.length){var nextBlock=Math.ceil(pos/8)+8;gunzip(input,out,nextBlock,outputIndex)}};var out=new Uint8Array(length);gunzip(input,out);return out};var decompressorLz4=function(input,length){var lz4basic=function(input,output,outputIndex){var len=outputIndex;for(var i=0;i<input.length;){var token=input[i++];var literals=token>>4;if(literals){var _byte=literals+240;while(_byte===255){literals+=_byte=input[i++]}output.set(input.subarray(i,i+literals),len);len+=literals;i+=literals;if(i>=input.length){return len-outputIndex}}var offset=input[i++]|input[i++]<<8;if(!offset||offset>len){throw new Error("lz4 offset out of range: "+offset)}var matchLength=(token&15)+4;var _byte=matchLength+240;while(_byte===255){matchLength+=_byte=input[i++]}var pos=len-offset;var end=len+matchLength;while(len<end){output[len++]=output[pos++]}}return len-outputIndex};var output=new Uint8Array(length);try{var i=0,o=0;while(i<input.length-8){var expectedOutputLength=input[i++]<<24|input[i++]<<16|input[i++]<<8|input[i++];var expectedInputLength=input[i++]<<24|input[i++]<<16|input[i++]<<8|input[i++];if(input.length-i<expectedInputLength){throw new Error("lz4 not hadoop")}if(output.length<expectedOutputLength){throw new Error("lz4 not hadoop")}var chunk=lz4basic(input.subarray(i,i+expectedInputLength),output,o);if(chunk!==expectedOutputLength){throw new Error("lz4 not hadoop")}i+=expectedInputLength;o+=expectedOutputLength;if(i===input.length){return output}}if(i<input.length){throw new Error("lz4 not hadoop")}}catch(error){if(error instanceof Error&&error.message!=="lz4 not hadoop"){throw error}lz4basic(input,output,0)}return output};var decompressorLz4Raw=function(input,length){var lz4basic=function(input,output,outputIndex){var len=outputIndex;for(var i=0;i<input.length;){var token=input[i++];var literals=token>>4;if(literals){var _byte=literals+240;while(_byte===255){literals+=_byte=input[i++]}output.set(input.subarray(i,i+literals),len);len+=literals;i+=literals;if(i>=input.length){return len-outputIndex}}var offset=input[i++]|input[i++]<<8;if(!offset||offset>len){throw new Error("lz4 offset out of range: "+offset)}var matchLength=(token&15)+4;var _byte=matchLength+240;while(_byte===255){matchLength+=_byte=input[i++]}var pos=len-offset;var end=len+matchLength;while(len<end){output[len++]=output[pos++]}}return len-outputIndex};var output=new Uint8Array(length);lz4basic(input,output,0);return output};var decompressorBrotli=function(input,length){console.error("Brotli decompression is not supported in this context.")};return{ZSTD:decompressorZstd,GZIP:decompressorGzip,LZ4:decompressorLz4,LZ4_RAW:decompressorLz4Raw,BROTLI:decompressorBrotli}}var t,n=["BOOLEAN","INT32","INT64","INT96","FLOAT","DOUBLE","BYTE_ARRAY","FIXED_LEN_BYTE_ARRAY"],i=["PLAIN",undefined,"PLAIN_DICTIONARY","RLE","BIT_PACKED","DELTA_BINARY_PACKED","DELTA_LENGTH_BYTE_ARRAY","DELTA_BYTE_ARRAY","RLE_DICTIONARY","BYTE_STREAM_SPLIT"],a=["REQUIRED","OPTIONAL","REPEATED"],f=["UTF8","MAP","MAP_KEY_VALUE","LIST","ENUM","DECIMAL","DATE","TIME_MILLIS","TIME_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UINT_8","UINT_16","UINT_32","UINT_64","INT_8","INT_16","INT_32","INT_64","JSON","BSON","INTERVAL"],o=["UNCOMPRESSED","SNAPPY","GZIP","LZO","BROTLI","LZ4","ZSTD","LZ4_RAW"],l=0,u=2,_=3,d=0,s=1,c=2,h=3,v=4,p=5,g=6,m=7,y=8,w=9,E=12,L=13,b=getParquetDecompressors(),I=[0,255,65535,16777215,4294967295],A=function(e,r){for(var t=0,n=0;;){var i=e.getUint8(r++);if(t|=(127&i)<<n,0==(128&i)){return[t,r]}n+=7}},T=function(e,r){var t,n=A(e,r);return[(t=n[0])>>>1^-(1&t),n[1]]},N=function(e,r){var t,n,i=function(e,r){for(var t=BigInt(0),n=BigInt(0);;){var i=BigInt(e.getUint8(r++));if(t|=(i&BigInt(127))<<n,(i&BigInt(128))===BigInt(0)){return[t,r]}n+=BigInt(7)}}(e,r);return t=i[0],n=i[1],[t>>BigInt(1)^-(t&BigInt(1)),n]},R=function(e){return 15&e},D=function(e,r,t){var n=e.getUint8(r++);if((15&n)===d){return[0,0,r,t]}var i,a=n>>4;if(0===a){var f=T(e,r);i=f[0],r=f[1]}else{i=t+a}return[R(n),i,r,i]},O=function e(r,t,n){switch(t){case s:return[!0,n];case c:return[!1,n];case h:return[r.getInt8(n),n+1];case v:case p:return T(r,n);case g:return N(r,n);case m:return[r.getFloat64(n,!0),n+8];case y:var i,a,f=A(r,n);i=f[0],a=f[1];var o=new Uint8Array(r.buffer,r.byteOffset+a,i);return[(new TextDecoder).decode(o),a+i];case w:var l,u,_=function(e,r){var t=e.getUint8(r++),n=t>>4,i=R(t);if(15===n){var a=A(e,r);return[i,a[0],a[1]]}return[i,n,r]}(r,n);l=_[0],u=_[1],n=_[2];for(var b=[],I=0;I<u;I++){var O;O=(_=e(r,l,n))[0],n=_[1],b.push(O)}return[b,n];case E:for(var U,q,B,M={},S=0;;){if(U=(_=D(r,n,S))[0],q=_[1],B=_[2],S=_[3],n=B,U===d){break}var P=(_=e(r,U,n))[0];n=_[1],M["field_"+q]=P}return[M,n];case L:for(var C="",Y=0;Y<16;Y++){C+=r.getUint8(n++).toString(16).padStart(2,"0")}return[C,n];default:throw new Error("thrift unhandled type: "+t)}},U=function(e,r){for(var t,n,i=new DataView(e,r),a=0,f=0,o={};a<e.byteLength-r;){var l,u=D(i,a,f);if(t=u[0],n=u[1],a=u[2],f=u[3],t===d){break}var _=O(i,t,a);l=_[0],a=_[1],o["field_"+n]=l}return{value:o,byteLength:a}},q=function(e){return e&&e.field_5?{logicalType:"DECIMAL",scale:e.field_5.field_1,precision:e.field_5.field_2}:e&&e.field_10?{logicalType:"INTEGER",bitWidth:e.field_10.field_1,isSigned:e.field_10.field_2}:e||void 0},B=function(e,r){var t=e[r],n=[],i=1;if(t.num_children){for(;n.length<t.num_children;){var a=B(e,r+i);i+=a.count,n.push(a)}}return{count:i,element:t,children:n}},M=function(e,r){var t=B(e,0);for(var n in r){var i=r[n],a=t.children.find((function(e){return e.element.name===i}));if(!a){throw new Error("parquet schema element not found: "+r)}t=a}return t},S=function(e,r){for(var t=B(e,0),n=0;n<r.length;n++){if(!(t=t.children.find((function(e){return e.element.name===r[n]})))){throw new Error("parquet schema element not found: "+r)}if("REQUIRED"!==t.element.repetition_type){return !1}}return !0},P=function(e){var r=e.dictionary_page_offset,t=e.data_page_offset,n=r;return(void 0===r||t<r)&&(n=t),Number(n)},C=function(e,r){var t=U(e,r),n=t.value;return{byteLength:t.byteLength,value:{type:n.field_1,uncompressed_page_size:n.field_2,compressed_page_size:n.field_3,crc:n.field_4,data_page_header:n.field_5&&{num_values:n.field_5.field_1,encoding:i[n.field_5.field_2],definition_level_encoding:i[n.field_5.field_3],repetition_level_encoding:i[n.field_5.field_4],statistics:n.field_5.field_5&&{max:n.field_5.field_5.field_1,min:n.field_5.field_5.field_2,null_count:n.field_5.field_5.field_3,distinct_count:n.field_5.field_5.field_4,max_value:n.field_5.field_5.field_5,min_value:n.field_5.field_5.field_6}},index_page_header:n.field_6,dictionary_page_header:n.field_7&&{num_values:n.field_7.field_1,encoding:i[n.field_7.field_2],is_sorted:n.field_7.field_3},data_page_header_v2:n.field_8&&{num_values:n.field_8.field_1,num_nulls:n.field_8.field_2,num_rows:n.field_8.field_3,encoding:i[n.field_8.field_4],definition_levels_byte_length:n.field_8.field_5,repetition_levels_byte_length:n.field_8.field_6,is_compressed:void 0===n.field_8.field_7||n.field_8.field_7,statistics:n.field_8.field_8}}}},Y=function(e,r,t,n,i){for(var a=0;a<i;a++){t[n+a]=e[r+a]}},z=function(e,r,t,n){for(var i=0;i<n;i++){e[r+i]=e[r-t+i]}},x=function(e,r,t,n){var i,a=n&&n[t];if("UNCOMPRESSED"===t){i=e}else{if(a){i=a(e,r)}else{if("SNAPPY"!==t){throw new Error("parquet unsupported compression codec: "+t)}!function(e,r){for(var t=e.byteLength,n=r.byteLength,i=0,a=0;i<t;){var f=e[i];if(i+=1,f<128){break}}if(n&&i>=t){throw new Error("invalid snappy length header")}for(;i<t;){f=e[i];var o=0;if((i+=1)>=t){throw new Error("missing eof marker")}if(0==(3&f)){if((o=1+(f>>>2))>60){if(i+3>=t){throw new Error("snappy error literal pos + 3 >= inputLength")}var l=o-60;o=1+((o=e[i]+(e[i+1]<<8)+(e[i+2]<<16)+(e[i+3]<<24))&I[l]),i+=l}if(i+o>t){throw new Error("snappy error literal exceeds input length")}Y(e,i,r,a,o),i+=o,a+=o}else{var u=0;switch(3&f){case 1:o=4+(f>>>2&7),u=e[i]+(f>>>5<<8),i+=1;break;case 2:if(t<=i+1){throw new Error("snappy error end of input")}o=1+(f>>>2),u=e[i]+(e[i+1]<<8),i+=2;break;case 3:if(t<=i+3){throw new Error("snappy error end of input")}o=1+(f>>>2),u=e[i]+(e[i+1]<<8)+(e[i+2]<<16)+(e[i+3]<<24),i+=4}if(0===u||isNaN(u)){throw new Error("invalid offset "+u+" pos "+i+" inputLength "+t)}if(u>a){throw new Error("cannot copy from before start of buffer")}z(r,a,u,o),a+=o}}if(a!==n){throw new Error("premature end of input")}}(e,i=new Uint8Array(r))}}if(i&&i.length!==r){throw new Error("parquet decompressed page length "+(i?i.length:"undefined")+" does not match header "+r)}return i},k=function(e,r,t,n,i){if(i.length){throw new Error("parquet output array is not empty")}for(var a=0,f=new TextDecoder,o=0;o<e.length;o++){if(e[o]===r){if(a>t.length){throw new Error("parquet index "+a+" exceeds data page length "+t.length)}var l=t[a++];if(n&&(l=n[l]) instanceof Uint8Array){try{l=f.decode(l)}catch(e){console.warn("parquet failed to decode byte array as string",e)}}i[o]=l}else{i[o]=void 0}}},V=function(e,r){var t=0;return r.forEach((function(n,i){"REPEATED"===M(e,r.slice(0,i+1)).repetition_type&&(t+=1)})),t},F=function(e,r){var t=0;return r.forEach((function(n,i){"REQUIRED"!==M(e,r.slice(0,i+1)).element.repetition_type&&(t+=1)})),t},Z=function(e,r,t,n,i){if(0===t){return{value:[],byteLength:0}}if("BOOLEAN"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){var a=r+Math.floor(i/8),f=i%8,o=e.getUint8(a);n.push(0!=(o&1<<f))}return{value:n,byteLength:Math.ceil(t/8)}}(e,n,t)}if("INT32"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){n.push(Number(e.getInt32(r+4*i,!0)))}return{value:n,byteLength:4*t}}(e,n,t)}if("INT64"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){n.push(Number(e.getBigInt64(r+8*i,!0)))}return{value:n,byteLength:8*t}}(e,n,t)}if("INT96"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){var a=e.getBigInt64(r+12*i,!0),f=e.getInt32(r+12*i+8,!0);n.push(Number(BigInt(f)<<BigInt(32)|a))}return{value:n,byteLength:12*t}}(e,n,t)}if("FLOAT"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){n.push(e.getFloat32(r+4*i,!0))}return{value:n,byteLength:4*t}}(e,n,t)}if("DOUBLE"===r){return function(e,r,t){for(var n=[],i=0;i<t;i++){n.push(e.getFloat64(r+8*i,!0))}return{value:n,byteLength:8*t}}(e,n,t)}if("BYTE_ARRAY"===r){var a=function(e,r,t){for(var n=[],i=0,a=0;a<t;a++){var f=e.getInt32(r+i,!0);i+=4;var o=new Uint8Array(e.buffer,e.byteOffset+r+i,f);n.push(o),i+=f}return{value:n,byteLength:i}}(e,n,t);if(i){var f=new TextDecoder;return{value:a.value.map((function(e){return f.decode(e)})),byteLength:a.byteLength}}return a}if("FIXED_LEN_BYTE_ARRAY"===r){return function(e,r,t){return{value:new Uint8Array(e.buffer,e.byteOffset+r,t),byteLength:t}}(e,n,t)}throw new Error("parquet unhandled type: "+r)},G=function(e){return Math.ceil(Math.log2(e+1))},K=function(e,r,t,n){var i,a=t>>>1,f=n+7>>3,o=0;if(1===f){i=e.getUint8(r),o+=1}else{if(2===f){i=e.getUint16(r,!0),o+=2}else{if(4!==f){throw new Error("parquet invalid rle width "+f)}i=e.getUint32(r,!0),o+=4}}for(var l=[],u=0;u<a;u++){l.push(i)}return{value:l,byteLength:o}},X=function(e,r,t,n,i){var a=t>>1<<3,f=(1<<n)-1,o=0;if(r<e.byteLength){o=e.getUint8(r)}else{if(f){throw new Error("parquet bitpack offset "+r+" out of range")}}for(var l=1,u=8,_=0,d=[];a;){_>8?(_-=8,u-=8,o>>=8):u-_<n?(o|=e.getUint8(r+l)<<u,l++,u+=8):(i>0&&(d.push(o>>_&f),i--),a--,_+=n)}return{value:d,byteLength:l}},J=function(e,r,t,n,i){var a=0;if(!n){if((n=e.getInt32(r,!0))<0){throw new Error("parquet invalid rle/bitpack length "+n)}a+=4}for(var f=[],o=a;a-o<n&&f.length<i;){var l=A(e,r+a),u=l[0];if(a=l[1]-r,0==(1&u)){for(var _=K(e,r+a,u,t),d=0;d<_.value.length;d++){f.push(_.value[d])}a+=_.byteLength}else{var s=X(e,r+a,u,t,i-f.length);for(d=0;d<s.value.length;d++){f.push(s.value[d])}a+=s.byteLength}}return{value:f,byteLength:a}},Q=function(e,r,t,n,i){var a=[],f=0;if("RLE"!==r){throw new Error("parquet encoding not supported "+r)}for(var o=0;o<n;){var l=J(e,t+f,i,0,n);if(!l.value.length){break}for(var u=0;u<l.value.length;u++){a.push(l.value[u])}o+=l.value.length,f+=l.byteLength}return{value:a,byteLength:f}},W=function(e,r,t,n){var i=new DataView(e.buffer,e.byteOffset,e.byteLength);return Z(i,n.type,r.num_values,0,!1).value},j=function(e,r,t,n){var i=new DataView(e.buffer,e.byteOffset,e.byteLength),a=0,f=[],o=function(e,r,t,n,i){if(i.path_in_schema.length>1){var a=V(n,i.path_in_schema);if(a){var f=G(a);return Q(e,t.repetition_level_encoding,r,t.num_values,f)}}return{value:[],byteLength:0}}(i,a,r,t,n),l=o.value,u=void 0,_=0,d=function(e,r,t,n,i){if(!S(n,i)){var a=F(n,i),f=G(a);if(f){for(var o=Q(e,t.definition_level_encoding,r,t.num_values,f),l=o.value,u=o.byteLength,_=t.num_values,d=0;d<l.length;d++){l[d]===a&&_--}return 0===_&&(l.length=0),{byteLength:u,definitionLevels:l,numNulls:_}}}return{byteLength:0,definitionLevels:[],numNulls:0}}(i,a+=o.byteLength,r,t,n.path_in_schema);u=d.definitionLevels,_=d.numNulls,a+=d.byteLength;var s=r.num_values-_;if("PLAIN"===r.encoding){var c="UTF8"===M(t,n.path_in_schema).element.converted_type,h=Z(i,n.type,s,a,c);f=Array.isArray(h.value)?h.value:Array.from(h.value),a+=h.byteLength}else{if("PLAIN_DICTIONARY"!==r.encoding&&"RLE_DICTIONARY"!==r.encoding&&"RLE"!==r.encoding){throw new Error("parquet unsupported encoding: "+r.encoding)}var v;if("BOOLEAN"===n.type?v=1:(v=i.getUint8(a),a+=1),v){var p=J(i,a,v,i.byteLength-a,s),g=p.value;a+=p.byteLength,f=Array.isArray(g)?g:Array.from(g)}else{f=new Array(s).fill(0)}}return{definitionLevels:u,repetitionLevels:l,value:f}},H=function(e,r){if(e){for(var t=0;t<r.length;t++){r[t]=e[r[t]]}}},$=function(e,r,t,n,i,a){for(var f=0,o=[],l=o,u=[o],_=0;_<r.length;_++){var d;d=e&&e.length?e[_]:i;var s=r[_];if(s!==a){for(;s<u.length-1;){u.pop()}if(l=u.at(-1),d){for(var c=s;c<a;c++){var h=[];l.push(h),l=h,u.push(h)}}}if(d===i){if(!l){throw new Error("parquet assembleObjects: currentContainer is undefined")}l.push(t[f++])}else{if(n){if(d){for(c=d;c<i-1;c++){u.pop(),l=u.at(-1)}d>1&&l.push(void 0)}else{l.push(void 0)}}}}if(0===o.length){if(t.length>0&&0===a){return[t]}for(_=0;_<i;_++){h=[];l.push(h),l=h}}return o},ee=function(e,r){var t=r.converted_type;if("UTF8"===t){var n=new TextDecoder;return e.map((function(e){return"string"==typeof e?e:n.decode(e)}))}if("DECIMAL"===t){var i=r.scale?Math.pow(10,r.scale):1;return"number"==typeof e[0]?1===i?e:e.map((function(e){return e*i})):"bigint"==typeof e[0]?1===i?e:e.map((function(e){return e*BigInt(i)})):e.map((function(e){return re(e)*i}))}if("DATE"===t){return e.map((function(e){return new Date(86400000000000*e)}))}if("TIME_MILLIS"===t){return e.map((function(e){return new Date(e)}))}if("JSON"===t){return e.map((function(e){return JSON.parse(e)}))}if("BSON"===t){throw new Error("parquet bson not supported")}if("INTERVAL"===t){throw new Error("parquet interval not supported")}return e},re=function(e){for(var r=0,t=0;t<e.length;t++){r=r<<8|e[t]}return r},te=function(e,r,t,n,i){var a=new DataView(e.buffer,e.byteOffset,e.byteLength),f=0,o=[],l=r.data_page_header_v2;if(!l){throw new Error("parquet data page header v2 is undefined")}var u=function(e,r,t,n,i){var a=V(n,i.path_in_schema);if(!a){return[]}var f=G(a);return J(e,r,f,t.repetition_levels_byte_length,t.num_values).value}(a,f,l,t,n),_=function(e,r,t,n){if(n){var i=G(n);return J(e,r,i,t.definition_levels_byte_length,t.num_values).value}}(a,f+=l.repetition_levels_byte_length,l,F(t,n.path_in_schema));f+=l.definition_levels_byte_length;var d=r.uncompressed_page_size-l.definition_levels_byte_length-l.repetition_levels_byte_length,s=l.num_values-l.num_nulls;if("PLAIN"===l.encoding){var c="UTF8"===M(t,n.path_in_schema).element.converted_type,h=e.slice(f);l.is_compressed&&"UNCOMPRESSED"!==n.codec&&(h=x(h,d,n.codec,i));var v=new DataView(h.buffer,h.byteOffset,h.byteLength);o=Z(v,n.type,s,0,c).value}else{if("RLE"===l.encoding){h=x(e,d,n.codec,i),v=new DataView(h.buffer,h.byteOffset,h.byteLength);var p=1;if(l.num_nulls){throw new Error("parquet RLE encoding with nulls not supported")}o=J(v,4,p,d,s).value}else{if("PLAIN_DICTIONARY"===l.encoding||"RLE_DICTIONARY"===l.encoding){e=e.subarray(f);h=x(e,d,n.codec,i),p=(v=new DataView(h.buffer,h.byteOffset,h.byteLength)).getUint8(0);o=J(v,1,p,d,s).value}else{if("DELTA_BINARY_PACKED"!==l.encoding){throw new Error("parquet unsupported encoding: "+l.encoding)}if(l.num_nulls){throw new Error("parquet delta-int not supported")}var g=l.is_compressed?n.codec:"UNCOMPRESSED";h=x(e,d,g,i);ne(h,s,o)}}}return{definitionLevels:_,repetitionLevels:u,value:o}},ne=function(e,r,t){for(var n=new DataView(e.buffer,e.byteOffset,e.byteLength),i=A(n,0),a=i[0],f=i[1],o=A(n,f),l=o[0],u=o[1],_=A(n,u),d=_[0],s=_[1],c=T(n,s),h=c[0],v=c[1],p=a/l,g=0;g<r;){var m=T(n,v),y=m[0];v=m[1];for(var w=new Uint8Array(l),E=0;E<l;E++,v++){w[E]=e[v]}for(E=0;E<l;E++){var L=w[E];if(L){if(d>1){for(var b=0,I=-L,N=(1<<L)-1;d;){I<0?(b=b<<8|n.getUint8(v++),I+=8):t.push(b>>I&N)}}}else{for(var R=0;R<p&&g<r;R++,g++){t[g]=h,h+=y}}}}},ie=function(e,r,t){for(var n=0;n<t.length;n++){e[n]||(e[n]=[]),e[n][r]=t[n]}},ae=function(e,r,t,n,i,a){for(var f=void 0,o=0,d=0,s=[];o<t.num_rows;){var c=C(e,r+d),h=c.value;if(d+=c.byteLength,void 0===h.compressed_page_size){throw new Error("parquet compressed page size is undefined in column "+n.path_in_schema)}var v=new Uint8Array(e).subarray(r+d,r+d+h.compressed_page_size);if(h.type===l){var p=h.data_page_header;if(!p){throw new Error("parquet data page header is undefined")}var g=x(v,Number(h.uncompressed_page_size),n.codec,a),m=j(g,p,i,n),y=m.definitionLevels,w=m.repetitionLevels,E=m.value;o+=p.num_values;var L,b="PLAIN_DICTIONARY"===p.encoding||"RLE_DICTIONARY"===p.encoding;if(w.length){H(f,E);var I=n&&!S(i,[n.path_in_schema[0]]),A=F(i,n.path_in_schema),T=V(i,n.path_in_schema);L=$(y,w,E,I,A,T)}else{if(y&&y.length){A=F(i,n.path_in_schema);k(y,A,E,f,L=[])}else{b&&f?(H(f,E),L=ee(E,M(i,n.path_in_schema).element)):L=Array.isArray(E)?ee(E,M(i,n.path_in_schema).element):E}}for(var N=0;N<L.length;N++){s.push(L[N])}}else{if(h.type===u){var R=h.dictionary_page_header;if(!R){throw new Error("parquet dictionary page header is undefined")}g=x(v,Number(h.uncompressed_page_size),n.codec,a);f=W(g,R,0,n)}else{if(h.type!==_){throw new Error("parquet unsupported page type: "+h.type)}var D=h.data_page_header_v2;if(!D){throw new Error("parquet data page header v2 is undefined")}y=(g=te(v,h,i,n,a)).definitionLevels,w=g.repetitionLevels,E=g.value;o+=D.num_values;A=F(i,n.path_in_schema),T=V(i,n.path_in_schema);if(w.length){H(f,E);var O=$(y,w,E,!0,A,T);for(N=0;N<O.length;N++){s.push(O[N])}}else{if(D.num_nulls){if(!y){throw new Error("parquet data page v2 nulls missing definition levels")}k(y,A,E,f,s)}else{H(f,E);for(N=0;N<E.length;N++){s.push(E[N])}}}}}d+=h.compressed_page_size}return s.length,Number(t.num_rows),s},fe=function(e,r,t){if(!r){throw new Error("parquet metadata not found")}var n,i=e.byteLength,a=0;if(t.columns.forEach((function(e){var r=e.meta_data,t=P(r),n=t+Number(r.total_compressed_size);i=Math.min(i,t),a=Math.max(a,n)})),i>=a&&columns&&columns.length){throw new Error("parquet columns not found: "+columns.join(", "))}a-i<=1<<27&&(n=e.slice(i,a));for(var f=[],o=0,l=0;l<t.columns.length;l++){var u=t.columns[l].meta_data;if(!u){throw new Error("parquet column metadata is undefined")}var _=P(u),d=_+Number(u.total_compressed_size)-_;if(d>1<<30){console.warn('parquet skipping huge column "'.concat(u.path_in_schema,'" ').concat(d.toLocaleString()," bytes"))}else{if(n){var s=ae(n,_-i,t,u,r.schema,b);ie(f,o,s),o++}}}return f},oe=function(e){var r=new DataView(e);if(r.byteLength<8){throw new Error("parquet file is too short")}if(827474256!==r.getUint32(r.byteLength-4,!0)){throw new Error("parquet file invalid (footer != PAR1)")}var t=r.byteLength-8,l=r.getUint32(t,!0);if(l>r.byteLength-8){throw new Error("parquet metadata length "+l+" exceeds available buffer "+(r.byteLength-8))}var u,_=t-l,d=U(r.buffer,r.byteOffset+_).value;return{version:d.field_1,schema:d.field_2.map((function(e){return{type:n[e.field_1],type_length:e.field_2,repetition_type:a[e.field_3],name:e.field_4,num_children:e.field_5,converted_type:f[e.field_6],scale:e.field_7,precision:e.field_8,field_id:e.field_9,logical_type:q(e.field_10)}})),num_rows:d.field_3,row_groups:d.field_4.map((function(e){var r;return{columns:e.field_1.map((function(e){var r,t;return{file_path:e.field_1,file_offset:e.field_2,meta_data:e.field_3&&{type:n[e.field_3.field_1],encodings:null===(r=e.field_3.field_2)||void 0===r?void 0:r.map((function(e){return i[e]})),path_in_schema:e.field_3.field_3,codec:o[e.field_3.field_4],num_values:e.field_3.field_5,total_uncompressed_size:e.field_3.field_6,total_compressed_size:e.field_3.field_7,key_value_metadata:e.field_3.field_8,data_page_offset:e.field_3.field_9,index_page_offset:e.field_3.field_10,dictionary_page_offset:e.field_3.field_11,statistics:e.field_3.field_12&&{max:e.field_3.field_12.field_1,min:e.field_3.field_12.field_2,null_count:e.field_3.field_12.field_3,distinct_count:e.field_3.field_12.field_4},encoding_stats:null===(t=e.field_3.field_13)||void 0===t?void 0:t.map((function(e){return{page_type:e.field_1,encoding:i[e.field_2],count:e.field_3}}))}}})),total_byte_size:e.field_2,num_rows:e.field_3,sorting_columns:null===(r=e.field_4)||void 0===r?void 0:r.map((function(e){return{column_idx:sortingColumn.field_1,descending:sortingColumn.field_2,nulls_first:sortingColumn.field_3}}))}})),key_value_metadata:null===(u=d.field_5)||void 0===u?void 0:u.map((function(e){return{key:e.field_1,value:e.field_2}})),created_by:d.field_6,metadata_length:l}}(e),le=(t=[],oe.schema.forEach((function(e){void 0!==e.type&&t.push(e.name)})),t),ue=function(e,r){if(!r){throw new Error("parquet metadata not found")}for(var t=[],n=Number(r.num_rows),i=0,a=0;a<r.row_groups.length;a++){var f=r.row_groups[a],o=Number(f.num_rows);if(i+o>=0&&i<n){var l=fe(e,r,f),u=Math.max(0-i,0),_=Math.min(n-i,o),d=l.slice(u,_);for(a=0;a<d.length;a++){t.push(d[a])}}i+=o}return t}(e,oe);ue.splice(0,0,le);return{data:ue,config:r}};this.isValidURL=function(str){var p=new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.?)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;,\\s\\(\\)\\[\\]&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i");var p2=new RegExp("^(\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.?)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;,\\s\\(\\)\\[\\]&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i");return !!p.test(str)?1:!!p2.test(str)?2:false};return this};