UNPKG

canvasxpress-cli

Version:

Node program to run canvasXpress in the command line

27 lines 3.72 MB
/** * * CanvasXpress 63.3 - JavaScript Canvas Library * * Copyright (c) 2009-2026 - license@canvasxpress.org * * Redistributions of the source code must retain this copyright * notice and the following disclaimer. * * CanvasXpress is released as open source for personal and * educational use with dual licensing for commercial purposes. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * * Please see a copy of the CanvasXpress License at * https://www.canvasxpress.org/docs/license.html. * * Dual licensing: * Commercial use may be granted to the extent that this source * code does NOT become part of any other Open Source or * Commercially licensed development library or toolkit without * explicit permission from CanvasXpress. * */ (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(v,w,u,c,t,o,f,k,r){var i=this;var s=1;var e=2;var m=4;var x=8;var l=16;var g=32;var n=0;var d=function(){p()};var j=function(y){if(y){i.init(y);if(f){f(y)}}else{i.init(v,w,u,c,t,o,f,k)}};var q=function(y){if(CanvasXpress.maps.hasOwnProperty(y)){return"https://www.canvasxpress.org"+CanvasXpress.maps[y]}if(CanvasXpress.usa.hasOwnProperty(y)){return"https://www.canvasxpress.org/data/maps/"+y+".json"}if(CanvasXpress.countries.hasOwnProperty(y)){return"https://www.canvasxpress.org/data/maps/"+y+".json"}return null};var h=function(B,z){var y=B.toLowerCase();var A;for(A in CanvasXpress.usa){if(CanvasXpress.usa.hasOwnProperty(A)&&CanvasXpress.usa[A][0].toLowerCase()===y){z.mapId=A;return"https://www.canvasxpress.org/data/maps/"+A+".json"}}for(A in CanvasXpress.countries){if(CanvasXpress.countries.hasOwnProperty(A)&&CanvasXpress.countries[A][0].toLowerCase()===y){z.mapId=A;return"https://www.canvasxpress.org/data/maps/"+A+".json"}}return null};if(u&&typeof u==="string"){u={prompt:u,llmBehaviour:"update",view:"table"}}else{if(v&&v.config&&v.config.prompt&&v.config.isR){v.config.llmBehaviour="update";v.config.view="table"}}var p=function(){if(!(n&s)){var A=document.styleSheets;var z=false;var C;for(C=0;C<A.length;C++){if(A[C].href&&A[C].href.indexOf("canvasXpress.css")>-1){z=true;break}}if(!z){n|=s;var F=document.createElement("link");F.rel="stylesheet";F.type="text/css";F.href="https://www.canvasxpress.org/dist/canvasXpress.css";document.getElementsByTagName("head")[0].appendChild(F);F.onload=function(){p()};return}n|=s}if(!(n&e)){var H=(u&&u.fonts)||(v&&v.config&&v.config.fonts);if(H){n|=e;var E=(u&&u.fonts)?u.fonts:v.config.fonts;CanvasXpress.loadFonts(E,d);return}n|=e}if(!(n&m)){var I=(u&&u.fontsExternal)||(v&&v.config&&v.config.fontsExternal);if(I){n|=m;var J=(u&&u.fontsExternal)?u.fontsExternal:v.config.fontsExternal;CanvasXpress.loadFontsExternal(J,d);return}n|=m}if(!(n&x)){var y=(u&&u.topoJSON&&typeof u.topoJSON==="string")||(v&&v.config&&v.config.topoJSON&&typeof v.config.topoJSON==="string");var B=(u&&u.useLeaflet)||(v&&v.config&&v.config.useLeaflet);if(y||B){n|=x;if(B){CanvasXpress.loadLeaflet(function(){var K=u&&u.topoJSON;var L=v&&v.config&&v.config.topoJSON;if(K){CanvasXpress.loadTopoJSON(u.topoJSON,u.mapId,d)}else{if(L){CanvasXpress.loadTopoJSON(v.config.topoJSON,v.config.mapId,d)}else{d()}}},i)}else{if(u&&u.topoJSON){CanvasXpress.loadTopoJSON(u.topoJSON,u.mapId,d)}else{CanvasXpress.loadTopoJSON(v.config.topoJSON,v.config.mapId,d)}}return}n|=x}if(!(n&l)){var G=(w&&typeof w==="string")||(v&&v.data&&typeof v.data==="string");if(G){n|=l;if(w){CanvasXpress.loadRemoteData(v,w,u,c,j)}else{CanvasXpress.loadRemoteData(v.renderTo,v.data,v.config,v.events,j)}return}n|=l}if(!(n&g)){var D=(u&&u.graphType==="Map"&&u.mapId&&!u.topoJSON)||(v&&v.config&&v.config.graphType==="Map"&&v.config.mapId&&!v.config.topoJSON);if(D){n|=g;if(u&&u.graphType==="Map"&&u.mapId&&!u.topoJSON){u.topoJSON=q(u.mapId)||h(u.mapId,u)||CanvasXpress.geojson;CanvasXpress.loadTopoJSON(u.topoJSON,u.mapId,d)}else{v.config.topoJSON=q(v.config.mapId)||h(v.config.mapId,v.config)||CanvasXpress.geojson;CanvasXpress.loadTopoJSON(v.config.topoJSON,v.config.mapId,d)}return}n|=g}i.init(v,w,u,c,t,o,f,k)};if(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(x,y,k,a){if(typeof(x)=="object"&&x.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(x.order){x.aes.meta={};for(var f in x.order){x.aes.meta[f]=x.order[f]}}if(!x.aes.hasOwnProperty("x")||(x.aes.hasOwnProperty("x")&&x.data[0]&&!x.data[0].includes(x.aes.x))){for(var f=0;f<o.length;f++){var m=o[f];if(x.layers[m]&&x.layers[m].hasOwnProperty("x")&&x.data[0].includes(x.layers[m].x)){x.aes.x=x.layers[m].x;break}}}if(!x.aes.hasOwnProperty("y")||(x.aes.hasOwnProperty("y")&&x.data[0]&&!x.data[0].includes(x.aes.y))){for(var f=0;f<o.length;f++){var m=o[f];if(x.layers[m]&&x.layers[m].hasOwnProperty("y")&&x.data[0].includes(x.layers[m].y)){x.aes.y=x.layers[m].y;break}}}if(x.hasOwnProperty("meta")){x.aes.metaData=x.meta}if(x.hasOwnProperty("mappings")){x.aes.mappings=x.mappings}if(x.hasOwnProperty("scales")&&x.scales.hasOwnProperty("sizes")){if(Array.isArray(x.scales.sizes)){x.aes.sizes=x.scales.sizes}}if(x.hasOwnProperty("isGGMatrix")){x.aes.isGGMatrix=x.isGGMatrix}return x.aes};var w=function(f){if(f&&f.hasOwnProperty("hoverTemplate")){f.hoverTemplate+="<br>"}return f};var j=function(f){if(f&&Array.isArray(f)&&f.length==0&&x.scales&&x.scales.hasOwnProperty("setMinX")&&x.scales.hasOwnProperty("setMaxX")&&x.scales.hasOwnProperty("setMinY")&&x.scales.hasOwnProperty("setMaxY")){f=[["min","max"],[x.scales.setMinX,x.scales.setMaxX],[x.scales.setMinY,x.scales.setMaxY]]}return f};delete (x.isGGPlot);var p=JSON.stringify(x);var o=Array.isArray(x.geoms)?x.geoms:[x.geoms];var d=new cxplot(x.renderTo,j(x.data),aes(l()),a);var e={};d.skipGeoms=false;d.meta.config.user.geoms=o;d.meta.config.user.layers=x.layers;d.meta.config.user.cxplot=p;for(var r=0;r<o.length;r++){var s=o[r];var q=e[s]?s+"."+e[s]:s;var t=s.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[t]&&!d.skipGeoms){d[t](n(x.layers[q]))}e[s]=e[s]?e[s]+1:1}d.skipGeoms=false;d.GN8(n(x.labels));d.X6R(n(x.scales));d.Odb(n(x.coords));d.hgA(n(x.theme));d.fsX(n(x.facet));d.bEg(w(x.config));d.skipRender=false;d.m8M();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]]&&y&&y[0]&&!y[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 v={aes:(k||{}),theme:"GGPlot",widthFactor:1.5,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.hasOwnProperty("sizes")){if(Array.isArray(k.sizes)){v.sizes=k.sizes;while(v.sizes.length<10){var u=(v.sizes[v.sizes.length-1]-v.sizes[v.sizes.length-2])/2;v.sizes.push(Math.ceil(u+v.sizes[v.sizes.length-1]))}if(v.sizes[0]<4){var u=4-v.sizes[0];for(var r=0;r<v.sizes.length;r++){v.sizes[r]+=u}}}}if(k&&k.hasOwnProperty("metaData")){v.metaData=k.metaData}if(k.hasOwnProperty("xAxisFactorValue")){v.xAxisFactorValue=k.xAxisFactorValue}if(k.hasOwnProperty("yAxisFactorValue")){v.yAxisFactorValue=k.yAxisFactorValue}var c=new CanvasXpress(x,y,v,a,false,false,false,false,true);c.meta.ggplot.aes=k||{};c.meta.ggplot.data=y[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}})));CanvasXpress.onReady=function(){var f=[];var a=false;var d=false;var c=function(){if(!a){var g=CanvasXpress.instances[0];if(g){g.lAB("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(b){if(b){var a=b.target||b.srcElement;var d=a.id?a.id.split("-")[0]:"canvas";var c=CanvasXpress.getObject(d);if(c){CanvasXpress.current=c;return c}else{if(CanvasXpress.current&&typeof(CanvasXpress.current)=="object"){return CanvasXpress.current}else{CanvasXpress.current=CanvasXpress.instances[0];return CanvasXpress.current}}}else{if(CanvasXpress.current&&typeof(CanvasXpress.current)=="object"){return CanvasXpress.current}else{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.SLA(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.Qhu(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.pE2({ac:{x:100,y:100}},m,a,j)};c.qRq(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.jhv(e,"op_thumbup");a.jhv(d,"op_thumbdown2");b.text="Rated: Thumbs Up"}else{if(b.rating===-1){a.jhv(d,"op_thumbdown");a.jhv(e,"op_thumbup2");b.text="Rated: Thumbs Down"}}a.CKw(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 v=function(r){var P=document.createElement("div");P.style.width=r+"px";P.style.height="100px";P.style.clear="both";P.style.position="relative";P.style.margin="auto";var n=document.createElement("span");n.innerHTML=a.datetime||"";n.style.cssFloat="right";var d=document.createElement("span");d.innerHTML=C||"";d.style.cssFloat="left";d.style.fontWeight="bold";var O=document.createElement("span");O.innerHTML=a.client||a.client_id||"";O.style.cssFloat="left";var s=document.createElement("br");var p=document.createElement("br");var h=document.createElement("br");P.appendChild(s);P.appendChild(O);P.appendChild(n);P.appendChild(p);P.appendChild(d);P.appendChild(h);return P};var f=function(h,d){var n=document.createElement("div");if(d){n.className=d}n.appendChild(h);return n};var u=function(p,h){var r=CanvasXpress.parametersLLM;h.resetConfig();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 G=function(){var d=document.getElementById(a.target+"-cX-ChatInterfaceAskScript");if(d){document.body.removeChild(d)}};var j=function(){var d=CanvasXpress.getObject(a.target);if(d){d.pUo();var h=document.getElementById(a.target+"-cX-ChatInterfaceThumbs");if(h){h.style.display="flex"}if(i==="select_canvasxpress_chart"&&a.html&&a.html.content){d.nHa(a.html.content)}d.tSM();d.isAskingLLM=false;d.f0W()}G()};var t=function(h){var d=CanvasXpress.getObject(a.target);if(d){d.isAskingLLM=false;d.f0W()}G();if(h){alert(h)}};if(!a){t("No response received from the LLM service.");return}if(a.action||a.actions){var q=CanvasXpress.getObject(a.target);if(q&&typeof q.gogDispatchActions==="function"){var H=a.actions?(Array.isArray(a.actions)?a.actions:[a.actions]):[a.action];var J=q.gogDispatchActions(H);if(J){if(!q.llmStack||!Array.isArray(q.llmStack)){q.llmStack=[]}q.llmStack.push({header:q.cXHeaderToArray?q.gdF():[],prompt:q.llmPrompt||"",n:q.llmStack.length,requestId:a.request_id||""});var M=q.$(a.target+"-cX-ChatInterfaceMessages");if(M&&a.html&&a.html.content){M.innerHTML=a.html.content}var w=q.$(a.target+"-cX-ChatInterfaceThumbs");if(w){w.style.display="flex"}q.isAskingLLM=false;var l=q.$(q.target+"-cX-Loader");if(l){l.style.display="none"}G()}else{t("The LLM returned an action the chart could not apply. Check the action type and payload.")}}else{t("Chart or gogDispatchActions not available for target: "+a.target)}return}var i=a.tool||"";var x=(i==="generate_canvasxpress_config"||i==="modify_canvasxpress_config"||i==="generate_km_config"||i==="autocomplete");CanvasXpress._selectResponse=CanvasXpress._selectResponse||{};delete CanvasXpress._selectResponse[a.target];if(i==="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;x=true}}var k=(a.success===false||!!a.error||(x&&(!a.config||Object.keys(a.config).length===0)));if(k){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 ("+(i||"unknown")+") could not generate a valid configuration. Try rephrasing your description."}}}t(e);return}if(!x){var g=CanvasXpress.getObject(a.target);if(g){g.isAskingLLM=false;if(a.html&&a.html.content){g.T83(a.html.content)}g.f0W()}G();return}var N=a.config;var g=CanvasXpress.getObject(a.target);if(g){var L=g.Y5o();var I=g.gdF();var D=g.llmStack.length;var C=g.llmPrompt||"";var A=a.request_id||"";var z=JSON.parse(JSON.stringify(g.llmStack));z.push({header:I,prompt:C,n:D,requestId:A});a.config=N;u(a,g);var F=document.getElementById(a.target+"-cX-DOM");if(F){N.isGraphTime=g.isGraphTime;N.xAxisTime=g.xAxisTime;N.yAxisTime=g.yAxisTime;N.view="canvas";delete N.xAxisTickFormat;delete N.yAxisTickFormat;g.graphType=N.graphType;if(g.llmBehaviour&&g.llmBehaviour==="update"){g.n9z(g.target,true);var K={renderTo:a.target,data:L,config:N,callback:j};K.config.llmPrompt=C;K.config.llmStack=z;g=new CanvasXpress(K,false,false,false,false,false,false,false,true)}else{var y=F.parentNode;var b=y.className;var B=v(g.width);var E=c(g.width,g.height);var m=E.id;var o=document.createElement("div");o.style.width=g.width+"px";o.style.height="40px";o.style.clear="both";if(y.parentNode&&y.parentNode.tagName.toLowerCase()==="div"){E=f(E,b);y.after(o);o.after(B);B.after(E)}else{y.appendChild(o);y.appendChild(B);y.appendChild(E)}var K={renderTo:m,data:L,config:N,callback:j};K.config.llmPrompt=C;K.config.llmStack=z;g=new CanvasXpress(K,false,false,false,false,false,false,false,true);F=document.getElementById(a.target+"-cX-DOM");F.style.display="block"}G()}else{alert("CanvasXpress Container: "+a.target+"-cX-DOM - not found");G()}}else{alert("CanvasXpress Object: "+a.target+" - not found");G()}};CanvasXpress.applySelectConfig=function(f,c){var e=CanvasXpress.getObject(f);if(!e){alert("CanvasXpress Object: "+f+" - not found");return}var g=e.Y5o();var i=CanvasXpress._selectResponse&&CanvasXpress._selectResponse[f];var b=0;var j=document.getElementById(f+"-cX-ChatInterfaceMessagesContainer");if(j){b=j.scrollTop}e.n9z(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.SER();h.nHa(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:"b589